Proportional Rate Reduction for TCP
Venue
Proceedings of the 11th ACM SIGCOMM Conference on Internet Measurement 2011, Berlin, Germany - November 2-4, 2011
Publication Year
2011
Authors
Nandita Dukkipati, Matt Mathis, Yuchung Cheng, Monia Ghobadi
BibTeX
Abstract
Packet losses increase latency for Web users. Fast recovery is a key mechanism for
TCP to recover from packet losses. In this paper, we explore some of the weaknesses
of the standard algorithm described in RFC 3517 and the non-standard algorithms
implemented in Linux. We find that these algorithms deviate from their intended
behavior in the real world due to the combined effect of short flows, application
stalls, burst losses, acknowledgment (ACK) loss and reordering, and stretch ACKs.
Linux suffers from excessive congestion window reductions while RFC 3517 transmits
large bursts under high losses, both of which harm the rest of the flow and increase
Web latency. Our primary contribution is a new design to control transmission in
fast recovery called proportional rate reduction (PRR). PRR recovers from losses
quickly, smoothly and accurately by pacing out retransmissions across received
ACKs. In addition to PRR, we evaluate the TCP early retransmit (ER) algorithm which
lowers the duplicate acknowledgment threshold for short transfers, and show that
delaying early retransmissions for a short interval is effective in avoiding
spurious retransmissions in the presence of a small degree of reordering. PRR and
ER reduce the TCP latency of connections experiencing losses by 3-10% depending on
the response size. Based on our instrumentation on Google Web and YouTube servers
in U.S. and India, we also present key statistics on the nature of TCP
retransmissions.