190 likes | 349 Views
Achieving End-to-End Fairness in Wireless Networks. Ananth Rao Ion Stoica OASIS Retreat, Jul 2005. Internet Gateway. Motivation. Multihop Wireless Networks are being proposed for last mile broadband connectivity Startups – Mesh Networks, Tropos, PacketHop Microsoft, Intel
E N D
Achieving End-to-End Fairness in Wireless Networks Ananth Rao Ion Stoica OASIS Retreat, Jul 2005
Internet Gateway Motivation • Multihop Wireless Networks are being proposed for last mile broadband connectivity • Startups – Mesh Networks, Tropos, PacketHop • Microsoft, Intel • Fairness is an important issue
Simulation Results - Fairness • ns2 simulation • 802.11b, 1Mbps • 30 nodes, 10 simultaneous flows • RTS/CTS enabled • CDF of throughput of each flow from 10 runs
Goals • End-to-end fairness • Distributed algorithm • Simple • Easy to implement • Robust • Reduce distriuted state • Adaptive to changes in demands • Lots of short HTTP flows, low degree of statistical aggregation • Avoid non-realistic assumptions
A f1 f1 f3 f3 C D E f2 f2 B Fairness in Wireless Networks • One constraint on allocation from each link • Two flows compete only if they share a link • Interference causes flows not using the same link to compete • Different hops of the same flow compete
Overview • Defining fairness • Model for a wireless network • Our algorithm • Results
Max-Min Fairness • n flows, Flow Allocation Vector (FAV) = (f1,f2,f3,…,fn) • Max-Min Fairness • There is no pair (i,j) such that • fi <fj • There exist positive constants 1 and 2 such that(f1,f2,…,fi+ 1,…,fj-2,…,fn) is feasible • In wire-line networks, ensuring per-link Max-min fairness ensures end-to-end fairness • In wireless networks, which allocations are feasible?
Overview • Defining fairness • Model for a wireless network • Our algorithm • Results
Model for a Wireless Network • Efficient, collision-free MAC • Fluid flow • Will be relaxed later • Pair-wise interference • Can determine if a subset of links can communicate simultaneously by examining each pair within the subset What are the constraints for feasibility of an FAV?
f1 f2 A B C D L1 L2 L3 L1 L2 L3 Notation & Interference Graph • Nodes A,B,C… • Links L1,L2,..., Flows f1,f2,… • ti = total fraction of time link i is active • Time allocation Vector (TAV) = (t1,t2,…,tk) • Interference graph • Vertex for every link Li • Edge between Li and Lj if they cannot be active simultaneously Flow Constraints t1 = f1 / r1 t2 = f2 / r2 t3 = f1 / r3
L1 L5 L2 L6 L4 L3 L3 • (t1+t2+t6) 1 • (t2+t3+t6) 1 • (t3+t4+t6) 1 • (t4+t5+t6) 1 • (t5+t1+t6) 1 • (t1+t2+t3+t4+t5+2t6) 2 • (t1+t2) 1 • (t2+t3+t4) 1 • (t4+t5+t6+t7) 1 L1 L2 L4 L5 L6 L7 Feasible Space of TAVS Given the interference graph, we can obtain necessary and sufficient linear constraints on the TAV Clique constraints • For every maximal clique {Li1,Li2,…,Lim} in the graph (ti1+ti2+…+tim) 1 • Often used approximation • Number of cliques may be exponential When flow constraints are applied, we get a set of linear constraints on the flows
A f2 f1 f1 f3 C D E F f3 f5 f5 f4 B f2 G G f4 f6 f6 H Wired vs. Wireless Networks • 2f1+f2r • f1+f3+f5r • f5+f6r • 2f3+f4r • f1+f2c • f1+f3+f5c • f5+f6c • f3+f4c
Overview • Defining fairness • Model for a wireless network • Our algorithm • Results
f1 Efficient MAC No fairness guarantees x1 & f2 x2 & f3 x3 & & fn xn f-dependency Relation AIMD for Wireless Networks • Flows i and j and are said to be f-dependent if both fi and fj appear in a constraint • All f-dependent flows need not flow through the same node • It is hard to monitor state of non-local flows • Only one-bit of information needed for AIMD Theorem: The AIMD algorithm presented above converges to Max-Min fair allocation if the MAC is efficient
Discussion • There may be an exponential number of facets in the feasibility polytope • n f-dependent flows can lead to up to (2n – 1) facets • Clique Constraints • Flows fi1and fi2are codependent iff links Lj1and Lj2 such that • fi1 uses Lj1 and fi2 uses Lj2 • Lj1and Lj2 interfere (adjacent in the interference graph) Simple, Practical Distributed Algorithm
Implementation • TCP with drop-tail queues • Piggyback current queue length in each packet header • Monitor queues of all interfering links • Drop packets if any queue drops packets • Overlay MAC Layer • MAC layer in software with support for weights • Implemented in a test-bed • Adjust “local” weights based on congestion of queues • Work in progress
Overview • Defining fairness • Model for a wireless network • Our algorithm • Results
Simulation Results • ns2 simulation • Same scenario as before • Interference • Assume all outgoing links from nodes within communication range interfere • Monitor using promiscuous mode
Conclusion and Future Work • Conclusions • Increase-decrease algorithms can be adapted to wireless networks • They can significantly reduce complexity of the required distributed state • Easy to implement, adaptive and perform well • Future Work • Implement both TCP and OML version in test-bed • Can we adapt other congestion control protocols for wireless • RED, RIO, ECN, XFS, CSFQ • Approximation bounds when interference graph is not perfect • 1.5 bound on fairness for 3 well known classes of imperfect graphs