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 α / W {\displaystyle \alpha /W} for each acknowledgment, and decreases W {\displaystyle W} by β W {\displaystyle \beta W} for each loss event. Unlike the standard TCP, α {\displaystyle \alpha } and β {\displaystyle \beta } are not constants. Instead, they are functions of average queuing delay d a {\displaystyle d_{a}} : α = f 1 ( d a ) , β = f 2 ( d a ) {\displaystyle \alpha =f_{1}(d_{a}),\beta =f_{2}(d_{a})} , where f 1 ( ⋅ ) {\displaystyle f_{1}(\cdot )} is decreasing and f 2 ( ⋅ ) {\displaystyle f_{2}(\cdot )} is increasing. There are numerous choices of f 1 ( ⋅ ) {\displaystyle f_{1}(\cdot )} and f 2 ( ⋅ ) {\displaystyle f_{2}(\cdot )} . One such class is:
α = f 1 ( d a ) = { α m a x if d a ≤ d 1 κ 1 κ 2 + d a otherwise. {\displaystyle \alpha =f_{1}(d_{a})=\left\{{\begin{array}{ll}\alpha _{max}&{\mbox{if }}d_{a}\leq d_{1}\\{\frac {\kappa _{1}}{\kappa _{2}+d_{a}}}&{\mbox{otherwise.}}\end{array}}\right.}
… excerpt ends here. Continue reading the full article.


