Congestion Avoidance and Control Van Jacobson and Michael Karels Presented by Sui-Yu Wang

advertisement
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
R log
Source of the picture: fig2 in the paper
Conservation at equilibrium
round-trip timing
• TCP
– Estimating mean round trip time
R  R  (1   ) M
R  R  (1   ) M
– Next packet sent
R
• Exponential backoff
Source of the picture: fig4 in the paper
Source of the picture: fig3 in the paper
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
Li  N
– Congested network
Li  N  Li 1
• Sender policy
Wi  Wi 1  u
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
Download