rfc9885xml2.original.xml   rfc9885.xml 
<?xml version="1.0" encoding="US-ASCII"?> <?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE rfc>
<?rfc toc="yes"?> <!DOCTYPE rfc [
<?rfc tocompact="yes"?> <!ENTITY nbsp "&#160;">
<?rfc tocdepth="3"?> <!ENTITY zwsp "&#8203;">
<?rfc tocindent="yes"?> <!ENTITY nbhy "&#8209;">
<?rfc symrefs="yes"?> <!ENTITY wj "&#8288;">
<?rfc sortrefs="yes"?> ]>
<?rfc comments="yes"?>
<?rfc inline="yes"?> <rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" docName="draft-ie
<?rfc compact="yes"?> tf-lsr-multi-tlv-19" number="9885" updates="" obsoletes="" ipr="trust200902" sub
<?rfc subcompact="no"?> missionType="IETF" consensus="true" tocInclude="true" tocDepth="3" symRefs="true
<rfc category="std" docName="draft-ietf-lsr-multi-tlv-19" " sortRefs="true" version="3" xml:lang="en">
ipr="trust200902" submissionType="IETF" consensus="true">
<front> <front>
<title abbrev="Multi-Part TLVs"> <title abbrev="Multi-Part TLVs">Multi-Part TLVs in IS-IS</title>
Multi-Part TLVs in IS-IS <seriesInfo name="RFC" value="9885"/>
</title> <author fullname="Parag Kaneriya" initials="P." surname="Kaneriya">
<author fullname="Parag Kaneriya " initials="P." surname="Kaneriya">
<organization>Juniper Networks</organization> <organization>Juniper Networks</organization>
<address> <address>
<postal> <postal>
<street>Elnath-Exora Business Park Survey</street> <street>Elnath-Exora Business Park Survey</street>
<city>Bangalore</city> <city>Bangalore</city>
<region>Karnataka</region> <region>Karnataka</region>
<code>560103</code> <code>560103</code>
<country>India</country> <country>India</country>
</postal> </postal>
<email>pkaneria@juniper.net</email> <email>pkaneria@juniper.net</email>
</address> </address>
</author> </author>
<author fullname="Tony Li" initials="T." surname="Li"> <author fullname="Tony Li" initials="T." surname="Li">
<organization>Juniper Networks</organization> <organization>Juniper Networks</organization>
<address> <address>
<postal> <postal>
<street>1133 Innovation Way</street> <street>1133 Innovation Way</street>
<city>Sunnyvale</city> <city>Sunnyvale</city>
<region>California</region> <region>California</region>
<code>94089</code> <code>94089</code>
<country>USA</country> <country>United States of America</country>
</postal> </postal>
<phone></phone>
<email>tony.li@tony.li</email> <email>tony.li@tony.li</email>
</address> </address>
</author> </author>
<author fullname="Antoni Przygienda" initials="A." surname="Przygienda"> <author fullname="Antoni Przygienda" initials="A." surname="Przygienda">
<organization>Juniper Networks</organization> <organization>Juniper Networks</organization>
<address> <address>
<postal> <postal>
<street>1133 Innovation Way</street> <street>1133 Innovation Way</street>
<city>Sunnyvale</city> <city>Sunnyvale</city>
<region>California</region> <region>California</region>
<code>94089</code> <code>94089</code>
<country>USA</country> <country>United States of America</country>
</postal> </postal>
<email>prz@juniper.net</email> <email>prz@juniper.net</email>
</address> </address>
</author> </author>
<author fullname="Shraddha Hegde" initials="S." surname="Hegde"> <author fullname="Shraddha Hegde" initials="S." surname="Hegde">
<organization>Juniper Networks</organization> <organization>Juniper Networks</organization>
<address> <address>
<postal> <postal>
<street>Elnath-Exora Business Park Survey</street> <street>Elnath-Exora Business Park Survey</street>
<city>Bangalore</city> <city>Bangalore</city>
skipping to change at line 78 skipping to change at line 73
</postal> </postal>
<email>shraddha@juniper.net</email> <email>shraddha@juniper.net</email>
</address> </address>
</author> </author>
<author fullname="Les Ginsberg" initials="L" surname="Ginsberg"> <author fullname="Les Ginsberg" initials="L" surname="Ginsberg">
<organization>Cisco Systems</organization> <organization>Cisco Systems</organization>
<address> <address>
<email>ginsberg@cisco.com</email> <email>ginsberg@cisco.com</email>
</address> </address>
</author> </author>
<date year="2025"/> <date year="2025" month="October"/>
<area>Routing Area</area> <area>RTG</area>
<workgroup>LSR Working Group</workgroup> <workgroup>lsr</workgroup>
<keyword>ISIS</keyword>
<keyword>Draft</keyword> <!-- [rfced] Please insert any keywords (beyond those that appear in
the title) for use on https://www.rfc-editor.org/search. -->
<keyword>example</keyword>
<abstract> <abstract>
<t> <t>
New technologies are adding new information into IS-IS while New technologies are adding new information into IS-IS while
deployment scales are simultaneously increasing. This causes the deployment scales are simultaneously increasing. This causes the
contents of many critical TLVs to exceed the currently supported contents of many critical TLVs to exceed the currently supported
limit of 255 octets. This limit of 255 octets. This
document codifies the common mechanism of extending the TLV document codifies the common mechanism of extending the TLV
content space through multiple TLVs. content space through multiple TLVs.
</t> </t>
</abstract> </abstract>
</front> </front>
<middle> <middle>
<section anchor="Introduction" title="Introduction"> <section anchor="Introduction">
<name>Introduction</name>
<t> <t>
The continued growth of the Internet has resulted in a commensurate The continued growth of the Internet has resulted in a commensurate
growth in the scale of service provider networks and the amount of growth in the scale of service provider networks and the amount of
information carried in IS-IS <xref target="ISO10589"/> information carried in IS-IS <xref target="ISO10589"/>
Type-Length-Value (TLV) tuples. Simultaneously, new traffic Type-Length-Value (TLV) tuples. Simultaneously, new traffic
engineering technologies are defining new attributes, further adding engineering technologies are defining new attributes, further adding
to the scaling pressures. The original TLV definition limits each TLV to the scaling pressures. The original TLV definition limits each TLV
to a maximum of 255 octets of payload, which is becoming increasingly to a maximum of 255 octets of payload, which is becoming increasingly
problematic. problematic.
</t> </t>
skipping to change at line 133 skipping to change at line 133
The intent of this The intent of this
document is to clarify and codify the situation by explicitly document is to clarify and codify the situation by explicitly
making multiple occurrences of a TLV the standard mechanism for making multiple occurrences of a TLV the standard mechanism for
scaling TLV contents. Any future document that proposes a different scaling TLV contents. Any future document that proposes a different
mechanism for scaling TLV contents for a given codepoint must explain mechanism for scaling TLV contents for a given codepoint must explain
why multiple occurrences of a TLV is not appropriate. why multiple occurrences of a TLV is not appropriate.
</t> </t>
<t> <t>
This document does not alter the encoding of any TLV where multiple This document does not alter the encoding of any TLV where multiple
occurrences of a TLV are already defined. Some examples of this are: occurrences of a TLV are already defined. Some examples of this are:
<list> </t>
<t> <!-- [rfced] Capitalization for some of the TLV descriptions do not match the IA
NA registry. Should these match? It wasn't clear to us if you intentionally ch
ose initial capitalization for all descriptions, regardless of what appears in t
he RFCs/registries.
Examples:
IANA vs document
IS-IS Router CAPABILITY TLV vs Router Capability TLV
(though "IS-IS Router CAPABILITY TLV" appears once in Section 7)
Extended IS reachability vs Extended IS Reachability
(outside of the IANA table)
-->
<ul spacing="normal">
<li>
Router Capability TLV (Type 242) <xref target="RFC7981"/> Router Capability TLV (Type 242) <xref target="RFC7981"/>
</t> </li>
<t> <li>
Application-Specific SRLG (Type 238) <xref Application-Specific SRLG (Type 238) <xref target="RFC9479"/>
target="RFC9479"/> </li>
</t> <li>
<t>
Instance Identifier (type 7) <xref target="RFC8202"/> Instance Identifier (type 7) <xref target="RFC8202"/>
</t> </li>
<t> <li>
Application-Specific Link Attributes (sub-TLV Type 16) Application-Specific Link Attributes (sub-TLV Type 16)
<xref target="RFC9479"/> <xref target="RFC9479"/>
</t> </li>
</list> </ul>
</t>
<t> <t>
<!-- [rfced] Presumably, the mechanism defined in this document would not be nee
ded if the mechanims defined by RFC 7356 were backwards compatible (i.e., the ex
istence of RFC 7356 does not resolve the problem). For clarity, we suggest the
update below. Please review and clarify as needed.
Original:
[RFC7356] has defined a 16-bit length field for TLVs in flooding
scoped Protocol Data Units (PDUs), in which case the problem
addressed by this document would not exist. However, introduction of
these new PDU types is not backwards compatible. Therefore, there is
a need to address how to expand the information advertised in
existing PDUs that use 8-bit length TLVs.
Perhaps:
[RFC7356] has defined a 16-bit length field for TLVs in flooding
scoped Protocol Data Units (PDUs), but it is not backwards
compatible. Therefore, there remains a need to address how to
expand the information advertised in PDUs that use 8-bit TLVs.
-->
<xref target="RFC7356"/> has defined a 16-bit length field for <xref target="RFC7356"/> has defined a 16-bit length field for
TLVs in flooding scoped Protocol Data Units (PDUs), in which TLVs in flooding scoped Protocol Data Units (PDUs), in which
case the problem addressed by this document would not exist. case the problem addressed by this document would not exist.
However, introduction of these new PDU types is not backwards However, introduction of these new PDU types is not backwards
compatible. Therefore, there is a need to address how to expand compatible. Therefore, there is a need to address how to expand
the information advertised in existing PDUs that use 8-bit the information advertised in existing PDUs that use 8-bit
length TLVs. length TLVs.
</t> </t>
<t> <t>
The mechanism described in this document has not been documented The mechanism described in this document has not been documented
for all TLVs previously. This document provides for all TLVs previously. This document provides
the necessary protocol definition and discusses potential the necessary protocol definition and discusses potential
interoperability issues and deployment challenges. interoperability issues and deployment challenges.
</t> </t>
<!-- [rfced] The text indicates that this mechanism is to be used in cases where
no extension was previously specified and is to be used with future TLVs. Assu
ming "future TLVs" refers to only the TLVs with 8-bit TLVs, we suggest the follo
wing update. Please review.
Original:
This document specifies a means for extending TLVs where no extension
mechanism has been previously explicitly specified, and defines this
mechanism as the default extension mechanism for future TLVs.
Perhaps:
This document specifies a means for extending TLVs where no extension
mechanism has been previously explicitly specified, and defines this
mechanism as the default extension mechanism for future TLVs with an
8-bit length field.
-->
<t> <t>
This document specifies a means This document specifies a means
for extending TLVs where no extension mechanism has been for extending TLVs where no extension mechanism has been
previously explicitly specified, and defines this mechanism previously explicitly specified, and defines this mechanism
as the default extension as the default extension
mechanism for future TLVs. The mechanism described in this mechanism for future TLVs. The mechanism described in this
document is applicable to top level TLVs as well as any level document is applicable to top level TLVs as well as any level
of sub-TLVs that may appear within a top level TLV. of sub-TLVs that may appear within a top level TLV.
</t> </t>
</section> </section>
<section anchor="ReqLang" title="Requirements Language"> <section anchor="ReqLang">
<t> <name>Requirements Language</name>
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL <t>
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>",
"MAY", and "OPTIONAL" in this document are to be interpreted as "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>
described in <xref target="RFC2119">BCP 14</xref> ",
<xref target="RFC8174"/> "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>",
when, and only when, they appear in all capitals, as shown here. "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
</t> "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to
be
interpreted as described in BCP&nbsp;14 <xref target="RFC2119"/> <xref
target="RFC8174"/> when, and only when, they appear in all capitals, as
shown here.
</t>
</section> </section>
<section title="Overview of MP-TLV Applicability to TLVs "> <section>
<name>Overview of MP-TLV Applicability to TLVs</name>
<t> <t>
A TLV is a tuple of (Type, Length, Value) and can be A TLV is a tuple of (Type, Length, Value) and can be
advertised in IS-IS packets. Both Type and Length fields are advertised in IS-IS packets. Both Type and Length fields are
one octet in size, which leads to the limitation that a one octet in size, which leads to the limitation that a
maximum of 255 octets can be sent in a single TLV. TLVs that maximum of 255 octets can be sent in a single TLV. TLVs that
have certain general characteristics have the potential to have certain general characteristics have the potential to
require advertisement of more than 255 octets. These generic types require advertisement of more than 255 octets. These generic types
are described in more detail in the following sub-sections. are described in more detail in the following subsections.
</t> </t>
<section title="TLVs That Advertise a List of Objects"> <section>
<t> <name>TLVs that Advertise a List of Objects</name>
<t>
Some TLVs are simply a list of objects of a given type. Some TLVs are simply a list of objects of a given type.
For example, the BFD-Enabled TLV (type 148) <xref target="RFC6213"/> For example, the BFD-Enabled TLV (Type 148) <xref target="RFC6213"/>
contains a list of contains a list of
Multi-Topology Identifier (MTID)/ Network Layer Protocol Identifier Multi-Topology Identifier (MTID)/ Network Layer Protocol Identifier
(NLPID) pairs. If more than (NLPID) pairs. If more than
255 octets are required to advertise all of the MTID/NLPID pairs, 255 octets are required to advertise all of the MTID/NLPID pairs,
multiple BFD-Enabled TLVs would be required. The relationship multiple BFD-Enabled TLVs would be required. The relationship
between multiple BFD-Enabled TLVs is established using the TLV type. between multiple BFD-Enabled TLVs is established using the TLV type.
</t> </t>
</section> </section>
<section title="TLVs That Advertise Objects with Identifier(s)"> <section>
<t> <name>TLVs that Advertise Objects with Identifier(s)</name>
<!-- [rfced] For clarity, may we update the text as follows?
Original:
Some TLVs support advertisement of objects of a given type, where
each object is identified by a unique set of identifiers. In this
case the "key" that uniquely identifies a given object consists of
the set of identifiers.
Perhaps:
Some TLVs support advertisement of objects of a given type, where
each object is identified by a unique set of identifiers, which is
referred to as a "key".
-->
<t>
Some TLVs support advertisement of objects of a given type, Some TLVs support advertisement of objects of a given type,
where each object is identified by a unique set of identifiers. where each object is identified by a unique set of identifiers.
In this case the "key" that uniquely identifies a given object In this case, the "key" that uniquely identifies a given object
consists of the set of identifiers. consists of the set of identifiers.
</t> </t>
<section title="Example: Extended IS Reachability"> <section>
<t> <name>Example: Extended IS Reachability</name>
As an example, consider the Extended IS Reachability TLV (type <!-- [rfced] We added articles in Sections 3.2.1 and 3.2.2. Please review and l
et us know if any corrections are needed.
-->
<t>
As an example, consider the Extended IS Reachability TLV (Type
22) <xref target="RFC5305"/>. A neighbor in this TLV is specified 22) <xref target="RFC5305"/>. A neighbor in this TLV is specified
by: by:
<list style="symbols"> </t>
<t> <ul spacing="normal">
7 octets of system ID and pseudonode number <li>
</t> <t>
<t> 7 octets of a system ID and pseudonode number
3 octets of default metric </t>
</t> </li>
<t> <li>
Optionally one or more of the following link identifiers encoded <t>
3 octets of a default metric
</t>
</li>
<li>
<t>
Optionally, one or more of the following link identifiers encoded
as sub-TLVs: as sub-TLVs:
<list style="symbols"> </t>
<t> <ul spacing="normal">
IPv4 interface address and IPv4 neighbor address <li>
<t>
an IPv4 interface address and IPv4 neighbor address
as specified in <xref target="RFC5305"/> as specified in <xref target="RFC5305"/>
</t> </t>
<t> </li>
IPv6 interface address and IPv6 neighbor address <li>
<t>
an IPv6 interface address and IPv6 neighbor address
as specified in <xref target="RFC6119"/> as specified in <xref target="RFC6119"/>
</t> </t>
<t> </li>
<li>
<t>
Link Local/Remote Identifiers Link Local/Remote Identifiers
as specified in <xref target="RFC5307"/> as specified in <xref target="RFC5307"/>
</t> </t>
</list> </li>
</t> </ul>
</list> </li>
</t> </ul>
<t> <t>
The key consists of the 7 octets of system ID and The key consists of the 7 octets of system ID and
pseudonode number plus the set of link identifiers that are present. pseudonode number plus the set of link identifiers that are present.
</t> </t>
</section> </section>
<section title="Example: Extended IP Reachability"> <section>
<t> <name>Example: Extended IP Reachability</name>
<t>
As another example, consider the Extended IP Reachability TLV As another example, consider the Extended IP Reachability TLV
(type 135) <xref target="RFC5305"/>. A prefix in this TLV is (Type 135) <xref target="RFC5305"/>. A prefix in this TLV is
specified by: specified by:
<list style="symbols"> </t>
<ul spacing="normal">
<li>
<t> <t>
4 octets of metric information 4 octets of metric information
</t> </t>
<t> </li>
<li>
<t>
1 octet of control information that includes 6 bits specifying 1 octet of control information that includes 6 bits specifying
the prefix length the prefix length
</t> </t>
<t> </li>
0-4 octets of IPv4 prefix <li>
</t> <t>
</list> 0-4 octets of an IPv4 prefix
<t> </t>
followed by up to 250 octets of sub-TLV information. </li>
</t> </ul>
<t> <t>
The above are followed by up to 250 octets of sub-TLV information.
</t>
<t>
The key consists of the 6 bits of prefix length The key consists of the 6 bits of prefix length
plus 0-4 octets of IPv4 prefix. plus 0-4 octets of an IPv4 prefix.
</t> </t>
</t> </section>
</section>
</section> </section>
</section> </section>
<section title="Multi-Part TLVs"> <section>
<name>Multi-Part TLVs</name>
<t> <t>
If a router advertises If a router advertises
multiple TLV tuples with the same TLV type and the same key multiple TLV tuples with the same TLV type and the same key
(when applicable) in an IS-IS Hello (IIH) packet or in the set of LSPs (when applicable) in an IS-IS Hello (IIH) packet or in the set of LSPs
for a given level, they are considered for a given level, they are considered
a Multi-Part TLV (MP-TLV). a Multi-Part TLV (MP-TLV).
</t> </t>
<!-- [rfced] We are having trouble parsing "transient" as a noun. Perhaps this
should read "a transient issue" or "a transient error"?
Original:
Note that this can occur either legitimately as a
transient when a TLV moves from one LSP to another or as a result of
a defect in the sending implementation.
-->
<t> <t>
In the absence of MP-TLV support, when a router receives In the absence of MP-TLV support, when a router receives
an MP-TLV, the receiver chooses which TLV will be processed and an MP-TLV, the receiver chooses which TLV will be processed and
which TLV will be ignored. Note that this can occur either which TLV will be ignored. Note that this can occur either
legitimately as a transient when a TLV moves from one LSP to another legitimately as a transient when a TLV moves from one LSP to another
or as a result of a defect in the sending implementation. or as a result of a defect in the sending implementation.
</t> </t>
<t> <t>
In the presence of MP-TLV support, when a router receives In the presence of MP-TLV support, when a router receives
an MP-TLV, information from all the TLVs is processed. an MP-TLV, information from all the TLVs is processed.
</t> </t>
<t> <t>
The encoding of TLVs is not altered by the introduction of MP-TLV The encoding of TLVs is not altered by the introduction of MP-TLV
support. In particular, the "key" that is used to identify the set support. In particular, the "key" that is used to identify the set
of TLVs that form an MP-TLV is the same key used in the absence of TLVs that form an MP-TLV is the same key used in the absence
of MP-TLV support. Also note the definition of the "key" is part of MP-TLV support. Also note the definition of the "key" is part
of the specification(s) that define(s) the TLV and is therefore of the specification(s) that define(s) the TLV and is therefore
outside the scope of this document. outside the scope of this document.
</t> </t>
<!-- [rfced] Please review whether any of the notes in this document
should be in the <aside> element. It is defined as "a container for
content that is semantically less important or tangential to the
content that surrounds it" (https://authors.ietf.org/en/rfcxml-vocabulary#aside)
.
-->
<t> <t>
NOTE: This document intentionally does not include a definition of NOTE: This document intentionally does not include a definition of
the key for each codepoint. To do so would be redundant and risk the key for each codepoint. To do so would be redundant and risk
unintentionally deviating from the definition that already exists unintentionally deviating from the definition that already exists
in the relevant specifications. Also, the term "key" is a generic in the relevant specifications. Also, the term "key" is a generic
term that is not used in the relevant specifications. term that is not used in the relevant specifications.
</t> </t>
<t> <t>
Each TLV that is part of an MP-TLV MUST be parsable independent of Each TLV that is part of an MP-TLV <bcp14>MUST</bcp14> be parsable indepe ndent of
other TLVs in the MP-TLV. Breaking of a single sub-TLV or other data other TLVs in the MP-TLV. Breaking of a single sub-TLV or other data
unit across TLVs MUST NOT be done. Breaking of a data unit across TLVs unit across TLVs <bcp14>MUST NOT</bcp14> be done. Breaking of a data unit across TLVs
results in an invalid encoding. Guidelines to receivers for handling results in an invalid encoding. Guidelines to receivers for handling
such a case are specified in <xref target="RFC8918"/> such a case are specified in <xref target="RFC8918"/>.
</t> </t>
</section> </section>
<section anchor="RxMPTLV">
<section anchor="RxMPTLV" title="Procedure for Receiving Multi-Part TLVs"> <name>Procedure for Receiving Multi-Part TLVs</name>
<t> <t>
A router that receives a MP-TLV MUST accept all of the A router that receives an MP-TLV <bcp14>MUST</bcp14> accept all of the
information in all of the parts. The order of arrival and information in all of the parts. The order of arrival and
placement of the TLV parts in LSP fragments is irrelevant. placement of the TLV parts in LSP fragments is irrelevant.
Multiple TLV parts MAY occur in a single LSP or parts MAY occur Multiple TLV parts <bcp14>MAY</bcp14> occur in a single LSP or parts <bcp 14>MAY</bcp14> occur
in different LSPs. in different LSPs.
</t> </t>
<t> <t>
The placement of the TLV parts in an IIH is irrelevant. The placement of the TLV parts in an IIH is irrelevant.
</t> </t>
<t> <t>
When processing MP-TLVs, implementations MUST NOT impose a minimum When processing MP-TLVs, implementations <bcp14>MUST NOT</bcp14> impose a
length check. Although MP-TLVs SHOULD NOT be sent unless the minimum
capacity of a single TLV (255 octets) is exceeded, receivers MUST length check. Although MP-TLVs <bcp14>SHOULD NOT</bcp14> be sent unless t
NOT reject MP-TLVs if senders do not strictly adhere to this he
capacity of a single TLV (255 octets) is exceeded, receivers <bcp14>MUST
NOT</bcp14> reject MP-TLVs if senders do not strictly adhere to this
constraint. For example, if two MP-TLVs are received, each of which has constraint. For example, if two MP-TLVs are received, each of which has
a length of 100 bytes, the fact that the total amount of data does not a length of 100 bytes, the fact that the total amount of data does not
exceed 255 bytes MUST NOT cause the TLVs to be rejected. exceed 255 bytes <bcp14>MUST NOT</bcp14> cause the TLVs to be rejected.
See <xref target="MPTLVRestrict"/> for guidance when See <xref target="MPTLVRestrict"/> for guidance on
sending MP-TLVs. sending MP-TLVs.
</t> </t>
<t> <t>
The contents of a MP-TLV MUST be processed as if The contents of an MP-TLV <bcp14>MUST</bcp14> be processed as if
they were concatenated. If the internals of the TLV contain they were concatenated. If the internals of the TLV contain
key information, then replication of the key information key information, then replication of the key information
MUST be taken to indicate that subsequent data MUST be <bcp14>MUST</bcp14> be taken to indicate that subsequent data <bcp14>MUS T</bcp14> be
processed as if the subsequent data were concatenated after a processed as if the subsequent data were concatenated after a
single copy of the key information. single copy of the key information.
</t> </t>
<!-- [rfced] We wonder if the following update would help with readability.
Original:
The
receiving router must then process this as having key information K
and unique sub-TLVs A, B, C, D, E, F, or, because ordering is
irrelevant, unique sub-TLVs D, E, F, A, B, C, or any other
permutation.
Perhaps - splitting this into two sentences:
The
receiving router must then process this as having key information K
and unique sub-TLVs A, B, C, D, E, F. Because ordering is
irrelevant, the sub-TLVs may appear in any order (e.g., D, E, F, A, B, C).
-->
<t> <t>
For example, suppose that a router receives an LSP with a For example, suppose that a router receives an LSP with a
Multi-Part Extended IS Reachability TLV. The first part Multi-Part Extended IS Reachability TLV. The first part
contains key information K with unique sub-TLVs A, B, and C. The contains key information K with unique sub-TLVs A, B, and C. The
second part contains key information K with unique sub-TLVs D, E, and second part contains key information K with unique sub-TLVs D, E, and
F. The receiving router must then process this as having key F. The receiving router must then process this as having key
information K and unique sub-TLVs A, B, C, D, E, F, or, because information K and unique sub-TLVs A, B, C, D, E, F, or, because
ordering is irrelevant, unique sub-TLVs D, E, F, A, B, C, or any ordering is irrelevant, unique sub-TLVs D, E, F, A, B, C, or any
other permutation. other permutation.
</t> </t>
<t> <t>
A TLV may contain information in its fixed part that is not A TLV may contain information in its fixed part that is not
part of the key. For example, the metric in both the Extended part of the key. For example, the metric in both the Extended
IS Reachability TLV and the Extended IP Reachability TLV does IS Reachability TLV and the Extended IP Reachability TLV does
not specify which object the TLV refers to, and thus is not not specify which object the TLV refers to, and thus is not
part of the key. Having inconsistent information in different part of the key. Having inconsistent information in different
parts of a MP-TLV is an error. parts of an MP-TLV is an error.
</t> </t>
<t> <t>
It is also possible that information that is not part of the fixed It is also possible that information that is not part of the fixed
part of a TLV can be duplicated e.g., a sub-TLV that is intended to part of a TLV can be duplicated, e.g., a sub-TLV that is intended to
only appear once appears multiple times and has inconsistent values. only appear once appears multiple times and has inconsistent values.
This could occur within the same TLV or in different parts of This could occur within the same TLV or in different parts of
an MP-TLV. This is also an error. an MP-TLV. This is also an error.
</t> </t>
<t> <t>
Specifying how to handle such cases is the responsibility of the The document defining the TLV should specify how to handle such cases.
document that defines the TLV. If such a document is not explicit If such a document is not explicit
in how to handle such cases, the following procedure is defined: in how to handle such cases, the following procedure is defined:
</t> </t>
<list style="symbols"> <ul spacing="normal">
<t> <li>
<t>
The first occurrence in the lowest numbered LSP is used. The first occurrence in the lowest numbered LSP is used.
Subsequent occurrences in the same LSP or higher numbered Subsequent occurrences in the same LSP or higher numbered
LSPs are ignored. LSPs are ignored.
</t> </t>
<t> </li>
<li>
<t>
In the case of IIHs, the first occurrence in the IIH is used. In the case of IIHs, the first occurrence in the IIH is used.
Subsequent occurrences in the IIH are ignored. Subsequent occurrences in the IIH are ignored.
</t> </t>
</list> </li>
</section> </ul>
</section>
<section anchor="Applicability" title="Specification of Applicability of Mul <section anchor="Applicability">
ti-Part TLV "> <name>Specification of Applicability of Multi-Part TLVs</name>
<t> <t>
As mentioned in <xref target="Introduction"/>, existing specifications As mentioned in <xref target="Introduction"/>, existing specifications
for some TLVs have explicitly stated that the use of MP-TLV for some TLVs have explicitly stated that the use of MP-TLV
procedures are applicable to that codepoint. However, MP-TLV procedures are applicable to that codepoint. However, MP-TLV
procedures are potentially applicable to any codepoint that allows procedures are potentially applicable to any codepoint that allows
sub-TLVs to be included as part of the information advertised. sub-TLVs to be included as part of the information advertised.
MP-TLV procedures may also be applicable to codepoints that MP-TLV procedures may also be applicable to codepoints that
do not support sub-TLVs, but which define an unbounded number of do not support sub-TLVs, but which define an unbounded number of
attributes that may be advertised within a single codepoint. An attributes that may be advertised within a single codepoint. An
example of the latter is GMPLS-SRLG as defined in example of the latter is GMPLS-SRLG as defined in
<xref target="RFC5307"/>. <xref target="RFC5307"/>.
</t> </t>
<t> <t>
The lack The lack
of explicit indication of applicability of MP-TLV procedures of explicit indication of applicability of MP-TLV procedures
to all codepoints to which such procedures could be applied for all codepoints to which such procedures could be applied
contributes to potential interoperability problems if/when the need contributes to potential interoperability problems if/when there is need
arises to advertise more than 255 octets of information for such a to advertise more than 255 octets of information for such a
codepoint. codepoint.
</t> </t>
<t> <t>
This document makes explicit the applicability of MP-TLV This document makes explicit the applicability of MP-TLV
procedures for all existing codepoints defined for the IS-IS protocol procedures for all existing codepoints defined for the IS-IS protocol
by extending existing and relevant IANA protocol registries to include by extending existing and relevant IANA protocol registries to include
an explicit indication of applicability of MP-TLV procedures an explicit indication of applicability of MP-TLV procedures
for each codepoint. See <xref target="IANA"/>. Therefore for each codepoint. See <xref target="IANA"/>. Therefore,
any new codepoints defined by future protocol extensions will any new codepoints defined by future protocol extensions will
explicitly indicate the applicability of MP-TLV explicitly indicate the applicability of MP-TLV
procedures to the new codepoints. procedures to the new codepoints.
</t> </t>
</section> </section>
<section anchor="MPTLVCap">
<section anchor="MPTLVCap" title="MP-TLV Capability Advertisement"> <name>MP-TLV Capability Advertisement</name>
<t> <t>
Introduction of the use of MP-TLV for codepoints where the existing Introduction of the use of MP-TLV for codepoints where the existing
specifications have not explicitly defined MP-TLV support can be specifications have not explicitly defined MP-TLV support can be
extremely disruptive to network operations in cases where not all extremely disruptive to network operations in cases where not all
routers in the network support MP-TLV for those codepoints. routers in the network support MP-TLV for those codepoints.
Partial deployment can easily result in traffic loss and/or Partial deployment can easily result in traffic loss and/or
other unexpected behaviors that may be hard to diagnose. other unexpected behaviors that may be hard to diagnose.
</t> </t>
<t> <t>
For example, if there are mutiple TLVs associated with the For example, if there are multiple TLVs associated with the
advertisement of a neighbor and an implementation does not process advertisement of a neighbor and an implementation does not process
all of the link attributes advertised, then constrained path all of the link attributes advertised, then constrained path
calculations based on those attributes are likely to produce calculations based on those attributes are likely to produce
incorrect or unexpected results. This could produce forwarding loops incorrect or unexpected results. This could produce forwarding loops
or dropped traffic. or dropped traffic.
</t> </t>
<t> <t>
As an aid to network operators when diagnosing such situations, As an aid to network operators when diagnosing such situations,
a new sub-TLV of the IS-IS a new sub-TLV of the IS-IS
Router CAPABILITY TLV <xref target="RFC7981"/> is defined: Router CAPABILITY TLV <xref target="RFC7981"/> is defined:
</t> </t>
<artwork>
MP-TLV Support for TLVs with implicit support
Type 30 (suggested - to be assigned by IANA) 1 octet <!-- [rfced] We have updated the format of artwork in Section 7. Please let us
Length 0 1 octet know if you have any concerns.
</artwork>
<t> Original:
MP-TLV Support for TLVs with implicit support
Type 30 (suggested - to be assigned by IANA) 1 octet
Length 0 1 octet
Current:
MP-TLV Support for TLVs with implicit support
Type: 30 (1 octet)
Length: 0 (1 octet)
-->
<t>MP-TLV Support for TLVs with implicit support</t>
<dl spacing="compact">
<dt>Type:</dt><dd>30 (1 octet)</dd>
<dt>Length:</dt><dd>0 (1 octet)</dd>
</dl>
<t>
Routers that support MP-TLV for codepoints for which existing Routers that support MP-TLV for codepoints for which existing
specifications do not explicitly define such support, but for specifications do not explicitly define such support, but for
which MP-TLV is applicable, SHOULD include this sub-TLV in a which MP-TLV is applicable, <bcp14>SHOULD</bcp14> include this sub-TLV in a
Router Capability TLV. Router Capability TLV.
</t> </t>
<t> <!-- [rfced] Please consider whether "per level" will be clear for the reader.
Original:
Scope of the associated Router Capability TLV is per level (S-bit
clear).
-->
<t>
Scope of the associated Router Capability TLV is per level Scope of the associated Router Capability TLV is per level
(S-bit clear). (S-bit clear).
</t> </t>
<t> <t>
This advertisement is for informational purposes only. IS-IS This advertisement is for informational purposes only. IS-IS
protocol implementations protocol implementations
MUST NOT alter what is sent or how what is received is processed <bcp14>MUST NOT</bcp14> alter what is sent or how what is received is p rocessed
based on these advertisements. based on these advertisements.
</t> </t>
<t> <t>
The sub-TLV intentionally does not provide a syntax to The sub-TLV intentionally does not provide a syntax to
specify MP-TLV support on a per-codepoint basis. It is presumed specify MP-TLV support on a per-codepoint basis. It is presumed
that if that if
such support is provided that it applies to all relevant codepoints. such support is provided that it applies to all relevant codepoints.
It is understood that in reality, a given implementation might limit It is understood that in reality, a given implementation might limit
MP-TLV support to particular codepoints based on the needs of the MP-TLV support to particular codepoints based on the needs of the
deployment scenarios in which it is used. Therefore, deployment scenarios in which it is used. Therefore,
diligence is still diligence is still
required on the part of the operator to ensure that configurations required on the part of the operator to ensure that configurations
which require the sending of MP-TLV for a given codepoint are which require the sending of an MP-TLV for a given codepoint are
not introduced on any router in the network until all routers not introduced on any router in the network until all routers
in the network support MP-TLV for the relevant codepoints. in the network support MP-TLV for the relevant codepoints.
</t> </t>
<t> <t>
The Router Capability TLV is meant to advertise capabilities that The Router Capability TLV is meant to advertise capabilities that
are of direct use to the IS-IS protocol. The MP-TLV Support sub-TLV are of direct use to the IS-IS protocol. The MP-TLV Support sub-TLV
advertises management information, not of direct use to the protocol. advertises management information, which is not of direct use to the pr otocol.
The intent is to provide information that may be of use to a The intent is to provide information that may be of use to a
network operator. This exception to the intended use of the Router network operator. This exception to the intended use of the Router
Capability TLV is introduced to help mitigate the potential Capability TLV is introduced to help mitigate the potential
disruptiveness associated with the introduction of MP-TLV support disruptiveness associated with the introduction of MP-TLV support
in cases where such support has not been explicitly defined. in cases where such support has not been explicitly defined.
This is not intended to introduce a generic new use case for the This is not intended to introduce a generic new use case for the
Router Capability TLV. Router Capability TLV.
</t> </t>
<t> <t>
NOTE: A more appropriate and robust mechanism to provide detailed NOTE: A more appropriate and robust mechanism to provide detailed
information on what a given implementation supports is to utilize information on what a given implementation supports is to utilize
YANG to define Protocol Implementation Conformance Statement (PICS). YANG to define Protocol Implementation Conformance Statement (PICS).
An example of this can be found in An example of this can be found in
<xref target="I-D.ietf-lsr-isis-pics-yang"/>. <xref target="I-D.ietf-lsr-isis-pics-yang"/>.
</t> </t>
</section> </section>
<section>
<section title="Deployment Considerations"> <name>Deployment Considerations</name>
<t> <t>
Sending of MP-TLVs in the presence of routers that do not Sending of MP-TLVs in the presence of routers that do not
correctly process such advertisements can result in correctly process such advertisements can result in
interoperability issues, including incorrect forwarding of interoperability issues, including incorrect forwarding of
packets. This section discusses best practices to packets. This section discusses best practices to
be used when a deployment requires the use of MP-TLVs for codepoints be used when a deployment requires the use of MP-TLVs for codepoints
for which existing specifications for which existing specifications
do not explicitly indicate MP-TLV support. do not explicitly indicate MP-TLV support.
</t> </t>
<t> <t>
While it is not in scope for this document to mandate how While it is not in scope for this document to mandate how
implementations provide the means to prevent (or at least make less implementations provide the means to prevent (or at least make less
likely) partial deployment of MP-TLV for a given codepoint, it is likely) partial deployment of MP-TLV for a given codepoint, it is
important to emphasize the need to assist operators in avoiding important to emphasize the need to assist operators in avoiding
inadvertent problematic deployment scenarios. Providing appropriate inadvertent problematic deployment scenarios. Providing appropriate
controls to enable/disable the sending of MP-TLVs as discussed controls to enable/disable the sending of MP-TLVs as discussed
in <xref target="Controls"/> is important to avoid interoperability in <xref target="Controls"/> is important to avoid interoperability
issues. issues.
</t> </t>
<section anchor="Controls" title="Controls and Alarms"> <section anchor="Controls">
<t> <name>Controls and Alarms</name>
It is RECOMMENDED that implementations that support <t>
the sending of MP-TLVs to provide configuration controls that It is <bcp14>RECOMMENDED</bcp14> that implementations that support
the sending of MP-TLVs provide configuration controls that
enable/disable generation of MP-TLVs. Given that MP-TLV support enable/disable generation of MP-TLVs. Given that MP-TLV support
in a given implementation may vary on a per in a given implementation may vary on a per-TLV basis, these controls <bc
TLV basis, these controls SHOULD support per codepoint granularity. p14>SHOULD</bcp14> provide support at a per-codepoint granularity.
For example, an implementation might For example, an implementation might
support MP-TLVs for IS Extended Reachability but not for support MP-TLVs for IS Extended Reachability but not for
IP Reachability. IP Reachability.
</t> </t>
<t> <t>
Implementations that support disablement of MP-TLVs MUST log Implementations that support disablement of MP-TLVs <bcp14>MUST</bcp14> l
og
the following occurrences: the following occurrences:
</t> </t>
<list style="symbols"> <ul spacing="normal">
<t> <li>
<t>
An MP-TLV is received when use of MP-TLVs is disabled. An MP-TLV is received when use of MP-TLVs is disabled.
</t> </t>
<t> </li>
<li>
<t>
Local LSP generation requires the use of MP-TLVs when generation Local LSP generation requires the use of MP-TLVs when generation
of MP-TLVs is disabled. of MP-TLVs is disabled.
</t> </t>
</list> </li>
<t> </ul>
Network operators SHOULD NOT enable MP-TLVs until <t>
Network operators <bcp14>SHOULD NOT</bcp14> enable MP-TLVs until
ensuring that all implementations that will receive the ensuring that all implementations that will receive the
MP-TLVs are capable of interpreting them correctly MP-TLVs are capable of interpreting them correctly
as described in <xref target="RxMPTLV"/>. as described in <xref target="RxMPTLV"/>.
</t> </t>
</section> </section>
<section anchor="MPTLVRestrict" title="Restrictions on Generation of MP-TL <section anchor="MPTLVRestrict">
Vs"> <name>Restrictions on Generation of MP-TLVs</name>
<t> <t>
This section discusses restrictions on sending of MP-TLVs. When This section discusses restrictions on sending of MP-TLVs. When
applying these restrictions, it is assumed that it has already applying these restrictions, it is assumed that it has already
been determined that sending of MP-TLVs is allowed based on the been determined that sending of MP-TLVs is allowed based on the
setting of the controls discussed in <xref target="Controls"/>. setting of the controls discussed in <xref target="Controls"/>.
</t> </t>
<t> <t>
Sending a single TLV with all the information about an object is Sending a single TLV with all the information about an object is
preferable to sending multiple TLVs. It is simpler and more efficient preferable to sending multiple TLVs. It is simpler and more efficient
to parse information from a single TLV than to combine the to parse information from a single TLV than to combine the
information from multiple TLVs. Implementations SHOULD NOT send information from multiple TLVs. Implementations <bcp14>SHOULD NOT</bcp1 4> send
multiple TLVs unless MP-TLV is applicable to the TLV and the amount multiple TLVs unless MP-TLV is applicable to the TLV and the amount
of information that is required to be sent exceeds the capacity of of information that is required to be sent exceeds the capacity of
a single TLV. For example, when additional space is required in an a single TLV. For example, when additional space is required in an
existing TLV, as long as there is space in the TLV, information existing TLV, as long as there is space in the TLV, information
SHOULD NOT be split into multiple TLVs. If there is no space in the <bcp14>SHOULD NOT</bcp14> be split into multiple TLVs. If there is no s
current LSP to fit the now larger TLV, the TLV SHOULD be moved to pace in the
current LSP to fit the now larger TLV, the TLV <bcp14>SHOULD</bcp14> be
moved to
a new LSP. a new LSP.
</t> </t>
</section> </section>
</section> </section>
<section anchor="IANA">
<section anchor="IANA" title="IANA Considerations"> <name>IANA Considerations</name>
<section title="MP-TLV Support sub-TLV"> <section>
<t> <name>MP-TLV Support Sub-TLV</name>
This document requests the following code point from the <t>
IANA has registered the following code point from the
"IS-IS Sub-TLVs for IS-IS Router CAPABILITY TLV" registry: "IS-IS Sub-TLVs for IS-IS Router CAPABILITY TLV" registry:
</t> </t>
<artwork> <!-- [rfced] Please consider whether "implicit support" should be capitalized -
Type: 30 (suggested) that is, how should it appear in other documents that refer to this TLV? Note t
Description: MP-TLV Support for TLVs with implicit support hat we will ask IANA to update their registry as needed.
MP-TLV Applicability: N
Reference: This document Section 7.2 MP-TLV Support for TLVs with implicit support
</artwork> -->
<dl spacing="compact">
<dt>Type:</dt><dd>30</dd>
<dt>Description:</dt><dd>MP-TLV Support for TLVs with implicit support<
/dd>
<dt>MP-TLV Applicability:</dt><dd>N</dd>
<dt>Reference:</dt><dd><xref target="MPTLVCap"/> of RFC 9885</dd>
</dl>
</section> </section>
<section title="Extension to IS-IS Top Level TLV Registries"> <section>
<t> <name>Extension to IS-IS Top-Level TLV Registries</name>
This document requests IANA to extend a number of registries under <!-- [rfced] Note that we have removed the URLs from each of the subsections in
the "IS-IS TLV Codepoints" registries Section 9.2. The URLs would need to be reduced to the URL for the main registry
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis- group per IANA guidance, which is already mentioned in Section 9.2. We did not
tlv-codepoints.xhtml"/>) include any introductory text for the tables because the registry names are par
t of the section titles and table titles. Please review and let us know if you
prefer that introductory text be added.
-->
<t>
IANA has extended a number of registries under
the "IS-IS TLV Codepoints" registry group
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/" bra
ckets="angle"/>)
to include a column to include a column
that indicates whether the MP-TLV procedures described in this that indicates whether the MP-TLV procedures described in this
document are applicable to that codepoint. "Y" indicates that document are applicable to that codepoint. "Y" indicates that
MP-TLV is applicable. "N" indicates MP-TLV is not applicable. MP-TLV is applicable. "N" indicates MP-TLV is not applicable.
</t> </t>
<t> <t>
The following sub-sections provide the initial contents of the new The following subsections provide the initial contents of the new
column for a number of existing registries. The initial values for column for a number of existing registries. The initial values for
MP-TLV applicability defined in the following sub-sections are based MP-TLV applicability defined in the following subsections are based
on the rule that MP-TLV is applicable to any codepoint that supports on the rule that MP-TLV is applicable to any codepoint that supports
sub-TLVs, without regard to whether the sub-TLVs that are currently sub-TLVs, without regard to whether the sub-TLVs that are currently
defined are sufficient to require MP-TLVs to be sent. defined are sufficient to require MP-TLVs to be sent.
</t> </t>
<section anchor="Top-Level" title="MP-TLV for IS-IS Top-Level TLV Codepoin <section anchor="Top-Level">
ts"> <name>MP-TLV for IS-IS Top-Level TLV Codepoints</name>
<t>
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis
-tlv-codepoints.xhtml#tlv-codepoints"/>)
</t>
<table anchor="table_top">
<name>IS-IS Top-Level TLV Codepoints</name>
<thead>
<tr>
<th align='center'>Value</th>
<th align='center'>Name</th>
<th align='center'>MP</th>
</tr>
</thead>
<tbody>
<tr>
<td>0</td>
<td>Reserved</td>
<td></td>
</tr>
<tr>
<td>1</td>
<td>Area Addresses</td>
<td>N</td>
</tr>
<tr>
<td>2</td>
<td>IIS Neighbors</td>
<td>N</td>
</tr>
<tr>
<td>3</td>
<td>ES Neighbors</td>
<td>N</td>
</tr>
<tr>
<td>4</td>
<td>Part. DIS</td>
<td>N</td>
</tr>
<tr>
<td>5</td>
<td>Prefix Neighbors</td>
<td>N</td>
</tr>
<tr>
<td>6</td>
<td>IIS Neighbors</td>
<td>N</td>
</tr>
<tr>
<td>7</td>
<td>Instance Identifier</td>
<td>Y</td>
</tr>
<tr>
<td>8</td>
<td>Padding</td>
<td>N</td>
</tr>
<tr>
<td>9</td>
<td>LSP Entries</td>
<td>N</td>
</tr>
<tr>
<td>10</td>
<td>Authentication</td>
<td>N</td>
</tr>
<tr>
<td>11</td>
<td>ESN TLV</td>
<td>N</td>
</tr>
<tr>
<td>12</td>
<td>Opt. Checksum</td>
<td>N</td>
</tr>
<tr>
<td>13</td>
<td>Purge Originator Identification</td>
<td>N</td>
</tr>
<tr>
<td>14</td>
<td>LSPBufferSize</td>
<td>N</td>
</tr>
<tr>
<td>15</td>
<td>Router-Fingerprint</td>
<td>N</td>
</tr>
<tr>
<td>16</td>
<td>Reverse Metric</td>
<td>N</td>
</tr>
<tr>
<td>17</td>
<td>IS-IS Area Node IDs TLV</td>
<td>N</td>
</tr>
<tr>
<td>18</td>
<td>IS-IS Flooding Path TLV</td>
<td>N</td>
</tr>
<tr>
<td>19</td>
<td>IS-IS Flooding Request TLV</td>
<td>N</td>
</tr>
<tr>
<td>20</td>
<td>Area Proxy</td>
<td>Y</td>
</tr>
<tr>
<td>21</td>
<td>Flooding Parameters TLV</td>
<td>Y</td>
</tr>
<tr>
<td>22</td>
<td>Extended IS reachability</td>
<td>Y</td>
</tr>
<tr>
<td>23</td>
<td>IS Neighbor Attribute</td>
<td>Y</td>
</tr>
<tr>
<td>24</td>
<td>IS Alias ID</td>
<td>N</td>
</tr>
<tr>
<td>25</td>
<td>L2 Bundle Member Attributes</td>
<td>Y</td>
</tr>
<tr>
<td>26</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>27</td>
<td>SRv6 Locator</td>
<td>Y</td>
</tr>
<tr>
<td>28-41</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>42</td>
<td>DECnet Phase IV</td>
<td>N</td>
</tr>
<tr>
<td>43-65</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>66</td>
<td>Lucent Proprietary</td>
<td>N</td>
</tr>
<tr>
<td>67-125</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>126</td>
<td>IPv4 Algorithm Prefix Reachability TLV</td>
<td>N</td>
</tr>
<tr>
<td>127</td>
<td>IPv6 Algorithm Prefix Reachability TLV</td>
<td>N</td>
</tr>
<tr>
<td>128</td>
<td>IP Int. Reach</td>
<td>N</td>
</tr>
<tr>
<td>129</td>
<td>Prot. Supported</td>
<td>N</td>
</tr>
<tr>
<td>130</td>
<td>IP Ext. Address</td>
<td>N</td>
</tr>
<tr>
<td>131</td>
<td>IDRPI</td>
<td>N</td>
</tr>
<tr>
<td>132</td>
<td>IP Intf. Address</td>
<td>N</td>
</tr>
<tr>
<td>133</td>
<td>Illegal</td>
<td>N</td>
</tr>
<tr>
<td>134</td>
<td>Traffic Engineering router ID</td>
<td>N</td>
</tr>
<tr>
<td>135</td>
<td>Extended IP reachability</td>
<td>Y</td>
</tr>
<tr>
<td>136</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>137</td>
<td>Dynamic Name</td>
<td>N</td>
</tr>
<tr>
<td>138</td>
<td>GMPLS-SRLG</td>
<td>Y</td>
</tr>
<tr>
<td>139</td>
<td>IPv6 SRLG</td>
<td>N</td>
</tr>
<tr>
<td>140</td>
<td>IPv6 TE Router ID</td>
<td>N</td>
</tr>
<tr>
<td>141</td>
<td>inter-AS reachability information</td>
<td>Y</td>
</tr>
<tr>
<td>142</td>
<td>GADDR-TLV</td>
<td>Y</td>
</tr>
<tr>
<td>143</td>
<td>MT-Port-Cap-TLV</td>
<td>Y</td>
</tr>
<tr>
<td>144</td>
<td>MT-Capability TLV</td>
<td>Y</td>
</tr>
<tr>
<td>145</td>
<td>TRILL Neighbor TLV</td>
<td>N</td>
</tr>
<tr>
<td>146</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>147</td>
<td>MAC-RI TLV</td>
<td>Y</td>
</tr>
<tr>
<td>148</td>
<td>BFD-Enabled TLV</td>
<td>Y</td>
</tr>
<tr>
<td>149</td>
<td>Segment Identifier / Label Binding</td>
<td>Y</td>
</tr>
<tr>
<td>150</td>
<td>Multi-Topology Segment Identifier / Label Binding</td>
<td>Y</td>
</tr>
<tr>
<td>151-160</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>161</td>
<td>Flood Reflection</td>
<td>N</td>
</tr>
<tr>
<td>162-175</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>176</td>
<td>Nortel Proprietary</td>
<td>N</td>
</tr>
<tr>
<td>177</td>
<td>Nortel Proprietary</td>
<td>N</td>
</tr>
<tr>
<td>178-210</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>211</td>
<td>Restart TLV</td>
<td>N</td>
</tr>
<tr>
<td>212-221</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>222</td>
<td>MT-ISN</td>
<td>Y</td>
</tr>
<tr>
<td>223</td>
<td>MT IS Neighbor Attribute</td>
<td>Y</td>
</tr>
<tr>
<td>224-228</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>229</td>
<td>M-Topologies</td>
<td>N</td>
</tr>
<tr>
<td>230-231</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>232</td>
<td>IPv6 Intf. Addr.</td>
<td>N</td>
</tr>
<tr>
<td>233</td>
<td>IPv6 Global Interface Address TLV</td>
<td>N</td>
</tr>
<tr>
<td>234</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>235</td>
<td>MT IP. Reach</td>
<td>Y</td>
</tr>
<tr>
<td>236</td>
<td>IPv6 IP. Reach</td>
<td>Y</td>
</tr>
<tr>
<td>237</td>
<td>MT IPv6 IP. Reach</td>
<td>Y</td>
</tr>
<tr>
<td>238</td>
<td>Application-Specific SRLG</td>
<td>Y</td>
</tr>
<tr>
<td>239</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>240</td>
<td>P2P 3-Way Adj. State</td>
<td>N</td>
</tr>
<tr>
<td>241</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>242</td>
<td>IS-IS Router CAPABILITY TLV</td>
<td>Y</td>
</tr>
<tr>
<td>243</td>
<td>Scope Flooding Support</td>
<td>N</td>
</tr>
<tr>
<td>244-250</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>251</td>
<td>Generic Information</td>
<td>Y</td>
</tr>
<tr>
<td>252-65535</td>
<td>Unassigned</td>
<td></td>
</tr>
</tbody>
</table>
</section>
<section anchor="ReverseMetric" title="MP-TLV for IS-IS Sub-TLVs for Reverse <table anchor="table_top">
Metric TLV"> <name>IS-IS Top-Level TLV Codepoints</name>
<t> <thead>
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis <tr>
-tlv-codepoints.xhtml#tlv-16"/>) <th>Value</th>
</t> <th>Name</th>
<table anchor="table_rev"> <th>MP</th>
<name>IS-IS Sub-TLVs for Reverse Metric TLV</name> </tr>
<thead> </thead>
<tr> <tbody>
<th align='center'>Value</th> <tr>
<th align='center'>Name</th> <td>0</td>
<th align='center'>MP</th> <td>Reserved</td>
</tr> <td/>
</thead> </tr>
<tbody> <tr>
<tr> <td>1</td>
<td>0</td> <td>Area Addresses</td>
<td>Reserved</td> <td>N</td>
<td></td> </tr>
</tr> <tr>
<tr> <td>2</td>
<td>1-17</td> <td>IIS Neighbors</td>
<td>Unassigned</td> <td>N</td>
<td></td> </tr>
</tr> <tr>
<tr> <td>3</td>
<td>18</td> <td>ES Neighbors</td>
<td>Traffic Engineering Metric</td> <td>N</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>4</td>
<td>19-255</td> <td>Part. DIS</td>
<td>Unassigned</td> <td>N</td>
<td></td> </tr>
</tr> <tr>
</tbody> <td>5</td>
</table> <td>Prefix Neighbors</td>
</section> <td>N</td>
</tr>
<tr>
<td>6</td>
<td>IIS Neighbors</td>
<td>N</td>
</tr>
<tr>
<td>7</td>
<td>Instance Identifier</td>
<td>Y</td>
</tr>
<tr>
<td>8</td>
<td>Padding</td>
<td>N</td>
</tr>
<tr>
<td>9</td>
<td>LSP Entries</td>
<td>N</td>
</tr>
<tr>
<td>10</td>
<td>Authentication</td>
<td>N</td>
</tr>
<tr>
<td>11</td>
<td>ESN TLV</td>
<td>N</td>
</tr>
<tr>
<td>12</td>
<td>Opt. Checksum</td>
<td>N</td>
</tr>
<tr>
<td>13</td>
<td>Purge Originator Identification</td>
<td>N</td>
</tr>
<tr>
<td>14</td>
<td>LSPBufferSize</td>
<td>N</td>
</tr>
<tr>
<td>15</td>
<td>Router-Fingerprint</td>
<td>N</td>
</tr>
<tr>
<td>16</td>
<td>Reverse Metric</td>
<td>N</td>
</tr>
<tr>
<td>17</td>
<td>IS-IS Area Node IDs TLV</td>
<td>N</td>
</tr>
<tr>
<td>18</td>
<td>IS-IS Flooding Path TLV</td>
<td>N</td>
</tr>
<tr>
<td>19</td>
<td>IS-IS Flooding Request TLV</td>
<td>N</td>
</tr>
<tr>
<td>20</td>
<td>Area Proxy</td>
<td>Y</td>
</tr>
<tr>
<td>21</td>
<td>Flooding Parameters TLV</td>
<td>Y</td>
</tr>
<tr>
<td>22</td>
<td>Extended IS reachability</td>
<td>Y</td>
</tr>
<tr>
<td>23</td>
<td>IS Neighbor Attribute</td>
<td>Y</td>
</tr>
<tr>
<td>24</td>
<td>IS Alias ID</td>
<td>N</td>
</tr>
<tr>
<td>25</td>
<td>L2 Bundle Member Attributes</td>
<td>Y</td>
</tr>
<tr>
<td>26</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>27</td>
<td>SRv6 Locator</td>
<td>Y</td>
</tr>
<tr>
<td>28-41</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>42</td>
<td>DECnet Phase IV</td>
<td>N</td>
</tr>
<tr>
<td>43-65</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>66</td>
<td>Lucent Proprietary</td>
<td>N</td>
</tr>
<tr>
<td>67-125</td>
<td>Unassigned</td>
<td/>
</tr>
<!-- [rfced] We removed "TLV" from these entries to match what appears in the IA
NA registry.
<section anchor="NeighborInfo" title="MP-TLV for IS-IS Sub-TLVs for TLVs Adv 126 IPv4 Algorithm Prefix Reachability TLV N
ertising Neighbor Information"> 127 IPv6 Algorithm Prefix Reachability TLV N
<t> -->
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis
-tlv-codepoints.xhtml#isis-tlv-codepoints-advertising-neighbor-information"/>)
</t>
<table anchor="table_nei">
<name>IS-IS Sub-TLVs for TLVs Advertising Neighbor Information</name>
<thead>
<tr>
<th align='center'>Value</th>
<th align='center'>Name</th>
<th align='center'>MP</th>
</tr>
</thead>
<tbody>
<tr>
<td>0-2</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>3</td>
<td>Administrative group (color)</td>
<td>N</td>
</tr>
<tr>
<td>4</td>
<td>Link Local/Remote Identifiers</td>
<td>N</td>
</tr>
<tr>
<td>5</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>6</td>
<td>IPv4 interface address</td>
<td>N</td>
</tr>
<tr>
<td>7</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>8</td>
<td>IPv4 neighbor address</td>
<td>N</td>
</tr>
<tr>
<td>9</td>
<td>Maximum link bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>10</td>
<td>Maximum reservable link bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>11</td>
<td>Unreserved bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>12</td>
<td>IPv6 Interface Address</td>
<td>N</td>
</tr>
<tr>
<td>13</td>
<td>IPv6 Neighbor Address</td>
<td>N</td>
</tr>
<tr>
<td>14</td>
<td>Extended Administrative Group</td>
<td>N</td>
</tr>
<tr>
<td>15</td>
<td>Link MSD</td>
<td>Y</td>
</tr>
<tr>
<td>16</td>
<td>Application-Specific Link Attributes</td>
<td>Y</td>
</tr>
<tr>
<td>17</td>
<td>Generic Metric</td>
<td>N</td>
</tr>
<tr>
<td>18</td>
<td>TE Default metric</td>
<td>N</td>
</tr>
<tr>
<td>19</td>
<td>Link-attributes</td>
<td>N</td>
</tr>
<tr>
<td>20</td>
<td>Link Protection Type</td>
<td>N</td>
</tr>
<tr>
<td>21</td>
<td>Interface Switching Capability Descriptor</td>
<td>Y</td>
</tr>
<tr>
<td>22</td>
<td>Bandwidth Constraints</td>
<td>N</td>
</tr>
<tr>
<td>23</td>
<td>Unconstrained TE LSP Count (sub-)TLV</td>
<td>N</td>
</tr>
<tr>
<td>24</td>
<td>Remote AS Number</td>
<td>N</td>
</tr>
<tr>
<td>25</td>
<td>IPv4 Remote ASBR Identifier</td>
<td>N</td>
</tr>
<tr>
<td>26</td>
<td>IPv6 Remote ASBR Identifier</td>
<td>N</td>
</tr>
<tr>
<td>27</td>
<td>Interface Adjustment Capability Descriptor (IACD)</td>
<td>Y</td>
</tr>
<tr>
<td>28</td>
<td>MTU</td>
<td>N</td>
</tr>
<tr>
<td>29</td>
<td>SPB-Metric</td>
<td>N</td>
</tr>
<tr>
<td>30</td>
<td>SPB-A-OALG</td>
<td>Y</td>
</tr>
<tr>
<td>31</td>
<td>Adjacency Segment Identifier</td>
<td>N</td>
</tr>
<tr>
<td>32</td>
<td>LAN Adjacency Segment Identifier</td>
<td>N</td>
</tr>
<tr>
<td>33</td>
<td>Unidirectional Link Delay</td>
<td>N</td>
</tr>
<tr>
<td>34</td>
<td>Min/Max Unidirectional Link Delay</td>
<td>N</td>
</tr>
<tr>
<td>35</td>
<td>Unidirectional Delay Variation</td>
<td>N</td>
</tr>
<tr>
<td>36</td>
<td>Unidirectional Link Loss</td>
<td>N</td>
</tr>
<tr>
<td>37</td>
<td>Unidirectional Residual Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>38</td>
<td>Unidirectional Available Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>39</td>
<td>Unidirectional Utilized Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>40</td>
<td>RTM Capability</td>
<td>N</td>
</tr>
<tr>
<td>41</td>
<td>L2 Bundle Member Adj-SID</td>
<td>Y</td>
</tr>
<tr>
<td>42</td>
<td>L2 Bundle Member LAN Adj-SID</td>
<td>Y</td>
</tr>
<tr>
<td>43</td>
<td>SRv6 End.X SID</td>
<td>Y</td>
</tr>
<tr>
<td>44</td>
<td>SRv6 LAN End.X SID</td>
<td>Y</td>
</tr>
<tr>
<td>45</td>
<td>IPv6 Local ASBR Identifier</td>
<td>N</td>
</tr>
<tr>
<td>46-160</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>161</td>
<td>Flood Reflector Adjacency</td>
<td>N</td>
</tr>
<tr>
<td>162-249</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>250-254</td>
<td>Reserved for Cisco-specific extensions</td>
<td></td>
</tr>
<tr>
<td>255</td>
<td>Reserved for future expansion</td>
<td></td>
</tr>
</tbody>
</table>
</section>
<section anchor="PrefixReach" title="MP-TLV for IS-IS Sub-TLVs for TLVs Ad <tr>
vertising Prefix Reachability"> <td>126</td>
<t> <td>IPv4 Algorithm Prefix Reachability</td>
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis <td>N</td>
-tlv-codepoints.xhtml#isis-tlv-codepoints-advertising-prefix-reachability"/>) </tr>
</t> <tr>
<table anchor="table_pfx"> <td>127</td>
<name>IS-IS Sub-TLVs for TLVs Advertising Prefix Reachability</name> <td>IPv6 Algorithm Prefix Reachability</td>
<thead> <td>N</td>
<tr> </tr>
<th align='center'>Value</th> <tr>
<th align='center'>Name</th> <td>128</td>
<th align='center'>MP</th> <td>IP Int. Reach</td>
</tr> <td>N</td>
</thead> </tr>
<tbody> <tr>
<tr> <td>129</td>
<td>0</td> <td>Prot. Supported</td>
<td>Unassigned</td> <td>N</td>
<td></td> </tr>
</tr> <tr>
<tr> <td>130</td>
<td>1</td> <td>IP Ext. Address</td>
<td>32-bit Administrative Tag Sub-TLV</td> <td>N</td>
<td>Y</td> </tr>
</tr> <tr>
<tr> <td>131</td>
<td>2</td> <td>IDRPI</td>
<td>64-bit Administrative Tag Sub-TLV</td> <td>N</td>
<td>Y</td> </tr>
</tr> <tr>
<tr> <td>132</td>
<td>3</td> <td>IP Intf. Address</td>
<td>Prefix Segment Identifier</td> <td>N</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>133</td>
<td>4</td> <td>Illegal</td>
<td>Prefix Attribute Flags</td> <td>N</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>134</td>
<td>5</td> <td>Traffic Engineering router ID</td>
<td>SRv6 End SID</td> <td>N</td>
<td>Y</td> </tr>
</tr> <tr>
<tr> <td>135</td>
<td>6</td> <td>Extended IP reachability</td>
<td>Flexible Algorithm Prefix Metric (FAPM)</td> <td>Y</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>136</td>
<td>7-10</td> <td>Unassigned</td>
<td>Unassigned</td> <td/>
<td></td> </tr>
</tr> <tr>
<tr> <td>137</td>
<td>11</td> <td>Dynamic Name</td>
<td>IPv4 Source Router ID</td> <td>N</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>138</td>
<td>12</td> <td>GMPLS-SRLG</td>
<td>IPv6 Source Router ID</td> <td>Y</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>139</td>
<td>13-31</td> <td>IPv6 SRLG</td>
<td>Unassigned</td> <td>N</td>
<td></td> </tr>
</tr> <tr>
<tr> <td>140</td>
<td>32</td> <td>IPv6 TE Router ID</td>
<td>BIER Info</td> <td>N</td>
<td>Y</td> </tr>
</tr> <tr>
<tr> <td>141</td>
<td>32-255</td> <td>inter-AS reachability information</td>
<td>Unassigned</td> <td>Y</td>
<td></td> </tr>
</tr> <tr>
</tbody> <td>142</td>
</table> <td>GADDR-TLV</td>
</section> <td>Y</td>
</tr>
<tr>
<td>143</td>
<td>MT-Port-Cap-TLV</td>
<td>Y</td>
</tr>
<tr>
<td>144</td>
<td>MT-Capability TLV</td>
<td>Y</td>
</tr>
<tr>
<td>145</td>
<td>TRILL Neighbor TLV</td>
<td>N</td>
</tr>
<tr>
<td>146</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>147</td>
<td>MAC-RI TLV</td>
<td>Y</td>
</tr>
<tr>
<td>148</td>
<td>BFD-Enabled TLV</td>
<td>Y</td>
</tr>
<tr>
<td>149</td>
<td>Segment Identifier / Label Binding</td>
<td>Y</td>
</tr>
<tr>
<td>150</td>
<td>Multi-Topology Segment Identifier / Label Binding</td>
<td>Y</td>
</tr>
<tr>
<td>151-160</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>161</td>
<td>Flood Reflection</td>
<td>N</td>
</tr>
<tr>
<td>162-175</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>176</td>
<td>Nortel Proprietary</td>
<td>N</td>
</tr>
<tr>
<td>177</td>
<td>Nortel Proprietary</td>
<td>N</td>
</tr>
<tr>
<td>178-210</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>211</td>
<td>Restart TLV</td>
<td>N</td>
</tr>
<tr>
<td>212-221</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>222</td>
<td>MT-ISN</td>
<td>Y</td>
</tr>
<tr>
<td>223</td>
<td>MT IS Neighbor Attribute</td>
<td>Y</td>
</tr>
<tr>
<td>224-228</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>229</td>
<td>M-Topologies</td>
<td>N</td>
</tr>
<tr>
<td>230-231</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>232</td>
<td>IPv6 Intf. Addr.</td>
<td>N</td>
</tr>
<tr>
<td>233</td>
<td>IPv6 Global Interface Address TLV</td>
<td>N</td>
</tr>
<tr>
<td>234</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>235</td>
<td>MT IP. Reach</td>
<td>Y</td>
</tr>
<tr>
<td>236</td>
<td>IPv6 IP. Reach</td>
<td>Y</td>
</tr>
<tr>
<td>237</td>
<td>MT IPv6 IP. Reach</td>
<td>Y</td>
</tr>
<tr>
<td>238</td>
<td>Application-Specific SRLG</td>
<td>Y</td>
</tr>
<tr>
<td>239</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>240</td>
<td>P2P 3-Way Adj. State</td>
<td>N</td>
</tr>
<tr>
<td>241</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>242</td>
<td>IS-IS Router CAPABILITY TLV</td>
<td>Y</td>
</tr>
<tr>
<td>243</td>
<td>Scope Flooding Support</td>
<td>N</td>
</tr>
<tr>
<td>244-250</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>251</td>
<td>Generic Information</td>
<td>Y</td>
</tr>
<tr>
<td>252-65535</td>
<td>Unassigned</td>
<td/>
</tr>
</tbody>
</table>
</section>
<section anchor="ReverseMetric">
<name>MP-TLV for IS-IS Sub-TLVs for Reverse Metric TLV</name>
<section anchor="MT-Capability" title="MP-TLV for IS-IS Sub-TLVs for MT-Ca <table anchor="table_rev">
pability TLV"> <name>IS-IS Sub-TLVs for Reverse Metric TLV</name>
<t> <thead>
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis <tr>
-tlv-codepoints.xhtml#tlv-144"/>) <th>Value</th>
</t> <th>Name</th>
<table anchor="table_mt"> <th>MP</th>
<name>IS-IS Sub-TLVs for MT-Capability TLV</name> </tr>
<thead> </thead>
<tr> <tbody>
<th align='center'>Value</th> <tr>
<th align='center'>Name</th> <td>0</td>
<th align='center'>MP</th> <td>Reserved</td>
</tr> <td/>
</thead> </tr>
<tbody> <tr>
<tr> <td>1-17</td>
<td>0</td> <td>Unassigned</td>
<td>Reserved</td> <td/>
<td></td> </tr>
</tr> <tr>
<tr> <td>18</td>
<td>1</td> <td>Traffic Engineering Metric</td>
<td>SPB-Inst</td> <td>N</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>19-255</td>
<td>2</td> <td>Unassigned</td>
<td>SPB-I-OALG</td> <td/>
<td>Y</td> </tr>
</tr> </tbody>
<tr> </table>
<td>3</td> </section>
<td>SPBM-SI</td> <section anchor="NeighborInfo">
<td>Y</td> <name>MP-TLV for IS-IS Sub-TLVs for TLVs Advertising Neighbor Informat
</tr> ion</name>
<tr> <table anchor="table_nei">
<td>4</td> <name>IS-IS Sub-TLVs for TLVs Advertising Neighbor Information</name
<td>SPBV-ADDR</td> >
<td>Y</td> <thead>
</tr> <tr>
<tr> <th>Value</th>
<td>5</td> <th>Name</th>
<td>Unassigned</td> <th>MP</th>
<td></td> </tr>
</tr> </thead>
<tr> <tbody>
<td>6</td> <tr>
<td>NICKNAME</td> <td>0-2</td>
<td>Y</td> <td>Unassigned</td>
</tr> <td/>
<tr> </tr>
<td>7</td> <tr>
<td>TREES</td> <td>3</td>
<td>N</td> <td>Administrative group (color)</td>
</tr> <td>N</td>
<tr> </tr>
<td>8</td> <tr>
<td>TREE-RT-IDs</td> <td>4</td>
<td>Y</td> <td>Link Local/Remote Identifiers</td>
</tr> <td>N</td>
<tr> </tr>
<td>9</td> <tr>
<td>TREE-USE-IDs</td> <td>5</td>
<td>Y</td> <td>Unassigned</td>
</tr> <td/>
<tr> </tr>
<td>10</td> <tr>
<td>INT-VLAN</td> <td>6</td>
<td>Y</td> <td>IPv4 interface address</td>
</tr> <td>N</td>
<tr> </tr>
<td>11-12</td> <tr>
<td>Unassigned</td> <td>7</td>
<td></td> <td>Unassigned</td>
</tr> <td/>
<tr> </tr>
<td>13</td> <tr>
<td>TRILL-VER</td> <td>8</td>
<td>N</td> <td>IPv4 neighbor address</td>
</tr> <td>N</td>
<tr> </tr>
<td>14</td> <tr>
<td>VLAN-GROUP</td> <td>9</td>
<td>Y</td> <td>Maximum link bandwidth</td>
</tr> <td>N</td>
<tr> </tr>
<td>15</td> <tr>
<td>INT-LABEL</td> <td>10</td>
<td>Y</td> <td>Maximum reservable link bandwidth</td>
</tr> <td>N</td>
<tr> </tr>
<td>16</td> <tr>
<td>RBCHANNELS</td> <td>11</td>
<td>Y</td> <td>Unreserved bandwidth</td>
</tr> <td>N</td>
<tr> </tr>
<td>17</td> <tr>
<td>AFFINITY</td> <td>12</td>
<td>Y</td> <td>IPv6 Interface Address</td>
</tr> <td>N</td>
<tr> </tr>
<td>18</td> <tr>
<td>LABEL-GROUP</td> <td>13</td>
<td>Y</td> <td>IPv6 Neighbor Address</td>
</tr> <td>N</td>
<tr> </tr>
<td>19-20</td> <tr>
<td>Unassigned</td> <td>14</td>
<td></td> <td>Extended Administrative Group</td>
</tr> <td>N</td>
<tr> </tr>
<td>21</td> <tr>
<td>Topology sub-TLV</td> <td>15</td>
<td>Y</td> <td>Link MSD</td>
</tr> <td>Y</td>
<tr> </tr>
<td>22</td> <tr>
<td>Hop sub-TLV</td> <td>16</td>
<td>N</td> <td>Application-Specific Link Attributes</td>
</tr> <td>Y</td>
<tr> </tr>
<td>23</td> <tr>
<td>Bandwidth Constraint sub-TLV</td> <td>17</td>
<td>N</td> <td>Generic Metric</td>
</tr> <td>N</td>
<tr> </tr>
<td>24</td> <tr>
<td>Bandwidth Assignment sub-TLV</td> <td>18</td>
<td>N</td> <td>TE Default metric</td>
</tr> <td>N</td>
<tr> </tr>
<td>25</td> <tr>
<td>Timestamp sub-TLV</td> <td>19</td>
<td>N</td> <td>Link-attributes</td>
</tr> <td>N</td>
<tr> </tr>
<td>26-254</td> <tr>
<td>Unassigned</td> <td>20</td>
<td></td> <td>Link Protection Type</td>
</tr> <td>N</td>
<tr> </tr>
<td>255</td> <tr>
<td>Reserved</td> <td>21</td>
<td></td> <td>Interface Switching Capability Descriptor</td>
</tr> <td>Y</td>
</tbody> </tr>
</table> <tr>
</section> <td>22</td>
<td>Bandwidth Constraints</td>
<td>N</td>
</tr>
<tr>
<td>23</td>
<td>Unconstrained TE LSP Count (sub-)TLV</td>
<td>N</td>
</tr>
<tr>
<td>24</td>
<td>Remote AS Number</td>
<td>N</td>
</tr>
<tr>
<td>25</td>
<td>IPv4 Remote ASBR Identifier</td>
<td>N</td>
</tr>
<tr>
<td>26</td>
<td>IPv6 Remote ASBR Identifier</td>
<td>N</td>
</tr>
<tr>
<td>27</td>
<td>Interface Adjustment Capability Descriptor (IACD)</td>
<td>Y</td>
</tr>
<tr>
<td>28</td>
<td>MTU</td>
<td>N</td>
</tr>
<tr>
<td>29</td>
<td>SPB-Metric</td>
<td>N</td>
</tr>
<tr>
<td>30</td>
<td>SPB-A-OALG</td>
<td>Y</td>
</tr>
<tr>
<td>31</td>
<td>Adjacency Segment Identifier</td>
<td>N</td>
</tr>
<tr>
<td>32</td>
<td>LAN Adjacency Segment Identifier</td>
<td>N</td>
</tr>
<tr>
<td>33</td>
<td>Unidirectional Link Delay</td>
<td>N</td>
</tr>
<tr>
<td>34</td>
<td>Min/Max Unidirectional Link Delay</td>
<td>N</td>
</tr>
<tr>
<td>35</td>
<td>Unidirectional Delay Variation</td>
<td>N</td>
</tr>
<tr>
<td>36</td>
<td>Unidirectional Link Loss</td>
<td>N</td>
</tr>
<tr>
<td>37</td>
<td>Unidirectional Residual Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>38</td>
<td>Unidirectional Available Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>39</td>
<td>Unidirectional Utilized Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>40</td>
<td>RTM Capability</td>
<td>N</td>
</tr>
<tr>
<td>41</td>
<td>L2 Bundle Member Adj-SID</td>
<td>Y</td>
</tr>
<tr>
<td>42</td>
<td>L2 Bundle Member LAN Adj-SID</td>
<td>Y</td>
</tr>
<tr>
<td>43</td>
<td>SRv6 End.X SID</td>
<td>Y</td>
</tr>
<tr>
<td>44</td>
<td>SRv6 LAN End.X SID</td>
<td>Y</td>
</tr>
<tr>
<td>45</td>
<td>IPv6 Local ASBR Identifier</td>
<td>N</td>
</tr>
<tr>
<td>46-160</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>161</td>
<td>Flood Reflector Adjacency</td>
<td>N</td>
</tr>
<tr>
<td>162-249</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>250-254</td>
<td>Reserved for Cisco-specific extensions</td>
<td/>
</tr>
<tr>
<td>255</td>
<td>Reserved for future expansion</td>
<td/>
</tr>
</tbody>
</table>
</section>
<section anchor="PrefixReach">
<name>MP-TLV for IS-IS Sub-TLVs for TLVs Advertising Prefix Reachabili
ty</name>
<section anchor="Router_cap" title="MP-TLV for IS-IS Sub-TLVs for IS-IS Ro <table anchor="table_pfx">
uter CAPABILITY TLV"> <name>IS-IS Sub-TLVs for TLVs Advertising Prefix Reachability</name>
<t> <thead>
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis <tr>
-tlv-codepoints.xhtml#isis-tlv-codepoints-242"/>) <th>Value</th>
</t> <th>Name</th>
<table anchor="table_cap"> <th>MP</th>
<name>IS-IS Sub-TLVs for IS-IS Router CAPABILITY TLV</name> </tr>
<thead> </thead>
<tr> <tbody>
<th align='center'>Value</th> <tr>
<th align='center'>Name</th> <td>0</td>
<th align='center'>MP</th> <td>Unassigned</td>
</tr> <td/>
</thead> </tr>
<tbody> <tr>
<tr> <td>1</td>
<td>0</td> <td>32-bit Administrative Tag Sub-TLV</td>
<td>Reserved</td> <td>Y</td>
<td></td> </tr>
</tr> <tr>
<tr> <td>2</td>
<td>1</td> <td>64-bit Administrative Tag Sub-TLV</td>
<td>TE Node Capability Descriptor</td> <td>Y</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>3</td>
<td>2</td> <td>Prefix Segment Identifier</td>
<td>Segment Routing Capability</td> <td>N</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>4</td>
<td>3</td> <td>Prefix Attribute Flags</td>
<td>TE-MESH-GROUP TLV (IPv4)</td> <td>N</td>
<td>Y</td> </tr>
</tr> <tr>
<tr> <td>5</td>
<td>4</td> <td>SRv6 End SID</td>
<td>TE-MESH-GROUP TLV (IPv6)</td> <td>Y</td>
<td>Y</td> </tr>
</tr> <tr>
<tr> <td>6</td>
<td>5</td> <td>Flexible Algorithm Prefix Metric (FAPM)</td>
<td>PCED sub-TLV</td> <td>N</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>7-10</td>
<td>6</td> <td>Unassigned</td>
<td>NICKNAME</td> <td/>
<td>Y</td> </tr>
</tr> <tr>
<tr> <td>11</td>
<td>7</td> <td>IPv4 Source Router ID</td>
<td>TREES</td> <td>N</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>12</td>
<td>8</td> <td>IPv6 Source Router ID</td>
<td>TREE-RT-IDs</td> <td>N</td>
<td>Y</td> </tr>
</tr> <tr>
<tr> <td>13-31</td>
<td>9</td> <td>Unassigned</td>
<td>TREE-USE-IDs</td> <td/>
<td>Y</td> </tr>
</tr> <tr>
<tr> <td>32</td>
<td>10</td> <td>BIER Info</td>
<td>INT-VLAN</td> <td>Y</td>
<td>Y</td> </tr>
</tr> <tr>
<tr> <!-- [rfced] Table 4: Note that we updated the Unassigned values to be 33-255, a
<td>11</td> s value 32 is assigned to "BIER Info".
<td>IPv4 TE Router ID</td>
<td>N</td>
</tr>
<tr>
<td>12</td>
<td>IPv6 TE Router ID</td>
<td>N</td>
</tr>
<tr>
<td>13</td>
<td>TRILL-VER</td>
<td>N</td>
</tr>
<tr>
<td>14</td>
<td>VLAN-GROUP</td>
<td>Y</td>
</tr>
<tr>
<td>15</td>
<td>INT-LABEL</td>
<td>Y</td>
</tr>
<tr>
<td>16</td>
<td>RBCHANNELS</td>
<td>Y</td>
</tr>
<tr>
<td>17</td>
<td>AFFINITY</td>
<td>Y</td>
</tr>
<tr>
<td>18</td>
<td>LABEL-GROUP</td>
<td>Y</td>
</tr>
<tr>
<td>19</td>
<td>Segment Routing Algorithm</td>
<td>N</td>
</tr>
<tr>
<td>20</td>
<td>S-BFD Discriminators</td>
<td>N</td>
</tr>
<tr>
<td>21</td>
<td>Node-Admin-Tag</td>
<td>N</td>
</tr>
<tr>
<td>22</td>
<td>Segment Routing Local Block (SRLB)</td>
<td>N</td>
</tr>
<tr>
<td>23</td>
<td>Node MSD</td>
<td>Y</td>
</tr>
<tr>
<td>24</td>
<td>Segment Routing Mapping Server Preference (SRMS Preference)</td>
<td>N</td>
</tr>
<tr>
<td>25</td>
<td>SRv6 Capabilities</td>
<td>N</td>
</tr>
<tr>
<td>26</td>
<td>Flexible Algorithm Definition (FAD)</td>
<td>N</td>
</tr>
<tr>
<td>27</td>
<td>IS-IS Area Leader Sub-TLV</td>
<td>N</td>
</tr>
<tr>
<td>28</td>
<td>IS-IS Dynamic Flooding Sub-TLV</td>
<td>N</td>
</tr>
<tr>
<td>29</td>
<td>IP Algorithm Sub-TLV</td>
<td>N</td>
</tr>
<tr>
<td>30-160</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>161</td>
<td>Flood Reflection Discovery</td>
<td>Y</td>
</tr>
<tr>
<td>162-255</td>
<td>Unassigned</td>
<td></td>
</tr>
</tbody>
</table>
</section>
<section anchor="cap_sub" title="IS-IS Sub-Sub-TLVs for SRv6 Capabilities Su Original:
b-TLV"> | 32 | BIER Info | Y |
<t> | 32-255 | Unassigned | |
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis -->
-tlv-codepoints.xhtml#isis-sub-sub-tlv-srv6-capability"/>) <td>33-255</td>
</t> <td>Unassigned</td>
<table anchor="table_cap_sub"> <td/>
<name>IS-IS Sub-Sub-TLVs for SRv6 Capabilities Sub-TLV</name> </tr>
<thead> </tbody>
<tr> </table>
<th align='center'>Value</th> </section>
<th align='center'>Name</th> <section anchor="MT-Capability">
<th align='center'>MP</th> <name>MP-TLV for IS-IS Sub-TLVs for MT-Capability TLV</name>
</tr>
</thead>
<tbody>
<tr>
<td>0</td>
<td>Reserved</td>
<td></td>
</tr>
<tr>
<td>1-255</td>
<td>Unassigned</td>
<td></td>
</tr>
</tbody>
</table>
</section>
<section anchor="BIER_SUB" title="MP-TLV IS-IS Sub-Sub-TLVs for BIER Inf <table anchor="table_mt">
o Sub-TLV"> <name>IS-IS Sub-TLVs for MT-Capability TLV</name>
<t> <thead>
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis <tr>
-tlv-codepoints.xhtml#bier-info-sub-tlv"/>) <th>Value</th>
</t> <th>Name</th>
<table anchor="table_bier_sub"> <th>MP</th>
<name>IS-IS Sub-Sub-TLVs for BIER Info Sub-TLV</name> </tr>
<thead> </thead>
<tr> <tbody>
<th align='center'>Value</th> <tr>
<th align='center'>Name</th> <td>0</td>
<th align='center'>MP</th> <td>Reserved</td>
</tr> <td/>
</thead> </tr>
<tbody> <tr>
<tr> <td>1</td>
<td>0</td> <td>SPB-Inst</td>
<td>Unassigned</td> <td>N</td>
<td></td> </tr>
</tr> <tr>
<tr> <td>2</td>
<td>1</td> <td>SPB-I-OALG</td>
<td>BIER MPLS Encapsulation</td> <td>Y</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>3</td>
<td>2</td> <td>SPBM-SI</td>
<td>BIER PHP Request</td> <td>Y</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>4</td>
<td>3-255</td> <td>SPBV-ADDR</td>
<td>Unassigned</td> <td>Y</td>
<td></td> </tr>
</tr> <tr>
</tbody> <td>5</td>
</table> <td>Unassigned</td>
</section> <td/>
</tr>
<tr>
<td>6</td>
<td>NICKNAME</td>
<td>Y</td>
</tr>
<tr>
<td>7</td>
<td>TREES</td>
<td>N</td>
</tr>
<tr>
<td>8</td>
<td>TREE-RT-IDs</td>
<td>Y</td>
</tr>
<tr>
<td>9</td>
<td>TREE-USE-IDs</td>
<td>Y</td>
</tr>
<tr>
<td>10</td>
<td>INT-VLAN</td>
<td>Y</td>
</tr>
<tr>
<td>11-12</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>13</td>
<td>TRILL-VER</td>
<td>N</td>
</tr>
<tr>
<td>14</td>
<td>VLAN-GROUP</td>
<td>Y</td>
</tr>
<tr>
<td>15</td>
<td>INT-LABEL</td>
<td>Y</td>
</tr>
<tr>
<td>16</td>
<td>RBCHANNELS</td>
<td>Y</td>
</tr>
<tr>
<td>17</td>
<td>AFFINITY</td>
<td>Y</td>
</tr>
<tr>
<td>18</td>
<td>LABEL-GROUP</td>
<td>Y</td>
</tr>
<tr>
<td>19-20</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>21</td>
<td>Topology sub-TLV</td>
<td>Y</td>
</tr>
<tr>
<td>22</td>
<td>Hop sub-TLV</td>
<td>N</td>
</tr>
<tr>
<td>23</td>
<td>Bandwidth Constraint sub-TLV</td>
<td>N</td>
</tr>
<tr>
<td>24</td>
<td>Bandwidth Assignment sub-TLV</td>
<td>N</td>
</tr>
<tr>
<td>25</td>
<td>Timestamp sub-TLV</td>
<td>N</td>
</tr>
<tr>
<td>26-254</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>255</td>
<td>Reserved</td>
<td/>
</tr>
</tbody>
</table>
</section>
<section anchor="Router_cap">
<name>MP-TLV for IS-IS Sub-TLVs for IS-IS Router CAPABILITY TLV</name>
<section anchor="segid_sub" title="MP-TLV for IS-IS Sub-TLVs for Segment Ide <table anchor="table_cap">
ntifier/Label Binding TLVs"> <name>IS-IS Sub-TLVs for IS-IS Router CAPABILITY TLV</name>
<t> <thead>
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis <tr>
-tlv-codepoints.xhtml#tlv-149-150"/>) <th>Value</th>
</t> <th>Name</th>
<table anchor="table_segid_sub"> <th>MP</th>
<name>IS-IS Sub-TLVs for Segment Identifier/Label Binding TLVs</name> </tr>
<thead> </thead>
<tr> <tbody>
<th align='center'>Value</th> <tr>
<th align='center'>Name</th> <td>0</td>
<th align='center'>MP</th> <td>Reserved</td>
</tr> <td/>
</thead> </tr>
<tbody> <tr>
<tr> <td>1</td>
<td>0</td> <td>TE Node Capability Descriptor</td>
<td>Reserved</td> <td>N</td>
<td></td> </tr>
</tr> <tr>
<tr> <td>2</td>
<td>1</td> <td>Segment Routing Capability</td>
<td>SID/Label</td> <td>N</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>3</td>
<td>2</td> <td>TE-MESH-GROUP TLV (IPv4)</td>
<td>Unassigned</td> <td>Y</td>
<td></td> </tr>
</tr> <tr>
<tr> <td>4</td>
<td>3</td> <td>TE-MESH-GROUP TLV (IPv6)</td>
<td>Prefix Segment Identifier</td> <td>Y</td>
<td>N</td> </tr>
</tr> <tr>
<tr> <td>5</td>
<td>4-255</td> <td>PCED sub-TLV</td>
<td>Unassigned</td> <td>N</td>
<td></td> </tr>
</tr> <tr>
</tbody> <td>6</td>
</table> <td>NICKNAME</td>
</section> <td>Y</td>
</tr>
<tr>
<td>7</td>
<td>TREES</td>
<td>N</td>
</tr>
<tr>
<td>8</td>
<td>TREE-RT-IDs</td>
<td>Y</td>
</tr>
<tr>
<td>9</td>
<td>TREE-USE-IDs</td>
<td>Y</td>
</tr>
<tr>
<td>10</td>
<td>INT-VLAN</td>
<td>Y</td>
</tr>
<tr>
<td>11</td>
<td>IPv4 TE Router ID</td>
<td>N</td>
</tr>
<tr>
<td>12</td>
<td>IPv6 TE Router ID</td>
<td>N</td>
</tr>
<tr>
<td>13</td>
<td>TRILL-VER</td>
<td>N</td>
</tr>
<tr>
<td>14</td>
<td>VLAN-GROUP</td>
<td>Y</td>
</tr>
<tr>
<td>15</td>
<td>INT-LABEL</td>
<td>Y</td>
</tr>
<tr>
<td>16</td>
<td>RBCHANNELS</td>
<td>Y</td>
</tr>
<tr>
<td>17</td>
<td>AFFINITY</td>
<td>Y</td>
</tr>
<tr>
<td>18</td>
<td>LABEL-GROUP</td>
<td>Y</td>
</tr>
<tr>
<td>19</td>
<td>Segment Routing Algorithm</td>
<td>N</td>
</tr>
<tr>
<td>20</td>
<td>S-BFD Discriminators</td>
<td>N</td>
</tr>
<tr>
<td>21</td>
<td>Node-Admin-Tag</td>
<td>N</td>
</tr>
<tr>
<td>22</td>
<td>Segment Routing Local Block (SRLB)</td>
<td>N</td>
</tr>
<tr>
<td>23</td>
<td>Node MSD</td>
<td>Y</td>
</tr>
<tr>
<td>24</td>
<td>Segment Routing Mapping Server Preference (SRMS Preference)<
/td>
<td>N</td>
</tr>
<tr>
<td>25</td>
<td>SRv6 Capabilities</td>
<td>N</td>
</tr>
<tr>
<td>26</td>
<td>Flexible Algorithm Definition (FAD)</td>
<td>N</td>
</tr>
<tr>
<td>27</td>
<td>IS-IS Area Leader Sub-TLV</td>
<td>N</td>
</tr>
<tr>
<td>28</td>
<td>IS-IS Dynamic Flooding Sub-TLV</td>
<td>N</td>
</tr>
<tr>
<td>29</td>
<td>IP Algorithm Sub-TLV</td>
<td>N</td>
</tr>
<!-- [rfced] We believe it is intentional that value 30, assigned to "MP-TLV Sup
port for TLVs with implicit support" in this document, is not listed in Table 6.
Please let us know if this is incorrect.
<section anchor="sub_sub_asla" title="MP-TLV for IS-IS Sub-Sub-TLV Codep Original:
oints for Application-Specific Link Attributes"> | 30-160 | Unassigned | |
<t>
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis
-tlv-codepoints.xhtml#application-specific-link-attributes"/>)
</t>
<table anchor="table_sub_sub_asla"> -->
<name>IS-IS Sub-Sub-TLV Codepoints for Application-Specific Link Attribut <tr>
es</name> <td>30-160</td>
<thead> <td>Unassigned</td>
<tr> <td/>
<th align='center'>Value</th> </tr>
<th align='center'>Name</th> <tr>
<th align='center'>MP</th> <td>161</td>
</tr> <td>Flood Reflection Discovery</td>
</thead> <td>Y</td>
<tbody> </tr>
<tr> <tr>
<td>0-2</td> <td>162-255</td>
<td>Unassigned</td> <td>Unassigned</td>
<td></td> <td/>
</tr> </tr>
<tr> </tbody>
<td>3</td> </table>
<td>Administrative group (color)</td> </section>
<td>N</td> <section anchor="cap_sub">
</tr> <name>IS-IS Sub-Sub-TLVs for SRv6 Capabilities Sub-TLV</name>
<tr>
<td>4-8</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>9</td>
<td>Maximum link bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>10</td>
<td>Maximum reservable link bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>11</td>
<td>Unreserved bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>12-13</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>14</td>
<td>Extended Administrative Group</td>
<td>N</td>
</tr>
<tr>
<td>15-16</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>17</td>
<td>Generic Metric</td>
<td>Y</td>
</tr>
<tr>
<td>18</td>
<td>TE Default Metric</td>
<td>N</td>
</tr>
<tr>
<td>19-32</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>33</td>
<td>Unidirectional Link Delay</td>
<td>N</td>
</tr>
<tr>
<td>34</td>
<td>Min/Max Unidirectional Link Delay</td>
<td>N</td>
</tr>
<tr>
<td>35</td>
<td>Unidirectional Delay Variation</td>
<td>N</td>
</tr>
<tr>
<td>36</td>
<td>Unidirectional Link Loss</td>
<td>N</td>
</tr>
<tr>
<td>37</td>
<td>Unidirectional Residual Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>38</td>
<td>Unidirectional Available Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>39</td>
<td>Unidirectional Utilized Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>40-255</td>
<td>Unassigned</td>
<td></td>
</tr>
</tbody>
</table>
</section>
<section anchor="srlg_sub" title="MP-TLV for IS-IS Sub-TLVs for Application- <table anchor="table_cap_sub">
Specific SRLG TLV"> <name>IS-IS Sub-Sub-TLVs for SRv6 Capabilities Sub-TLV</name>
<t> <thead>
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis <tr>
-tlv-codepoints.xhtml#tlv-238"/>) <th>Value</th>
</t> <th>Name</th>
<th>MP</th>
</tr>
</thead>
<tbody>
<tr>
<td>0</td>
<td>Reserved</td>
<td/>
</tr>
<tr>
<td>1-255</td>
<td>Unassigned</td>
<td/>
</tr>
</tbody>
</table>
</section>
<section anchor="BIER_SUB">
<name>MP-TLV IS-IS Sub-Sub-TLVs for BIER Info Sub-TLV</name>
<table anchor="table_srlg_sub"> <table anchor="table_bier_sub">
<name>IS-IS Sub-TLVs for Application-Specific SRLG TLV</name> <name>IS-IS Sub-Sub-TLVs for BIER Info Sub-TLV</name>
<thead> <thead>
<tr> <tr>
<th align='center'>Value</th> <th>Value</th>
<th align='center'>Name</th> <th>Name</th>
<th align='center'>MP</th> <th>MP</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr> <tr>
<td>0-3</td> <td>0</td>
<td>Unassigned</td> <td>Unassigned</td>
<td></td> <td/>
</tr> </tr>
<tr> <tr>
<td>4</td> <td>1</td>
<td>Link Local/Remote Identifiers</td> <td>BIER MPLS Encapsulation</td>
<td>N</td> <td>N</td>
</tr> </tr>
<tr> <tr>
<td>5</td> <td>2</td>
<td>Unassigned</td> <td>BIER PHP Request</td>
<td></td> <td>N</td>
</tr> </tr>
<tr> <tr>
<td>6</td> <td>3-255</td>
<td>IPv4 interface address</td> <td>Unassigned</td>
<td>N</td> <td/>
</tr> </tr>
<tr> </tbody>
<td>7</td> </table>
<td>Unassigned</td> </section>
<td></td> <section anchor="segid_sub">
</tr> <name>MP-TLV for IS-IS Sub-TLVs for Segment Identifier/Label Binding T
<tr> LVs</name>
<td>8</td>
<td>IPv4 neighbor address</td>
<td>N</td>
</tr>
<tr>
<td>9-11</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>12</td>
<td>IPv6 Interface Address</td>
<td>N</td>
</tr>
<tr>
<td>13</td>
<td>IPv6 Neighbor Address</td>
<td>N</td>
</tr>
<tr>
<td>14-255</td>
<td>Unassigned</td>
<td></td>
</tr>
</tbody>
</table>
</section>
<section anchor="SRv6_sub_sub" title="MP-TLV for IS-IS Sub-Sub-TLVs for <table anchor="table_segid_sub">
SRv6 SID Sub-TLVs"> <name>IS-IS Sub-TLVs for Segment Identifier/Label Binding TLVs</name
<t> >
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis <thead>
-tlv-codepoints.xhtml#isis-sub-sub-tlvs-srv6-sid-sub-tlvs"/>) <tr>
</t> <th>Value</th>
<th>Name</th>
<th>MP</th>
</tr>
</thead>
<tbody>
<tr>
<td>0</td>
<td>Reserved</td>
<td/>
</tr>
<tr>
<td>1</td>
<td>SID/Label</td>
<td>N</td>
</tr>
<tr>
<td>2</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>3</td>
<td>Prefix Segment Identifier</td>
<td>N</td>
</tr>
<tr>
<td>4-255</td>
<td>Unassigned</td>
<td/>
</tr>
</tbody>
</table>
</section>
<section anchor="sub_sub_asla">
<name>MP-TLV for IS-IS Sub-Sub-TLV Codepoints for Application-Specific
Link Attributes</name>
<table anchor="table_srv6_subsub"> <table anchor="table_sub_sub_asla">
<name>IS-IS Sub-Sub-TLVs for SRv6 SID Sub-TLVs</name> <name>IS-IS Sub-Sub-TLV Codepoints for Application-Specific Link Att
<thead> ributes</name>
<tr> <thead>
<th align='center'>Value</th> <tr>
<th align='center'>Name</th> <th>Value</th>
<th align='center'>MP</th> <th>Name</th>
</tr> <th>MP</th>
</thead> </tr>
<tbody> </thead>
<tr> <tbody>
<td>0</td> <tr>
<td>Reserved</td> <td>0-2</td>
<td></td> <td>Unassigned</td>
</tr> <td/>
<tr> </tr>
<td>1</td> <tr>
<td>SRv6 SID Structure</td> <td>3</td>
<td>N</td> <td>Administrative group (color)</td>
</tr> <td>N</td>
<tr> </tr>
<td>2-255</td> <tr>
<td>Unassigned</td> <td>4-8</td>
<td></td> <td>Unassigned</td>
</tr> <td/>
</tbody> </tr>
</table> <tr>
</section> <td>9</td>
<td>Maximum link bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>10</td>
<td>Maximum reservable link bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>11</td>
<td>Unreserved bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>12-13</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>14</td>
<td>Extended Administrative Group</td>
<td>N</td>
</tr>
<tr>
<td>15-16</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>17</td>
<td>Generic Metric</td>
<td>Y</td>
</tr>
<tr>
<td>18</td>
<td>TE Default metric</td>
<td>N</td>
</tr>
<tr>
<td>19-32</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>33</td>
<td>Unidirectional Link Delay</td>
<td>N</td>
</tr>
<tr>
<td>34</td>
<td>Min/Max Unidirectional Link Delay</td>
<td>N</td>
</tr>
<tr>
<td>35</td>
<td>Unidirectional Delay Variation</td>
<td>N</td>
</tr>
<tr>
<td>36</td>
<td>Unidirectional Link Loss</td>
<td>N</td>
</tr>
<tr>
<td>37</td>
<td>Unidirectional Residual Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>38</td>
<td>Unidirectional Available Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>39</td>
<td>Unidirectional Utilized Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>40-255</td>
<td>Unassigned</td>
<td/>
</tr>
</tbody>
</table>
</section>
<section anchor="srlg_sub">
<name>MP-TLV for IS-IS Sub-TLVs for Application-Specific SRLG TLV</nam
e>
<section anchor="Flex_sub_sub" title="MP-TLV for IS-IS Sub-Sub-TLVs <table anchor="table_srlg_sub">
for Flexible Algorithm Definition Sub-TLV"> <name>IS-IS Sub-TLVs for Application-Specific SRLG TLV</name>
<t> <thead>
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis <tr>
-tlv-codepoints.xhtml#isis-sub-sub-tlvs-flexible-algorithm-definition-sub-tlv"/> <th>Value</th>
) <th>Name</th>
</t> <th>MP</th>
</tr>
</thead>
<tbody>
<tr>
<td>0-3</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>4</td>
<td>Link Local/Remote Identifiers</td>
<td>N</td>
</tr>
<tr>
<td>5</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>6</td>
<td>IPv4 interface address</td>
<td>N</td>
</tr>
<tr>
<td>7</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>8</td>
<td>IPv4 neighbor address</td>
<td>N</td>
</tr>
<tr>
<td>9-11</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>12</td>
<td>IPv6 Interface Address</td>
<td>N</td>
</tr>
<tr>
<td>13</td>
<td>IPv6 Neighbor Address</td>
<td>N</td>
</tr>
<tr>
<td>14-255</td>
<td>Unassigned</td>
<td/>
</tr>
</tbody>
</table>
</section>
<section anchor="SRv6_sub_sub">
<name>MP-TLV for IS-IS Sub-Sub-TLVs for SRv6 SID Sub-TLVs</name>
<table anchor="table_flex_subsub"> <table anchor="table_srv6_subsub">
<name>IS-IS Sub-Sub-TLVs for Flexible Algorithm Definition Sub-TLV</name> <name>IS-IS Sub-Sub-TLVs for SRv6 SID Sub-TLVs</name>
<thead> <thead>
<tr> <tr>
<th align='center'>Value</th> <th>Value</th>
<th align='center'>Name</th> <th>Name</th>
<th align='center'>MP</th> <th>MP</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr> <tr>
<td>0</td> <td>0</td>
<td>Reserved</td> <td>Reserved</td>
<td></td> <td/>
</tr> </tr>
<tr> <tr>
<td>1</td> <td>1</td>
<td>Flexible Algorithm Exclude Admin Group</td> <td>SRv6 SID Structure</td>
<td>N</td> <td>N</td>
</tr> </tr>
<tr> <tr>
<td>2</td> <td>2-255</td>
<td>Flexible Algorithm Include-Any Admin Group</td> <td>Unassigned</td>
<td>N</td> <td/>
</tr> </tr>
<tr> </tbody>
<td>3</td> </table>
<td>Flexible Algorithm Include-All Admin Group</td> </section>
<td>N</td> <section anchor="Flex_sub_sub">
</tr> <name>MP-TLV for IS-IS Sub-Sub-TLVs for Flexible Algorithm Definition
<tr> Sub-TLV</name>
<td>4</td>
<td>Flexible Algorithm Definition Flags</td>
<td>N</td>
</tr>
<tr>
<td>5</td>
<td>Flexible Algorithm Exclude SRLG</td>
<td>N</td>
</tr>
<tr>
<td>6</td>
<td>IS-IS Exclude Minimum Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>7</td>
<td>IS-IS Exclude Maximum Delay</td>
<td>N</td>
</tr>
<tr>
<td>8</td>
<td>IS-IS Reference Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>9</td>
<td>IS-IS Threshold Metric</td>
<td>N</td>
</tr>
<tr>
<td>10-255</td>
<td>Unassigned</td>
<td></td>
</tr>
</tbody>
</table>
</section>
<section anchor="reflect_sub" title="MP-TLV for IS-IS Sub-Sub-TLVs for F <table anchor="table_flex_subsub">
lood Reflection Discovery Sub-TLV"> <name>IS-IS Sub-Sub-TLVs for Flexible Algorithm Definition Sub-TLV</
<t> name>
(<eref target="https://www.iana.org/assignments/isis-tlv-codepoints/isis <thead>
-tlv-codepoints.xhtml#isis-sub-sub-tlvs-flood-reflection-discovery-sub-tlv"/>) <tr>
</t> <th>Value</th>
<th>Name</th>
<th>MP</th>
</tr>
</thead>
<tbody>
<tr>
<td>0</td>
<td>Reserved</td>
<td/>
</tr>
<tr>
<td>1</td>
<td>Flexible Algorithm Exclude Admin Group</td>
<td>N</td>
</tr>
<tr>
<td>2</td>
<td>Flexible Algorithm Include-Any Admin Group</td>
<td>N</td>
</tr>
<tr>
<td>3</td>
<td>Flexible Algorithm Include-All Admin Group</td>
<td>N</td>
</tr>
<tr>
<td>4</td>
<td>Flexible Algorithm Definition Flags</td>
<td>N</td>
</tr>
<tr>
<td>5</td>
<td>Flexible Algorithm Exclude SRLG</td>
<td>N</td>
</tr>
<tr>
<td>6</td>
<td>IS-IS Exclude Minimum Bandwidth</td>
<td>N</td>
</tr>
<tr>
<td>7</td>
<td>IS-IS Exclude Maximum Delay</td>
<td>N</td>
</tr>
<tr>
<td>8</td>
<td>IS-IS Reference Bandwidth</td>
<td>N</td>
</tr>
<!-- [rfced] Note that we have updated the Description for Type 9 in Table 13 to
match what appears in the IANA registry.
<table anchor="table_reflect_sub"> Original:
<name>IS-IS Sub-Sub-TLVs for Flood Reflection Discovery Sub-TLV</name> | 9 | IS-IS Threshold Metric | N |
<thead>
<tr>
<th align='center'>Value</th>
<th align='center'>Name</th>
<th align='center'>MP</th>
</tr>
</thead>
<tbody>
<tr>
<td>0-160</td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>161</td>
<td>Flood Reflection Discovery Tunnel Encapsulation Attribute</td>
<td>N</td>
</tr>
<tr>
<td>162-255</td>
<td>Unassigned</td>
<td></td>
</tr>
</tbody>
</table>
</section>
</section>
</section>
<section anchor="Security" title="Security Considerations"> Current:
| 9 | IS-IS Bandwidth Metric | N |
-->
<tr>
<td>9</td>
<td>IS-IS Bandwidth Metric</td>
<td>N</td>
</tr>
<tr>
<td>10-255</td>
<td>Unassigned</td>
<td/>
</tr>
</tbody>
</table>
</section>
<section anchor="reflect_sub">
<name>MP-TLV for IS-IS Sub-Sub-TLVs for Flood Reflection Discovery Sub
-TLV</name>
<table anchor="table_reflect_sub">
<name>IS-IS Sub-Sub-TLVs for Flood Reflection Discovery Sub-TLV</nam
e>
<thead>
<tr>
<th>Value</th>
<th>Name</th>
<th>MP</th>
</tr>
</thead>
<tbody>
<tr>
<td>0-160</td>
<td>Unassigned</td>
<td/>
</tr>
<tr>
<td>161</td>
<td>Flood Reflection Discovery Tunnel Encapsulation Attribute</t
d>
<td>N</td>
</tr>
<tr>
<td>162-255</td>
<td>Unassigned</td>
<td/>
</tr>
</tbody>
</table>
</section>
</section>
</section>
<section anchor="Security">
<name>Security Considerations</name>
<t> <t>
This document creates no new security issues for IS-IS. Additional This document creates no new security issues for IS-IS. Additional
instances of existing TLVs expose no new information. instances of existing TLVs expose no new information.
</t> </t>
<t> <t>
Note that support for MP-TLV may result in an implementation Note that support for MP-TLV may result in an implementation
being more robust in handling unexpected occurrences of MP-TLV. being more robust in handling unexpected occurrences of MP-TLV.
</t> </t>
<t> <t>
Security concerns for IS-IS are addressed in <xref Security concerns for IS-IS are addressed in <xref target="ISO10589"/>,
target="ISO10589"/>, <xref target="RFC5304"/>, and <xref <xref target="RFC5304"/>, and <xref target="RFC5310"/>.
target="RFC5310"/>.
</t> </t>
</section> </section>
<section anchor="Contrib" title="Contributors">
<t>The following people gave a substantial contribution to the content of th
is document and should be considered coauthors:</t>
<contact fullname="Chris Bowers" initials="C." surname="Bowers">
<address>
<email>cbowers107@gmail.com</email>
</address>
</contact>
</section>
</middle> </middle>
<back> <back>
<references title="Normative References"> <displayreference target="I-D.ietf-lsr-isis-pics-yang" to="PICS-YANG"/>
<?rfc include="reference.RFC.2119"?>
<?rfc include='reference.RFC.5120'?>
<?rfc include='reference.RFC.5304'?>
<?rfc include='reference.RFC.5305'?>
<?rfc include='reference.RFC.5307'?>
<?rfc include='reference.RFC.5310'?>
<?rfc include='reference.RFC.6119'?>
<?rfc include='reference.RFC.6213'?>
<?rfc include='reference.RFC.7356'?>
<?rfc include='reference.RFC.7981'?>
<?rfc include='reference.RFC.8174'?>
<?rfc include='reference.RFC.8202'?>
<?rfc include='reference.RFC.8918'?>
<?rfc include='reference.RFC.9479'?>
<reference anchor="ISO10589" target="ISO/IEC 10589:2002">
<front>
<title>
Intermediate system to Intermediate system routing information excha
nge protocol for use in conjunction with the Protocol for providing the Connecti
onless-mode Network Service (ISO 8473)
</title>
<author fullname="ISO" initials="" surname="ISO">
<organization>IANA</organization>
</author>
<date month="November" year="2002"/>
</front>
</reference>
</references>
<references title="Informative References"> <references>
<?rfc include='reference.I-D.ietf-lsr-isis-pics-yang'?> <name>References</name>
<references>
<name>Normative References</name>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2
119.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
120.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
304.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
305.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
307.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
310.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6
119.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6
213.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7
356.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7
981.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
174.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
202.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
918.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9
479.xml"/>
<reference anchor="ISO10589" target="https://www.iso.org/standard/30932.
html">
<front>
<title>Information technology - Telecommunications and information e
xchange between systems - Intermediate System to Intermediate System intra-domai
n routeing information exchange protocol for use in conjunction with the protoco
l for providing the connectionless-mode network service (ISO 8473)
</title>
<author>
<organization>ISO/IEC</organization>
</author>
<date month="November" year="2002"/>
</front>
<seriesInfo name="ISO/IEC" value="10589:2002"/>
</reference>
</references>
<references>
<name>Informative References</name>
<!-- [I-D.ietf-lsr-isis-pics-yang]
draft-ietf-lsr-isis-pics-yang-01
IESG State: I-D Exists
-->
<xi:include href="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.
ietf-lsr-isis-pics-yang.xml"/>
</references>
</references> </references>
<!-- [rfced] Please review the "Inclusive Language" portion of the online
Style Guide <https://www.rfc-editor.org/styleguide/part2/#inclusive_language>
and let us know if any changes are needed. Updates of this nature typically
result in more precise language, which is helpful for readers.
Note that our script did not flag any words in particular, but this should
still be reviewed as a best practice.
-->
<section anchor="Contrib" numbered="false">
<name>Contributors</name>
<t>The following individual made a substantial contribution to the content
of this document and should be considered a coauthor:</t>
<contact fullname="Chris Bowers" initials="C." surname="Bowers">
<address>
<email>cbowers107@gmail.com</email>
</address>
</contact>
</section>
</back> </back>
</rfc> </rfc>
 End of changes. 111 change blocks. 
1879 lines changed or deleted 2082 lines changed or added

This html diff was produced by rfcdiff 1.48.