rfc7560v4.txt | rfc7560.txt | |||
---|---|---|---|---|
Internet Engineering Task Force (IETF) M. Kuehlewind, Ed. | Internet Engineering Task Force (IETF) M. Kuehlewind, Ed. | |||
Request for Comments: 7560 ETH Zurich | Request for Comments: 7560 ETH Zurich | |||
Category: Informational R. Scheffenegger | Category: Informational R. Scheffenegger | |||
ISSN: 2070-1721 NetApp, Inc. | ISSN: 2070-1721 NetApp, Inc. | |||
B. Briscoe | B. Briscoe | |||
BT | BT | |||
July 2015 | August 2015 | |||
Problem Statement and Requirements for Increased Accuracy | Problem Statement and Requirements for Increased Accuracy | |||
in Explicit Congestion Notification (ECN) Feedback | in Explicit Congestion Notification (ECN) Feedback | |||
Abstract | Abstract | |||
Explicit Congestion Notification (ECN) is a mechanism where network | Explicit Congestion Notification (ECN) is a mechanism where network | |||
nodes can mark IP packets, instead of dropping them, to indicate | nodes can mark IP packets, instead of dropping them, to indicate | |||
congestion to the endpoints. An ECN-capable receiver will feed this | congestion to the endpoints. An ECN-capable receiver will feed this | |||
information back to the sender. ECN is specified for TCP in such a | information back to the sender. ECN is specified for TCP in such a | |||
skipping to change at page 2, line 17 | skipping to change at page 2, line 22 | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
described in the Simplified BSD License. | described in the Simplified BSD License. | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 4 | 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
2. Recap of Classic ECN and ECN Nonce in IP/TCP . . . . . . . . 4 | 2. Recap of Classic ECN and ECN Nonce in IP/TCP . . . . . . . . 5 | |||
3. Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 3. Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
4. Requirements . . . . . . . . . . . . . . . . . . . . . . . . 7 | 4. Requirements . . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
5. Design Approaches . . . . . . . . . . . . . . . . . . . . . . 10 | 5. Design Approaches . . . . . . . . . . . . . . . . . . . . . . 11 | |||
5.1. Redefinition of ECN/NS Header Bits . . . . . . . . . . . 11 | 5.1. Redefinition of ECN/NS Header Bits . . . . . . . . . . . 11 | |||
5.2. Using Other Header Bits . . . . . . . . . . . . . . . . . 12 | 5.2. Using Other Header Bits . . . . . . . . . . . . . . . . . 13 | |||
5.3. Using a TCP Option . . . . . . . . . . . . . . . . . . . 12 | 5.3. Using a TCP Option . . . . . . . . . . . . . . . . . . . 13 | |||
6. Security Considerations . . . . . . . . . . . . . . . . . . . 13 | 6. Security Considerations . . . . . . . . . . . . . . . . . . . 14 | |||
7. References . . . . . . . . . . . . . . . . . . . . . . . . . 13 | 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 14 | |||
7.1. Normative References . . . . . . . . . . . . . . . . . . 13 | 7.1. Normative References . . . . . . . . . . . . . . . . . . 14 | |||
7.2. Informative References . . . . . . . . . . . . . . . . . 14 | 7.2. Informative References . . . . . . . . . . . . . . . . . 14 | |||
Appendix A. Ambiguity of the More Accurate ECN Feedback in DCTCP 15 | Appendix A. Ambiguity of the More Accurate ECN Feedback in DCTCP 16 | |||
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 16 | Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 17 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 16 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17 | |||
1. Introduction | 1. Introduction | |||
Explicit Congestion Notification (ECN) [RFC3168] is a mechanism where | Explicit Congestion Notification (ECN) [RFC3168] is a mechanism where | |||
network nodes can mark IP packets instead of dropping them to | network nodes can mark IP packets instead of dropping them to | |||
indicate congestion to the endpoints. An ECN-capable receiver will | indicate congestion to the endpoints. An ECN-capable receiver will | |||
feed this information back to the sender. ECN is specified for TCP | feed this information back to the sender. ECN is specified for TCP | |||
in such a way that only one feedback signal can be transmitted per | in such a way that only one feedback signal can be transmitted per | |||
Round-Trip Time (RTT). This is sufficient for preexisting TCP | Round-Trip Time (RTT). This is sufficient for preexisting TCP | |||
congestion control mechanisms that perform only one reduction in | congestion control mechanisms that perform only one reduction in | |||
skipping to change at page 13, line 39 | skipping to change at page 14, line 33 | |||
connections consuming excess sender or network resources. This | connections consuming excess sender or network resources. This | |||
problem is similar to that seen with the classic ECN feedback scheme | problem is similar to that seen with the classic ECN feedback scheme | |||
and should be addressed by integrity checking as required in | and should be addressed by integrity checking as required in | |||
Section 4. | Section 4. | |||
7. References | 7. References | |||
7.1. Normative References | 7.1. Normative References | |||
[RFC3168] Ramakrishnan, K., Floyd, S., and D. Black, "The Addition | [RFC3168] Ramakrishnan, K., Floyd, S., and D. Black, "The Addition | |||
of Explicit Congestion Notification (ECN) to IP", RFC | of Explicit Congestion Notification (ECN) to IP", | |||
3168, DOI 10.17487/RFC3168, September 2001, | RFC 3168, DOI 10.17487/RFC3168, September 2001, | |||
<http://www.rfc-editor.org/info/rfc3168>. | <http://www.rfc-editor.org/info/rfc3168>. | |||
[RFC3540] Spring, N., Wetherall, D., and D. Ely, "Robust Explicit | [RFC3540] Spring, N., Wetherall, D., and D. Ely, "Robust Explicit | |||
Congestion Notification (ECN) Signaling with Nonces", RFC | Congestion Notification (ECN) Signaling with Nonces", | |||
3540, DOI 10.17487/RFC3540, June 2003, | RFC 3540, DOI 10.17487/RFC3540, June 2003, | |||
<http://www.rfc-editor.org/info/rfc3540>. | <http://www.rfc-editor.org/info/rfc3540>. | |||
7.2. Informative References | 7.2. Informative References | |||
[DCTCP] Bensley, S., Eggert, L., and D. Thaler, "Microsoft's | [DCTCP] Bensley, S., Eggert, L., and D. Thaler, "Microsoft's | |||
Datacenter TCP (DCTCP): TCP Congestion Control for | Datacenter TCP (DCTCP): TCP Congestion Control for | |||
Datacenters", Work in Progress, draft-bensley-tcpm-dctcp- | Datacenters", Work in Progress, | |||
03, April 2015. | draft-bensley-tcpm-dctcp-05, July 2015. | |||
[ECN-BENEFITS] | [ECN-BENEFITS] | |||
Fairhurst, G. and M. Welzl, "The Benefits of using | Fairhurst, G. and M. Welzl, "The Benefits of using | |||
Explicit Congestion Notification (ECN)", Work in Progress | Explicit Congestion Notification (ECN)", Work in Progress | |||
draft-ietf-aqm-ecn-benefits-04, May 2015. | draft-ietf-aqm-ecn-benefits-06, July 2015. | |||
[RFC0896] Nagle, J., "Congestion Control in IP/TCP Internetworks", | [RFC0896] Nagle, J., "Congestion Control in IP/TCP Internetworks", | |||
RFC 896, DOI 10.17487/RFC0896, January 1984, | RFC 896, DOI 10.17487/RFC0896, January 1984, | |||
<http://www.rfc-editor.org/info/rfc896>. | <http://www.rfc-editor.org/info/rfc896>. | |||
[RFC2018] Mathis, M., Mahdavi, J., Floyd, S., and A. Romanow, "TCP | [RFC2018] Mathis, M., Mahdavi, J., Floyd, S., and A. Romanow, "TCP | |||
Selective Acknowledgment Options", RFC 2018, DOI 10.17487/ | Selective Acknowledgment Options", RFC 2018, | |||
RFC2018, October 1996, | DOI 10.17487/RFC2018, October 1996, | |||
<http://www.rfc-editor.org/info/rfc2018>. | <http://www.rfc-editor.org/info/rfc2018>. | |||
[RFC3449] Balakrishnan, H., Padmanabhan, V., Fairhurst, G., and M. | [RFC3449] Balakrishnan, H., Padmanabhan, V., Fairhurst, G., and M. | |||
Sooriyabandara, "TCP Performance Implications of Network | Sooriyabandara, "TCP Performance Implications of Network | |||
Path Asymmetry", BCP 69, RFC 3449, DOI 10.17487/RFC3449, | Path Asymmetry", BCP 69, RFC 3449, DOI 10.17487/RFC3449, | |||
December 2002, <http://www.rfc-editor.org/info/rfc3449>. | December 2002, <http://www.rfc-editor.org/info/rfc3449>. | |||
[RFC5681] Allman, M., Paxson, V., and E. Blanton, "TCP Congestion | [RFC5681] Allman, M., Paxson, V., and E. Blanton, "TCP Congestion | |||
Control", RFC 5681, DOI 10.17487/RFC5681, September 2009, | Control", RFC 5681, DOI 10.17487/RFC5681, September 2009, | |||
<http://www.rfc-editor.org/info/rfc5681>. | <http://www.rfc-editor.org/info/rfc5681>. | |||
[RFC5690] Floyd, S., Arcia, A., Ros, D., and J. Iyengar, "Adding | [RFC5690] Floyd, S., Arcia, A., Ros, D., and J. Iyengar, "Adding | |||
Acknowledgement Congestion Control to TCP", RFC 5690, DOI | Acknowledgement Congestion Control to TCP", RFC 5690, | |||
10.17487/RFC5690, February 2010, | DOI 10.17487/RFC5690, February 2010, | |||
<http://www.rfc-editor.org/info/rfc5690>. | <http://www.rfc-editor.org/info/rfc5690>. | |||
[RFC6093] Gont, F. and A. Yourtchenko, "On the Implementation of the | [RFC6093] Gont, F. and A. Yourtchenko, "On the Implementation of the | |||
TCP Urgent Mechanism", RFC 6093, DOI 10.17487/RFC6093, | TCP Urgent Mechanism", RFC 6093, DOI 10.17487/RFC6093, | |||
January 2011, <http://www.rfc-editor.org/info/rfc6093>. | January 2011, <http://www.rfc-editor.org/info/rfc6093>. | |||
[RFC6679] Westerlund, M., Johansson, I., Perkins, C., O'Hanlon, P., | [RFC6679] Westerlund, M., Johansson, I., Perkins, C., O'Hanlon, P., | |||
and K. Carlberg, "Explicit Congestion Notification (ECN) | and K. Carlberg, "Explicit Congestion Notification (ECN) | |||
for RTP over UDP", RFC 6679, DOI 10.17487/RFC6679, August | for RTP over UDP", RFC 6679, DOI 10.17487/RFC6679, August | |||
2012, <http://www.rfc-editor.org/info/rfc6679>. | 2012, <http://www.rfc-editor.org/info/rfc6679>. | |||
[RFC6789] Briscoe, B., Ed., Woundy, R., Ed., and A. Cooper, Ed., | [RFC6789] Briscoe, B., Ed., Woundy, R., Ed., and A. Cooper, Ed., | |||
"Congestion Exposure (ConEx) Concepts and Use Cases", RFC | "Congestion Exposure (ConEx) Concepts and Use Cases", | |||
6789, DOI 10.17487/RFC6789, December 2012, | RFC 6789, DOI 10.17487/RFC6789, December 2012, | |||
<http://www.rfc-editor.org/info/rfc6789>. | <http://www.rfc-editor.org/info/rfc6789>. | |||
[SCTP-ECN] | [SCTP-ECN] | |||
Stewart, R., Tuexen, M., and X. Dong, "ECN for Stream | Stewart, R., Tuexen, M., and X. Dong, "ECN for Stream | |||
Control Transmission Protocol (SCTP)", Work in Progress, | Control Transmission Protocol (SCTP)", Work in Progress, | |||
draft-stewart-tsvwg-sctpecn-05, January 2014. | draft-stewart-tsvwg-sctpecn-05, January 2014. | |||
[TEST-RCV] | [TEST-RCV] | |||
Moncaster, T., Briscoe, B., and A. Jacquet, "A TCP Test to | Moncaster, T., Briscoe, B., and A. Jacquet, "A TCP Test to | |||
Allow Senders to Identify Receiver Non-Compliance", Work | Allow Senders to Identify Receiver Non-Compliance", Work | |||
End of changes. 12 change blocks. | ||||
27 lines changed or deleted | 27 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |