<?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.7.19 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-colitti-ipsecme-esp-ping-03" category="std" consensus="true" updates="4303" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.24.0 -->
  <front>
    <title abbrev="ESP-PING">ESP Echo Protocol</title>
    <seriesInfo name="Internet-Draft" value="draft-colitti-ipsecme-esp-ping-03"/>
    <author initials="L." surname="Colitti" fullname="Lorenzo Colitti">
      <organization>Google</organization>
      <address>
        <email>lorenzo@google.com</email>
      </address>
    </author>
    <author initials="J." surname="Linkova" fullname="Jen Linkova">
      <organization>Google</organization>
      <address>
        <email>furry13@gmail.com</email>
      </address>
    </author>
    <author initials="M." surname="Richardson" fullname="Michael Richardson">
      <organization>Sandelman Software Works</organization>
      <address>
        <email>mcr+ietf@sandelman.ca</email>
      </address>
    </author>
    <date year="2024" month="November" day="07"/>
    <area>Internet</area>
    <workgroup>IPSECME Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 43?>

<t>This document defines an ESP echo function which can be used to detect whether a given network path supports ESP packets.</t>
    </abstract>
  </front>
  <middle>
    <?line 47?>

<section anchor="problem-statement">
      <name>Problem Statement</name>
      <t>IPsec sessions between nodes that have global connectivity will by default use ESP packets in IPv4 or IPv6 headers without encapsulation. These packets may have advantages over ESP-in-UDP encapsulation, such as:</t>
      <ul spacing="normal">
        <li>
          <t>They require fewer keepalive packets to keep sessions open.  </t>
          <t>
** On some networks, ESP is be statelessly allowed in both directions, and thus not require any keepalive packets at all. For example, the IPv6 Simple Security recommendations <xref target="RFC6092"/> specify that ESP by default must always be allowed and not be subject to any timeouts.  </t>
          <t>
** Even if ESP is not statelessly allowed, experience from real world networks is that timeouts for ESP are higher than for UDP sessions, thus requiring IPsec endpoints to send fewer keepalives.</t>
        </li>
        <li>
          <t>They provide slightly lower overhead, due to the absence of the UDP header.</t>
        </li>
      </ul>
      <t>However, because ESP packets do not share fate with IKE packets, it is possible for the network to allow IKE packets but not ESP packets.
This leads to the IPsec session not being able to exchange any packets even though IKE negotiation succeeded.</t>
      <t>Because ESP is only used after IKE negotiation, this failure mode is difficult to predict, difficult to detect, and difficult to recover from. In particular, migrating a session using MOBIKE <xref target="RFC4555"/> to a network that does not allow ESP could result in the session blackholing all future packets until the problem is detected and a new migration is performed to enable encapsulation.</t>
      <t>Operational experience suggests that networks and some home routers that drop ESP packets are common enough to be a problem for general purpose VPN applications desiring to work reliably on the Internet.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
"MAY", and "OPTIONAL" 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.
<?line -6?>
      </t>
    </section>
    <section anchor="protocol-specification">
      <name>Protocol Specification</name>
      <t>An IPv6 node that desires to determine whether the path to a particular destination can support ESP packets can send an ESP Echo Request packet to that destination. ESP Echo Request packets are ESP packets with an SPI value of (7-TBD) and a Next Header value of 59 (No Next Header).</t>
      <t>If the destination supports ESP, and wishes to reveal to the sender that it does so, it SHOULD reply with an ESP Echo Reply packet. ESP Echo Reply packets are ESP packets with an SPI value of (8-TBD) and a Next Header value of 59.</t>
      <t>The ESP Echo Request and Reply packets utilize the standard ESP packet format as described in Section 2 of <xref target="RFC4303"/> with the following changes:</t>
      <ul spacing="normal">
        <li>
          <t>SPI set to
          </t>
          <ul spacing="normal">
            <li>
              <t>[ESP-ECHO-REQUEST] for ESP Echo Request</t>
            </li>
            <li>
              <t>[ESP-ECHO-REPLY] for ESP Echo Reply</t>
            </li>
          </ul>
        </li>
        <li>
          <t>The Next Header field of the ESP header SHOULD be set to 59 (No Next Header).</t>
        </li>
        <li>
          <t>No Integrity Check Value-ICV.</t>
        </li>
      </ul>
      <t>The payload has the following format:</t>
      <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
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |        ECHO Identifier        |      ECHO Sequence Number     |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |     Data ...                                                  |
 +-+-+-+-+-


* ECHO Identifier: An identifier to aid in matching Echo Replies to Echo Requests. MAY be zero.
  Implementations that support multiple simultaneous Echo Request sessions MUST ensure that
  different sessions have different identifiers. Implementations that are not aware of other
  implementations that might be running on the same node at the same time SHOULD randomize the
  identifier to prevent collisions, and MUST be prepared to receive responses to packets that
  were sent by another implementation.

* ECHO Sequence Number: An identifier to aid in matching Echo Replies to Echo Requests. MAY be zero.

* Data: Zero or more octets of arbitrary data.
]]></artwork>
      <t>Figure 1: ESP Echo Request and Reply Payload Overview</t>
      <t>An IPsec peer, prior to an IKE negotiation or after completing an IPsec negotiation, intending to ascertain the path's capability to support ESP packets to a specific destination, MAY send one or more ESP Echo Request packet(s) to the destination.
Should the destination support ESP and intend to communicate this capability to the potential IPsec peer, it SHOULD respond with an ESP Echo Reply packet.</t>
      <t>The sender MAY send ESP Echo packets with zero data.
When responding to an ESP Echo packet, the node MUST copy the data from the ESP Echo packet to the ESP Echo Reply packet, up to the limit of the MTU of the path back to the sender.</t>
    </section>
    <section anchor="use-cases">
      <name>Use cases</name>
      <t>A node that wishes to set up an IPsec session to a peer that is known to support this protocol can discover whether the intermediate network will carry ESP packets by sending an ESP Echo Request to the peer. Depending on wether it receives an ESP Echo Reply or not, it could choose to enable encapsulatior, use a different IP protocol, or use a different server or interface. For example, if MOBIKE <xref target="RFC4555"/> is used, a node can use ESP Echo Request packets to verify reachability before moving to a new address.</t>
      <t>Network operators can troubleshoot IPsec sessions by sending ESP Echo Request packets from one peer to another to determine if the network between the peers will successfully carry ESP, and if so, what maximum packet size the network is able to support.</t>
      <t>ESP Echo Requests can be used as keepalives, to maintain firewall state entries if the network statefully filters ESP between endpoints.</t>
    </section>
    <section anchor="discovering-esp-echo-support">
      <name>Discovering ESP Echo Support</name>
      <t>If no response is received to an ESP Echo Request packet, it can be caused by one of the following:</t>
      <ul spacing="normal">
        <li>
          <t>the peer doesn't support ESP Echo protocol.</t>
        </li>
        <li>
          <t>there is no end-to-end ESP connectivity.</t>
        </li>
        <li>
          <t>intermediate nodes allow regular ESP packets, but drop ESP packets that have SPIs in the reserved SPI range.</t>
        </li>
      </ul>
      <t>Without some prior knowledge about ESP Echo support by the remote side, the sender can not distibguish those two scenarios.
Therefore the sender SHOULD NOT treat lack of response as an indicator of end-to-end connectivity issues until an explicit confirmation of ESP Echo support by the peer is received. Because ESP might still work even if intermediate nodes drop ESP Echo Request or ESP Echo Reply packets, senders SHOULD still attempt to use ESP if no alternative paths or protocols (e.g., UDP encapsulation) are available.
The sender MAY use any means of obtaining the information about ESP Echo support, such as an explicit out-of-band configuration (for example, a VPN client might be configured to always use ESP Echo when communicating to the given VPN server).</t>
    </section>
    <section anchor="updates-to-rfc4303">
      <name>Updates to RFC4303</name>
      <t>Section 2.6 of <xref target="RFC4303"/> discusses "dummy" ESP packets, which are distinguishable by the Next Header value set to 59.
As per <xref target="RFC4303"/> a receiver MUST be prepared to silently discard "dummy" packets. This document updates Section 2.6 of <xref target="RFC4303"/> to allow packets with the Next Header value of 59 to be processed, if SPI is set to [ESP-ECHO-REQUEST] or [ESP-ECHO-REPLY].</t>
      <t>OLD TEXT:</t>
      <t>A transmitter MUST be capable of generating dummy packets marked with this value in the next protocol field, and a receiver MUST be prepared to discard such packets, without indicating an error.</t>
      <t>NEW TEXT:</t>
      <t>A transmitter MUST be capable of generating dummy packets marked with this value in the next protocol field, and a receiver MUST be prepared to discard such packets, without indicating an error.
A transmitter MUST NOT use the reserved SPI values [ESP-ECHO-REQUEST] or [ESP-ECHO-REPLY] for dummy packets. A receiver SHOULD NOT discard packets with  the Next Header value set of 59, if those packets use the reserved SPI values.
Packets with the reserved SPI values [ESP-ECHO-REQUEST] or [ESP-ECHO-REPLY] and the Next Header value set of 59 SHOULD be processed by the receiver as described in draft-colitti-ipsecme-esp-ping.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>If an IPsec sender uses ESP Echo Request packets to determine whether the path supports ESP, an intermediate node may drop ESP Echo packets to make the sender believe that the path does not support ESP even though it does. To prevent such downgrade attacks, IPsec nodes MUST NOT fall back to unencrypted mode of communication in case of ESP Echo failure. The node MAY switch to another path (e.g. via another interface) or another protocol (e.g. IPv4).</t>
      <t>Intermediate nodes can can forge ESP Echo Reply packets to cause the sender to believe that the network supports ESP even though it doesn't. This may result in ESP packets being blackholed and ESP sessions being unable to transmit or receive data. Intermediate nodes can achieve the same effect by allowing ESP packets with an SPI of 7 or 8, but dropping packets with any other SPI value. This failure mode already exists today, because intermediate networks can always choose to drop ESP packets.</t>
      <t>The security considerations are similar to other unconnected request-reply protocols such as ICMPv6 echo. In particular:</t>
      <ul spacing="normal">
        <li>
          <t>By sending an ESP Echo Request from a spoofed source address, an attacker could cause a server to send an ESP Echo Reply to that address. This does not constitute an amplification attack because the ESP Echo Reply is the same size as the ESP Echo Request. This can be prevented by implementing ingress filtering per BCP 38 <xref target="RFC2827"/>.</t>
        </li>
        <li>
          <t>An attacker can use ESP Echo Request packets to determine whether a particular destination address is an ESP endpoint. This is not a new attack because any endpoint that supports ESP must also reply to IKE INIT packets.</t>
        </li>
      </ul>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This memo requests that IANA allocate two new values from the "Security Parameters Index (SPI)" registry. The following entry should be appended:</t>
      <table>
        <thead>
          <tr>
            <th align="left">Number</th>
            <th align="left">Description</th>
            <th align="right">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">7-ESP-ECHO-REQUEST</td>
            <td align="left">ESP Echo Request</td>
            <td align="right">THIS DOCUMENT</td>
          </tr>
          <tr>
            <td align="left">8-ESP-ECHO-REPLY</td>
            <td align="left">ESP Echo Reply</td>
            <td align="right">THIS DOCUMENT</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>Thanks to Tero Kivinen, Steffen Klassert, Andrew McGregor, Valery Smyslov and Paul Wouters for helpful discussion and suggestions.</t>
    </section>
    <section anchor="changelog">
      <name>Changelog</name>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC6092" target="https://www.rfc-editor.org/info/rfc6092" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6092.xml">
          <front>
            <title>Recommended Simple Security Capabilities in Customer Premises Equipment (CPE) for Providing Residential IPv6 Internet Service</title>
            <author fullname="J. Woodyatt" initials="J." role="editor" surname="Woodyatt"/>
            <date month="January" year="2011"/>
            <abstract>
              <t>This document identifies a set of recommendations for the makers of devices and describes how to provide for "simple security" capabilities at the perimeter of local-area IPv6 networks in Internet-enabled homes and small offices. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6092"/>
          <seriesInfo name="DOI" value="10.17487/RFC6092"/>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <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" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <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>
        <reference anchor="RFC4303" target="https://www.rfc-editor.org/info/rfc4303" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4303.xml">
          <front>
            <title>IP Encapsulating Security Payload (ESP)</title>
            <author fullname="S. Kent" initials="S." surname="Kent"/>
            <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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC4555" target="https://www.rfc-editor.org/info/rfc4555" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4555.xml">
          <front>
            <title>IKEv2 Mobility and Multihoming Protocol (MOBIKE)</title>
            <author fullname="P. Eronen" initials="P." surname="Eronen"/>
            <date month="June" year="2006"/>
            <abstract>
              <t>This document describes the MOBIKE protocol, a mobility and multihoming extension to Internet Key Exchange (IKEv2). MOBIKE allows the IP addresses associated with IKEv2 and tunnel mode IPsec Security Associations to change. A mobile Virtual Private Network (VPN) client could use MOBIKE to keep the connection with the VPN gateway active while moving from one address to another. Similarly, a multihomed host could use MOBIKE to move the traffic to a different interface if, for instance, the one currently being used stops working. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4555"/>
          <seriesInfo name="DOI" value="10.17487/RFC4555"/>
        </reference>
        <reference anchor="RFC2827" target="https://www.rfc-editor.org/info/rfc2827" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2827.xml">
          <front>
            <title>Network Ingress Filtering: Defeating Denial of Service Attacks which employ IP Source Address Spoofing</title>
            <author fullname="P. Ferguson" initials="P." surname="Ferguson"/>
            <author fullname="D. Senie" initials="D." surname="Senie"/>
            <date month="May" year="2000"/>
            <abstract>
              <t>This paper discusses a simple, effective, and straightforward method for using ingress traffic filtering to prohibit DoS (Denial of Service) attacks which use forged IP addresses to be propagated from 'behind' an Internet Service Provider's (ISP) aggregation point. 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="38"/>
          <seriesInfo name="RFC" value="2827"/>
          <seriesInfo name="DOI" value="10.17487/RFC2827"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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
/Q/jvzIGSSsAAA==

-->

</rfc>
