<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="3"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc category="std" docName="draft-ietf-idr-bgp-ls-link-mtu-11"
     ipr="trust200902">
  <front>
    <title abbrev="Signaling MTU using BGP-LS">Signaling Maximum Transmission Unit (MTU) using BGP-LS</title>

    <author fullname="Yongqing Zhu" initials="Y. " surname="Zhu">
      <organization>China Telecom</organization>

      <address>
        <postal>
          <street>109, West Zhongshan Road, Tianhe District.</street>

          <city>Guangzhou</city>

          <code>510000</code>

          <country>China</country>
        </postal>

        <email>zhuyq8@chinatelecom.cn </email>
      </address>
    </author>

    <author fullname="Zhibo Hu" initials="Z. " surname="Hu">
      <organization>Huawei Technologies</organization>

      <address>
        <postal>
          <street>Huawei Bld., No.156 Beiqing Rd.</street>

          <city>Beijing</city>

          <code>100095</code>

          <country>China</country>
        </postal>

        <email>huzhibo@huawei.com</email>
      </address>
    </author>

    <author fullname="Shuping Peng" initials="S. " surname="Peng">
      <organization>Huawei Technologies</organization>

      <address>
        <postal>
          <street>Huawei Bld., No.156 Beiqing Rd.</street>

          <city>Beijing</city>

          <code>100095</code>

          <country>China</country>
        </postal>

        <email>pengshuping@huawei.com</email>
      </address>
    </author>

    <author fullname="Robbins Mwehaire" initials="R. " surname="Mwehaire">
      <organization>MTN Uganda Ltd.</organization>

      <address>
        <postal>
          <street/>

          <city/>

          <code/>

          <country>Uganda</country>
        </postal>

        <email>Robbins.Mwehair@mtn.com</email>
      </address>
    </author>

    <date year="2026"/>

    <abstract>
      <t>Segment Routing (SR) leverages the source routing paradigm, which
      can be directly applied to the MPLS architecture and IPv6 architecture,
      with a new type of routing header. Since multiple labels or SRv6 SIDs
      are pushed in the packets, it is more likely that the packet size exceeds
      the path MTU of SR tunnel. However, SR uses the IGP as the routing protocol
      and does not support the negotiation of the Path MTU.</t>

      <t>BGP Link State (BGP-LS) describes a mechanism by which link-state and
      TE information can be collected from networks and shared with external
      components using the BGP routing protocol. This document specifies the
      extensions to BGP-LS to carry MTU information of link. The centralized
      controller (PCE/SDN) calculates the Path MTU while completing the service
      path calculation based on the information transmitted by the BGP-LS.</t>

      <t/>
    </abstract>

    <note title="Requirements Language">
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
      "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
      document are to be interpreted as described in <xref
      target="RFC2119">RFC 2119</xref>.</t>
    </note>
  </front>

  <middle>
    <section title="Introduction">
      <t><xref target="RFC9552"/>describes the implementation mechanism of
      BGP-LS by which link-state and TE information can be collected from
      networks and shared with external components using the BGP routing
      protocol <xref target="RFC4271"/>. BGP-LS allows the necessary
      Link-State Database (LSDB) and Traffic Engineering Database (TEDB)
      information to be collected from the IGP within the network, filtered
      according to configurable policy, and distributed to the PCE as
      necessary.</t>

      <t>The appropriate MTU size guarantees efficient data transmission. If
      the MTU size is too small and the packet size is large, fragmentation
      may occur too much and packets are discarded by the QoS queue. If the
      MTU configuration is too large, packet transmission may be slow. Path MTU
      is the maximum length of a packet that can pass through a path without
      fragmentation. <xref target="RFC1191"/> describes a technique for
      dynamically discovering the maximum transmission unit (MTU) of an
      arbitrary internet path.</t>

      <t>The traditional MPLS tunneling technology has signaling for
      establishing a path. <xref target="RFC3988"/> defines the mechanism for
      automatically discovering the Path MTU of LSPs. For a
      certain FEC, the LSR compares the MTU advertised by all downstream
      devices with the MTU of the FEC output interface in the local device,
      and calculates the minimum value for the upstream device.</t>

      <t><xref target="RFC3209"/> specify the mechanism of MTU signaling in
      RSVP-TE. The ingress node of the RSVP-TE tunnel sends a Path message to
      the downstream device. The Adspec object in the Path message carries the
      MTU. Each node along the tunnel receives a Path message, compares the
      MTU value in the Adspec object with the interface MTU value and MPLS MTU
      configured on the physical output interface of the local tunnel,
      obtains the minimum MTU value, and puts it into the newly constructed
      Path message and continues to send it to the downstream equipment. Thus,
      the MTU carried in the Path message received by the Egress node is the
      minimum value of the path MTU. The Egress node brings the negotiated
      Path MTU back to the Ingress node through the Resv message.</t>

      <t>Segment Routing (SR) described in <xref target="RFC8402"/> leverages
      the source routing paradigm. Segment Routing can be directly applied to
      the MPLS architecture with no change on the data plane <xref
      target="RFC8660"/> and applied to the IPv6 architecture with a new type
      of routing header called the SR header (SRH) <xref
      target="RFC8754"/>. <xref
      target="RFC9085"/> defines SR extensions
      to BGP-LS and specifies the TLVs and sub-TLVs for advertising SR
      information. Based on the SR information reported by the BGP-LS, the SDN
      can calculate the end-to-end explicit SR-TE paths or SR Policies.</t>

      <t>Nevertheless, Segment Routing is a tunneling technology based on the
      IGP protocol as the routing protocol, and there is no additional
      signaling for establishing the path. so the Segment Routing tunnel
      cannot currently support the negotiation mechanism of the MTU. Multiple
      labels or SRv6 SIDs are pushed in the packets. This causes the length of
      the packets encapsulated in the Segment Routing tunnel to increase
      during packet forwarding. This is more likely to cause packet size
      exceed the traditional MPLS packet size.</t>

      <t>This document specify the extension to BGP Link State (BGP-LS) to
      carry link maximum transmission unit (MTU) messages.</t>

      <t/>
    </section>

<section title="Terminology">

<t>This draft refers to the terms defined in <xref target="RFC8201"/>, <xref target="RFC4821"/> and <xref target="RFC3988"/>.</t>

      <t><figure>
          <artwork align="left"><![CDATA[

   MTU:  Maximum Transmission Unit, the size in bytes of the largest IP
      packet, including the IP header and payload, that can be
      transmitted on a link or path.  Note that this could more properly
      be called the IP MTU, to be consistent with how other standards
      organizations use the acronym MTU.

   Link MTU:  The Maximum Transmission Unit, i.e., maximum IP packet
      size in bytes, that can be conveyed in one piece over a link.  Be
      aware that this definition is different from the definition used
      by other standards organizations.

      For IETF documents, link MTU is uniformly defined as the IP MTU
      over the link.  This includes the IP header, but excludes link
      layer headers and other framing that is not part of IP or the IP
      payload.

      Be aware that other standards organizations generally define link
      MTU to include the link layer headers.
      
      For the MPLS data plane, this size includes the IP header and data (or 
      other payload) and the label stack but does not include any lower-layer 
      headers.  A link may be an interface (such as Ethernet or Packet-over-
      SONET), a tunnel (such as GRE or IPsec), or an LSP.

   Path:  The set of links traversed by a packet between a source node
      and a destination node.

   Path MTU, or PMTU:  The minimum link MTU of all the links in a path
      between a source node and a destination node.

]]></artwork>
        </figure></t>

</section>

    <section title="Deploying scenarios">
      <t>This document suggests a solution to extension to BGP Link State
      (BGP-LS) to carry maximum transmission unit (MTU) messages. The MTU
      information of the link is acquired through the process of collecting
      link state and TE information by BGP-LS. Concretely, a router maintains
      one or more databases for storing link-state information about nodes and
      links in any given area. The router's BGP process can retrieve topology
      from these IGP, BGP and other sources, and distribute it to a consumer, either directly or via
      a peer BGP speaker (typically a dedicated Route Reflector). <xref
      target="RFC7176"/> specifies a possible way of using the IS-IS mechanism and extensions for link
      MTU Sub-TLV. In the case of inter-AS scenario (e.g., BGP EPE), the link MTU of the inter-AS link can be collected via BGP-LS directly.</t>

      <t>As per <xref target="RFC9552"/>, the collection of link-state and TE
      information and its distribution to consumers is shown in the following
      figure.</t>



      <t><figure align="left" suppress-title="false" pn="figure-1">
        <name slugifiedName="name-collection-of-link-state-an">Collection of Link-State and TE Information</name>
          <artwork align="left"><![CDATA[
            +-----------+
            | Consumer  |
            +-----------+
                  ^
                  |
            +-----------+             +-----------+
            |    BGP    |             |    BGP    |
            |  Speaker  |<----------->|  Speaker  |  +-----------+
            |    RR1    |             |    RRm    |  | Consumer  |
            +-----------+             +-----------+  +-----------+
                ^   ^                       ^             ^
                |   |                       |             |
          +-----+   +---------+             +---------+   |
          |                   |                       |   |
    +-----------+       +-----------+             +-----------+
    |    BGP    |       |    BGP    |             |    BGP    |
    |  Speaker  |       |  Speaker  |    . . .    |  Speaker  |
    |    R1     |       |     R2    |             |    Rn     |
    +-----------+       +-----------+             +-----------+
          ^                   ^                         ^
          |                   |                         |
         IGP                 IGP                       IGP

]]></artwork>
        </figure></t>



<t>Please note that this signaled MTU may be different from the actual MTU, which is usually from configuration mismatches in a control plane and a data plane component.</t>

    </section>

    <section title="BGP-LS Extensions for Link MTU">
      <t><xref target="RFC9552"/> defines the BGP-LS NLRI that can be a Node
      NLRI, a Link NLRI or a Prefix NLRI. The corresponding BGP-LS attribute
      is a Node Attribute, a Link Attribute or a Prefix Attribute. <xref
      target="RFC9552"/> defines the TLVs that map link-state information to
      BGP-LS NLRI and the BGP-LS attribute. Therefore, according to this
      document, a new sub-TLV is added to the Link Attribute TLV. It is an independent attribute TLV that can be used for the link NLRI advertised with all the Protocol IDs.</t>

      <t>The format of the sub-TLV is as shown below.</t>

      <t><figure align="left" suppress-title="false" pn="figure-2">
        <name slugifiedName="Sub-TLV-Format-for-Link-MTU">Sub-TLV Format for Link MTU</name>
          <artwork align="left"><![CDATA[

      x  TYPE   - TBD
      x  LENGTH - Total length of the value field, it should be 2
      x  VALUE  - 2-byte MTU value of the link

                           No. of Octets
      +-----------------+
      |    MTU value    |       2
      +-----------------+

]]></artwork>
        </figure>Whenever there is a change in MTU value represented by Link
      Attribute TLV, BGP-LS should re-originate the respective TLV with the
      new MTU value.</t>

      <t/>
    </section>

    <section anchor="IANA" title="IANA Considerations">
      <t>This document requests assigning a new code-point from the BGP-LS
      Link Descriptor and Attribute TLVs registry as specified in section
      4.</t>

      <figure>
          <artwork align="left"><![CDATA[
   Value                  Description                  Reference
   ---------------------- ---------------------------- --------------
   TBD                    Link MTU                     This document

]]></artwork>
        </figure>

    </section>

    <section anchor="Security" title="Security Considerations">
      <t>Procedures and protocol extensions defined in this document do
        not affect the base BGP security model. See <xref target="RFC6952"/> for details.
        The security considerations of the base BGP-LS specification as
        described in <xref target="RFC9552"/> also apply.</t>
      <t>SR operates within a trusted SR domain <xref target="RFC8402"/> and its security
        considerations also apply to BGP sessions when carrying MTU information.
        The MTU information advertised to controllers and other applications via
        BGP-LS is expected to be used entirely within this trusted SR domain.</t>
      <t>The general guidance for BGP-LS with respect to the isolation of
        BGP-LS sessions from BGP sessions for other address-families (refer
        to security considerations of <xref target="RFC9552"/>) may be used to ensure that
        the MTU information is not advertised by accident or error to an EBGP
        peering session outside the SR domain.</t>
      <t>Additionally, it may be considered that the export of MTU information,
        as described in this document, poses a risk to the network's cybersecurity.
        Specifically, attackers are better able to construct segmented packets for
        fragmentation attacks through MTU leakage to confuse network devices, consume
        resources, or perform other attacks by sending a large number of fragmented
        packets with different offsets and sizes. Thus, it is the responsibility of
        the network operator to ensure that only trusted nodes (that include both
        routers and controller applications) are configured to receive such
        information.</t>
    </section>

    <section anchor="Acknowledgements" title="Acknowledgements">
      <t/>
    </section>

    <section title="Contributors">
      <t><figure>
          <artwork><![CDATA[Gang Yan
Huawei 
China]]></artwork>
        </figure></t>

      <t>Email:yangang@huawei.com</t>

      <t><figure>
          <artwork><![CDATA[Junda Yao
Huawei
China]]></artwork>
        </figure></t>

      <t>Email:yaojunda@huawei.com</t>
    </section>
  </middle>

  <back>
    <references title="Normative References">
      <?rfc include="reference.RFC.2119"?>
    </references>

    <references title="Informative References">
      <?rfc include="reference.RFC.3988"?>

      <?rfc include="reference.RFC.9552"?>

      <?rfc include="reference.RFC.4271"?>

      <?rfc include="reference.RFC.1191"?>

      <?rfc include="reference.RFC.3209"?>

      <?rfc include="reference.RFC.8402"?>

      <?rfc include="reference.RFC.8660"?>

      <?rfc include="reference.RFC.7176"?>

      <?rfc include="reference.RFC.8754"?>

      <?rfc include="reference.RFC.8201"?>

      <?rfc include="reference.RFC.4821"?>

      <?rfc include="reference.RFC.9085"?>

      <?rfc include="reference.RFC.6952"?>
    </references>
  </back>
</rfc>
