<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<rfc category="std" docName="draft-ietf-bess-bgp-srv6-args-05"
     ipr="trust200902" updates="9252">
  <?xml-stylesheet 3type='text/xsl' href='rfc2629.xslt' ?>

  <?rfc toc="yes" ?>

  <?rfc symrefs="yes" ?>

  <?rfc sortrefs="yes" ?>

  <?rfc iprnotified="no" ?>

  <?rfc strict="yes" ?>

  <?rfc compact="yes" ?>

  <?rfc subcompact="no" ?>

  <front>
    <title abbrev="SRv6 Argument Signaling for BGP Services">SRv6 Argument
    Signaling for BGP Services</title>

    <author fullname="Ketan Talaulikar" initials="K" surname="Talaulikar">
      <organization>Cisco Systems</organization>

      <address>
        <postal>
          <street/>

          <country>India</country>
        </postal>

        <email>ketant.ietf@gmail.com</email>
      </address>
    </author>

    <author fullname="Kamran Raza" initials="K" surname="Raza">
      <organization>Cisco Systems</organization>

      <address>
        <postal>
          <street/>

          <country>Canada</country>
        </postal>

        <email>skraza@cisco.com</email>
      </address>
    </author>

    <author fullname="Jorge Rabadan" initials="J" surname="Rabadan">
      <organization>Nokia</organization>

      <address>
        <postal>
          <street/>

          <country>USA</country>
        </postal>

        <email>jorge.rabadan@nokia.com</email>
      </address>
    </author>

    <author fullname="Wen Lin" initials="W" surname="Lin">
      <organization>Juniper Networks</organization>

      <address>
        <postal>
          <street/>

          <country>USA</country>
        </postal>

        <email>wlin@juniper.net</email>
      </address>
    </author>

    <date year=""/>

    <area>Routing</area>

    <workgroup>BESS Working Group</workgroup>

    <keyword>BGP</keyword>

    <keyword>SRv6</keyword>

    <abstract>
      <t>RFC9252 defines procedures and messages for SRv6-based BGP services
      including L3VPN, EVPN, and Internet services. This document updates
      RFC9252 and provides more detailed specifications for the signaling and
      processing of SRv6 SID advertisements for BGP Service routes associated
      with SRv6 Endpoint Behaviors that support arguments.</t>
    </abstract>
  </front>

  <middle>
    <section anchor="INTRO" title="Introduction">
      <t>SRv6 refers to Segment Routing instantiated on the IPv6 data plane
      <xref target="RFC8402"/>. SRv6 Service Segment Identifier (SID) refers
      to an SRv6 SID <xref target="RFC8402"/> associated with one of the
      service specific SRv6 Endpoint behaviors on the advertising Provider
      Edge (PE) router for Layer-3 Virtual Private Network (L3VPN), Global
      Internet Routing, and Ethernet Virtual Private Network (EVPN) services
      as defined in <xref target="RFC8986"/>. <xref target="RFC9252"/> defines
      the procedures and messages for the signaling of BGP services including
      L3VPN, EVPN, and Internet services using SRv6 as data plane.</t>

      <t>For certain EVPN services, <xref target="RFC8986"/> introduced the
      End.DT2M SRv6 Endpoint Behavior, which utilizes arguments (i.e.,
      Arg.FE2). <xref target="RFC9252"/> subsequently specified the encoding
      and signaling procedures for the SRv6 SID and its associated argument
      via EVPN Route Type 3 and EVPN Route Type 1, respectively. However,
      during implementation and interoperability testing, it was observed that
      the specifications outlined in <xref target="RFC9252"/> lacked
      sufficient detail, leading to ambiguities in interpretation and
      implementation.</t>

      <t>This document updates <xref target="RFC9252"/> by providing
      additional details and clarifications regarding the signaling of SRv6
      Service SIDs associated with SRv6 Endpoint Behaviors that utilize
      arguments. While the focus is primarily on the signaling of the End.DT2M
      SRv6 Endpoint Behavior via EVPN Route Types 1 and 3, the procedures
      described herein are also applicable to other similar endpoint behaviors
      with arguments that may be signaled using BGP.</t>

      <t>Section 6.3 of <xref target="RFC9252"/> specifies that the SRv6
      Service SID used in the data plane is derived by applying a bitwise
      logical-OR operation between the SID with argument signaled via Route
      Type 1 and the SID with the 'locator + function' components signaled via
      Route Type 3. However, this approach assumes a uniform SID structure
      across all SIDs advertised via EVPN Route Types 1 and 3. This assumption
      is not universally valid, and the procedures in this document remove
      this restriction, ensuring greater flexibility in SRv6 SID
      signaling.</t>

      <t>The descriptions and examples presented in this document do not
      utilize the Transposition Scheme. Consequently, the Transposition Offset
      (TPOS-O) and Transposition Length (TPOS-L) are set to zero, and
      references to MPLS label fields where the function or argument portions
      may be transposed are omitted. However, the same examples could be
      applied with the Transposition Scheme. This document does not introduce
      any modifications to the use of the Transposition Scheme in the
      signaling of EVPN Routes. Implementations are expected to adhere to the
      procedures and recommendations specified in <xref target="RFC9252"/>
      concerning the Transposition Scheme.</t>

      <section anchor="REQ" title="Requirements Language">
        <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.</t>
      </section>
    </section>

    <section anchor="SIDANDARGS"
             title="Advertisement of SRv6 SID and Arguments">
      <t>As specified in <xref target="RFC8986"/>, an SRv6 SID comprises three
      components: Locator (LOC), Function (FUNC), and Argument (ARG). For SRv6
      SIDs associated with SRv6 Endpoint Behaviors that do not support
      argument, the ARG component is not present. Consequently, all bits
      following the FUNC portion MUST be set to zero, and the argument length
      MUST be zero.</t>

      <t>Certain SRv6 Endpoint Behaviors (e.g., End.DT2M) support arguments.
      As specified in Section 3.2.1 of <xref target="RFC9252"/>, the SRv6 SID
      Structure sub-sub-TLV MUST be included when signaling an SRv6 SID
      corresponding to an endpoint behavior that supports argument. This
      ensures that the receiving router can perform consistency verification
      of the argument and correctly encode the ARG value within the SRv6
      SID.</t>

      <t>In certain use cases, the SRv6 SID can be signaled as a complete
      structure, with the LOC:FUNC:ARG components fully encoded within the
      SID. However, there are scenarios where the SRv6 SID, consisting only of
      the LOC:FUNC portion, is signaled in one advertisement, while the ARG
      value is either signaled through a separate advertisement or learned via
      an alternative mechanism. It is the responsibility of the SRv6 Source
      Node to append the ARG component to the LOC:FUNC portion, thereby
      constructing the complete SRv6 SID (LOC:FUNC:ARG). This fully-formed SID
      can then be utilized in the data plane, either as the IPv6 destination
      address of a packet or as a segment within the Segment Routing Header
      (SRH) <xref target="RFC8754"/>, as required.</t>

      <t>Since arguments may be optional, the SRv6 Endpoint Node that owns the
      SID MUST advertise the SRv6 SID Structure along with the LOC:FUNC
      portion of the SRv6 SID to indicate whether arguments are supported for
      that specific SID. A zero Argument Length (AL) value indicates that the
      node does not accept an argument for the given SRv6 SID. Conversely, a
      non-zero AL value specifies the size of the supported argument, along
      with the Locator Block Length (LBL), Locator Node Length (LNL), and
      Function Length (FL) parameters, which define the offset from which the
      node expects the ARG to be encoded. All bits beyond LBL + LNL + FL + AL
      MUST be set to zero.</t>

      <t>The advertisement of the ARG value may be performed either by the
      node that owns the SRv6 SID and is advertising the LOC:FUNC portion of
      that SID, or by another node/mechanism. The advertisement of the ARG
      value MUST specify the size of the argument, its value, and the
      associated SRv6 Endpoint Behavior of the SID. Additionally, the
      specification of the association of the ARG advertisement with the
      corresponding SID(s) for which the argument applies is REQUIRED.</t>
    </section>

    <section anchor="EVPNESI"
             title="End.DT2M Signaling for EVPN ESI Filtering">
      <t>As specified in <xref target="RFC9252"/>, the LOC:FUNC portion of the
      SRv6 SID with End.DT2M behavior is signaled via EVPN Route Type 3
      (Inclusive Multicast Ethernet Tag Route), while the Ethernet Segment
      Identifier (ESI) Filtering ARG (denoted as Arg.FE2 in <xref
      target="RFC8986"/>) is signaled via EVPN Route Type 1 (Ethernet
      Auto-Discovery per Ethernet Segment (A-D per ES) Route). The following
      subsections provide a more detailed specification of the signaling and
      processing mechanisms compared to <xref target="RFC9252"/>.</t>

      <t>ESI Filtering is a split-horizon mechanism used for Multi-Homing
      <xref target="RFC7432"/> or Ethernet-Tree (E-Tree) procedures <xref
      target="RFC8317"/>. ESI Filtering is not applicable in scenarios
      where:<list style="symbols">
          <t>No E-Tree leaf Broadcast, Unknown Unicast, or Multicast (BUM)
          traffic exists,</t>

          <t>No multi-homing is present,</t>

          <t>No split-horizon mechanism is required, or</t>

          <t>The local-bias method (as specified in <xref target="RFC8365"/>)
          is employed.</t>
        </list></t>

      <t>In this document, "ESI Filtering" is used as a general reference to
      the procedure performed by the disposition PE node to prevent forwarding
      of BUM traffic to local Ethernet Segments or local leaf attachment
      circuits, based on the presence of the ESI Filtering ARG.</t>

      <t>The signaling and processing descriptions outlined in the following
      sections also apply to End.DT2M behavior flavors designed for SRv6 SID
      list compression <xref target="I-D.ietf-spring-srv6-srh-compression"/>.
      In deployments where a mix of compressed and uncompressed SIDs is
      present, the behaviors advertised in the Ethernet Auto-Discovery (A-D)
      per ES Routes (EVPN Route Type 1) and Inclusive Multicast Ethernet Tag
      Routes (EVPN Route Type 3) MAY consist of a combination of compressed
      and uncompressed End.DT2M behavior flavors. The procedures in this
      document remains valid for such deployments provided that the argument
      length consistency checks between EVPN Route Type 1 and EVPN Route Type
      3, as described in the following subsections, are satisfied.</t>

      <section anchor="RT1" title="Advertisement of Ethernet A-D per ES Route">
        <t>Ethernet Auto-Discovery (A-D) per ES Routes (EVPN Route Type 1), as
        defined in <xref target="RFC7432"/>, are utilized to enable
        split-horizon filtering and fast convergence in multi-homing
        scenarios. Additionally, A-D per ES Routes facilitate egress filtering
        of BUM traffic originating from a Leaf, as specified in <xref
        target="RFC8317"/>.</t>

        <t>When ESI Filtering is not in use, no ESI Filtering ARG is required
        to be conveyed. However, for backward compatibility and consistency
        with <xref target="RFC9252"/>, the advertisement of this route SHOULD
        include the BGP Prefix-SID Attribute with an SRv6 L2 Service TLV
        carrying an SRv6 Service SID set to ::0 in the SRv6 SID Information
        sub-TLV, with the SRv6 Endpoint Behavior set to End.DT2M. Since the
        End.DT2M behavior supports the use of an ARG, an SRv6 SID Structure
        sub-sub-TLV MUST be included. As no ARG value is required to be
        signaled in this case, the AL MUST be set to 0.</t>

        <t>Following is an example representation of the BGP Prefix-SID
        Attribute encoding in this case:</t>

        <figure anchor="RT1NOARG"
                title="EVPN Route Type 1 without ARG for ESI Filtering">
          <artwork><![CDATA[
BGP Prefix SID Attr:
    SRv6 L2 Service TLV:
        SRv6 SID Information sub-TLV:
            SID: ::0
            Behavior: End.DT2M 
            SRv6 SID Structure sub-sub-TLV:
                LBL: 32, LNL: 16, FL: 16, AL: 0, TPOS-L: 0, TPOS-O: 0

]]></artwork>
        </figure>

        <t>When ESI Filtering is in use, the advertisement of this route MUST
        include the BGP Prefix-SID Attribute with an SRv6 L2 Service TLV
        carrying the SRv6 Service SID that contains the ESI Filtering ARG
        value within the SRv6 SID Information sub-TLV (when not using the
        Transposition Scheme), with the SRv6 Endpoint Behavior set to
        End.DT2M. Since the End.DT2M behavior supports the use of an ARG, an
        SRv6 SID Structure sub-sub-TLV MUST be included. Additionally, as a
        non-zero ARG value is being signaled, the Argument Length (AL) MUST be
        set to the size of the ARG, and the size SHOULD be a multiple of 8.
        The SRv6 SID Structure sub-sub-TLV MUST set the Locator Block Length
        (LBL), Locator Node Length (LNL), and Function Length (FL) fields with
        values that indicate the offset at which the ARG value is encoded
        within the 128-bit SRv6 SID.</t>

        <t>The following is an example representation of the BGP Prefix-SID
        Attribute encoding in this scenario for a 16-bit argument value of
        'aaaa':</t>

        <figure anchor="RT1ARG"
                title="EVPN Route Type 1 with ARG for ESI Filtering">
          <artwork><![CDATA[
BGP Prefix SID Attr:
    SRv6 L2 Service TLV:
        SRv6 SID Information sub-TLV:
            SID: 0:0:0:0:aaaa::
            Behavior: End.DT2M 
            SRv6 SID Structure sub-sub-TLV:
                LBL: 32, LNL: 16, FL: 16, AL: 16, TPOS-L: 0, TPOS-O: 0

]]></artwork>
        </figure>

        <t>In the examples above, it would have been possible to set the LBL,
        LNL, and FL values to 0 and to encode the SRv6 SID as either ::0 or
        aaaa::. However, such an encoding would not be backward compatible
        with <xref target="RFC9252"/>, as further detailed in <xref
        target="BACKWARD"/>. </t>

        <t>Therefore, it is REQUIRED that the LBL, LNL, and FL values be set
        in accordance with the SID Structure for End.DT2M SRv6 Service SIDs,
        ensuring compliance with <xref target="RFC9252"/>.</t>
      </section>

      <section anchor="RT3"
               title="Advertisement of Inclusive Multicast Ethernet Tag Route">
        <t>The Inclusive Multicast Ethernet Tag Route (EVPN Route Type 3), as
        defined in <xref target="RFC7432"/>, is used to advertise multicast
        traffic reachability information via MP-BGP to all other PE routers
        within a given EVPN instance. When utilizing SRv6 transport, the
        advertisement of this route MUST include the BGP Prefix-SID Attribute
        with an SRv6 L2 Service TLV to indicate the use of SRv6.</t>

        <t>Regardless of whether ESI Filtering is in use, the SRv6 Service SID
        MUST include only the LOC:FUNC portion within the SRv6 SID Information
        sub-TLV (when not utilizing the Transposition Scheme), with the SRv6
        Endpoint Behavior set to End.DT2M. Since the End.DT2M behavior
        supports the use of an ARG, an SRv6 SID Structure sub-sub-TLV MUST be
        included. The LBL, LNL, and FL fields MUST be set to indicate the
        structure of the SRv6 Service SID being advertised.</t>

        <t>When ESI Filtering is not in use, no ARG is expected to be received
        by the router along with the advertised SRv6 Service SID. Therefore,
        the AL MUST be set to 0.</t>

        <t>Following is an example representation of the BGP Prefix-SID
        Attribute encoding in this case:</t>

        <figure anchor="RT3NOARG"
                title="EVPN Route Type 3 without ESI Filtering">
          <artwork><![CDATA[
BGP Prefix SID Attr:
    SRv6 L2 Service TLV:
        SRv6 SID Information sub-TLV:
            SID: 2001:db8:1:fbd1::
            Behavior: End.DT2M 
            SRv6 SID Structure sub-sub-TLV:
                LBL: 32, LNL: 16, FL: 16, AL: 0, TPOS-L: 0, TPOS-O: 0

]]></artwork>
        </figure>

        <t>When ESI Filtering is in use, the router expects to receive traffic
        in the data path to the SRv6 Service SID that it has signaled along
        with the ARG portion embedded in it. Consequently, the AL MUST be set
        to the size of the ARG supported by the advertising router for the
        specific SRv6 Service SID. The AL value is unique per End.DT2M
        behavior signaled by the egress PE. Therefore, the egress PE MUST use
        the same AL for all local Ethernet Segments with Attachment Circuits
        within the same Broadcast Domain.</t>

        <t>The following is an example representation of the BGP Prefix-SID
        Attribute encoding for this scenario with a 16-bit argument:</t>

        <figure anchor="RT3ARG" title="EVPN Route Type 3 with ESI Filtering">
          <artwork><![CDATA[
BGP Prefix SID Attr:
    SRv6 L2 Service TLV:
        SRv6 SID Information sub-TLV:
            SID: 2001:db8:1:fbd1::
            Behavior: End.DT2M 
            SRv6 SID Structure sub-sub-TLV:
                LBL: 32, LNL: 16, FL: 16, AL: 16, TPOS-L: 0, TPOS-O: 0

]]></artwork>
        </figure>

        <t>When ESI Filtering is in use, the advertising router MUST ensure
        that the AL signaled in the EVPN Route Type 3 is equal to the AL
        signaled in the corresponding EVPN Route Type 1.</t>
      </section>

      <section anchor="PROC" title="Processing at Ingress PE">
        <t>An ingress PE receives the LOC:FUNC portion of the SRv6 Service SID
        to be used for Broadcast, Unknown Unicast, or Multicast (BUM) traffic
        through EVPN Route Type 3 advertisements.</t>

        <t>When ESI Filtering is not in use, the SRv6 Service SID to be used
        consists solely of the LOC:FUNC portion received via EVPN Route Type
        3.</t>

        <t>When ESI Filtering is in use, the ESI Filtering ARG of the SRv6
        Service SID is signaled through EVPN Route Type 1 (Ethernet
        Auto-Discovery per Ethernet Segment Route). The ARG, in combination
        with the LOC:FUNC portion received via EVPN Route Type 3, forms the
        SRv6 Service SID to be used.</t>

        <t>Since the LOC:FUNC and ARG portions of the SRv6 Service SID are
        signaled via different route advertisements, there may be cases where
        the ingress PE receives inconsistent AL values from the two route
        types. If the ingress PE expects ESI Filtering to be in use (i.e.,
        when forwarding BUM traffic to other PEs attached to a shared Ethernet
        Segment) but does not receive a usable ARG value during processing, it
        SHOULD log a message to facilitate troubleshooting.</t>

        <t>The ingress Provider Edge (PE) router MUST follow the processing
        steps outlined below when handling SRv6 Service SID
        advertisements:</t>

        <t><list style="numbers">
            <t>If AL=0 is signaled via EVPN Route Type 3, then the egress PE
            either does not support ESI Filtering or does not require ESI
            Filtering ARG for the specific SID. In this case, the SRv6 Service
            SID is formed using only the LOC:FUNC portion, and all bits after
            LBL+LNL+FL MUST be set to zero for encoding on the data path.
            Additionally, the router MUST ignore the SID value and its SID
            structure advertised in the corresponding EVPN Route Type 1.</t>

            <t>If a non-zero AL is signaled via EVPN Route Type 3, then the
            matching EVPN Route Type 1 for the Ethernet Segment is located and
            the presence of an SRv6 SID advertisement with the End.DT2M
            behavior is verified.<list style="letters">
                <t>If the presence of such a SRv6 SID is not verified, or if
                the AL=0 in the EVPN Route Type 1, then no usable ARG value is
                available. The SRv6 Service SID MUST be formed as described in
                (1) above.</t>

                <t>If the AL values in EVPN Route Type 1 and EVPN Route Type 3
                are both non-zero and but not equal, then no usable ARG value
                is available. This inconsistency in signaling from the egress
                PE indicates a configuration error. To prevent potential
                looping, BUM traffic MUST NOT be forwarded for such routes
                from the specific Ethernet Segment. Implementations SHOULD log
                an error message for troubleshooting this condition.</t>

                <t>If the AL values in EVPN Route Type 1 and EVPN Route Type 3
                are both non-zero and equal, then the ARG value from EVPN
                Route Type 1 is considered valid. This ARG value MUST be
                encoded within the SRv6 SID (LOC:FUNC) at the ARG offset as
                specified in the SID structure (i.e., LBL + LNL + FL) in EVPN
                Route Type 3. All bits beyond LBL + LNL + FL + AL MUST be set
                to zero.</t>
              </list></t>
          </list></t>

        <t>Based on the above procedures, the SRv6 Service SID encoding for
        the data plane without an ESI Filtering ARG, based on the examples in
        <xref target="RT1NOARG"/> and <xref target="RT3NOARG"/>, is as
        follows:</t>

        <figure anchor="SIDPACKET"
                title="SRv6 Service SID Encoding for Data Plane without ARG">
          <artwork><![CDATA[
Route Type 3:
 SID: 2001:db8:1:fbd1::
 Structure: LBL: 32, LNL: 16, FL: 16, AL: 0

SRv6 Service SID Encoded for Datapath: 2001:db8:1:fbd1::

]]></artwork>
        </figure>

        <t>Based on the above procedures, the SRv6 Service SID encoding for
        the data plane along with an ESI Filtering ARG, based on the examples
        in <xref target="RT1ARG"/> and <xref target="RT3ARG"/>, is as
        follows:</t>

        <figure anchor="SIDPACKETARG"
                title="SRv6 Service SID Encoding for Data Plane with ARG">
          <artwork><![CDATA[Route Type 1:
 SID: 0:0:0:0:aaaa::
 Structure: LBL: 32, LNL: 16, FL: 16, AL: 16 

Route Type 3:
 SID: 2001:db8:1:fbd1::
 Structure: LBL: 32, LNL: 16, FL: 16, AL: 16

SRv6 Service SID Encoded for Datapath: 2001:db8:1:fbd1:aaaa::

]]></artwork>
        </figure>

        <t><xref target="MULTIBD"/> below provides another example that
        illustrates the signaling and processing of multiple bridge domains in
        a deployment design.</t>

        <t><figure anchor="MULTIBD"
            title="Example with Multiple Bridge Domains">
            <artwork><![CDATA[
                     +--------------------------------+
                     |                                |
                 PE1 |                                |
                 +---------+                          |
  BUM on BD1     | +-----+ |                          |
+----------------> | BD1 |-------------+              |
|                | +-----+ |           |              |
|  BUM on BD2    | +-----+ |           v          PE3 |
| +--------------> | BD2 |-------+             +---------+
| |        +-----| +-----+ |     |             | +-----+ |
+----+     |     +---------+     v     ^       | | BD1 |-----CE31
|    |     |         |                 |       | +-----+ |
|CE12|-----+ ESI-1   |           ^     |       | +-----+ |
|    |-----+         |           |     |       | | BD2 |-----CE32
+----+     |     +---------+ ^   RT3   RT3     | +-----+ |
           +-----| +-----+ | |   dt2m  dt2m    +---------+
                 | | BD1 | | |   BD2   BD1            |
                 | +-----+ | |   FL:16 FL:32          |
                 | +-----+ | RT1                      |
                 | | BD2 | | ESI-1                    |
                 | +-----+ | AL:16                    |
                 +---------+                          |
                  PE2 |                               |
                      |                               |
                      |                               |
                      +-------------------------------+
 
 Route Type 1 ESI-1:
  SID: 0:0:0:0:aaaa::
  Structure: LBL: 32, LNL: 16, FL: 16, AL: 16
 
 Route Type 3 from BD1:
  SID: 2001:db8:1:fbd1:fbd1:
  Structure: LBL: 32, LNL: 16, FL: 32, AL: 16
 
 Route Type 3 from BD2:
  SID: 2001:db8:1:fbd2::
  Structure: LBL: 32, LNL: 16, FL: 16, AL: 16
 
 SRv6 Service SID for datapath from ingress PE1 to egress PE2 on BD1:
  2001:db8:1:fbd1:fbd1:aaaa::
 SRv6 Service SID for datapath from ingress PE1 to egress PE2 on BD2: 
  2001:db8:1:fbd2:aaaa::

]]></artwork>
          </figure></t>
      </section>
    </section>

    <section anchor="BACKWARD" title="Backward Compatibility">
      <t>Existing implementations that rely on the bitwise logical-OR
      operation, as specified in Section 6.3 of <xref target="RFC9252"/>,
      function correctly only when the SID structures of the two EVPN Route
      Types are identical. </t>

      <t>Backward compatibility with implementations performing the bitwise
      logical-OR operation is maintained when EVPN Route Type 3 and its
      corresponding EVPN Route Type 1 advertise SIDs with the same SID
      structure, as outlined in <xref target="RT1"/> and <xref target="RT3"/>.
      </t>

      <t>However, when the SID structures of the two route types are not
      identical, the bitwise logical-OR operation specified in <xref
      target="RFC9252"/> cannot be applied. Instead, the alternative method
      specified in document in <xref target="PROC"/> MUST be used to correctly
      derive the SRv6 Service SID in such cases.</t>
    </section>

    <section anchor="IANA" title="IANA Considerations">
      <t>This document does not require any action from IANA.</t>
    </section>

    <section anchor="SEC" title="Security Considerations">
      <t>This document only provides a more detailed specification related to
      the signaling and processing of SRv6 SID advertisements for SRv6
      Endpoint Behaviors with arguments. As such, it does not introduce any
      new security considerations over and above what is already covered by
      <xref target="RFC9252"/>.</t>
    </section>

    <section anchor="ACK" title="Acknowledgments">
      <t>The authors would like to acknowledge Jayshree Subramanian, Sonal
      Agarwal, Swadesh Agrawal, Dongling Duan, Luc Andre Burdet, Patrice
      Brissette, Senthil Sathappan, Erel Ortacdag, Neil Hart, Will Lockhart,
      and Vinod Prabhu for their inputs on aspects related to the signaling of
      the End.DT2M SRv6 Endpoint behavior that required clarification as also
      for their review of this document. The authors thank Jeffrey Zhang for
      his shepherd review of the document and suggestions for its
      improvements. The authors would also Gunter van de Velde for his
      extensive review and suggestions for improving the readability of the
      document.</t>
    </section>
  </middle>

  <back>
    <references title="Normative References">
      <?rfc include='reference.RFC.8986.xml'?>

      <?rfc include='reference.RFC.9252.xml'?>

      <?rfc include='reference.RFC.7432.xml'?>

      <?rfc include='reference.RFC.2119.xml'?>

      <?rfc include='reference.RFC.8402.xml'?>

      <?rfc include='reference.RFC.8174.xml'?>

      <?rfc include='reference.RFC.8317.xml'?>
    </references>

    <references title="Informative References">
      <?rfc include='reference.RFC.8365.xml'?>

      <?rfc include='reference.RFC.8754.xml'?>

      <?rfc include='reference.I-D.ietf-spring-srv6-srh-compression'?>
    </references>
  </back>
</rfc>
