Personal Miscellaneous TCP/IP GRID Quality of ServiceMulti-Cast  
Background high-speed tcp Transfer Tests Web 100TCP Tuning  

Congestion Avoidance

Congestion avoidance is a mechanism by which TCP can maintain a stable, yet fair share of the network. The first and most basic variant of TCP was by Van Jacobson when he estaiblied the fundermental algorithms for congestion control and avoidance. One of the primarly ideas behind Jacobsons design was that a connection operating at a stable state using a full window of in transit packets would be in equilibrium and hence should obey a 'packet conservation rule'; that is a new packet shouldn't be placed into the network until an old packet exits the network.

This idea was implemented via an acknowledgement (ack) mechanism that explicitly tells the sender that the recipient (ie the sink) has recieved the packet. Therefore a connection at equilibrium will send new packets with the rate in which it recieves acks. Under idea circumstancesm this rate should reflect the rate packets are served by the slowest link of the entire path, also known as the 'bottleneck link'.

When a sender is operating at equilibrium, it should be able to adapt to changes in the condition of the path. More importantly, it more connections (say from other users) starts to use part of the path TCP should 'backoff' and be fair to other internet users. Similarly, should a connection terminate then the sender should attempt to utilise the extra bandwidth. This is exactly what congestion avoidance is.

How the sender accomplishes the action of making use of free resources is through the use of the cwnd. Upon reciept of an acknowledgement, the sender increases the cwnd by 1/cwnd. Therefore, after about cwnd acks, the sender will be able to send one more packet due to the cwnd increase. This mechanism allows TCP to 'probe' the network to see if it has more resources; if it does, then it will make use of the extra bandwidth; if not,




Wed, 23 July, 2003 13:07 Previous PageNext Page
    email me!
2001-2003, Yee-Ting Li, email:, Tel: +44 (0) 20 7679 1376, Fax: +44 (0) 20 7679 7145
Room D14, High Energy Particle Physics, Dept. of Physics & Astronomy, UCL, Gower St, London, WC1E 6BT