1 / 33

Sizing Router Buffers

Sizing Router Buffers. Nick McKeown Guido Appenzeller & Isaac Keslassy SNRC Review May 27 th , 2004. Routers need Packet Buffers. It’s well known that routers need packet buffers It’s less clear why and how much Goal of this work is to answer the question:

osias
Download Presentation

Sizing Router Buffers

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. Sizing Router Buffers Nick McKeown Guido Appenzeller & Isaac Keslassy SNRC Review May 27th, 2004

  2. Routers need Packet Buffers • It’s well known that routers need packet buffers • It’s less clear why and how much • Goal of this work is to answer the question: How much buffering do routers need? Given that queueing delay is the only variable part of packet delay in the Internet, you’d think we’d know the answer already!

  3. How much Buffer does a Router need? Source Destination Router C • Universally applied rule-of-thumb: • A router needs a buffer size: • 2T is the two-way propagation delay (or just 250ms) • C is capacity of bottleneck link • Context • Mandated in backbone and edge routers. • Appears in RFPs and IETF architectural guidelines.. • Usually referenced to Villamizar and Song: “High Performance TCP in ANSNET”, CCR, 1994. • Already known by inventors of TCP [Van Jacobson, 1988] • Has major consequences for router design 2T

  4. Example • 10Gb/s linecard • Requires 300Mbytes of buffering. • Read and write 40 byte packet every 32ns. • Memory technologies • DRAM: require 4 devices, but too slow. • SRAM: require 80 devices, 1kW, $2000. • Problem gets harder at 40Gb/s • Hence RLDRAM, FCRAM, etc.

  5. Outline of this Work • Main Results • The rule of thumb is wrong for a core routers today • Required buffer is instead of • Outline of this talk • Where the rule of thumb comes from • Why it is incorrect for a core router in the internet today • Correct buffer requirements for a congested router • Buffer requirements for short flows (slow-start) • Experimental Verification • Conclusion

  6. Outline • The Rule of Thumb • Where does the rule of thumb comes from? (Answer: TCP) • Interaction of TCP flows and a router buffers • The buffer requirements for a congested router • Buffer requirements for short flows (slow-start) • Experimental Verification • Conclusion

  7. Router TCP Only W=2packets may be outstanding Source Dest C’ > C C • TCP Congestion Window controls the sending rate • Sender sends packets, receiver sends ACKs • Sending rate is controlled by Window W, • At any time, only W unacknowledged packets may be outstanding • The sending rate of TCP is

  8. For every W ACKs received, send W+1 packets RTT Window size t Single TCP FlowRouter with large enough buffers for full link utilization B Source Dest C’ > C C

  9. Required buffer is height of sawtooth B 0 t

  10. Buffer = rule of thumb

  11. Over-buffered Link

  12. Under-buffered Link

  13. Origin of rule-of-thumb • Before and after reducing window size, the sending rate of theTCP sender is the same • Inserting the rate equation we get • The RTT is part transmission delay T and part queueing delay B/C . We know that after reducing the window, the queueing delay is zero. 

  14. Rule-of-thumb • Rule-of-thumb makes sense for one flow • Typical backbone link has > 20,000 flows • Does the rule-of-thumb still hold? • Answer: • If flows are perfectly synchronized, then Yes. • If flows are desynchronized then No.

  15. Outline • The Rule of Thumb • The buffer requirements for a congested router • Synchronized flows • Desynchronized flows • The 2T×C/sqrt(n) rule • Buffer requirements for short flows (slow-start) • Experimental Verification • Conclusion

  16. If flows are synchronized • Aggregate window has same dynamics • Therefore buffer occupancy has same dynamics • Rule-of-thumb still holds. t

  17. When are Flows Synchronized? • Small numbers of flows tend to synchronize • Large aggregates of flows are not synchronized • For > 200 flows, synchronization disappears • Measurements in the core give no indication of synchronization

  18. Probability Distribution Buffer Size If flows are not synchronized B 0

  19. Quantitative Model model as where • For many de-synchronized flows • We assume congestion windows are independent • All congestion windows have the same probability distribution • Model congestion window of a flow as random variable • Now central limit theorem gives us the distribution of the sum of the window sizes

  20. Buffer vs. Number of Flowsfor a given Bandwidth • For a given C, the window W scales with 1/n and thus • Standard deviation of sum of windows decreases with n • If for a single flow we have • Thus as n increases, buffer size should decrease

  21. Required buffer size Simulation

  22. Summary • Flows in the core are desynchronized • For desynchronized flows, routers need only buffers of

  23. Outline • The Rule of Thumb • The buffer requirements for a congested router • Buffer requirements for short flows (slow-start) • Experimental Verification • Conclusion

  24. Short Flows • So far we were assuming a congested router with long flows in congestion avoidance mode. • What about flows in slow start? • Do buffer requirements differ? • Answer: Yes, however: • Required buffer in such cases is independent of line speed and RTT (same for 1Mbit/s or 40 Gbit/s) • In mixes of flows, long flows drive buffer requirements • Short flow result relevant for uncongested routers

  25. A single, short-lived TCP flowFlow length 62 packets, RTT ~140 ms 32 Flow Completion Time (FCT) 16 8 4 fin ackreceived syn 2 RTT

  26. Average Queue length

  27. Queue Distribution • We derived closed-form estimates of the queue distribution using Effective Bandwidth • Gives very good closed form approximation • Buffer requirements for short flows • Small & independent of line speed and RTT • In mixes of flows, long flows dominate buffer requirements

  28. Outline • The Rule of Thumb • The buffer requirements for a congested router • Buffer requirements for short flows (slow-start) • Experimental Verification • Conclusion

  29. Experimental Evaluation Overview • Simulation with ns2 • Over 10,000 simulations that cover range of settings • Simulation time 30s to 5 minutes • Bandwidth 10 Mb/s - 1 Gb/s • Latency 20ms -250 ms, • Physical router • Cisco GSR with OC3 line card • In collaboration with University of Wisconsin • Experimental results presented here • Long Flows - Utilization • Mixes of flows - Flow Completion Time (FCT) • Mixes of flows - Heavy Tailed Flow Distribution • Short Flows – Queue Distribution

  30. Long Flows - Utilization (I)Small Buffers are sufficient - OC3 Line, ~100ms RTT 99.9% 2× 99.5% 98.0%

  31. Long Flows – Utilization (II) Model vs. ns2 vs. Physical RouterGSR 12000, OC3 Line Card

  32. Outline • The Rule of Thumb • The buffer requirements for a congested router • Buffer requirements for short flows (slow-start) • Experimental Verification • Conclusion

  33. Impact on Router Design • 10Gb/s linecard with 200,000 x 56kb/s flows • Rule-of-thumb: Buffer = 2.5Gbits • Requires external, slow DRAM • Becomes: Buffer = 6Mbits • Can use on-chip, fast SRAM • Completion time halved for short-flows • 40Gb/s linecard with 40,000 x 1Mb/s flows • Rule-of-thumb: Buffer = 10Gbits • Becomes: Buffer = 50Mbits • For more details… • “Sizing Router Buffers – Guido Appenzeller, Isaac Keslassy and Nick McKeown, to appear at SIGCOMM 2004

More Related