Congestion Avoidance and Control Review

From: Vladan D <vladandjeric_at_gmail.com>
Date: Tue, 26 Sep 2006 08:06:13 -0400

The "Congestion Avoidance and Control" paper was motivated by a dire
congestion problem on the Internet, circa 1988. The paper states that TCP's
misbehaviour could be corrected to work better under very congested network
conditions. The paper proposes and evaluates several new TCP algorithms
toward this end.

The "conservation of packets" principle (for a network in equilibrium) is
introduced and defined as not adding new packets into the network until old
packets have left. Packet conservation can fail because the connection
doesn't get to equilibrium, the sender injects a new packet before old
packets have exited, or the equilibrium can't be reached because of resource
limits along the path. The proposed solutions seek to avoid these
conditions.

The first algorithm, aimed at reaching equilibrium, is named "slow start"
and it adds a congestion window which is reset to 1 packet after a packet
loss and increased by one packet on an ack. In conditions of no loss, this
results in exponential growth of the congestion window. The send window is
always the minimum of the congestion window and the advertised receiver's
window.

The second algorithm adjusts round trip timing, which determines timeout
values, by taking variance into account. It also suggests using exponential
back-off for retransmit.

The final algorithm suggests a congestion avoidance strategy that takes
advantage of the fact that a timed-out packet can be interpreted as a
network congestion signal. Therefore, this algorithm halves the congestion
window for any timeout and effectively increases the congestion windows
linearly. The slow-start and congestion avoidance algorithm are both used
but slow-start is used at the beginning of a connection up to a certain
threshold.

The paper does a good job of illustrating the effects of all of its changes
with figures from its experiments and avoids getting bogged down in
implementation details by deferring them to an appendix. The adoption of
the proposed algorithms in TCP/IP stacks is a testament to their quality. I
have one nitpick about an assumption made by the authors that in 99% of
cases, dropped packets are the cause of timeouts and not link damage. This
assumption is not true with wireless networks in scenarios of poor signal
quality.
Received on Tue Sep 26 2006 - 08:06:27 EDT

This archive was generated by hypermail 2.2.0 : Tue Sep 26 2006 - 08:06:29 EDT