Additive increase/multiplicative decrease
The additive increase/multiplicative-decrease (AIMD) algorithm is a feedback control algorithm used in TCP Congestion Avoidance. AIMD combines linear growth of the congestion window with an exponential reduction when a congestion takes place.
The approach taken is to increase the transmission rate (window size), probing for usable bandwidth, until loss occurs. The policy of additive increase may, for instance, increase the congestion window by 1 MSS (Maximum segment size) every RTT (Round Trip Time) until a loss is detected.
When loss is detected, the policy is changed to be one of multiplicative decrease, which may, for instance, cut the congestion window in half after loss.
The result is a saw-tooth behavior that represents the probe for bandwidth.
A loss event is generally described to be either a timeout or the event of receiving 3 duplicate ACKs. Also related to TCP congestion control is the slow start mechanism.
Other policies or algorithms for fairness in congestion control are additive increase/decrease (AIAD), multiplicative increase/additive decrease (MIAD) and multiplicative increase/decrease (MIMD).
Mathematical Formula
Let w be the congestion window; for byte-oriented protocols (such as TCP) the window is relative to the sender's maximum segment size (MSS). Let a < 1 and b ≤ 1.
w ← a*w decrease when loss is detected
w ← w + b increase when the window has been fully ACK'ed, or
w ← w + w/b increase by a fraction of MSS when an ACK arrives
Idea behind the formula
In a series of schemes, different proposals have been made in order to prevent congestion based on different definitions for a and b, aiming for a balance between responsiveness to congestion and utilisation of available capacity. For instance, considering the SCTP protocol, researchers suggested to make a = 0.125 while b = 0.01[citation needed]. Other times, researchers want a and b to be functions of w, that is, a(w) and b(w).
See also
Further reading
- RFC 2581
- Comer, Douglas E. (2006). Internetworking with TCP/IP (5E ed.). Prentice Hall: Upper Saddle River, NJ.