<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" category="std" consensus="true" docName="draft-ietf-isis-mpls-elc-13" indexInclude="true" ipr="trust200902" number="9088" prepTime="2021-08-14T06:19:54" scripts="Common,Latin" sortRefs="true" submissionType="IETF" symRefs="true" tocDepth="3" tocInclude="true" xml:lang="en">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-isis-mpls-elc-13" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc9088" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="Signaling ELC and ERLD Using IS-IS">Signaling Entropy Label Capability and Entropy Readable Label Depth Using IS-IS</title>
    <seriesInfo name="RFC" value="9088" stream="IETF"/>
    <author fullname="Xiaohu Xu" initials="X." surname="Xu">
      <organization showOnFrontPage="true">Capitalonline</organization>
      <address>
        <email>xiaohu.xu@capitalonline.net</email>
      </address>
    </author>
    <author fullname="Sriganesh Kini" initials="S." surname="Kini">
      <organization showOnFrontPage="true"/>
      <address>
        <postal>
          <street/>
          <city/>
          <region/>
          <code/>
          <country/>
        </postal>
        <phone/>
        <email>sriganeshkini@gmail.com</email>
        <uri/>
      </address>
    </author>
    <author fullname="Peter Psenak" initials="P." surname="Psenak">
      <organization showOnFrontPage="true">Cisco Systems, Inc.</organization>
      <address>
        <postal>
          <extaddr>Eurovea Centre, Central 3</extaddr>
          <street>Pribinova Street 10</street>
          <city>Bratislava</city>
          <code>81109</code>
          <country>Slovakia</country>
        </postal>
        <email>ppsenak@cisco.com</email>
      </address>
    </author>
    <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
      <organization showOnFrontPage="true">Cisco Systems, Inc.</organization>
      <address>
        <postal>
          <street/>
          <city>Brussels</city>
          <region/>
          <code/>
          <country>Belgium</country>
        </postal>
        <email>cfilsfil@cisco.com</email>
      </address>
    </author>
    <author fullname="Stephane Litkowski" initials="S." surname="Litkowski">
      <organization showOnFrontPage="true">Cisco Systems, Inc.</organization>
      <address>
        <postal>
          <street>La Rigourdiere</street>
          <city>Cesson Sevigne</city>
          <code/>
          <country>France</country>
        </postal>
        <email>slitkows@cisco.com</email>
        <uri/>
      </address>
    </author>
    <author fullname="Matthew Bocci" initials="M." surname="Bocci">
      <organization showOnFrontPage="true">Nokia</organization>
      <address>
        <postal>
          <street>Aztec West Business Park</street>
          <city>Bristol</city>
          <extaddr>740 Waterside Drive</extaddr>
          <code>BS32 4UF</code>
          <country>United Kingdom</country>
        </postal>
        <email>matthew.bocci@nokia.com</email>
        <uri/>
      </address>
    </author>
    <date month="08" year="2021"/>
    <area>RTG</area>
    <workgroup>LSR</workgroup>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">Multiprotocol Label Switching (MPLS) has defined a mechanism to load-balance 
      traffic flows using Entropy Labels (EL). An ingress Label
      Switching Router (LSR) cannot insert ELs for packets going into a given
      Label Switched Path (LSP) unless an egress LSR has indicated via signaling that it has the
      capability to process ELs, referred to as the Entropy Label Capability
      (ELC), on that LSP. In addition, it would be useful for ingress LSRs
      to know each LSR's capability for reading the maximum label stack depth
      and performing EL-based load-balancing, referred to as Entropy Readable
      Label Depth (ERLD). This document defines a mechanism to signal these two
      capabilities using IS-IS and Border Gateway Protocol - Link State (BGP-LS).</t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc9088" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2021 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Simplified BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Simplified BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-terminology">Terminology</xref></t>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-advertising-elc-using-is-is">Advertising ELC Using IS-IS</xref></t>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-advertising-erld-using-is-i">Advertising ERLD Using IS-IS</xref></t>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-signaling-elc-and-erld-in-b">Signaling ELC and ERLD in BGP-LS</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="7" format="counter" sectionFormat="of" target="section-7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="8" format="counter" sectionFormat="of" target="section-8"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-references">References</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.8.2">
              <li pn="section-toc.1-1.8.2.1">
                <t indent="0" pn="section-toc.1-1.8.2.1.1"><xref derivedContent="8.1" format="counter" sectionFormat="of" target="section-8.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.2">
                <t indent="0" pn="section-toc.1-1.8.2.2.1"><xref derivedContent="8.2" format="counter" sectionFormat="of" target="section-8.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.9">
            <t indent="0" pn="section-toc.1-1.9.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgements">Acknowledgements</xref></t>
          </li>
          <li pn="section-toc.1-1.10">
            <t indent="0" pn="section-toc.1-1.10.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-contributors">Contributors</xref></t>
          </li>
          <li pn="section-toc.1-1.11">
            <t indent="0" pn="section-toc.1-1.11.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.c"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Addresses</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1"><xref target="RFC6790" format="default" sectionFormat="of" derivedContent="RFC6790"/> describes a method to
      load-balance Multiprotocol Label Switching (MPLS) traffic flows using
      Entropy Labels (EL). It also introduces the concept of Entropy Label
      Capability (ELC) and defines the signaling of this capability via MPLS
      signaling protocols. Recently, mechanisms have been defined to signal
      labels via link-state Interior Gateway Protocols (IGP) such as IS-IS
      <xref target="RFC8667" format="default" sectionFormat="of" derivedContent="RFC8667"/>.  This document defines a
      mechanism to signal the ELC using IS-IS. </t>
      <t indent="0" pn="section-1-2">In cases where Segment Routing (SR) is used with the MPLS data plane
      (e.g., SR-MPLS <xref target="RFC8660" format="default" sectionFormat="of" derivedContent="RFC8660"/>), it would be
      useful for ingress LSRs to know each intermediate LSR's capability of
      reading the maximum label stack depth and performing EL-based
      load-balancing.  This capability, referred to as Entropy Readable Label
      Depth (ERLD) as defined in <xref target="RFC8662" format="default" sectionFormat="of" derivedContent="RFC8662"/>,
      may be used by ingress LSRs to determine the position of the EL label in
      the stack, and whether it's necessary to insert multiple ELs at
      different positions in the label stack. This document defines a
      mechanism to signal the ERLD using IS-IS.</t>
    </section>
    <section anchor="Teminology" numbered="true" toc="include" removeInRFC="false" pn="section-2">
      <name slugifiedName="name-terminology">Terminology</name>
      <t indent="0" pn="section-2-1">This memo makes use of the terms defined in <xref target="RFC6790" format="default" sectionFormat="of" derivedContent="RFC6790"/>,
     and <xref target="RFC8662" format="default" sectionFormat="of" derivedContent="RFC8662"/>.</t>
      <t indent="0" pn="section-2-2">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" format="default" sectionFormat="of" derivedContent="RFC2119"/> <xref target="RFC8174" format="default" sectionFormat="of" derivedContent="RFC8174"/> when, and
      only when, they appear in all capitals, as shown here.</t>
    </section>
    <section anchor="ELC_ADV" numbered="true" toc="include" removeInRFC="false" pn="section-3">
      <name slugifiedName="name-advertising-elc-using-is-is">Advertising ELC Using IS-IS</name>
      <t indent="0" pn="section-3-1">Even though ELC is a property of the node, in some cases it is
      advantageous to associate and advertise the ELC with a prefix. In a
      multi-area network, routers may not know the identity of the prefix
      originator in a remote area or may not know the capabilities of such
      originator. Similarly, in a multi-domain network, the identity of the
      prefix originator and its capabilities may not be known to the ingress
      LSR.</t>
      <t indent="0" pn="section-3-2"> Bit 3 in the Prefix Attribute Flags <xref target="RFC7794" format="default" sectionFormat="of" derivedContent="RFC7794"/> is used as the ELC Flag (E-Flag), as shown in <xref target="prefix-flags" format="default" sectionFormat="of" derivedContent="Figure 1"/>. If a router has multiple interfaces, the router
      <bcp14>MUST NOT</bcp14> announce the ELC for any local host prefixes
      unless all of its interfaces are capable of processing ELs. If a router
      supports ELs on all of its interfaces, it <bcp14>SHOULD</bcp14> set the
      ELC for every local host prefix it advertises in IS-IS.</t>
      <figure anchor="prefix-flags" align="left" suppress-title="false" pn="figure-1">
        <name slugifiedName="name-prefix-attribute-flags"> Prefix Attribute Flags </name>
        <artwork name="" type="" align="left" alt="" pn="section-3-3.1">
       0 1 2 3 4 5 6 7...
      +-+-+-+-+-+-+-+-+...
      |X|R|N|E|        ...
      +-+-+-+-+-+-+-+-+...
      	</artwork>
      </figure>
      <dl newline="true" indent="3" spacing="normal" pn="section-3-4">
        <dt pn="section-3-4.1">E-Flag:
</dt>
        <dd pn="section-3-4.2">ELC Flag (Bit 3) - Set for local host prefix of the originating node if it
supports ELC on all interfaces.
</dd>
      </dl>
      <t indent="0" pn="section-3-5">The ELC signaling <bcp14>MUST</bcp14> be preserved when a router propagates a prefix
         between IS-IS levels <xref target="RFC5302" format="default" sectionFormat="of" derivedContent="RFC5302"/>.
      </t>
      <t indent="0" pn="section-3-6">When redistributing a prefix between two IS-IS protocol instances or
      redistributing from another protocol to an IS-IS protocol instance, a
      router <bcp14>SHOULD</bcp14> preserve the ELC signaling for that prefix
      if it exists. The exact mechanism used to exchange ELC between protocol
      instances running on an Autonomous System Border Router is outside of
      the scope of this document.</t>
    </section>
    <section anchor="ERLD_ADV" numbered="true" toc="include" removeInRFC="false" pn="section-4">
      <name slugifiedName="name-advertising-erld-using-is-i">Advertising ERLD Using IS-IS</name>
      <t indent="0" pn="section-4-1">A new MSD-Type <xref target="RFC8491" format="default" sectionFormat="of" derivedContent="RFC8491"/>, called
      ERLD-MSD, is defined to advertise the ERLD <xref target="RFC8662" format="default" sectionFormat="of" derivedContent="RFC8662"/> of a given router. An MSD-Type code 2 has been
      assigned by IANA for ERLD-MSD. The MSD-Value field is set to the ERLD in
      the range between 0 to 255. The scope of the advertisement depends on
      the application.  If a router has multiple interfaces with different
      capabilities of reading the maximum label stack depth, the router
      <bcp14>MUST</bcp14> advertise the smallest value found across all its
      interfaces.</t>
      <t indent="0" pn="section-4-2">The absence of ERLD-MSD advertisements indicates only that the advertising
      node does not support advertisement of this capability.</t>
      <t indent="0" pn="section-4-3">The considerations for advertising the ERLD are specified in 
      <xref target="RFC8662" format="default" sectionFormat="of" derivedContent="RFC8662"/>.</t>
      <t indent="0" pn="section-4-4">If the ERLD-MSD type is received in the Link MSD sub-TLV, 
      it <bcp14>MUST</bcp14> be ignored.</t>
    </section>
    <section anchor="BGPLS" numbered="true" toc="include" removeInRFC="false" pn="section-5">
      <name slugifiedName="name-signaling-elc-and-erld-in-b">Signaling ELC and ERLD in BGP-LS</name>
      <t indent="0" pn="section-5-1">The IS-IS extensions defined in this document can be advertised via
   BGP-LS (distribution of Link-State and TE information using BGP) <xref target="RFC7752" format="default" sectionFormat="of" derivedContent="RFC7752"/> 
   using existing BGP-LS TLVs.</t>
      <t indent="0" pn="section-5-2">The ELC is advertised using the Prefix Attribute Flags TLV as defined in
   <xref target="RFC9085" format="default" sectionFormat="of" derivedContent="RFC9085"/>.</t>
      <t indent="0" pn="section-5-3">The ERLD-MSD is advertised using the Node MSD TLV as defined in
   <xref target="RFC8814" format="default" sectionFormat="of" derivedContent="RFC8814"/>.</t>
    </section>
    <section anchor="IANA" numbered="true" toc="include" removeInRFC="false" pn="section-6">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t indent="0" pn="section-6-1">IANA has completed the following actions for this document:
      </t>
      <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-6-2">
        <li pn="section-6-2.1">Bit 3 in the "Bit Values for Prefix Attribute Flags Sub-TLV" registry has
   been assigned to the ELC Flag.  IANA has updated the registry to
   reflect the name used in this document: ELC Flag (E-Flag).</li>
        <li pn="section-6-2.2"> Type 2 in the "IGP MSD-Types" registry has been assigned for the ERLD-MSD.
   IANA has updated the registry to reflect the name used in this
   document: ERLD-MSD.</li>
      </ul>
    </section>
    <section anchor="Security" numbered="true" toc="include" removeInRFC="false" pn="section-7">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-7-1">This document specifies the ability to advertise additional node
      capabilities using IS-IS and BGP-LS.  As such, the security
      considerations as described in <xref target="RFC7752" format="default" sectionFormat="of" derivedContent="RFC7752"/>, <xref target="RFC7794" format="default" sectionFormat="of" derivedContent="RFC7794"/>, <xref target="RFC7981" format="default" sectionFormat="of" derivedContent="RFC7981"/>, <xref target="RFC8491" format="default" sectionFormat="of" derivedContent="RFC8491"/>, <xref target="RFC8662" format="default" sectionFormat="of" derivedContent="RFC8662"/>, <xref target="RFC8814" format="default" sectionFormat="of" derivedContent="RFC8814"/>, and <xref target="RFC9085" format="default" sectionFormat="of" derivedContent="RFC9085"/> are applicable to this document.</t>
      <t indent="0" pn="section-7-2">Incorrectly setting the E-Flag during origination, propagation, or
      redistribution may lead to poor or no load-balancing of the MPLS traffic
      or to MPLS traffic being discarded on the egress node.</t>
      <t indent="0" pn="section-7-3">Incorrectly setting the ERLD value may lead to poor or no load-balancing of the 
      MPLS traffic.</t>
    </section>
  </middle>
  <back>
    <references pn="section-8">
      <name slugifiedName="name-references">References</name>
      <references pn="section-8.1">
        <name slugifiedName="name-normative-references">Normative References</name>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" quoteTitle="true" derivedAnchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author initials="S." surname="Bradner" fullname="S. Bradner">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="1997" month="March"/>
            <abstract>
              <t indent="0">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="RFC5302" target="https://www.rfc-editor.org/info/rfc5302" quoteTitle="true" derivedAnchor="RFC5302">
          <front>
            <title>Domain-Wide Prefix Distribution with Two-Level IS-IS</title>
            <author initials="T." surname="Li" fullname="T. Li">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="H." surname="Smit" fullname="H. Smit">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T." surname="Przygienda" fullname="T. Przygienda">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2008" month="October"/>
            <abstract>
              <t indent="0">This document describes extensions to the Intermediate System to Intermediate System (IS-IS) protocol to support optimal routing within a two-level domain.  The IS-IS protocol is specified in ISO 10589, with extensions for supporting IPv4 (Internet Protocol) specified in RFC 1195.  This document replaces RFC 2966.</t>
              <t indent="0">This document extends the semantics presented in RFC 1195 so that a routing domain running with both level 1 and level 2 Intermediate Systems (IS) (routers) can distribute IP prefixes between level 1 and level 2, and vice versa.  This distribution requires certain restrictions to ensure that persistent forwarding loops do not form. The goal of this domain-wide prefix distribution is to increase the granularity of the routing information within the domain.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5302"/>
          <seriesInfo name="DOI" value="10.17487/RFC5302"/>
        </reference>
        <reference anchor="RFC6790" target="https://www.rfc-editor.org/info/rfc6790" quoteTitle="true" derivedAnchor="RFC6790">
          <front>
            <title>The Use of Entropy Labels in MPLS Forwarding</title>
            <author initials="K." surname="Kompella" fullname="K. Kompella">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Drake" fullname="J. Drake">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Amante" fullname="S. Amante">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="W." surname="Henderickx" fullname="W. Henderickx">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Yong" fullname="L. Yong">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2012" month="November"/>
            <abstract>
              <t indent="0">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="RFC7752" target="https://www.rfc-editor.org/info/rfc7752" quoteTitle="true" derivedAnchor="RFC7752">
          <front>
            <title>North-Bound Distribution of Link-State and Traffic Engineering (TE) Information Using BGP</title>
            <author initials="H." surname="Gredler" fullname="H. Gredler" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Medved" fullname="J. Medved">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Previdi" fullname="S. Previdi">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Farrel" fullname="A. Farrel">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Ray" fullname="S. Ray">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2016" month="March"/>
            <abstract>
              <t indent="0">In a number of environments, a component external to a network is called upon to perform computations based on the network topology and current state of the connections within the network, including Traffic Engineering (TE) information.  This is information typically distributed by IGP routing protocols within the network.</t>
              <t indent="0">This document describes a mechanism by which link-state and TE information can be collected from networks and shared with external components using the BGP routing protocol.  This is achieved using a new BGP Network Layer Reachability Information (NLRI) encoding format.  The mechanism is applicable to physical and virtual IGP links.  The mechanism described is subject to policy control.</t>
              <t indent="0">Applications of this technique include Application-Layer Traffic Optimization (ALTO) servers and Path Computation Elements (PCEs).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7752"/>
          <seriesInfo name="DOI" value="10.17487/RFC7752"/>
        </reference>
        <reference anchor="RFC7794" target="https://www.rfc-editor.org/info/rfc7794" quoteTitle="true" derivedAnchor="RFC7794">
          <front>
            <title>IS-IS Prefix Attributes for Extended IPv4 and IPv6 Reachability</title>
            <author initials="L." surname="Ginsberg" fullname="L. Ginsberg" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Decraene" fullname="B. Decraene">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Previdi" fullname="S. Previdi">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="X." surname="Xu" fullname="X. Xu">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="U." surname="Chunduri" fullname="U. Chunduri">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2016" month="March"/>
            <abstract>
              <t indent="0">This document introduces new sub-TLVs to support advertisement of IPv4 and IPv6 prefix attribute flags and the source router ID of the router that originated a prefix advertisement.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7794"/>
          <seriesInfo name="DOI" value="10.17487/RFC7794"/>
        </reference>
        <reference anchor="RFC7981" target="https://www.rfc-editor.org/info/rfc7981" quoteTitle="true" derivedAnchor="RFC7981">
          <front>
            <title>IS-IS Extensions for Advertising Router Information</title>
            <author initials="L." surname="Ginsberg" fullname="L. Ginsberg">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Previdi" fullname="S. Previdi">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Chen" fullname="M. Chen">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2016" month="October"/>
            <abstract>
              <t indent="0">This document defines a new optional Intermediate System to Intermediate System (IS-IS) TLV named CAPABILITY, formed of multiple sub-TLVs, which allows a router to announce its capabilities within an IS-IS level or the entire routing domain.  This document obsoletes RFC 4971.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7981"/>
          <seriesInfo name="DOI" value="10.17487/RFC7981"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" quoteTitle="true" derivedAnchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author initials="B." surname="Leiba" fullname="B. Leiba">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="May"/>
            <abstract>
              <t indent="0">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="RFC8491" target="https://www.rfc-editor.org/info/rfc8491" quoteTitle="true" derivedAnchor="RFC8491">
          <front>
            <title>Signaling Maximum SID Depth (MSD) Using IS-IS</title>
            <author initials="J." surname="Tantsura" fullname="J. Tantsura">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="U." surname="Chunduri" fullname="U. Chunduri">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Aldrin" fullname="S. Aldrin">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Ginsberg" fullname="L. Ginsberg">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2018" month="November"/>
            <abstract>
              <t indent="0">This document defines a way for an Intermediate System to Intermediate System (IS-IS) router to advertise multiple types of supported Maximum SID Depths (MSDs) at node and/or link granularity. Such advertisements allow entities (e.g., centralized controllers) to determine whether a particular Segment ID (SID) stack can be supported in a given network.  This document only defines one type of MSD: Base MPLS Imposition.  However, it defines an encoding that can support other MSD types.  This document focuses on MSD use in a network that is Segment Routing (SR) enabled, but MSD may also be useful when SR is not enabled.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8491"/>
          <seriesInfo name="DOI" value="10.17487/RFC8491"/>
        </reference>
        <reference anchor="RFC8662" target="https://www.rfc-editor.org/info/rfc8662" quoteTitle="true" derivedAnchor="RFC8662">
          <front>
            <title>Entropy Label for Source Packet Routing in Networking (SPRING) Tunnels</title>
            <author initials="S." surname="Kini" fullname="S. Kini">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="K." surname="Kompella" fullname="K. Kompella">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Sivabalan" fullname="S. Sivabalan">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Litkowski" fullname="S. Litkowski">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Shakir" fullname="R. Shakir">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Tantsura" fullname="J. Tantsura">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2019" month="December"/>
            <abstract>
              <t indent="0">Segment Routing (SR) leverages the source-routing paradigm.  A node steers a packet through an ordered list of instructions, called segments. Segment Routing can be applied to the Multiprotocol Label Switching (MPLS) data plane.  Entropy labels (ELs) are used in MPLS to improve load-balancing. This document examines and describes how ELs are to be applied to Segment Routing MPLS.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8662"/>
          <seriesInfo name="DOI" value="10.17487/RFC8662"/>
        </reference>
        <reference anchor="RFC8814" target="https://www.rfc-editor.org/info/rfc8814" quoteTitle="true" derivedAnchor="RFC8814">
          <front>
            <title>Signaling Maximum SID Depth (MSD) Using the Border Gateway Protocol - Link State</title>
            <author initials="J." surname="Tantsura" fullname="J. Tantsura">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="U." surname="Chunduri" fullname="U. Chunduri">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="K." surname="Talaulikar" fullname="K. Talaulikar">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Mirsky" fullname="G. Mirsky">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="N." surname="Triantafillis" fullname="N. Triantafillis">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2020" month="August"/>
            <abstract>
              <t indent="0">This document defines a way for a Border Gateway Protocol - Link State (BGP-LS) speaker to advertise multiple types of supported Maximum SID Depths (MSDs) at node and/or link granularity.</t>
              <t indent="0">Such advertisements allow entities (e.g., centralized controllers) to determine whether a particular Segment Identifier (SID) stack can be supported in a given network.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8814"/>
          <seriesInfo name="DOI" value="10.17487/RFC8814"/>
        </reference>
        <reference anchor="RFC9085" target="https://www.rfc-editor.org/info/rfc9085" quoteTitle="true" derivedAnchor="RFC9085">
          <front>
            <title>Border Gateway Protocol - Link State (BGP-LS) Extensions for Segment Routing</title>
            <author initials="S" surname="Previdi" fullname="Stefano Previdi">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="K" surname="Talaulikar" fullname="Ketan Talaulikar" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C" surname="Filsfils" fullname="Clarence Filsfils">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="H" surname="Gredler" fullname="Hannes Gredler">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M" surname="Chen" fullname="Mach(Guoyi) Chen">
              <organization showOnFrontPage="true"/>
            </author>
            <date month="August" year="2021"/>
          </front>
          <seriesInfo name="RFC" value="9085"/>
          <seriesInfo name="DOI" value="10.17487/RFC9085"/>
        </reference>
      </references>
      <references pn="section-8.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <reference anchor="RFC8660" target="https://www.rfc-editor.org/info/rfc8660" quoteTitle="true" derivedAnchor="RFC8660">
          <front>
            <title>Segment Routing with the MPLS Data Plane</title>
            <author initials="A." surname="Bashandy" fullname="A. Bashandy" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Filsfils" fullname="C. Filsfils" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Previdi" fullname="S. Previdi">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Decraene" fullname="B. Decraene">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Litkowski" fullname="S. Litkowski">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Shakir" fullname="R. Shakir">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2019" month="December"/>
            <abstract>
              <t indent="0">Segment Routing (SR) leverages the source-routing paradigm.  A node steers a packet through a controlled set of instructions, called segments, by prepending the packet with an SR header.  In the MPLS data plane, the SR header is instantiated through a label stack. This document specifies the forwarding behavior to allow instantiating SR over the MPLS data plane (SR-MPLS).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8660"/>
          <seriesInfo name="DOI" value="10.17487/RFC8660"/>
        </reference>
        <reference anchor="RFC8667" target="https://www.rfc-editor.org/info/rfc8667" quoteTitle="true" derivedAnchor="RFC8667">
          <front>
            <title>IS-IS Extensions for Segment Routing</title>
            <author initials="S." surname="Previdi" fullname="S. Previdi" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Ginsberg" fullname="L. Ginsberg" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Filsfils" fullname="C. Filsfils">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Bashandy" fullname="A. Bashandy">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="H." surname="Gredler" fullname="H. Gredler">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Decraene" fullname="B. Decraene">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2019" month="December"/>
            <abstract>
              <t indent="0">Segment Routing (SR) allows for a flexible definition of end-to-end paths within IGP topologies by encoding paths as sequences of topological sub-paths, called "segments". These segments are advertised by the link-state routing protocols (IS-IS and OSPF).</t>
              <t indent="0">This document describes the IS-IS extensions that need to be introduced for Segment Routing operating on an MPLS data plane.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8667"/>
          <seriesInfo name="DOI" value="10.17487/RFC8667"/>
        </reference>
      </references>
    </references>
    <section anchor="Acknowledgements" numbered="false" toc="include" removeInRFC="false" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgements">Acknowledgements</name>
      <t indent="0" pn="section-appendix.a-1">The authors would like to thank <contact fullname="Yimin       Shen"/>, <contact fullname="George Swallow"/>, <contact fullname="Acee Lindem"/>, <contact fullname="Les Ginsberg"/>,
      <contact fullname="Ketan Talaulikar"/>, <contact fullname="Jeff       Tantsura"/>, <contact fullname="Bruno Decraene"/>, <contact fullname="Carlos Pignataro"/>, <contact fullname="Wim Hendrickx"/>,
      and <contact fullname="Gunter Van de Velde"/> for their valuable comments.</t>
    </section>
    <section anchor="CONTR" numbered="false" toc="include" removeInRFC="false" pn="section-appendix.b">
      <name slugifiedName="name-contributors">Contributors</name>
      <t indent="0" pn="section-appendix.b-1">The following people contributed to the content
      of this document and should be considered as coauthors:</t>
      <contact fullname="Gunter Van de Velde (editor)">
        <organization showOnFrontPage="true">Nokia</organization>
        <address>
          <postal>
            <city>Antwerp</city>
            <country>Belgium</country>
          </postal>
          <email>gunter.van_de_velde@nokia.com</email>
        </address>
      </contact>
      <contact fullname="Wim Henderickx">
        <organization showOnFrontPage="true">Nokia</organization>
        <address>
          <postal>
            <country>Belgium</country>
          </postal>
          <email>wim.henderickx@nokia.com</email>
        </address>
      </contact>
      <contact fullname="Keyur Patel">
        <organization showOnFrontPage="true">Arrcus</organization>
        <address>
          <postal>
            <country>United States of America</country>
          </postal>
          <email>keyur@arrcus.com</email>
        </address>
      </contact>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.c">
      <name slugifiedName="name-authors-addresses">Authors' Addresses</name>
      <author fullname="Xiaohu Xu" initials="X." surname="Xu">
        <organization showOnFrontPage="true">Capitalonline</organization>
        <address>
          <email>xiaohu.xu@capitalonline.net</email>
        </address>
      </author>
      <author fullname="Sriganesh Kini" initials="S." surname="Kini">
        <organization showOnFrontPage="true"/>
        <address>
          <postal>
            <street/>
            <city/>
            <region/>
            <code/>
            <country/>
          </postal>
          <phone/>
          <email>sriganeshkini@gmail.com</email>
          <uri/>
        </address>
      </author>
      <author fullname="Peter Psenak" initials="P." surname="Psenak">
        <organization showOnFrontPage="true">Cisco Systems, Inc.</organization>
        <address>
          <postal>
            <extaddr>Eurovea Centre, Central 3</extaddr>
            <street>Pribinova Street 10</street>
            <city>Bratislava</city>
            <code>81109</code>
            <country>Slovakia</country>
          </postal>
          <email>ppsenak@cisco.com</email>
        </address>
      </author>
      <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
        <organization showOnFrontPage="true">Cisco Systems, Inc.</organization>
        <address>
          <postal>
            <street/>
            <city>Brussels</city>
            <region/>
            <code/>
            <country>Belgium</country>
          </postal>
          <email>cfilsfil@cisco.com</email>
        </address>
      </author>
      <author fullname="Stephane Litkowski" initials="S." surname="Litkowski">
        <organization showOnFrontPage="true">Cisco Systems, Inc.</organization>
        <address>
          <postal>
            <street>La Rigourdiere</street>
            <city>Cesson Sevigne</city>
            <code/>
            <country>France</country>
          </postal>
          <email>slitkows@cisco.com</email>
          <uri/>
        </address>
      </author>
      <author fullname="Matthew Bocci" initials="M." surname="Bocci">
        <organization showOnFrontPage="true">Nokia</organization>
        <address>
          <postal>
            <street>Aztec West Business Park</street>
            <city>Bristol</city>
            <extaddr>740 Waterside Drive</extaddr>
            <code>BS32 4UF</code>
            <country>United Kingdom</country>
          </postal>
          <email>matthew.bocci@nokia.com</email>
          <uri/>
        </address>
      </author>
    </section>
  </back>
</rfc>
