<?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.6.39 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-idr-entropy-label-06" category="std" consensus="true" submissionType="IETF" xml:lang="en" updates="6790, 7447" version="3">
  <!-- xml2rfc v2v3 conversion 3.17.4 -->
  <front>
    <title abbrev="RCA">BGP Router Capabilities Attribute</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-idr-entropy-label-06"/>
    <author initials="B." surname="Decraene" fullname="Bruno Decraene" role="editor">
      <organization>Orange</organization>
      <address>
        <email>bruno.decraene@orange.com</email>
      </address>
    </author>
    <author initials="J. G." surname="Scudder" fullname="John G. Scudder" role="editor">
      <organization>Juniper Networks</organization>
      <address>
        <email>jgs@juniper.net</email>
      </address>
    </author>
    <author initials="W." surname="Henderickx" fullname="Wim Henderickx">
      <organization>Nokia</organization>
      <address>
        <email>wim.henderickx@nokia.com</email>
      </address>
    </author>
    <author initials="K." surname="Kompella" fullname="Kireeti Kompella">
      <organization>Juniper Networks</organization>
      <address>
        <email>kireeti@juniper.net</email>
      </address>
    </author>
    <author initials="S." surname="Mohanty" fullname="Satya Mohanty">
      <organization>Cisco Systems</organization>
      <address>
        <email>satyamoh@cisco.com</email>
      </address>
    </author>
    <author initials="J." surname="Uttaro" fullname="James Uttaro">
      <organization>Independent Contributor</organization>
      <address>
        <email>juttaro@ieee.org</email>
      </address>
    </author>
    <author initials="B." surname="Wen" fullname="Bin Wen">
      <organization>Comcast</organization>
      <address>
        <email>Bin_Wen@comcast.com</email>
      </address>
    </author>
    <date year="2023" month="July" day="24"/>
    <area>rtg</area>
    <workgroup>Internet Engineering Task Force</workgroup>
    <keyword>bgp</keyword>
    <keyword>rca</keyword>
    <keyword>entropy label</keyword>
    <abstract>
      <?line 69?>

<t>RFC 5492 allows a BGP speaker to advertise its capabilities to its peer. When a route is propagated beyond the immediate peer, it is useful to allow certain capabilities to be conveyed further.  In particular, it is useful to advertise forwarding plane features.</t>
      <t>This specification defines a BGP transitive attribute to carry such capability information, the "Router Capabilities Attribute," or RCA. Unlike the capabilities defined by RFC 5492, those conveyed in the RCA apply solely to the routes advertised by the BGP UPDATE that contains the particular RCA.</t>
      <t>This specification also defines an RCA capability that can be used to advertise the ability to process the MPLS Entropy Label as an egress LSR for all NLRI advertised in the BGP UPDATE.  It updates RFC 6790 and RFC 7447 concerning this BGP signaling.</t>
    </abstract>
  </front>
  <middle>
    <?line 77?>

<section anchor="intro">
      <name>Introduction</name>
      <t><xref target="RFC5492"/> allows a BGP speaker to advertise its capabilities to its peer. When a route is propagated beyond the immediate peer, it is useful to allow certain capabilities to be conveyed further.  In particular, it may be useful to advertise forwarding plane features.</t>
      <t>This specification defines a BGP optional transitive attribute to carry such capability information, the "Router Capabilities Attribute", or RCA. (This somewhat ponderous name is regrettable but is needed in order to be descriptive while still distinguishing it from RFC 5492 BGP Capabilities.)</t>
      <t>Since the RCA is intended chiefly for conveying information about forwarding plane features, it needs to be regenerated whenever the BGP route's next hop is changed. Since owing to the properties of BGP transitive attributes this can't be guaranteed (an intermediate router that doesn't implement this specification would be expected to propagate the RCA as opaque data), the RCA identifies itself with the next hop of its originator. If the RCA passes through a router that changes the next hop without regenerating the RCA, they will fail to match when later examined, and the recipient can act accordingly. This scheme allows RCA support to be introduced into a network incrementally. Complete details are provided in <xref target="tbrc"/>.</t>
      <t>An RCA carried in a given BGP UPDATE message conveys information that relates to all NLRI advertised in that particular UPDATE, and only to those NLRI. A different UPDATE message originated by the same source might not include an RCA, and if so, NLRI carried in that UPDATE would not be affected by the RCA. By implication, if a router wishes to use RCA to describe all NLRI it originates, it needs to include an RCA with each UPDATE it sends. In this respect, despite its similar naming, the RCA is unlike RFC 5492 BGP Capabilities.</t>
      <t>This specification also defines an RCA to advertise the ability to process the MPLS Entropy Label as an egress LSR for all NLRI advertised in the BGP UPDATE.  It updates <xref target="RFC6790"/> and <xref target="RFC7447"/> with regard to this BGP signaling, this is further discussed in <xref target="elcv3"/>.</t>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
    </section>
    <section anchor="tbrc">
      <name>BGP Router Capabilities Attribute</name>
      <section anchor="encoding">
        <name>Encoding</name>
        <t>The BGP Router Capabilities attribute (RCA attribute, or just RCA) is an optional, transitive BGP path attribute with type code 39. The RCA has as its data a network layer address, representing the next hop of the route the RCA accompanies. The RCA signals potentially useful optimizations, so it is desirable to make it transitive; the next hop data is to ensure correctness if it traverses BGP speakers that do not understand the RCA.</t>
        <t>The Attribute Data field of the RCA attribute is encoded as a header portion that identifies the originator of the attribute, followed by one or more capability TLVs.</t>
        <figure>
          <name>RCA Format</name>
          <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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   Address Family Identifier   |     SAFI      | Next Hop Len  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   ~             Network Address of Next Hop (variable)            ~
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   ~                   Capability TLVs (variable)                  ~
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
        <t>The meanings of the header fields (Address Family Identifier, SAFI or Subsequent Address Family Identifier, Length of Next Hop, and Network Address of Next Hop) are as given in Section 3 of <xref target="RFC4760"/>.</t>
        <t>In turn, each Capability is a triple (Capability Code, Capability Length, Capability Value):</t>
        <figure>
          <name>Capability TLV Format</name>
          <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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |        Capability Code        |        Capability Length      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   ~                  Capability Value (variable)                  ~
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
        <t>Capability Code: a two-octet unsigned binary integer that indicates the type of capability advertised and unambiguously identifies an individual capability.</t>
        <t>Capability Length: a two-octet unsigned binary integer that indicates the length, in octets, of the Capability Value field.  A length of 0 indicates that no Capability Value field is present.</t>
        <t>Capability Value: a variable-length field.  It is interpreted according to the value of the Capability Code.</t>
        <t>A BGP speaker <bcp14>MUST NOT</bcp14> include more than one instance of a capability with the same Capability Code, Capability Length, and Capability Value.  Note, however, that processing multiple instances of such a capability does not require special handling, as additional instances do not change the meaning of the announced capability; thus, a BGP speaker <bcp14>MUST</bcp14> be prepared to accept such multiple instances.</t>
        <t>BGP speakers <bcp14>MAY</bcp14> include more than one instance of a capability (as identified by the Capability Code) with different Capability Value and either the same or different Capability Length.  Processing of these capability instances is specific to the Capability Code and <bcp14>MUST</bcp14> be described in the document introducing the new capability.</t>
        <t>Capability TLVs <bcp14>MUST</bcp14> be placed in the RCA in increasing order of Capability Code. (In the event of multiple instances of a capability with the same Capability Code as discussed above, no further sorting order is defined here.)  Although the major sorting order is mandated, an implementation <bcp14>MAY</bcp14> elect to be prepared to consume capabilities in any order, for robustness reasons.</t>
      </section>
      <section anchor="sending-the-rca">
        <name>Sending the RCA</name>
        <t>Suppose a BGP speaker S has a route R it wishes to advertise with next hop N to its peer.</t>
        <t>If S is originating R into BGP, it <bcp14>MAY</bcp14> include an RCA attribute with it, that carries capability TLVs that describe aspects of R. S <bcp14>MUST</bcp14> set the header portion of the RCA to be equal to N, using the encoding given above.</t>
        <t>If S has received R from some other BGP speaker, two possibilities exist. First, S could be propagating R without changing N. In that case, S need take no special action, it <bcp14>SHOULD</bcp14> simply propagate the RCA unchanged unless specifically configured otherwise. Indeed, we observe that this is no different from the default action a BGP speaker takes with an unrecognized optional transitive attribute -- it is treated as opaque data and propagated.</t>
        <t>Second, S could be changing R in some way, and in particular, it could be changing N. If S has changed N it <bcp14>MUST NOT</bcp14> propagate the RCA unchanged. It <bcp14>MAY</bcp14> include a newly-constructed RCA attribute with R, constructed as described above in the "originating R into BGP" case. Any given capability TLV carried by the newly-constructed RCA attribute might use information from the received RCA attribute as input to its construction; the details of this are specific to the definition of each capability. In effect, this means that a given capability TLV will only be propagated along a path where it is supported by every BGP next-hop along the path.</t>
        <t>An implementation <bcp14>SHOULD</bcp14> send the RCA and its contained capabilities by default. An implementation <bcp14>SHOULD</bcp14> provide configuration control of whether any given capability is sent. An implementation <bcp14>MAY</bcp14> provide finer-grained control on propagation based on attributes of the peering session, as discussed in <xref target="Security_RCA"/>.</t>
        <t>We note that due to the nature of BGP optional transitive path attributes, any BGP speaker that does not implement this specification will propagate the RCA, the requirements of this section notwithstanding. Such a speaker will not update the RCA, however.</t>
      </section>
      <section anchor="receiving">
        <name>Receiving the RCA</name>
        <t>An implementation <bcp14>SHOULD</bcp14> accept the RCA and its contained capabilities by default. An implementation <bcp14>SHOULD</bcp14> provide configuration control of whether any given capability is accepted. An implementation <bcp14>MAY</bcp14> provide finer-grained control on propagation based on attributes of the peering session, as discussed in <xref target="Security_RCA"/>.</t>
        <t>When a BGP speaker receives a BGP route that includes the RCA, it <bcp14>MUST</bcp14> compare the address given in the header portion of the RCA to the next hop of the BGP route. If the two match, the RCA may be further processed. If the two do not match, it means some intermediate BGP speaker that handled the route in transit both does not support RCA, and changed the next hop of the route. In this case, the contents of the RCA cannot be used, and the RCA <bcp14>MUST</bcp14> be discarded without further processing, except that the contents <bcp14>MAY</bcp14> be logged.</t>
        <t>In considering whether the next hop "matches", a semantic match is sought. While bit-for-bit equality is a trivial test of matching, there may be certain cases where the two are not bit-for-bit equal, but still "match". An example is when a MP_REACH Next Hop encodes both a global and a link-local IPv6 address. In that case the link-local address might be removed during IBGP propagation, the two would still be considered to match if they were equal on the global part. See Section 3 of <xref target="RFC2545"/>.</t>
        <t>A BGP speaker receiving a Capability Code that it supports behaves as defined in the document defining the Capability Code.  A BGP speaker receiving a Capability Code that it does not support <bcp14>MUST</bcp14> ignore that Capability Code.  In particular, it <bcp14>MUST NOT</bcp14> be handled as an error.</t>
        <t>The presence of a capability <bcp14>SHOULD NOT</bcp14> influence route selection or route preference, unless tunneling is used to reach the BGP next hop or the selected route has been learned from External BGP (that is, the next hop is in a different Autonomous System).  Indeed, it is in general impossible for a node to know that all BGP routers of the Autonomous System (AS) will understand a given capability, and if different routers within an AS were to use a different preference for a route, forwarding loops could result unless tunneling is used to reach the BGP next hop.</t>
      </section>
      <section anchor="attribute-error-handling">
        <name>Attribute Error Handling</name>
        <t>An RCA is considered malformed if the length of the attribute is inconsistent with the lengths of the contained capability TLVs.</t>
        <t>A BGP UPDATE message with a malformed RCA <bcp14>SHALL</bcp14> be handled using the approach of "attribute discard" defined in <xref target="RFC7606"/>.</t>
        <t>Unknown Capability Codes <bcp14>MUST NOT</bcp14> be considered to be an error.</t>
        <t>An RCA that contains no capability TLVs <bcp14>MAY</bcp14> be considered malformed, although it is observed that the prescribed behavior of "attribute discard" is semantically no different from that of having no TLVs to process.</t>
        <t>A document that specifies a new RCA Capability should provide specifics regarding what constitutes an error for that RCA Capability.</t>
        <t>If a capability TLV is malformed, that capability TLV <bcp14>MUST</bcp14> be ignored and removed.  Other capability TLVs <bcp14>MUST</bcp14> be processed as usual.</t>
      </section>
      <section anchor="network-operation-considerations">
        <name>Network Operation Considerations</name>
        <t>In the corner case where multiple nodes use the same IP address as their BGP next hop, such as with anycast nodes as described in <xref target="RFC4786"/>, a BGP speaker <bcp14>MUST NOT</bcp14> advertise a given capability unless all nodes sharing this same IP address support this capability. The network operator operating those anycast nodes is responsible for ensuring that an anycast node does not advertise a capability not supported by all nodes sharing this anycast address.  The means for accomplishing this are beyond the scope of this document.</t>
      </section>
    </section>
    <section anchor="elcv3">
      <name>Entropy Label Capability (ELCv3)</name>
      <t>When BGP <xref target="RFC4271"/> is used for distributing labeled Network Layer Reachability Information (NLRI) as described in, for example, <xref target="RFC8277"/>, the route may include the ELCv3 as part of the RCA.  The inclusion of this capability with a route indicates that the egress of the associated Label Switched Path (LSP) can process entropy labels as an egress Label Switched Router (LSR) for that route -- see Section 4.2 of <xref target="RFC6790"/>. Below, we refer to this for brevity as being "EL-capable."</t>
      <t>For historical reasons, this capability is referred to as "ELCv3", to distinguish it from the prior Entropy Label Capability (ELC) defined in <xref target="RFC6790"/> and deprecated in <xref target="RFC7447"/>, and the ELCv2 described in <xref target="I-D.scudder-bgp-entropy-label"/>.</t>
      <section anchor="encoding-1">
        <name>Encoding</name>
        <t>The ELCv3 has capability code 1, capability length 0, and carries no value:</t>
        <figure>
          <name>ELCv3 TLV Format</name>
          <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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |      Capability Code = 1      |       Capability Length = 0   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
      </section>
      <section anchor="sending-the-elcv3">
        <name>Sending the ELCv3</name>
        <t>When a BGP speaker S has a route R it wishes to advertise with next hop N to its peer, it <bcp14>MUST NOT</bcp14> include the ELCv3 capability except if it knows that the egress of the associated LSP L is EL-capable. Specifically, this will be true if S:</t>
        <ul spacing="normal">
          <li>Is itself the egress, and knows itself to be EL-capable, or</li>
          <li>Is re-advertising a BGP route it received with a valid ELCv3 capability, and is not changing the value of N, or</li>
          <li>Is re-advertising a BGP route it received with a valid ELCv3 capability, and is changing the value of N, and knows (for example, through configuration) that the router represented by N is either the LSP egress and is EL-capable, or that it will simply swap labels without popping the BGP-advertised label stack and processing the label below, as with a transit LSR, or</li>
          <li>Is redistributing a route learned from another protocol, and that other protocol conveyed the knowledge that the egress of L was EL-capable (for example, this might be known through the LDP ELC TLV, Section 5.1 of <xref target="RFC6790"/>).</li>
        </ul>
        <t>The ELCv3 <bcp14>MAY</bcp14> be advertised with routes that are labeled, such as those using SAFI 4 <xref target="RFC8277"/>. It <bcp14>MUST NOT</bcp14> be advertised with unlabeled routes.</t>
      </section>
      <section anchor="receiving-the-elcv3">
        <name>Receiving the ELCv3</name>
        <t>(Below, we assume that "includes the ELCv3" implies that the containing RCA has passed the checks specified in <xref target="receiving"/>. If it had not passed, then the RCA would have been discarded and the ELCv3 would be deemed not to have been included.)</t>
        <t>When a BGP speaker receives an unlabeled route that includes the ELCv3, it <bcp14>MUST</bcp14> discard the ELCv3.</t>
        <t>When a BGP speaker receives a labeled route that includes the ELCv3, that indicates the LSP supports entropy labels, which implies that the receiving BGP speaker, if acting as ingress, <bcp14>MAY</bcp14> insert an entropy label as per Section 4.2 of <xref target="RFC6790"/>.</t>
      </section>
      <section anchor="elcv3-error-handling">
        <name>ELCv3 Error Handling</name>
        <t>The ELCv3 is considered malformed and must be disregarded if its length is other than zero.</t>
      </section>
    </section>
    <section anchor="legacy-elc">
      <name>Legacy ELC</name>
      <t>The ELCv3 functionality introduced in this document replaces the "BGP Entropy Label Capability Attribute" (ELC attribute) that was introduced by <xref target="RFC6790"/>, and deprecated by <xref target="RFC7447"/>. The latter RFC specifies that the ELC attribute, BGP path attribute 28, "<bcp14>MUST</bcp14> be treated as any other unrecognized optional, transitive attribute". This specification revises that requirement.</t>
      <t>As the current specification was developed, it became clear that due to incompatibilities between how the ELC attribute is processed by different fielded implementations, the most prudent handling of attribute 28 is not to propagate it as an unrecognized optional, transitive attribute, but to discard it. Therefore, this specification updates <xref target="RFC7447"/>, by instead requiring that an implementation that receives the ELC attribute <bcp14>MUST</bcp14> discard any received ELC attribute.</t>
    </section>
    <section anchor="IANA">
      <name>IANA Considerations</name>
      <t>IANA has made a temporary allocation in the BGP Path Attributes registry of the Border Gateway Protocol (BGP) Parameters group. IANA is requested to make this allocation permanent.</t>
      <table>
        <thead>
          <tr>
            <th align="left">Value</th>
            <th align="left">Code</th>
            <th align="left">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">39</td>
            <td align="left">BGP Router Capabilities (RCA)</td>
            <td align="left">(this doc)</td>
          </tr>
        </tbody>
      </table>
      <t>IANA is requested to create a new registry called "BGP Router Capability Codes" within the Border Gateway Protocol (BGP) Parameters group. The registry's allocation policy is First Come, First Served. It is seeded with the following values:</t>
      <table anchor="preregistry">
        <thead>
          <tr>
            <th align="left">Value</th>
            <th align="left">Description</th>
            <th align="left">Reference</th>
            <th align="left">Change Controller</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">0</td>
            <td align="left">reserved</td>
            <td align="left">(this doc)</td>
            <td align="left">IETF</td>
          </tr>
          <tr>
            <td align="left">1</td>
            <td align="left">ELCv3</td>
            <td align="left">(this doc)</td>
            <td align="left">IETF</td>
          </tr>
          <tr>
            <td align="left">65500 - 65534</td>
            <td align="left">reserved for experimental use</td>
            <td align="left">(this doc)</td>
            <td align="left">IETF</td>
          </tr>
          <tr>
            <td align="left">65535</td>
            <td align="left">reserved</td>
            <td align="left">(this doc)</td>
            <td align="left">IETF</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="Security">
      <name>Security Considerations</name>
      <section anchor="Security_RCA">
        <name>Considerations for the RCA</name>
        <t>The header portion of the RCA contains the next hop the attribute's originator included when sending it. This will typically be an IP address of the router in question. This may be an infrastructure address the network operator does not intend to announce beyond the border of its Autonomous System, and it may even be considered in some weak sense, confidential information.</t>
        <t>In order to be fit for purpose, the attribute needs to be able to propagate between Autonomous Systems when they are under the control of the same administrator, but for anticipated uses it need not be sent to other Autonomous Systems. At time of writing, work <xref target="I-D.uttaro-idr-bgp-oad"/> is underway to standardize a method of distinguishing between the two categories of external Autonomous Systems, and if such a distinction is available, an implementation can take advantage of it by constraining the RCA and its contained capabilities to only propagate by default to and from the former category of Autonomous Systems. If such a distinction is not available, a network operator may prefer to configure routers peering with Autonomous Systems not under their administrative control to not send or accept the RCA or its contained capabilities, unless there is an identified need to do so.</t>
        <t>The forgoing notwithstanding, control of RCA propagation can't be guaranteed in all cases -- if a border router doesn't implement this specification, the attribute, like all BGP optional transitive attributes, will propagate to neighboring Autonomous Systems. Similarly, if a border router receiving the attribute from an external Autonomous System doesn't implement this specification, it will store and propagate the attribute, the requirements of <xref target="receiving"/> notwithstanding. So, sometimes this information could leak beyond its intended scope. (Note that it will only propagate as far as the first router that does support this specification, at which point it will typically be discarded due to a non-matching next hop, per <xref target="receiving"/>.)</t>
        <t>If the attribute leaks beyond its intended scope, capabilities within it would potentially be exposed.  Specifications for individual capabilities should consider the consequences of such unintended exposure, and should identify any necessary constraints on propagation.</t>
      </section>
      <section anchor="considerations-for-the-elcv3-capability">
        <name>Considerations for the ELCv3 Capability</name>
        <t>Insertion of an ELCv3 by an attacker could cause forwarding to fail. Deletion of an ELCv3 by an attacker could cause one path in the network to be overutilized and another to be underutilized. However, we note that an attacker able to accomplish either of these (below, an "on-path attacker") could equally insert or remove any other BGP path attribute or message. The former attack described above denies service for a given route, which can be accomplished by an on-path attacker in any number of ways even absent ELCv3. The latter attack defeats an optimization but nothing more; it seems dubious that an attacker would go to the trouble of doing so rather than launching some more damaging attack.</t>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <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="RFC2545">
          <front>
            <title>Use of BGP-4 Multiprotocol Extensions for IPv6 Inter-Domain Routing</title>
            <author fullname="P. Marques" initials="P." surname="Marques"/>
            <author fullname="F. Dupont" initials="F." surname="Dupont"/>
            <date month="March" year="1999"/>
            <abstract>
              <t>BGP-4 Multiprotocol Extensions (BGP-MP) defines the format of two BGP attributes (MP_REACH_NLRI and MP_UNREACH_NLRI) that can be used to announce and withdraw the announcement of reachability information. This document defines how compliant systems should make use of those attributes for the purpose of conveying IPv6 routing information. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2545"/>
          <seriesInfo name="DOI" value="10.17487/RFC2545"/>
        </reference>
        <reference anchor="RFC4271">
          <front>
            <title>A Border Gateway Protocol 4 (BGP-4)</title>
            <author fullname="Y. Rekhter" initials="Y." role="editor" surname="Rekhter"/>
            <author fullname="T. Li" initials="T." role="editor" surname="Li"/>
            <author fullname="S. Hares" initials="S." role="editor" surname="Hares"/>
            <date month="January" year="2006"/>
            <abstract>
              <t>This document discusses the Border Gateway Protocol (BGP), which is an inter-Autonomous System routing protocol.</t>
              <t>The primary function of a BGP speaking system is to exchange network reachability information with other BGP systems. This network reachability information includes information on the list of Autonomous Systems (ASes) that reachability information traverses. This information is sufficient for constructing a graph of AS connectivity for this reachability from which routing loops may be pruned, and, at the AS level, some policy decisions may be enforced.</t>
              <t>BGP-4 provides a set of mechanisms for supporting Classless Inter-Domain Routing (CIDR). These mechanisms include support for advertising a set of destinations as an IP prefix, and eliminating the concept of network "class" within BGP. BGP-4 also introduces mechanisms that allow aggregation of routes, including aggregation of AS paths.</t>
              <t>This document obsoletes RFC 1771. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4271"/>
          <seriesInfo name="DOI" value="10.17487/RFC4271"/>
        </reference>
        <reference anchor="RFC4760">
          <front>
            <title>Multiprotocol Extensions for BGP-4</title>
            <author fullname="T. Bates" initials="T." surname="Bates"/>
            <author fullname="R. Chandra" initials="R." surname="Chandra"/>
            <author fullname="D. Katz" initials="D." surname="Katz"/>
            <author fullname="Y. Rekhter" initials="Y." surname="Rekhter"/>
            <date month="January" year="2007"/>
            <abstract>
              <t>This document defines extensions to BGP-4 to enable it to carry routing information for multiple Network Layer protocols (e.g., IPv6, IPX, L3VPN, etc.). The extensions are backward compatible - a router that supports the extensions can interoperate with a router that doesn't support the extensions. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4760"/>
          <seriesInfo name="DOI" value="10.17487/RFC4760"/>
        </reference>
        <reference anchor="RFC6790">
          <front>
            <title>The Use of Entropy Labels in MPLS Forwarding</title>
            <author fullname="K. Kompella" initials="K." surname="Kompella"/>
            <author fullname="J. Drake" initials="J." surname="Drake"/>
            <author fullname="S. Amante" initials="S." surname="Amante"/>
            <author fullname="W. Henderickx" initials="W." surname="Henderickx"/>
            <author fullname="L. Yong" initials="L." surname="Yong"/>
            <date month="November" year="2012"/>
            <abstract>
              <t>Load balancing is a powerful tool for engineering traffic across a network. This memo suggests ways of improving load balancing across MPLS networks using the concept of "entropy labels". It defines the concept, describes why entropy labels are useful, enumerates properties of entropy labels that allow maximal benefit, and shows how they can be signaled and used for various applications. This document updates RFCs 3031, 3107, 3209, and 5036. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6790"/>
          <seriesInfo name="DOI" value="10.17487/RFC6790"/>
        </reference>
        <reference anchor="RFC7447">
          <front>
            <title>Deprecation of BGP Entropy Label Capability Attribute</title>
            <author fullname="J. Scudder" initials="J." surname="Scudder"/>
            <author fullname="K. Kompella" initials="K." surname="Kompella"/>
            <date month="February" year="2015"/>
            <abstract>
              <t>The BGP Entropy Label Capability attribute is defined in RFC 6790. Regrettably, it has a bug: although RFC 6790 mandates that routers incapable of processing Entropy Labels must remove the attribute, fulfillment of this requirement cannot be guaranteed in practice. This specification deprecates the attribute. A forthcoming document will propose a replacement.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7447"/>
          <seriesInfo name="DOI" value="10.17487/RFC7447"/>
        </reference>
        <reference anchor="RFC7606">
          <front>
            <title>Revised Error Handling for BGP UPDATE Messages</title>
            <author fullname="E. Chen" initials="E." role="editor" surname="Chen"/>
            <author fullname="J. Scudder" initials="J." role="editor" surname="Scudder"/>
            <author fullname="P. Mohapatra" initials="P." surname="Mohapatra"/>
            <author fullname="K. Patel" initials="K." surname="Patel"/>
            <date month="August" year="2015"/>
            <abstract>
              <t>According to the base BGP specification, a BGP speaker that receives an UPDATE message containing a malformed attribute is required to reset the session over which the offending attribute was received. This behavior is undesirable because a session reset would impact not only routes with the offending attribute but also other valid routes exchanged over the session. This document partially revises the error handling for UPDATE messages and provides guidelines for the authors of documents defining new attributes. Finally, it revises the error handling procedures for a number of existing attributes.</t>
              <t>This document updates error handling for RFCs 1997, 4271, 4360, 4456, 4760, 5543, 5701, and 6368.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7606"/>
          <seriesInfo name="DOI" value="10.17487/RFC7606"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="I-D.ietf-idr-next-hop-capability">
          <front>
            <title>BGP Next-Hop dependent capabilities</title>
            <author fullname="Bruno Decraene" initials="B." surname="Decraene">
              <organization>Orange</organization>
            </author>
            <author fullname="Kireeti Kompella" initials="K." surname="Kompella">
              <organization>Juniper Networks, Inc.</organization>
            </author>
            <author fullname="Wim Henderickx" initials="W." surname="Henderickx">
              <organization>Nokia</organization>
            </author>
            <date day="8" month="June" year="2022"/>
            <abstract>
              <t>   RFC 5492 advertises the capabilities of the BGP peer.  When the BGP
   peer is not the same as the BGP Next-Hop, it is useful to also be
   able to advertise the capability of the BGP Next-Hop, in particular
   to advertise forwarding plane features.  This document defines a
   mechanism to advertise such BGP Next Hop dependent Capabilities.

   This document defines a new BGP non-transitive attribute to carry
   Next-Hop Capabilities.  This attribute is guaranteed to be deleted or
   updated when the BGP Next Hop is changed, in order to reflect the
   capabilities of the new BGP Next-Hop.

   This document also defines a Next-Hop capability to advertise the
   ability to process the MPLS Entropy Label as an egress LSR for all
   NLRI advertised in the BGP UPDATE.  It updates RFC 6790 with regard
   to this BGP signaling.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-idr-next-hop-capability-08"/>
        </reference>
        <reference anchor="I-D.scudder-bgp-entropy-label">
          <front>
            <title>BGP Entropy Label Capability, Version 2</title>
            <author fullname="John Scudder" initials="J." surname="Scudder">
              <organization>Juniper Networks</organization>
            </author>
            <author fullname="Kireeti Kompella" initials="K." surname="Kompella">
              <organization>Juniper Networks</organization>
            </author>
            <date day="28" month="April" year="2022"/>
            <abstract>
              <t>   RFC 6790 defined the Entropy Label Capability Attribute (ELC); RFC
   7447 deprecated that attribute.  This specification, dubbed "Entropy
   Label Capability Attribute version 2" (ELCv2), was intended to be
   offered for standardization, to replace the ELC as a way to signal
   that a BGP protocol speaker is capable of processing entropy labels.

   Although ultimately a different specification was chosen for that
   purpose, at least one implementation of ELCv2 was shipped by Juniper
   Networks and is currently in use in service provider networks.  This
   document is published in order to document what was implemented.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-scudder-bgp-entropy-label-00"/>
        </reference>
        <reference anchor="I-D.uttaro-idr-bgp-oad">
          <front>
            <title>One Administrative Domain using BGP</title>
            <author fullname="Jim Uttaro" initials="J." surname="Uttaro">
              <organization>Individual Contributor</organization>
            </author>
            <author fullname="Alvaro Retana" initials="A." surname="Retana">
              <organization>Futurewei Technologies, Inc.</organization>
            </author>
            <author fullname="Pradosh Mohapatra" initials="P." surname="Mohapatra">
              <organization>Google</organization>
            </author>
            <author fullname="Keyur Patel" initials="K." surname="Patel">
              <organization>Arrcus, Inc.</organization>
            </author>
            <author fullname="Bin Wen" initials="B." surname="Wen">
              <organization>Comcast</organization>
            </author>
            <date day="10" month="July" year="2023"/>
            <abstract>
              <t>   This document defines a new External BGP (EBGP) peering type known as
   EBGP-OAD, which is used between two EBGP peers that belong to One
   Administrative Domain (OAD).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-uttaro-idr-bgp-oad-02"/>
        </reference>
        <reference anchor="RFC4786">
          <front>
            <title>Operation of Anycast Services</title>
            <author fullname="J. Abley" initials="J." surname="Abley"/>
            <author fullname="K. Lindqvist" initials="K." surname="Lindqvist"/>
            <date month="December" year="2006"/>
            <abstract>
              <t>As the Internet has grown, and as systems and networked services within enterprises have become more pervasive, many services with high availability requirements have emerged. These requirements have increased the demands on the reliability of the infrastructure on which those services rely.</t>
              <t>Various techniques have been employed to increase the availability of services deployed on the Internet. This document presents commentary and recommendations for distribution of services using anycast. 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="126"/>
          <seriesInfo name="RFC" value="4786"/>
          <seriesInfo name="DOI" value="10.17487/RFC4786"/>
        </reference>
        <reference anchor="RFC5492">
          <front>
            <title>Capabilities Advertisement with BGP-4</title>
            <author fullname="J. Scudder" initials="J." surname="Scudder"/>
            <author fullname="R. Chandra" initials="R." surname="Chandra"/>
            <date month="February" year="2009"/>
            <abstract>
              <t>This document defines an Optional Parameter, called Capabilities, that is expected to facilitate the introduction of new capabilities in the Border Gateway Protocol (BGP) by providing graceful capability advertisement without requiring that BGP peering be terminated.</t>
              <t>This document obsoletes RFC 3392. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5492"/>
          <seriesInfo name="DOI" value="10.17487/RFC5492"/>
        </reference>
        <reference anchor="RFC8277">
          <front>
            <title>Using BGP to Bind MPLS Labels to Address Prefixes</title>
            <author fullname="E. Rosen" initials="E." surname="Rosen"/>
            <date month="October" year="2017"/>
            <abstract>
              <t>This document specifies a set of procedures for using BGP to advertise that a specified router has bound a specified MPLS label (or a specified sequence of MPLS labels organized as a contiguous part of a label stack) to a specified address prefix. This can be done by sending a BGP UPDATE message whose Network Layer Reachability Information field contains both the prefix and the MPLS label(s) and whose Next Hop field identifies the node at which said prefix is bound to said label(s). This document obsoletes RFC 3107.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8277"/>
          <seriesInfo name="DOI" value="10.17487/RFC8277"/>
        </reference>
      </references>
    </references>
    <?line 294?>

<section anchor="other-means-of-signaling-el-capability">
      <name>Other Means of Signaling EL Capability</name>
      <t>A router that supports this specification could also have other means to know that an egress is EL-capable, for example, it could support ELCv2 <xref target="I-D.scudder-bgp-entropy-label"/>, or it could know through configuration. If a router learns through any means that an egress is EL-capable, it <bcp14>MAY</bcp14> treat the egress as EL-capable. For example, reception of a valid ELCv2 would be sufficient (even if a valid ELCv3 is not received), and similarly, reception of a valid ELCv3 would be sufficient (even if a valid ELCv2 is not received). The details of which methods are accepted for signaling EL capability are beyond the scope of this specification but <bcp14>SHOULD</bcp14> be configurable by the user.</t>
    </section>
    <section numbered="false" anchor="Acknowledgements">
      <name>Acknowledgements</name>
      <t>This specification derives from two earlier documents, <xref target="I-D.ietf-idr-next-hop-capability"/> and <xref target="I-D.scudder-bgp-entropy-label"/>.</t>
      <t><xref target="I-D.ietf-idr-next-hop-capability"/> included the following acknowledgements:</t>
      <artwork><![CDATA[
    The Entropy Label Next-Hop Capability defined in this document is
    based on the ELC BGP attribute defined in section 5.2 of [RFC6790].

    The authors wish to thank John Scudder for the discussions on this
    topic and Eric Rosen for his in-depth review of this document.

    The authors wish to thank Jie Dong and Robert Raszuk for their
    review and comments.
]]></artwork>
      <t><xref target="I-D.scudder-bgp-entropy-label"/> included the following acknowledgements:</t>
      <artwork><![CDATA[
    Thanks to Swadesh Agrawal, Alia Atlas, Bruno Decraene, Martin
    Djernaes, John Drake, Adrian Farrell, Keyur Patel, Toby Rees, and
    Ravi Singh, for their discussion of this issue. 
]]></artwork>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="S." surname="Krier" fullname="Serge Krier">
        <organization>Cisco Systems</organization>
        <address>
          <email>sekrier@cisco.com</email>
        </address>
      </contact>
      <contact initials="K." surname="Wang" fullname="Kevin Wang">
        <organization>Juniper Networks</organization>
        <address>
          <email>kfwang@juniper.net</email>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
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
w6v/F2MZvoG1XgAA

-->

</rfc>
