Optimizing TCP Retransmission Timeout

Delay spikes on Internet paths can cause spurious TCP timeouts leading to significant throughput degradation. However, if TCP is too slow to detect that a retransmission is necessary, it can stay idle for a long time instead of transmitting. The goal is to find a Retransmission Timeout (RTO) value that balances the throughput degradation between both of these cases. In the current TCP implementations, RTO is a function of the Round Trip Time (RTT) alone. We show that the optimal RTO that maximizes the TCP throughput need to depend also on the TCP window size. Intuitively, the larger the TCP window size, the longer the optimal RTO. We derive the optimal RTO for several RTT distributions. An important advantage of our algorithm is that it can be easily implemented based on the existing TCP timeout mechanism.

[1]  Jon Postel,et al.  Transmission Control Protocol , 1981, RFC.

[2]  Lixia Zhang,et al.  Why TCP timers don't work well , 1986, SIGCOMM '86.

[3]  Improving round-trip time estimates in reliable transport protocols , 1987, SIGCOMM '87.

[4]  Jean-Chrysostome Bolot,et al.  Characterizing End-to-End Packet Delay and Loss in the Internet , 1993, J. High Speed Networks.

[5]  V. Jacobson Congestion avoidance and control , 1988, CCRV.

[6]  P. Karn,et al.  Improving round-trip time estimates in reliable transport protocols , 1987, CCRV.

[7]  Matthew Mathis,et al.  The stationary behavior of ideal TCP congestion avoidance , 1996 .

[8]  T. V. Lakshman,et al.  The performance of TCP/IP for networks with high bandwidth-delay products and random loss , 1997, TNET.

[9]  Matthew Mathis,et al.  The macroscopic behavior of the TCP congestion avoidance algorithm , 1997, CCRV.

[10]  Vern Paxson,et al.  End-to-end Internet packet dynamics , 1997, SIGCOMM '97.

[11]  Srinivasan Seshan,et al.  Analyzing stability in wide-area network performance , 1997, SIGMETRICS '97.

[12]  W. Richard Stevens,et al.  TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery Algorithms , 1997, RFC.

[13]  Anurag Kumar,et al.  Comparative performance analysis of versions of TCP in a local network with a lossy link , 1998, TNET.

[14]  A. Acharya,et al.  A Study of Internet Round-trip Delay , 1998 .

[15]  Donald F. Towsley,et al.  Modeling TCP throughput: a simple model and its empirical validation , 1998, SIGCOMM '98.

[16]  Sally Floyd,et al.  Promoting the use of end-to-end congestion control in the Internet , 1999, TNET.

[17]  A competitive analysis for retransmission timeout , 1999, Networks.

[18]  Vern Paxson,et al.  Computing TCP's Retransmission Timer , 2000, RFC.

[19]  Randy H. Katz,et al.  The Eifel algorithm: making TCP robust against spurious retransmissions , 2000, CCRV.

[20]  Masayuki Murata,et al.  Statistical Analysis of Packet Delays in the Internet and Its Application to Playout Control for Streaming Applications , 2001 .

[21]  Vern Paxson,et al.  On estimating end-to-end network path properties , 2001, SIGCOMM LA '01.

[22]  Pasi Sarolahti,et al.  Congestion Control in Linux TCP , 2002, USENIX Annual Technical Conference, FREENIX Track.

[23]  C. Bovy,et al.  Analysis of end-to-end delay measurements in the Internet , 2002 .

[24]  Reiner Ludwig,et al.  Responding to spurious timeouts in TCP , 2003, IEEE INFOCOM 2003. Twenty-second Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428).

[25]  Sally Floyd,et al.  HighSpeed TCP for Large Congestion Windows , 2003, RFC.

[26]  Reiner Ludwig,et al.  The peak-hopper: a new end-to-end retransmission timer for reliable unicast transport , 2004, IEEE INFOCOM 2004.