On making TCP more robust to packet reordering

Ethan Blanton, Mark Allman
2002 Computer communication review  
Previous research indicates that packet reordering is not a rare event on some Internet paths. Reordering can cause performance problems for TCP's fast retransmission algorithm, which uses the arrival of duplicate acknowledgments to detect segment loss. Duplicate acknowledgments can be caused by the loss of a segment or by the reordering of segments by the network. In this paper we illustrate the impact of reordering on TCP performance. In addition, we show the performance of a conservative
more » ... oach to "undo" the congestion control state changes made in conjunction with spurious retransmissions. Finally, we propose several alternatives to dynamically make the fast retransmission algorithm more tolerant of the reordering observed in the network and assess these algorithms. mit algorithm calls for the TCP sender to wait until three duplicate ACKs have arrived before retransmitting a segment. Reordering has a negative effect on TCP performance for several reasons: © A network that reorders data segments such that 3 or more duplicate ACKs are triggered at the receiver will cause the TCP sender to use fast retransmit to resend a data segment that was not lost, hence wasting bandwidth. © TCP assumes that loss is an indication of network congestion [Jac88], and so a sender perceiving reordering as loss will also incorrectly reduce the data transmission rate when sending a spurious retransmission. In this paper we address this problem by examining a number of algorithms that vary the number of duplicate ACKs required to trigger the fast retransmit algorithm (and hence adjust the congestion control state) based on the observed reordering. © Segment reordering causes interruptions to TCP's ACK clock [Jac88], thereby causing its transmission to be more bursty. TCP's standard congestion control algorithms [APS99] do not allow TCP to send segments in response to duplicate ACKs before fast © The scoreboard data structure required numerous changes to cope with DSACK information.
doi:10.1145/510726.510728 fatcat:n2iwnzesg5fhlgrne5uta34o5u