Skip to content
uencoder

Congestion Control

Congestion control is the family of TCP algorithms that prevents network overload by dynamically adjusting the sending rate through the congestion window, comprising slow start, congestion avoidance, fast retransmit, and fast recovery.

Purpose

It enables fair, stable use of shared bandwidth and prevents congestion collapse, forming the core of TCP reliability.

Mechanism

TCP maintains a congestion window cwnd, and sending is limited by min(cwnd, rwnd). Slow start grows cwnd exponentially up to ssthresh, then congestion avoidance grows it linearly. Packet loss triggers fast retransmit/fast recovery, or a timeout fallback.

Use cases

  • TCP transfer stability
  • Fair bandwidth sharing
  • High bandwidth utilization

Related tools

References