<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.31 (Ruby 2.6.8) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-acharya-ipsecme-esp-ecmp-00" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title>UDP encapsulated ESP for ECMP</title>

    <author fullname="Dipankar Acharya">
      <organization>Arista Networks, Inc.</organization>
      <address>
        <postal>
          <street>5453 Great America Pkwy</street>
          <city>Santa Clara</city>
          <region>CA</region>
          <code>95054</code>
          <country>USA</country>
        </postal>
        <email>dipankar@arista.com</email>
      </address>
    </author>
    <author fullname="Hugh Holbrook">
      <organization>Arista Networks, Inc.</organization>
      <address>
        <postal>
          <street>5453 Great America Pkwy</street>
          <city>Santa Clara</city>
          <region>CA</region>
          <code>95054</code>
          <country>USA</country>
        </postal>
        <email>holbrook@arista.com</email>
      </address>
    </author>

    <date year="2023" month="April" day="21"/>

    <area>AREA</area>
    <workgroup>IP Security Maintenance and Extensions Working Group</workgroup>
    

    <abstract>


<t>This document modifies <xref target="RFC3948"></xref> to allow the UDP source port of a UDP-Encapsulated ESP packet to provide entropy for ECMP load balancing between IPSec tunnel endpoints.  This document provides guidelines for safely allowing this behavior and falling back to the encapsulation defined in <xref target="RFC3948"></xref> when a NAT gateway is discovered in the path.</t>



    </abstract>

    <note title="About This Document" removeInRFC="true">
      <t>
        The latest revision of this draft can be found at <eref target="https://example.com/LATEST"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-acharya-ipsecme-esp-ecmp/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        WG Working Group mailing list (<eref target="mailto:WG@example.com"/>),
        which is archived at <eref target="https://example.com/WG"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/USER/REPO"/>.</t>
    </note>


  </front>

  <middle>


<section anchor="introduction"><name>Introduction</name>

<t>Equal Cost Multi-Path (ECMP) can be used to balance traffic across multiple paths between 2 end-points.  An important requirement is to have packets belonging to the same “flow” use the same path to prevent reordering of packets within a flow.</t>

<t>IPsec can be used to secure traffic between two Tunnel End Points (TEPs).  Two ways of doing this are to use</t>

<t><list style="symbols">
  <t>IPsec tunnel mode</t>
  <t>IPsec transport mode applied to the outer IP header of some other tunneling mechanism e.g. VXLAN <xref target="RFC7348"></xref> or GRE <xref target="RFC2784"></xref></t>
</list></t>

<t>Either way, one IPsec session, identified by outer IP addresses and SPI value in the ESP header, can be used to protect packets belonging to multiple “flows”.  In this context, a “flow” is a sequence of packets with common inner header fields..  Examples of such inner packet header fields are the original IP addresses of the payload packet inside an IPsec tunnel.</t>

<t>The flow to which an IPsec encrypted packet belongs cannot generally be identified because the inner packet headers are encrypted.  This document defines a mechanism that allows different flows using the same IPsec session to take different paths, while still maintaining a single path for each flow.  In order to do this, the UDP source port of a UDP-encapsulated ESP packet carries a “digest” of inner packet headers.  The “digest” enables this outer source port to be used for load balancing in the transport network between TEPs.</t>

</section>
<section anchor="udp-encapsulated-esp-header-format"><name>UDP-Encapsulated ESP Header Format</name>

<figure><artwork><![CDATA[
 0                   1                   2                   3   
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        Source Port            |      Destination Port         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           Length              |           Checksum            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                      ESP header [RFC4303]                     |
~                                                               ~
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork></figure>

<t><list style="symbols">
  <t>It is <bcp14>RECOMMENDED</bcp14> that the UDP Source Port number be calculated using a hash of fields from the inner packet e.g. the original IP addresses of the payload packet inside the tunnel.  When calculating the UDP Source Port number in this manner, it is <bcp14>RECOMMENDED</bcp14> that the value be in the dynamic/private port range 49152-65535 <xref target="RFC6335"></xref>.</t>
  <t>The Destination Port <bcp14>MUST</bcp14> be the same as that used by IKE traffic, per <xref target="RFC3948"></xref>.</t>
  <t>The UDP Checksum <bcp14>SHOULD</bcp14> be transmitted as a zero value, per <xref target="RFC3948"></xref>.</t>
  <t>Receivers <bcp14>MUST NOT</bcp14> depend on the UDP checksum being a zero value, per <xref target="RFC3948"></xref>.</t>
  <t>The SPI field in the ESP header <bcp14>MUST NOT</bcp14> be a zero value, per <xref target="RFC3948"></xref>.</t>
</list></t>

<t>Note that the use of the UDP source port is consistent with its usage in VXLAN, <xref target="RFC7348"></xref></t>

</section>
<section anchor="ecmp-and-ipsec-sequence-check"><name>ECMP and IPsec sequence check</name>

<t>When different flows take different paths between tunnel endpoints there can be big differences in path-delay and out-of-order packets are more likely to arrive outside the anti-replay window.  Therefore, it is <bcp14>RECOMMENDED</bcp14> that the IPsec anti-replay service, defined in <xref target="RFC4301"></xref>, be disabled for a session using UDP encapsulated ESP for ECMP.</t>

</section>
<section anchor="interaction-with-nat-traversal"><name>Interaction with NAT-Traversal</name>

<t>If IKE is configured to support NAT-Traversal and detects NAT along the path between IKE peers, then UDP encapsulated ESP is used for NAT-Traversal, per <xref target="RFC3947"></xref>.  In that case, the UDP Source Port number <bcp14>MUST</bcp14> be the same as that used by IKE traffic per <xref target="RFC3948"></xref>, which supersedes the recommendation in this document.</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="security-considerations"><name>Security Considerations</name>

<t><list style="numbers">
  <t>IPsec anti-replay service may have to be disabled when UDP encapsulated ESP is used for ECMP. .</t>
  <t>Some sort of flow-identification in the packet header is necessary to make sure packets of a flow are routed in the same path.  That means the packets belonging to the same flow or a set of flows can be identified by examining the Source Port in the outer UDP header. This implies that</t>
</list></t>

<t><list style="symbols">
  <t>The IPsec traffic distribution between different flows can be observed.</t>
  <t>Some information about the inner header fields is leaked via the UDP source port.  However no more information is leaked than if per-flow IPSec Transport Mode were used between Tunnel Endpoints.  The identification of the flow or the internal header fields, by itself, may not pose a security threat.</t>
</list></t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>This document has no IANA actions.</t>

</section>


  </middle>

  <back>


    <references title='Normative References'>





<reference anchor='RFC3947'>
<front>
<title>Negotiation of NAT-Traversal in the IKE</title>
<author fullname='T. Kivinen' initials='T.' surname='Kivinen'><organization/></author>
<author fullname='B. Swander' initials='B.' surname='Swander'><organization/></author>
<author fullname='A. Huttunen' initials='A.' surname='Huttunen'><organization/></author>
<author fullname='V. Volpe' initials='V.' surname='Volpe'><organization/></author>
<date month='January' year='2005'/>
<abstract><t>This document describes how to detect one or more network address translation devices (NATs) between IPsec hosts, and how to negotiate the use of UDP encapsulation of IPsec packets through NAT boxes in Internet Key Exchange (IKE).  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='3947'/>
<seriesInfo name='DOI' value='10.17487/RFC3947'/>
</reference>



<reference anchor='RFC3948'>
<front>
<title>UDP Encapsulation of IPsec ESP Packets</title>
<author fullname='A. Huttunen' initials='A.' surname='Huttunen'><organization/></author>
<author fullname='B. Swander' initials='B.' surname='Swander'><organization/></author>
<author fullname='V. Volpe' initials='V.' surname='Volpe'><organization/></author>
<author fullname='L. DiBurro' initials='L.' surname='DiBurro'><organization/></author>
<author fullname='M. Stenberg' initials='M.' surname='Stenberg'><organization/></author>
<date month='January' year='2005'/>
<abstract><t>This protocol specification defines methods to encapsulate and decapsulate IP Encapsulating Security Payload (ESP) packets inside UDP packets for traversing Network Address Translators.  ESP encapsulation, as defined in this document, can be used in both IPv4 and IPv6 scenarios.  Whenever negotiated, encapsulation is used with Internet Key Exchange (IKE).  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='3948'/>
<seriesInfo name='DOI' value='10.17487/RFC3948'/>
</reference>



<reference anchor='RFC4301'>
<front>
<title>Security Architecture for the Internet Protocol</title>
<author fullname='S. Kent' initials='S.' surname='Kent'><organization/></author>
<author fullname='K. Seo' initials='K.' surname='Seo'><organization/></author>
<date month='December' year='2005'/>
<abstract><t>This document describes an updated version of the &quot;Security Architecture for IP&quot;, which is designed to provide security services for traffic at the IP layer.  This document obsoletes RFC 2401 (November 1998).  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='4301'/>
<seriesInfo name='DOI' value='10.17487/RFC4301'/>
</reference>



<reference anchor='RFC4303'>
<front>
<title>IP Encapsulating Security Payload (ESP)</title>
<author fullname='S. Kent' initials='S.' surname='Kent'><organization/></author>
<date month='December' year='2005'/>
<abstract><t>This document describes an updated version of the Encapsulating Security Payload (ESP) protocol, which is designed to provide a mix of security services in IPv4 and IPv6.  ESP is used to provide confidentiality, data origin authentication, connectionless integrity, an anti-replay service (a form of partial sequence integrity), and limited traffic flow confidentiality.  This document obsoletes RFC 2406 (November 1998).  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='4303'/>
<seriesInfo name='DOI' value='10.17487/RFC4303'/>
</reference>



<reference anchor='RFC6335'>
<front>
<title>Internet Assigned Numbers Authority (IANA) Procedures for the Management of the Service Name and Transport Protocol Port Number Registry</title>
<author fullname='M. Cotton' initials='M.' surname='Cotton'><organization/></author>
<author fullname='L. Eggert' initials='L.' surname='Eggert'><organization/></author>
<author fullname='J. Touch' initials='J.' surname='Touch'><organization/></author>
<author fullname='M. Westerlund' initials='M.' surname='Westerlund'><organization/></author>
<author fullname='S. Cheshire' initials='S.' surname='Cheshire'><organization/></author>
<date month='August' year='2011'/>
<abstract><t>This document defines the procedures that the Internet Assigned Numbers Authority (IANA) uses when handling assignment and other requests related to the Service Name and Transport Protocol Port Number registry.  It also discusses the rationale and principles behind these procedures and how they facilitate the long-term sustainability of the registry.</t><t>This document updates IANA's procedures by obsoleting the previous UDP and TCP port assignment procedures defined in Sections 8 and 9.1 of the IANA Allocation Guidelines, and it updates the IANA service name and port assignment procedures for UDP-Lite, the Datagram Congestion Control Protocol (DCCP), and the Stream Control Transmission Protocol (SCTP).  It also updates the DNS SRV specification to clarify what a service name is and how it is registered.  This memo documents an Internet Best Current Practice.</t></abstract>
</front>
<seriesInfo name='BCP' value='165'/>
<seriesInfo name='RFC' value='6335'/>
<seriesInfo name='DOI' value='10.17487/RFC6335'/>
</reference>



<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 title='Informative References'>





<reference anchor='RFC2784'>
<front>
<title>Generic Routing Encapsulation (GRE)</title>
<author fullname='D. Farinacci' initials='D.' surname='Farinacci'><organization/></author>
<author fullname='T. Li' initials='T.' surname='Li'><organization/></author>
<author fullname='S. Hanks' initials='S.' surname='Hanks'><organization/></author>
<author fullname='D. Meyer' initials='D.' surname='Meyer'><organization/></author>
<author fullname='P. Traina' initials='P.' surname='Traina'><organization/></author>
<date month='March' year='2000'/>
<abstract><t>This document specifies a protocol for encapsulation of an arbitrary network layer protocol over another arbitrary network layer protocol. [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='2784'/>
<seriesInfo name='DOI' value='10.17487/RFC2784'/>
</reference>



<reference anchor='RFC7348'>
<front>
<title>Virtual eXtensible Local Area Network (VXLAN): A Framework for Overlaying Virtualized Layer 2 Networks over Layer 3 Networks</title>
<author fullname='M. Mahalingam' initials='M.' surname='Mahalingam'><organization/></author>
<author fullname='D. Dutt' initials='D.' surname='Dutt'><organization/></author>
<author fullname='K. Duda' initials='K.' surname='Duda'><organization/></author>
<author fullname='P. Agarwal' initials='P.' surname='Agarwal'><organization/></author>
<author fullname='L. Kreeger' initials='L.' surname='Kreeger'><organization/></author>
<author fullname='T. Sridhar' initials='T.' surname='Sridhar'><organization/></author>
<author fullname='M. Bursell' initials='M.' surname='Bursell'><organization/></author>
<author fullname='C. Wright' initials='C.' surname='Wright'><organization/></author>
<date month='August' year='2014'/>
<abstract><t>This document describes Virtual eXtensible Local Area Network (VXLAN), which is used to address the need for overlay networks within virtualized data centers accommodating multiple tenants.  The scheme and the related protocols can be used in networks for cloud service providers and enterprise data centers.  This memo documents the deployed VXLAN protocol for the benefit of the Internet community.</t></abstract>
</front>
<seriesInfo name='RFC' value='7348'/>
<seriesInfo name='DOI' value='10.17487/RFC7348'/>
</reference>




    </references>




  </back>

<!-- ##markdown-source:
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
YnsAgLKXhOedIb+5enJIs8ko+jeIUh/19xwAAA==

-->

</rfc>

