< draft-mathis-conex-abstract-mech-00.txt | draft-ietf-conex-abstract-mech-00.txt > | |||
---|---|---|---|---|
Congestion Exposure (ConEx) M. Mathis | Congestion Exposure (ConEx) Working M. Mathis | |||
Working Group Google | Group Google, Inc | |||
Internet-Draft B. Briscoe | Internet-Draft B. Briscoe | |||
Intended status: Informational BT | Intended status: Informational BT | |||
Expires: April 22, 2011 October 19, 2010 | Expires: September 8, 2011 March 7, 2011 | |||
Congestion Exposure (ConEx) Concepts and Abstract Mechanism | Congestion Exposure (ConEx) Concepts and Abstract Mechanism | |||
draft-mathis-conex-abstract-mech-00 | draft-ietf-conex-abstract-mech-00 | |||
Abstract | Abstract | |||
This document describes an abstract mechanism by which senders inform | This document describes an abstract mechanism by which senders inform | |||
the network about the congestion encountered by packets earlier in | the network about the congestion encountered by packets earlier in | |||
the same flow. Today, the network may signal congestion to the | the same flow. Today, the network may signal congestion to the | |||
receiver by ECN markings or by dropping packets, and the receiver may | receiver by ECN markings or by dropping packets, and the receiver may | |||
pass this information back to the sender in transport-layer feedback. | pass this information back to the sender in transport-layer feedback. | |||
The mechanism to be developed by the ConEx WG will enable the sender | The mechanism to be developed by the ConEx WG will enable the sender | |||
to also relay this congestion information back into the network in- | to also relay this congestion information back into the network in- | |||
skipping to change at page 1, line 40 | skipping to change at page 1, line 40 | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on April 22, 2011. | This Internet-Draft will expire on September 8, 2011. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2010 IETF Trust and the persons identified as the | Copyright (c) 2011 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(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 . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 4 | 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
2. Requirements for the ConEx Signal . . . . . . . . . . . . . . 5 | 2. Requirements for the ConEx Signal . . . . . . . . . . . . . . 4 | |||
3. Representing Congestion Exposure . . . . . . . . . . . . . . . 7 | 3. Representing Congestion Exposure . . . . . . . . . . . . . . . 6 | |||
3.1. Strawman Encoding . . . . . . . . . . . . . . . . . . . . 7 | 3.1. Strawman Encoding . . . . . . . . . . . . . . . . . . . . 7 | |||
3.2. ECN Based Encoding . . . . . . . . . . . . . . . . . . . . 8 | 3.2. ECN Based Encoding . . . . . . . . . . . . . . . . . . . . 7 | |||
3.2.1. ECN Changes . . . . . . . . . . . . . . . . . . . . . 8 | 3.2.1. ECN Changes . . . . . . . . . . . . . . . . . . . . . 8 | |||
3.3. Abstract Encoding . . . . . . . . . . . . . . . . . . . . 9 | 3.3. Abstract Encoding . . . . . . . . . . . . . . . . . . . . 8 | |||
3.3.1. Independent Bits . . . . . . . . . . . . . . . . . . . 9 | 3.3.1. Independent Bits . . . . . . . . . . . . . . . . . . . 9 | |||
3.3.2. Codepoint Encoding . . . . . . . . . . . . . . . . . . 9 | 3.3.2. Codepoint Encoding . . . . . . . . . . . . . . . . . . 9 | |||
4. Congestion Exposure Components . . . . . . . . . . . . . . . . 10 | 4. Congestion Exposure Components . . . . . . . . . . . . . . . . 9 | |||
4.1. Modified Senders . . . . . . . . . . . . . . . . . . . . . 10 | 4.1. Modified Senders . . . . . . . . . . . . . . . . . . . . . 9 | |||
4.2. Receivers (Optionally Modified) . . . . . . . . . . . . . 10 | 4.2. Receivers (Optionally Modified) . . . . . . . . . . . . . 10 | |||
4.3. Audit . . . . . . . . . . . . . . . . . . . . . . . . . . 10 | 4.3. Audit . . . . . . . . . . . . . . . . . . . . . . . . . . 10 | |||
4.4. Policy Devices . . . . . . . . . . . . . . . . . . . . . . 11 | 4.4. Policy Devices . . . . . . . . . . . . . . . . . . . . . . 11 | |||
4.4.1. Congestion Policers . . . . . . . . . . . . . . . . . 12 | 4.4.1. Congestion Policers . . . . . . . . . . . . . . . . . 11 | |||
4.4.2. Other Policy Devices . . . . . . . . . . . . . . . . . 12 | 4.4.2. Other Policy Devices . . . . . . . . . . . . . . . . . 11 | |||
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 | 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 | |||
6. Security Considerations . . . . . . . . . . . . . . . . . . . 12 | 6. Security Considerations . . . . . . . . . . . . . . . . . . . 12 | |||
7. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . 13 | 7. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . 12 | |||
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 13 | 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 12 | |||
9. Comments Solicited . . . . . . . . . . . . . . . . . . . . . . 13 | 9. Comments Solicited . . . . . . . . . . . . . . . . . . . . . . 12 | |||
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 13 | 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 12 | |||
10.1. Normative References . . . . . . . . . . . . . . . . . . . 13 | 10.1. Normative References . . . . . . . . . . . . . . . . . . . 12 | |||
10.2. Informative References . . . . . . . . . . . . . . . . . . 13 | 10.2. Informative References . . . . . . . . . . . . . . . . . . 12 | |||
1. Introduction | 1. Introduction | |||
One of the required functions of a transport protocol is controlling | One of the required functions of a transport protocol is controlling | |||
congestion in the network. There are three techniques in use today | congestion in the network. There are three techniques in use today | |||
for the network to signal congestion to a transport: | for the network to signal congestion to a transport: | |||
o The most common congestion signal is packet loss. When congested, | o The most common congestion signal is packet loss. When congested, | |||
the network simply discards some packets either as part of an | the network simply discards some packets either as part of an | |||
explicit control function [RFC2309] or as the consequence of a | explicit control function [RFC2309] or as the consequence of a | |||
queue overflow or other resource starvation. The transport | queue overflow or other resource starvation. The transport | |||
receiver detects that some data is missing and signals such | receiver detects that some data is missing and signals such | |||
through transport acknowledgments to the transport sender (e.g. | through transport acknowledgments to the transport sender (e.g. | |||
TCP SACK options). The sender performs the appropriate congestion | TCP SACK options). The sender performs the appropriate congestion | |||
control rate reduction (e.g. [RFC5681] for TCP) and, if it is a | control rate reduction (e.g. [RFC5681] for TCP) and, if it is a | |||
reliable transport, it retransmits the missing data. | reliable transport, it retransmits the missing data. | |||
o If the transport supports explicit congestion notification (ECN) | o If the transport supports explicit congestion notification (ECN) | |||
[RFC3168] or pre-congestion notification (PCN) [RFC5670] , the | [RFC3168] or pre-congestion notification (PCN) [RFC5670] , the | |||
transport sender indicates this by setting an ECN-capable | transport sender indicates this by setting an ECN-capable | |||
transport (ECT) codepoint in every packet. Network devices can | transport (ECT) codepoint in every packet. Network devices can | |||
then explicitly signal congestion to the receiver by setting ECN | then explicitly signal congestion to the receiver by setting ECN | |||
bits in the IP header of such packets. The transport receiver | bits in the IP header of such packets. The transport receiver | |||
communicates these ECN signals back to the sender, which then | communicates these ECN signals back to the sender, which then | |||
performs the appropriate congestion control rate reduction. | performs the appropriate congestion control rate reduction. | |||
o Some experimental transport protocols and TCP variants [Vegas] | o Some experimental transport protocols and TCP variants [Vegas] | |||
sense queuing delays in the network and reduce their rate before | sense queuing delays in the network and reduce their rate before | |||
the network has to signal congestion using loss or ECN. A purely | the network has to signal congestion using loss or ECN. A purely | |||
delay-sensing transport will tend to be pushed out by other | delay-sensing transport will tend to be pushed out by other | |||
competing transports that do not back off until they have driven | competing transports that do not back off until they have driven | |||
the queue into loss. Therefore, modern delay-sensing algorithms | the queue into loss. Therefore, modern delay-sensing algorithms | |||
use delay in some combination with loss to signal congestion (e.g. | use delay in some combination with loss to signal congestion (e.g. | |||
LEDBAT [I-D.ietf-ledbat-congestion], Compound | LEDBAT [I-D.ietf-ledbat-congestion], Compound | |||
[I-D.sridharan-tcpm-ctcp]). In the rest of this document, we will | [I-D.sridharan-tcpm-ctcp]). In the rest of this document, we will | |||
confine the discussion to concrete signals of congestion such as | confine the discussion to concrete signals of congestion such as | |||
skipping to change at page 14, line 9 | skipping to change at page 13, line 24 | |||
ECN: A Framework for adding | ECN: A Framework for adding | |||
Congestion Accountability to | Congestion Accountability to | |||
TCP/IP", draft-briscoe-tsvwg-re- | TCP/IP", draft-briscoe-tsvwg-re- | |||
ecn-tcp-motivation-01 (work in | ecn-tcp-motivation-01 (work in | |||
progress), September 2009. | progress), September 2009. | |||
[I-D.briscoe-tsvwg-re-ecn-tcp] Briscoe, B., Jacquet, A., | [I-D.briscoe-tsvwg-re-ecn-tcp] Briscoe, B., Jacquet, A., | |||
Moncaster, T., and A. Smith, "Re- | Moncaster, T., and A. Smith, "Re- | |||
ECN: Adding Accountability for | ECN: Adding Accountability for | |||
Causing Congestion to TCP/IP", | Causing Congestion to TCP/IP", | |||
draft-briscoe-tsvwg-re-ecn-tcp-08 | draft-briscoe-tsvwg-re-ecn-tcp-09 | |||
(work in progress), September 2009. | (work in progress), October 2010. | |||
[I-D.conex-concepts-uses] Briscoe, B., Woundy, R., Moncaster, | [I-D.conex-concepts-uses] Briscoe, B., Woundy, R., Moncaster, | |||
T., and J. Leslie, "ConEx Concepts | T., and J. Leslie, "ConEx Concepts | |||
and Use Cases", draft-moncaster- | and Use Cases", draft-moncaster- | |||
conex-concepts-uses-01 (work in | conex-concepts-uses-01 (work in | |||
progress), July 2010. | progress), July 2010. | |||
[I-D.ietf-ledbat-congestion] Shalunov, S. and G. Hazel, "Low | [I-D.ietf-ledbat-congestion] Shalunov, S., Hazel, G., and J. | |||
Extra Delay Background Transport | Iyengar, "Low Extra Delay | |||
(LEDBAT)", | Background Transport (LEDBAT)", | |||
draft-ietf-ledbat-congestion-02 | draft-ietf-ledbat-congestion-03 | |||
(work in progress), July 2010. | (work in progress), October 2010. | |||
[I-D.sridharan-tcpm-ctcp] Sridharan, M., Tan, K., Bansal, D., | [I-D.sridharan-tcpm-ctcp] Sridharan, M., Tan, K., Bansal, D., | |||
and D. Thaler, "Compound TCP: A New | and D. Thaler, "Compound TCP: A New | |||
TCP Congestion Control for High- | TCP Congestion Control for High- | |||
Speed and Long Distance Networks", | Speed and Long Distance Networks", | |||
draft-sridharan-tcpm-ctcp-02 (work | draft-sridharan-tcpm-ctcp-02 (work | |||
in progress), November 2008. | in progress), November 2008. | |||
[RFC0791] Postel, J., "Internet Protocol", | [RFC0791] Postel, J., "Internet Protocol", | |||
STD 5, RFC 791, September 1981. | STD 5, RFC 791, September 1981. | |||
skipping to change at page 14, line 51 | skipping to change at page 14, line 17 | |||
Management and Congestion Avoidance | Management and Congestion Avoidance | |||
in the Internet", RFC 2309, | in the Internet", RFC 2309, | |||
April 1998. | April 1998. | |||
[RFC3168] Ramakrishnan, K., Floyd, S., and D. | [RFC3168] Ramakrishnan, K., Floyd, S., and D. | |||
Black, "The Addition of Explicit | Black, "The Addition of Explicit | |||
Congestion Notification (ECN) to | Congestion Notification (ECN) to | |||
IP", RFC 3168, September 2001. | IP", RFC 3168, September 2001. | |||
[RFC3514] Bellovin, S., "The Security Flag in | [RFC3514] Bellovin, S., "The Security Flag in | |||
the IPv4 Header", RFC 3514, | the IPv4 Header", RFC 3514, April 1 | |||
April 2003. | 2003. | |||
[RFC3540] Spring, N., Wetherall, D., and D. | [RFC3540] Spring, N., Wetherall, D., and D. | |||
Ely, "Robust Explicit Congestion | Ely, "Robust Explicit Congestion | |||
Notification (ECN) Signaling with | Notification (ECN) Signaling with | |||
Nonces", RFC 3540, June 2003. | Nonces", RFC 3540, June 2003. | |||
[RFC3550] Schulzrinne, H., Casner, S., | [RFC3550] Schulzrinne, H., Casner, S., | |||
Frederick, R., and V. Jacobson, | Frederick, R., and V. Jacobson, | |||
"RTP: A Transport Protocol for | "RTP: A Transport Protocol for | |||
Real-Time Applications", STD 64, | Real-Time Applications", STD 64, | |||
skipping to change at page 16, line 8 | skipping to change at page 15, line 21 | |||
Avoidance on a Global Internet", | Avoidance on a Global Internet", | |||
IEEE Journal on Selected Areas in | IEEE Journal on Selected Areas in | |||
Communications 13(8)1465--80, | Communications 13(8)1465--80, | |||
October 1995, <http:// | October 1995, <http:// | |||
ieeexplore.ieee.org/iel1/49/9740/ | ieeexplore.ieee.org/iel1/49/9740/ | |||
00464716.pdf?arnumber=464716>. | 00464716.pdf?arnumber=464716>. | |||
Authors' Addresses | Authors' Addresses | |||
Matt Mathis | Matt Mathis | |||
Google, Inc | ||||
1600 Amphitheater Parkway | ||||
Mountain View, California 93117 | ||||
USA | ||||
Phone: | ||||
Fax: | ||||
EMail: mattmathis at google.com | EMail: mattmathis at google.com | |||
URI: | ||||
Bob Briscoe | Bob Briscoe | |||
BT | BT | |||
B54/77, Adastral Park | B54/77, Adastral Park | |||
Martlesham Heath | Martlesham Heath | |||
Ipswich IP5 3RE | Ipswich IP5 3RE | |||
UK | UK | |||
Phone: +44 1473 645196 | Phone: +44 1473 645196 | |||
EMail: bob.briscoe@bt.com | EMail: bob.briscoe@bt.com | |||
End of changes. 20 change blocks. | ||||
36 lines changed or deleted | 33 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/ |