1 / 28

TCP Vegas: New Techniques for Congestion Detection and Control

TCP Vegas: New Techniques for Congestion Detection and Control. Abstract. Vegas is a new implementation of TCP that achieves between 40% and 70% better throughput, with one-fifth to one-half the losses, as compared to the Reno implementation. Techniques. Fast retransmission

torin
Download Presentation

TCP Vegas: New Techniques for Congestion Detection and Control

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. TCP Vegas: New Techniques for Congestion Detection and Control

  2. Abstract Vegas is a new implementation of TCP that achieves between 40% and 70% better throughput, with one-fifth to one-half the losses, as compared to the Reno implementation.

  3. Techniques • Fast retransmission • Congestion avoidance • Slow-start

  4. New retransmission Mechanism

  5. RTT Measurement • Reno: coarse-grained timer. • Vegas: fine-grained clock values. More accurate calculations of timeout, resulting faster detection of lost segments

  6. Retransmission decision • Reno: when receiving n (usually 3) duplicate ACKs. • Vegas: • when receiving duplicate ACK, checks if timeout expired and if so, retransmits. • when receiving a non-duplicate ACK (1st or 2nd after retransmission) , checks if timeout expired and if so, retransmits.

  7. Retransmission example Rcvd ACK for Packet 10 (11 and 12 are in transit). Send packet 13 (which is lost). One RTT Rcvd ACK for Packet 11. Send packet 14. Rcvd ACK for Packet 12. Send packet 15 (which is lost) Should have gotten ACK for packet 13 Rcvd dup ACK for packet 13 (due to packet 14). Vegas checks timeout for packet 13 and retransmits it. (Reno would need to wait for the 3rd dup ACK) One RTT Rcvd ACK for packet 13 and packet 14. Vegas checks timeout for packet 15 and retransmits it. (Reno would need to wait for the 3rd dup ACK)

  8. Congestion window decrease • Reno: possible to decrease the congestion window more than once during one RTT. • Vegas: in case of multiple segment loss and more than one fast retransmission the congestion window is reduced only for the first fast retransmission.

  9. Congestion avoidance Mechanism

  10. Congestion detection • Reno: reactive – uses the loss of segments as a signal that there is congestion in the network. • Vegas: proactive – tries to detect incipient congestion by comparing the measured throughput to its notion of expected throughput.

  11. The algorithm • baseRTT– RTT of a segment when the connection is not congested. • windowSize– the size of the current congestion window. • expected = windowSize / baseRTT

  12. The algorithm – cont. • rttLen– number of bytes transmitted during the last RTT. • rtt– average RTT of the segments acknowledged during the last RTT. • actual = rttLen / rtt • diff = expected – actual • Define two thresholds:  <

  13. The algorithm – cont. • diff <  increase the congestion window linearly during the next RTT. • diff >  decrease the congestion window linearly during the next RTT. •  < diff <  do nothing

  14. Modified Slow-start Mechanism

  15. Congestion window increase • Reno: doubles congestion window size every RTT. • Vegas: doubles congestion window size every other RTT (valid comparison of the expected and the actual rates). Detect and avoid congestion during slow-start

  16. Experiments

  17. HOST 1A HOST 1B R1 R2 HOST 2B HOST 2A HOST 3A HOST 3B One-on-One Experiments • How TCP connections interfere with each other? • Network Configuration: 200 KB/S 50 ms delay

  18. One-on-One Experiments - cont.

  19. Background Traffic Experiment • What is the performance of a TCP connection when the network is loaded with traffic? • Two kinds of experiments: • Background traffic using Reno • Background traffic using Vegas

  20. Background Traffic Experiment – cont. 1 MB Transfer- Generated Background Reno Traffic

  21. Background Traffic Experiment – cont. Throughput of Background Traffic

  22. Conclusions • When most of the traffic is from Reno connections it’s better to run Vegas. • When the whole world running Vegas • Enough buffers in the routers  Vegas Congestion mechanism is effective • Load increases and/or number of router buffers decreases  Vegas behaves similarly to Reno

  23. Algorithms In TCP Vegas Q: Which of the techniques incorporated in TCP Vegas are responsible for the performance gains?

  24. 2k Factorial Design • Determine the effect of k factors, each of them having two levels. • In case of TCP Vegas, these factors are the different algorithms. The factor levels are “on” and “off” (indicate whether the TCP Vegas algorithm is used or not).

  25. Conducted experiment The Vegas algorithms were clustered into three groups according to the phase they affect: • Slow start • Congestion avoidance • Congestion recovery

  26. Experiment Results • Slow-start and Congestion recovery have the most influence on throughput • Congestion detection mechanism during congestion avoidance, has only minor or negative effect on throughput • Congestion detection mechanism may exhibit problems related to fairness among competing connections

  27. Summary TCP Vegas – Is it really that good?

  28. References • Lawrence S. Brakmo, Sean W. O’Malley and Larry L. Peterson. TCP Vegas: New Techniques For Congestion Detection And Avoidance • U. Hengartner, J. Bolliger and Th. Gross. TCP Vegas Revisited

More Related