Network Working Group                            J.-L. Le Roux (Editor)
Internet Draft                                           France Telecom
Category: Informational
Expires: August 2008











                                                              March 2008

            Requirements for Point-To-Multipoint Extensions to
                     the Label Distribution Protocol

                     draft-ietf-mpls-mp-ldp-reqs-04.txt


Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups. Note that other
   groups may also distribute working documents as Internet-Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time. It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress".

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.
Abstract

   This document lists a set of functional requirements for Label
   Distribution Protocol (LDP) extensions for setting up point-to-
   multipoint (P2MP) Label Switched Paths (LSP), in order to deliver
   point-to-multipoint applications over a Multi Protocol Label
   Switching (MPLS) infrastructure. It is intended that solutions that

Le Roux et al.    Reqs for P2MP extensions to LDP               [Page 1]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008


   specify LDP procedures for setting up P2MP LSP satisfy these
   requirements.

Conventions used in this document

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED",  "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

Table of Contents

   1.      Contributing Authors........................................3
   2.      Definitions.................................................3
   2.1.    Acronyms....................................................3
   2.2.    Terminology.................................................3
   3.      Introduction................................................5
   4.      Problem Statement and Requirements Overview.................6
   4.1.    Problem Statement...........................................6
   4.2.    Requirements overview.......................................6
   5.      Application scenario........................................7
   6.      Detailed Requirements.......................................8
   6.1.    P2MP LSPs...................................................8
   6.2.    P2MP LSP FEC................................................8
   6.3.    P2MP LDP routing............................................9
   6.4.    Setting up, tearing down and modifying P2MP LSPs............9
   6.5.    Label Advertisement.........................................9
   6.6.    Data Duplication............................................9
   6.7.    Detecting and Avoiding Loops...............................10
   6.8.    P2MP LSP Re-routing........................................10
   6.8.1.  Rerouting upon Network Failure.............................10
   6.8.2.  Rerouting on a Better Path.................................10
   6.8.3.  Rerouting upon Planned Maintenance.........................11
   6.9.    Support for LAN interfaces.................................11
   6.10.   Support for encapsulation in P2P and P2MP TE tunnels.......11
   6.11.   Label spaces...............................................11
   6.12.   IPv4/IPv6 support..........................................11
   6.13.   Multi-Area/AS LSPs.........................................12
   6.14.   OAM........................................................12
   6.15.   Graceful Restart and Fault Recovery........................12
   6.16.   Robustness.................................................12
   6.17.   Scalability................................................12
   6.17.1.  Orders of magnitude expected in operational networks......13
   6.18.   Backward Compatibility.....................................13
   7.      Shared Trees...............................................13
   7.1.    Requirements for MP2MP LSPs................................14
   8.      Evaluation criteria........................................14
   8.1.    Performances...............................................14
   8.2.    Complexity and Risks.......................................15
   9.      Security Considerations....................................15
   10.     IANA Considerations........................................15
   11.     Acknowledgments............................................15
   12.     References.................................................15

Le Roux et al.      Reqs for P2MP extensions to LDP           [Page 2]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008


   12.1.   Normative references.......................................15
   12.2.   Informative references.....................................16
   13.     Editor's Address...........................................16
   14.     Contributors' Addresses....................................17
   15.     Intellectual Property Statement............................18

1. Contributing Authors

   The co-authors listed below contributed to the text and content of
   this document.

   Shane Amante, Level 3 Communications, LLC.
   Luyuan Fang, Cisco Systems.
   Yuji Kamite, NTT Communications Corporation.
   Jean-Louis Le Roux, France Telecom.
   Thomas Morin, France Telecom.
   Vincent Parfait, Orange Business Services.
   Lei Wang, Telenor.

2. Definitions

2.1. Acronyms

      P2P:  Point-To-Point

      P2MP: Point-To-MultiPoint

      MP2MP: MultiPoint-To-Multipoint

      PE: Provider Edge router

      P: Provider router

      IGP: Interior Gateway Protocol

      AS: Autonomous System

2.2. Terminology

      The reader is assumed to be familiar with the terminology in
      [RFC3031], [RFC5036], and [RFC4026].

      Ingress LSR:

           Router acting as a sender of an LSP

      Egress LSR:

           Router acting as a receiver of an LSP




Le Roux et al.      Reqs for P2MP extensions to LDP           [Page 3]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008


      P2P LSP:

           A LSP that has one unique Ingress LSR and one unique
           Egress LSR

      MP2P LSP:

           A LSP that has one or more Ingress LSRs and one unique
           Egress LSR

      P2MP LSP:

           A LSP that has one unique Ingress LSR and one or more
           Egress LSRs

      MP2MP LSP:

           A LSP that as one or more Leaf LSRs acting indifferently as
           Ingress or Egress LSR

      Leaf LSR:

           Egress LSR of a P2MP LSP or Ingress/Egress LSR of a MP2MP LSP

      Transit LSR:

           A LSR of a P2MP or MP2MP LSP that has one or more Downstream
           LSRs

      Branch LSR:

           A LSR of a P2MP or MP2MP LSP that has more than one
           downstream LSR

      Bud LSR:

           A LSR of a P2MP or MP2MP LSP that is an egress but also
           has one or more directly connected downstream LSR(s)

      P2MP tree:

           The ordered set of LSRs and links that comprise the path of a
           P2MP LSP from its ingress LSR to all of its egress LSRs.










Le Roux et al.      Reqs for P2MP extensions to LDP           [Page 4]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008


3. Introduction

   LDP [RFC5036] has been deployed for setting up point-to-point (P2P)
   and multipoint-to-point (MP2P) LSPs, in order to offer point-to-point
   services in MPLS backbones.

   There are emerging requirements for supporting delivery of point-to-
   multipoint applications in MPLS backbones, such as those defined in
   [RFC4834] and [L2VPN-MCAST-REQ].

   This requires mechanisms for setting up point-to-multipoint LSPs
   (P2MP LSP), i.e. LSPs with one Ingress LSR, a set of Egress LSRs, and
   with MPLS traffic replication at some Branch LSRs.

   RSVP-TE extensions for setting up Point-To-Multipoint Traffic
   Engineered LSPs (P2MP TE LSPs), have been defined in [RFC4875].
   They meet requirements expressed in [RFC4461]. This approach is
   useful, in network environments where P2MP Traffic Engineering
   capabilities are needed (Optimization, QoS, Fast recovery).

   However for operators who want to support point-to-multipoint traffic
   delivery on an MPLS backbone, without Traffic Engineering needs, and
   have already deployed LDP for P2P traffic, an interesting and useful
   approach would be to rely on LDP extensions in order to setup point-
   to-multipoint (P2MP) LSPs. This would bring consistency with P2P MPLS
   applications and would ease the delivery of point-to-multipoint
   services in an MPLS backbone.

   This document focuses on the LDP approach for setting up P2MP LSPs.
   It lists a detailed set of requirements for P2MP extensions to LDP,
   so as to deliver P2MP traffic over a LDP-enabled MPLS infrastructure.
   These requirements should be used as guidelines when specifying LDP
   extensions. It is intended that solutions that specify LDP procedures
   for P2MP LSP setup, satisfy these requirements.

   Note that generic requirements for P2MP extensions to MPLS are out of
   the scope of this document. Rather this document describes solution
   specific requirements related to LDP extensions in order to set up
   P2MP LSPs.

   Note also that other mechanisms could be used for setting up P2MP
   LSPs, such as for instance PIM extensions, but these are out of the
   scope of this document. The objective is not to compare these
   mechanisms but rather to focus on the requirements for an LDP
   extension approach.

   The document is structured as follows:
        - Section 4 points out the problem statement;
        - Section 5 illustrates an application scenario;
        - Section 6 addresses detailed requirements for P2MP LSPs;
        - Section 7 finally discusses requirements for
                    MultiPoint-to-MultiPoint (MP2MP) LSPs.

Le Roux et al.      Reqs for P2MP extensions to LDP           [Page 5]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008



4. Problem Statement and Requirements Overview

4.1. Problem Statement

   LDP [RFC5036] has been deployed for setting up P2P and MP2P MPLS LSPs
   as PE-to-PE tunnels so as to carry point-to-point traffic essentially
   in Layer 3 and Layer 2 VPN networks. There are emerging requirements
   for supporting multicast traffic delivery within these VPN
   infrastructures ([RFC4834] and [L2VPN-MCAST-REQ]). For various
   reasons, including consistency with P2P applications, and taking full
   advantages of MPLS network infrastructure, it would be highly
   desirable to use MPLS LSPs for the delivery of multicast traffic.
   This could be implemented by setting up a group of P2P or MP2P LSPs,
   but such an approach may be sub-optimal since it would result in data
   replication at the ingress LSR, and bandwidth inefficiency (duplicate
   data traffic within the network). Hence new mechanisms are required
   that would allow traffic from an Ingress LSR to be efficiently
   delivered to a number of Egress LSRs in an MPLS backbone, avoiding
   duplicate copies of a packet on a given link.

   Such efficient traffic delivery requires setting up P2MP LSPs. A P2MP
   LSP is an LSP starting at an Ingress LSR, and ending on a set of one
   or more Egress LSRs. Traffic sent by the Ingress LSR is replicated on
   one or more Branch LSRs down to Egress LSRs.

   RSVP-TE extensions for setting up P2MP TE LSPs, which meet
   requirements expressed in [RFC4461], have been defined in [RFC4875].
   This approach is useful, in network environments where Traffic
   Engineering capabilities are required. However, for operators that
   deployed LDP for setting up PE-to-PE unicast MPLS LSPs, and without
   the need for traffic engineering, an interesting approach would be
   using LDP extensions for setting up P2MP LSPs.

   The following gives a set of guidelines that a specification of LDP
   extensions for setting up P2MP LSPs should follow.

4.2. Requirements overview

   The P2MP LDP mechanism MUST support setting up P2MP LSPs, i.e. LSPs
   with one Ingress LSR and one or more Egress LSRs, with traffic
   replication at some Branch LSRs.

   The P2MP LDP mechanism MUST allow the addition or removal of leaves
   associated with a P2MP LSP.

   The P2MP LDP mechanism MUST co-exist with current LDP mechanisms and
   inherit its capability sets from [RFC5036]. It is of paramount
   importance that the P2MP LDP mechanism MUST NOT impede the operation
   of existing P2P/MP2P LDP LSPs. Also the P2MP LDP mechanism MUST co-
   exist with P2P and P2MP RSVP-TE mechanisms [RFC3209], [RFC4875]. It


Le Roux et al.      Reqs for P2MP extensions to LDP           [Page 6]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008


   is of paramount importance that the P2MP LDP mechanism MUST NOT
   impede the operation of existing P2P and P2MP RSVP-TE LSPs.

   The P2MP LDP mechanism MAY also allow setting up multipoint-to-
   multipoint (MP2MP) LSPs connecting a group of Leaf LSRs acting
   indifferently as Ingress LSR or Egress LSR. This may allow a
   reduction in the amount of LDP state that needs to be maintained by a
   LSR.

5. Application scenario

   Figure 1 below illustrates an LDP enabled MPLS provider network, used
   to carry both unicast and multicast traffic of VPN customers
   following for instance the architecture defined in [2547-MCAST] for
   BGP/MPLS VPNs, or the one defined in [VPLS-MCAST].

   In this example, a set of MP2P LDP LSPs are setup between Provider
   Edge (PE) routers to carry unicast VPN traffic within the MPLS
   backbone.

   And in this example a set of P2MP LDP LSPs are setup between PE
   routers acting as Ingress LSRs and PE routers acting as Egress LSRs,
   so as to support multicast VPN traffic delivery within the MPLS
   backbone.

   For instance, a P2MP LDP LSP is setup between Ingress LSR PE1 and
   Egress LSRs PE2, PE3, and PE4. It is used to transport multicast
   traffic from PE1 to PE2, PE3 and PE4. P1 is a Branch LSR, it
   replicates MPLS traffic sent by PE1 to P2, P3 and PE2. P2 and P3 are
   non-branch transit LSRs, they forward MPLS traffic sent by P1 to PE3
   and PE4 respectively.


                                 PE1
                                 *|                *** P2MP LDP LSP
                                 *| ****
                                 P1-----PE2
                                */ \*
                               */   \*
                          *****/     \* ****
                       PE3----P2      P3----PE4
                              |       |
                              |       |
                              |       |
                             PE5     PE6

   Figure 1: P2MP LSP from PE1 to PE2, PE3, PE4.

   If later there are new receivers attached to PE5 and PE6, then PE5
   and PE6 join the P2MP LDP LSP. P2 and P3 become Branch LSRs and
   replicate traffic received from P1, to PE3 and PE5, and to PE4 and
   PE6 respectively (see figure 2 below).

Le Roux et al.      Reqs for P2MP extensions to LDP           [Page 7]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008



                                 PE1
                                 *|               *** P2MP LDP LSP
                                 *| ****
                                 P1-----PE2
                                */ \*
                               */   \*
                          *****/     \*  ***
                       PE3----P2      P3----PE4
                             *|       |*
                             *|       |*
                             *|       |*
                             PE5     PE6

   Figure 2: Attachment of PE5 and PE6.

   The above example is provided for the sake of illustration.
   Note that P2MP LSPs ingress and egress LSRs may not necessarily be PE
   routers. Also branch LSRs may not necessarily be P routers.

6. Detailed Requirements

6.1. P2MP LSPs

   The P2MP LDP mechanism MUST support setting up P2MP LSPs.
   Data plane aspects related to P2MP LSPs are those already defined in
   [RFC4461]. That is, a P2MP LSP has one Ingress LSR and one or
   more Egress LSRs. Traffic sent by the Ingress LSR is received by all
   Egress LSRs. The specific aspects related to P2MP LSPs is the action
   required at a Branch LSR, where data replication occurs.
   Incoming labelled data is appropriately replicated to several
   outgoing interfaces which may use different labels. Only one copy of
   a packet MUST be sent on a given link of a P2MP LSP.

   A P2MP LSP MUST be identified by a constant and unique identifier
   within the whole LDP domain, whatever the number of leaves, which
   may vary dynamically. This identifier will be used so as to
   add/remove leaves to/from the P2MP tree.

6.2. P2MP LSP FEC

   As with P2P MPLS technology [RFC5036], traffic MUST be classified
   into a FEC in this P2MP extension. All packets which belong to a
   particular P2MP FEC and which travel from a particular node MUST use
   the same P2MP LSP.

   As such, a new LDP FEC that is suitable for P2MP forwarding MUST be
   specified.





Le Roux et al.      Reqs for P2MP extensions to LDP           [Page 8]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008




6.3. P2MP LDP routing

   As with P2P and MP2P LDP LSPs, the P2MP LDP mechanism MUST support
   hop-by-hop LSP routing. P2MP LDP-based routing SHOULD rely upon the
   information maintained in LSR Routing Information Bases (RIB).

   It is RECOMMENDED that the P2MP LSP routing rely upon a shortest path
   to the Ingress LSR so as to setup an MPLS shortest path tree.

6.4. Setting up, tearing down and modifying P2MP LSPs

   The P2MP LDP mechanism MUST support the establishment, maintenance
   and teardown of P2MP LSPs in a scalable manner. This MUST include
   both the existence of a large amount of P2MP LSPs within a single
   network and a large amount of leaf LSRs for a single P2MP LSP (see
   also section 5.17 for scalability considerations and figures).

   In order to scale well with a large number of leaves it is
   RECOMMENDED to follow a leaf-initiated P2MP LSP setup approach. For
   that purpose, leaves will have to be aware of the P2MP LSP
   identifier. The ways a Leaf LSR discovers P2MP LSPs identifiers rely
   on the applications that will use P2MP LSPs, and are out of the scope
   of this document.

   The P2MP LDP mechanism MUST allow the dynamic addition and removal of
   leaves to and from a P2MP LSP, without any restriction (provided
   there is network connectivity). It is RECOMMENDED that these
   operations be leaf-initiated.
   These operations MUST not impact the data transfer (packet loss,
   duplication, delay) towards other leaves. It is RECOMMENDED that
   these operations do not cause any additional processing except on the
   path from the added/removed Leaf LSR to the Branch LSR.

6.5. Label Advertisement

   The P2MP LDP mechanism MUST support downstream unsolicited label
   advertisement mode. This is well suited to a leaf-initiated approach
   and is consistent with P2P/MP2P LDP operations.

   Other advertisement modes MAY also be supported.

6.6. Data Duplication

   Data duplication refers to the receipt of multiple copies of a packet
   by any leaf. Although this may be a marginal situation, it may also
   be detrimental for certain applications. Hence, data duplication
   SHOULD as much as possible be avoided, and limited to (hopefully
   rare) transitory conditions.



Le Roux et al.      Reqs for P2MP extensions to LDP           [Page 9]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008


   Note, in particular, that data duplication might occur if P2MP LSP
   rerouting is being performed (See also section 6.8).

6.7. Detecting and Avoiding Loops

   The P2MP LDP extension MUST have a mechanism to detect routing loops.
   This may rely on extensions to the LDP Loop detection mechanism
   defined in [RFC5036]. A loop detection mechanism may require
   recording the set of LSRs traversed on the P2MP Tree. The P2MP loop
   avoidance mechanism MUST not impact the scalability of the P2MP LDP
   solution.

   The P2MP LDP mechanism SHOULD have a mechanism to avoid routing loops
   in the data plane even during transient events.

   Furthermore, the P2MP LDP mechanism MUST avoid routing loops in the
   data plane, that may trigger unexpected non-localized exponential
   growth of traffic.

6.8. P2MP LSP Re-routing

   The P2MP LDP mechanism MUST support the rerouting of a P2MP LSP in
   the following cases:
        - Network failure (link or node);
        - A better path exists (e.g. new link, metric change);
        - Planned maintenance.

   Given that P2MP LDP routing should rely on the RIB, the achievement
   of the following requirements also implies the underlying routing
   protocols (IGP, etc.).

6.8.1. Rerouting upon Network Failure

   The P2MP LDP mechanism MUST allow for rerouting of a P2MP LSP in case
   of link or node failure(s), by relying upon update of the routes in
   the RIB. The rerouting time SHOULD be minimized as much as possible
   so as to reduce traffic disruption.

   A mechanism MUST be defined to prevent constant P2MP LSP teardown and
   rebuild which may be caused by the instability of a specific
   link/node in the network. This will rely on IGP dampening but may be
   completed by specific dampening at the LDP level.

6.8.2. Rerouting on a Better Path

   The P2MP LDP mechanism MUST allow for rerouting of a P2MP LSP in case
   a better path is created in the network, for instance as a result of
   a metric change, a link repair, or the addition of links or nodes.
   This will rely on update of the routes in the RIB.




Le Roux et al.      Reqs for P2MP extensions to LDP          [Page 10]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008


6.8.3. Rerouting upon Planned Maintenance

   The P2MP LDP mechanism MUST support planned maintenance operations.
   It MUST be possible to reroute a P2MP LSP before a link/node is
   deactivated for maintenance purposes.
   Traffic disruption and data duplication SHOULD be minimized as much
   as possible during such planned maintenance.
   P2MP LSP rerouting upon planned maintenance MAY rely on a make before
   break procedure.

6.9. Support for LAN interfaces

   The P2MP LDP mechanism SHOULD provide a way for a Branch LSR to send
   a single copy of the data onto an Ethernet LAN interface and reach
   multiple adjacent downstream nodes. This requires that the same label
   be negotiated with all downstream LSRs for the LSP.

   When there are several candidate upstream LSRs on a LAN interface,
   the P2MP LDP mechanism SHOULD provide a way for all downstream LSRs
   of a given P2MP LSP to select the same upstream LSR, so as to avoid
   traffic replication. In addition, the P2MP LDP mechanism SHOULD allow
   for an efficient balancing of a set of P2MP LSPs among a set of
   candidate upstream LSRs on a LAN interface.

6.10. Support for encapsulation in P2P and P2MP TE tunnels

   The P2MP LDP mechanism MUST support nesting P2MP LSPs into P2P and
   P2MP TE tunnels.

   The P2MP LDP mechanism MUST provide a way for a Branch LSR of a P2MP
   LSP, which is also a Head End LSR of a P2MP TE tunnel, to send a
   single copy of the data onto the tunnel and reach all downstream LSRs
   on the P2MP LSP, which are also Egress LSRs of the tunnel. As with
   LAN interfaces, this requires that the same label be negotiated with
   all downstream LSRs of the P2MP LDP LSP.

6.11. Label spaces

   Labels for P2MP LSPs and P2P/MP2P LSPs MAY be assigned from shared or
   dedicated label spaces.

   Note that dedicated label spaces will require the establishment of
   separate P2P and P2MP LDP sessions.

6.12. IPv4/IPv6 support

   The P2MP LDP mechanism MUST support the establishment of LDP sessions
   over both IPv4 and IPv6 control planes.





Le Roux et al.      Reqs for P2MP extensions to LDP          [Page 11]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008


6.13. Multi-Area/AS LSPs

   The P2MP LDP mechanism MUST support the establishment of multi-area
   P2MP LSPs, i.e. LSPs whose leaves do not all reside in the same IGP
   area as the Ingress LSR. This SHOULD be possible without requiring
   the advertisement of Ingress LSRs' addresses across IGP areas.

   The P2MP LDP mechanism MUST also support the establishment of inter-
   AS P2MP LSPs, i.e. LSPs whose leaves do not all reside in the same AS
   as the Ingress LSR. This SHOULD be possible without requiring the
   advertisement of Ingress LSRs' addresses across ASes.

6.14. OAM

   LDP management tools ([RFC3815], etc.) will have to be enhanced to
   support P2MP LDP extensions. This may yield a new MIB module, which
   may possibly be inherited from the LDP MIB.

   Built-in diagnostic tools MUST be defined to check the connectivity,
   trace the path and ensure fast detection of data plane failures on
   P2MP LDP LSPs.

   Further and precise requirements and mechanisms for P2MP MPLS OAM
   purpose are out of the scope of this document and are addressed in
   [RFC4687].

6.15. Graceful Restart and Fault Recovery

   LDP Graceful Restart mechanisms [RFC3478] and Fault Recovery
   mechanisms [RFC3479] SHOULD be enhanced to support P2MP LDP LSPs.

6.16. Robustness

   A solution MUST avoid single points of failures provided there is
   enough network connectivity.

6.17. Scalability

   Scalability is a key requirement for the P2MP LDP mechanism.
   It MUST be designed to scale well with an increase in the number of
   any of the following:
      - number of Leaf LSRs per P2MP LSP;
      - number of Downstream LSRs per Branch LSR;
      - number of P2MP LSPs per LSR.

   In order to scale well with an increase in the number of leaves, it
   is RECOMMENDED that the size of a P2MP LSP state on a LSR, for one
   particular LSP, depend only on the number of adjacent LSRs on the
   LSP.




Le Roux et al.      Reqs for P2MP extensions to LDP          [Page 12]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008


6.17.1. Orders of magnitude expected in operational networks

   Typical orders of magnitude that we expect should be supported are:
   - tens of thousands of P2MP trees spread out across core network
      routers;
   - hundreds, or a few thousands, of leaves per tree;

   See also section 4.2 of [RFC4834].

6.18. Backward Compatibility

   In order to allow for a smooth migration, the P2MP LDP mechanism
   SHOULD offer as much backward compatibility as possible. In
   particular, the solution SHOULD allow the setup of a P2MP LSP along
   non-Branch Transit LSRs that do not support P2MP LDP extensions.

   Also, the P2MP LDP solution MUST co-exist with current LDP mechanisms
   and inherit its capability sets from [RFC5036]. The P2MP LDP solution
   MUST not impede the operation of P2P/MP2P LSPs. A P2MP LDP solution
   MUST be designed in such a way that it allows P2P/MP2P and P2MP LSPs
   to be signalled on the same interface.

7. Shared Trees

   For traffic delivery between a group of N Leaf LSRs which are acting
   indifferently as Ingress or Egress LSRs, it may be useful to
   setup a shared tree connecting all these LSRs, instead of having N
   P2MP LSPs. This would reduce the amount of control and forwarding
   state that has to be maintained on a given LSR.

   There are actually two main options for supporting such shared trees:

        - This could rely on the applications protocols that use LDP
          LSPs. A shared tree could consist of the combination of a
          MP2P LDP LSP from Leafs LSRs to a given root node, with a P2MP
          LSP from this root to Leaf LSRs. For instance with
          Multicast L3 VPN applications, it would be possible to build a
          shared tree by combining (see [2547-MCAST]):
              - a MP2P unicast LDP LSP, from each PE of the group to a
                particular root PE acting as tree root,
              - with a P2MP LDP LSP from this root PE to each PE of the
                group.

        - Or this could rely on a specific LDP mechanism allowing to
          setup multipoint-to-multipoint MPLS LSPs (MP2MP LSPs).

   The former approach (Combination of MP2P and P2MP LSPs at the
   application level) is out of the scope of this document while the
   latter (MP2MP LSPs) belong to the scope of this document.
   Requirements for the set up of MP2MP LSPs are listed below.



Le Roux et al.      Reqs for P2MP extensions to LDP          [Page 13]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008


7.1. Requirements for MP2MP LSPs

   A MP2MP LSP is a LSP connecting a group of Leaf LSRs acting
   indifferently as Ingress or Egress LSRs. Traffic sent by any Leaf LSR
   is received by all other Leaf LSRs of the group.

   Procedures for setting up MP2MP LSPs with LDP SHOULD be specified.
   An implementation that support P2MP LDP LSPs MAY also support MP2MP
   LDP LSP.

   The MP2MP LDP procedures MUST not impede the operations of P2MP LSP.

   Requirements for P2MP LSPs, set forth in section 6, apply equally to
   MP2MP LSPs. Particular attention should be given on the below
   requirements:

   - The solution MUST support recovery upon link and transit node
     failure and there MUST NOT be any single point of failure (provided
     network connectivity is redundant);
   - The size of MP2MP state on a LSR, for one particular MP2MP LSP,
     SHOULD only depend on the number of adjacent LSRs on the LSP;
   - Furthermore, the MP2MP LDP mechanism MUST avoid routing loops that
     may trigger exponential growth of traffic. Note that this
     requirement is more challenging with MP2MP LSPs as a LSR can
     receive traffic for a given LSP on multiple interfaces.

    There are additional requirements specific to MP2MP LSPs:

   - It is RECOMMENDED that a MP2MP MPLS LSP follow shortest paths to a
     specific LSR called root LSR;
   - It is RECOMMENDED to define several root LSRs (e.g. a primary and
      a backup) to ensure redundancy upon root LSR failure;
   - The receiver SHOULD not receive back a packet it has sent on the
     MP2MP LSP;
   - The solution SHOULD avoid that all traffic between any pair of
     leaves is traversing a root LSR, and SHOULD as much as possible
     minimize the distance between two leaves (similarly to PIM-Bidir
     trees);
   - It MUST be possible to check connectivity of a MP2MP LSP in both
      directions.

8. Evaluation criteria

8.1. Performances

      The solution will be evaluated with respect to the following
      criteria:

      (1) Time to add or remove a Leaf LSR;
      (2) Time to repair a P2MP LSP in case of link or node
          failure;
      (3) Scalability (state size, number of messages, message size).

Le Roux et al.      Reqs for P2MP extensions to LDP          [Page 14]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008



   Particularly the P2MP LDP mechanism SHOULD be designed with as key
   objective to minimize the additional amount of state and additional
   processing required in the network.

   Also, the P2MP LDP mechanism SHOULD be designed so that convergence
   times in case of link or node failure are minimized, in order to
   limit traffic disruption.

8.2. Complexity and Risks

   The proposed solution SHOULD not introduce complexity to the current
   LDP operations to such a degree that it would affect the stability
   and diminish the benefits of deploying such solution.

9. Security Considerations

   This document does not introduce any new security issue beyond those
   inherent to LDP, and a P2MP LDP solution will rely on the security
   mechanisms defined in [RFC5036] (e.g. TCP MD5 Signature).

   An evaluation of the security features for MPLS networks may be found
   in [MPLS-SEC], and where issues or further work is identified by that
   document, new security features or procedures for the MPLS protocols
   will need to be developed.

10. IANA Considerations

      This informational document makes no requests to IANA for action.

11. Acknowledgments

   We would like to thank Christian Jacquenet (France Telecom),
   Hitoshi Fukuda (NTT Communications), Ina Minei (Juniper), Dean
   Cheng (Cisco Systems), and Benjamin Niven-Jenkins (British Telecom),
   for their highly useful comments and suggestions.

   We would also like to thank authors of [RFC4461] from which some text
   of this document has been inspired.


12. References

12.1. Normative references

   [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
   Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC5036] L. Andersson, I. Minei, B. Thomas, "LDP Specification", RFC
   5036, September 2006.



Le Roux et al.      Reqs for P2MP extensions to LDP          [Page 15]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008


   [RFC3815] J. Cuchiarra et al. "Definitions of Managed Objects for the
   Multiprotocol Label Switching (MPLS), Label Distribution Protocol
   (LDP)", RFC 3815, June 2004.

   [RFC3478] M. Leelanivas, Y. Rekhter, R. Aggarwal, "Graceful Restart
   Mechanism for Label Distribution Protocol" RFC 3478, February 2003.

   [RFC3479] A. Farrel, "Fault Tolerance for the Label Distribution
   Protocol (LDP)", RFC 3479, February 2003.

12.2. Informative references

   [RFC4834] T. Morin, Ed., "Requirements for Multicast in L3
   Provider-Provisioned VPNs", RFC 4834, April 2007.

   [L2VPN-MCAST-REQ]  Y. Kamite et al. "Requirements for Multicast
   Support in Virtual Private LAN Services", draft-ietf-l2vpn-vpls-
   mcast-reqts, work in progress.

   [2547-MCAST] E. Rosen, R. Aggarwal, et. al., "Multicast in MPLS/BGP
   IP VPNs", draft-ietf-l3vpn-2547bis-mcast, work in progress.

   [VPLS-MCAST] R.Aggarwal, Y Kamite, L Fang, "VPLS Multicast" draft-
   ietf-l2vpn-vpls-mcast, work in progress.

   [RFC4687] S. Yasukawa, A. Farrel, D. King, T. Nadeau, "OAM
   Requirements for Point-To-Multipoint MPLS Networks", RFC 4687,
   September 2006.

   [RFC4461] S. Yasukawa, et. al., "Requirements for Point-to-Multipoint
   capability extension to MPLS", RFC 4461, April 2006.

   [RFC4875] R. Aggarwal, D. Papadimitriou, S. Yasukawa, et. al.,
   "Extensions to RSVP-TE for Point to Multipoint TE LSPs", RFC 4875,
   May 2007.

   [RFC4026]  Andersson, L., Madsen, T., "PPVPN Terminology", RFC 4026,
    March 2005.

   [RFC3209] Awduche, D, Berger, L., Gan, D., Li, T., Srinivasan, V.,
   Swallow, G. "RSVP-TE: Extensions to RSVP for LSP Tunnels", RFC 3209,
   December 2001.

13. Editor's Address

   Jean-Louis Le Roux
   France Telecom
   2, avenue Pierre-Marzin
   22307 Lannion Cedex
   FRANCE
   Email: jeanlouis.leroux@orange-ftgroup.com

Le Roux et al.      Reqs for P2MP extensions to LDP          [Page 16]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008



14. Contributors' Addresses

   Thomas Morin
   France Telecom
   2, avenue Pierre-Marzin
   22307 Lannion Cedex
   FRANCE
   Email: thomas.morin@orange-ftgroup.com

   Vincent Parfait
   Orange Business Services
   1041 Route des Dolines
   Sophia Antipolis
   06560 Valbonne
   FRANCE
   Email: vincent.parfait@orange-ftgroup.com

   Luyuan Fang
   Cisco Systems, Inc.
   Email: lufang@cisco.com

   Lei Wang
   Telenor
   Snaroyveien 30
   Fornebu  1331
   NORWAY
   Email: lei.wang@telenor.com

   Yuji Kamite
   NTT Communications Corporation
   Tokyo Opera City Tower
   3-20-2 Nishi Shinjuku, Shinjuku-ku,
   Tokyo 163-1421,
   JAPAN
   Email: y.kamite@ntt.com

   Shane Amante
   Level 3 Communications, LLC
   1025 Eldorado Blvd
   Broomfield, CO 80021
   USA
   Email: shane@level3.net










Le Roux et al.      Reqs for P2MP extensions to LDP          [Page 17]


Internet Draft    draft-ietf-mpls-mp-ldp-reqs-04.txt        March 2008


15. Intellectual Property Statement

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.

   Disclaimer of Validity

   This document and the information contained herein are provided
   on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE
   REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE
   IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL
   WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY
   WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE
   ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS
   FOR A PARTICULAR PURPOSE.

   Copyright Statement

   Copyright (C) The IETF Trust (2007). This document is subject to the
   rights, licenses and restrictions contained in BCP 78, and except as
   set forth therein, the authors retain all their rights.













Le Roux et al.      Reqs for P2MP extensions to LDP          [Page 18]