130 likes | 216 Views
Congestion Avoidance and Control. Van Jacobson and Michael Karels Presented by Sui-Yu Wang. Introduction. Congestion problem has become more severe as the computer network grows New algorithm forcing the “packet conservation” can be used to achieve network stability
E N D
Congestion Avoidance and Control Van Jacobson and Michael Karels Presented by Sui-Yu Wang
Introduction • Congestion problem has become more severe as the computer network grows • New algorithm forcing the “packet conservation” can be used to achieve network stability • i) round-trip-time variance estimation • ii) exponential retransmit timer backoff • iii) slow-start • iv) more aggressive receiver ack policy • v) dynamic window sizing on congestion
Three ways for packet conservation to fail • The connection doesn’t get to equilibrium • A sender injects a new packet before an old packet has exited • The equilibrium can’t be reached because of resource limits along the path
Getting to equilibrium: slow-start • Self-clocking • Gradually increase the data in transit Source of the picture: fig1 in the paper
Getting to equilibrium: slow-start • Add a congestion window to the per-connection state. • When starting or restarting after a loss, set congestion window to on packet • On each ack for new data, increase congestion window by one packet • When sending, send the minimum of the receiver’s advertised window and congestion window
Conservation at equilibrium round-trip timing • TCP • Estimating mean round trip time • Next packet sent • Exponential backoff
Adapting to the path: congestion avoidance • Reasons that cause time out • Packets damaged in transit • Packets lost due to insufficient buffer • Congestion avoidance • The network must be able to signal the transport endpoints that congestion is occurring • The endpoints must have a policy that decreases utilization
Adapting to the path: congestion avoidance • Signal of a congested network: drop of packets • Measuring network load: • Smooth network • Congested network • Sender policy
Adapting to the path: congestion avoidance • On any timeout, set congestion window to half the current window size • On each ack for new data, increase the congestion window by 1/cwnd • When wending, send the minimum of the receiver’s advertised window and cwnd