1 / 16

A Probabilistic Approach for Achieving Fair Bandwidth Allocation in CSFQ

A Probabilistic Approach for Achieving Fair Bandwidth Allocation in CSFQ. Presented by: Peng Wang EE Department University of Delaware. Background. Why need fairness? Ill-behaved flows consume most of the resource Well-behaved flows are starved out Three approaches for fairness

forest
Download Presentation

A Probabilistic Approach for Achieving Fair Bandwidth Allocation in CSFQ

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Probabilistic Approach for Achieving Fair Bandwidth Allocation in CSFQ Presented by: Peng Wang EE Department University of Delaware

  2. Background • Why need fairness? • Ill-behaved flows consume most of the resource • Well-behaved flows are starved out • Three approaches for fairness • Stateful solution: (Fair Queueing) • Each router maintains per-state information and operates on per-state basis • Good performance • Scalability problem • Stateless solution: (CHOKe) • No per-flow information • Approximately fairness • Partial State solution: (CSFQ, RAINBOW, SRED) • Partial State information • Approximately fairness (Generally better than stateless solution) • Complexity between stateful solution and stateless solution

  3. Fair Queueing Disadvantage: • Need to perform packet classification and maintain state and buffers on per-flow basis and perform operations on per-flow basis

  4. The CSFQ (core stateless FQ) Approach • Goal: Achieve approximately fair bandwidth allocation • Differentiate between Edge router and Core router Edge router maintains per-flow state Core router is stateless

  5. CSFQ • In an island of routers, edge routers measure per-flow rate and label the packets with these measures. • Routers drop packets probabilistically based on the per-flow state in the packet header and fair share estimation • Assume that flow i has arrival rate ri(t) and the fair rate is α(t). • If ri(t) < α(t), all of its traffic is forwarded. • If ri(t) > α(t), then a fraction (ri(t) - α(t))/ ri(t) will be dropped; each packet of the flow is dropped with probability (1- α(t)/ri(t)).

  6. CSFQ • The problem now becomes how to calculate the flow rate ri(t) values and the fair rate a(t), without keeping per flow state in the core routers. • Flow rates ri(t), are calculated at edge routers which keep per flow state and then insert the rate value inside the packet header of packets belonging to that flow. • Estimation of flow arrival rates: • Rnew = (1-e-T/K)*l/T + e-T/K*Rold • where T = packet interarrival time • l = packet size • K = constant

  7. A<C during Kc A>C during Kc Cong Normal Uncong Update α and return immediately: α= α*C/F Update α and return immediately:α=max(p.label) during Kc Fig: FSM for fair share estimation in CSFQ CSFQ: Estimate fair rate (Heuristic) • To estimate the fair rate α(t), an iterative procedure is used: routers meausre aggregate arrival rate A and the aggregate accepted rate F. (arrival packets dropped packets accepted packets). • Based on these, the fair rate a is computed periodically as: • - Uncongested: A< C at all times during a time interval of length Kc.then a is set to the maximum ri(t) during Kc • - Congested:A > C at all times during a time interval of length Kc.then anew = aold*C/F • -Normal: others

  8. SRED: Some Definitions • Zombie List • A list of M recently seen packets • Longer memory than the buffer alone • Pi: Probability that arrival packet belongs to flow i • Assume Pi doesn’t change in a limited time interval • Hit Zombie List n incoming packets

  9. Pi: random select a packet Pi Zombie List Hit prob for flow i:Pi2 n incoming packets Hit prob: ΣPi2 n: sample size After n packets arrives, the estimation of fair share is updated. # of hits: m = n ΣPi2 ΣPi2=m/n 1/N=<ΣPi2< 1 SRED: Estimate fair share • Symmetric case: N flows, pi = 1/N • ΣPi2= 1/N (exact estimate)  m/n=1/NN=n/m • Asymmetric case: N ≈ 1/ ΣPi2 = n/m good estimation Fair Share = C/N where N ≈ n/m

  10. Simulations – Single Congested Link (ALL UDP) 0 1 10Mbps 2 UDP Flows . . . 31

  11. ALL UDPs: Fair Share Estimation Ns-2.1b7a Ns-2.27

  12. ALL UDPs: Throughput of each flow Ns-2.1b7a Ns-2.27

  13. Simulations – Single Congested Link (ONE UDP) UDP Flow 0 1 10Mbps 2 TCP Flows . . . UDP flows at 10Mbps 10Mbps 31

  14. ONE UDP: Fair Share Estimation Ns-2.1b7a Ns-2.27 congested--->α=0.569266, C/F=1.010354congested--->α=0.497685, C/F=0.874257congested--->α=0.540367, C/F=1.085760congested--->α=0.531257, C/F=0.983142 congested--->α=1.165561, C/F=1.910136congested--->α=5.488898, C/F=4.709231congested--->α=10.00000, C/F=2.163037congested--->α=9.320702, C/F=0.93207

  15. ONE UDP: Throughput of each flow Ns-2.1b7a Ns-2.27

  16. Further work: • Make clear the confusion of NS2 version • Optimize my fair share estimation • Flows with different RTT • Multiple congested links • Web traffic THANKS !!!

More Related