a measurement based algorithm to maximize the utility of
play

A Measurement-Based Algorithm to Maximize the Utility of Wireless - PowerPoint PPT Presentation

A Measurement-Based Algorithm to Maximize the Utility of Wireless Networks Julien Herzen joint work with Adel Aziz, Ruben Merz, Seva Shneer and Patrick Thiran September 19th, 2011 1 / 20 Context Inefficient situations in wireless LANs


  1. A Measurement-Based Algorithm to Maximize the Utility of Wireless Networks Julien Herzen joint work with Adel Aziz, Ruben Merz, Seva Shneer and Patrick Thiran September 19th, 2011 1 / 20

  2. Context Inefficient situations in wireless LANs • Example , performance anomaly: 1 Mb/s 11 Mb/s GW UDP TCP 800 800 Throughput [Kb/s] Throughput [Kb/s] 600 600 400 400 200 200 Flow at 1Mb/s Flow at 1Mb/s Flow at 11Mb/s Flow at 11Mb/s 0 0 0 1000 2000 3000 0 1000 2000 3000 Time [s] Time [s] • Intuition: Send slightly fewer packets at 1 Mb/s, so that the flow at 11 Mb/s can send many more 2 / 20

  3. Approach 1 Mb/s 11 Mb/s GW • Formalization: Capture the efficiency and the fairness of the network using a utility function � U = u i ( x i ) , i x i : throughput of flow i Examples � U max = x i i � U prop = log x i i 3 / 20

  4. Network Stack • Backward compatibility → runs on top of IEEE 802.11 • Congestion control → throttle each flow • One limiter per IP source in the network queue 1 ρ i 1 ρ i queue 2 2 Round MAC IP ρ i queue 3 Robin 3 j ... ... i k ρ i queue F F GW 4 / 20

  5. How to throttle the flows? • Find the rate allocation ρ that maximizes the utility U • Problem: We do not know the feasible rate region! ◮ hard to predict or measure optimum ? U = � log x i rate of flow 2 U = µ 2 U ∗ U = µ 1 rate of flow 1 5 / 20

  6. Decide at the gateway The gateway knows • The throughput achieved by the flows: x • The current utility of the network: U ( x ) = � u i ( x i ) • If x = ρ , then ρ belongs to the rate region Measure and Decide loop • Measure each flow • Decide • Broadcast decision j j ? i k i k x j x i ρ j ρ i x k ρ k GW GW 6 / 20

  7. Model At time slot n : • Measured throughput: x [ n ] ∈ R F + rate of flow 2 • Rate allocation vector: ρ [ n ] ∈ R F + • Last stable rate allocation: r [ n ] ∈ R F + L ( µ ) • Utility function: U ( x ) = � i u i ( x i ) rate of flow 1 • Level set: L ( µ [ n ]) = { x [ n ] : U ( x [ n ]) = µ [ n ] , x [ n ] ∈ R F + } 7 / 20

  8. Step 1 - Start from IEEE 802.11 allocation U = � log x i • ρ [0] ← x [0] optimum • Current level set: L ( U ( x [0])) rate of flow 2 x [0] = ρ [0] • Remember allocation r [0] ← x [0] L ( µ [0]) rate of flow 1 8 / 20

  9. Step 2 - Enhance phase Time step n : U = � log x i • If x [ n − 1] = ρ [ n − 1]: ◮ Obtain a new target utility µ [ n ] by optimum a full size gradient ascent rate of flow 2 • Else: attempt ◮ Obtain a new target utility µ [ n ] by halving the size of the gradient L ( µ [ n ]) ascent L ( µ [ n − 1]) • Go to Explore phase (next slide) rate of flow 1 9 / 20

  10. Step 3 - Explore phase • If x [ n − 1] = ρ [ n − 1]: U = � log x i ◮ Remember r [ n ] = ρ [ n − 1] ◮ Go to Enhance phase optimum • Else: attempt rate of flow 2 ◮ Keep target utility: µ [ n ] = µ [ n − 1] ◮ Pick ρ [ n ] randomly in L ( µ [ n ]) ◮ Repeat explore phase at most N L ( µ [ n ]) times, then move to Enhance phase (and reduce the size of rate of flow 1 the gradient ascent ) 10 / 20

  11. Step 3 - Explore phase • If x [ n − 1] = ρ [ n − 1]: U = � log x i ◮ Remember r [ n ] = ρ [ n − 1] ◮ Go to Enhance phase optimum • Else: rate of flow 2 ◮ Keep target utility: µ [ n ] = µ [ n − 1] attempt ◮ Pick ρ [ n ] randomly in L ( µ [ n ]) ◮ Repeat explore phase at most N L ( µ [ n − 1]) L ( µ [ n ]) times, then move to Enhance phase (and reduce the size of rate of flow 1 the gradient ascent ) 11 / 20

  12. Step 3 - Explore phase • If x [ n − 1] = ρ [ n − 1]: U = � log x i ◮ Remember r [ n ] = ρ [ n − 1] ◮ Go to Enhance phase optimum • Else: rate of flow 2 ◮ Keep target utility: µ [ n ] = µ [ n − 1] attempt ◮ Pick ρ [ n ] randomly in L ( µ [ n ]) ◮ Repeat explore phase at most N L ( µ [ n ]) times, then move to Enhance phase (and reduce the size of rate of flow 1 the gradient ascent ) 12 / 20

  13. Step 3 - Explore phase optimum • If x [ n − 1] = ρ [ n − 1]: rate of flow 2 ◮ Remember r [ n ] = ρ [ n − 1] attempt ◮ Go to Enhance phase L ( µ [ n ]) • Else: ◮ Keep target utility: rate of flow 1 µ [ n ] = µ [ n − 1] truncated Gaussian PDF for picking ρ 1 : ◮ Pick ρ [ n ] randomly in L ( µ [ n ]) ◮ Repeat explore phase at most N times, then move to Enhance phase (and reduce the size of attempt the gradient ascent ) u − 1 0 ( µ [ n ]) 1 13 / 20

  14. Optimality result Assumptions • Fixed rate region Λ[ n ] = Λ • Coordinate-convex rate region ◮ Much weaker than convexity! Theorem The Enhance & Explore algorithm guarantees that, for any initial rate allocation r [0] , the utility of the last stable rate allocation r [ n ] converges to the maximal utility for n → ∞ . 14 / 20

  15. Practical implementation • Based on Click [1] with MultiflowDispatcher [2] queue 1 ρ i 1 • Creation of 4 new Click ρ i queue 2 elements 2 Round MAC IP ρ i ◮ MFQueue queue 3 Robin 3 ... ... ◮ MFLeakyBucket ◮ EEadapter ρ i queue F F ◮ EEscheduler • Evaluation with ◮ Asus routers ◮ ns-3 GW [1] Kohler et al., Transactions on Computer Systems, 2000 [2] Schi¨ oberg et al., SyClick, 2009 15 / 20

  16. Experimental results • Deployment map: UDP traffic TCP traffic 800 800 Throughput [Kb/s] Throughput [Kb/s] 600 600 • Without E&E: 400 400 200 200 Flow at 1Mb/s Flow at 1Mb/s Flow at 11Mb/s Flow at 11Mb/s 0 0 0 1000 2000 3000 0 1000 2000 3000 Time [s] Time [s] 4 4 Flow at 1Mb/s Flow at 1Mb/s Throughput [Mb/s] Throughput [Mb/s] Flow at 11Mb/s Flow at 11Mb/s 3 3 2 2 • With E&E ( U prop ): 1 1 0 0 0 1000 2000 3000 0 1000 2000 3000 Time [s] Time [s] 16 / 20

  17. Experimental results • Deployment map: 2 Throughput [Mb/s] 1.5 Flow at 2Mb/s 1 • Without E&E: Flow at 5.5Mb/s Flow at 11Mb/s 0.5 0 0 1000 2000 3000 Time [s] 2 Flow at 2Mb/s Throughput [Mb/s] Flow at 5.5Mb/s 1.5 Flow at 11Mb/s • With E&E ( U prop ): 1 0.5 0 0 1000 2000 3000 Time [s] 17 / 20

  18. Simulation results ns-3 simulator • Re-use of the same Click elements • More controlled environment • Possible estimation of the rate region • Computation of optima 1 Mb/s 11 Mb/s GW 18 / 20

  19. Simulation results • Adaptivity to time-varying traffic • Cyclic validation of last stable allocation r [ n ] 19 / 20

  20. Conclusion Problem • Inefficient and/or unfair situations in WLANs • Capture efficiency and fairness using a utilility function ◮ The feasible rate region is unknown! Solution • Successive decisions and measurements by the GW • Optimal for a fixed rate region • When rate region changes, keeps adapting • More details in [1], with an extension to multi-hop networks Future work: • Downlink traffic • Rate adaptation [1] Aziz et al., Mobicom 2011 20 / 20

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend