< draft-ietf-sfc-nsh-ecn-support-04.txt   draft-ietf-sfc-nsh-ecn-support-05.txt >
INTERNET-DRAFT Donald Eastlake INTERNET-DRAFT D. Eastlake
Intended status: Proposed Standard Futurewei Technologies Intended status: Proposed Standard Futurewei Technologies
Bob Briscoe B. Briscoe
Independent
Andrew Malis
Independent Independent
Expires: June 5, 2021 December 6, 2020 Y. Li
Huawei Technologies
A Malis
Malis Consulting
X. Wei
Huawei Technologies
Expires: October 1, 2021 April 2, 2021
Explicit Congestion Notification (ECN) and Congestion Feedback Explicit Congestion Notification (ECN) and Congestion Feedback
Using the Network Service Header (NSH) Using the Network Service Header (NSH) and IPFIX
<draft-ietf-sfc-nsh-ecn-support-04.txt> <draft-ietf-sfc-nsh-ecn-support-05.txt>
Abstract Abstract
Explicit congestion notification (ECN) allows a forwarding element to Explicit congestion notification (ECN) allows a forwarding element to
notify downstream devices of the onset of congestion without having notify downstream devices of the onset of congestion without having
to drop packets. Coupled with a means to feed information about to drop packets. Coupled with a means to feed information about
congestion back to upstream nodes, this can improve network congestion back to upstream nodes, this can improve network
efficiency through better congestion control, frequently without efficiency through better congestion control, frequently without
packet drops. This document specifies ECN and congestion feedback packet drops. This document specifies ECN and congestion feedback
support within a Service Function Chaining (SFC) architecture domain support within a Service Function Chaining (SFC) architecture domain
through use of the Network Service Header (NSH, RFC 8300) and IP Flow through use of the Network Service Header (NSH, RFC 8300) and IP Flow
Information Export (IPFIX, Information Export (IPFIX, RFC 7011).
draft-ietf-tsvwg-tunnel-congestion-feedback).
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Distribution of this document is unlimited. Comments should be sent Distribution of this document is unlimited. Comments should be sent
to the SFC Working Group mailing list <sfc@ietf.org> or to the to the SFC Working Group mailing list <sfc@ietf.org> or to the
authors. authors.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet- other groups may also distribute working documents as Internet-
Drafts. Drafts.
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."
INTERNET-DRAFT NSH ECN & Congestion Feedback
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/1id-abstracts.html. The list of Internet-Draft http://www.ietf.org/1id-abstracts.html. The list of Internet-Draft
Shadow Directories can be accessed at Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
INTERNET-DRAFT NSH ECN & Congestion Feedback INTERNET-DRAFT NSH ECN & Congestion Feedback
Table of Contents Table of Contents
1. Introduction............................................3 1. Introduction............................................4
1.1 NSH Background.........................................3 1.1 NSH Background.........................................4
1.2 ECN Background.........................................5 1.2 ECN Background.........................................6
1.3 Tunnel Congestion Feedback Background..................5 1.3 Tunnel Congestion Feedback Background..................6
1.4 Conventions Used in This Document......................7 1.4 Conventions Used in This Document......................8
2. The NSH ECN Field.......................................8 2. The NSH ECN Field......................................10
3. ECN Support in the NSH.................................10 3. ECN Support in the NSH.................................12
3.1 At The Ingress........................................11 3.1 At The Ingress........................................13
3.2 At Transit Nodes......................................12 3.2 At Transit Nodes......................................14
3.2.1 At NSH Transit Nodes................................12 3.2.1 At NSH Transit Nodes................................14
3.2.2 At an SF/Proxy......................................13 3.2.2 At an SF/Proxy......................................15
3.2.3 At Other Forwarding Nodes...........................13 3.2.3 At Other Forwarding Nodes...........................15
3.3 At Exit/Egress........................................13 3.3 At Exit/Egress........................................16
3.4 Conservation of Packets...............................14 3.4 Conservation of Packets...............................16
4. Tunnel Congestion Feedback Support.....................15 4. Tunnel Congestion Feedback Support.....................18
4.1 Congestion Level Measurement..........................18
4.3 Congestion Information Delivery.......................19
4.3 IPFIX Extensions......................................21
4.3.1 nshServicePathID....................................21
4.3.2 tunnelEcnCeCeByteTotalCount.........................21
4.3.3 tunnelEcnEctNectBytetTotalCount.....................22
4.3.4 tunnelEcnCeNectByteTotalCount.......................22
4.3.5 tunnelEcnCeEctByteTotalCount........................22
4.3.6 tunnelEcnEctEctByteTotalCount.......................23
4.3.7 tunnelEcnCEMarkedRatio..............................23
5. IANA Considerations....................................16 5. Example of Use.........................................24
5.1 SFC NSH Header ECN Bits...............................16
5.2 IPFIX Information Element ID..........................16
6. Security Considerations................................17 6. IANA Considerations....................................27
6.1 SFC NSH Header ECN Bits...............................27
6.2 IPFIX Information Element IDs.........................27
7. Acknowledgements.......................................17 7. Security Considerations................................29
8. Acknowledgements.......................................29
Normative References......................................18 Normative References......................................30
Informative References....................................18 Informative References....................................31
Authors' Addresses........................................20 Authors' Addresses........................................32
INTERNET-DRAFT NSH ECN & Congestion Feedback INTERNET-DRAFT NSH ECN & Congestion Feedback
1. Introduction 1. Introduction
Explicit congestion notification (ECN [RFC3168]) allows a forwarding Explicit Congestion Notification (ECN [RFC3168]) allows a forwarding
element to notify downstream devices of the onset of congestion element to notify downstream devices of the onset of congestion
without having to drop packets. Coupled with a means to feed without having to drop packets. Coupled with a means to feed
information about congestion back to upstream nodes, this can improve information about congestion back to upstream nodes, this can improve
network efficiency through better congestion control, frequently network efficiency through better congestion control, frequently
without packet drops. This document specifies ECN and congestion without packet drops. This document specifies ECN and congestion
feedback support within a Service Function Chaining (SFC [RFC7665]) feedback support within a Service Function Chaining (SFC [RFC7665])
architecture domain through use of the Network Service Header (NSH architecture domain through use of the Network Service Header (NSH
[RFC8300]) and IP Flow Information Export (IPFIX [RFC8300]) and IP Flow Information Export (IPFIX [RFC7011]).
[TunnelCongFeedback]).
It requires that all ingress and egress nodes of the SFC domain It requires that all ingress and egress nodes of the SFC domain
implement ECN. While congestion management will be the most effective implement ECN. While congestion management will be the most effective
if all interior nodes of the SFC domain implement ECN, some benefit if all interior nodes of the SFC domain implement ECN, some benefit
is obtained even if some interior nodes do not implement ECN. is obtained even if some interior nodes do not implement ECN.
Congestion at any interior bottleneck where ECN marking is not Congestion at any interior bottleneck where ECN marking is not
implemented will be unmanaged. implemented will be unmanaged.
The subsections below in this section provide background information The subsections below in this section provide background information
on NSH, ECN, congestion feedback, and terminology used in this on NSH, ECN, congestion feedback, and terminology used in this
skipping to change at page 5, line 26 skipping to change at page 6, line 26
Service Function (SF)) to notify downstream devices of the onset of Service Function (SF)) to notify downstream devices of the onset of
congestion without having to drop packets. This can be used as an congestion without having to drop packets. This can be used as an
element in active queue management (AQM) [RFC7567] to improve network element in active queue management (AQM) [RFC7567] to improve network
efficiency through better traffic control without packet drops. The efficiency through better traffic control without packet drops. The
forwarding element can explicitly mark some packets in an ECN field forwarding element can explicitly mark some packets in an ECN field
instead of dropping the packet. For example, a two-bit field is instead of dropping the packet. For example, a two-bit field is
available for ECN marking in IP headers [RFC3168]. available for ECN marking in IP headers [RFC3168].
1.3 Tunnel Congestion Feedback Background 1.3 Tunnel Congestion Feedback Background
Tunnel Congestion Feedback [TunnelCongFeedback] is a building block Tunnels are widely deployed in various networks including data center
for various congestion mitigation methods. It supports feedback of networks, enterprise network, and the public Internet. A tunnel
congestion information from an egress node to an ingress node. This consists of ingress, egress, and a set of intermediate nodes
document treats the SFC domain as a tunnel with the initial including routers. Tunnel Congestion Feedback (Section 4) is a
Classifier node being the ingress. building block for congestion mitigation methods. It supports
feedback of congestion information from an egress node to an ingress
node. This document treats the SFC domain as a tunnel with the
initial Classifier node being the ingress; however, the Tunnel
Congestion Feedback facilities specified in this document MAY be used
in other contexts besides SFC domains.
Examples of actions that can be taken by an ingress node when it has Examples of actions that can be taken by an ingress node when it has
knowledge of downstream congestion include those listed below. knowledge of downstream congestion include those listed below.
Details of implementing these traffic control methods, beyond those Details of implementing these traffic control methods, beyond those
given here, are outside the scope of this document. given here, are outside the scope of this document.
Any action by a tunnel ingress to reduce congestion needs to allow Any action by a tunnel ingress to reduce congestion needs to allow
sufficient time for the end-to-end congestion control loop to respond sufficient time for the end-to-end congestion control loop to respond
first, for instance by the ingress taking a smoothed average of the first, otherwise the system could go unstable. For instance by the
level of congestion signalled by feedback from the tunnel egress. ingress taking a smoothed average of the level of congestion signaled
by feedback from the tunnel egress or delaying any action for at
least the worst case global round trip time (for example 100
milliseconds).
(1) Traffic throttling (policing), where the downstream traffic (1) Traffic throttling (policing), where the downstream traffic
flowing out of the ingress node is limited to reduce or eliminate flowing out of the ingress node is limited to reduce or eliminate
congestion. congestion.
INTERNET-DRAFT NSH ECN & Congestion Feedback
(2) Upstream congestion feedback, where the ingress node sends (2) Upstream congestion feedback, where the ingress node sends
messages upstream to or towards the ultimate traffic source, a messages upstream to or towards the ultimate traffic source, a
function that can throttle traffic generation/transmission. function that can throttle traffic generation/transmission.
(3) Traffic re-direction, where the ingress node configures the NSH (3) Traffic re-direction, where the ingress node configures the NSH
of some future traffic so that it avoids congested paths. Great of some future traffic so that it avoids congested paths. Great
care must be taken with this option to avoid (a) significant re- care must be taken with this option to avoid (a) significant re-
INTERNET-DRAFT NSH ECN & Congestion Feedback
ordering of traffic in flows that it is desirable to keep in ordering of traffic in flows that it is desirable to keep in
order and (b) oscillation/instability in traffic paths due to order and (b) oscillation/instability in traffic paths due to
alternate congestion of previously idle paths and the idling of alternate congestion of previously idle paths and the idling of
previously congested paths. For example, it is preferable to previously congested paths. For example, it is preferable to
classify traffic into flows of a sufficiently coarse granularity classify traffic into flows of a sufficiently coarse granularity
that the flows are long lived and then use a stable path per that the flows are long lived and then use a stable path per
flow, sending only newly appearing flows on apparently flow, sending only newly appearing flows on apparently
uncongested paths. uncongested paths.
Figure 2 shows an example path from an origin sender to a final Figure 2 shows an example path from an original sender to a final
receiver passing through an example chain of service functions receiver passing through an example chain of service functions
between the ingress and egress of an SFC domain. The path is also between the ingress and egress of an SFC domain. The path is also
likely to pass through other network nodes outside the SFC domain likely to pass through other network nodes outside the SFC domain
(not shown) before entering the SFC domain and after leaving the SFC (not shown) before entering the SFC domain and after leaving the SFC
domain. domain.
The figure shows typical congestion feedback that would be expected The figure shows typical congestion feedback that would be expected
from the final receiver to the origin sender, which controls the load from the final receiver to the origin sender, which controls the load
the origin sender applies to all elements on the path. The figure the origin sender applies to all elements on the path. The figure
also shows the congestion feedback from the egress to the ingress of also shows the congestion feedback from the egress to the ingress of
the SFC domain that is described in this document, to control or the SFC domain that is described in this document, to control or
balance load within the SFC domain. balance load within the SFC domain.
INTERNET-DRAFT NSH ECN & Congestion Feedback
.:= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = :. .:= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = :.
_||_ End-to-End Congestion Feedback || _||_ End-to-End Congestion Feedback ||
\ / || \ / ||
\/ || \/ ||
__ Inner Transport Header and Payload __ __ Inner Transport Header and Payload __
| | ->- - - - - - - - - - - - - - ->- - - - - -- - - - - - ->- | | | | ->- - - - - - - - - - - - - - ->- - - - - -- - - - - - ->- | |
| | | | | | | |
| | .:= = = = = = = = = = = = = = = = = = = = = =:. | | | | .:= = = = = = = = = = = = = = = = = = = = = =:. | |
| | _||_ Tunnel Congestion Feedback || | | | | _||_ Tunnel Congestion Feedback || | |
| | \ / || | | | | \ / || | |
skipping to change at page 6, line 54 skipping to change at page 8, line 31
| | | | OT1 | | OT4 | | . . . | | OTn | | | | | | | | OT1 | | OT4 | | . . . | | OTn | | | |
| | | |-->--|SFF|--->---|SFF| |SFF|-->--| | | | | | | |-->--|SFF|--->---|SFF| |SFF|-->--| | | |
|__| |__| |___| |___| |___| |__| |__| |__| |__| |___| |___| |___| |__| |__|
origin SFC | ^ | ^ SFC final origin SFC | ^ | ^ SFC final
sender domain OT2| |OT3 OT6| |OT7 domain rcvr sender domain OT2| |OT3 OT6| |OT7 domain rcvr
ingress v | v | egress ingress v | v | egress
+---+ +---+ +---+ +---+
|SF | |SF | |SF | |SF |
+---+ +---+ +---+ +---+
Figure 2: Congestion Feedback across an SFC Domain Figure 2. Congestion Feedback across an SFC Domain
INTERNET-DRAFT NSH ECN & Congestion Feedback
SFC Domain congestion feedback in Figure 2 is shown within the SFC Domain congestion feedback in Figure 2 is shown within the
context of an end-to-end congestion feedback loop. Also shown is the context of an end-to-end congestion feedback loop. Also shown is the
encapsulated layering of NSH headers within a series of outer encapsulated layering of NSH headers within a series of outer
transport headers (OT1, OT2, ... OTn). transport headers (OT1, OT2, ... OTn).
1.4 Conventions Used in This Document 1.4 Conventions Used in This Document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
document are to be interpreted as described in [RFC2119] [RFC8174] "OPTIONAL" in this document are to be interpreted as described in BCP
when, and only when, they appear in all capitals, as shown here. 14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
Acronyms: Acronyms:
AQM - Active Queue Management [RFC7567] AQM - Active Queue Management [RFC7567]
CE - Congestion Experienced [RFC3168] CE - Congestion Experienced [RFC3168]
downstream - The direction from ingress to egress downstream - The direction from ingress to egress
INTERNET-DRAFT NSH ECN & Congestion Feedback
ECN - Explicit Congestion Notification [RFC3168] ECN - Explicit Congestion Notification [RFC3168]
ECT - ECN Capable Transport [RFC3168] ECT - ECN Capable Transport [RFC3168]
IPFIX - IP Flow Information Export [RFC7011] IPFIX - IP Flow Information Export [RFC7011]
Not-ECT - Not ECN-Capable Transport [RFC3168] Not-ECT - Not ECN-Capable Transport [RFC3168]
NSH - Network Service Header [RFC8300] NSH - Network Service Header [RFC8300]
skipping to change at page 8, line 46 skipping to change at page 10, line 46
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Ver|O|U| TTL | Length |U|U|U|U|MD Type| Next Protocol | |Ver|O|U| TTL | Length |U|U|U|U|MD Type| Next Protocol |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
^ ^ ^ ^
| | | |
+-------+ +-------+
|NSH ECN| |NSH ECN|
| field | | field |
+-------+ +-------+
Figure 4: NSH Base Header Figure 4. NSH Base Header
Note to RFC Editor: The above figure should be adjusted based on the Note to RFC Editor: The above figure should be adjusted based on the
bits assigned by IANA (see Section 5) and this note deleted. bits assigned by IANA (see Section 5) and this note deleted.
Table 1 shows the meaning of the code points in the NSH ECN field. Table 1 shows the meaning of the code points in the NSH ECN field.
These have the same meaning as the ECN field code points in the IPv4 These have the same meaning as the ECN field code points in the IPv4
or IPv6 header as defined in [RFC3168]. or IPv6 header as defined in [RFC3168].
INTERNET-DRAFT NSH ECN & Congestion Feedback INTERNET-DRAFT NSH ECN & Congestion Feedback
skipping to change at page 13, line 18 skipping to change at page 15, line 18
If the SF is NSH and ECN-aware, the processing is essentially the If the SF is NSH and ECN-aware, the processing is essentially the
same at the SF as at an SFF as discussed in Section 3.2.1. same at the SF as at an SFF as discussed in Section 3.2.1.
If the SF is NSH-aware but ECN-unaware, then the SFF transmitting the If the SF is NSH-aware but ECN-unaware, then the SFF transmitting the
packet to the SF will use Compatibility Mode. Congestion encountered packet to the SF will use Compatibility Mode. Congestion encountered
in the SFF to SF and SF to SFF paths will be unmanaged. in the SFF to SF and SF to SFF paths will be unmanaged.
If the SF is not NSH-aware, then an NSH proxy will be between the SFF If the SF is not NSH-aware, then an NSH proxy will be between the SFF
and the SF to avoid exposure of the NSH to the SF that does not and the SF to avoid exposure of the NSH to the SF that does not
understand NSHs. This is described in Section 4.6 of [RFC7665]. The understand NSHs as shown in Figure 6. This is described in Section
SF and proxy together look to the SFF like an NSH-aware SF. The 4.6 of [RFC7665]. The SF and proxy together look to the SFF like an
behavior at the proxy and SF in this case is as below: NSH-aware SF. The behavior at the proxy and SF in this case is as
below:
If such a proxy is not ECN-aware then congestion in the entire If such a proxy is not ECN-aware then congestion in the entire
path from SFF to proxy to SF back to proxy to SFF will be path from SFF to proxy to SF back to proxy to SFF will be
unmanaged. unmanaged.
|
v
+----------+ +---------+
| | +-------+ | NSH |
| SFF +---->| NSH +---->|un-aware |
|(Service | | aware | | SF |
| Function |<----+ proxy |<----+(Service |
|Forwarder)| +-------+ |Function)|
+----------+ +---------+
|
v
Figure 6. Proxy for NSH Un-aware SFF
If the proxy is ECN-aware, the proxy uses an AQM to indicate If the proxy is ECN-aware, the proxy uses an AQM to indicate
congestion within the proxy in the NSH that it returns to the SFF. congestion within the proxy in the NSH that it returns to the SFF.
The outer header used for the proxy to SF path uses Normal Mode. The outer header used for the proxy-to-SF path uses Normal Mode.
The outer head used for the proxy return to SFF path uses Normal The outer head used for the proxy-to-SFF path uses Normal Mode
Mode based copying of the NSH ECN field to the outer header. Thus based copying of the NSH ECN field to the outer header. Thus
congestion in the proxy will be managed. Congestion in the SF will congestion in the proxy will be managed. Congestion in the SF will
be managed only if the SF is ECN-aware implementing an AQM. be managed only if the SF is ECN-aware and implements an AQM.
3.2.3 At Other Forwarding Nodes 3.2.3 At Other Forwarding Nodes
Other forwarding nodes, that is non-NSH forwarding nodes between NSH Other forwarding nodes, that is non-NSH forwarding nodes between NSH
forwarding nodes, such as IP or label switched routers, might also forwarding nodes, such as IP or label switched routers, might also
contain potential bottlenecks. If so, they SHOULD implement an AQM contain potential bottlenecks. If so, they SHOULD implement an AQM
algorithm to update the ECN marking in the outer transport header as algorithm to update the ECN marking in the outer transport header as
INTERNET-DRAFT NSH ECN & Congestion Feedback
specified in [RFC3168]. specified in [RFC3168].
3.3 At Exit/Egress 3.3 At Exit/Egress
First, any actions are taken based on Congestion Experienced or other At the SFC domain egress node, first any actions are taken based on
values of ECN marking, such as accumulating statistics to forward Congestion Experienced or other values of ECN marking, such as
back to the ingress (see Section 4). If the packet being carried accumulating statistics to send back to the ingress (see Section 4)
inside the NSH is IP, when the NSH is removed the NSH ECN field MUST or for other uses. If the packet being carried inside the NSH is IP,
be combined with the IP ECN field as specified in Table 3 that was when the NSH is removed the NSH ECN field MUST be combined with the
extracted from [RFC6040]. This requirement applies to all egress IP ECN field as specified in Table 3 that was extracted from
nodes for the domain in which NSH is being used to route traffic. [RFC6040]. This requirement applies to all egress nodes for the
domain in which NSH is being used to route traffic.
INTERNET-DRAFT NSH ECN & Congestion Feedback
+---------+---------------------------------------------+ +---------+---------------------------------------------+
|Arriving | Arriving Outer Header | |Arriving | Arriving Outer Header |
| Inner +---------+-----------+-----------+-----------+ | Inner +---------+-----------+-----------+-----------+
| Header | Not-ECT | ECT(0) | ECT(1) | CE | | Header | Not-ECT | ECT(0) | ECT(1) | CE |
+---------+---------+-----------+-----------+-----------+ +---------+---------+-----------+-----------+-----------+
| Not-ECT | Not-ECT |Not-ECT |Not-ECT | <drop> | | Not-ECT | Not-ECT |Not-ECT |Not-ECT | <drop> |
| ECT(0) | ECT(0) | ECT(0) | ECT(0) | CE | | ECT(0) | ECT(0) | ECT(0) | ECT(0) | CE |
| ECT(1) | ECT(1) | ECT(1) | ECT(1) | CE | | ECT(1) | ECT(1) | ECT(1) | ECT(1) | CE |
| CE | CE | CE | CE | CE | | CE | CE | CE | CE | CE |
skipping to change at page 14, line 33 skipping to change at page 16, line 46
used. used.
3.4 Conservation of Packets 3.4 Conservation of Packets
The SFC specification permits an SF to absorb packets and to generate The SFC specification permits an SF to absorb packets and to generate
new packets as well as simply processing and forwarding the packets new packets as well as simply processing and forwarding the packets
it receives. Such actions might appear to be packet loss due to it receives. Such actions might appear to be packet loss due to
congestion or might mask the loss of packets by generating additional congestion or might mask the loss of packets by generating additional
packets. packets.
The tunnel congestion feedback approach [TunnelCongFeedback] detects The tunnel congestion feedback approach (Section 4) detects loss by
loss by counting payload bytes in at the ingress and counting them counting payload bytes in at the ingress and counting them out at the
out at the egress. This does not work unless nodes conserve the egress. This does not work unless nodes conserve the amount of
amount of payload bytes. Therefore, it will not be possible to detect payload bytes. Therefore, it will not be possible to detect loss
loss using this technique if they are not conserved. using this technique if they are not conserved.
INTERNET-DRAFT NSH ECN & Congestion Feedback
Nonetheless, if a bottleneck supports ECN marking, it will be Nonetheless, if a bottleneck supports ECN marking, it will be
possible to detect the very high level of CE markings that are possible to detect the very high level of CE markings that are
associated with congestion that is so excessive that it leads to associated with congestion that is so excessive that it leads to
loss. However, it will not be possible for the tunnel congestion loss. However, it will not be possible for the tunnel congestion
feedback approach to detect any congestion, whether slight or severe, feedback approach to detect any congestion, whether slight or severe,
if it occurs at a bottleneck that does not support ECN marking. if it occurs at a bottleneck that does not support ECN marking.
INTERNET-DRAFT NSH ECN & Congestion Feedback INTERNET-DRAFT NSH ECN & Congestion Feedback
4. Tunnel Congestion Feedback Support 4. Tunnel Congestion Feedback Support
The collection and storage of congestion information at the egress The collection and storage of congestion information at the egress
may be useful for later analysis but, unless it can be fed back to a may be useful for later analysis but, unless it can be fed back to a
point which can take action to reduce congestion, it will not be point which can take action to reduce congestion, it will not be
useful in real time. Such congestion feedback to the ingress enables useful in real time. Such congestion feedback to the ingress enables
it to take actions such as those listed in Section 1.3. it to take actions such as those listed in Section 1.3.
IP Flow Information Export (IPFIX [RFC7011]) provides a standard for IP Flow Information Export (IPFIX [RFC7011]) provides a standard for
communicating traffic flow statistics. As extended by communicating traffic flow statistics. As extended by this document,
[TunnelCongFeedback] and herein, IPFIX messages from the egress to IPFIX messages from the egress to the ingress are used to communicate
the ingress are used to communicate the extent of congestion between the extent of congestion between an ingress and egress based on ECN
an ingress and egress based on ECN marking in the NSH. For example, marking in the NSH.
the tunnelEcnCEMarkedRatio field, specified in [TunnelCongFeedback],
indicates tha fraction of traffic that has been marked in the ECN 4.1 Congestion Level Measurement
The congestion level measurement is based on ECN marking in the NSH
and packet drop, particularly the fraction of packets that are CE-
marked packet and fraction that are dropped. If the congestion level
is not high enough, the packets are marked as CE instead of being
dropped, and then it is easy to calculate congestion level according
to the ratio of CE-marked packets. If the congestion level is so high
that ECT packets will be dropped, then the packet loss ratio could be
calculated by comparing total packets entering ingress and total
packets arriving at egress over the same span of packets. If packet
loss is detected, it could be assumed that severe congestion has
occurred in the tunnel.
The egress calculates the CE-marked packet ratio by counting packets
with different ECN markings. The CE-marked packet ratio will be used
as an indication of tunnel load level. It is assumed that nodes
between the ingress and egress will not drop packets biased towards
certain ECN codepoints, so calculating of CE-marked packet ratio is
not affect by packet drop.
The calculation of volumes of packet drop is by comparing the traffic
volumes between ingress and egress.
Faked ECN-Capable Transport (ECT) is used at the ingress to defer
packet loss to the egress. The basic idea of faked ECT is that, when
encapsulating packets, the ingress first marks the tunnel outer
header (NSH for an SFC domain) according to [RFC6040], and then
remarks the outer header of Not-ECT packets as ECT. (ECT(0) and
ECT(1) are treated as the same.) Thus, as transmitted by the ingress
node, there will be one of three combinations of outer header ECN
field and inner header ECN field: CE|CE, ECT|N-ECT, and ECT|ECT (in
the format of outer-ECN|inner-ECN); when decapsulating packets at the
egress, [RFC6040] defined decapsulation behavior is used, and
INTERNET-DRAFT NSH ECN & Congestion Feedback
according to [RFC6040], the packets marked as CE|N-ECT will be
dropped. Faked-ECT is used to shift some drops to the egress in order
to allow the egress to calculate the CE-marked packet ratio more
precisely.
The ingress encapsulates packets and marks their outer header
according to faked ECT as described above. The ingress cumulatively
counts packet bytes for three types of ECN combination (CE|CE, ECT|N-
ECT, and ECT|ECT) and then the ingress regularly sends cumulative
bytes counts message of each type of ECN combination to the egress.
When each message arrives at the egress, (1) egress calculates the
ratio of CE-marked packet; (2) the egress cumulatively counts packet
bytes coming from the ingress and adds its own bytes counts of each
type of ECN combination (CE|CE, ECT|N-ECT, CE|N-ECT, CE|ECT, and
ECT|ECT) to the message for ingress to calculate packet loss. The
egress feeds back CE-marked packet ratio and bytes counts information
to the ingress for evaluating congestion level in the tunnel.
The counting of bytes can be at the granularity of all traffic from
the ingress to the egress to learn about the overall congestion
status of the path between the ingress and the egress. The counting
can also be at the granularity of individual customer's traffic or a
specific set of flows to learn about their congestion contribution.
For example, the tunnelEcnCEMarkedRatio field (specified below)
indicates the fraction of traffic that has been marked in the ECN
field of the NSH as Congestion Experienced (CE). field of the NSH as Congestion Experienced (CE).
4.3 Congestion Information Delivery
As described above, the tunnel ingress needs to send a messages
containing cumulative bytes counts of packets of each type of ECN
combination to the tunnel egress, and the tunnel egress also needs to
feed back messages with cumulative bytes counts of packets of each
type of ECN combination and CE-marked packet ratio to the ingress.
This section specifies how the messages should be conveyed.
IPFIX recommends, but does not require, use of SCTP [RFC4960] in
partial reliability mode [RFC3758] for the transport of its messages.
This mode allows loss of some packets, which is tolerable because
IPFIX communicates cumulative statistics. IPFIX over SCTP over IP
SHOULD be used directly where there is IP connectivity between the
ingress and egress; however, there might be different transport
protocols or address spaces used in different regions of an SFC
domain that make such direct IP connectivity problematic. The NSH
provides the general method of routing traffic within an SFC domain
so the encapsulation of the required IPFIX traffic in NSH MUST be
INTERNET-DRAFT NSH ECN & Congestion Feedback
implemented and, when IP connectivity is not available, IPFIX over
NSH SHOULD be used along with configuration of appropriate SFC paths
for the IPFIX over NSH traffic.
Typically IPFIX messages could travel along the same path as network
data traffic. In any case, an IPFIX message packet may get lost in
case of network congestion. Even though the missing information could
be recovered because of the use of cumulative counts, the message
SHOULD be transmitted at a higher priority than users' traffic flows.
The ingress node can do congestion management at different
granularity which means both the overall aggregated inner tunnel
congestion level and congestion level contributed by certain traffic
flows could be measured for different congestion management purpose.
For example, if the ingress only wants to limit congestion volume
caused by certain traffic flows, such as UDP-based traffic, then
congestion volume for that traffic will be fed back; or if the
ingress is doing overall congestion management, the aggregated
congestion volume will be fed back.
When sending IPFIX messages from ingress to egress, the ingress acts
as IPFIX exporter and egress acts as IPFIX collector; When feedback
congestion level information from egress to ingress, then the egress
acts as IPFIX exporter and ingress acts as IPFIX collector.
The combination of congestion level measurement and congestion
information delivery procedures should be as following:
o The ingress node determines the IPFIX template record to be used.
The template record can be pre-configured or determined at
runtime, the content of template record will be determined
according to the granularity of congestion management; if the
ingress wants to limit congestion volume contributed by specific
traffic flow then the elements such as source IP address,
destination IP address, flow id and CE-marked packet volume of the
flow, etc., will be included in the template record.
o Metering on the ingress measures traffic volume according to
template record chosen and then the measurement records are sent
to the egress.
o Metering on the egress measures congestion level information
according to template record which should be the same as the
template record sent by the ingress.
o The egress sends measurement records together with the measurement
records of ingress back to the ingress.
INTERNET-DRAFT NSH ECN & Congestion Feedback
4.3 IPFIX Extensions
This section specifies new IPFIX Information Elements according to
[RFC7013].
4.3.1 nshServicePathID
In order to identify SFC flows, so that congestion can be measured In order to identify SFC flows, so that congestion can be measured
and reported at that granularity, it is necessary for IPFIX to be and reported at that granularity, it is necessary for IPFIX to be
able to classify traffic based on the Service Path Identifier field able to classify traffic based on the Service Path Identifier field
of the NSH [RFC8300]. Thus an NSH Service Path Identifier of the NSH [RFC8300]. Thus an NSH Service Path Identifier
(nshServicePathID) IPFIX Information Element [RFC7012] is specified (nshServicePathID) IPFIX Information Element [RFC7012] is specified.
as follows for use in this application of IPFIX:
Name: nshServicePathID Name: nshServicePathID
Description: Network Service Header [RFC8300] Service Path Description: Network Service Header [RFC8300] Service Path
Identifier. This is a 24-bit value which is left justified in Identifier. This is a 24-bit value which is left justified in
the Information Element. The low order byte MUST be sent as the Information Element. The low order byte MUST be sent as
zero and ignored on receipt. zero and ignored on receipt.
Abstract Data Type: unsigned32 Abstract Data Type: unsigned32
Data Type Semantics: identifier Data Type Semantics: identifier
ElementID: tbd ElementId: tbd0
Status: current Status: current
IPFIX recommends, but does not require, use of SCTP [RFC4960] in 4.3.2 tunnelEcnCeCeByteTotalCount
partial reliability mode for the transport of its messages. This mode
allows loss of some packets, which is tolerable because IPFIX Description: The total number of bytes of incoming packets with
communicates cumulative statistics. IPFIX over SCTP SHOULD be used CE|CE ECN marking combination at the Observation Point since
directly where there is IP connectivity between the ingress and the Metering Process (re-)initialization for this Observation
egress; however, there might be different transport protocols or Point.
address spaces used in different regions of an SFC domain that make
such direct IP connectivity problematic. The NSH provides the general Abstract Data Type: unsigned64
method of routing traffic within such an SFC domain so the IPFIX
traffic MUST be encapsulated in NSH when IP connectivity is not Data Type Semantics: totalCounter
available.
ElementId: TBD1
Statues: current
Units: bytes
INTERNET-DRAFT NSH ECN & Congestion Feedback INTERNET-DRAFT NSH ECN & Congestion Feedback
5. IANA Considerations 4.3.3 tunnelEcnEctNectBytetTotalCount
5.1 SFC NSH Header ECN Bits Description: The total number of bytes of incoming packets with
ECT|N-ECT ECN marking combination (ECT(0) and ECT(1) are
treated as the same) at the Observation Point since the
Metering Process (re-)initialization for this Observation
Point.
Abstract Data Type: unsigned64
Data Type Semantics: totalCounter
ElementId: TBD2
Statues: current
Units: bytes
4.3.4 tunnelEcnCeNectByteTotalCount
Description: The total number of bytes of incoming packets with
CE|N-ECT ECN marking combination at the Observation Point since
the Metering Process (re-)initialization for this Observation
Point.
Abstract Data Type: unsigned64
Data Type Semantics: totalCounter
ElementId: TBD3
Statues: current
Units: bytes
4.3.5 tunnelEcnCeEctByteTotalCount
Description: The total number of bytes of incoming packets with
CE|ECT ECN marking combination (ECT(0) and ECT(1) are treated
as the same) at the Observation Point since the Metering
Process (re-)initialization for this Observation Point.
Abstract Data Type: unsigned64
Data Type Semantics: totalCounter
INTERNET-DRAFT NSH ECN & Congestion Feedback
ElementId: TBD4
Statues: current
Units: bytes
4.3.6 tunnelEcnEctEctByteTotalCount
Description: The total number of bytes of incoming packets with
ECT|ECT ECN marking combination (ECT(0) and ECT(1) are treated
as the same) at the Observation Point since the Metering
Process (re-)initialization for this Observation Point.
Abstract Data Type: unsigned64
Data Type Semantics: totalCounter
ElementId: TBD5
Statues: current
Units: bytes
4.3.7 tunnelEcnCEMarkedRatio
Description: The ratio of CE-marked Packet at the Observation
Point.
Abstract Data Type: float32
ElementId: TBD6
Statues: current
INTERNET-DRAFT NSH ECN & Congestion Feedback
5. Example of Use
This subsection provides an example of how the solution described in
this document could work.
First of all, IPFIX template records are exchanged between ingress
and egress to negotiate the format of data records. The example here
is to measure the congestion level for the overall tunnel caused by
all the traffic. After the negotiation is finished, the ingress sends
in-band messages to egress containing the number of each kind of ECN-
marked packets (i.e.. CE|CE, ECT|N-ECT and ECT|ECT) received until it
sent the message.
After the egress receives the message, the egress calculates the CE-
marked packet ratio and counts the number of different kinds of ECN-
marking packets received until it received the message. Then the
egress sends a feedback message containing the counts together with
the information in the ingress's message back to the ingress.
Figures 7 to 10 below show the example procedure between ingress and
egress.
+---------------------------------+----------------------+
|Set ID=2 Length=40 |
|---------------------------------|----------------------|
|Template ID=256 Field Count=8 |
|---------------------------------|----------------------|
|tunnelEcnCeCeByteTotalCount Field Length=8 |
|---------------------------------|----------------------|
|tunnelEcnEctNectByteTotalCount Field Length=8 |
|---------------------------------|----------------------|
|tunnelEcnEctEctByteTotalCount Field Length=8 |
|---------------------------------|----------------------|
|tunnelEcnCeNectByteTotalCount Field Length=8 |
|---------------------------------|----------------------|
|tunnelEcnCeEctByteTotalCount Field Length=8 |
+---------------------------------|----------------------+
|tunnelEcnCEMarkedRatio Field Length=4 |
+---------------------------------+----------------------+
Figure 7. Template Record Sent From Egress to Ingress
INTERNET-DRAFT NSH ECN & Congestion Feedback
+---------------------------------+----------------------+
|Set ID=2 Length=28 |
|---------------------------------|----------------------|
|Template ID=257 Field Count=3 |
|---------------------------------|----------------------|
|tunnelEcnCeCeByteTotalCount Field Length=8 |
|---------------------------------|----------------------|
|tunnelEcnEctNectByteTotalCount Field Length=8 |
|---------------------------------|----------------------|
|tunnelEcnEctEctByteTotalCount Field Length=8 |
|---------------------------------+----------------------|
Figure 8. Template Record Sent From Ingress to Egress
+-------+ +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-------+
| | |M| |P| |P| |P| |M| |P| |P| | |
| | +-+ +-+ +-+ +-+ +-+ +-+ +-+ | |
| |<---------------------------------------| |
| | | |
| | | |
|egress | +-+ +-+ |ingress|
| | |M| |M| | |
| | +-+ +-+ | |
| |--------------------------------------->| |
| | | |
| | | |
+-------+ +-------+
+-+
|M| : Message Packet
+-+
+-+
|P| : User Packet
+-+
Figure 9. Traffic flow Between Ingress and Egress
INTERNET-DRAFT NSH ECN & Congestion Feedback
Set ID=257, Length=28
+------+ A1 +------+
| | B1 | |
| | C1 | |
| | <----------------------------- | |
| | | |
| | | |
| | SetID=256, Length=72 | |
| | A1 | |
| | B1 | |
|egress| C1 ingress|
| | A2 | |
| | B2 | |
| | C2 | |
| | D | |
| | E | |
| | R | |
| | ----------------------------> | |
| | | |
+------+ +------+
Figure 10. Messages Between Ingress and Egress
The following provides an example of how the tunnel congestion level
could be calculated:
The congestion Level could be divided into two categories: (1)
slight congestion (no packets dropped); (2) serious congestion
(packets are being dropped).
For slight congestion, the congestion level is indicated as the
ratio of CE-marked packet:
ce_marked = R;
For serious congestion, the congestion level is indicated as the
number of volume loss:
total_ingress = (A1 + B1 + C1)
total_egress = (A2 + B2 + C2 + D + E)
volume_loss = (total_ingress - total_egress)
INTERNET-DRAFT NSH ECN & Congestion Feedback
6. IANA Considerations
The following subsections provide IANA assignment considerations.
6.1 SFC NSH Header ECN Bits
IANA is requested to assign two contiguous bits in the NSH Base IANA is requested to assign two contiguous bits in the NSH Base
Header Bits registry for ECN (bits 16 and 17 suggested) and note this Header Bits registry for ECN (bits 16 and 17 suggested) and note this
assignment as follows: assignment as follows:
Bit Description Reference Bit Description Reference
---------- ----------- --------------- ---------- ----------- -----------------
tbd(16-17) NSH ECN [this document] tbd(16-17) NSH ECN [this document]
5.2 IPFIX Information Element ID 6.2 IPFIX Information Element IDs
IANA is request to assign an IPFIX Information Element ID as follows: IANA is requested to assign IPFIX Information Element IDs as follows:
ElementID: tbd ElementID: tbd0
Name: nshServicePathID Name: nshServicePathID
Data Type: unsigned32 Data Type: unsigned32
Data Type Semantics: identifier Data Type Semantics: identifier
Status: current Status: current
Description: The Network Service Header [RFC8300] Service Path Description: The Network Service Header [RFC8300] Service Path
Identifier. Identifier.
ElementID: TBD1
Name: tunnelEcnCeCePacketTotalCount
Data Type: unsigned64
Data Type Semantics: totalCounter
Status: current
Description: The total number of bytes of incoming packets with
CE|CE ECN marking combination at the Observation Point since
the Metering Process (re-)initialization for this Observation
Point.
Units: octets
ElementID: TBD2
Name: tunnelEcnEctNectPacketTotalCount
Data Type: unsigned64
Data Type Semantics: totalCounter
Status: current
Description: The total number of bytes of incoming packets with
ECT|N-ECT ECN marking combination at the Observation Point
since the Metering Process (re-)initialization for this
Observation Point.
INTERNET-DRAFT NSH ECN & Congestion Feedback INTERNET-DRAFT NSH ECN & Congestion Feedback
6. Security Considerations Units: octets
ElementID: TBD3
Name: tunnelEcnCeNectPacketTotalCount
Data Type: unsigned64
Data Type Semantics: totalCounter
Status: current
Description: The total number of bytes of incoming packets with
CE|N-ECT ECN marking combination at the Observation Point since
the Metering Process (re-)initialization for this Observation
Point.
Units: octets
ElementID: TBD4
Name: tunnelEcnCeEctPacketTotalCount
Data Type: unsigned64
Data Type Semantics: totalCounter
Status: current
Description: The total number of bytes of incoming packets with
CE|ECT ECN marking combination at the Observation Point since
the Metering Process (re-)initialization for this Observation
Point.
Units: octets
ElementID: TBD5
Name: tunnelEcnEctEctPacketTotalCount
Data Type: unsigned64
Data Type Semantics: totalCounter
Status: current
Description: The total number of bytes of incoming packets with
CE|ECT(0) ECN marking combination at the Observation Point
since the Metering Process (re-)initialization for this
Observation Point.
Units: octets
ElementID: TBD6
Name: tunnelEcnCEMarkedRatio
Data Type: float32
Status: current
Description: The ratio of CE-marked Packet at the Observation
Point.
INTERNET-DRAFT NSH ECN & Congestion Feedback
7. Security Considerations
For general NSH security considerations, see [RFC8300]. For general NSH security considerations, see [RFC8300].
For security considerations concerning tampering with ECN signaling, For security considerations concerning tampering with ECN signaling,
see [RFC3168]. For security considerations concerning ECN and see [RFC3168]. For security considerations concerning ECN and
encapsulation, see [RFC6040]. encapsulation, see [RFC6040].
For general IPFIX security considerations, see [RFC7011]. If deployed For general IPFIX security considerations, see [RFC7011]. If deployed
in an untrusted environment, the signaling traffic between ingress in an untrusted environment, the signaling traffic between ingress
and egress can be protected utilizing the security mechanisms and egress can be protected utilizing the security mechanisms
provided by IPFIX (see Section 11 in [RFC7011]). provided by IPFIX (see Section 11 in [RFC7011]).
The tunnel endpoints (the ingress and egress for an SFC domain) are
assumed to be in the same administrative domain, so they will trust
each other.
The solution in this document does not introduce any greater The solution in this document does not introduce any greater
potential to invade privacy than would have been available without potential to invade privacy than would have been available without
the solution. the solution.
7. Acknowledgements 8. Acknowledgements
The authors wish to thank the following for their comments and Most of the material on Tunnel Congestion Feedback was originally in
suggestion: draft-ietf-twvwg-tunnel-congestion-feedback. After discussion with
the authors of that draft, the authors of this draft, and the Chairs
of the TSVWG and SFC Working Groups, the Tunnel Congestion Feedback
draft was merged into this draft.
Joel Halpern, Tal Mizrahi, Xinpeng Wei The authors wish to thank the following for their comments,
suggestions, and reviews:
David Black, Sami Boutros, Anthony Chan, Lingli Deng, Liang Geng,
Joel Halpern, Jake Holland, John Kaippallimalil, Tal Mizrahi,
Vincent Roca, Lei Zhu
INTERNET-DRAFT NSH ECN & Congestion Feedback INTERNET-DRAFT NSH ECN & Congestion Feedback
Normative References Normative References
[RFC2119] - Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] - Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119,
March 1997, <http://www.rfc-editor.org/info/rfc2119>. March 1997, <http://www.rfc-editor.org/info/rfc2119>.
[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 3168, DOI of Explicit Congestion Notification (ECN) to IP", RFC 3168, DOI
10.17487/RFC3168, September 2001, <http://www.rfc- 10.17487/RFC3168, September 2001, <http://www.rfc-
editor.org/info/rfc3168>. editor.org/info/rfc3168>.
[RFC3758] - Stewart, R., Ramalho, M., Xie, Q., Tuexen, M., and P.
Conrad, "Stream Control Transmission Protocol (SCTP) Partial
Reliability Extension", RFC 3758, DOI 10.17487/RFC3758, May
2004, <https://www.rfc-editor.org/info/rfc3758>.
[RFC5129] - Davie, B., Briscoe, B., and J. Tay, "Explicit Congestion [RFC5129] - Davie, B., Briscoe, B., and J. Tay, "Explicit Congestion
Marking in MPLS", RFC 5129, DOI 10.17487/RFC5129, January 2008, Marking in MPLS", RFC 5129, DOI 10.17487/RFC5129, January 2008,
<https://www.rfc-editor.org/info/rfc5129>. <https://www.rfc-editor.org/info/rfc5129>.
[RFC6040] - Briscoe, B., "Tunnelling of Explicit Congestion [RFC6040] - Briscoe, B., "Tunnelling of Explicit Congestion
Notification", RFC 6040, DOI 10.17487/RFC6040, November 2010, Notification", RFC 6040, DOI 10.17487/RFC6040, November 2010,
<http://www.rfc-editor.org/info/rfc6040>. <http://www.rfc-editor.org/info/rfc6040>.
[RFC7011] - Claise, B., Ed., Trammell, B., Ed., and P. Aitken, [RFC7011] - Claise, B., Ed., Trammell, B., Ed., and P. Aitken,
"Specification of the IP Flow Information Export (IPFIX) "Specification of the IP Flow Information Export (IPFIX)
Protocol for the Exchange of Flow Information", STD 77, RFC Protocol for the Exchange of Flow Information", STD 77, RFC
7011, DOI 10.17487/RFC7011, September 2013, <https://www.rfc- 7011, DOI 10.17487/RFC7011, September 2013, <https://www.rfc-
editor.org/info/rfc7011>. editor.org/info/rfc7011>.
[RFC7013] - Trammell, B. and B. Claise, "Guidelines for Authors and
Reviewers of IP Flow Information Export (IPFIX) Information
Elements", BCP 184, RFC 7013, DOI 10.17487/RFC7013, September
2013, <https://www.rfc-editor.org/info/rfc7013>.
[RFC7567] - Baker, F., Ed., and G. Fairhurst, Ed., "IETF [RFC7567] - Baker, F., Ed., and G. Fairhurst, Ed., "IETF
Recommendations Regarding Active Queue Management", BCP 197, Recommendations Regarding Active Queue Management", BCP 197,
RFC 7567, DOI 10.17487/RFC7567, July 2015, <http://www.rfc- RFC 7567, DOI 10.17487/RFC7567, July 2015, <http://www.rfc-
editor.org/info/rfc7567>. editor.org/info/rfc7567>.
[RFC8174] - Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC [RFC8174] - Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May
2017, <http://www.rfc-editor.org/info/rfc8174> 2017, <http://www.rfc-editor.org/info/rfc8174>
[RFC8300] - Quinn, P., Ed., Elzur, U., Ed., and C. Pignataro, Ed., [RFC8300] - Quinn, P., Ed., Elzur, U., Ed., and C. Pignataro, Ed.,
"Network Service Header (NSH)", RFC 8300, DOI 10.17487/RFC8300, "Network Service Header (NSH)", RFC 8300, DOI 10.17487/RFC8300,
January 2018, <https://www.rfc-editor.org/info/rfc8300>. January 2018, <https://www.rfc-editor.org/info/rfc8300>.
[TunnelCongFeedback] - Wei, X., Li, Y., Boutros, S., and L. Deng, INTERNET-DRAFT NSH ECN & Congestion Feedback
"Tunnel Congestion Feedback", draft-ietf-tsvwg-tunnel-
congestion-feedback, work in progress.
Informative References Informative References
[RFC4301] - Kent, S. and K. Seo, "Security Architecture for the [RFC4301] - Kent, S. and K. Seo, "Security Architecture for the
Internet Protocol", RFC 4301, DOI 10.17487/RFC4301, December Internet Protocol", RFC 4301, DOI 10.17487/RFC4301, December
2005, <https://www.rfc-editor.org/info/rfc4301>. 2005, <https://www.rfc-editor.org/info/rfc4301>.
INTERNET-DRAFT NSH ECN & Congestion Feedback
[RFC4960] - Stewart, R., Ed., "Stream Control Transmission Protocol", [RFC4960] - Stewart, R., Ed., "Stream Control Transmission Protocol",
RFC 4960, DOI 10.17487/RFC4960, September 2007, RFC 4960, DOI 10.17487/RFC4960, September 2007,
<https://www.rfc-editor.org/info/rfc4960>. <https://www.rfc-editor.org/info/rfc4960>.
[RFC7665] - Halpern, J., Ed., and C. Pignataro, Ed., "Service
Function Chaining (SFC) Architecture", RFC 7665, DOI
10.17487/RFC7665, October 2015, <https://www.rfc-
editor.org/info/rfc7665>.
[RFC7012] - Claise, B., Ed., and B. Trammell, Ed., "Information Model [RFC7012] - Claise, B., Ed., and B. Trammell, Ed., "Information Model
for IP Flow Information Export (IPFIX)", RFC 7012, DOI for IP Flow Information Export (IPFIX)", RFC 7012, DOI
10.17487/RFC7012, September 2013, <https://www.rfc- 10.17487/RFC7012, September 2013, <https://www.rfc-
editor.org/info/rfc7012>. editor.org/info/rfc7012>.
[RFC7665] - Halpern, J., Ed., and C. Pignataro, Ed., "Service
Function Chaining (SFC) Architecture", RFC 7665, DOI
10.17487/RFC7665, October 2015, <https://www.rfc-
editor.org/info/rfc7665>.
[RFC8311] - Black, D., "Relaxing Restrictions on Explicit Congestion [RFC8311] - Black, D., "Relaxing Restrictions on Explicit Congestion
Notification (ECN) Experimentation", RFC 8311, DOI Notification (ECN) Experimentation", RFC 8311, DOI
10.17487/RFC8311, January 2018, <https://www.rfc- 10.17487/RFC8311, January 2018, <https://www.rfc-
editor.org/info/rfc8311>. editor.org/info/rfc8311>.
[ecnL4S] - De Schepper, K., and B. Briscoe, "Identifying Modified [ecnL4S] - De Schepper, K., and B. Briscoe, "Identifying Modified
Explicit Congestion Notification (ECN) Semantics for Ultra-Low Explicit Congestion Notification (ECN) Semantics for Ultra-Low
Queuing Delay (L4S)", draft-ietf-tsvwg-ecn-l4s-id, work in Queuing Delay (L4S)", draft-ietf-tsvwg-ecn-l4s-id, work in
progress. progress.
skipping to change at page 20, line 24 skipping to change at page 32, line 24
Tel: +1-508-333-2270 Tel: +1-508-333-2270
Email: d3e3e3@gmail.com Email: d3e3e3@gmail.com
Bob Briscoe Bob Briscoe
Independent Independent
UK UK
Email: ietf@bobbriscoe.net Email: ietf@bobbriscoe.net
URI: http://bobbriscoe.net/ URI: http://bobbriscoe.net/
Yizhou Li
Huawei Technologies
101 Software Avenue,
Nanjing 210012, P. R China
Phone: +86-25-56624584
EMail: liyizhou@huawei.com
Andrew G. Malis Andrew G. Malis
Independent Malis Consulting
Email: agmalis@gmail.com Email: agmalis@gmail.com
Xinpeng Wei
Huawei Technologies
Beiqing Rd. Z-park No.156, Haidian District,
Beijing, 100095, P. R. China
EMail: weixinpeng@huawei.com
INTERNET-DRAFT NSH ECN & Congestion Feedback INTERNET-DRAFT NSH ECN & Congestion Feedback
Copyright and IPR Provisions Copyright and IPR Provisions
Copyright (c) 2020 IETF Trust and the persons identified as the Copyright (c) 2021 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
 End of changes. 61 change blocks. 
119 lines changed or deleted 623 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/