rfc9658xml2.original.xml   rfc9658.xml 
<?xml version="1.0" encoding="US-ASCII"?> <?xml version='1.0' encoding='UTF-8'?>
<!-- $Id: draft-wijnands-mpls-mldp-multi-topology-00.xml 2018-10-10 skraza $ -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [ <!DOCTYPE rfc [
<!ENTITY rfc2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC <!ENTITY nbsp "&#160;">
.2119.xml"> <!ENTITY zwsp "&#8203;">
<!ENTITY nbhy "&#8209;">
<!ENTITY wj "&#8288;">
]> ]>
<rfc category="std" docName="draft-ietf-mpls-mldp-multi-topology-09" <rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" docName="draft-ie
ipr="trust200902" updates="7307"> tf-mpls-mldp-multi-topology-09" number="9658" ipr="trust200902" consensus="true"
<?rfc toc="yes" ?> updates="7307" obsoletes="" submissionType="IETF" xml:lang="en" tocInclude="tru
<?rfc compact="yes"?> e" symRefs="true" sortRefs="true" version="3">
<?rfc subcompact="no"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes" ?>
<front> <front>
<title abbrev="Multi-Topology mLDP">Multipoint LDP Extensions for Multi-Topo logy Routing</title>
<title abbrev="Multi-Topology mLDP">mLDP Extensions for Multi-Topology Routi <!-- [rfced] Please note that the title of the document has been
ng</title> updated as follows:
Abbreviations have been expanded per Section 3.6 of RFC 7322 ("RFC
Style Guide"). Please review.
Original:
mLDP Extensions for Multi-Topology Routing
Current:
Multipoint LDP Extensions for Multi-Topology Routing
-->
<seriesInfo name="RFC" value="9658"/>
<author fullname="IJsbrand Wijnands" initials="IJ." surname="Wijnands"> <author fullname="IJsbrand Wijnands" initials="IJ." surname="Wijnands">
<organization>Individual</organization> <organization>Individual</organization>
<address> <address>
<postal> <email>ice@braindump.be</email>
<street></street>
<!-- Reorder these if your country does things differently -->
<city></city>
<region></region>
<code></code>
<country></country>
</postal>
<phone></phone>
<email> ice@braindump.be</email>
<!-- uri and facsimile elements may also be added -->
</address> </address>
</author> </author>
<author fullname="Mankamana Mishra" initials="M." surname="Mishra" role="edi
<author fullname="Mankamana Mishra" initials="M." surname="Mishra (Edito tor">
r)">
<organization>Cisco Systems, Inc.</organization> <organization>Cisco Systems, Inc.</organization>
<address> <address>
<postal> <postal>
<street>821 Alder Drive</street> <street>821 Alder Drive</street>
<city>Milpitas</city> <city>Milpitas</city>
<code>95035</code> <code>95035</code>
<region>CA</region> <region>CA</region>
<country>USA</country> <country>United States of America</country>
</postal> </postal>
<email>mankamis@cisco.com</email> <email>mankamis@cisco.com</email>
</address> </address>
</author> </author>
<author fullname="Kamran Raza" initials="K." surname="Raza"> <author fullname="Kamran Raza" initials="K." surname="Raza">
<organization>Cisco Systems, Inc.</organization> <organization>Cisco Systems, Inc.</organization>
<address> <address>
<postal> <postal>
<street>2000 Innovation Drive</street> <street>2000 Innovation Drive</street>
<city>Kanata</city> <city>Kanata</city>
<code>K2K-3E8</code> <code>K2K-3E8</code>
<region>ON</region> <region>ON</region>
<country>Canada</country> <country>Canada</country>
</postal> </postal>
<email>skraza@cisco.com</email> <email>skraza@cisco.com</email>
</address> </address>
</author> </author>
<author initials='Z.' surname='Zhang' fullname='Zhaohui Zhang'> <author initials="Z." surname="Zhang" fullname="Zhaohui Zhang">
<organization>Juniper Networks</organization> <organization>Juniper Networks</organization>
<address><postal> <address>
<street>10 Technology Park Dr.</street> <postal>
<city>Westford</city> <region></region> <street>10 Technology Park Dr.</street>
<code>MA 01886</code> <city>Westford</city>
<country>US</country> <region>MA</region>
</postal> <code>01886</code>
<email>zzhang@juniper.net</email></address> <country>United States of America</country>
</postal>
<email>zzhang@juniper.net</email>
</address>
</author> </author>
<!--[rfced] Arkadiy: is it okay to abbreviate your affiliation in the
header (the full organization title would appear in the Authors'
Addresses section)? It looks like this was handled differently
in RFCs 9272 and 9350, and with the capping scheme used, we
wondered if this suggestion would fit your intent?
Original:
A. Gulko
Edward Jones wealth management
Current:
A. Gulko
Edward Jones
-->
<author initials="A." surname="Gulko" fullname="Arkadiy Gulko"> <author initials="A." surname="Gulko" fullname="Arkadiy Gulko">
<organization>Edward Jones wealth management</organization> <organization abbrev="Edward Jones">Edward Jones Wealth Management</organi zation>
<address> <address>
<postal> <postal>
<street></street> <country>United States of America</country>
<city></city>
<code></code>
<country>USA</country>
</postal> </postal>
<email>Arkadiy.gulko@edwardjones.com</email> <email>Arkadiy.gulko@edwardjones.com</email>
</address> </address>
</author> </author>
<date month="September" year="2024"/>
<area>RTG</area>
<workgroup>mpls</workgroup>
<date day="20" month="May" year="2024"/> <keyword>MPLS</keyword>
<keyword>mLDP</keyword>
<keyword>Multi-topology</keyword>
<area>Routing</area> <abstract>
<workgroup>MPLS Working Group</workgroup>
<keyword>MPLS</keyword>
<keyword>mLDP</keyword>
<keyword>Multi-topology</keyword>
<abstract> <!--[rfced] Regarding the following text (from the Abstract and Intro, respectiv
<t> ely):
Multi-Topology Routing (MTR) is a technology to enable service
Original:
Flexible Algorithm (FA) is another mechanism of creating a
sub-topology within a topology using defined topology constraints and
computation algorithm.
and
FA can be seen as creating a sub-topology within a topology using
defined topology constraints and computation algorithms.
a) We will update to use the definite article "the" before FA. Please
let us know any objections.
b) Is it redundant use of "topology" to say (paraphrasing): creating a
sub-topology within a topology using topology constraints? Maybe this
could be rephrased?
c) Should the document be updated to use the same sentence in both of
these places?
-->
<!--[rfced] We had a few questions regarding the following text
(please read them all before taking action):
Original:
This document specifies extensions to mLDP to support MTR, with an
algorithm, in order for Mulipoint LSPs(Label Switched Paths) to follow
a particular topology and algorithm.
a) The placement of "with an algorithm" might cause the reader pause.
Can this sentence be rephrased?
b) Is it redundant to "support with an algorithm" and later "to follow
an algorithm"? Again, perhaps a rephrase?
c) There is a similar sentence in the Introduction. Should this text
(and any other that is repeated between Abstract and Intro) be made
more uniform?
Current:
This document specifies extensions to mLDP to support the use of
MTR/IPA such that when building multipoint LSPs, it can follow a
particular topology and algorithm.
-->
<t>
Multi-Topology Routing (MTR) is a technology that enables service
differentiation within an IP network. Flexible Algorithm (FA) is differentiation within an IP network. Flexible Algorithm (FA) is
another mechanism of creating a sub-topology within a topology using another mechanism for creating a sub-topology within a topology using
defined topology constraints and computation algorithm. In order to defined topology constraints and computation algorithms. In order to
deploy mLDP (Multipoint label distribution protocol) in a network deploy Multipoint LDP (mLDP) in a network
that supports MTR, FA, or other methods of signaling non-default that supports MTR, FA, or other methods of signaling non-default
IGP algorithms, mLDP is required to become topology and IGP Algorithms (IPAs), mLDP is required to become topology and
algorithm aware. This document specifies extensions to mLDP to support MTR, algorithm aware. This document specifies extensions to mLDP to support MTR,
with an algorithm, in order for Multipoint LSPs(Label Switched Paths) to foll with an algorithm, in order for multipoint LSPs (Label Switched Paths) to fol
ow low
a particular topology and algorithm. It updates <xref target="RFC7307"/> by a a particular topology and algorithm. It updates RFC 7307 by allocating
llocating eight bits from a previously reserved field to be used as the IPA field.
eight bits from a previously reserved field to be used as the IGP Algorithm </t>
(IPA) field. </abstract>
</t>
</abstract>
</front> </front>
<middle> <middle>
<section title="Glossary"> <section numbered="true" toc="default">
<name>Introduction</name>
<t> <t>
<list style="empty"> <!--[rfced] Please consider clarifying the slash with "and", "or", or
<t> FA - Flexible Algorithm </t> "and/or" for the ease of the reader in the following sentences:
<t> FEC - Forwarding Equivalence Class </t>
<t> IGP - Interior Gateway Protocol </t>
<t> IPA - IGP Algorithm </t>
<t> LDP - Label Distribution Protocol </t>
<t> LSP - Label Switched Path </t>
<t> mLDP - Multipoint LDP </t>
<t> MP - Multipoint (P2MP or MP2MP) </t>
<t> MP2MP - Multipoint-to-Multipoint </t>
<t> MT - Multi-Topology </t>
<t> MT-ID - Multi-Topology Identifier </t>
<t> MTR - Multi-Topology Routing </t>
<t> MVPN - Multicast over Virtual Private Network defined in secti
on 2.3 of <xref target="RFC6513"/> </t>
<t> P2MP - Point-to-Multipoint </t>
<t> PMSI - Provider Multicast Service Interfaces <xref target="RFC
6513"/> </t>
</list> Original:
</t> To support MTR, an IGP maintains independent IP topologies, termed as
</section> "Multi- Topologies" (MT), and computes/installs routes per topology.
<section title="Introduction"> -->
<t>
Multi-Topology Routing (MTR) is a technology to enable service differenti <!--[rfced] How does this parenthetical relate to the sentence? Are
ation within an IP network. IGP protocols (OSPF and IS-IS) and LDP have already these examples? The only ones?
been extended to support MTR. To support MTR, an IGP maintains independent IP to
pologies, termed as "Multi-Topologies" (MT), and computes/installs routes per to Original:
pology. OSPF extensions <xref target="RFC4915"/> and IS-IS extensions <xref targ IGP protocols (OSPF and IS-IS) and LDP have already been extended to
et="RFC5120"/> specify the MT extensions under respective IGPs. To support IGP M support MTR.
T, similar LDP extensions <xref target="RFC7307"/> have been specified to make L
DP MT-aware and be able to setup unicast Label Switched Paths (LSPs) along IGP M Perhaps:
T routing paths. IGPs (e.g., OSPF and IS-IS) and LDP have already been extended to
</t> support MTR.
Perhaps:
IGPs (i.e., OSPF and IS-IS) and LDP have already been extended to
support MTR.
Perhaps:
OSPF, IS-IS, and LDP have already been extended to
support MTR.
-->
Multi-Topology Routing (MTR) is a technology that enables service differentiatio
n within an IP network. IGP protocols (OSPF and IS-IS) and LDP have already been
extended to support MTR. To support MTR, an IGP maintains independent IP topolo
gies, called "Multi-Topologies" (or "MTs"), and computes/installs routes per top
ology. OSPF extensions (see <xref target="RFC4915" format="default"/>) and IS-IS
extensions (see <xref target="RFC5120" format="default"/>) specify the MT exten
sions under respective IGPs. To support IGP MT, similar LDP extensions (see <xr
ef target="RFC7307" format="default"/>) have been specified to make LDP be MT aw
are and to be able to set up unicast Label Switched Paths (LSPs) along IGP MT ro
uting paths.
</t>
<t> <t>
<!--[rfced] We had a few questions about the following text:
Original:
A flexible Algorithm is a mechanism to create a sub- topology, but in
the future, different algorithms might be defined for how to achieve
that. For that reason, in the remainder of this document, we'll refer
to this as the IGP Algorithm.
a) Please review that our rephrase does not change your intent.
Current:
At the time of writing, an FA is a mechanism to create a sub-topology;
in the future, different algorithms might be defined for this purpose.
Therefore, in the remainder of this document, we'll refer to
this as the "IGP Algorithm" or "IPA".
b) How may we further edit to clarify "this" to the reader? Is it the
FA? Is it anything that can create a sub-topology?
c) Is an FA the only mechanism to create a sub-topology at the time of
writing? If so, perhaps an update to state this clearly would help
the reader.
d) Later in the text, we see:
Throughout this document, the term Flexible Algorithm (FA)
shall denote the process of generating a sub-topology and signaling
it through Interior Gateway Protocol (IGP).
Is this at all confusing or redundant with the "Original" text at the
top of this question? In the "Original" at the top of this query, it
sounds as if the term IPA is going to be used instead of FA. Now we
are getting info on what FA means....(This probably depends on your
responses to the previous parts of this question.) Please review and
consider if a more thorough rewrite would be helpful to the reader.
-->
A more lightweight mechanism to define constraint-based topologies is A more lightweight mechanism to define constraint-based topologies is
the Flexible Algorithm (FA) <xref target="RFC9350"/>. FA can be seen as creat ing a the Flexible Algorithm (FA) (see <xref target="RFC9350" format="default"/>). The FA can be seen as creating a
sub-topology within a topology using defined topology constraints and sub-topology within a topology using defined topology constraints and
computation algorithms. This can be done within an MTR topology or computation algorithms. This can be done within an MTR topology or
the default Topology. An instance of such a sub-topology is the default topology. An instance of such a sub-topology is
identified by a 1 octet value (Flex-Algorithm) as documented in identified by a 1-octet value (Flex-Algorithm) as documented in
<xref target="RFC9350"/>. A flexible Algorithm is a mechanism to create a sub <xref target="RFC9350" format="default"/>. At the time of writing, an FA is
- a mechanism to create a sub-topology; in
topology, but in the future, different algorithms might be defined for the future, different algorithms might be defined for this purpose. Therefore,
how to achieve that. For that reason, in the remainder of this in the remainder of this
document, we'll refer to this as the IGP Algorithm. The IGP Algorithm (IPA) document, we'll refer to this as the "IGP Algorithm" or "IPA". The IPA
Field <xref target="MT_IP_AFI"/> <xref target="Typed_Wildcard_Fec"/> is an 8- field (see Sections <xref target="MT_IP_AFI" format="counter"/> and <xref tar
bit identifier for the algorithm. get="Typed_Wildcard_Fec" format="counter"/>) is an 8-bit identifier for the algo
The permissible values are tracked in the IANA IGP Algorithm Types rithm.
registry <xref target="IANA-IGP-ALGO-TYPES"/>. The permissible values are tracked in the "IGP Algorithm Types"
registry <xref target="IANA-IGP-ALGO-TYPES" format="default"/>.
</t> </t>
<t> <t>
Throughout this document, the term Flexible Algorithm (FA) shall denote the p Throughout this document, the term "Flexible Algorithm" (or "FA") shall denot
rocess of generating a sub-topology and signaling it through Interior Gateway Pr e the process of generating a sub-topology and signaling it through the IGP. How
otocol (IGP). However, it is essential to note that the procedures outlined in t ever, it is essential to note that the procedures outlined in this document are
his document are not exclusively applicable to Flexible Algorithm but are extend not exclusively applicable to the FA: they are extendable to any non-default alg
able to any non-default algorithm as well. orithm as well.
</t> </t>
<t>
<t> <!--[rfced] We had a few questions regarding the following text:
Multipoint LDP (mLDP) refers to extensions in LDP to setup multi-point LS
Ps (point-to-multipoint (P2MP) or multipoint-to-multipoint (MP2MP)), by means of
a set of extensions and procedures defined in <xref target="RFC6388"/>. In orde
r to deploy mLDP in a network that supports MTR and FA, mLDP is required to beco
me topology and algorithm aware. This document specifies extensions to mLDP to s
upport MTR/IGP Algorithm such that when building a Multi-Point LSPs it can follo
w a particular topology and algorithm. This means that the identifier for the pa
rticular topology to be used by mLDP have to become a 2-tuple (MTR Topology Id,
IGP Algorithm).
</t>
</section> a) We see sentences that are similar in the Abstract and Intro. May
we update both to the suggested text below (note - the abstract would
have any first use abbreviations expanded)?
<section title="Specification of Requirements"> Original 1 (from the Abstract):
<t> This document specifies extensions to mLDP to support MTR, with an
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL algorithm, in order for Multipoint LSPs(Label Switched Paths) to
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", follow a particular topology and algorithm.
"MAY", and "OPTIONAL" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when Original 2 (from the Intro):
, and only when, they This document specifies extensions to mLDP to support MTR/IGP
appear in all capitals, as shown here. Algorithm such that when building a Multi-Point LSPs it can follow a
particular topology and algorithm.
Perhaps:
This document specifies extensions to mLDP to support MTR and the IPA
so that Multipoint LSPs can follow a particular topology and
algorithm.
b) Depending on the answer to the query above (this may become moot):
In the following, to what does "it" refer? Please note that we have
made other edits to this text already.
Original:
This document specifies extensions to mLDP to support MTR/IGP
Algorithm such that when building a Multi-Point LSPs, it can follow a
particular topology and algorithm.
Current:
This document specifies extensions to mLDP to support the use of
MTR/IPA such that when building multipoint LSPs, it can follow a
particular topology and algorithm.
-->
"Multipoint LDP" (or "mLDP") refers to extensions in LDP to set up multip
oint LSPs (i.e., point-to-multipoint (P2MP) or multipoint-to-multipoint (MP2MP)
LSPs) by means of a set of extensions and procedures defined in <xref target="RF
C6388" format="default"/>. In order to deploy mLDP in a network that supports MT
R and the FA, mLDP is required to become topology and algorithm aware. This docu
ment specifies extensions to mLDP to support the use of MTR/IPA such that when b
uilding multipoint LSPs, it can follow a particular topology and algorithm. Ther
efore, the identifier for the particular topology to be used by mLDP has to beco
me a 2-tuple {MTR Topology Id, IPA}.
</t> </t>
</section> </section>
<section numbered="true" toc="default">
<section title="MT Scoped mLDP FECs"> <!--[rfced] In the list of abbreviations, we see some citations as
pointers to more information (for 2 entries). Would you like
to add citations for other items in the list (e.g., FA [RFC9350])? Or
would you like to remove the citations as they are used when the
abbreviation is introduced in the body of the document?
-->
<name>Terminology</name>
<section numbered="true" toc="default">
<name>Abbreviations</name>
<dl>
<dt>FA:</dt><dd>Flexible Algorithm</dd>
<dt>FEC:</dt><dd>Forwarding Equivalence Class</dd>
<dt>IGP:</dt><dd>Interior Gateway Protocol</dd>
<dt>IPA:</dt><dd>IGP Algorithm</dd>
<dt>LDP:</dt><dd>Label Distribution Protocol</dd>
<dt>LSP:</dt><dd>Label Switched Path</dd>
<dt>mLDP:</dt><dd>Multipoint LDP</dd>
<dt>MP:</dt><dd>Multipoint</dd>
<dt>MP2MP:</dt><dd>Multipoint-to-Multipoint</dd>
<dt>MT:</dt><dd>Multi-Topology</dd>
<dt>MT-ID:</dt><dd>Multi-Topology Identifier</dd>
<dt>MTR:</dt><dd>Multi-Topology Routing</dd>
<dt>MVPN:</dt><dd>Multicast VPN in <xref target="RFC6513" sectionFormat
="of" section="2.3"/></dd>
<dt>P2MP</dt><dd>Point-to-Multipoint</dd>
<dt>PMSI</dt><dd>Provider Multicast Service Interfaces <xref target="RF
C6513" format="default"/></dd>
</dl>
</section>
<section numbered="true" toc="default">
<name>Specification of Requirements</name>
<t>
The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>",
"<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>
",
"<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>",
"<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to
be
interpreted as described in BCP&nbsp;14 <xref target="RFC2119"/> <xref
target="RFC8174"/> when, and only when, they appear in all capitals, as
shown here.
</t>
</section>
</section>
<section numbered="true" toc="default">
<name>MT-Scoped mLDP FECs</name>
<t> <t>
As defined in <xref target="RFC7307"/>, MPLS Multi-Topology Identifier (M
T-ID) is an identifier that is used to associate an LSP with a certain MTR topol <!--[rfced] In the following text, it seems like "in order to" and "so
ogy. In the context of MP LSPs, this identifier is part of the mLDP FEC encoding that" make this sentence tough to get through. May we update as
so that LDP peers are able to setup an MP LSP via their own defined MTR policy. follows for the ease of the reader?
In order to avoid conflicting MTR policies for the same mLDP FEC, the MT-ID nee
ds to be a part of the FEC, so that different MT-ID values will result in unique Original:
MP-LSP FEC elements. In order to avoid conflicting MTR policies for the same mLDP FEC, the
MT-ID needs to be a part of the FEC, so that different MT-ID values
will result in unique MP-LSP FEC elements.
Perhaps:
In order to avoid conflicting MTR policies for the same mLDP FEC, the
MT-ID needs to be a part of the FEC. This ensures that different MT-ID values
will result in unique MP-LSP FEC elements.
-->
As defined in <xref target="RFC7307" format="default"/>, an MPLS Multi-To
pology Identifier (MT-ID) is used to associate an LSP with a certain MTR topolog
y. In the context of MP LSPs, this identifier is part of the mLDP FEC encoding;
this is so that LDP peers are able to set up an MP LSP via their own defined MTR
policy. In order to avoid conflicting MTR policies for the same mLDP FEC, the M
T-ID needs to be a part of the FEC so that different MT-ID values will result in
unique MP LSP FEC elements.
</t> </t>
<t> <t>
The same applies to the IGP Algorithm. The IGP Algorithm needs to be enco ded as part of the mLDP FEC to create unique MP-LSPs. The IGP Algorithm is also used to signal to mLDP (hop-by-hop) which Algorithm needs to be used to create t he MP-LSP. The same applies to the IPA. The IPA needs to be encoded as part of the m LDP FEC to create unique MP LSPs. The IPA is also used to signal to the mLDP (ho p-by-hop) which algorithm needs to be used to create the MP LSP.
</t> </t>
<t> <t>
Since the MT-ID and IGP Algorithm are part of the FEC, they apply to all the LDP messages that potentially include an mLDP FEC element. Since the MT-ID and IPA are part of the FEC, they apply to all the LDP me ssages that potentially include an mLDP FEC element.
</t> </t>
<section anchor="mp-fec-ext-mt" numbered="true" toc="default">
<section title="MP FEC Extensions for MT" anchor="mp-fec-ext-mt"> <name>MP FEC Extensions for MT</name>
<t> <t>
The following subsections define the extensions to bind an mLDP FEC to The following subsections define the extensions to bind an mLDP FEC to
a topology. These mLDP MT extensions reuse some of the extensions a topology. These mLDP MT extensions reuse some of the extensions
specified in <xref target="RFC7307"/>. specified in <xref target="RFC7307" format="default"/>.
</t> </t>
<section numbered="true" toc="default">
<section title="MP FEC Element"> <name>MP FEC Element</name>
<t> <t>
Base mLDP specification <xref target="RFC6388"/> defines MP FEC Eleme The base mLDP specification (<xref target="RFC6388" format="default"/
nt as follows: >) defines the MP FEC Element as follows:
</t> </t>
<figure title="MP FEC Element Format [RFC6388]" anchor="mp-fec">
<artwork>
<figure anchor="mp-fec">
<name>MP FEC Element Format</name>
<artwork name="" type="" align="left" alt=""><![CDATA[
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MP FEC type | Address Family | AF Length | | MP FEC type | Address Family | AF Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Root Node Address | | Root Node Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Opaque Length | Opaque Value | | Opaque Length | Opaque Value |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
~ ~ ~ ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
</figure>
<t>
Where the "Root Node Address" field encoding is defined according to
the given "Address
Family" field with its length (in octets) specified by the "AF Length" field.
</artwork> </t>
</figure> <t>
<t>
Where the "Root Node Address" encoding is defined according to the gi
ven "Address
Family" with its length (in octets) specified by the "AF Length" field.
</t>
<t>
To extend MP FEC elements for MT, the {MT-ID, IPA} tuple is relevant in the To extend MP FEC elements for MT, the {MT-ID, IPA} tuple is relevant in the
context of the root address of the MP LSP. This tuple determines the context of the root address of the MP LSP. This tuple determines the
(sub)-topology in which the root address needs to be resolved. As the {MT-ID, (sub-)topology in which the root address needs to be resolved. As the {MT-ID,
IPA} tuple should be considered part of the mLDP FEC, it is most naturally IPA} tuple should be considered part of the mLDP FEC, it is most naturally
encoded as part of the root address. encoded as part of the root address.
</t> </t>
</section> </section>
<section anchor="MT_IP_AFI" numbered="true" toc="default">
<section anchor="MT_IP_AFI" title="MT IP Address Families"> <name>MT IP Address Families</name>
<t> <t>
<xref target="RFC7307"/> specifies new address families, named "MT IP <xref target="RFC7307" format="default"/> specifies new address famil
" and "MT IPv6," to ies, named "MT IP" and "MT IPv6," to
allow for the specification of an IP prefix within a topology scope. In addition allow for the specification of an IP prefix within a topology scope. In addition
to using these address families for mLDP, 8 bits of the 16-bit Reserved field to using these address families for mLDP, 8 bits of the 16-bit Reserved field th
are utilized to encode the IGP Algorithm. The resulting format at was described in RFC 7307
of the data associated with these new Address Families is as follows: are utilized to encode the IPA. The resulting format
of the data associated with these new address families is as follows:
</t>
<figure title="Modified MT IP Address Families Data Format" anchor="mt- </t>
afi">
<artwork>
<figure anchor="mt-afi">
<name>Modified Data Format for MT IP Address Families</name>
<artwork name="" type="" align="left" alt=""><![CDATA[
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Address | | IPv4 Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | IPA | MT-ID | | Reserved | IPA | MT-ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Address | | IPv6 Address |
| | | |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | IPA | MT-ID | | Reserved | IPA | MT-ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
</figure>
</artwork> <t>Where:</t>
</figure> <dl>
<dt>IPv4 Address and IPv6 Address:</dt>
<dd>An IP address corresponding to the "MT IP" and "MT IPv6" address
families, respectively.</dd>
<t> Where: <dt>IPA:</dt>
<list style="empty"> <dd>The IGP Algorithm.</dd>
<t> IPv4/IPv6 Address: An IP address corresponding to "MT IP"
and "MT IPv6" address families respectively. </t>
<t> IPA: The IGP Algorithm.</t>
<t> Reserved: This 8-bit field MUST be zero on transmission and MUST
be ignored on receipt. </t>
</list>
</t>
</section> <dt>Reserved:</dt>
<dd>This 8-bit field <bcp14>MUST</bcp14> be zero on transmission and
<bcp14>MUST</bcp14> be ignored on receipt.</dd>
</dl>
</section>
<section numbered="true" toc="default">
<section title="MT MP FEC Element"> <!--[rfced] Should this update be made to the text introducing Figure
<t> 3 to more closely match the title of the figure?
By using the extended MT IP Address Family, the resulting MT MP FEC e
lement
should be encoded as follows:
</t> Original:
By using the extended MT IP Address Family, the resulting MT MP FEC
element should be encoded as follows:
<figure title="IP MT-Scoped MP FEC Element Format" anchor="mt-mp-fec"> Perhaps:
<artwork> When using the extended MT IP Address Family, the resulting
0 1 2 3 MT-Scoped MP FEC element should be encoded as follows:
-->
<name>MT MP FEC Element</name>
<t>
When using the extended "MT IP" address family, the resulting MT MP
FEC element should be encoded as follows:
</t>
<figure anchor="mt-mp-fec">
<name>Data Format for an IP MT-Scoped MP FEC Element</name>
<artwork name="" type="" align="left" alt=""><![CDATA[
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MP FEC type | AF (MT IP/ MT IPv6) | AF Length | | MP FEC type | AF (MT IP/ MT IPv6) | AF Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Root Node Address | | Root Node Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | IPA | MT-ID | | Reserved | IPA | MT-ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Opaque Length | Opaque Value | | Opaque Length | Opaque Value |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
~ ~ ~ ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
</artwork> </figure>
</figure> <t>
In the context of this document, the applicable LDP FECs for MT mLDP
<t> (<xref target="RFC6388" format="default"/>)
In the context of this document, the applicable LDP FECs for MT mLDP
(<xref target="RFC6388"/>)
include: include:
</t> </t>
<t> <ul spacing="normal">
<list style="symbols"> <li>
<t> MP FEC Elements: <t>MP FEC Elements:
<list style="symbols"> </t>
<t> P2MP (type 0x6) </t> <ul spacing="normal">
<t> MP2MP-up (type 0x7) </t> <li>
<t> MP2MP-down (type 0x8) </t> <t>P2MP (type 0x6)</t>
</list> </li>
</t> <li>
<t> Typed Wildcard FEC Element (type 0x5 defined in <xref target="R <t>MP2MP-up (type 0x7)</t>
FC5918"/> ) </t> </li>
</list> <li>
</t> <t>MP2MP-down (type 0x8)</t>
</li>
<t> </ul>
In case of "Typed Wildcard FEC Element", the FEC Element type </li>
MUST be one of the MP FECs listed above. <li>
</t> <t>Typed Wildcard FEC Element (type 0x5 defined in <xref target="R
FC5918" format="default"/>)</t>
<t> </li>
This specification allows the use of Topology-scoped mLDP FECs in </ul>
LDP label and notification messages, as applicable. <t>
</t> In the case of the Typed Wildcard FEC Element, the FEC Element type
<bcp14>MUST</bcp14> be one of the MP FECs listed above.
<t> </t>
<xref target="RFC6514"/> defines the PMSI tunnel attribute f <t>
or MVPN, and specifies This specification allows the use of topology-scoped mLDP FECs in
that when the Tunnel Type is set to mLDP P2MP LSP, the Tunnel LDP labels and notification messages, as applicable.
Identifier is a P2MP FEC Element, and when the Tunnel Type is set to </t>
mLDP Multipoint-to-Multipoint (MP2MP) LSP, the Tunnel Identifier is <t>
an MP2MP FEC Element. When the extension defined in this <xref target="RFC6514" format="default"/> defines the PMSI tunnel
specification is in use, the "IP MT-Scoped MP FEC Element Format" attribute for MVPN and specifies that:</t>
form of the respective FEC elements MUST be used in these two cases. <ul>
<li>when the Tunnel Type is set
</t> to mLDP P2MP LSP, the Tunnel Identifier is a P2MP FEC Element, and</l
i>
</section> <li>when the Tunnel Type is set to mLDP MP2MP LSP, the Tunnel Identif
ier is an MP2MP FEC Element.</li></ul> <t> When
the extension defined in this specification is in use, the IP
MT-Scoped MP FEC Element form of the respective FEC
elements <bcp14>MUST</bcp14> be used in these two cases.
</t>
</section>
</section> </section>
<section numbered="true" toc="default">
<section title="Topology IDs"> <name>Topology IDs</name>
<t> <t>
This document assumes the same definitions and procedures associated This document assumes the same definitions and procedures associated
with MPLS MT-ID as specified in <xref target="RFC7307"/> specification. with MPLS MT-ID as specified in <xref target="RFC7307" format="default"
</t> />.
</t>
</section> </section>
</section> </section>
<section numbered="true" toc="default">
<section title="MT Multipoint Capability"> <name>MT Multipoint Capability</name>
<t> <t>
The "MT Multipoint Capability" is a new LDP capability, defined in
The "MT Multipoint Capability" is a new LDP capability, defined in accord accordance with the LDP Capability definition guidelines outlined in
ance <xref target="RFC5561" format="default"/>. An mLDP speaker advertises
with the LDP Capability definition guidelines outlined in <xref target="RFC5561" this capability to its peers to announce its support for MTR and the
/>. An mLDP procedures specified in this document. This capability
speaker advertises this capability to its peers to announce its support for MTR <bcp14>MAY</bcp14> be sent either in an Initialization message at
and the procedures specified in this document. This capability MAY be sent session establishment or dynamically during the session's lifetime via
either in an Initialization message at session establishment or dynamically a Capability message, provided that the "Dynamic Announcement"
during the session's lifetime via a Capability message, provided that capability from <xref target="RFC5561" format="default"/> has been
the "Dynamic Announcement" capability from <xref target="RFC5561"/> has been successfully negotiated with the peer.
successfully negotiated with the peer.
</t> </t>
<t> <t>
The format of this capability is as follows: The format of this capability is as follows:
</t> </t>
<figure anchor="mt-mp-cap">
<figure title="MT Multipoint Capability TLV Format" anchor="mt-mp-cap"> <name>Data Format for the MT Multipoint Capability TLV</name>
<artwork> <artwork name="" type="" align="left" alt=""><![CDATA[
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|U|F| MT Multipoint Capability | Length | |U|F| MT Multipoint Capability | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|S| Reserved | |S| Reserved |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
</artwork> ]]></artwork>
</figure> </figure>
<t> Where: <!--[rfced] The description of Figure 4 contains two entries for
<list style="empty"> "Length". May we update as suggested below?
<t> U- and F-bits: MUST be 1 and 0, respectively, as per Section 3 of
LDP Capabilities <xref target="RFC5561"/>. </t>
<t> MT Multipoint Capability: TLV type. </t> Original:
Length: The length (in octets) of TLV. The value of this field MUST
be 1 as there is no Capability-specific data [RFC5561] that
follows in the TLV. Length: This field specifies the length of
the TLV in octets. The value of this field MUST be 1, as there is
no Capability-specific data [[RFC5561]] [RFC5561] following the TLV.
<t> Length: The length (in octets) of TLV. The value of this field Perhaps:
MUST be 1 as there is no Capability-specific data <xref target="RFC5561"/ Length: This field specifies the length of
> the TLV in octets. The value of this field MUST be 1, as there is
that follows in the TLV. no Capability-specific data [RFC5561] following the TLV.
Length: This field specifies the length of the TLV in octets. The value -->
of this field MUST be 1, as there is no Capability-specific data [<xref t
arget="RFC5561"/>]
following the TLV.
</t> <t>Where:</t>
<dl>
<dt>U and F bits:</dt>
<dd><bcp14>MUST</bcp14> be 1 and 0, respectively, as per <xref
target="RFC5561" sectionFormat="of" section="3"/>.</dd>
<t> S-bit: Set to 1 to announce and 0 to withdraw the capability (as <dt>MT Multipoint Capability:</dt>
per <xref target="RFC5561"/>. </t> <dd>The TLV type.</dd>
</list>
</t> <dt>Length:</dt>
<dd>The length (in octets) of the TLV. The value of this field
<bcp14>MUST</bcp14> be 1 as there is no Capability-specific data
<xref target="RFC5561" format="default"/> that follows in the
TLV.</dd>
<dt>Length:</dt><dd>This field specifies the length of the TLV in
octets. The value of this field <bcp14>MUST</bcp14> be 1, as there
is no Capability-specific data <xref target="RFC5561"
format="default"/> following the TLV.</dd>
<dt>S bit:</dt>
<dd>Set to 1 to announce and 0 to withdraw the capability (as per
<xref target="RFC5561" format="default"/>).</dd>
</dl>
<t> <t>
An mLDP speaker that has successfully advertised and negotiated "MT An mLDP speaker that has successfully advertised and negotiated the "MT
Multipoint" capability MUST support the following: Multipoint" capability <bcp14>MUST</bcp14> support the following:
</t>
<t>
<list style="numbers">
<t> Topology-scoped mLDP FECs in LDP messages (<xref target="mp-fec-ext-m
t"/>) </t>
<t> Topology-scoped mLDP forwarding setup (<xref target="mt-fwd"/>) </t>
</list>
</t> </t>
<ol spacing="normal" type="1">
<li>
<t>Topology-scoped mLDP FECs in LDP messages (<xref target="mp-fec-ext
-mt" format="default"/>)</t>
</li>
<li>
<t>Topology-scoped mLDP forwarding setup (<xref target="mt-fwd" format
="default"/>)</t>
</li>
</ol>
</section> </section>
<section numbered="true" toc="default">
<name>MT Applicability on FEC-Based Features</name>
<section anchor="Typed_Wildcard_Fec" numbered="true" toc="default">
<name>Typed Wildcard MP FEC Elements</name>
<t>
<xref target="RFC5918" format="default"/> extends the base LDP and defi
nes the Typed Wildcard FEC Element
framework. A Typed Wildcard FEC element can be used in any LDP message
to specify a wildcard operation for a given type of FEC.
</t>
<section title="MT Applicability on FEC-based features"> <!--[rfced] May we update the use of "defined in this document" to
clarify the subject of this sentence?
<section anchor="Typed_Wildcard_Fec" title="Typed Wildcard MP FEC Elements Original:
"> The MT extensions, defined in this document, do not require any
extension to procedures for Typed Wildcard FEC Element support
[RFC5918],...
<t> Perhaps A (there may be other MT extensions outside the doc that are not include
<xref target="RFC5918"/> extends base LDP and defines Typed Wildcard FE d):
C Element The MT extensions defined in this document do not require any
framework. Typed Wildcard FEC element can be used in any LDP message extension to procedures for Typed Wildcard FEC Element support
to specify a wildcard operation for a given type of FEC. [RFC5918],...
</t>
<t> Perhaps B (this document addresses all existing MT extensions):
The MT extensions, defined in this document, do not require any extensio MT extensions, which are defined in this document, do not require any
n to extension to procedures for Typed Wildcard FEC Element support
procedures for Typed Wildcard FEC Element support <xref target="RFC5918"/>, and [RFC5918],...
these
procedures apply as-is to Multipoint MT FEC wildcarding. Similar to Typed
Wildcard MT Prefix FEC Element, as defined in <xref target="RFC7307"/>, the MT e
xtensions
allow the use of "MT IP" or "MT IPv6" in the Address Family field of the Typed
Wildcard MP FEC element. This is done in order to use wildcard operations for
MP FECs in the context of a given (sub)-topology as identified by the MT-ID and
IPA field.
</t> -->
<t> <t>
The MT extensions defined in this document do not require any
extension to procedures for support of the Typed Wildcard FEC Element <x
ref
target="RFC5918" format="default"/>, and these procedures apply as is
to Multipoint MT FEC wildcarding. Similar to the Typed Wildcard MT Prefi
x
FEC Element, as defined in <xref target="RFC7307" format="default"/>,
the MT extensions allow the use of "MT IP" or "MT IPv6" in the
"Address Family" field of the Typed Wildcard MP FEC element. This is
done in order to use wildcard operations for MP FECs in the context
of a given (sub-)topology as identified by the MT-ID and IPA fields.
</t>
<t>
This document defines the following format and encoding for a Typed This document defines the following format and encoding for a Typed
Wildcard MP FEC element: Wildcard MP FEC element:
</t> </t>
<figure anchor="mt-mp-wc-fec">
<figure title="Typed Wildcard MT MP FEC Element" anchor="mt-mp-wc-fec"> <name>Data Format for the Typed Wildcard MT MP FEC Element</name>
<artwork> <artwork name="" type="" align="left" alt=""><![CDATA[
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Typed Wcard (5)| Type = MP FEC | Len = 6 | AF = MT IP ..| |Typed Wcard (5)| Type = MP FEC | Len = 6 | AF = MT IP ..|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|... or MT IPv6 | Reserved | IPA | MT-ID | |... or MT IPv6 | Reserved | IPA | MT-ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|MT ID (contd.) | |MT-ID (cont.) |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
</artwork> ]]></artwork>
</figure> </figure>
<t>Where:</t>
<t> Where: <dl>
<list style="empty"> <dt>Type:</dt><dd>One of the MP FEC Element types (P2MP, MP2MP-up, or
<t> Type: One of MP FEC Element type (P2MP, MP2MPup, MP2MP-down). </t> MP2MP-down)</dd>
<t> MT ID: MPLS MT ID </t> <dt>MT-ID:</dt><dd>MPLS MT-ID</dd>
<t> IPA: The IGP Algorithm</t> <dt>IPA:</dt><dd>The IGP Algorithm</dd>
</list> </dl>
</t> <t>
The defined format allows a Label Switching Router (LSR) to perform wil
<t> dcard MP FEC
The defined format allows an LSR to perform wildcard MP FEC
operations under the scope of a (sub-)topology. operations under the scope of a (sub-)topology.
</t> </t>
</section> </section>
<section numbered="true" toc="default">
<section title="End-of-LIB"> <name>End-of-LIB</name>
<t> <t>
<xref target="RFC5919"/> specifies extensions and procedures that allow <xref target="RFC5919" format="default"/> specifies extensions and
an LDP speaker procedures that allow an LDP speaker to signal its End-of-LIB (Label In
to signal its End-of-LIB for a given FEC type to a peer. By leveraging formation Base) for a
the End-of-LIB message, LDP ensures that label distribution remains given FEC type to a peer. By leveraging the End-of-LIB message, LDP
consistent and reliable, even during network disruptions or maintenance ensures that label distribution remains consistent and reliable,
activities. The MT extensions for MP FEC do not require any modifications even during network disruptions or maintenance activities. The MT
to these procedures and apply as-is to MT MP FEC elements. Consequently, an extensions for MP FEC do not require any modifications to these
MT mLDP speaker MAY signal its convergence per (sub-)topology using procedures and apply as they are to MT MP FEC elements. Consequently, a
the MT Typed Wildcard MP FEC element. n
MT mLDP speaker <bcp14>MAY</bcp14> signal its convergence per
</t> (sub-)topology using the MT Typed Wildcard MP FEC element.
</t>
</section> </section>
</section> </section>
<section anchor="mt-fwd" numbered="true" toc="default">
<section title="Topology-Scoped Signaling and Forwarding" anchor="mt-fwd"> <name>Topology-Scoped Signaling and Forwarding</name>
<t> <t>
Since the {MT-ID, IPA} tuple is part of an mLDP FEC, there is no need to support Since the {MT-ID, IPA} tuple is part of an mLDP FEC, there is no need to support
the concept of multiple (sub-)topology forwarding tables in mLDP. Each MP LSP will be the concept of multiple (sub-)topology forwarding tables in mLDP. Each MP LSP will be
unique due to the tuple being part of the FEC. There is also no need unique due to the tuple being part of the FEC. There is also no need
to have specific label forwarding tables per topology, and each MP to have specific label forwarding tables per topology, and each MP
LSP will have its own unique local label in the table. However, In LSP will have its own unique local label in the table. However, in
order to implement MTR in an mLDP network, the selection procedures order to implement MTR in an mLDP network, the selection procedures
for upstream LSR and downstream forwarding interface need to be for an upstream LSR and a downstream forwarding interface need to be
changed. changed.
</t> </t>
<section numbered="true" toc="default">
<section title="Upstream LSR selection"> <name>Upstream LSR Selection</name>
<t> <t>
The procedures as described in RFC-6388 section-2.4.1.1 depend on The procedures described in <xref section="2.4.1.1" sectionFormat="of"
target="RFC6388"/> depend on
the best path to reach the root. When the {MT-ID, IPA} tuple is signale d as part the best path to reach the root. When the {MT-ID, IPA} tuple is signale d as part
of the FEC, this tuple is used to select the (sub-)topology that must b e of the FEC, the tuple is also used to select the (sub-)topology that mu st be
used to find the best path to the root address. Using the next-hop used to find the best path to the root address. Using the next-hop
from this best path, a LDP peer is selected following the procedures from this best path, an LDP peer is selected following the procedures
as defined in <xref target="RFC6388"/>. defined in <xref target="RFC6388" format="default"/>.
</t> </t>
</section> </section>
<section numbered="true" toc="default">
<section title="Downstream forwarding interface selection"> <name>Downstream Forwarding Interface Selection</name>
<t> <t>
The procedures as described in RFC-6388 section-2.4.1.2 describe how <xref target="RFC6388" sectionFormat="of" section="2.4.1.2"/> describes
the procedures for how
a downstream forwarding interface is selected. In these procedures, a downstream forwarding interface is selected. In these procedures,
any interface leading to the downstream LDP neighbor can be any interface leading to the downstream LDP neighbor can be
considered as candidate forwarding interface. When the {MT-ID, IPA} tup le is part considered to be a candidate forwarding interface. When the {MT-ID, IPA } tuple is part
of the FEC, this is no longer true. An interface must only be of the FEC, this is no longer true. An interface must only be
selected if it is part of the same (sub-)topology that was signaled in the selected if it is part of the same (sub-)topology that was signaled in the
mLDP FEC element. Besides this restriction, the other procedures in mLDP FEC element. Besides this restriction, the other procedures in
<xref target="RFC6388"/> apply. <xref target="RFC6388" format="default"/> apply.
</t> </t>
</section> </section>
</section> </section>
<section numbered="true" toc="default">
<section title="LSP Ping Extensions"> <name>LSP Ping Extensions</name>
<t> <t>
<xref target="RFC6425"/> defines procedures to detect data plane failures <xref target="RFC6425" format="default"/> defines procedures to detect da
in ta plane failures in
Multipoint MPLS LSPs. Section 3.1.2 of <xref target="RFC6425"/> defines n multipoint MPLS LSPs. <xref target="RFC6425" sectionFormat="of" section="
ew Sub- 3.1.2"/> defines new sub-types and sub-TLVs for Multipoint LDP FECs to be sent i
Types and Sub-TLVs for Multipoint LDP FECs to be sent in "Target FEC n the "Target FEC
Stack" TLV of an MPLS echo request message <xref target="RFC8029"/>. Stack" TLV of an MPLS echo request message <xref target="RFC8029" format=
"default"/>.
</t> </t>
<t> <t>
To support LSP ping for MT Multipoint LSPs, this document uses To support LSP ping for MT MP LSPs, this document uses
existing sub-types "P2MP LDP FEC Stack" and "MP2MP LDP FEC Stack" existing sub-types "P2MP LDP FEC Stack" and "MP2MP LDP FEC Stack"
defined in <xref target="RFC6425"/>. The LSP Ping extension is to specify "MT IP" defined in <xref target="RFC6425" format="default"/>. The LSP ping extens ion is to specify "MT IP"
or "MT IPv6" in the "Address Family" field, set the "Address Length" or "MT IPv6" in the "Address Family" field, set the "Address Length"
field to 8 (for MT IP) or 20 (for MT IPv6), and encode the sub-TLV field to 8 (for MT IP) or 20 (for MT IPv6), and encode the sub-TLV
with additional {MT-ID, IPA} information as an extension to the "Root LSR with additional {MT-ID, IPA} information as an extension to the "Root LSR
Address" field. The resultant format of sub-tlv is as follows: Address" field. The resultant format of sub-TLV is as follows:
</t> </t>
<figure title="Multipoint LDP FEC Stack Sub-TLV Format for MT" anchor="mt- <figure anchor="mt-fec-lspv">
fec-lspv"> <name>Multipoint LDP FEC Stack Sub-TLV Format for MT</name>
<artwork> <artwork name="" type="" align="left" alt=""><![CDATA[
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Address Family (MT IP/MT IPv6) | Address Length| | |Address Family (MT IP/MT IPv6) | Address Length| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
~ Root LSR Address (Cont.) ~ ~ Root LSR Address (Cont.) ~
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | IPA | MT-ID | | Reserved | IPA | MT-ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Opaque Length | Opaque Value ... | | Opaque Length | Opaque Value ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
~ ~ ~ ~
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork> ]]></artwork>
</figure> </figure>
<t> <t>
The rules and procedures of using this new sub-TLV in an MPLS echo The rules and procedures of using this new sub-TLV in an MPLS echo
request request message are the same as defined for the P2MP/MP2MP LDP FEC Stack
message are the same as defined for P2MP/MP2MP LDP FEC Stack Sub-TLV in <xref ta sub-TLV in <xref target="RFC6425" format="default"/>. The only
rget="RFC6425"/>. The only difference is that the Root LSR address is now difference is that the "Root LSR Address" field is now (sub-)topology sco
(sub-)topology scoped. ped.
</t> </t>
</section> </section>
<section title="Implementation Status"> <section numbered="true" toc="default">
<t> <name>Security Considerations</name>
[Note to the RFC Editor - remove this section before publication, as well as rem
ove the reference to
<xref target="RFC7942"/>
</t>
<t>
This section records the status of known implementations of the protocol defined
by this specification at the time of posting of this Internet-Draft, and is bas
ed on a proposal described in
<xref target="RFC7942"/>
. The description of implementations in this section is intended to assist the I
ETF in its decision processes in progressing drafts to RFCs. Please note that th
e listing of any individual implementation here does not imply endorsement by th
e IETF. Furthermore, no effort has been spent to verify the information presente
d here that was supplied by IETF contributors. This is not intended as, and must
not be construed to be, a catalog of available implementations or their feature
s. Readers are advised to note that other implementations may exist.
</t>
<t>
According to
<xref target="RFC7942"/>
, "this will allow reviewers and working groups to assign due consideration to d
ocuments that have the benefit of running code, which may serve as evidence of v
aluable experimentation and feedback that have made the implemented protocols mo
re mature. It is up to the individual working groups to use this information as
they see fit".
</t>
<section title="Cisco Systems">
<t>The feature has been implemented on IOS-XR.</t>
<t>
<list style="symbols">
<t>Organization: Cisco Systems</t>
<t>
Implementation: Cisco systems IOS-XR has an implementation. Capability has been
used from <xref target="RFC7307"/> and plan to update the value once IANA assign
s new value.
</t>
<t>Description: The implementation has been done.</t>
<t>Maturity Level: Product</t>
<t>Contact: mankamis@cisco.com</t>
</list>
</t>
</section>
</section>
<section title="Security Considerations">
<t> <t>
This extension to mLDP does not introduce any new security This extension to mLDP does not introduce any new security
considerations beyond that already applied to the base LDP considerations beyond what is already applied to the base LDP
specification <xref target="RFC5036"/>, LDP extensions for Multi-Topology specification <xref target="RFC5036" format="default"/>, the LDP
specification <xref target="RFC7307"/> base mLDP specification <xref target="RF extensions for Multi-Topology specification <xref target="RFC7307"
C6388"/>, and MPLS format="default"/>, the base mLDP specification <xref target="RFC6388"
security framework <xref target="RFC5920"/>. format="default"/>, and the MPLS security framework specification <xref t
arget="RFC5920"
format="default"/>.
</t> </t>
</section> </section>
<section numbered="true" toc="default">
<section title="IANA Considerations"> <name>IANA Considerations</name>
<t> <t>
This document defines a new LDP capability parameter TLV. IANA is This document defines a new LDP capability parameter TLV called the "MT M
requested to assign the lowest available value after 0x0500 from ultipoint Capability". IANA has assigned the value 0x0510 from the
"TLV Type Name Space" in the "Label Distribution Protocol (LDP) "TLV Type Name Space" registry in the "Label Distribution Protocol (LDP)
Parameters" registry within "Label Distribution Protocol (LDP) Name Parameters" group as the new code point.
Spaces" as the new code point for the LDP TLV code point.
</t> </t>
<figure title="IANA Code Point" anchor="iana"> <table anchor="iana">
<artwork> <name>MT Multipoint Capability</name>
<thead>
<tr>
<th>Value</th>
<th>Description</th>
<th>Reference</th>
<th>Notes/Registration Date</th>
</tr>
</thead>
<tbody>
<tr>
<td>0x0510</td>
<td>MT Multipoint Capability</td>
<td>RFC 9658</td>
<td></td>
</tr>
</tbody>
</table>
</section>
</middle>
+-----+------------------+---------------+-------------------------+ <back>
|Value| Description | Reference | Notes/Registration Date | <references>
+-----+------------------+---------------+-------------------------+ <name>References</name>
| TBA | MT Multipoint | This document | | <references>
| | Capability | | | <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.4
915.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.7
307.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6
388.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
029.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6
425.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9
350.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6
514.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.6
513.xml"/>
</references>
<references>
<name>Informative References</name>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
036.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
918.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
919.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
920.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
561.xml"/>
</artwork> <reference anchor="IANA-IGP-ALGO-TYPES" target="https://www.iana.org/ass
</figure> ignments/igp-parameters">
<front>
<title>IGP Algorithm Types</title>
<author>
<organization>IANA</organization>
</author>
</front>
</reference>
</references>
</references>
<section numbered="false" toc="default">
<name>Contributors</name>
<contact fullname="Anuj Budhiraja">
<organization>Cisco Systems</organization></contact>
</section> </section>
<section title="Contributor">
<t>
Anuj Budhiraja
Cisco systems
</t>
</section>
<section title="Acknowledgments"> <section numbered="false" toc="default">
<name>Acknowledgments</name>
<t> <t>
The authors would like to acknowledge Eric Rosen for his input on The authors would like to acknowledge <contact fullname="Eric Rosen"/> fo r his input on
this specification. this specification.
</t> </t>
</section> </section>
</middle> <!-- [rfced] Throughout the text, we had the following
questions/comments about abbreviations.
<back> a) Do the following create redundancies upon expansion?
<references title="Normative References"> i) "MTR topology": Expanded this would be "Multi-Topology Routing
&rfc2119; topology".
<?rfc include="reference.RFC.4915"?>
<?rfc include="reference.RFC.5120"?>
<?rfc include="reference.RFC.7307"?>
<?rfc include="reference.RFC.6388"?>
<?rfc include="reference.RFC.8029"?>
<?rfc include="reference.RFC.6425"?>
<?rfc include="reference.RFC.9350"?>
<?rfc include="reference.RFC.7942"?>
<?rfc include="reference.RFC.6514"?>
<?rfc include="reference.RFC.8174"?>
<?rfc include="reference.RFC.6513"?>
</references>
<references title="Informative References"> Original:
<?rfc include="reference.RFC.5036"?> This can be done within an MTR topology or the default Topology.
<?rfc include="reference.RFC.5918"?>
<?rfc include="reference.RFC.5919"?>
<?rfc include="reference.RFC.5920"?>
<?rfc include="reference.RFC.5561"?>
<reference anchor="IANA-IGP-ALGO-TYPES"
target="https://www.iana.org/assignments/igp-parameters/igp-parameters.xh
tml#igp-algorithm-types">
<front>
<title>IGP Algorithm Types</title>
<author/>
<date/>
</front>
</reference>
</references>
</back> Original:
...used to associate an LSP with a certain MTR topology
Original:
This means that the identifier for the particular topology to be used
by mLDP have to become a 2-tuple (MTR Topology Id, IGP Algorithm).
ii) "Multipoint MPLS LSPs": When expanded this is "Multipoint
Multiprotocol Label Switching Label Switching Path".
Original:
[RFC6425] defines procedures to detect data plane failures in
Multipoint MPLS LSPs.
iii) "IGP protocols": could we just make this "IGPs" as used elsewhere
in the document?
Original:
IGP protocols (OSPF and IS-IS) and LDP have already been extended to
support MTR.
b) We have expanded these abbreviations as follows. Please let us
know any objections and/or if you would like to add these abbreviations
to the list of abbreviations in the Terminology section.
LIB - Label Information Base
LSR - Label Switching Router
c) After its introduction, we have switched to using IPA in lieu of
IGP Algorithm to match the guidance at
https://www.rfc-editor.org/styleguide/part2/#exp_abbrev. Please let
us know any objections.
-->
<!-- [rfced] We had the following questions related to terminology use
throughout the document.
a) We have updated to use the form on the right. Please review and let us know
any objections.
Multipoint LSP vs. multipoint LSP
Algorithm vs. algorithm (when written without a name)
LSP Ping extension vs. LSP ping extension
Sub-TLV and sub-tlv vs. sub-TLV
Sub-Type vs. sub-type
MP-LSP vs. MP LSP
MT Multipoint vs. MT MP
b) We *will* update to use the form on the right for the following, unless we he
ar objection.
MPLS echo request message vs. MPLS Echo Request message (to match Initialization
and Capability message)
c) Please let us know if/how the following terms may be updated for consistency.
FEC Element vs. FEC element
MT Prefix FEC Element vs. MP FEC element vs. MT Typed Wildcard MP FEC element
Flex-Alogorithm vs. Flexible Algorithm
d) We have removed hyphenation from bit names for consistency within the documen
t and the series. Please let us know any objections.
e) Please review our work on the term "Address Family". We tried to
use initial caps and double quotes followed by field when we thought the
direct field name was being used and lowercase without quotes when
referring to the general concept. Please review our updates to ensure
we've retained your intended meaning.
In general, may we follow this pattern for all field names?
"Field Name" field
This would prompt changes to the version on the right (for some examples):
IGP Algorithm (IPA) Field or IPA field becomes "IPA" field
Reserved field becomes "Reserved" field
f) In general, how should capability names appear? Please review for capitaliza
tion of the word "capability" as well as quotation.
We see:
"MT Multipoint Capability"
LDP Capability vs. LDP capability
"Dynamic Announcement" capability
-->
<!-- [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.
-->
</back>
</rfc> </rfc>
 End of changes. 126 change blocks. 
547 lines changed or deleted 871 lines changed or added

This html diff was produced by rfcdiff 1.48.