<?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.7.22 (Ruby 3.0.2) -->


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

<!ENTITY RFC6864 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6864.xml">
<!ENTITY RFC8900 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8900.xml">
<!ENTITY RFC4301 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4301.xml">
<!ENTITY RFC1191 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.1191.xml">
<!ENTITY RFC4821 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4821.xml">
<!ENTITY RFC0792 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.0792.xml">
<!ENTITY RFC2119 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC8174 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
<!ENTITY RFC0791 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.0791.xml">
<!ENTITY RFC8200 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8200.xml">
<!ENTITY RFC7296 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7296.xml">
<!ENTITY RFC4963 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4963.xml">
<!ENTITY I-D.ietf-intarea-tunnels SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-intarea-tunnels.xml">
<!ENTITY I-D.spiriyath-ipsecme-dynamic-ipsec-pmtu SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.spiriyath-ipsecme-dynamic-ipsec-pmtu.xml">
]>


<rfc ipr="trust200902" docName="draft-liu-ipsecme-ikev2-mtu-dect-10" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="LMTA and PTB Notification">IKEv2 Link Maximum Atomic Packet and Packet Too Big Notification Extension</title>

    <author initials="D." surname="Liu" fullname="Daiying Liu" role="editor">
      <organization>Ericsson</organization>
      <address>
        <email>harold.liu@ericsson.com</email>
      </address>
    </author>
    <author initials="D." surname="Migault" fullname="Daniel Migault">
      <organization>Ericsson</organization>
      <address>
        <email>daniel.migault@ericsson.com</email>
      </address>
    </author>
    <author initials="R." surname="Liu" fullname="Renwang Liu">
      <organization>Ericsson</organization>
      <address>
        <email>renwang.liu@ericsson.com</email>
      </address>
    </author>
    <author initials="C." surname="Zhang" fullname="Congjie Zhang">
      <organization>Ericsson</organization>
      <address>
        <email>congjie.zhang@ericsson.com</email>
      </address>
    </author>

    <date year="2025" month="October" day="20"/>

    <area>Security</area>
    <workgroup>IPsecme</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<?line 41?>

<t>This document defines the IKEv2 Link Maximum Atomic Packet and Packet Too Big Extension to limit reassembly operations being performed by the egress security gateway.</t>

<t>This extension enables an egress security gateway to notify its ingress counterpart that fragmentation is happening or that the received (and potentially reassembled) ESP packet is too big and thus cannot be decrypted.
In both cases, the egress node provides Maximum Transmission Unit (MTU) information.
Such information enables the ingress node to configure appropriately its Tunnel Maximum Transmission Unit - also designated as MTU or Tunnel MTU (TMTU) - to prevent fragmentation or too big packets to be transmitted.</t>



    </abstract>



  </front>

  <middle>


<?line 49?>

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

<t>Reassembling fragments at the egress security gateway requires additional resources which under heavy load results in service degradations.
Then, as detailed in <xref target="RFC4963"/>, <xref target="RFC6864"/> or <xref target="RFC8900"/>, fragmentation is considered fragile and not sufficiently robust at high data rates.
Typically, the 16-bit IPv4 identification field is not large enough to prevent duplication making fragmentation not sufficiently robust at high data rates.
In IPv6 the 32 byte identification field reduces such collisions.</t>

<t><xref target="fig-frag"/> depicts various fragmentation scenarios that can occur when Tunnel Transit Packets (TTP) are encapsulated over an IPsec tunnel.
The IPsec packets exchanged between the ingress and the egress security gateway are designated as Tunnel Link Packet (TLP).</t>

<figure title="Illustration of Different Type of Fragmentation.
IPs (resp. IPi, IPe, IPd) designates the IP addresse of the Source, (resp. the Ingress node, the Egress node, the Destination).
The IPsec tunnel is considered as an ESP tunnel.
The IP payload is represented as 'Data'.
Fragmentation is illustrated in splicing 'Data' into 'Da' and 'ta'.
The figure does not show a difference between Data being encrypted or not, and the presence of the ESP header indicates the payload is encrypted." anchor="fig-frag"><artwork><![CDATA[
Source          Security             Security             Destination
or              Gateway              Gateway              or
Sender       (Ingress node)        (Egress node)          Receiver

+--+             +---+                 +---+              +---+
|  |  +  +  +    |   |  +  +  +  +  +  |   |  +  +  +  +  |   |
+--+  routers    +---+    routers      +---+  routers     +---+
                  <--------------------->
                            N
+---+---+----+                            +---+---+----+
|IPs|IPd|Data|  Tunnel Transit Packet     |IPs|IPd|Data|
+---+---+----+         (TTP)              +---+---+----+



1) No fragmentation

                +---+---+---+---+---+----+
                |IPi|IPe|ESP|IPs|IPd|Data| Tunnel Link Packet
                +---+---+---+---+---+----+       (TLP)

2) Mid-tunnel (performed by a router on N)
  (only for IPv4 DF=0  TLP)
                         +---+---+---+---+---+--+
                         |IPi|IPe|ESP|IPs|IPd|Da| (TLP)
                         +---+---+---+---+---+--+
                     +---+---+--+
                     |IPi|IPe|ta| (TLP)
                     +---+---+--+

3) Inner fragmentation (performed by the Ingress node)
  (only for IPv4 DF=0 TTP)

                +---+---+---+---+---+--+
                |IPi|IPe|ESP|IPs|IPd|Da| (TLP)
                +---+---+---+---+---+--+
            +---+---+---+---+---+--+
            |IPi|IPe|ESP|IPs|IPd|ta| (TLP)
            +---+---+---+---+---+--+

4) Outer fragmentation (performed by the Ingress node)
   (IPv4 or IPv6 TLP)
                +---+---+---+---+---+--+
                |IPi|IPe|ESP|IPs|IPd|Da| (TLP)
                +---+---+---+---+---+--+
            +---+---+--+
            |IPi|IPe|ta| (TLP)
            +---+---+--+

5) Source fragmentation
  (IPv6 or IPv4)
    +---+---+--+
    |IPs|IPd|Da|  (TTP)
    +---+---+--+
+---+---+--+
|IPs|IPd|ta|
+---+---+--+

]]></artwork></figure>

<t>Reassembling is performed by the egress node in two cases.
Firstly when mid tunnel fragmentation happens (see 2) <xref target="fig-frag"/>) -- in which case the TLP header or outer header is using IPv4 with its Do not Fragment bit set to 0 (DF=0).
Secondly when Outer fragmentation is performed by the ingress node (see 4 in <xref target="fig-frag"/>).
The main difference between the two scenarios is that with Outer fragmentation, the ingress node is aware that the egress performs some reassembly operations.
Note also that in both cases, reassembling the TLP in itself does not prevent the TTP to be processed by IPsec unless the reassembled TLP exceeds the effective MTU to receive (EMTU_R) - that is the maximum size of the IPsec protected packet that can be accepted by the egress node to perform the ESP encapsulation.</t>

<t><xref target="fig-esp-frag"/> summarizes the various operations performed by the egress node according to the size of an IPsec encapsulated TTP.
The optimal size of the TTP is the maximum TTP size that avoids fragmentation and the corresponding TTP size is designated as Tunnel maximum atomic packet (TMAP).
The resulting IPsec encapsulated TTP (or LTP) is designated as Link maximum atomic packet (LMAP) LTP. The difference between the two sizes is related to the IPsec encapsulation overhead.
LTP smaller than the LMAP will not generate any fragmentation. LTP larger than the LMAP, but smaller than the EMTU_R will be fragmented and reassembled by the egress node. The TTP will be transmitted.  LTP (eventually reassembled) with a size greater than EMTU_R cannot be handled by the egress node and will not be transmitted.
Note that in this case and unless specified explicitly the link considered is the physical link between the ingress and egress node.</t>

<figure title="Fragmentation and Packet Too Big as a function of the TTP size or LTP size. encap designates the IPsec overhead." anchor="fig-esp-frag"><artwork><![CDATA[
          TMAP              TMTU
+---------+-------------------+--------------> TTP
|         |encap              |encap
|         |<--->|             |<--->|
| No frag. (1)  |  Fragmentation    |
|               |  (2) Mid-tunnel   |  Packet To Big
|               |  (4) Outer        |
+---------------+-------------------+--------> IPsec encapsulated TTP
              LMAP                EMTU_R
]]></artwork></figure>

<t>This document enables a egress node to inform the ingress node that:</t>

<t><list style="symbols">
  <t>a received packet is fragmented (via an IKE LMAP notification)</t>
  <t>a packet received is too big to be processed by IPsec (via an IKE PTB notification)</t>
</list></t>

<t>As depicted in <xref target="fig-overview"/>, by supporting this extension, the ingress and egress node commit themselves in optimizing the processing of the IPsec tunnel and in limiting reassembly operation being performed at the egress node.
More specifically, the ingress security gateway limits as much as possible the use of outer fragmentation and commits to set their TMTU value so that TTP are not fragmented/reassembled.
In addition, for TTP with IPv4 addresses and DF=0, the ingress node commits to perform inner fragmentation to prevent reassembly at the egress node.</t>

<t>The mechanism is especially useful when the tunnel between the ingress and egress nodes is using IPv4 outer IP addresses with DF=0 as the fragmentation may occur while the ingress may not be aware of it.</t>

<t>The mechanisms enables also enable to inform the IPsec encapsulated TTP is too large and cannot be processed by IPsec. A LTP packet may be to big if it exceeds the LMTU or the EMTU_R. When one of these boundaries is exceeded, both are returned to the ingress node so, the ingress node can clearly understand why the packet has been dropped.</t>

<t>A packet may meet the LMTU requirement, but may not meet the EMTU_R requirement. <br />
 With IPv4 outer IP addresses with DF=0, the egress Security Gateway may receive a serie of fragments that individually do not exceed the MTU (and as such do not generate any LTP ICMP PTB) reassemble a fragmented IPsec encapsulated. That reassembled packet may exceed the size to be processed by IPsec.
Similarly, even without fragmentation, the LTP MTU may exceed the capacity of the IPsec hardware in which case a IPsec encapsulated may not generate a LTP ICMP PTB but may not be further processed.
Even though MTU values may be sent via a LTP ICMP PTB message, we do envision that the communication of the LMTU via an IKE notification may provide some advantages over simply relying on LTP ICMP messages. 
However, please note these advantages are only secondary and only mentioned here as an information.
At first the IKE channel is authenticated channel that ensures the LMTU is 1) received by the ingress Security Gateway, 2) is integrity protected and 3) can be appropriately bound to the corresponding SA. An ICMP PTB message when sent from the egress Security Gateway is not protected and when UDP encapsulation is used (see {sec-sec}) and may not carry the SPI of the IPsec encapsulated TTP (see {sec-df1}). However, these advantages are only provided by the egress interface and so that mechanism cannot be used by any other node, and so cannot be used for PMTU discovery.
Secondly, the IKE notification MAY be sent together with the TTP ICMP PTB sent by the router. This may improve the network latency and optimizes the use of the security gateway resources, especially when the SA has been set for multiple Sources. In fact the TTP ICMP PTB sent by the egress router is sent specifically to the sending source, and so one can expect the ICMP PTB being sent to every source. By sending the notification via IKE, the information is received by the ingress Security Gateway which can take action globally for all Sources associated to the SA. This prevents the large packet greater than the MTU to be encrypted and sent to the egress router for nothing.</t>

<t>This document does not discuss these optimizations.</t>

<section anchor="illustrative-example"><name>Illustrative example</name>

<t>This section describes an illustrative example to provide a high level overview.</t>

<figure title="Overview mechanism" anchor="fig-overview"><artwork><![CDATA[
Source          Security             Security             Destination
or              Gateway              Gateway              or
Sender       (Ingress node)        (Egress node)          Receiver

+--+             +---+                 +---+              +---+
|  |  +  +  +    |   |  +  +  +  +  +  |   |  +  +  +  +  |   |
+--+  routers    +---+    routers      +---+  routers     +---+
                  <--------------------->
                            N
1) Mid-tunnel (performed by a router on N)
  (only for IPv4 DF=0  TLP)
                         +---+---+---+---+---+--+
                         |IPi|IPe|ESP|IPs|IPd|Da| (TLP)
                         +---+---+---+---+---+--+
                     +---+---+--+
                     |IPi|IPe|ta| (TLP)
                     +---+---+--+

2) Egress node detects fragmentation
     - a) it collects IPVersion the IP version of the first fragment
         as well as FragLen, the fragment length
     - b1) If all segments can be reassembled and the reassembled
         packet is properly decrypted a Link Maximum Atomic
         Packet Notification (LMAP) is sent on the IKEv2 channel.
          [IKEv2]
          <---  N( LMAP [ IPVersion, FragLen] )
     - b2) If the packet is too big and cannot be fully processed, an
         additional Packet Too Big Notification (PTB) that specifies
         the Link MTU (LMTU) of the router component of the egress
         node (on network N) as well as the effective MTU to receive
         (EMTU_R). Both are configuration parameters.
         An ICMP PTB message may also be sent by the egress node.
         This is considered as independent from the fact that the 
         egress Security Gateway is sending an IKE PTB or not.
         Note that this ICMP may not contain even the SPI, and so is
         likely to not carry sufficient information to the ingress node,
         so any action be taken.
          [IKEv2]
          <---  N( LMAP [ IPVersion, FragLen] )
                N( PTB [LMTU, EMTU_R]
          [ESP]
          <--- ESP( ICMP PTB )

3) Upon receiving the LMAP or optionally the ingress node
  a) Update the TMTU so that the Source performs source fragmentation
    with TTP packets that are not fragmented.
  Source fragmentation
  (IPv6 or IPv4)
    +---+---+--+
    |IPs|IPd|Da|  (TTP)
    +---+---+--+
+---+---+--+
|IPs|IPd|ta|
+---+---+--+


  b) Performs inner fragmentation TTP packets that exceeds the TMTU
    and will generate some fragments.
  Inner fragmentation (performed by the Ingress node)
  (only for IPv4 DF=0 TTP)

                +---+---+---+---+---+--+
                |IPi|IPe|ESP|IPs|IPd|Da| (TLP)
                +---+---+---+---+---+--+
            +---+---+---+---+---+--+
            |IPi|IPe|ESP|IPs|IPd|ta| (TLP)
            +---+---+---+---+---+--+

In both cases the egress node does not proceed to reassembly operations
                                                +---+---+--+
                                                |IPs|IPd|Da|  (TTP)
                                                +---+---+--+
                                            +---+---+--+
                                            |IPs|IPd|ta|
                                            +---+---+--+

]]></artwork></figure>

</section>
<section anchor="related-works"><name>Related works</name>

<t>This work differs from <xref target="I-D.ietf-intarea-tunnels"/> in that <xref target="I-D.ietf-intarea-tunnels"/> which considers the router component - carrying the TTP - and the interface component - handling LTP - independent.
Independence of the Tunnel MTU (for TTP) and link layer MTU for (LTP) is provided by performing outer fragmentation when needed.
<xref target="RFC4301"/> takes another view considering the router component can adapt to the specific needs of the interface component.
In our case, the router MTU can be changed so the source sends PTP of an expected TMAP size.
Note however, that a significant difference between MPA and MTU is that fragmentation is considered as a normal operation and that ICMP Packet Too Big (PTB) is only expected when the router is not able to handle the packet - that is when the (reassembled) packet exceeds the MTU (or more explicitly the effective MTU to receive (EMTU_R) or the Link MTU (LMTU)).</t>

<t>The extension described in this document follows <xref target="RFC8900"/>’s recommendations where each layer handles fragmentation at their layer and to reduce the reliance on IP fragmentation to the greatest degree possible.
This document does not describe a Path MTU Discovery (PMTUD)  procedure <xref target="RFC1191"/> nor an Execute Packetization Layer PMTUD (PLMTUD) <xref target="RFC4821"/> procedure.
PLMTUD work has been started in <xref target="I-D.spiriyath-ipsecme-dynamic-ipsec-pmtu"/>.
This document remains focused on providing information on the state of the egress node to the ingress node.
This Information is fragmentation related and includes the notification that fragmentation is being observed as well as the EMTU_R and LMTU value - which are configuration parameters.
This document lets the ingress node interpret these pieces of information and take the necessary actions.
PLMTUD is much more complex especially as IPsec considers multiple channels such as IKE and IPsec protected data and is required to handle black holing scenarios.</t>

<t>Sending LMTU when a too big LTP is received by the egress router is similar to an ICMP PTB except that the message is carried over the IKEv2 channel, and we ensure that sufficient information (like the SPI) is provided to the ingress node so the appropriated traffic selectors can be identified by the ingress node - see <xref target="sec-df1"/> for more details.
EMTU_R is not sent by a LTP ICMP PTB packet.</t>

</section>
<section anchor="sec-df1"><name>Why not using DF=1 to avoid Mid fragmentation ?</name>

<t>One can reasonably question why setting the IPv4 DF=1 is not sufficient to avoid fragmentation.
While DF=1 avoids fragmentation, it can easily fall into black holing scenarios, unless one can ensure that ICMP PTB messages are effectively received with sufficient information by the ingress node to take appropriate actions.
This is not the case in practice, which is the reason DF is very commonly set to 0.</t>

<t>Suppose the Don't Fragment bit to 1 in the IPv4 Header of the Tunnel Link Packet.
If that packet becomes larger than the link Maximum Transmission Unit (LMTU), the packet is dropped by an on-path router and an ICMPv4 message Packet Too Big (PTB) <xref target="RFC0792"/> is returned to the sending address.
The ICMPv4 PTB message is a Destination Unreachable message with Code equal to 4 and was augmented by <xref target="RFC1191"/> to indicate the acceptable MTU.
Unfortunately, one cannot rely on such a procedure as in practice some routers do not check the MTU and as such do not send ICMPv4 messages.
In addition, when ICMPv4 messages are sent these messages are unprotected, and may be blocked by firewalls or ignored.
This results in IPv4 packets being dropped without the security gateways being aware of it which is also designated as black holing.
To prevent this situation, IPv4 packets often set their DF bit set to 0.
In this case, as described in <xref target="RFC0792"/>, when a packet size exceeds its MTU, the node fragments the incoming packet in multiple fragments.</t>

<t>In addition to the above reasons DF=1 is not appropriate for ESP, there is another important reason that ICMP does not work almost completely for ESP.</t>

<t><xref target="fig-icmpv4"/> describes the ICMPv4 PTB as defined in <xref target="RFC1191"/> and to be useful to the ingress node, the ICMP PTB should at least carry the SPI that would identify the incoming traffic associated to that ICMP PTB.
This information is carried in the “Internet Header + 64 bits of Original Datagram Data” field which in our case carries the tunnel IP header with an additional 8 bytes.</t>

<figure title="ICMP PTB" anchor="fig-icmpv4"><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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Type = 3    |   Code = 4    |           Checksum            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           unused = 0          |         Next-Hop MTU          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      Internet Header + 64 bits of Original Datagram Data      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork></figure>

<t>When ESP is encapsulated in UDP or TCP, the 8 bytes correspond to the UDP header and the TCP header is even larger. As a result, the SPI cannot be derived from the 8 bytes being provided and the ingress node cannot identify the traffic selector and proceed to the next step.</t>

<t>Note also that when the SPI is identified, the ingress node may not exactly know which Source has generated the ICMP PTB as the SA traffic selector is defined by a range of IP addresses and as such may contain multiple Sources. The Path MTU is propagated to the Source as described in <xref section="8.2" sectionFormat="comma" target="RFC4301"/>, that is to say by by updating the PMTU information of the SA and upon receiving a packet that matches that SA and whose size exceeds the PMTU of the SA, discard that packet and sends back an ICMP PTB message to the Source.</t>

</section>
</section>
<section anchor="sec2"><name>Requirements Language</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>

<t>Tunnel, Ingress node, Egress node, Ingress Interface, Egress interface, Tunnel Transit Packets (TTP), Tunnel Link Packet (TLP), Link MTU (LMTU), Tunnel MTU (TMTU), Tunnel maximum atomic packet (TMAP), effective MTU to receive (EMTU_R) are defined in <xref target="I-D.ietf-intarea-tunnels"/>.</t>

</section>
<section anchor="link-maximum-atomic-packet-and-packet-too-big-support-negotiation"><name>Link Maximum Atomic Packet and Packet Too Big Support Negotiation</name>

<t>During an IKEv2 negotiation, the initiator and the responder indicate their support for the Link Maximum Atomic Packet and Packet Too Big Extension by exchanging the LMAP_AND_PTB_SUPPORTED notifications.
This notification MUST be sent in the IKE_AUTH exchange (in case of multiple IKE_AUTH exchanges - in the first IKE_AUTH message from initiator and in the last IKE_AUTH message from responder).
If both the initiator and the responder send this notification during the IKE_AUTH exchange, peers may notify each other with an IPv4 Link Maximum Atomic Packet Notification when fragmentation is observed.
Upon receiving such notifications, the peers may take the necessary actions to prevent such fragmentation to occur.</t>

<figure><artwork><![CDATA[
Initiator                         Responder
-------------------------------------------------------------------
HDR, SA, KEi, Ni -->
                         <-- HDR, SA, KEr, Nr
HDR, SK {IDi, AUTH,
     SA, TSi, TSr,
     N(LMAP_AND_PTB_SUPPORTED)} -->
                         <-- HDR, SK {IDr, AUTH,
                             SA, TSi, TSr,
                             N(LMAP_AND_PTB_SUPPORTED)}
]]></artwork></figure>

</section>
<section anchor="sec-send-lmap"><name>Sending a Link Maximum Atomic Packet Notification</name>

<t>The egress security gateway detects fragmentation occurred when it receives an initial fragment; e.g. with the Flags' More Fragment Bit set to 1 and the Fragment Offset set to 0.
Upon receiving such a packet, the egress node determines the IP version (IPVersion) and the fragment length FragLen).
For an IPv4 packet, FragLen is the Total Length field (see <xref target="RFC0791"/>).
For an IPv6 packet FragLen is the Payload Length (see <xref section="3" sectionFormat="comma" target="RFC8200"/>.
Note that these values have different meanings as with an IPv6 fragment, FragLen does not include the IPv6 header but only the payload.</t>

<t>The egress node sends the LMAP notification payload that contains IPVersion and FragLen.</t>

<t>The egress node SHOULD send a maximum of one LMAP notification per (reassembled) received packet.
However, since this extension is especially expected on nodes dealing with high traffic rates, the notification is expected to be sent at reasonable rates per Security Associations.
More specifically, the use of the IKEv2 provides a reliable channel which makes sending redundant notifications unnecessary.
Then, the notification rate needs to account for the time the egress node adjusts the TMTU, and that TMTU remains implemented.
More details are provided in <xref target="sec-sec"/>.</t>

<figure><artwork><![CDATA[
Egress Security Gateway                 Ingress Security Gateway
-------------------------------------------------------------------
HDR SK { N(LMAP)} -->
]]></artwork></figure>

</section>
<section anchor="sec-recv-lmap"><name>Receiving a Link Maximum Atomic Packet Notification</name>

<t>Upon receiving a LMAP notification, the ingress node derives the tunnel MAP (TMAP) from the Link MAP (LMAP) derived by the FragLen and IPVersion.</t>

<figure title="Computation of TMAP" anchor="fig-tmap"><artwork><![CDATA[
if IPVersion is 4:
  LMAP = FragLen
elif IPVersion is 6:
  LMAP = FragLen + 40
TMAP = LMAP - outer IP header - encapsulation overhead
]]></artwork></figure>

<dl>
  <dt>where</dt>
  <dd><t/></dd>
  <dt>IPVersion:</dt>
  <dd>
    <t>The IP version of the fragment provided by the LMAP notification (see <xref target="sec-send-lmap"/>).</t>
  </dd>
  <dt>FragLen:</dt>
  <dd>
    <t>The Fragment length provided by the LMAP notification (see <xref target="sec-send-lmap"/>).</t>
  </dd>
  <dt>LMAP:</dt>
  <dd>
    <t>For an IPv4 packet, LMAP is directly provided by the fragment length of the LMAP Notification.
For an IPv6 packet, LMAP needs to adds the IPv6 Header length (40 bytes) to the fragment length of the LMAP Notification.</t>
  </dd>
  <dt>outer IP header:</dt>
  <dd>
    <t>The IP header of the LTP
encapsulation overhead:
 contains the ESP header, the ESP Trailer including the variable Pad field.
When the padding is minimizing the Pad Len, the encapsulation header is set to 14 (+ the size of the ICV).
The overhead SHOULD also estimate IP options or IP extensions.</t>
  </dd>
</dl>

<t>The ingress security gateway SHOULD propagate the TMAP as the tunnel MTU back to the Source so the size of future TTP packets does not exceed the TMAP - eventually performing source fragmentation.
To do so, the ingress node sets the LMTU to TMAP for all traffic designated by the SA.
In this case the LMTU is the MTU associated with the link of the router interface of the ingress node that faces the Source's network.
Upon receiving a TLP larger than the TMAP, the packet is discarded and an ICMP PTB message is returned to the Source which then performs Source Fragmentation (5) (See Section 8.2.1. of <xref target="RFC4301"/>).
It is worth mentioning that only future packets will be impacted, and not those causing fragmentation.</t>

<t>When the TLP is an IPv4 packet with DF=0, the ingress node SHOULD perform Source Fragmentation of the TTP, also represented as Inner Fragmentation (3), sending chunks that do not exceed TMAP.</t>

<t>Figure 11 in Section 4.2.2 of <xref target="I-D.ietf-intarea-tunnels"/> with tunnel MTU set to TMAP achieves both recommendations, while Figure 12 in Section 4.2.2 describes the inner fragmentation.</t>

</section>
<section anchor="sec-send-ptb"><name>Sending a Packet Too Big Notification</name>

<t>A packet can be rejected because the size of the LTP exceeds the LMTU (of the router component) or when the (reassembled) LTP exceeds the EMTU_R (of the interface component) and so IPsec decapsulation cannot be done.</t>

<t>When the LTP size exceeds the EMTU_R, the egress node SHOULD send a Packet Too Big (PTB) notification that includes the EMTU_R and the LMTU.
In addition, if the packet results from a reassembly operation, the egress node MUST send a LMAP notification with the LMAP.
If the packet does not result from a reassembly operation, the egress node MUST NOT send a LMAP notification.</t>

<figure><artwork><![CDATA[
Egress Security Gateway                 Ingress Security Gateway
-------------------------------------------------------------------
HDR SK { N(PTB) } -->
]]></artwork></figure>

</section>
<section anchor="receiving-a-packet-too-big-notification"><name>Receiving a Packet Too Big Notification</name>

<t>Upon receiving a PTB notification, the egress node computes the Tunnel MTU (TMTU) as follows:</t>

<figure title="Computation of TMTU" anchor="fig-tmtu"><artwork><![CDATA[
TMTU = EMTU_R - outer IP header - encapsulation overhead
if LMAP notification is not received:
  TMAP is derived from the LMAP notification
else:
  TMAP = LMTU - outer IP header - encapsulation overhead
TMAP = min( TMAP, TMTU )

]]></artwork></figure>

<dl>
  <dt>with the same notation as in <xref target="fig-tmap"/>:</dt>
  <dd><t/></dd>
  <dt>EMTU_R:</dt>
  <dd>
    <t>The value provided in the PTB notification related to the MTU associated to the egress interface (see <xref target="sec-send-ptb"/>)</t>
  </dd>
  <dt>LMTU :</dt>
  <dd>
    <t>The value provided in the PTB notification related to the LMTU associated to the egress router (see <xref target="sec-send-ptb"/>)</t>
  </dd>
</dl>

<t>The ingress node SHOULD proceed with TMAP as described in <xref target="sec-recv-lmap"/>.</t>

<t>The ingress node MUST ensure the size of the TTP do not exceed the computed TMTU and MUST ensure the size of the LTP do not exceed the LMTU provided in the PTB notification.</t>

</section>
<section anchor="payload-description"><name>Payload Description</name>

<t><xref target="fig:notify"/> illustrates the Notify Payload packet format as described in Section 3.10 of <xref target="RFC7296"/> with a 4 bytes path allowed MTU value as notification data.
This format is used for both the LMAP_AND_PTB_SUPPORTED, LMAP and PTB notifications.</t>

<figure title="Notify Message Format" anchor="fig:notify"><artwork><![CDATA[
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Next Payload  |C|  RESERVED   |         Payload Length        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Protocol ID  |   SPI Size    |      Notify Message Type      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
~                       Notification Data                       ~
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork></figure>

<t>The fields Next Payload, Critical Bit, RESERVED and Payload Length are defined in <xref target="RFC7296"/>. Specific fields defined in this document are:</t>

<dl>
  <dt>Protocol ID (1 octet):</dt>
  <dd>
    <t>set to zero.</t>
  </dd>
  <dt>SPI Size (1 octet):</dt>
  <dd>
    <t>set to zero.</t>
  </dd>
  <dt>Notify Message Type (2 octets):</dt>
  <dd>
    <t>Specifies the type of notification message. It is set to TBD1 for the LMAP_AND_PTB_SUPPORTED notification, TBD2 for the LMAP notification and TBD3 for the PTB notification.</t>
  </dd>
  <dt>Notification Data:</dt>
  <dd>
    <t>Specifies the data associated to the notification message. It is empty for the LMAP_AND_PTB_SUPPORTED notification or a 4 octets that contains the MTU value for the LMAP and PTB notification - as represented in <xref target="fig:LMAP_data"/> and <xref target="fig:PTB_data"/>.</t>
  </dd>
</dl>

<figure title="Notification Data for LMAP" anchor="fig:LMAP_data"><artwork><![CDATA[
 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|IPVers |       Reserved        |          FragLen              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork></figure>

<t>with:</t>

<dl>
  <dt>IPVersion (4 bits):</dt>
  <dd>
    <t>The IPversion of the received packet</t>
  </dd>
  <dt>Reserved:</dt>
  <dd>
    <t>Reserved bytes MUST be set by the egress node to zero and MUST be ignored by the ingress node.</t>
  </dd>
  <dt>FragLen (2 bytes):</dt>
  <dd>
    <t>The FragLen value (see <xref target="sec-send-lmap"/>)</t>
  </dd>
</dl>

<figure title="Notification Data for PTB" anchor="fig:PTB_data"><artwork><![CDATA[
 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                         LMTU                                  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        EMTU_R                                 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork></figure>

<t>with:</t>

<dl>
  <dt>LMTU (4 bytes):</dt>
  <dd>
    <t>The LMTU of the egress router</t>
  </dd>
  <dt>EMTU_R (4 bytes):</dt>
  <dd>
    <t>The EMTU_R of the egress interface</t>
  </dd>
</dl>

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

<t>IANA is requested to allocate two values in the "IKEv2 Notify Message Types - Status Types" registry
(available at https://www.iana.org/assignments/ikev2-parameters/ikev2-parameters.xhtml#ikev2-parameters-16) with the following definition:</t>

<figure><artwork><![CDATA[
+=======+================================+
| Value | NOTIFY MESSAGES - STATUS TYPES |
+=======+================================+
| TBD1  | LMAP_AND_SUPPORTED             |
| TBD2  | LMAP                           |
| TBD3  | PTB                            |
+-------+--------------------------------+
]]></artwork></figure>

</section>
<section anchor="sec-sec"><name>Security Considerations</name>

<t>This document defines an IKEv2 extension to enable an egress node to notify an ingress node that fragmentation is happening as well as the observed fragment length.
In addition, the extension also enables an egress node to notify an ingress node that a packet too big has been discarded, together with some complementary information to appropriately update the MTU.</t>

<t>These pieces of information are transferred over the authenticated IKEv2 channel which ensures the origin of the message.
Assuming the egress node is trusted, the ingress node can trust what is being reported effectively observed (like fragmentation is happening, the observed fragment length, a packet too big has been received) by the egress node and that some information are effectively accurate such as the egress LMTU and EMTU_R.
When fragmentation happens and a LMAP notification is being sent, the egress node MUST send the notification once the reassembled packet has been decapsulated.
This ensures that fragmentation has been performed over an authenticated TLP and ensures the TLP has not been forged by any attacker.
With IPv6, only outer fragmentation is permitted so, the ingress node can validate the provided information.
However, sending the notification after the IPsec decapsulation enables the egress node to detect potential injection attacks and prevent sending an unnecessary notification, that may be part of a DDoS attack targeting the ingress node itself.
With IPv4 an attacker could set the DF=0 which would allow any mid tunnel fragmentation.
IPsec (ESP or AH) does not cover the DF flag, so the egress cannot trust the fragment length observed has not been forged, and the security considerations related to MTU discovery <xref target="RFC0791"/>, <xref target="RFC8900"/>, <xref target="RFC4963"/>, <xref target="RFC6864"/>, <xref target="RFC1191"/> apply here.
Note that information carried by the LMAP notification is never carried by ICMP, and all LMAP may share with ICMP is that this information will be used to update the MTU.</t>

<t>The egress node may not be able to decrypt the encrypted TTP packet if the full encrypted TTP cannot be built.
One possibility is that too many fragments are being sent over a too long period of time (slowloris-like attacks) (see <xref section="3.7" sectionFormat="comma" target="RFC8900"/>).
Another possibility is that one fragment exceeds the LMTU or that the reassembled (unverified) encrypted TTP exceeds the EMTU_R.
In both cases, a PTB notification SHOULD be sent and if fragmentation is observed a LMAP MUST be sent together with the PTB notification.
Information carried by the PTB (LMTU and EMTU_R) can be trusted.
Without this extension this information would have been carried by ICMP.
In many deployments, the ICMP channel may be unprotected and ICMP packets may be discarded by firewalls and never reach the egress node.
In addition, the description provided by <xref target="I-D.ietf-intarea-tunnels"/> tends to indicate that the ICMP channel remains between the router components of the ingress and egress nodes and as such are not provided to the interfaces component.
Finally, as detailed in <xref target="sec-df1"/> an ICMP PTB message contains a portion of the encrypted ESP packet, which may not sufficient to deduce the SPI and associated traffic selectors, and as such prevent the ingress node to identify the traffic flow that generates the fragmentation.
In any case, this results in the information not being available to take the appropriate action.
Sending the PTB notification over ICMP solves these issues and eases the correlation with the LMAP notification.
In terms of trust, when sufficient information may be sent both on the IKEv2 channel and via a protected ICMP PTB message, the use of the PTB notification achieves similar trust as the one observed with an ICMP PTB message sent over an IPsec protected channel.
For that reason, the ICMP messages SHOULD be protected by IPsec.
The use of two different paths may provide some additional reliability as the same information is taking two different paths and that IKEv2 windows ensures the the information is received - as opposed to the (encrypted) ICMP message that can be dropped.
However, information carried by the LMAP notification cannot be trusted and similar security considerations related to MTU discovery <xref target="RFC0791"/>, <xref target="RFC8900"/>, <xref target="RFC4963"/>, <xref target="RFC6864"/>, <xref target="RFC1191"/> apply here.</t>

<t>During high packet rates, this notification for each of these packets is likely to be used by an attacker to trigger a DDoS attack to both egress and ingress nodes.
As a result, the egress node SHOULD be able to configure the maximum rate at which the notifications are sent.
This includes the ability to indicate that LMAP notifications (without PTB) are not sent when the outer IP addresses are of version IPv6.
The reasoning is that with IPv6, the egress node observes outer fragmentation, in which case the ingress node is already aware of it.
In addition, an egress node SHOULD be able to configure a threshold for number of alerts per SAs before a notification is sent, a rate limit per SA.</t>

</section>
<section anchor="acknowledgements"><name>Acknowledgements</name>

<t>The authors would like to thank Magnus Westerlund, Paul Wouters, Joe Touch, Tero Kivinen for his reviews and valuable comments and suggestions.</t>

</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

    <references title='Normative References' anchor="sec-normative-references">

&RFC6864;
&RFC8900;
&RFC4301;
&RFC1191;
&RFC4821;
&RFC0792;
&RFC2119;
&RFC8174;
&RFC0791;
&RFC8200;
&RFC7296;


    </references>

    <references title='Informative References' anchor="sec-informative-references">

&RFC4963;
&I-D.ietf-intarea-tunnels;
&I-D.spiriyath-ipsecme-dynamic-ipsec-pmtu;


    </references>

</references>



  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA+1963LbVprgf1XpHc44P0JOSMaS1UribSejWHJHE9nWWnKn
eru6UhBxKKENAhxcJCu2Uv0aW7VTNc+yj9JPst/1XACQthP3VGqr2UlHBIFz
+c53v2E6nW5vNVmT24fm+Puj611zkhWvzNPkdbZsl+agKZfZ3Jwm81e2MUmR
6p/nZWm+zS7Ns7LJFtk8abKyMEevG1vU8Nf2VnJxUdnrh+bk6fkBP3f+bXTz
9lZazotkCfOmVbJopnnWTrNVbedLO81e2evd6bJpp6mdN9Od+9tb2ap6aJqq
rZvd+/e/ur+7vVU3lU2WsOyj8ycwIXx5aM7svK2y5nZ76+YSfjml4ba3Xt3A
l6KxVWGb6SFOt70Fy3ho6ibd3treWmUPt7eMacr5Q3Nra/y7LisYf1H7C7fL
4DtM2DZXZUXP4WeqfxiTFXDX4Qwg2fqLvNXDJLvNisv4p7KCtR5V2byuES56
uSrxUGyaNWXlr9plkuUPzVUCP6czANq/WXlyNi+XG1bzNLtM2rzpr6jIbN7/
dc2iZPqUnpot+an3WsKLQYC8sMVN8p4AkbkrfuS99/54Zv7XFTzQnfpxWVz+
NbPdHzdPPueHZj/hQ53p8X/T6dQkF4CaybzB7+dXWW0A09ulLRqT2kVW2No0
V/YXUZsjMEBVk2fLrAFoJHVtlxf5rSlXtiLaqs2FRSyD74uyWtrUXNzSnPay
snVtaqESc5k09ia5nbmVWjeBLZKLHJaaFOuewjUUSNG3JmtqgDXfNi9bpLRV
UjUwZ9KYRZVc4u6ZR8AkV8lqZQtcYFnxLbi2ys5tdg1rHeHGVyUspMmSHPbl
tmjTsTk6OzUrhgoM1QBgLgAw+Ehz1cLsSQFrgv0DrOfV7aqxKezuuDAXZXMF
v9a2noSgKMrUmlVVXmcpbFYP4rxKinqZ1QSJlwWAefT0/OUY9ojwpI3AqGft
/Cq85GCG4ys4aAKAFCDOIrtsK2tg91W5qjKAYs6gO2+LAmlw7eyAU3ldwpbq
7LKA51KTwGLPXyIA9WH4NjqnVU5xvhWwX0S5GPoIcAEZAxFBiNBqeM6G4cV4
vMzSNLf47RPknlWZtnMa5c0ngAs7d/jLCz0bPE6dC7Cm2YRvcKL/0WYVYlcK
7A2GTHK4VpdtNYeLN1cZALYtUluZK5tc35q8TFK8AXgNIhoMWF1nczzjyypJ
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
dmbDV+sWkL3WJIn/BzqmGexijgAA

-->

</rfc>

