TCP-Illinois is a variant of TCP congestion control protocol, developed at the University of Illinois at Urbana-Champaign. It is especially targeted at high-speed, long-distance networks. A sender side modification to the standard TCP congestion control algorithm, it achieves a higher average throughput than the standard TCP, allocates the network resource fairly as the standard TCP, is compatible with the standard TCP, and provides incentives for TCP users to switch.
Principles of operation
TCP-Illinois is a loss-delay based algorithm, which uses packet loss as the primary congestion signal to determine the direction of window size change, and uses queuing delay as the secondary congestion signal to adjust the pace of window size change. Similarly to the standard TCP, TCP-Illinois increases the window size W by for each acknowledgment, and decreases by for each loss event. Unlike the standard TCP, and are not constants. Instead, they are functions of average queuing delay : , where is decreasing and is increasing.
There are numerous choices of and . One such class is:
We let and be continuous functions and thus , and . Suppose is the maximum average queuing delay and we denote , then we also have . From these conditions, we have
This specific choice is demonstrated in Figure 1.
Properties and Performance
TCP-Illinois increases the throughput much more quickly than TCP when congestion is far and increases the throughput very slowly when congestion is imminent. As a result, the window curve is concave and the average throughput achieved is much larger than the standard TCP, see Figure 2.
It also has many other desirable features, like fairness, compatibility with the standard TCP, providing incentive for TCP users to switch, robust against inaccurate delay measurement.
- Liu, S.; Başar, T.; Srikant, R. (2006). "Proceedings of the 1st international conference on Performance evaluation methodolgies and tools - valuetools '06". p. 55. doi:10.1145/1190095.1190166. ISBN 1595935045.