Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Core Stateless Fair Queueing Ion Stoica Hui Zhang Scott Shenker CMU CMU Xerox PARC CMU CMU Xerox PARC.

Similar presentations


Presentation on theme: "1 Core Stateless Fair Queueing Ion Stoica Hui Zhang Scott Shenker CMU CMU Xerox PARC CMU CMU Xerox PARC."— Presentation transcript:

1 1 Core Stateless Fair Queueing Ion Stoica Hui Zhang Scott Shenker CMU CMU Xerox PARC CMU CMU Xerox PARC

2 2 Document Organization Provide a brief description and overview of Coreless Stateless Fair Queing Provide a brief description and overview of Coreless Stateless Fair Queing Describe the algorithms supporting the model Describe the algorithms supporting the model Simulations and comparisons with differnet loads Simulations and comparisons with differnet loads Conclusion and results Conclusion and results

3 3 Introduction The purpose of this paper is to achieve congestion control by allocation of bandwidth in a fair manner. The purpose of this paper is to achieve congestion control by allocation of bandwidth in a fair manner. The architecture proposed is a set of algorithms which are simple and inexpensive to implement on a contiguous portion of network with well defined interior and edges. The architecture proposed is a set of algorithms which are simple and inexpensive to implement on a contiguous portion of network with well defined interior and edges.

4 4 Mechanisms for Congestion Control and Fairness FIFO Drop tail strategy. FIFO Drop tail strategy. RED Buffer management, probabilistically drop packets to keep the occupancy between the max and min thresholds RED Buffer management, probabilistically drop packets to keep the occupancy between the max and min thresholds FRED (Flow Random early drop) Extends RED to achieve fairness. FRED (Flow Random early drop) Extends RED to achieve fairness. DRR (Deficit Round Robin) Employs sophisticated weighted fair queuing. DRR (Deficit Round Robin) Employs sophisticated weighted fair queuing.

5 5 Architecture for Core Stateless Fair Queuing Edge Router a)Maintains Flow per state. b)Label the packet with the rate estimate Core Router a)Uses FIFO Queuing b)Probabilistic dropping depending on label, fair rate of router depending on aggregate traffic

6 6 Functions of Edge and Core Routers Classify the packets to a flow Classify the packets to a flow Label the packet Label the packet Update the fair share rate estimation for the outgoing link Update the fair share rate estimation for the outgoing link Update the flow rate estimation Update the flow rate estimation Forward the packet depending on dropping probability max(0,1-α/r(i)) Forward the packet depending on dropping probability max(0,1-α/r(i)) Relabel the packet. Relabel the packet.

7 7 Fluid model and Packet Algorithm at the core Suppose each flow arrival rate ri(t) is known Suppose each flow arrival rate ri(t) is known If it’s fair share rate is a(t), then the service received by the flow at time t will be min(ri(t),a(t)) If it’s fair share rate is a(t), then the service received by the flow at time t will be min(ri(t),a(t)) Thus the total outgoing traffic from the router would be the ∑ (min(ri(t),a(t)) =C Thus the total outgoing traffic from the router would be the ∑ (min(ri(t),a(t)) =C The fraction of packet dropped from each flow is calculated by ((ri(t) - a(t))/ ri(t). The fraction of packet dropped from each flow is calculated by ((ri(t) - a(t))/ ri(t).

8 8 Flow Arrival rate at the edge router Use a exponential averaging system. Use a exponential averaging system. The estimated rate of arrival of each new packet is computed from the inter arrival time, the length of the packet and the previous rate which is thus updated The estimated rate of arrival of each new packet is computed from the inter arrival time, the length of the packet and the previous rate which is thus updated Rnew = (1-e-Ti/K)*Li/Ti + e-Ti/K*Rold Rnew = (1-e-Ti/K)*Li/Ti + e-Ti/K*Rold where Li is the length of the packet at ti and T is the time between packet ti-1 and ti

9 9 Link Fair Rate Estimator The estimated rate is put into the label by the edge router. The estimated rate is put into the label by the edge router. At the core router the fair rate is estimated from the algorithm of aggregated arrival rate and aggregated accepted rate which are updated from each arrival of packets. At the core router the fair rate is estimated from the algorithm of aggregated arrival rate and aggregated accepted rate which are updated from each arrival of packets.

10 10 Link congested F(α)=∑min(ri(t), α(t)) F(α)=∑min(ri(t), α(t)) α(t) is the fair share rate F is the estimated fair packet accepance rate of all the traffic. Agg(n )=(1-e-T/K)*L/T + e- T/K*Agg(o) Agg(n )=(1-e-T/K)*L/T + e- T/K*Agg(o) Agg(n)The estimated aggregate arrival rate F is calculated similarly The estimate for fair share rate is updated like The estimate for fair share rate is updated like αnew =αold *C/F αnew =αold *C/F Link not congested α is said to the largest rate of any active flow r(i) and aggregate received traffic Agg(n) <C during an interval of length Kc

11 11 Algorithm The edge router estimates the rate using Rnew = (1-e-Ti/K)*Li/Ti + e-Ti/K*Rold and puts in the label The core router finds the probability of dropping the packet using the fair rate estimator α Drop Prob=max(0,1- α /p.label) The rate estimator α is updated with each packet

12 12 Label rewriting If there is congestion at core router, the packet labels need to be updated at the core router which is done by If there is congestion at core router, the packet labels need to be updated at the core router which is done by L new = min(L old, α) Outgoing rate is the minimum of incoming and the fair rate

13 13 Weighed CSFQ If priority is needed for certain specific flows this algorithm can be updated to If priority is needed for certain specific flows this algorithm can be updated to include the weighs of the flows and thus the dropping probability of the packet would be include the weighs of the flows and thus the dropping probability of the packet would be Max(0,1- α w i/ r(i)) The sum of all weigted flow should be a solution for the link capacity. ∑w i min(α,r(i)/w i ) =C ∑w i min(α,r(i)/w i ) =C

14 14 Performance bounds for weighed CSFQ During a time interval a flow can receive excessive service due to it’s weight. During a time interval a flow can receive excessive service due to it’s weight. The excessive service can be restricted to this flow by implementing a performance bound such that it cannot exceed the fair share. The excessive service can be restricted to this flow by implementing a performance bound such that it cannot exceed the fair share.

15 15 Choice of K for algorithm e-T/K e-T/K A smaller K increases the system responsiveness to rapid rate fluctuation A larger K better filters the noise and avoids potental system instability The K should be larger then delay jitter of the flow and less then average duration of the flow

16 16 Simulations Compare the CSFW performance against 4 other algorithms Compare the CSFW performance against 4 other algorithms FIFO and RED do not attempt to achieve fair bandwidth allocation FRED and DRR Use other approaches to achieve fairness

17 17 A single 10 Mbps Link shared by N flows Throughput for 32 UDP flows. The arrival rate for flow is (i+1) times larger then its fair share.

18 18 A single congested link with1 UDP flow and 31 TCP flows Throughput when the UDP flow is sending at 10 Mbps and the rest are TCP averaged over a 10 second interval

19 19 Normalized bandwidth of a TCP flow competing against N-1 UDP flows. The UDP flows sending at twice their allocated rates as 2*10/N Results DRR performs well when there are less then 22 flows. CSFQ performs better with TCP burstiness as it allows packet buffering. CSFQ performs better then FRED throughout.

20 20 Multiple congested Link TCP Source Udp1 Udp-10UdpK1UdpK10 TCP Sink Gateway

21 21 UDP and TCP flow as a function of no of congested links and Normalized throughput a) The flow is UDP b) The flow is TCP The UDP and TCP flow send at its fair share.909Mbps The links are congested since all UDP send at a rate of 2MBps causing congestion which has the capacity of 10 Mbps

22 22 Coexistence of different adaptation schemes 3 Receiver layered Multicast flows along with a TCP of each having a fair share of 1 Mbps 3 Receiver layered Multicast flows along with a TCP of each having a fair share of 1 Mbps CSFQ FRED in this does not provide fair bandwidth allocation as RLM and TCP use different end to end congestion control algorithms DRRFRED FIFO RED

23 23 On Off Flow with 19 competing TCP flows AlgorithmDeliveredDropped DRR6016157 CSFQ16805078 FRED17145044 RED53221436 FIFO54521306 The On Off perios is derived from exponential distribution of mean of 100 and 1900 ms. During the On-Off period the source sends at 10Mbps The DRR and CSFQ show that the ON-Off source drops packets since it is limited to its fair share

24 24 Simulation of web traffic Interarrival times are exponentially distributed with mean of.05ms and length of each transfer is from a Pareto distribution. Algorith m Mean time Std. dev DRR2599 CSFQ62142 FRED40174 RED5921274 FIFO8401695 The mean transfer time and std deviation for 60 short TCP flows in the presence of UDP flow that sends at link capacity of 10 Mbps Result CSFQ worse then FRED since it has a larger queue size.

25 25 Large Latency model AlgorithmMean Std. dev DRR608064 CSFQ5761220 FRED4974190 RED62880 FIFO37869 The mean throughputs and std deviations for a 100 second interval for 19TCP and 1 UDp flow at link capacity of 10 Mbps. The propagation delay is 100 ms Due to propagation delay we have to set the buffer size to be 256Kb and K,Kα,Kc to be 400 ms

26 26 Packet relabeling Flow1 10 Mbps Flow2 10 Mbps Flow3 10 Mbps Sink Gateway 10Mbps Link

27 27 Throughput from CSFQ averaged over 10 seconds for the 3 flows along link 2 Traffic Flow 1 Flow 2 Flow 3 UDP3.363.323.28 TCP3.433.133.43

28 28 Identification of Friendly and unfriendly flows by RED and CSFQ AlgorithmUDPTCP1TCP2TCP1TCP2 RED.906.280.278.565.891 CSFQ.554.468.478.729.747 | Simulation1 | | Simulation2 | The throughput of one UDP and 2 TCP flows along a 1.5 Mbps link under RED and CSFQ. In first simulation 1 Mbps UDP flow and 2 TCP flow In the second simulation we have modified TCP which opens its congestion window 3 times faster

29 29 Achieving Fair bandwidth Allocation Identifying Flows Identifying Flows Use a fair detection algorithm to identify unfriendly flows Use a fair detection algorithm to identify unfriendly flows Isolating Flows Isolating Flows Router allocates resources separately for friendly and unfriendly flows. Router allocates resources separately for friendly and unfriendly flows.

30 30 Summary FRED requires per packet flow classification while CSFQ does not, so the fairness can be achieved in a scalable manner. The CSFQ would comprise of high speed backbones and lower speed edge routers where classification and per flow operation is done. The edge routers must be distinguishable from the core by some configuration. The edge routers must be distinguishable from the core by some configuration.

31 31 Acknowledgements Professor Bob Kinicky WPI for valuable information and advice Professor Bob Kinicky WPI for valuable information and advice Ion Stoica CMU Author Ion Stoica CMU Author Scott Shenker Xerox Author Scott Shenker Xerox Author Hui Zhang CMU Author Hui Zhang CMU Author Nagaraj Shirali For help with Jpeg graphs Nagaraj Shirali For help with Jpeg graphs Choong-Soo Lee For help with Jpeg graphs Choong-Soo Lee For help with Jpeg graphs


Download ppt "1 Core Stateless Fair Queueing Ion Stoica Hui Zhang Scott Shenker CMU CMU Xerox PARC CMU CMU Xerox PARC."

Similar presentations


Ads by Google