<?xml version="1.0"encoding="US-ASCII"?>encoding="UTF-8"?> <!DOCTYPE rfc SYSTEM"rfc2629.dtd"> <?rfc toc="yes"?> <?rfc tocompact="yes"?> <?rfc tocdepth="3"?> <?rfc tocindent="yes"?> <?rfc symrefs="yes"?> <?rfc sortrefs="yes"?> <?rfc comments="yes"?> <?rfc inline="yes"?> <?rfc compact="yes"?> <?rfc subcompact="no"?>"rfc2629-xhtml.ent"> <rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" category="std" consensus="true" docName="draft-ietf-isis-mpls-elc-13"ipr="trust200902">number="9088" ipr="trust200902" obsoletes="" updates="" xml:lang="en" tocInclude="true" tocDepth="3" symRefs="true" sortRefs="true" version="3"> <front> <title abbrev="Signaling ELC and ERLDusingUsing IS-IS">Signaling Entropy Label Capability and Entropy Readable Label Depth Using IS-IS</title> <seriesInfo name="RFC" value="9088"/> <author fullname="Xiaohu Xu"initials="X.X."initials="X." surname="Xu"><organization>Alibaba Inc</organization><organization>Capitalonline</organization> <address><email>xiaohu.xxh@alibaba-inc.com</email> <!-- uri and facsimile elements may also be added --><email>xiaohu.xu@capitalonline.net</email> </address> </author> <author fullname="Sriganesh Kini"initials="S.K."initials="S." surname="Kini"> <organization/> <address> <postal> <street/> <city/> <region/> <code/> <country/> </postal> <phone/><facsimile/><email>sriganeshkini@gmail.com</email> <uri/> </address> </author> <author fullname="Peter Psenak" initials="P." surname="Psenak"> <organization>Cisco Systems, Inc.</organization> <address> <postal><street>Eurovea<extaddr>Eurovea Centre, Central3</street>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>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.L."initials="S." surname="Litkowski"> <organization>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.B."initials="M." surname="Bocci"> <organization>Nokia</organization> <address> <postal><street>Shoppenhangers Road</street> <city>Maidenhead, Berks</city> <code/> <country>UK</country><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> <dateyear="2020"/> <area>Routing Area</area> <workgroup>LSR Working Group</workgroup> <keyword>Sample</keyword> <keyword>Draft</keyword>year="2021" month="August"/> <area>RTG</area> <workgroup>LSR</workgroup> <abstract> <t>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 andBGP-LS.</t>Border Gateway Protocol - Link State (BGP-LS).</t> </abstract> </front> <middle> <sectiontitle="Introduction">numbered="true" toc="default"> <name>Introduction</name> <t><xreftarget="RFC6790"/>target="RFC6790" format="default"/> 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 <xreftarget="RFC8667"/>.target="RFC8667" format="default"/>. Thisdraftdocument defines a mechanism to signal the ELC using IS-IS. </t> <t>In cases where Segment Routing (SR) is used with the MPLSData Planedata plane (e.g., SR-MPLS <xreftarget="RFC8660"/>),target="RFC8660" format="default"/>), 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 <xreftarget="RFC8662"/>,target="RFC8662" format="default"/>, 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"title="Terminology">numbered="true" toc="default"> <name>Terminology</name> <t>This memo makes use of the terms defined in <xreftarget="RFC6790"/>,target="RFC6790" format="default"/>, and <xreftarget="RFC8662"/>.</t>target="RFC8662" format="default"/>.</t> <t>The key words"MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY","<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"OPTIONAL""<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as described inBCP 14BCP 14 <xreftarget="RFC2119"/>target="RFC2119" format="default"/> <xreftarget="RFC8174"/>target="RFC8174" format="default"/> when, and only when, they appear in all capitals, as shown here.</t> </section> <section anchor="ELC_ADV"title="Advertisingnumbered="true" toc="default"> <name>Advertising ELC UsingIS-IS">IS-IS</name> <t>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 remotearea,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> Bit 3 in the Prefix Attribute Flags <xreftarget="RFC7794"/>target="RFC7794" format="default"/> is used as the ELC Flag(E-flag),(E-Flag), as shown inFigure 1.<xref target="prefix-flags"/>. If a router has multiple interfaces, the routerMUST NOT<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, itSHOULD<bcp14>SHOULD</bcp14> set the ELC for every local host prefix it advertises in IS-IS.</t><figure> <artwork><figure anchor="prefix-flags"> <name> Prefix Attribute Flags </name> <artwork name="" type="" align="left" alt=""> 0 1 2 3 4 5 6 7... +-+-+-+-+-+-+-+-+... |X|R|N|E| ... +-+-+-+-+-+-+-+-+...Figure 1: Prefix Attribute Flags E-flag: ELC</artwork> </figure> <dl newline="true"> <dt>E-Flag: </dt> <dd>ELC Flag (Bit 3) - Set for local host prefix of the originating node if it supports ELC on all interfaces.</artwork> </figure></dd> </dl> <t>The ELC signalingMUST<bcp14>MUST</bcp14> be preserved when a router propagates a prefix betweenISISIS-IS levels <xreftarget="RFC5302"/>.target="RFC5302" format="default"/>. </t> <t>When redistributing a prefix between two IS-IS protocol instances or redistributing from another protocol to an IS-IS protocol instance, a routerSHOULD<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 SystemBoundaryBorder Router is outside of the scope of this document.</t> </section> <section anchor="ERLD_ADV"title="Advertisingnumbered="true" toc="default"> <name>Advertising ERLD UsingIS-IS">IS-IS</name> <t>A new MSD-Type <xreftarget="RFC8491"/>,target="RFC8491" format="default"/>, called ERLD-MSD, is defined to advertise the ERLD <xreftarget="RFC8662"/>target="RFC8662" format="default"/> of a given router.AAn 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 routerMUST<bcp14>MUST</bcp14> advertise the smallest value found across all its interfaces.</t> <t>The absence of ERLD-MSD advertisements indicates only that the advertising node does not support advertisement of this capability.</t> <t>The considerations for advertising the ERLD are specified in <xreftarget="RFC8662"/>.</t>target="RFC8662" format="default"/>.</t> <t>If the ERLD-MSDTypetype is received in the Link MSDSub-TLV,sub-TLV, itMUST<bcp14>MUST</bcp14> be ignored.</t> </section> <section anchor="BGPLS"title="Signalingnumbered="true" toc="default"> <name>Signaling ELC and ERLD inBGP-LS">BGP-LS</name> <t>The IS-IS extensions defined in this document can be advertised via BGP-LS(Distribution(distribution of Link-State and TEInformation Usinginformation using BGP) <xreftarget="RFC7752"/>target="RFC7752" format="default"/> using existing BGP-LS TLVs.</t> <t>The ELC is advertised using the Prefix Attribute Flags TLV as defined in <xreftarget="I-D.ietf-idr-bgp-ls-segment-routing-ext"/>.</t>target="RFC9085" format="default"/>.</t> <t>The ERLD-MSD is advertised using the Node MSD TLV as defined in <xreftarget="I-D.ietf-idr-bgp-ls-segment-routing-msd"/>.</t>target="RFC8814" format="default"/>.</t> </section> <section anchor="IANA"title="IANA Considerations"> <t>Early allocationnumbered="true" toc="default"> <name>IANA Considerations</name> <t>IANA hasbeen done by IANAcompleted the following actions for thisdocument as follows: <list style="hanging"> <t>- Bitdocument: </t> <ul> <li>Bit 3 in theBit"Bit Values for Prefix Attribute FlagsSub-TLVSub-TLV" registry has been assigned to the ELC Flag. IANAis asked to updatehas updated the registry to reflect the name used in this document: ELC Flag(E-flag).</t> <t>-(E-Flag).</li> <li> Type 2 in theIGP MSD-Types"IGP MSD-Types" registry has been assigned for the ERLD-MSD. IANAis asked to updatehas updated the registry to reflect the name used in this document:ERLD-MSD.</t> </list></t>ERLD-MSD.</li> </ul> </section> <section anchor="Security"title="Security Considerations">numbered="true" toc="default"> <name>Security Considerations</name> <t>This document specifies the ability to advertise additional node capabilities using IS-IS and BGP-LS. As such, the security considerations as described in <xreftarget="RFC7981"/>,target="RFC7752" format="default"/>, <xreftarget="RFC7752"/>,target="RFC7794" format="default"/>, <xreftarget="RFC7794"/>,target="RFC7981" format="default"/>, <xreftarget="RFC8491"/>,target="RFC8491" format="default"/>, <xreftarget="RFC8662"/>,target="RFC8662" format="default"/>, <xreftarget="I-D.ietf-idr-bgp-ls-segment-routing-ext"/>target="RFC8814" format="default"/>, and <xreftarget="I-D.ietf-idr-bgp-ls-segment-routing-msd"/>target="RFC9085" format="default"/> are applicable to this document.</t> <t>Incorrectly setting theE flagE-Flag during origination,propagationpropagation, or redistribution may lead to poor or no load-balancing of the MPLS traffic orblack-holing of theto MPLS traffic being discarded on the egress node.</t> <t>Incorrectly settingofthe ERLD value may lead to poor or no load-balancing of the MPLS traffic.</t> </section> </middle> <back> <references> <name>References</name> <references> <name>Normative References</name> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7981.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6790.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5302.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7752.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7794.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8491.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8662.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8814.xml"/> <reference anchor='RFC9085' target='https://www.rfc-editor.org/info/rfc9085'> <front> <title>Border Gateway Protocol - Link State (BGP-LS) Extensions for Segment Routing</title> <author initials='S' surname='Previdi' fullname='Stefano Previdi'> <organization /> </author> <author initials='K' surname='Talaulikar' fullname='Ketan Talaulikar' role='editor'> <organization /> </author> <author initials='C' surname='Filsfils' fullname='Clarence Filsfils'> <organization /> </author> <author initials='H' surname='Gredler' fullname='Hannes Gredler'> <organization /> </author> <author initials='M' surname='Chen' fullname='Mach(Guoyi) Chen'> <organization /> </author> <date month='August' year='2021' /> </front> <seriesInfo name="RFC" value="9085"/> <seriesInfo name="DOI" value="10.17487/RFC9085"/> </reference> </references> <references> <name>Informative References</name> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8660.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8667.xml"/> </references> </references> <section anchor="Acknowledgements" numbered="false" toc="default"> <name>Acknowledgements</name> <t>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"title="Contributors">numbered="false" toc="default"> <name>Contributors</name> <t>The following people contributed to the content of this document and should be considered asco-authors:</t> <t><figure> <artwork><![CDATA[coauthors:</t> <contact fullname=" Gunter Van de Velde(editor) Nokia Antwerp BE Email: gunter.van_de_velde@nokia.com Wim Henderickx Nokia Belgium Email: wim.henderickx@nokia.com Keyur Patel Arrcus USA Email: keyur@arrcus.com ]]></artwork> </figure></t> </section> <section anchor="Acknowledgements" title="Acknowledgements"> <t>The authors would like to thank Yimin Shen, George Swallow, Acee Lindem, Les Ginsberg, Ketan Talaulikar, Jeff Tantsura, Bruno Decraene Carlos Pignataro, Wim Hendrickx, and Gunter Van De Velde for their valuable comments.</t> <!---->(editor)"> <organization>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> Nokia</organization> <address> <postal> <country>Belgium</country> </postal> <email> wim.henderickx@nokia.com</email> </address> </contact> <contact fullname="Keyur Patel"> <organization> Arrcus</organization> <address> <postal> <country>United States of America</country> </postal> <email>keyur@arrcus.com</email> </address> </contact> </section></middle> <back> <references title="Normative References"> <?rfc include="reference.RFC.2119"?> <?rfc include="reference.RFC.7981"?> <?rfc include="reference.RFC.6790"?> <?rfc include="reference.RFC.5302"?> <?rfc include="reference.RFC.7752"?> <?rfc include="reference.RFC.7794"?> <?rfc include="reference.RFC.8174"?> <?rfc include="reference.RFC.8491"?> <?rfc include="reference.RFC.8662"?> <?rfc include="reference.I-D.ietf-idr-bgp-ls-segment-routing-ext"?> <?rfc include="reference.I-D.ietf-idr-bgp-ls-segment-routing-msd"?> </references> <references title="Informative References"> <?rfc include="reference.RFC.8660"?> <?rfc include="reference.RFC.8667"?> </references></back> </rfc>