Presentation is loading. Please wait.

Presentation is loading. Please wait.

The Macroscopic behavior of the TCP Congestion Avoidance Algorithm.

Similar presentations


Presentation on theme: "The Macroscopic behavior of the TCP Congestion Avoidance Algorithm."— 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)*W 2 = 1/p Solving for W: W=√8/3p

6 We are interested in BW: BW = (data per cycle) / (time per cycle) = (MSS* (3/8) * W 2 ) / (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 * p k, 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 : x i (t) - user’s load u i (t) - user’s control y(t) - binary feedback u i (t) = f (x i (t), y(t) ) x i (t+1) = x i (t) + f (x i (t), y(t) )

20 Focus on linear control function f x i (t+1)= a + b x i (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, x i (t)= x k (t), I,k share the same bottleneck F(x)=(Σx i ) 2 / (Σ x i 2 ) Distributedness –min amount of feedback in the system …

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

23

24

25

26 A Web Server’s View of the Transport Layer

27 Observations of traffic to and from a particular WWW server Data collection from Apache logs and tcpdump

28 Selective Acknowledgments

29 Round Trip Times

30 Larger Initial cwnd

31 Conclusions: SACK based TCPs should be suported by servers 85% RTTs are between 15ms and 500ms using larger initial cwnd does not drastically increase no. of connections experiencing loss in the first burst of data


Download ppt "The Macroscopic behavior of the TCP Congestion Avoidance Algorithm."

Similar presentations


Ads by Google