Lably
Skip to content

TCP congestion control

Techniques to improve network performance

  • 19 min read
  • 7 chapters

Related on Lably

Through Operating system, Internet and Control system

The TCP congestion-avoidance algorithm is the primary basis for congestion control in the Internet. Per the end-to-end principle, congestion control is largely a function of internet hosts, not the network itself. There are several variations and versions of the algorithm implemented in protocol stacks of operating systems of computers that connect to the Internet.

To avoid congestive collapse, TCP uses a multi-faceted congestion-control strategy. For each connection, TCP maintains a CWND, limiting the total number of unacknowledged packets that may be in transit end-to-end. This is somewhat analogous to TCP's sliding window used for flow control.

Additive increase/multiplicative decrease

The additive increase/multiplicative decrease (AIMD) algorithm is a closed-loop control algorithm. AIMD combines linear growth of the congestion window with an exponential reduction when congestion occurs. Multiple flows using AIMD congestion control will eventually converge to use equal amounts of a contended link.

This is the algorithm that is described in RFC 5681 for the congestion avoidance state.

Sign in to keep reading

6 more chapters are free with a Lably account.

More in Computing and communication