<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.6 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-idr-entropy-label-14" category="std" consensus="true" submissionType="IETF" xml:lang="en" updates="6790, 7447" version="3">
  <!-- xml2rfc v2v3 conversion 3.20.0 -->
  <front>
    <title abbrev="NHC">BGP Next Hop Dependent Capabilities Attribute</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-idr-entropy-label-14"/>
    <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="2024" month="March" day="01"/>
    <area>rtg</area>
    <workgroup>Internet Engineering Task Force</workgroup>
    <keyword>bgp</keyword>
    <keyword>nhc</keyword>
    <keyword>entropy label</keyword>
    <abstract>
      <?line 72?>

<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, or other properties, 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 "Next Hop Dependent Capabilities Attribute," or NHC. Unlike the capabilities defined by RFC 5492, those conveyed in the NHC apply solely to the routes advertised by the BGP UPDATE that contains the particular NHC.</t>
      <t>This specification also defines an NHC 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 80?>

<section anchor="intro">
      <name>Introduction</name>
      <t><xref target="RFC5492"/> allows a Border Gateway Protocol (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, or other properties, 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 "Next Hop Dependent Capabilities Attribute", or NHC. (Note that this specification should not be confused with RFC 5492 BGP Capabilities.)</t>
      <t>Since the NHC 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 NHC as opaque data), the NHC encodes the next hop of its originator, or the router that most recently updated the attribute. If the NHC passes through a router that changes the next hop without regenerating the NHC, they will fail to match when later examined, and the recipient can act accordingly. This scheme allows NHC support to be introduced into a network incrementally. Informally, the intent is that,</t>
      <ul spacing="normal">
        <li>
          <t>If a router is not changing the next hop, it can obliviously propagate the NHC just like any other optional transitive attribute.</t>
        </li>
        <li>
          <t>If a router is changing the next hop, then it has to be able to vouch for every capability it includes in the NHC.</t>
        </li>
      </ul>
      <t>Complete details are provided in <xref target="tbrc"/>.</t>
      <t>An NHC carried in a given BGP UPDATE message conveys information that relates to all Network Layer Reachability Information (NLRI) advertised in that particular UPDATE, and only to those NLRI. A different UPDATE message originated by the same source might not include an NHC, and if so, NLRI carried in that UPDATE would not be affected by the NHC. By implication, if a router wishes to use NHC to describe all NLRI it originates, it needs to include an NHC with each UPDATE it sends. In this respect, despite its similar naming, the NHC is unlike RFC 5492 BGP Capabilities.</t>
      <t>Informally, a capability included in a given NHC should not be thought of as a capability of the next hop, but rather a capability of the path, that depends on the ability of the next hop to support it. Hence it is said to be "dependent on" the next hop.</t>
      <t>This specification also defines an NHC capability, called "ELCv3", to advertise the ability to process the Multiprotocol Label Switching (MPLS) Entropy Label as an egress Label Switching Router (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"/>. Although ELCv3 is only relevant to NLRI of labeled address families, a future NHC capability might be applicable to non-labeled NLRI, or to both, irrespective of labels. (The term "labeled address family" is defined in the first paragraph of Section 3.5 of <xref target="RFC9012"/>. In this document, we use the term "labeled NLRI" as a short form of "NLRI of a labeled address family.")</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 Next Hop Dependent Capabilities Attribute</name>
      <section anchor="encoding">
        <name>Encoding</name>
        <t>The BGP Next Hop Dependent Capabilities attribute (NHC attribute, or just NHC) is an optional, transitive BGP path attribute with type code 39. The NHC always includes a network layer address identifying the next hop of the route the NHC accompanies. The NHC signals potentially useful information related to the forwarding plane features, so it is desirable to make it transitive to ensure propagation across BGP speakers (e.g., route reflectors) that do not change the next hop and are therefore not in the forwarding path. The next hop data is to ensure correctness if it traverses BGP speakers that do not understand the NHC. This is further explained below.</t>
        <t>The Attribute Data field of the NHC attribute is encoded as a header portion that identifies the router that created or most recently updated the attribute, followed by one or more Type-Length-Value (TLV) triples:</t>
        <figure anchor="nhcformat">
          <name>NHC 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 TLV:</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 integer that indicates the type of capability advertised and unambiguously identifies an individual capability.</t>
        <t>Capability Length: a two-octet unsigned integer that indicates the length, in octets, of the Capability Value field.  A length of 0 indicates that the Capability Value field is zero-length, i.e. it has a null value.</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.  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 NHC 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>MUST</bcp14> elect to be prepared to consume capabilities in any order, for robustness reasons.</t>
      </section>
      <section anchor="sending-the-nhc">
        <name>Sending the NHC</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 NHC attribute with it, that carries capability TLVs that describe aspects of R. S <bcp14>MUST</bcp14> set the next hop depicted in the header portion of the NHC 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 does not need to take any special action, it <bcp14>SHOULD</bcp14> simply propagate the NHC 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 NHC unchanged. It <bcp14>SHOULD</bcp14> include a newly-constructed NHC attribute with R, constructed as described above in the "originating R into BGP" case. Any given capability TLV carried by the newly-constructed NHC attribute might use information from the received NHC attribute as input to its construction, possibly as straightforwardly as simply copying the TLV. The details of how the capabilities in the new NHC are constructed are specific to the definition of each capability. Any capability TLVs received by S that are for capabilities not supported by S will not be included in the newly-constructed NHC attribute S includes with R.</t>
        <t>An implementation <bcp14>SHOULD</bcp14> propagate the NHC and its contained capabilities by default. An implementation <bcp14>SHOULD</bcp14> provide configuration control of whether any given capability is propagated. An implementation <bcp14>MAY</bcp14> provide finer-grained control on propagation based on attributes of the peering session, as discussed in <xref target="Security_NHC"/>.</t>
        <t>Due to the nature of BGP optional transitive path attributes, any BGP speaker that does not implement this specification will propagate the NHC, the requirements of this section notwithstanding. Such a speaker will not update the NHC, however.</t>
        <t>Certain NLRI formats do not include a next hop at all, one example being the Flow Specification NLRI <xref target="RFC8955"/>. The NHC <bcp14>MUST NOT</bcp14> be sent with such NLRI.</t>
        <section anchor="nhcaggregation">
          <name>Aggregation</name>
          <t>When aggregating routes, the above rules for constructing a new NHC <bcp14>MUST</bcp14> be followed. The decision of whether to include the NHC with the aggregate route and what its form will be, depends in turn on whether any capabilities are eligible to be included with the aggregate route.  If there are no eligible capabilities, the NHC <bcp14>MUST NOT</bcp14> be included.</t>
          <t>The specification for an individual capability must define how that capability is to be aggregated. If no rules are defined for a given capability, that capability <bcp14>MUST NOT</bcp14> be aggregated. Rules for aggregating the ELCv3 are found in <xref target="elcv3aggregation"/>.</t>
          <t>(Route aggregation is described in <xref target="RFC4271"/>. Although prefix aggregation -- combining two or more more-specific prefixes to form one less-specific prefix -- is one application of aggregation, we note that another is when two or more routes for the same prefix are selected to be used for multipath forwarding.)</t>
        </section>
      </section>
      <section anchor="receiving">
        <name>Receiving the NHC</name>
        <t>An implementation receiving routes with a NHC <bcp14>SHOULD NOT</bcp14> discard the attribute or its contained capabilities by default. An implementation <bcp14>SHOULD</bcp14> provide configuration control of whether any given capability is processed. An implementation <bcp14>MAY</bcp14> provide finer-grained control on propagation based on attributes of the peering session, as discussed in <xref target="Security_NHC"/>.</t>
        <t>When a BGP speaker receives a BGP route that includes the NHC, it <bcp14>MUST</bcp14> compare the address given in the header portion of the NHC and illustrated in <xref target="nhcformat"/> to the next hop of the BGP route. If the two match, the NHC 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 NHC, and changed the next hop of the route. In this case, the contents of the NHC cannot be used, and the NHC <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 an 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 Internal BGP (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, the receipt of an unrecognized Capability Code <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, the selected route has been learned from External BGP (that is, the next hop is in a different Autonomous System), or by configuration (see following).  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. Following this reasoning, if the administrator of the network is confident that all routers within the AS will interpret the presence of the capability in the same way, they could relax this restriction by configuration.</t>
      </section>
      <section anchor="attribute-error-handling">
        <name>Attribute Error Handling</name>
        <t>An NHC is considered malformed if the length of the attribute, encoded in the Attribute Length field of the BGP Path Attribute header (Section 4.3 of <xref target="RFC4271"/>), is inconsistent with the lengths of the contained capability TLVs. In other words, the sum of the sizes (Capability Length plus 4) of the contained capability TLVs, plus the length of the NHC header (<xref target="nhcformat"/>), must be equal to the overall Attribute Length.</t>
        <t>A BGP UPDATE message with a malformed NHC <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 NHC 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. There is no reason to propagate an NHC that contains no capability TLVs.</t>
        <t>A document that specifies a new NHC Capability should provide specifics regarding what constitutes an error for that NHC Capability.</t>
        <t>If a capability TLV is malformed, that capability TLV <bcp14>SHOULD</bcp14> be ignored and removed.  Other capability TLVs <bcp14>SHOULD</bcp14> be processed as usual. If a given capability TLV requires different error-handling treatment than described in the previous sentences, its specification should provide specifics.</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>The foregoing sections define the NHC as a container for capability TLVs. The Entropy Label Capability is one such capability.</t>
      <t>When BGP <xref target="RFC4271"/> is used for distributing labeled NLRI as described in, for example, <xref target="RFC8277"/>, the route may include the ELCv3 as part of the NHC.  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 LSR for that route -- see Section 4.1 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>
      <t>This section (and its subsections) replaces Section 5.2 of <xref target="RFC6790"/>, which was previously deprecated by <xref target="RFC7447"/>.</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>MAY</bcp14> include the ELCv3 capability if it knows that the egress of the associated LSP L is EL-capable, otherwise it <bcp14>MUST NOT</bcp14> include the ELCv3 capability. Specific conditions where S would know that the egress is EL-capable are if S:</t>
        <ul spacing="normal">
          <li>
            <t>Is itself the egress, and knows itself to be EL-capable, or</t>
          </li>
          <li>
            <t>Is re-advertising a BGP route it received with a valid ELCv3 capability, and is preserving the value of N as received, or</t>
          </li>
          <li>
            <t>Is re-advertising a BGP route it received with a valid ELCv3 capability, and is changing the next hop that it has received to N, and knows that this new next hop (normally itself) is EL-capable, or</t>
          </li>
          <li>
            <t>Is re-advertising a BGP route it received with a valid ELCv3 capability, and is changing the next hop that it has received to N, and knows (for example, through configuration) that  the new next hop (normally itself) even if not EL-capable will simply swap labels without popping the BGP-advertised label stack and processing the label below, as with a transit LSR, or</t>
          </li>
          <li>
            <t>Knows by implementation-specific means that the egress is EL-capable, or</t>
          </li>
          <li>
            <t>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 Label Distribution Protocol (LDP) ELC TLV, Section 5.1 of <xref target="RFC6790"/>.)</t>
          </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 anchor="elcv3aggregation">
          <name>Aggregation</name>
          <t>When forming an aggregate (see <xref target="nhcaggregation"/>), the aggregate route thus formed <bcp14>MUST NOT</bcp14> include the ELCv3 unless each constituent route would be eligible to include the ELCv3 according to the criteria given above.</t>
        </section>
      </section>
      <section anchor="receiving-the-elcv3">
        <name>Receiving the ELCv3</name>
        <t>(Below, we assume that "includes the ELCv3" implies that the containing NHC has passed the checks specified in <xref target="receiving"/>. If it had not passed, then the NHC 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, it indicates that it can safely insert an entropy label into the label stack of the associated LSP. This 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>
        <t>If more than one instance of the ELCv3 is included in an NHC, instances beyond the first <bcp14>MUST</bcp14> be disregarded.</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, and to update its name and reference as shown below.</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 Next Hop Dependent Capabilities (NHC)</td>
            <td align="left">(this doc)</td>
          </tr>
        </tbody>
      </table>
      <t>IANA is requested to create a new registry called "BGP Next Hop Dependent Capability Codes" within the Border Gateway Protocol (BGP) Parameters group. The registry's allocation policy is First Come, First Served, except where designated otherwise in <xref target="preregistry"/>. 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">2</td>
            <td align="left">NNHN</td>
            <td align="left">draft-wang-idr-next-next-hop-nodes-00</td>
            <td align="left">kfwang@juniper.net</td>
          </tr>
          <tr>
            <td align="left">65400 - 65499</td>
            <td align="left">private use</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_NHC">
        <name>Considerations for the NHC</name>
        <t>The header portion of the NHC contains the next hop the attribute's originator included when sending it, or that an intermediate router included when updating the attribute (in the latter case, the "contract" with the intermediate router is that it performed the checks in <xref target="receiving"/> before propagating the attribute). 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>A motivating application for this attribute is to convey information between Autonomous Systems that are under the control of the same administrator. In such a case, it would not need to 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 NHC 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 NHC or its contained capabilities, unless there is an identified need to do so.</t>
        <t>The foregoing notwithstanding, control of NHC 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. (This can be seen as a specific case of the general "attribute escape" phenomenon discussed in <xref target="I-D.haas-idr-bgp-attribute-escape"/>.) 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 anchor="sec-normative-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>
        <reference anchor="RFC9012">
          <front>
            <title>The BGP Tunnel Encapsulation Attribute</title>
            <author fullname="K. Patel" initials="K." surname="Patel"/>
            <author fullname="G. Van de Velde" initials="G." surname="Van de Velde"/>
            <author fullname="S. Sangli" initials="S." surname="Sangli"/>
            <author fullname="J. Scudder" initials="J." surname="Scudder"/>
            <date month="April" year="2021"/>
            <abstract>
              <t>This document defines a BGP path attribute known as the "Tunnel Encapsulation attribute", which can be used with BGP UPDATEs of various Subsequent Address Family Identifiers (SAFIs) to provide information needed to create tunnels and their corresponding encapsulation headers. It provides encodings for a number of tunnel types, along with procedures for choosing between alternate tunnels and routing packets into tunnels.</t>
              <t>This document obsoletes RFC 5512, which provided an earlier definition of the Tunnel Encapsulation attribute. RFC 5512 was never deployed in production. Since RFC 5566 relies on RFC 5512, it is likewise obsoleted. This document updates RFC 5640 by indicating that the Load-Balancing Block sub-TLV may be included in any Tunnel Encapsulation attribute where load balancing is desired.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9012"/>
          <seriesInfo name="DOI" value="10.17487/RFC9012"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="I-D.haas-idr-bgp-attribute-escape">
          <front>
            <title>BGP Attribute Escape</title>
            <author fullname="Jeffrey Haas" initials="J." surname="Haas">
              <organization>Juniper Networks</organization>
            </author>
            <date day="2" month="February" year="2024"/>
            <abstract>
              <t>   BGP-4 [RFC 4271] has been very successful in being extended over the
   years it has been deployed.  A significant part of that success is
   due to its ability to incrementally add new features to its Path
   Attributes when they are marked "optional transitive".
   Implementations that are ignorant of a feature for an unknown Path
   Attribute that are so marked will propagate BGP routes with such
   attributes.

   Unfortunately, this blind propagation of unknown Path Attributes may
   happen for features that are intended to be used in a limited scope.
   When such Path Attributes inadvertently are carried beyond that
   scope, it can lead to things such as unintended disclosure of
   sensitive information, or cause improper routing.  In their worst
   cases, such propagation may be for malformed Path Attributes and lead
   to BGP session resets or crashes.

   This document calls such inadvertent propagation of BGP Path
   Attributes, "attribute escape".  This document further describes some
   of the scenarios that leads to this behavior and makes
   recommendations on practices that may limit its impact.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-haas-idr-bgp-attribute-escape-01"/>
        </reference>
        <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="January" year="2024"/>
            <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-03"/>
        </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>
        <reference anchor="RFC8955">
          <front>
            <title>Dissemination of Flow Specification Rules</title>
            <author fullname="C. Loibl" initials="C." surname="Loibl"/>
            <author fullname="S. Hares" initials="S." surname="Hares"/>
            <author fullname="R. Raszuk" initials="R." surname="Raszuk"/>
            <author fullname="D. McPherson" initials="D." surname="McPherson"/>
            <author fullname="M. Bacher" initials="M." surname="Bacher"/>
            <date month="December" year="2020"/>
            <abstract>
              <t>This document defines a Border Gateway Protocol Network Layer Reachability Information (BGP NLRI) encoding format that can be used to distribute (intra-domain and inter-domain) traffic Flow Specifications for IPv4 unicast and IPv4 BGP/MPLS VPN services. This allows the routing system to propagate information regarding more specific components of the traffic aggregate defined by an IP destination prefix.</t>
              <t>It also specifies BGP Extended Community encoding formats, which can be used to propagate Traffic Filtering Actions along with the Flow Specification NLRI. Those Traffic Filtering Actions encode actions a routing system can take if the packet matches the Flow Specification.</t>
              <t>This document obsoletes both RFC 5575 and RFC 7674.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8955"/>
          <seriesInfo name="DOI" value="10.17487/RFC8955"/>
        </reference>
      </references>
    </references>
    <?line 327?>

<section numbered="false" anchor="Acknowledgements">
      <name>Acknowledgements</name>
      <t>The authors of this specification thank Randy Bush, Mach Chen, Wes Hardaker, Jeff Haas, Susan Hares, Ketan Talaulikar, and Gyan Mishra for their review and comments.</t>
      <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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

-->

</rfc>
