Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS540/TE630 Computer Network Architecture Spring 2009 Tu/Th 10:30am-Noon Sue Moon.

Similar presentations


Presentation on theme: "CS540/TE630 Computer Network Architecture Spring 2009 Tu/Th 10:30am-Noon Sue Moon."— Presentation transcript:

1 CS540/TE630 Computer Network Architecture Spring 2009 Tu/Th 10:30am-Noon Sue Moon

2 TCP  What do you remember from undergrad networking courses?

3 Questions  How does TCP detect loss?  Do all packets arrive in order?  If not, why?  If not, how does TCP detect out-of-order packets?

4 Congestion Control  Other Variables?

5 Congestion Avoidance and Control Van Jaconson 1988

6 Introduction  The first congestion collapse in the Internet  Between LBL and UCB, the throughput dropped from 32 Kbps to 40 bps  New algorithms proposed to fix the problem in 4.3 BSD (Berkeley Unix) TCP

7 New Algorithms  Round-trip time variance estimation  Exponential retransmit timer backoff  Slow-start  More aggressive receiver ack policy  Dynamic window sizing on congestion  Karn’s clamped retransmit backoff  Fast retransmit Not covered in this paper

8 When congestion collapses occur  Conservation of packets principle  Running stably with a full window of data in transit  Three ways for packet conservation to fail  The connection doesn’t get to equilibrium  New packets are injected before old ones has exited  The equilibrium can’t be reached due to resource limits

9 Slow-start  Self-clocking  Acks are generated no faster than data packets

10 Slow-start (cont’d)  How to start at the beginning?  Exponentially increased window size  Simple changes to TCP  Keep cwnd per connection  Set cwnd to 1 when (re)starting  Increase cwnd by 1 on each ack  Send min(cwnd, rwnd)

11 Effect of Slow-start Without Slow-startWith Slow-start Available bandwidth

12 Round-trip timing  Estimating mean round trip time (in RFC 793)  Retransmit timeout average RTT estimate filter gain constant (suggested value: 0.9) most recent RTT measurement RTT variation (suggested value: 2)

13 Estimating variation  Proposed method  Using mean deviation that is much easier to compute than standard deviation ( = measurement )

14 Timer improvement RFC 793 retransmit timerMean+Variance retransmit timer Timer

15 Congestion avoidance  Two parts in congestion avoidance  Signal that notifies endpoints when congestion is occurring Timeout event indicates that network is congested  Policy that decreases utilization when signal is received Multiplicative decrease of window size on congestion Additive increase on no congestion

16 Slow-start & congestion avoidance  Combined algorithm  Ssthresh is kept to switch between the two algorithms  When new data is acked,

17 Effect of congestion avoidance (1)  Multiple conversation test setup ► 1 Mbyte transfers ► One conversation per pair (4 conversations overall)

18 Effect of congestion avoidance (2) Without congestion avoidanceWith congestion avoidance  Each line represents each conversation

19 Effect of congestion avoidance (3)  Total bandwidth usage No congestion avoidance congestion avoidance

20 Effect of congestion avoidance (4)  Effective bandwidth No congestion avoidance congestion avoidance

21 Future Work: Gateway side of congestion control  Algorithms at endpoints cannot insure fair sharing  However, gateways have enough information to control sharing and fair allocation  Gateways signal endpoints as early as possible while not getting starved for traffic

22 Summary  Congestion collapses brought serious performance degradation to the original TCP  New algorithms were proposed to deal with the problem  Slow-start  Appropriate retransmit timer  Congestion avoidance  Etc.

23 Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks Spring 2009 CS540/TE630 Computer Network Architecture Spring 2009 CS540/TE630 Computer Network Architecture Computer Networks and ISDN Systems 1989 Dah-Ming CHIU and Raj JAIN

24 Outline  Motivation  Problem Definition  Model  Feasible linear controls  Optimizing the control schemes  Discussion

25 Motivation Throughput increase Response time Throughput stop increasing Response time increase Throughput decrease Response time increase Congestion control Congestion avoidance

26 Problem Definition network feedback (0/1) 0 : underflow 1 : overflow feedback (0/1) feedback (0/1) Increase or decrease load Different increase / decrease algorithms  performance(efficiency / fairness)???

27 Model (1) bottleneck around knee user i’s network load Binary feedback (0/1)

28 Model (2)

29 Model (3)  Linear control models  Multiplicativex(t+1) = b x(t)  Additivex(t+1) = a + x(t)  Example Additive increase, multiplicative decrease

30 Criteria  Efficiency  closeness of the total load on the resource to the knee point  Fairness  Equal share of bandwidth  Distributedness  Knowledge of the state of the system  Convergence  Responsiveness  Smoothness

31 Linear controls x 1 = x 2 x 1 + x 2 = X goal additive increase/decrease multiplicative increase/decrease

32 Examples of linear control Additive increase Multiplicative decrease Additive increase Additive decrease

33 Convergence to Efficiency  Negative feedback

34 Convergence to Fairness (1) C ≥ 0 : non-decrease of fairness C = 0 : same fairness stay Require C < 0 for either increase or decrease policy

35 Convergence to Fairness (2) Require C(= ) < 0 for either increase or decrease policy Fairness goes up during decrease, goes up or stay during increase Fairness goes up during increase, goes up or stay during decrease

36 Convergence to Efficiency and Fairness a I and b I not be both zero a I and a D not be both zero

37 Distributedness We don’t know

38 Conclusion about feasible linear control  Increasing policy  must have Additive component,  must have multiplicative component with no less one  Decreasing policy  must be multiplicative

39 Vectorial Representation (1) x 1 + x 2 = x h Assume overload network (in case of decreasing)

40 Vectorial Representation (2) Convergence to Efficiency b>1 b<1 a<0 a>0 a<0 b<1 Convergence to Fairness Higher fairness than x h

41 Vectorial Representation (3) Intersection of Efficiency and Fairness Decrease must be multiplicative

42 Vectorial Representation (4) Increase have - additive component - multiplicative component less than 1

43 Optimizing the convergence  Time to converge to efficiency  Responsiveness, t e  Oscillation size  Smoothness, s e

44 Optimal convergence to Efficiency From initial state X(0) to X goal Monotonically decreasing function of a and b Monotonically increasing function of a and b

45 Optimal convergence to Fairness  Improvement of Fairness  Increased with larger c (= )  larger a, smaller b Increasing process : additive Decreasing process : multiplicative From Decreasing process Fairness will stay Increasing process Smaller b  b I = 1

46 Practical consideration  Scaling parameters are not easily gathered  Human help  Resource allocation unit is integral  Buffers, windows…  Rounding off  violation of convergence condition  Ease of implementation  Multiplication, exponentiation

47 Future works  Affect of delayed feedback  Increased bits of feedback  If one can know current number of user n?  Impact of asynchronous operation


Download ppt "CS540/TE630 Computer Network Architecture Spring 2009 Tu/Th 10:30am-Noon Sue Moon."

Similar presentations


Ads by Google