<?xml version="1.0" encoding="US-ASCII"?>
<!-- $Id: draft-wijnands-mpls-mldp-multi-topology-00.xml 2018-10-10 skraza $ -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY rfc2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
]>

<rfc category="std" docName="draft-ietf-mpls-mldp-multi-topology-07"
      ipr="trust200902" updates="7307">
  <?rfc toc="yes" ?>
  <?rfc compact="yes"?>
  <?rfc subcompact="no"?>
  <?rfc symrefs="yes"?>
  <?rfc sortrefs="yes" ?>

  <front>
   
    <title abbrev="Multi-Topology mLDP">mLDP Extensions for Multi-Topology Routing</title>

    <author fullname="IJsbrand Wijnands" initials="IJ." surname="Wijnands">
      <organization>Individual</organization>
      <address> 
        <postal>
          <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>
    </author>


        <author fullname="Mankamana Mishra" initials="M." surname="Mishra (Editor)">
      <organization>Cisco Systems, Inc.</organization>
      <address>
        <postal>
          <street>821 Alder Drive</street>
          <city>Milpitas</city>
          <code>95035</code>
          <region>CA</region>
          <country>USA</country>
        </postal>
        <email>mankamis@cisco.com</email>
      </address>
    </author>
        <author fullname="Kamran Raza" initials="K." surname="Raza">
      <organization>Cisco Systems, Inc.</organization>
      <address>
        <postal>
          <street>2000 Innovation Drive</street>
          <city>Kanata</city>
          <code>K2K-3E8</code>
          <region>ON</region>
          <country>Canada</country>
        </postal>
        <email>skraza@cisco.com</email>
      </address>
    </author>
    <author initials='Z.' surname='Zhang' fullname='Zhaohui Zhang'>
      <organization>Juniper Networks</organization>
      <address><postal>
	<street>10 Technology Park Dr.</street>
	<city>Westford</city> <region></region>
	<code>MA  01886</code>
	<country>US</country>
      </postal>
      <email>zzhang@juniper.net</email></address>
    </author>

    <author initials="A." surname="Gulko" fullname="Arkadiy Gulko">
      <organization>Edward Jones wealth management</organization>
      <address>
        <postal>
          <street></street>
          <city></city>
          <code></code>
          <country>USA</country>
        </postal>
        <email>Arkadiy.gulko@edwardjones.com</email>
      </address>
    </author>
    
   <date day="16" month="May" year="2024"/>

   <area>Routing</area>
   <workgroup>MPLS Working Group</workgroup>
   <keyword>MPLS</keyword>
   <keyword>mLDP</keyword>
   <keyword>Multi-topology</keyword>

   <abstract>
     <t>
       Multi-Topology Routing (MTR) is a technology to enable service differentiation within an IP network. Flexible Algorithm (FA) is another mechanism of creating a sub-topology within a topology using defined topology constraints and computation algorithm. In order to deploy mLDP (Multipoint label distribution protocol) in a network that supports MTR and/or FA, mLDP is required to become topology and FA aware. This document specifies extensions to mLDP to support MTR, with FA, in order for Multipoint LSPs(Label Switched Paths) to follow a particular topology and algorithm.
     </t>
   </abstract>
   
  </front>

  <middle>

    <section title="Glossary">
      <t>
	<list style="empty">
	  <t> FA        - Flexible Algorithm </t>
	  <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 section 2.3 of <xref target="RFC6513"/> </t>
	  <t> P2MP      - Point-to-Multipoint </t>
	  <t> PMSI      - Provider Multicast Service Interfaces <xref target="RFC6513"/> </t>
	  
	</list>
      </t>
    </section>
    
    <section title="Introduction">
      <t>
	Multi-Topology Routing (MTR) is a technology to enable service differentiation 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 topologies, termed as "Multi-Topologies" (MT), and computes/installs routes per topology. OSPF extensions <xref target="RFC4915"/> and IS-IS extensions <xref target="RFC5120"/> specify the MT extensions under respective IGPs. To support IGP MT, similar LDP extensions <xref target="RFC7307"/> have been specified to make LDP MT-aware and be able to setup unicast Label Switched Paths (LSPs) along IGP MT routing paths.
      </t>

      <t> 
	 A more lightweight mechanism to define constraint-based topologies is the Flexible Algorithm (FA) <xref target="RFC9350"/>. FA can be seen as creating a sub-topology within a topology using defined topology constraints and computation algorithms. This can be done within an MTR topology or the default Topology. An instance of such a sub-topology is identified by a 1 octet value (Flex-Algorithm) as documented in <xref target="RFC9350"/>). A flexible Algorithm is a mechanism to create a sub-topology, but in the future, different algorithms might be defined on how to achieve that. For that reason, in the remainder of this document, we'll refer to this as the IGP Algorithm.
      </t>
		
      <t>
	Multipoint LDP (mLDP) refers to extensions in LDP to setup multi-point LSPs (point-to-multipoint (P2MP) or multipoint-to-multipoint (MP2MP)), by means of a set of extensions and procedures defined in <xref target="RFC6388"/>. In order to deploy mLDP in a network that supports MTR and FA, mLDP is required to become topology and algorithm aware. 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. 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).
      </t>
	      
    </section>
    
    <section title="Specification of Requirements">
      <t>
	       The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
      NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
      "MAY", and "OPTIONAL" in this document are to be interpreted as
      described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
      appear in all capitals, as shown here.
      </t>
    </section>
              
    <section title="MT Scoped mLDP FECs">
      <t>
	As defined in <xref target="RFC7307"/>, MPLS Multi-Topology Identifier (MT-ID) is an identifier that is used to associate an LSP with a certain MTR topology. In the context of MP LSPs, this identifier is part of the mLDP FEC encoding so that LDP peers are able to setup an MP LSP via their own defined MTR policy. 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.
      </t>
      <t>
	The same applies to the IGP Algorithm. The IGP Algorithm needs to be encoded 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 the MP-LSP.
      </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.
      </t>

      <section title="MP FEC Extensions for MT" anchor="mp-fec-ext-mt">
	<t>
	  The following subsections define the extensions to bind an mLDP FEC to
	  a topology. These mLDP MT extensions reuse some of the extensions
	  specified in <xref target="RFC7307"/>.
	</t>

	<section title="MP FEC Element">
	  <t>
	    Base mLDP specification <xref target="RFC6388"/> defines MP FEC Element as follows:
	  </t>
	  
	  <figure title="MP FEC Element Format [RFC6388]" anchor="mp-fec">
	    <artwork>
	      
    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    
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   
   | MP FEC type   |       Address Family          |    AF Length  |  
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
   |                Root Node Address                              | 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
   |    Opaque Length              |       Opaque Value            | 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               + 
   ~                                                               ~ 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 

	    </artwork>
	  </figure>

	  <t>
	    Where the "Root Node Address" encoding is defined according to the given "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
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,
IPA} tuple should be considered part of the mLDP FEC, it is most naturally
encoded as part of the root address. 

	  </t>
	</section>

	<section title="MT IP Address Families">
	  <t>
	    <xref target="RFC7307"/> specifies new address families, named "MT IP" and "MT IPv6," to
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
are utilized to encode the IGP Algorithm Types (IPA) Registry. 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-afi">
	    <artwork>

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     IPv4 Address                              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |    Reserved   |      IPA      |        MT-ID                  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     IPv6 Address                              |
   |                                                               |
   |                                                               |
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |    Reserved   |      IPA      |        MT-ID                  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   	      
	    </artwork>
	  </figure>

	  <t> Where:
	  <list style="empty">
	    <t> IPv4/IPv6 Address: An IP address corresponding to "MT IP"
	    and "MT IPv6" address families respectively. </t>
	    <t> IPA: The IGP Algorithm, values are from the IGP Algorithm Types registry.</t>
	    <t> Reserved: This 8-bit field MUST be zero on transmission and MUST be ignored on receipt. </t>
	  </list>
	  </t>
	  
	</section>
		
	<section title="MT MP FEC Element">
	  <t>
	    By using the extended MT IP Address Family, the resulting MT MP FEC element
should be encoded as follows:

	  </t>
	  
	  <figure title="IP MT-Scoped MP FEC Element Format" anchor="mt-mp-fec">
	    <artwork>
   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    
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+  
   | MP FEC type   |  AF (MT IP/ MT IPv6)          |    AF Length  |  
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
   |                       Root Node Address                       | 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |    Reserved   |      IPA      |        MT-ID                  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
   |    Opaque Length              |       Opaque Value            | 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               + 
   ~                                                               ~ 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
	      
	    </artwork>
	  </figure>

	  <t>
	    In the context of this document, the applicable LDP FECs for MT mLDP (<xref target="RFC6388"/>)
	    include:
	  </t>
	  <t>
	    <list style="symbols">
	      <t> MP FEC Elements: 
	      <list style="symbols">
		<t> P2MP (type 0x6) </t>
		<t> MP2MP-up (type 0x7) </t>
		<t> MP2MP-down (type 0x8) </t>
	      </list>
	      </t>
	      <t> Typed Wildcard FEC Element (type 0x5 defined in <xref target="RFC5918"/> ) </t>
	    </list>
	  </t>
	  
	  <t>
	    In case of "Typed Wildcard FEC Element", the FEC Element type
	    MUST be one of the MP FECs listed above. 
	  </t>

	  <t>
	    This specification allows the use of Topology-scoped mLDP FECs in
	    LDP label and notification messages, as applicable.  
	  </t>
	  
	  <t>	  
		     <xref target="RFC6514"/> defines the PMSI tunnel attribute for MVPN, and specifies
   that when the Tunnel Type is set to mLDP P2MP LSP, the Tunnel
   Identifier is a P2MP FEC Element, and when the Tunnel Type is set to
   mLDP Multipoint-to-Multipoint (MP2MP) LSP, the Tunnel Identifier is
   an MP2MP FEC Element.  When the extension defined in this
   specification is in use, the "IP MT-Scoped MP FEC Element Format"
   form of the respective FEC elements MUST be used in these two cases.

		  </t>
	      
	</section>
	
      </section>

      <section title="Topology IDs">
	<t>
	  This document assumes the same definitions and procedures associated
	  with MPLS MT-ID as specified in <xref target="RFC7307"/> specification. 
	</t>
      </section>
         
    </section>

    <section title="MT Multipoint Capability">
      <t>
	
	The "MT Multipoint Capability" is a new LDP capability, defined in accordance
with the LDP Capability definition guidelines outlined in <xref target="RFC5561"/>. An mLDP
speaker advertises this capability to its peers to announce its support for MTR
and the procedures specified in this document. This capability MAY be sent
either in an Initialization message at session establishment or dynamically
during the session's lifetime via a Capability message, provided that
the "Dynamic Announcement" capability from <xref target="RFC5561"/> has been
successfully negotiated with the peer.

      </t>

      <t>
	The format of this capability is as follows:
      </t>

      <figure title="MT Multipoint Capability TLV Format" anchor="mt-mp-cap">
	<artwork>
    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    
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+    
   |U|F|  MT Multipoint Capability |            Length             |    
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+    
   |S| Reserved    |     
   +-+-+-+-+-+-+-+-+
	</artwork>
      </figure>
    
      <t> Where:
      <list style="empty">
	<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>
	
	<t> Length: The length (in octets) of TLV. The value of this field
	MUST be 1 as there is no Capability-specific data <xref target="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 [<xref target="RFC5561"/>]
following the TLV.

	</t>
     	
	<t> S-bit: Set to 1 to announce and 0 to withdraw the capability (as
	per <xref target="RFC5561"/>. </t>
      </list>
      </t>

      <t>
	An mLDP speaker that has successfully advertised and negotiated "MT
	Multipoint" capability MUST support the following:
      </t>
      <t>
      <list style="numbers">
	<t> Topology-scoped mLDP FECs in LDP messages (<xref target="mp-fec-ext-mt"/>) </t>
	<t> Topology-scoped mLDP forwarding setup (<xref target="mt-fwd"/>) </t>
      </list>
      </t>
      
    </section>


    <section title="MT Applicability on FEC-based features">
  
      <section title="Typed Wildcard MP FEC Elements">

	<t>
	  <xref target="RFC5918"/> extends base LDP and defines Typed Wildcard FEC Element
	  framework. Typed Wildcard FEC element can be used in any LDP message
	  to specify a wildcard operation for a given type of FEC.
	</t>

	<t>
	 The MT extensions, defined in this document, do not require any extension to
procedures for Typed Wildcard FEC Element support <xref target="RFC5918"/>, and 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 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 field.	
		
	</t>

	<t>
	  This document defines the following format and encoding for a Typed
	  Wildcard MP FEC element:
	</t>

	<figure title="Typed Wildcard MT MP FEC Element" anchor="mt-mp-wc-fec">
	  <artwork>	    
    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   
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   
   |Typed Wcard (5)| Type = MP FEC |   Len = 6     |  AF = MT IP ..|   
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   
   |... or MT IPv6 |    Reserved   |      IPA      |     MT-ID     | 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
   |MT ID (contd.) | 
   +-+-+-+-+-+-+-+-+ 
	  </artwork>
	</figure>

	<t> Where:
	<list style="empty">
	  <t> Type: One of MP FEC Element type (P2MP, MP2MPup, MP2MP-down). </t>
	  <t> MT ID: MPLS MT ID </t>
	  <t> IPA: The IGP Algorithm, values are from the IGP Algorithm Types registry.</t>
	</list>
	</t>

	<t>
	  The defined format allows an LSR to perform wildcard MP FEC
	  operations under the scope of a (sub-)topology.  
	</t>
	
      </section>

      <section title="End-of-LIB">
	<t>  
	  <xref target="RFC5919"/> specifies extensions and procedures that allow an LDP speaker
to signal its End-of-LIB for a given FEC type to a peer. By leveraging
the End-of-LIB message, LDP ensures that label distribution remains
consistent and reliable, even during network disruptions or maintenance
activities. The MT extensions for MP FEC do not require any modifications
to these procedures and apply as-is to MT MP FEC elements. Consequently, an
MT mLDP speaker MAY signal its convergence per (sub-)topology using
the MT Typed Wildcard MP FEC element.

	</t>
	
      </section>
      
    </section>

    <section title="Topology-Scoped Signaling and Forwarding" anchor="mt-fwd">
      
      <t>
	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
	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
	LSP will have its own unique local label in the table. However, In
	order to implement MTR in an mLDP network, the selection procedures
	for upstream LSR and downstream forwarding interface need to be
	changed.
      </t>
      
      <section title="Upstream LSR selection">
	<t>
	  The procedures as described in RFC-6388 section-2.4.1.1 depend on
	  the best path to reach the root. When the {MT-ID, IPA} tuple is signaled as part
	  of the FEC, this tuple is used to select the (sub-)topology that must be
	  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
	  as defined in <xref target="RFC6388"/>.
	</t>
      </section>

      <section title="Downstream forwarding interface selection">
	<t>
	  The procedures as described in RFC-6388 section-2.4.1.2 describe how
	  a downstream forwarding interface is selected. In these procedures,
	  any interface leading to the downstream LDP neighbor can be
	  considered as candidate forwarding interface. When the {MT-ID, IPA} tuple is part
	  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
	  mLDP FEC element. Besides this restriction, the other procedures in
	  <xref target="RFC6388"/> apply.
	</t>
      </section>
      
    </section>

    <section title="LSP Ping Extensions">      
      <t>
	<xref target="RFC6425"/> defines procedures to detect data plane failures in
	Multipoint MPLS LSPs. Section 3.1.2 of <xref target="RFC6425"/> defines new Sub-
	Types and Sub-TLVs for Multipoint LDP FECs to be sent in "Target FEC
	Stack" TLV of an MPLS echo request message <xref target="RFC8029"/>.
      </t>

      <t>
	To support LSP ping for MT Multipoint LSPs, this document uses
	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"
	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
	with additional {MT-ID, IPA} information as an extension to the "Root LSR
	Address" field. The resultant format of sub-tlv is as follows:
      </t>

      <figure title="Multipoint LDP FEC Stack Sub-TLV Format for MT" anchor="mt-fec-lspv">
	<artwork>
   0                   1                   2                   3 
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
   |Address Family (MT IP/MT IPv6) | Address Length|               | 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+               | 
   ~                   Root LSR Address (Cont.)                    ~ 
   |                                                               | 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |    Reserved   |      IPA      |        MT-ID                  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |        Opaque Length          |         Opaque Value ...      | 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               + 
   ~                                                               ~ 
   |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
   |                               | 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
	</artwork>
      </figure>
      
      <t>
	      The rules and procedures of using this new sub-TLV in an MPLS echo request
message are the same as defined for P2MP/MP2MP LDP FEC Stack Sub-TLV in <xref target="RFC6425"/>. The only difference is that the Root LSR address is now
(sub-)topology scoped.

      </t>
      	
    </section>
    
    <section title="Implementation Status">
<t>
[Note to the RFC Editor - remove this section before publication, as well as remove 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 based on a proposal described in
<xref target="RFC7942"/>
. The description of implementations in this section is intended to assist the IETF in its decision processes in progressing drafts to RFCs. Please note that the listing of any individual implementation here does not imply endorsement by the IETF. Furthermore, no effort has been spent to verify the information presented 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 features. 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 documents that have the benefit of running code, which may serve as evidence of valuable experimentation and feedback that have made the implemented protocols more 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 assigns 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>
	This extension to mLDP does not introduce any new security
	considerations beyond that already applied to the base LDP
	specification <xref target="RFC5036"/>, LDP extensions for Multi-Topology specification <xref target="RFC7307"/> base mLDP specification <xref target="RFC6388"/>, and MPLS
	security framework <xref target="RFC5920"/>.
      </t>
      	
    </section>
    
      	
    <section title="IANA Considerations">
      <t>
	This document defines a new LDP capability parameter TLV. IANA is
	requested to assign the lowest available value after 0x0500 from
	"TLV Type Name Space" in the "Label Distribution Protocol (LDP)
	Parameters" registry within "Label Distribution Protocol (LDP) Name
	Spaces" as the new code point for the LDP TLV code point.
      </t>

      <figure title="IANA Code Point" anchor="iana">
	<artwork>
   
   +-----+------------------+---------------+-------------------------+ 
   |Value| Description      | Reference     | Notes/Registration Date | 
   +-----+------------------+---------------+-------------------------+ 
   | TBA | MT Multipoint    | This document |                         | 
   |     | Capability       |               |                         | 
   +-----+------------------+---------------+-------------------------+ 

	</artwork>
      </figure>
      
    </section>
    <section title="Contributor">
	    <t>
		    Anuj Budhiraja
		    Cisco systems 
		    </t>
	</section>	    
         
    <section title="Acknowledgments">
      <t>
	The authors would like to acknowledge Eric Rosen for his input on
	this specification.
      </t>
    </section>
    
  </middle>
  
  <back>
      
    <references title="Normative References">
      &rfc2119;
      <?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">
      <?rfc include="reference.RFC.5036"?>
      <?rfc include="reference.RFC.5918"?>
      <?rfc include="reference.RFC.5919"?>
      <?rfc include="reference.RFC.5920"?>
      <?rfc include="reference.RFC.5561"?>
    </references>
           
  </back>  
 
</rfc>
 
