Core-Stateless Fair Queueing

973 views

Published on

Presentation for the paper Core-Stateless Fair Queueing on SIGCOMM '98

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
973
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
21
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Core-Stateless Fair Queueing

  1. 1. Core-Stateless Fair Queueing Achieving Approximately Fair Bandwidth Allocations in High Speed Networks Ion Stoica @ CMU Scott Shenker @ Xerox PARC Hui Zhang @ CMU Presented by Wang Yuanxuan SIGCOMM ’98
  2. 2. Is end-to-end congestion control enough?
  3. 3. Limitations of End-to-end Protocols • All end-host cooperate – What about ill-behaved users? • End-hosts implement homogeneous control algorithms – Assume all clients adopt TCP
  4. 4. Enforcing Fair Bandwidth Allocation • Router controls bandwidth • Each flow is ensured to receive its fair share – no matter what control algorithms
  5. 5. Fair Queueing
  6. 6. Fair Queueing (cont.) • Maintain per flow state
  7. 7. Fair Queueing (cont.) • A router needs to perform – Per packet classification – Per flow buffer management – Per flow scheduling • Any disadvantages? – Complex – Per flow management
  8. 8. Core-Stateless Fair Queueing • Significantly reduces implementation complexity • Still achieves approximately fair allocations
  9. 9. How? decomposing edge and core routers estimating incoming rate and fair rate drop packets probabilistically
  10. 10. Outline • Previous Work Design • Algorithms • Evaluation
  11. 11. Architecture • Two types of nodes – edge nodes – core nodes • Only edge routers maintain per flow state
  12. 12. Probabilistic Dropping • Given – rate estimate carried in the label ri(t) – fair share rate of the router α(t) • The arrival rate of flow i at time t min⁡[ 𝑟𝑖 𝑡 , α 𝑡 ] • The packet is dropped with probability max⁡(0, 1 − α(𝑡) 𝑟𝑖(𝑡) )
  13. 13. Edge Nodes & Core Nodes • Edge nodes – estimate the incoming rate of each flow, and use it to label flow's packets • All nodes – periodically estimate the fair rate f – upon packet arrival, compute the forwarding probability P and forward it – when a packet is forwarded reset its label
  14. 14. How to estimating ri(t) and α(t)?
  15. 15. Example Algorithms • Computation of Flow Arrival Rate 𝑟𝑖 𝑛𝑒𝑤 = 1 − 𝑒− 𝑇𝑖 𝑘 𝐾 𝑙𝑖 𝑘 𝑇𝑖 𝑘 + 𝑒−𝑇𝑖 𝑘 /𝐾 𝑟𝑖 𝑜𝑙𝑑 • Link Fair Rate Estimation ɑ 𝑛𝑒𝑤 = ɑ 𝑜𝑙𝑑 𝐶 𝐹 ri Flow arrival rate li k Length of kth packet of flow i ti k Arrival time of flow i Ti k Duration C Output link speed F Estimated rate of the accepted traffic
  16. 16. Pseudocode Don’t worry It’s just an initial prototype
  17. 17. And finally…
  18. 18. Evaluation • Competitors – FIFO (first in first out, naïve) – RED (random early detection) – FRED (flow random early drop, drop based on flow state) – DRR (deficit round robin, an efficient implementation of weighted fair queueing) – CSFQ
  19. 19. What Should We Evaluate • Total throughput • Single flow throughput in congested network – TCP – UDP • Throughput under Large Latencies
  20. 20. Total Throughput of TCP/UDP Flows
  21. 21. Multiple Congested Links • Each UDP sends at twice its fair rate
  22. 22. Relative Throughput of A TCP Flow
  23. 23. Relative Throughput of A UDP Flow
  24. 24. Throughputs with Large Latency • Propagation delay: 100ms Algorithm Mean Std. dev DRR 6080 64 CSFQ 5761 220 FRED 4974 190 RED 628 80 FIFO 378 69
  25. 25. Throughputs with Large Latency • Propagation delay: 100ms Algorithm Mean Std. dev DRR 6080 64 CSFQ 5761 220 FRED 4974 190 RED 628 80 FIFO 378 69
  26. 26. Summary • CSFQ – a hybrid scheme that asymptotically converges to max-min fairness • Two neat ideas – a decomposition of edge and core routers – a simple technique to estimate the fair rate in a core router • Can achieve a significant degree of fairness – comparable or superior to FRED
  27. 27. Drawbacks & Discussion • Effect of large latencies • All routers in an island need to be simultaneously upgraded • Dynamic packet state needs to be implemented somehow – Using IP fragmentation header fields? • Assume benign routers – What if buggy or malicious routers exist?
  28. 28. Thanks!

×