Download presentation
Presentation is loading. Please wait.
Published byAusten Gregory Modified over 9 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.