1 / 31

The Macroscopic behavior of the TCP Congestion Avoidance Algorithm

The Macroscopic behavior of the TCP Congestion Avoidance Algorithm. Introduction:. Analysis of a performance model for the TCP Congestion Avoidance Algorithm Verification of the model through both simulation and live Internet measurements. Assumptions:.

mohammedk
Download Presentation

The Macroscopic behavior of the TCP Congestion Avoidance Algorithm

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. The Macroscopic behavior of the TCP Congestion Avoidance Algorithm

  2. Introduction: • Analysis of a performance model for the TCP Congestion Avoidance Algorithm • Verification of the model through both simulation and live Internet measurements

  3. Assumptions: • TCP Congestion Avoidance Algorithm in steady-state • Light to moderate packet loss • Additive increase/multiplicative decrease for dealing with congestion • Multiple losses within 1RTT treated as 1 congestion signal • Random packet loss at constant probability p

  4. TCP window evolution under periodic loss

  5. Simple derivation: • W/2<Win<W • If (ACK each segment) each cycle must be W/2 RRT • Total data delivered ~ Area on the graph (3/8)*W2 = 1/p • Solving for W: W=√8/3p

  6. We are interested in BW: • BW = (data per cycle) / (time per cycle) = (MSS* (3/8) * W2 ) / (RTT * W/2) = (MSS / p) / (RTT * √2/3p ) • BW = ( MSS / RTT ) * (C / √p ) • C is a constant “around” 1

  7. Where it does not fit: • advertised window too small cwnd has no effect • Sender has no data • Time consumed by timeouts not modeled • Go-back-N strategies (window consumed by needless retransmissions) • other window opening strategies (Vegas) • Short connections ( not steady-state )

  8. Two examples: • Queueless random packet loss (constant delay, high BW link) • Environments with queuing (drop-tail bottleneck link)

  9. Measured vs. Estimated BW

  10. Window vs. Loss

  11. Estimated Window vs. Loss I

  12. Estimated Window vs. Loss II

  13. Fitting the Slope • Window vs. loss data ~ linear, but… • BW = ( MSS / RTT ) * C * pk , k~1/2

  14. Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

  15. Introduction: • Both congestion avoidance and congestion control mechanisms are basically resource management problems • Key component of a congestion avoidance scheme is the algorithm • Metrics: efficiency, fairness, convergence time, size of oscilations

  16. Network performance = f(load)

  17. congestion avoidance – operate at the knee • congestion control – left of the cliff • One can limit number of packets (window mechanism) or rate (bits or packets per second)

  18. Binary feedback scheme: • Decentralized decision-making algorithm • Resource sends single bit, congestion experience bit (1- overloaded, 0 -underloaded ) • Users then adjust their load by increase/decrease algorithm

  19. Algorithm’s control function : • xi(t) - user’s load • ui(t) - user’s control • y(t) - binary feedback • ui(t) = f (xi(t), y(t) ) • xi(t+1) = xi(t) + f (xi(t), y(t) )

  20. Focus on linear control function f • xi(t+1)= a + b xi(t) • 4 combinations:multiplicative/additive + increase/decrease

  21. Criteria for selecting controls: • Efficiency of the resource usage X(t) – closeness of the total load to the knee • Fairness estimated by the maxmin criterion, xi(t)= xk(t), I,k share the same bottleneckF(x)=(Σxi)2 / (Σ xi2 ) • Distributedness –min amount of feedback in the system • …

  22. Convergence – speed/time with which the system approaches the goal state

  23. A Web Server’s View of the Transport Layer

  24. Observations of traffic to and from a particular WWW server • Data collection from Apache logs and tcpdump

  25. Selective Acknowledgments

  26. Round Trip Times

  27. Larger Initial cwnd

  28. Conclusions: • SACK based TCPs should be suported by servers • 85% RTTs are between 15ms and 500ms • using larger initial cwnd does notdrastically increaseno. ofconnections experiencing loss in the first burst of data

More Related