summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc6627.txt
diff options
context:
space:
mode:
authorThomas Voss <mail@thomasvoss.com> 2024-11-27 20:54:24 +0100
committerThomas Voss <mail@thomasvoss.com> 2024-11-27 20:54:24 +0100
commit4bfd864f10b68b71482b35c818559068ef8d5797 (patch)
treee3989f47a7994642eb325063d46e8f08ffa681dc /doc/rfc/rfc6627.txt
parentea76e11061bda059ae9f9ad130a9895cc85607db (diff)
doc: Add RFC documents
Diffstat (limited to 'doc/rfc/rfc6627.txt')
-rw-r--r--doc/rfc/rfc6627.txt1123
1 files changed, 1123 insertions, 0 deletions
diff --git a/doc/rfc/rfc6627.txt b/doc/rfc/rfc6627.txt
new file mode 100644
index 0000000..97f0457
--- /dev/null
+++ b/doc/rfc/rfc6627.txt
@@ -0,0 +1,1123 @@
+
+
+
+
+
+
+Internet Engineering Task Force (IETF) G. Karagiannis
+Request for Comments: 6627 University of Twente
+Category: Informational K. Chan
+ISSN: 2070-1721 Consultant
+ T. Moncaster
+ University of Cambridge
+ M. Menth
+ University of Tuebingen
+ P. Eardley
+ B. Briscoe
+ BT
+ July 2012
+
+
+ Overview of Pre-Congestion Notification Encoding
+
+Abstract
+
+ The objective of Pre-Congestion Notification (PCN) is to protect the
+ quality of service (QoS) of inelastic flows within a Diffserv domain.
+ On every link in the PCN-domain, the overall rate of PCN-traffic is
+ metered, and PCN-packets are appropriately marked when certain
+ configured rates are exceeded. Egress nodes provide decision points
+ with information about the PCN-marks of PCN-packets that allows them
+ to take decisions about whether to admit or block a new flow request,
+ and to terminate some already admitted flows during serious
+ pre-congestion.
+
+ The PCN working group explored a number of approaches for encoding
+ this pre-congestion information into the IP header. This document
+ provides details of those approaches along with an explanation of the
+ constraints that apply to any solution.
+
+Status of This Memo
+
+ This document is not an Internet Standards Track specification; it is
+ published for informational purposes.
+
+ 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/rfc6627.
+
+
+
+Karagiannis, et al. Informational [Page 1]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+Copyright Notice
+
+ Copyright (c) 2012 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.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Karagiannis, et al. Informational [Page 2]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+Table of Contents
+
+ 1. Introduction ....................................................4
+ 2. General PCN Encoding Requirements ...............................5
+ 2.1. Metering and Marking Algorithms ............................5
+ 2.2. Approaches for PCN-Based Admission Control and Flow
+ Termination ................................................5
+ 2.2.1. Dual Marking (DM) ...................................5
+ 2.2.2. Single Marking (SM) .................................6
+ 2.2.3. Packet-Specific Dual Marking (PSDM) .................7
+ 2.2.4. Preferential Packet Dropping ........................8
+ 3. Encoding Constraints ............................................9
+ 3.1. Structure of the DS Field ..................................9
+ 3.2. Constraints from the DS Field ..............................9
+ 3.2.1. General Scarcity of DSCPs ...........................9
+ 3.2.2. Handling of the DSCP in Tunneling Rules ............10
+ 3.2.3. Restoration of Original DSCPs at the Egress Node ...10
+ 3.3. Constraints from the ECN Field ............................11
+ 3.3.1. Structure and Use of the ECN Field .................11
+ 3.3.2. Redefinition of the ECN Field ......................12
+ 3.3.3. Handling of the ECN Field in Tunneling Rules .......12
+ 3.3.3.1. Limited-Functionality Option ..............12
+ 3.3.3.2. Full-Functionality Option .................13
+ 3.3.3.3. Tunneling with IPSec ......................13
+ 3.3.3.4. ECN Tunneling .............................13
+ 3.3.4. Restoration of the Original ECN Field at
+ the PCN-Egress-Node ................................14
+ 4. Comparison of Encoding Options .................................15
+ 4.1. Baseline Encoding .........................................15
+ 4.2. Encoding with 1 DSCP Providing 3 States ...................16
+ 4.3. Encoding with 2 DSCPs Providing 3 or More States ..........16
+ 4.4. Encoding for Packet-Specific Dual Marking (PSDM) ..........16
+ 4.5. Standardized Encodings ....................................17
+ 5. Conclusion .....................................................17
+ 6. Security Implications ..........................................17
+ 7. Acknowledgements ...............................................17
+ 8. References .....................................................18
+ 8.1. Normative References ......................................18
+ 8.2. Informative References ....................................18
+
+
+
+
+
+
+
+
+
+
+
+
+Karagiannis, et al. Informational [Page 3]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+1. Introduction
+
+ The objective of Pre-Congestion Notification (PCN) [RFC5559] is to
+ protect the quality of service (QoS) of inelastic flows within a
+ Diffserv domain in a simple, scalable, and robust fashion. Two
+ mechanisms are used: admission control (AC), to decide whether to
+ admit or block a new flow request, and flow termination (FT), to
+ terminate some existing flows during serious pre-congestion. To
+ achieve this, the overall rate of PCN-traffic is metered on every
+ link in the domain, and PCN-packets are appropriately marked when
+ certain configured rates are exceeded. These configured rates are
+ below the rate of the link. Thus, boundary nodes are notified of a
+ potential overload before any real congestion occurs (hence "pre-
+ congestion notification").
+
+ [RFC5670] provides for two metering and marking functions that are
+ configured with reference rates. Threshold-marking marks all PCN-
+ packets once their traffic rate on a link exceeds the configured
+ reference rate (PCN-threshold-rate). Excess-traffic-marking marks
+ only those PCN-packets that exceed the configured reference rate
+ (PCN-excess-rate).
+
+ Egress nodes monitor the PCN-marks of received PCN-packets and
+ provide information about the PCN-marks to the decision points that
+ take decisions about the flow admission and termination on this basis
+ [RFC6661] [RFC6662].
+
+ This PCN information has to be encoded into the IP header. This
+ requires at least three different codepoints: one for PCN-traffic
+ that has not been marked, one for traffic that has been marked by the
+ threshold meter, and one for traffic that has been marked by the
+ excess-traffic-meter.
+
+ Since unused codepoints are not available for that purpose in the IP
+ header (versions 4 and 6), already used codepoints must be reused,
+ which imposes additional constraints on the design and applicability
+ of PCN-based AC and FT. This document summarizes these issues as a
+ record of the PCN working group discussions and for the benefit of
+ the wider IETF community.
+
+ In Section 2, we briefly point out the PCN encoding requirement
+ imposed by metering and marking algorithms, and by special packet
+ drop strategies. The Differentiated Services field (6 bits -- see
+ [RFC3260] updating [RFC2474] in this respect) and the Explicit
+ Congestion Notification (ECN) field (2 bits) [RFC3168] have been
+ selected to be reused for encoding of PCN-marks (PCN encoding). In
+ Section 3, we briefly explain the constraints imposed by this
+ decision. In Section 4, we review different PCN encodings considered
+
+
+
+Karagiannis, et al. Informational [Page 4]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+ by the PCN working group that allow different implementations of PCN-
+ based AC and FT, which have different pros and cons.
+
+2. General PCN Encoding Requirements
+
+ The choice of metering and marking algorithms and the way they are
+ applied to PCN-based AC and FT impose certain requirements on PCN
+ encoding.
+
+2.1. Metering and Marking Algorithms
+
+ Two different metering and marking algorithms are defined in
+ [RFC5670]: excess-traffic-marking and threshold-marking. They are
+ both configured with reference rates that are termed PCN-excess-rate
+ and PCN-threshold-rate, respectively. When traffic for PCN-flows
+ enters a PCN-domain, the PCN-ingress-node sets a codepoint in the IP
+ header indicating that the packet is subject to PCN-metering and PCN-
+ marking and that it is not-marked (NM). The two metering and marking
+ algorithms possibly re-mark PCN-packets as excess-traffic-marked
+ (ETM) or threshold-marked (ThM).
+
+ Excess-traffic-marking ETM-marks all not-ETM-marked PCN-traffic that
+ is in excess of the PCN-excess-rate. To that end, the algorithm
+ needs to know whether a PCN-packet has already been marked with ETM
+ or not. Threshold-marking re-marks all not-marked PCN-traffic to ThM
+ when the rate of PCN-traffic exceeds the PCN-threshold-rate.
+ Therefore, it does not need knowledge of the prior marking state of
+ the packet for metering, but such knowledge is needed for packet
+ re-marking.
+
+2.2. Approaches for PCN-Based Admission Control and Flow Termination
+
+ We briefly review three different approaches to implement PCN-based
+ AC and FT and derive their requirements for PCN encoding.
+
+2.2.1. Dual Marking (DM)
+
+ The intuitive approach for PCN-based AC and FT requires that
+ threshold and excess-traffic-marking are simultaneously activated on
+ all links of a PCN-domain, and their reference rates are configured
+ with the PCN-admissible-rate (AR) and the PCN-supportable-rate (SR),
+ respectively. Threshold-marking meters all PCN-traffic, but re-marks
+ only NM-traffic to ThM. Excess-traffic-marking meters only NM- and
+ ThM-traffic and re-marks it to ETM. Thus, both meters and markers
+ need to identify PCN-packets and their exact PCN codepoint. We call
+ this marking behavior dual marking (DM) and Figure 1 illustrates all
+ possible re-marking actions.
+
+
+
+
+Karagiannis, et al. Informational [Page 5]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+ NM -----------> ThM
+ \ /
+ \ /
+ \ /
+ > ETM <
+
+ Figure 1: PCN Codepoint Re-Marking Diagram for Dual Marking (DM)
+
+ Dual marking is used to support the Controlled-Load PCN (CL-PCN) edge
+ behavior [RFC6661]. We briefly summarize the concept. All actions
+ are performed on per-ingress-egress-aggregate basis. The egress node
+ measures the rate of NM-, ThM-, and ETM-traffic in regular intervals
+ and sends them as PCN egress reports to the AC and FT decision point.
+
+ If the proportion of re-marked (ThM- and ETM-) PCN-traffic is larger
+ than a defined threshold, called CLE-limit, the decision point blocks
+ new flow requests until new PCN egress reports are received;
+ otherwise, it admits them. With CL-PCN, AC is rather robust with
+ regard to the value chosen for the CLE-limit. FT works as follows.
+ If the ETM-traffic rate is positive, the decision point triggers the
+ ingress node to send a newly measured rate of the sent PCN-traffic.
+ The decision point calculates the rate of PCN-traffic that needs to
+ be terminated by
+
+ termination-rate = PCN-sent-rate -
+ (rate-of-NM-traffic + rate-of-ThM-traffic)
+
+ and terminates an appropriate set of flows. CL-PCN is accurate
+ enough for most application scenarios and its implementation
+ complexity is acceptable, therefore, it is a preferred implementation
+ option for PCN-based AC and FT.
+
+2.2.2. Single Marking (SM)
+
+ Single marking uses only excess-traffic-marking whose reference rate
+ is set to the PCN-admissible-rate (AR) on all links of the PCN-
+ domain. Figure 2 illustrates all possible re-marking actions.
+
+ NM --------> ETM
+
+ Figure 2: PCN Codepoint Re-Marking Diagram for Single Marking (SM)
+
+ Single marking is used to support the Single-Marking PCN (SM-PCN)
+ edge behavior [RFC6662]. We briefly summarize the concept.
+
+
+
+
+
+
+
+Karagiannis, et al. Informational [Page 6]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+ AC works essentially in the same way as with CL-PCN, but AC is
+ sensitive to the value of the CLE-limit. Also FT works similarly to
+ CL-PCN. The PCN-supportable-rate (SR) is not configured on any link,
+ but is implicitly
+
+ SR=u*AR
+
+ in the PCN-domain using a network-wide constant u. The decision
+ point triggers FT only if the rate-of-NM-traffic * u < rate-of-NM-
+ traffic + rate-of-ETM-traffic. Then it requests the PCN-sent-rate
+ from the corresponding PCN-ingress-node and calculates the amount of
+ PCN-traffic to be terminated by
+
+ termination-rate = PCN-sent-rate - rate-of-NM-traffic * u,
+
+ and terminates an appropriate set of flows.
+
+ SM-PCN requires only two PCN codepoints and only excess-traffic-
+ marking is needed, which means that it might be earlier to the market
+ than CL-PCN since some chipsets do not yet support threshold-marking.
+
+ However, it only works well when ingress-egress-aggregates have a
+ high PCN-packet rate, which is not always the case. Otherwise, over-
+ admission and over-termination may occur [Menth12] [Menth10].
+
+2.2.3. Packet-Specific Dual Marking (PSDM)
+
+ Packet-specific dual marking (PSDM) uses threshold-marking and
+ excess-traffic-marking, whose reference rates are configured with the
+ PCN-admissible-rate (AR) and the PCN-supportable-rate (SR),
+ respectively. There are two different types of not-marked packets:
+ those that are subject to threshold-marking (not-ThM), and those that
+ are subject to excess-traffic-marking (not-ETM). Both not-ThM and
+ not-ETM are used for PCN-traffic that is not yet re-marked (like NM
+ with single and dual marking), and their specific use is determined
+ by higher-layer information (see below). Threshold-marking meters
+ all PCN-traffic and re-marks only not-ThM packets to PCN-marked (PM).
+ In contrast, excess-traffic-marking meters only not-ETM packets and
+ possibly re-marks them to PM, too. Again, both meters and markers
+ need to identify PCN-packets and their exact PCN codepoint. Figure 3
+ illustrates all possible re-marking actions.
+
+
+
+
+
+
+
+
+
+
+Karagiannis, et al. Informational [Page 7]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+ not-ThM not-ETM
+ \ /
+ \ /
+ \ /
+ > PM <
+
+ Figure 3: PCN Codepoint Re-Marking Diagram for
+ Packet-Specific Dual Marking (PSDM)
+
+ An edge behavior for PSDM has been presented in [Menth09] and [PCN-
+ MS-AC]. We call it PSDM-PCN. In contrast to CL-PCN and SM-PCN, AC
+ is realized by reusing initial signaling messages for probing
+ purposes. The assumption is that admission requests are triggered
+ by an external end-to-end signaling protocol, e.g., RSVP [RFC2205].
+ Signaling traffic for a flow is also labeled as PCN-traffic, and if
+ an initial signaling message traverses the PCN-domain and is
+ re-marked, then the corresponding admission request is blocked.
+ This is a lightweight probing mechanism that does not generate
+ extra traffic and does not introduce probing delay. In PSDM-PCN,
+ PCN-ingress-nodes label initial signaling messages as not-ThM, and
+ threshold-marking configured with admissible rates possibly
+ re-marks them to PM. Data packets are labeled with not-ETM, and
+ excess-traffic-marking configured with supportable rates possibly
+ re-marks them to PM, too, so that the same algorithms for FT may be
+ used as for CL-PCN and SM-PCN.
+
+ PSDM has three major disadvantages. First, signalling traffic
+ needs to be marked with a PCN-enabled DSCP so that it either shares
+ the same queue as data traffic, which may not be desired by some
+ operators, or multiple PCN-enabled DSCPs are needed, which is not a
+ pragmatic solution. Second, reservations for PCN-flows need to be
+ triggered by a path-coupled end-to-end signalling protocol, which
+ restricts the choice of the signalling protocol. And third, the
+ selected signalling protocols must be adapted to take advantage of
+ PCN-marked signalling messages for admission decisions, which
+ incurs some extra effort before PSDM can be used.
+
+ The advantages are that the AC algorithm is more accurate than the
+ one of CL-PCN and SM-PCN [Menth12], that often only a single DSCP
+ is needed, and that the new tunneling rules in [RFC6040] are not
+ needed for deployment (Section 3.3.3).
+
+2.2.4. Preferential Packet Dropping
+
+ The termination algorithms described in [RFC6661] and [RFC6662]
+ require the preferential dropping of ETM-marked packets to avoid
+ over-termination in the case of packet loss. An analysis
+ explaining this phenomenon can be found in Section 4 of [Menth10].
+
+
+
+Karagiannis, et al. Informational [Page 8]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+ Thus, [RFC5670] recommends that ETM-marked packets "SHOULD be
+ preferentially dropped". As a consequence, droppers must have
+ access to the exact marking information of PCN-packets.
+
+3. Encoding Constraints
+
+ The PCN working group decided to use a combination of the 6-bit
+ Differentiated Services (DS) field and the ECN field for the
+ encoding of the PCN-marks (see [RFC6660]). This section describes
+ the criteria that are used to compare the resulting encoding
+ options described in Section 4.
+
+3.1. Structure of the DS Field
+
+ Figure 4 shows the structure of the DS and ECN fields. [RFC0793]
+ defined the 8-bit TOS octet and [RFC2474] redefined it as the DS
+ field, including the two least significant bits as currently unused
+ (CU). [RFC3168] assigned the two CU bits to ECN and [RFC3260]
+ redefined the DS field as only the most significant 6-bits of the
+ (former) IPv4 TOS octet, thus separating the two-bit ECN field from
+ the DS field.
+
+ 0 1 2 3 4 5 6 7
+ +---+---+---+---+---+---+---+---+
+ | DS | ECN |
+ +---+---+---+---+---+---+---+---+
+
+ DS: Differentiated Services field [RFC2474], [RFC3260]
+ ECN: ECN field [RFC3168]
+
+ Figure 4: The Structure of the DS and ECN Fields
+
+3.2. Constraints from the DS Field
+
+ The Differentiated Services Codepoint (DSCP) set in the DS field
+ indicates the per-hop behavior (PHB), i.e., the treatment IP packets
+ receive from nodes in a DS domain. Multiple DSCPs may indicate the
+ same PHB. PCN-traffic is high-priority traffic, which uses a DSCP
+ (or DSCPs) that indicates a PHB with preferred treatment.
+
+3.2.1. General Scarcity of DSCPs
+
+ As the number of unused DSCPs is small, PCN encoding should use only
+ one additional DSCP for each DSCP originally used to indicate the PHB
+ and in any case should not use more than two. Therefore, the DSCP
+ should be used to indicate that traffic is subject to PCN-metering
+ and PCN-marking, but not to differentiate various PCN-markings.
+
+
+
+
+Karagiannis, et al. Informational [Page 9]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+3.2.2. Handling of the DSCP in Tunneling Rules
+
+ PCN encoding must be chosen in such a way that PCN-traffic can be
+ tunneled within a PCN-domain without any impact on PCN-metering and
+ re-marking. In the following, the "inner header" refers to the
+ header of the encapsulated packet and the "outer header" refers to
+ the encapsulating header.
+
+ [RFC2983] provides two tunneling modes for Differentiated Services
+ networks. The uniform model copies the DSCP from the inner header to
+ the outer header upon encapsulation, and it copies the DSCP from the
+ outer header to the inner header upon decapsulation. This assures
+ that changes applied to the DSCP field survive encapsulation and
+ decapsulation. In contrast, the pipe model ignores the content of
+ the DSCP field in the outer header upon decapsulation. Therefore,
+ decapsulation erases changes applied to the DSCP along the tunnel.
+ As a consequence, only the uniform model may be used for tunneling
+ PCN-traffic within a PCN-domain, if PCN encoding uses more than a
+ single DSCP.
+
+3.2.3. Restoration of Original DSCPs at the Egress Node
+
+ If PCN-marking does not alter the original DSCP, the traffic leaves
+ the PCN-domain with its original DSCP. However, if the PCN-marking
+ alters the DSCP, then some additional technique is needed to restore
+ the original DSCP. A few possibilities are discussed:
+
+ 1. Each Diffserv class using PCN uses a different set of DSCPs.
+ Therefore, if there are M DSCPs using PCN and PCN encoding uses N
+ different DSCPs, N*M DSCPs are needed. This solution may work
+ well in IP networks. However, when PCN is applied to MPLS
+ networks or other layers restricted to 8 QoS classes and
+ codepoints, this solution fails due to the extreme shortage of
+ available DSCPs.
+
+ 2. The original DSCP for the packets of a flow is signaled to the
+ egress node. No suitable signaling protocol has been developed
+ and, therefore, it is not clear whether this approach could work.
+
+ 3. PCN-traffic is tunneled across the PCN-domain. The pipe-
+ tunneling model is applied, so the original DSCP is restored
+ after decapsulation. However, tunneling across a PCN-domain adds
+ an additional IP header and reduces the maximum transfer unit
+ (MTU) from the perspective of the user. GRE, MPLS, or Ethernet
+ using pseudowires are potential solutions that scale well in
+ backbone networks.
+
+
+
+
+
+Karagiannis, et al. Informational [Page 10]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+ The most appropriate option depends on the specific circumstances an
+ operator faces.
+
+ o Option 1 is most suitable unless there is a shortage of available
+ DSCPs.
+
+ o Option 3 is suitable where the reduction of MTU is not liable to
+ cause issues.
+
+3.3. Constraints from the ECN Field
+
+ This section briefly reviews the structure and use of the ECN field.
+ The ECN field may be redefined, but certain constraints apply
+ [RFC4774]. The impact on PCN deployment is discussed, as well as the
+ constraints imposed by various tunneling rules on the persistence of
+ PCN-marks after decapsulation and its impact on possible re-marking
+ actions.
+
+3.3.1. Structure and Use of the ECN Field
+
+ Some transport protocols, like TCP, can typically use packet drops as
+ an indication of congestion in the Internet. The idea of Explicit
+ Congestion Notification (ECN) [RFC3168] is that routers provide a
+ congestion indication for incipient congestion, where the
+ notification can sometimes be through ECN-marking (and re-marking)
+ packets rather than dropping them. Figure 5 summarizes the ECN
+ codepoints defined [RFC3168].
+
+ +-----+-----+
+ | ECN FIELD |
+ +-----+-----+
+ 0 0 Not-ECT
+ 0 1 ECT(1)
+ 1 0 ECT(0)
+ 1 1 CE
+
+ Figure 5: ECN Codepoints within the ECN Field
+
+ ECT stands for "ECN-capable transport" and indicates that the senders
+ and receivers of a flow understand ECN semantics. Packets of other
+ flows are labeled with Not-ECT. To indicate congestion to a
+ receiver, routers may re-mark ECT(1) or ECT(0) labeled packets to CE,
+ which stands for "congestion experienced". Two different ECT
+ codepoints were introduced "to protect against accidental or
+ malicious concealment of marked packets from the TCP sender", which
+ may be the case with cheating receivers [RFC3540].
+
+
+
+
+
+Karagiannis, et al. Informational [Page 11]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+3.3.2. Redefinition of the ECN Field
+
+ The ECN field may be redefined for other purposes and [RFC4774] gives
+ guidelines for that. Essentially, Not-ECT-marked packets must never
+ be re-marked to ECT or CE because Not-ECT-capable end systems do not
+ reduce their transmission rate when receiving CE-marked packets.
+ This is a threat to the stability of the Internet.
+
+ Moreover, CE-marked packets must not be re-marked to Not-ECT or ECT,
+ because then ECN-capable end systems cannot reduce their transmission
+ rate. The reuse of the ECN field for PCN encoding has some impact on
+ the deployment of PCN. First, routers within a PCN-domain must not
+ apply ECN re-marking when the ECN field has PCN semantics. Second,
+ before a PCN-packet leaves the PCN-domain, the egress nodes must
+ either: (A) reset the ECN field of the packet to the content it had
+ when entering the PCN-domain or (B) reset its ECN field to Not-ECT.
+ According to Section 3.3.3, tunneling ECN traffic through a PCN-
+ domain may help to implement (A). When (B) applies, CE-marked
+ packets must never become PCN-packets within a PCN-domain, as the
+ egress node resets their ECN field to Not-ECT. The ingress node may
+ drop such traffic instead.
+
+3.3.3. Handling of the ECN Field in Tunneling Rules
+
+ When packets are encapsulated, the ECN field of the inner header may
+ or may not be copied to the ECN field of the outer header; upon
+ decapsulation, the ECN field of the outer header may or may not be
+ copied from the ECN field of the outer header to the ECN field of the
+ inner header. Various tunneling rules with different treatment of
+ the ECN field exist. Two different modes are defined in [RFC3168]
+ for IP-in-IP tunnels and a third one in [RFC4301] for IP-in-IPsec
+ tunnels. [RFC6040] updates both of these RFCs to rationalize them
+ into one consistent approach.
+
+3.3.3.1. Limited-Functionality Option
+
+ The limited-functionality option has been defined in [RFC3168]. Upon
+ encapsulation, the ECN field of the outer header is generally set to
+ Not-ECT. Upon decapsulation, the ECN field of the inner header
+ remains unchanged.
+
+ Since this tunneling mode loses information upon encapsulation and
+ decapsulation, it cannot be used for tunneling PCN-traffic within a
+ PCN-domain. However, the PCN ingress may use this mode to tunnel
+ traffic with ECN semantics to the PCN egress to preserve the ECN
+ field in the inner header while the ECN field of the outer header is
+ used with PCN semantics within the PCN-domain.
+
+
+
+
+Karagiannis, et al. Informational [Page 12]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+3.3.3.2. Full-Functionality Option
+
+ The full-functionality option has been defined in [RFC3168]. Upon
+ encapsulation, the ECN field of the inner header is copied to the
+ outer header unless the ECN field of the inner header carries CE. In
+ that case, the ECN field of the outer header is set to ECT(0). This
+ choice has been made for security reasons, to disable the ECN fields
+ of the outer header as a covert channel. Upon decapsulation, the ECN
+ field of the inner header remains unchanged unless the ECN field of
+ the outer header carries CE. In that case, the ECN field of the
+ inner header is also set to CE.
+
+ This mode imposes the following constraints on PCN-metering and PCN-
+ marking. First, PCN must re-mark the ECN field only to CE, because
+ any other information is not copied to the inner header upon
+ decapsulation and will be lost. Second, CE information in
+ encapsulated packet headers is invisible for routers along a tunnel.
+ Threshold-marking does not require information about whether PCN-
+ packets have already been marked and would work when CE denotes that
+ packets are marked. In contrast, excess-traffic-marking requires
+ information about already excess-traffic-marked packets and cannot be
+ supported with this tunneling mode. Furthermore, this tunneling mode
+ cannot be used when marked or not-marked packets should be
+ preferentially dropped, because the PCN-marking information is
+ possibly not visible in the outer header of a packet.
+
+3.3.3.3. Tunneling with IPSec
+
+ Tunneling has been defined in Section 5.1.2.1 of [RFC4301]. Upon
+ encapsulation, the ECN field of the inner header is copied to the ECN
+ field of the outer header. Decapsulation works as for the full-
+ functionality option described in Section 3.3.3.2. Tunneling with
+ IPsec also requires that PCN re-mark the ECN field only to CE because
+ any other information is not copied to the inner header upon
+ decapsulation and is lost. In contrast to Section 3.3.3.2, with
+ IPsec tunnels, CE marks of tunneled PCN-traffic remain visible for
+ routers along the tunnel and to their meters, markers, and droppers.
+
+3.3.3.4. ECN Tunneling
+
+ New tunneling rules for ECN are specified in [RFC6040], which updates
+ [RFC3168] and [RFC4301]. These rules provide a consistent and
+ rational approach to encapsulation and decapsulation.
+
+ With the normal mode, the ECN field of the inner header is copied to
+ the ECN field of the outer header on encapsulation. In compatibility
+ mode, the ECN field of the outer header is reset to Not-ECT.
+
+
+
+
+Karagiannis, et al. Informational [Page 13]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+ Upon decapsulation, the scheme specified in [RFC6040] and shown in
+ Figure 6 is applied. Thus, re-marking encapsulated Not-ECT packets
+ to any other codepoint would not survive decapsulation. Therefore,
+ Not-ECT cannot be used for PCN encoding. Furthermore, re-marking
+ encapsulated ECT(0) packets to ECT(1) or CE survives decapsulation,
+ but not vice-versa, and re-marking encapsulated ECT(1) packets to CE
+ also survives decapsulation, but not vice-versa. Certain
+ combinations of inner and outer ECN fields cannot result from any
+ transition in any current or previous ECN tunneling specification.
+ These currently unused (CU) combinations are indicated in Figure 6 by
+ '(!!!)' or '(!)'; where '(!!!)' means the combination is CU and
+ always potentially dangerous, while '(!)' means it is CU and possibly
+ dangerous.
+
+ +---------+------------------------------------------------+
+ |Arriving | Arriving Outer Header |
+ | Inner +---------+------------+------------+------------+
+ | Header | Not-ECT | ECT(0) | ECT(1) | CE |
+ +---------+---------+------------+------------+------------+
+ | Not-ECT | Not-ECT |Not-ECT(!!!)|Not-ECT(!!!)| <drop>(!!!)|
+ | ECT(0) | ECT(0) | ECT(0) | ECT(1) | CE |
+ | ECT(1) | ECT(1) | ECT(1) (!) | ECT(1) | CE |
+ | CE | CE | CE | CE(!!!)| CE |
+ +---------+---------+------------+------------+------------+
+
+ The ECN field in the outgoing header is set to the codepoint at the
+ intersection of the appropriate arriving inner header (row) and
+ arriving outer header (column), or the packet is dropped where
+ indicated. Currently unused combinations are indicated by '(!!!)'
+ or '(!)'. ([RFC6040]; '(!!!)' means the combination is CU and always
+ potentially dangerous, while '(!)' means it is CU and possibly
+ dangerous.)
+
+ Figure 6: New IP in IP Decapsulation Behavior (from [RFC6040])
+
+3.3.4. Restoration of the Original ECN Field at the PCN-Egress-Node
+
+ As ECN is an end-to-end service, it is desirable that the egress node
+ of a PCN-domain restore the ECN field that a PCN-packet had at the
+ ingress node. There are basically two options. PCN-traffic may be
+ tunneled between ingress and egress node using limited functionality
+ tunnels (see Section 3.3.3.1). Then, PCN-marking is applied only to
+ the outer header, and the original ECN field is restored after
+ decapsulation. However, this reduces the MTU from the perspective of
+ the user. Another option is to use some intelligent encoding that
+ preserves the ECN codepoints. However, a viable solution is not
+ known.
+
+
+
+
+Karagiannis, et al. Informational [Page 14]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+4. Comparison of Encoding Options
+
+ The PCN working group has studied four different PCN encodings, which
+ redefine the ECN field. Figure 7 summarizes these PCN encodings.
+ One, or at most two, different DSCPs are used to indicate PCN-
+ traffic, and, only for these DSCPs, the semantics of the ECN field
+ are redefined within the PCN-domain.
+
+ When a PCN-ingress-node classifies a packet as a PCN-packet, it sets
+ its PCN-codepoint to not-marked (NM). Non-PCN-traffic can also use
+ the PCN-specific DSCP by setting the Not-PCN codepoint. Special per-
+ hop behavior, defined in [RFC5670], applies to PCN-traffic.
+
+ -----------------------------------------------------------------------
+| ECN Bits || 00 | 10 | 01 | 11 || DSCP |
+|==============++==========+==========+==========+==========++=========|
+| RFC 3168 || Not-ECT | ECT(0) | ECT(1) | CE || Any |
+|==============++==========+==========+==========+==========++=========|
+| Baseline || Not-PCN | NM | EXP | PM || PCN-n |
+|==============++==========+==========+==========+==========++=========|
+| 3-In-1 || Not-PCN | NM | ThM | ETM || PCN-n |
+|==============++==========+==========+==========+==========++=========|
+| 3-In-2 || Not-PCN | NM | CU | ThM || PCN-n |
+| ||----------+----------+----------+----------++---------|
+| || Not-PCN | CU | CU | ETM || PCN-m |
+|==============++==========+==========+==========+==========++=========|
+| PSDM || Not-PCN | Not-ETM | Not-ThM | PM || PCN-n |
+ -----------------------------------------------------------------------
+
+ Notes: PCN-n, PCN-m under the DSCP column denotes PCN-compatible
+ DSCPs, which may be chosen by the network operator. Not-PCN means
+ that packets are not PCN-enabled. NM means not-marked. CU means
+ currently unused.
+
+ Figure 7: Semantics of the ECN Field for Various Encoding Types
+
+4.1. Baseline Encoding
+
+ With baseline encoding [RFC5696], the NM codepoint can be re-marked
+ only to PCN-marked (PM). Excess-traffic-marking uses PM as ETM,
+ threshold-marking uses PM as ThM, and only one of the two marking
+ schemes can be used. So, baseline encoding supports SM-PCN.
+
+ The 01-codepoint is reserved for experimental purposes (EXP) and the
+ other defined PCN encoding schemes can be seen as extensions of
+ baseline encoding by appropriate redefinition of EXP. Baseline
+ encoding [RFC5696] works well with IPsec tunnels (see Section
+ 3.3.3.3).
+
+
+
+Karagiannis, et al. Informational [Page 15]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+4.2. Encoding with 1 DSCP Providing 3 States
+
+ PCN 3-state encoding uses a single DSCP (3-in-1 encoding, [RFC6660]),
+ extends the baseline encoding, and supports the simultaneous use of
+ both excess-traffic-marking and threshold-marking. 3-in-1 encoding
+ well supports the preferred CL-PCN and also SM-PCN.
+
+ The problem with 3-in-1 encoding is that the 10-codepoint does not
+ survive decapsulation with the tunneling options in Sections 3.3.3.1
+ - 3.3.3.3.
+
+ Therefore, the full 3-in-1 encoding may only be used for PCN-domains
+ implementing the new rules for ECN tunnelling [RFC6040] or for PCN-
+ domains without tunnels. Currently, it is not clear how fast the new
+ tunnelling rules will be deployed and this affects the applicability
+ of the full 3-in-1 encoding. Where PCN-domains do contain legacy
+ tunnel endpoints, a restricted subset of the full 3-in-1 encoding can
+ be used that omits the '01' codepoint.
+
+4.3. Encoding with 2 DSCPs Providing 3 or More States
+
+ PCN encoding using 2 DSCPs to provide 3 or more states (3-in-2
+ encoding, [PCN-3-in-2]) uses two different DSCPs to accommodate the
+ three required codepoints NM, ThM, and ETM. It leaves some
+ codepoints currently unused (CU), and also proposes a way to reuse
+ them to store some information about the content of the ECN field
+ before the packet enters the PCN-domain. 3-in-2 encoding works well
+ with IPsec tunnels (see Section 3.3.3.3). This type of encoding can
+ support both CL-PCN and SM-PCN schemes.
+
+ The disadvantage of 3-in-2 encoding is that it consumes two DSCPs.
+ Further, if PCN is applied to more than one Diffserv traffic class,
+ then two DSCPs are needed for each. Moreover, the direct application
+ of this encoding scheme to other technologies like MPLS, where even
+ fewer bits are available for the encoding of DSCPs, is more
+ difficult.
+
+4.4. Encoding for Packet-Specific Dual Marking (PSDM)
+
+ PCN encoding for packet-specific dual marking (PSDM) is designed to
+ support PSDM-PCN outlined in Section 2.2.3. It is the only proposal
+ that supports PCN-based AC and FT with only a single DSCP [PCN-PSDM]
+ in the presence of IPsec tunnels (see Section 3.3.3.3). PSDM
+ encoding also supports SM-PCN.
+
+
+
+
+
+
+
+Karagiannis, et al. Informational [Page 16]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+4.5. Standardized Encodings
+
+ The baseline encoding described in Section 4.1 is defined in
+ [RFC5696]. The intention was to allow for experimental encodings to
+ build upon this baseline. However, following the publication of
+ [RFC6040], the working group decided to change its approach and
+ instead standardize only one encoding (the 3-in-1 encoding [RFC6660]
+ described in Section 4.2). Rather than defining the 3-in-1 encoding
+ as a Standards Track extension to the existing baseline encoding
+ [RFC5696], it was agreed that it is best to define a new Standards
+ Track document that obsoletes [RFC5696].
+
+5. Conclusion
+
+ This document summarizes the PCN working group's exploration of a
+ number of approaches for encoding pre-congestion information into the
+ IP header. It is presented as an informational archive. It provides
+ details of those approaches along with an explanation of the
+ constraints that apply. The working group has concluded that the
+ "3-in-1" encoding should be published as a Standards Track RFC that
+ obsoletes the encoding specified in [RFC5696].
+
+ The reasoning is as follows. During the early life of the working
+ group, the working group decided on an approach of a standardized
+ "baseline" encoding [RFC5696], plus a series of experimental
+ encodings that would all build on the baseline encoding, each of
+ which would be useful in specific circumstances. However, after the
+ tunneling of ECN was standardized in [RFC6040], the PCN working group
+ decided on a different approach -- to recommend just one encoding,
+ the "3-in-1 encoding".
+
+ Although in theory "3-in-1" could be specified as a Standards Track
+ extension to the "baseline" encoding, the working group decided that
+ it would be cleaner to obsolete [RFC5696] and specify "3-in-1"
+ encoding in a new, stand-alone RFC.
+
+6. Security Implications
+
+ [RFC5559] provides a general description of the security
+ considerations for PCN. This memo does not introduce additional
+ security considerations.
+
+7. Acknowledgements
+
+ We would like to acknowledge the members of the PCN working group and
+ Gorry Fairhust for the discussions that generated and improved the
+ contents of this memo.
+
+
+
+
+Karagiannis, et al. Informational [Page 17]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+8. References
+
+8.1. Normative References
+
+ [RFC0793] Postel, J., "Transmission Control Protocol", STD 7, RFC
+ 793, September 1981.
+
+ [RFC2474] Nichols, K., Blake, S., Baker, F., and D. Black,
+ "Definition of the Differentiated Services Field (DS
+ Field) in the IPv4 and IPv6 Headers", RFC 2474,
+ December 1998.
+
+ [RFC3168] Ramakrishnan, K., Floyd, S., and D. Black, "The
+ Addition of Explicit Congestion Notification (ECN) to
+ IP", RFC 3168, September 2001.
+
+ [RFC4774] Floyd, S., "Specifying Alternate Semantics for the
+ Explicit Congestion Notification (ECN) Field", BCP 124,
+ RFC 4774, November 2006.
+
+8.2. Informative References
+
+ [PCN-MS-AC] Menth, M. and R. Geib, "Admission Control Using PCN-
+ Marked Signaling", Work in Progress, February 2011.
+
+ [PCN-3-in-2] Briscoe, B., Moncaster, T., and M. Menth, "A PCN
+ Encoding Using 2 DSCPs to Provide 3 or More States",
+ Work in Progress, March 2012.
+
+ [PCN-PSDM] Menth, M., Babiarz, J., Moncaster, T., and B. Briscoe,
+ "PCN Encoding for Packet-Specific Dual Marking (PSDM
+ Encoding)", Work in Progress, March 2012.
+
+ [RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and
+ S. Jamin, "Resource ReSerVation Protocol (RSVP) --
+ Version 1 Functional Specification", RFC 2205,
+ September 1997.
+
+ [RFC2983] Black, D., "Differentiated Services and Tunnels", RFC
+ 2983, October 2000.
+
+ [RFC3260] Grossman, D., "New Terminology and Clarifications for
+ Diffserv", RFC 3260, April 2002.
+
+ [RFC3540] Spring, N., Wetherall, D., and D. Ely, "Robust Explicit
+ Congestion Notification (ECN) Signaling with Nonces",
+ RFC 3540, June 2003.
+
+
+
+
+Karagiannis, et al. Informational [Page 18]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+ [RFC4301] Kent, S. and K. Seo, "Security Architecture for the
+ Internet Protocol", RFC 4301, December 2005.
+
+ [RFC5559] Eardley, P., Ed., "Pre-Congestion Notification (PCN)
+ Architecture", RFC 5559, June 2009.
+
+ [RFC5670] Eardley, P., Ed., "Metering and Marking Behaviour of
+ PCN-Nodes", RFC 5670, November 2009.
+
+ [RFC5696] Moncaster, T., Briscoe, B., and M. Menth, "Baseline
+ Encoding and Transport of Pre-Congestion Information",
+ RFC 5696, November 2009.
+
+ [RFC6040] Briscoe, B., "Tunnelling of Explicit Congestion
+ Notification", RFC 6040, November 2010.
+
+ [RFC6660] Briscoe, B., Moncaster, T., and M. Menth, "Encoding
+ Three Pre-Congestion Notification (PCN) States in the
+ IP Header Using a Single Diffserv Codepoint (DSCP)",
+ RFC 6660, July 2012.
+
+ [RFC6661] Charny, A., Huang, F., Karagiannis, G., Menth, M., and
+ T. Taylor, Ed., "Pre-Congestion Notification (PCN)
+ Boundary-Node Behavior for the Controlled Load (CL)
+ Mode of Operation", RFC 6661, July 2012.
+
+ [RFC6662] Charny, A., Zhang, J., Karagiannis, G., Menth, M., and
+ T. Taylor, "Pre-Congestion Notification (PCN) Boundary-
+ Node Behavior for the Single Marking (SM) Mode of
+ Operation", RFC 6662, July 2012.
+
+ [Menth09] Menth, M., Babiarz, J., and P. Eardley, "Pre-Congestion
+ Notification Using Packet-Specific Dual Marking", IEEE
+ Proceedings of the International Workshop on the
+ Network of the Future (Future-Net), Dresden/Germany,
+ June 2009.
+
+ [Menth12] Menth, M. and F. Lehrieder, "Performance of PCN-Based
+ Admission Control under Challenging Conditions",
+ IEEE/ACM Transactions on Networking, vol. 20, no. 2,
+ April 2012.
+
+ [Menth10] Menth, M. and F. Lehrieder, "PCN-Based Measured Rate
+ Termination", Computer Networks Journal, vol. 54, no.
+ 3, Sept. 2010
+
+
+
+
+
+
+Karagiannis, et al. Informational [Page 19]
+
+RFC 6627 Pre-Congestion Notification Encoding July 2012
+
+
+Authors' Addresses
+
+ Georgios Karagiannis
+ University of Twente
+ P.O. Box 217
+ 7500 AE Enschede,
+ The Netherlands
+ EMail: g.karagiannis@utwente.nl
+
+
+ Kwok Ho Chan
+ Consultant
+ EMail: khchan.work@gmail.com
+
+
+ Toby Moncaster
+ University of Cambridge Computer Laboratory
+ William Gates Building, J J Thomson Avenue
+ Cambridge, CB3 0FD
+ United Kingdom
+ EMail: Toby.Moncaster@cl.cam.ac.uk
+
+
+ Michael Menth
+ University of Tuebingen
+ Sand 13
+ 72076 Tuebingen
+ Germany
+
+ Phone: +49-7071-2970505
+ EMail: menth@uni-tuebingen.de
+
+
+ Philip Eardley
+ BT
+ B54/77, Sirius House Adastral Park Martlesham Heath
+ Ipswich, Suffolk IP5 3RE
+ United Kingdom
+ EMail: philip.eardley@bt.com
+
+
+ Bob Briscoe
+ BT
+ B54/77, Sirius House Adastral Park Martlesham Heath
+ Ipswich, Suffolk IP5 3RE
+ United Kingdom
+ EMail: bob.briscoe@bt.com
+
+
+
+
+Karagiannis, et al. Informational [Page 20]
+