450 likes | 635 Views
Implementing Utility-Optimal CSMA. Mung Chiang Princeton University Joint work with Jinsung Lee, Junhee Lee, Yung Yi, Song Chong (KAIST, Korea) Alexandre Proutiere (Microsoft Research UK).
E N D
Implementing Utility-Optimal CSMA Mung Chiang Princeton University Joint work with Jinsung Lee, Junhee Lee, Yung Yi, Song Chong (KAIST, Korea) Alexandre Proutiere (Microsoft Research UK)
Q: Can simple yet optimal (in theory) distributed scheduling be deployed?A: Brainstorming and initial answers
Background and Related WorkTheoryPracticeTheory-Practice Gap
Scheduling in Wireless Networks • When and How to Activate Links for “Good” Performance? • Interference: Restriction on Simultaneous Link Activation • Single vs. multi hop traffic, saturated vs. unsaturated • Performance: Stability/Delay, Utility/Fairness • Design Freedoms • Centralized vs. Distributed • With Collision vs. Without Collision
Related Work: R.A. w. Message Passing • Wang Kar 2005 • Lee Calderbank Chiang 2006 • Mohsenian Huang Chiang Wong 2008 • …
Simplicity Driven Design • Message passing undesirable • Not fully distributed • Security breach • Synchronization and coordination • Reduction of effective performance • Questions • Q1.How much can we achieve without passing any message? • Q2. Can we implement it over legacy standard?
Related Work: Adaptive CSMA • Jiang–Walrand • Allerton 08 • Rajagopalan–Shah • CISS 08 • Liu-Yi-Proutiere-Chiang-Poor • Microsoft TR 08 • Ni-Srikant • ITA 09 • Other related work • Jiang-Liew 08 • Marbach-Eryilmaz 08
Related Work: Implement Backpressure • DiffQ 2009 WarrierJanakiranman Ha Rhee • A theory motivated heuristic solution • Backpressure-based congestion control • 802.11e based MAC prioritization • Implemented in the Linux kernel • Horizon 2008 RadunovicGkantsidisGunawardena Key • Backpressure-based multi-path routing • Heuristic solution compatible with 802.11 and TCP • Implemented between data link and network layer
Background and Related WorkTheoryPracticeTheory-Practice Gap
CSMA No message passing • Content • Sense (and CA or CD) • Hold the channel • Random back-off Example 1 2 3 Interference graph 1 2 3 1 2 3
System Model • Saturated single-hop sessions • Symmetric Interference • Objective: Utility Maximization • Alternative: Rate Stability for unsaturated input λ2 Throughput-region • Continuous time model first: • Access the channel with Poisson rate • Back-off counter: exponential distribution • Hold the channel with mean duration • Channel holding time: exponential distribution λ1
Utility-Optimal CSMA (UO-CSMA) Parameters: (1) V >0 (determines “how optimal”), (2) b(t) (decreasing step size) Each link l does the following at slot t: 1. 2. 3.
Performance in Continuous Time Model Theorem. With UO-CSMA and decreasing step sizes,
Proof: Key Ideas • Stochastic Approximation • Having controlled Markov noise Small for large t Fast time-scale averaged, and stationary regime Slow time-scale Lemma. O.D.E System withschedules with stationary regime Solving dual of“tweaked” problem V. Borkar, “Stochastic approximation with controlled Markov noise”,Systems and Control Letters, 2006
Proof: Key Lemma Originalsystem (continuous interpolation of ) Lemma. Two systems are asymptotically equivalent, i.e., Averaging effect ODE system
Pictorial Description of Key Lemma t Original system equal for large t, i.e., for large t t Continuous interpolation Trajectories with the service rate by CSMA being stationary (i.e., averaged) ODE system t
Extension: General Weight Function Extension for strictly increasing,continuously differentiable W(.)
Slotted Time Model • Continuous Model • No collisions • Asymptotically arbitrarily close to optimal • However, in practice • Discrete back-off counters • Collisions are unavoidable • Two Questions • Q1: What is the impact of collisions on efficiency? • Q2: Tradeoff between short-term fairness and efficiency?
Analysis Approach • We can build a sequence of systems that converge to the continuous system, e.g., as ² decreases • Gap between discrete and continuous case for a fixed • Use the gap between discrete Bernoulli proc. and Poisson proc. • Why tradeoff between short-term fairness and efficiency? Contention probability Gap btwn. discrete and continuous Efficiency Short-term fairness Channel holding time
Efficiency and Short-Term Fairness Short-term fairness index(also useful for TCP) Average duration during which link l do not transmit successfully Short-term fairness is inversely proportional to channel holding time For a given efficiency gap , Channel holding time grows with the order of Exponential price of short-term fairness for efficiency
Background and Related WorkTheoryPracticeTheory-Practice Gap
Main Goals • Goal 1 • Implement and deploy theory-driven scheduling algorithm UO CSMA on top of conventional hardware • Goal 2 • Discover, quantify, and bridge the gap between theory and practice for wireless distributed scheduling in general
WiMesh Testbed@KAIST • Open Research Testbed (See Song Chong) • Campus-scale wireless mesh testbed with 55 nodes • Easy programmable platform • PC platform, Linux, FOSS • Common Code [Mesh Router]
Common Code • Highway from Theory to Experimentation • Reuse GloMoSim simulator for the real mesh router • Experimentation without modification of simulation code • All protocols over link layer • Overlay MAC layer (over IEEE 802.11) • Even cross-layer protocols • Co-verification: co-simulation and experimentation First step verification Second step verification (Reuse without modification) Theory Simulator Testbed
Framework • KAIST WiMesh Testbed with Common Code • Song Chong and Yung Yi Common Code GloMoSim Codes L7 Applications L4 TCP, UDP, … L3 IP, AODV, DSR, … L2.5 Overlay user MAC Simulation Implementation L2 802.11, CSMA, … Hardware Adaptor L1 L2,L1 Two ray, free space, … WLAN NIC Simulation world Real physical world Easy and fast verification through simulation and experimentation using Common Code
Simulation • Simulation environment • Two ray path loss model • Slotted operation 1 timeslot = 1.6ms • 1000byte packet size • Link capacity 5Mbps • SNR based packet reception model • No ACK operation • If collision occurs, it lasts for holding time • Backoff counter can be chosen in [0, CW] randomly
Implementation • Features • User space implementation • Overlay + 802.11 MAC • UO-CSMA • Per-link queue structure • Virtual queue update • MAC parameter update • MAC Adaptor • Set 802.11e QoS parameters • CW, TxOp and AIFS • 802.11 MAC • FIFO queue per interface • Transmit actual packets Network Layer To dest a To dest b srcQ UO-CSMA (Overlay) linkQ MAC Adaptor 802.11 (Substrate) FIFO Queue Wireless (Radio)
Experimental Space • Indoor deployment: part of WiMesh • 10 sender-receiver pairs located in 40mx20m 6 1 5 9 2 7 3 8 10 4
Experiment Results • 3 link experiment • 2-9-10 flows are used • 9 interferes with 2 & 10 • Total utility and throughput deviation 9 2 10
Key Observations Basic Conclusions: • UO CSMA works almost perfectly in simulation • UO CSMA works well in physical reality and on top of legacy 802.11 drivers • UO CSMA (in implementation) recovers 80%of the difference between DCF and UO CSMA (in simulation)
Holding Time • Changing holding time • Similar throughput • Holding time imperfect • 802.11 collision avoidance • Degrades short-term fairness 9 2 10 Same throughput behvior
Stepsizes • Queues for 0.01 and diminished by 0.9 every 10s • Both cases have similar performance due to equal queue buildup Flow 9 Flow 10 Fixed step size Flow 9 Flow 10 Decreasing step size
Parameter V • Changing V parameter • Throughput • Can achieve up to nearly optimum as V increases • Instantaneous Backlog • Qmin = 0.1, Qmax = 2.3
Function W • Changing weight function with fixed step size W(x)=x Large backlog W(x)=loglog(x) Small backlog Converges in 40sec Converges in 80sec
Background and Related WorkTheoryPracticeTheory-Practice Gap
Where Do the Gaps Come From? • Sensing (sensing range and sensitivity) • Holding (enforcing holding and backing off) • Receiving (SIR based and capture effect) • Asymmetry of interference • Asynchronization of clock • 802.11 protocol overhead • Common Code architecture overhead Over 802.11 Gap Gap Gap Theory Simulation Experimentation
Theory-Practice Gap 1 • Theory-Simulation Gap • Nonetheless, simulation follows theory very well
Theory-Practice Gap 2 • Simulation-Implementation Gap • Overhead from Common Code, but small • Indirect physical information to the overlay MAC • Imperfect queue nullification under the overlay MAC • Packet-by-packet WLAN NIC configuration
Theory-Practice Gap 3 • Clean slate – over 802.11 gap
Samples of Workaround Solutions • Ensuring correct holding time • Reducing high prioritized beaconing • MAC prioritization by AIFS and CWmin,max • NAV option using overhearing of wireless • Still, there is some hole • Making CW=0 feasible • CW only can have a form of 2^n-1 • Similar transmission chances with CW=1 • Still not perfect holding time execution • Packet-by-packet parameter control • Parameter setting in device driver
Next Steps on Implementation • This is an ‘interim report’ • Many next steps: • Large-scale network with multi-hop sessions • Scaling up the deployment • Routing needs to be considered • Comparison with congestion controlled 802.11 • 802.11n chipset • Ath9k driver is released • Software upgrade • Ath9k device driver support much more freedom • Latest Linux kernel with mac80211 features • Will make the ‘next report’
Implementation-Inspired Theory Qs • Many things theory assumed away • Overhead • Asymmetry • Control granularity • Many things theory modeled simplistically • Imperfect holding and sensing • SIR collision model with capture • Many things theory analyzed loosely • Convergence speed • Transient behavior like queue buildup • Parameter choice
Theory-Practice • From Dichotomy to Union: Theory Practice Theory Practice The Princeton EDGE Lab