Proportional Rate Reduction for TCP
RFC 6937
Document | Type | RFC - Experimental (May 2013; No errata) | |
---|---|---|---|
Authors | Matt Mathis , Nandita Dukkipati , Yuchung Cheng | ||
Last updated | 2015-10-14 | ||
Replaces | draft-mathis-tcpm-proportional-rate-reduction | ||
Stream | Internet Engineering Task Force (IETF) | ||
Formats | plain text html pdf htmlized (tools) htmlized bibtex | ||
Reviews | |||
Stream | WG state | WG Document | |
Document shepherd | No shepherd assigned | ||
IESG | IESG state | RFC 6937 (Experimental) | |
Action Holders |
(None)
|
||
Consensus Boilerplate | Unknown | ||
Telechat date | |||
Responsible AD | Martin Stiemerling | ||
IESG note | Document Shepherd is Pasi Sarolahti <pasi.sarolahti@iki.fi>. | ||
Send notices to | (None) | ||
IANA | IANA review state | IANA - Review Needed | |
IANA action state | No IANA Actions |
Internet Engineering Task Force (IETF) M. Mathis Request for Comments: 6937 N. Dukkipati Category: Experimental Y. Cheng ISSN: 2070-1721 Google, Inc. May 2013 Proportional Rate Reduction for TCP Abstract This document describes an experimental Proportional Rate Reduction (PRR) algorithm as an alternative to the widely deployed Fast Recovery and Rate-Halving algorithms. These algorithms determine the amount of data sent by TCP during loss recovery. PRR minimizes excess window adjustments, and the actual window size at the end of recovery will be as close as possible to the ssthresh, as determined by the congestion control algorithm. Status of This Memo This document is not an Internet Standards Track specification; it is published for examination, experimental implementation, and evaluation. This document defines an Experimental Protocol for the Internet community. This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Not all documents approved by the IESG are a candidate for any level of Internet Standard; see Section 2 of RFC 5741. Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc6937. Mathis, et al. Experimental [Page 1] RFC 6937 Proportional Rate Reduction May 2013 Copyright Notice Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction ....................................................2 2. Definitions .....................................................5 3. Algorithms ......................................................6 3.1. Examples ...................................................6 4. Properties ......................................................9 5. Measurements ...................................................11 6. Conclusion and Recommendations .................................12 7. Acknowledgements ...............................................13 8. Security Considerations ........................................13 9. References .....................................................13 9.1. Normative References ......................................13 9.2. Informative References ....................................14 Appendix A. Strong Packet Conservation Bound ......................15 1. Introduction This document describes an experimental algorithm, PRR, to improve the accuracy of the amount of data sent by TCP during loss recovery. Standard congestion control [RFC5681] requires that TCP (and other protocols) reduce their congestion window (cwnd) in response to losses. Fast Recovery, described in the same document, is the reference algorithm for making this adjustment. Its stated goal is to recover TCP's self clock by relying on returning ACKs during recovery to clock more data into the network. Fast Recovery typically adjusts the window by waiting for one half round-trip time (RTT) of ACKs to pass before sending any data. It is fragile because it cannot compensate for the implicit window reduction caused by the losses themselves. Mathis, et al. Experimental [Page 2] RFC 6937 Proportional Rate Reduction May 2013 RFC 6675 [RFC6675] makes Fast Recovery with Selective Acknowledgement (SACK) [RFC2018] more accurate by computing "pipe", a sender side estimate of the number of bytes still outstanding in the network. With RFC 6675, Fast Recovery is implemented by sending data as necessary on each ACK to prevent pipe from falling below slow-start threshold (ssthresh), the window size as determined by the congestion control algorithm. This protects Fast Recovery from timeouts in many cases where there are heavy losses, although not if the entire secondShow full document text