1 / 39

A Unified Framework for Modeling TCP-Vegas, TCP-SACK, and TCP-Reno

A Unified Framework for Modeling TCP-Vegas, TCP-SACK, and TCP-Reno. Adam Wierman Takayuki Osogami Carnegie Mellon University. Jörgen Olsén Uppsala University. Foo. Slow-start. Slow-start. Slow-start. Fast Rtxmt. Fast Rtxmt. Fast Rtxmt. Fast Rtxmt. Congestion Avoidance.

austin
Download Presentation

A Unified Framework for Modeling TCP-Vegas, TCP-SACK, and TCP-Reno

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 Unified Framework for Modeling TCP-Vegas, TCP-SACK, and TCP-Reno Adam Wierman Takayuki OsogamiCarnegie Mellon University Jörgen OlsénUppsala University

  2. Foo Slow-start Slow-start Slow-start Fast Rtxmt Fast Rtxmt Fast Rtxmt Fast Rtxmt Congestion Avoidance Exponential backoff Motivation TCP Reno TCP is widely used and the protocol is constantly evolving. How will new mechanisms perform?

  3. Our goal is: • A framework for modeling TCP that • Predicts both loss rate and throughput (the full operating point) • Can model the network under on/off traffic • Can model arbitrary variations of TCP

  4. TCP Source Models Source Model Loss Rate Round Trip Time (RTT) Delay Distribution Throughput • Renewal Theory • - Doesn’t predict loss • rate • - Assume long flows • Derived for multiple TCP variations • [Padhe, Firoiu, Kumar, • Cardwell, Towsley, • Vernon, …] Our goal is: • Fluid Models • Doesn’t predict loss • rate • Arbitrary network • - Use simplified TCP • models • [Bonald, Towsley, Misra, • Altman, Fekete, …] • A framework for modeling TCP that • Predicts both loss rate and throughput (the full operating point) • Can model the network under on/off traffic • Can model arbitrary variations of TCP Lots of other work Markovian models, Processor sharing models, Control theoretic, … [Mitrani, Mitra, Roberts, Bonald, Van der Mei, …]

  5. Throughput Source Model Network Model Loss Rate, Delay Distribution Fixed-point Models • Fixed-point methods • Can predict the • full operating point • Can capture general • network behavior • Almost exclusively used • for TCP Reno / Tahoe • [Misra, Ott, Firoiu, • Casetti, Meo, Gibbens, • Bu, Towsley, Roughan, …] • Our Model • Can predict the • full operating point • Can model on/off traffic • Easily adapts to arbitrary variations of TCP Our goal is: • A framework for modeling TCP that • Predicts both loss rate and throughput (the full operating point) • Can model the network under on/off traffic • Can model arbitrary variations of TCP

  6. TCP Source 4 TCP Source 3 TCP Source 2 Throughput + Network TCP Source 1 Loss probability, Delay Distribution Our Model This work generalizes the framework developed by Casetti and Meo in ‘01

  7. TCP Source 4 TCP Source 3 TCP Source 2 Throughput + Network TCP Source 1 Loss probability, Delay Distribution Outline • Model Overview • TCP Model • Application Model • Network Model

  8. TCP Reno Slow-start Fast Rtxmt Congestion Avoidance Exponential backoff TCP Reno

  9. TCP Reno Congestion Avoidance Congestion Window Size Time TCP Reno Congestion Avoidance Infer congestion only when a loss occurs, otherwise increase window size on every RTT.

  10. TCP Reno Congestion Avoidance TCP Reno Model 10 9 8 7 6 5 4 timeout state 3 The states are labeled by window size. Transitions happen once every RTT (except at a timeout state). 2 0 1

  11. TCP Reno Slow-start Congestion Avoidance Congestion Window Size Time TCP Reno Slow-start The window size is doubled every RTT as long as no packets are lost. Exit when threshold window size is reached.

  12. TCP Reno Slow-start Congestion Avoidance TCP Reno Model 10 9 8 7 6 5 4 4 3 The states are labeled by window size. Transitions happen once every RTT (except at a timeout state). 2 2 2 0 0 0 1 1 1

  13. TCP Reno Slow-start Fast Rtxmt Congestion Avoidance Congestion Window Size Time TCP Reno Fast Retransmit If a loss occurs and can be recovered from, cut the window size in half. If the loss can’t be recovered from, time-out.

  14. TCP Reno Slow-start Fast Rtxmt Congestion Avoidance TCP Reno Model 10 9 8 7 6 5 5 4 4 4 3 3 The states are labeled by window size. Transitions happen once every RTT (except at a timeout state). 2 2 2 2 0 0 0 1 1 1

  15. Slow-start Fast Rtxmt TCP Reno Congestion Avoidance Exponential backoff Congestion Window Size Time TCP Reno Exponential Backoff Consecutive timeouts cause the timeout length to double.

  16. Slow-start Fast Rtxmt TCP Reno Congestion Avoidance Exponential backoff TCP Reno Model 10 9 8 7 6 5 5 4 4 4 3 3 The states are labeled by window size. Transitions happen Once every RTT (except at timeout states) 2 2 2 2 0 0 0 1 1 1 0 0 0 0

  17. TCP Vegas Slow-start Fast Rtxmt TCP Reno Slow-start Exponential backoff Congestion Avoidance Fast Rtxmt Slow-start TCP SACK Fast Rtxmt Congestion Avoidance Exponential backoff Exponential backoff Congestion Avoidance TCP Comparison

  18. Congestion Window Size Slow-start Fast Rtxmt TCP Vegas Congestion Avoidance Exponential backoff TCP Vegas Congestion Avoidance Adjust window size in response to the current network delay. e.g. Too much delay causes the window size to be reduced. Time Time

  19. Slow-start Fast Rtxmt TCP Vegas Congestion Avoidance Exponential backoff TCP Vegas Model 10 9 8 7 6 5 5 4 4 4 3 3 The states are labeled by window size. Transitions happen Once every RTT (except at timeout states) 2 2 2 2 0 0 0 1 1 1 0 0 0 0

  20. Congestion Window Size Slow-start Fast Rtxmt TCP Vegas Congestion Avoidance Exponential backoff TCP Vegas Fast Retransmit Because the delay is used to adjust window sizes, we need only drop the window size by ¼ when we can recover from loss. Time

  21. Slow-start Fast Rtxmt TCP Vegas Congestion Avoidance Exponential backoff TCP Vegas Model 10 10 9 9 8 8 7 7 7 6 6 6 5 5 5 4 4 4 4 3 3 3 The states are labeled by window size. Transitions happen Once every RTT (except at timeout states) 2 2 2 2 2 0 0 0 0 0 1 1 1 1 0 0 0 0

  22. Congestion Window Size Slow-start Fast Rtxmt TCP Vegas Congestion Avoidance Exponential backoff TCP Vegas Slow-start Query delay and exit slow-start early if delay is too high, or if window size threshold is reached. Time

  23. Slow-start Fast Rtxmt TCP Vegas Congestion Avoidance Exponential backoff TCP Vegas Model 10 10 9 9 8 8 7 7 7 6 6 6 5 5 5 4 4 4 4 4 3 3 3 The states are labeled by window size. Transitions happen Once every RTT (except at timeout states) 2 2 2 2 2 2 2 0 0 0 0 0 1 1 1 1 0 0 0 0

  24. TCP Source 4 TCP Source 3 TCP Source 2 Throughput + Network TCP Source 1 Loss probability, Delay Distribution Outline • Model Overview • TCP Model • Application Model • Network Model

  25. Idle Busy 10 9 8 7 6 5 5 4 4 3 3 4 2 2 2 2 0 0 1 1 1 0 0 0 0 0 Application Model App TCP Network Idle Link

  26. TCP Source 4 TCP Source 3 TCP Source 2 Throughput + Network TCP Source 1 Loss probability, Delay Distribution Outline • Model Overview • TCP Model • Application Model • Network Model

  27. TCP Source 4 TCP Source 3 TCP Source 2 10 9 8 Throughput + Network 7 TCP Source 1 6 5 5 Idle 4 4 3 3 4 2 2 2 2 Loss probability, Delay Distribution 0 0 1 1 1 0 0 0 0 0 Model Overview This work generalizes the framework developed by Casetti and Meo in ‘01

  28. Results External Metrics Throughput Loss Rate Internal Metrics Time spent in timeout states Time spent in slow-start Time spent in fast retransmit states

  29. Results: External External Metrics Throughput Loss Rate Vegas model ns

  30. Vegas model ns Results: External External Metrics Throughput Loss Rate

  31. Vegas SACK Reno Results: Internal Internal Metrics Time spent in timeout states Time spent in slow-start Time spent in fast retransmit states

  32. Results: Internal Internal Metrics Time spent in timeout states Time spent in slow-start Time spent in fast retransmit states Vegas SACK Reno

  33. Results: Internal Internal Metrics Time spent in timeout states Time spent in slow-start Time spent in fast retransmit states Vegas SACK Reno 0 0

  34. TCP Vegas Slow-start Fast Rtxmt Slow-start Exponential backoff Congestion Avoidance Fast Rtxmt Slow-start TCP SACK Fast Rtxmt Congestion Avoidance Exponential backoff TCP Reno Exponential backoff Congestion Avoidance Contributions • A framework for modeling TCP that • Predicts both loss rate and throughput (the full operating point) • Can model the network under on/off traffic • Can model arbitrary variations of TCP Our model of TCP Vegas is top-of-the-line.

  35. “A Unified Framework for Modeling TCP-Vegas, TCP-SACK, and TCP-Reno” The WOO Model: Adam Wierman Takayuki OsogamiCarnegie Mellon University Jörgen OlsénUppsala University

  36. TCP Reno Slow-start Fast Rtxmt Slow-start TCP SACK Fast Rtxmt Congestion Avoidance Exponential backoff Exponential backoff Congestion Avoidance TCP SACK

  37. Slow-start Fast Rtxmt TCP SACK Congestion Avoidance Exponential backoff Congestion Window Time TCP SACK Fast Retransmit Uses Selective ACKs to guarantee that all losses can be recovered from.

  38. Slow-start Fast Rtxmt TCP SACK Congestion Avoidance Exponential backoff TCP SACK Model 10 9 8 7 6 5 5 4 4 4 3 3 The states are labeled by window size. Transitions happen Once every RTT (except at timeout states) 2 2 2 2 0 0 0 1 1 1 0 0 0 0

  39. Network Model Network Model Arrival Rate Loss Rate Delay Distribution Bottleneck Buffer TCP Sending Rate Link Capacity Buffer Capacity What kind of queue? M/D/1/b, M10/M/1/b, M/M/1/b

More Related