<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.29 (Ruby 3.1.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-duke-tsvwg-ecn-aggregating-tunnels-01" category="bcp" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.17.1 -->
  <front>
    <title abbrev="ECN Over Aggregating Tunnels">ECN Over Aggregating Tunnels</title>
    <seriesInfo name="Internet-Draft" value="draft-duke-tsvwg-ecn-aggregating-tunnels-01"/>
    <author fullname="Martin Duke">
      <organization>Google</organization>
      <address>
        <email>martin.h.duke@gmail.com</email>
      </address>
    </author>
    <date/>
    <area>Transport</area>
    <workgroup>Transport Area Working Group</workgroup>
    <keyword>ecn</keyword>
    <keyword>tunnels</keyword>
    <abstract>
      <t>Explicit Congestion Notification (ECN) provides two bits in the IP header for
routers to signal congestion to endpoints without resorting to packet loss.
RFC6040 provided guidance for how IP-in-IP tunnels should transfer (ECN)
markings between inner and outer IP headers.  However, that document implicitly
assumes that no more than one inner packet is present in an outer packet.  As
numerous tunneling technologies have since emerged that break this assumption,
further guidance is needed.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://martinduke.github.io/ecn-aggregating-tunnels/draft-duke-tsvwg-ecn-aggregating-tunnels.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-duke-tsvwg-ecn-aggregating-tunnels/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Transport Area Working Group Working Group mailing list (<eref target="mailto:tsvwg@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/tsvwg/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/tsvwg/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/martinduke/ecn-aggregating-tunnels"/>.</t>
    </note>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>Explicit Congestion Notification (ECN) <xref target="RFC3168"/> provides a means for
routers to signal congestion to endpoints without dropping packets. This can
achieve the goals of internet congestion control while not introducing a
degraded quality of experience and/or delay due to packet retransmission. The
internet community is also now experimenting with using unused ECN codepoints
to provide extremely low-latency services <xref target="RFC9330"/>.</t>
      <t>To take full advantage of ECN, <xref target="RFC6040"/> provides rules for encapsulating
and decapsulating nodes for IP-in-IP tunnels to propagate ECN markings from
inner headers to outer headers on tunnel ingress, and from outer to inner
headers on tunnel egress.</t>
      <t>RFC6040 implicitly assumes that no more than one inner IP header is present in
a tunnel packet. (RFC3168 is clear that an IP packet reassembled from fragments
takes the highest congestion indication from its fragments). Nevertheless,
there are several IP-in-IP tunnel architectures that allow multiple inner IP
datagrams in a single tunnel packet. For examples, see <xref target="RFC9329"/>,
<xref target="I-D.ietf-ipsecme-iptfs"/>, and <xref target="I-D.ietf-masque-connect-ip"/>. Existing
specifications do not provide recommendations when IP packets with different ECN
marks are encapsulated in the same tunnel IP packet.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
    </section>
    <section anchor="default-tunnel-ingress-behavior">
      <name>Default Tunnel Ingress Behavior</name>
      <t>An encapsulator <bcp14>SHOULD NOT</bcp14> aggregate packets marked Not-ECT, ECT(0), and ECT(1)
in the same tunnel packet unless doing so prevents unacceptable delay, packet
reordering, or other degradation in metrics.</t>
      <t>The encapsulator checks the following conditions in order, until it finds an
applicable marking instruction. In two cases, these rules offer an optional
behavior because they might cause RFC6040-compliant egress to throw an alarm
and/or log an error. If the ingress believes these conditions apply to the
egress and the alarms or errors would produce an unacceptable operational
burden, it uses the optional behavior.</t>
      <ol spacing="normal" type="1"><li>If all inner packets have the same marking, the encapsulator follows the
rules in <xref section="4.1" sectionFormat="of" target="RFC6040"/>.</li>
        <li>If the tunnel packet contains both ECT(0) and ECT(1), mark the packet Not-
ECT.</li>
        <li>If any inner header is marked ECT(0), mark the outer header ECT(0). A tunnel
ingress <bcp14>MAY</bcp14> mark it Not-ECT if there is also a Not-ECT header present, in order
to avoid alarms or errors at the tunnel egress.</li>
        <li>If any inner packet is marked Not-ECT, mark the outer header Not-ECT.</li>
        <li>If no above rules apply, the inner headers are all marked ECT(1) or CE. Mark
the outer header ECT(1). Encapsulators <bcp14>MAY</bcp14> instead mark the tunnel packet Not-
ECT to avoid generating alerts or alarms at the egress.</li>
      </ol>
      <t>The following table summarizes the possible outcomes for all 16 combinations of
inner header packet markings:</t>
      <artwork><![CDATA[
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 |         Present in Tunnel Packet ?  |  Outer    | Applicable |
 +++++++++++++++++++++++++++++++++++++++  Header   +    Rule    +
 | Not-ECT |  ECT(0) |  ECT(1) |  CE   |  Marking  |  Number(s) |
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 |    Y    |    N    |    N    |  any  |  Not-ECT  |     1,4    |
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 |    N    |    Y    |    N    |  any  |   ECT(0)  |     1,3    |
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 |    N    |    N    |    Y    |   N   |   ECT(1)  |      1     |
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 |    N    |    N    |    N    |   Y   |     CE    |      1     |
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 |   any   |    Y    |    Y    |  any  |  Not-ECT  |      2     |
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 |    Y    |    Y    |    N    |  any  |  ECT(0)*  |      3     |
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 |    Y    |    N    |    Y    |  any  |  Not-ECT  |      4     |
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 |    N    |    N    |    Y    |   Y   |  ECT(1)*  |      5     |
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 |    N    |    N    |    N    |   N   |    N/A    |     N/A    |
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
                    Table 1. Ingress Markings
]]></artwork>
      <ul spacing="normal">
        <li>Ingress may mark outer packet Not-ECT to avoid errors and alarms at tunnel
egress.</li>
      </ul>
      <t>Encapsulators <bcp14>MUST</bcp14>, in the rules above, consider the marking of packet fragments
where the inner IP header is not actually present in the tunnel packet being
marked.</t>
    </section>
    <section anchor="default-tunnel-egress-behavior">
      <name>Default Tunnel Egress Behavior</name>
      <t>Decapsulators follow the guidance in <xref section="4.2" sectionFormat="of" target="RFC6040"/>, except that
they <bcp14>SHOULD NOT</bcp14> raise an alarm or log an error under the following conditions:</t>
      <ul spacing="normal">
        <li>the outer header is ECT(0) and an inner header is Not-ECT;</li>
        <li>the outer header is ECT(1) and an inner header is CE; or</li>
        <li>the outer header is CE and in the inner header is CE.</li>
      </ul>
      <t>These are expected behaviors in this specification.</t>
      <t>When reassembling an inner packet from fragments scattered over multiple outer
packets, decapsulators apply the strictest outcome applied to any of the
packets. If any outer packet is dropped, the inner packet is dropped. Otherwise,
if any outer packet is marked CE, the inner packet is dropped (if marked
Not-ECT) or marked CE (if marked anything else). Other outer packet markings do
not change the marking of the inner packet.</t>
    </section>
    <section anchor="rationale">
      <name>Rationale</name>
      <t>The above rules minimize the changes necessary to tunnel egress. Marking the
outer header Not-ECT always allows the egress to preserve the inner header
markings, although it may result in a packet drop where a CE marking would have
been a better outcome.</t>
      <t>Unless an outer header containing ECT(0) and ECT(1) inner headers is marked Not-
ECT, it risks being marked CE. As ECT(0) and ECT(1) flows react differently to
CE markings, one will respond inappropriately. However, they will both respond
correctly to a packet drop due to the Not-ECT setting.</t>
      <t>A Not-ECT inner header cannot be in an ECT(1) outer header because the outer
header will be marked CE more aggressively than an ECT(0) header, and does not
correspond to a packet loss for Not-ECT. Thus, the egress's drop of the inner
Not-ECT packet on CE is inappropriate.</t>
      <t>CE inner header are always preserved on egress, so they can coexist with any
outer header codepoint.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The security considerations in <xref target="RFC6040"/> apply.</t>
      <t>An attacker might attempt to degrade service by injecting packets into the
ingress that force the outer header to be Not-ECT. They would inject ECT(1) if
the legitimate traffic was mostly ECT(0), and Not-ECT otherwise. This is one
reason tunnel encapsulators are encouraged to separate Not-ECT, ECT(0), and
ECT(1) traffic.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner">
              <organization/>
            </author>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba">
              <organization/>
            </author>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="RFC3168">
          <front>
            <title>The Addition of Explicit Congestion Notification (ECN) to IP</title>
            <author fullname="K. Ramakrishnan" initials="K." surname="Ramakrishnan">
              <organization/>
            </author>
            <author fullname="S. Floyd" initials="S." surname="Floyd">
              <organization/>
            </author>
            <author fullname="D. Black" initials="D." surname="Black">
              <organization/>
            </author>
            <date month="September" year="2001"/>
            <abstract>
              <t>This memo specifies the incorporation of ECN (Explicit Congestion Notification) to TCP and IP, including ECN's use of two bits in the IP header.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3168"/>
          <seriesInfo name="DOI" value="10.17487/RFC3168"/>
        </reference>
        <reference anchor="RFC9330">
          <front>
            <title>Low Latency, Low Loss, and Scalable Throughput (L4S) Internet Service: Architecture</title>
            <author fullname="B. Briscoe" initials="B." role="editor" surname="Briscoe">
              <organization/>
            </author>
            <author fullname="K. De Schepper" initials="K." surname="De Schepper">
              <organization/>
            </author>
            <author fullname="M. Bagnulo" initials="M." surname="Bagnulo">
              <organization/>
            </author>
            <author fullname="G. White" initials="G." surname="White">
              <organization/>
            </author>
            <date month="January" year="2023"/>
            <abstract>
              <t>This document describes the L4S architecture, which enables Internet applications to achieve low queuing latency, low congestion loss, and scalable throughput control. L4S is based on the insight that the root cause of queuing delay is in the capacity-seeking congestion controllers of senders, not in the queue itself. With the L4S architecture, all Internet applications could (but do not have to) transition away from congestion control algorithms that cause substantial queuing delay and instead adopt a new class of congestion controls that can seek capacity with very little queuing. These are aided by a modified form of Explicit Congestion Notification (ECN) from the network. With this new architecture, applications can have both low latency and high throughput.</t>
              <t>The architecture primarily concerns incremental deployment. It defines mechanisms that allow the new class of L4S congestion controls to coexist with 'Classic' congestion controls in a shared network. The aim is for L4S latency and throughput to be usually much better (and rarely worse) while typically not impacting Classic performance.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9330"/>
          <seriesInfo name="DOI" value="10.17487/RFC9330"/>
        </reference>
        <reference anchor="RFC6040">
          <front>
            <title>Tunnelling of Explicit Congestion Notification</title>
            <author fullname="B. Briscoe" initials="B." surname="Briscoe">
              <organization/>
            </author>
            <date month="November" year="2010"/>
            <abstract>
              <t>This document redefines how the explicit congestion notification (ECN) field of the IP header should be constructed on entry to and exit from any IP-in-IP tunnel.  On encapsulation, it updates RFC 3168 to bring all IP-in-IP tunnels (v4 or v6) into line with RFC 4301 IPsec ECN processing.  On decapsulation, it updates both RFC 3168 and RFC 4301 to add new behaviours for previously unused combinations of inner and outer headers.  The new rules ensure the ECN field is correctly propagated across a tunnel whether it is used to signal one or two severity levels of congestion; whereas before, only one severity level was supported.  Tunnel endpoints can be updated in any order without affecting pre-existing uses of the ECN field, thus ensuring backward compatibility.  Nonetheless, operators wanting to support two severity levels (e.g., for pre-congestion notification -- PCN) can require compliance with this new specification.  A thorough analysis of the reasoning for these changes and the implications is included.  In the unlikely event that the new rules do not meet a specific need, RFC 4774 gives guidance on designing alternate ECN semantics, and this document extends that to include tunnelling issues.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6040"/>
          <seriesInfo name="DOI" value="10.17487/RFC6040"/>
        </reference>
        <reference anchor="RFC9329">
          <front>
            <title>TCP Encapsulation of Internet Key Exchange Protocol (IKE) and IPsec Packets</title>
            <author fullname="T. Pauly" initials="T." surname="Pauly">
              <organization/>
            </author>
            <author fullname="V. Smyslov" initials="V." surname="Smyslov">
              <organization/>
            </author>
            <date month="November" year="2022"/>
            <abstract>
              <t>This document describes a method to transport Internet Key Exchange Protocol (IKE) and IPsec packets over a TCP connection for traversing network middleboxes that may block IKE negotiation over UDP.  This method, referred to as "TCP encapsulation", involves sending both IKE packets for Security Association (SA) establishment and Encapsulating Security Payload (ESP) packets over a TCP connection.  This method is intended to be used as a fallback option when IKE cannot be negotiated over UDP. </t>
              <t>TCP encapsulation for IKE and IPsec was defined in RFC 8229. This document clarifies the specification for TCP encapsulation by including additional clarifications obtained during implementation and deployment of this method. This documents obsoletes RFC 8229.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9329"/>
          <seriesInfo name="DOI" value="10.17487/RFC9329"/>
        </reference>
        <reference anchor="I-D.ietf-ipsecme-iptfs">
          <front>
            <title>Aggregation and Fragmentation Mode for Encapsulating Security Payload (ESP) and Its Use for IP Traffic Flow Security (IP-TFS)</title>
            <author fullname="Christian Hopps" initials="C." surname="Hopps">
              <organization>LabN Consulting, L.L.C.</organization>
            </author>
            <date day="4" month="September" year="2022"/>
            <abstract>
              <t>This document describes a mechanism for aggregation and fragmentation of IP packets when they are being encapsulated in Encapsulating Security Payload (ESP).  This new payload type can be used for various purposes, such as decreasing encapsulation overhead for small IP packets; however, the focus in this document is to enhance IP Traffic Flow Security (IP-TFS) by adding Traffic Flow Confidentiality (TFC) to encrypted IP-encapsulated traffic.  TFC is provided by obscuring the size and frequency of IP traffic using a fixed-size, constant-send-rate IPsec tunnel.  The solution allows for congestion control, as well as nonconstant send-rate usage.
              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ipsecme-iptfs-19"/>
        </reference>
        <reference anchor="I-D.ietf-masque-connect-ip">
          <front>
            <title>Proxying IP in HTTP</title>
            <author fullname="Tommy Pauly" initials="T." surname="Pauly">
              <organization>Apple Inc.</organization>
            </author>
            <author fullname="David Schinazi" initials="D." surname="Schinazi">
              <organization>Google LLC</organization>
            </author>
            <author fullname="Alex Chernyakhovsky" initials="A." surname="Chernyakhovsky">
              <organization>Google LLC</organization>
            </author>
            <author fullname="Mirja Kühlewind" initials="M." surname="Kühlewind">
              <organization>Ericsson</organization>
            </author>
            <author fullname="Magnus Westerlund" initials="M." surname="Westerlund">
              <organization>Ericsson</organization>
            </author>
            <date day="20" month="April" year="2023"/>
            <abstract>
              <t>   This document describes how to proxy IP packets in HTTP.  This
   protocol is similar to UDP proxying in HTTP, but allows transmitting
   arbitrary IP packets.  More specifically, this document defines a
   protocol that allows an HTTP client to create an IP tunnel through an
   HTTP server that acts as an IP proxy.  This document updates RFC
   9298.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-masque-connect-ip-12"/>
        </reference>
      </references>
    </references>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acknowledge.</t>
    </section>
    <section numbered="false" anchor="change-log">
      <name>Change Log</name>
      <ul empty="true">
        <li>
          <t><strong>RFC Editor's Note:</strong> Please remove this section prior to
publication of a final version of this document.</t>
        </li>
      </ul>
      <section numbered="false" anchor="since-draft-duke-tsvwg-ecn-aggregating-tunnels-00">
        <name>since draft-duke-tsvwg-ecn-aggregating-tunnels-00</name>
        <ul spacing="normal">
          <li>Fixed typos and update references</li>
        </ul>
      </section>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
