--- 1/draft-ietf-mpls-p2mp-requirement-00.txt 2006-02-05 00:42:10.000000000 +0100 +++ 2/draft-ietf-mpls-p2mp-requirement-01.txt 2006-02-05 00:42:10.000000000 +0100 @@ -1,22 +1,18 @@ Network Working Group Seisho Yasukawa (NTT) -Internet Draft Dimitri Papadimitriou (Alcatel) - Jean Philippe Vasseur (Cisco) -Adrian Farrel (Old Dog) Yuji Kamite (NTT Communications) -Markus Jork (Avici) Rahul Aggarwal (Juniper) -Andrew G. Malis(Tellabs) Alan Kullberg (Motorola) +Internet Draft Editor -Expiration Date: March 2004 October 2003 +Expiration Date: June 2004 January 2004 Requirements for Point to Multipoint extension to RSVP-TE - + Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. 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. @@ -37,110 +33,133 @@ This document presents a set of requirements for Point-to-Multipoint (P2MP) Traffic Engineering (TE) extensions to Multiprotocol Label Switching (MPLS). It specifies functional requirements for RSVP-TE in order to deliver P2MP applications over a MPLS TE infrastructure. It is intended that potential solutions, that specify RSVP-TE procedures for P2MP TE LSP setup, use these requirements as a guideline. It is not intended to specify solution specific details in this document. It is intended that the requirements presented in this document are not limited to the requirements of packet switched networks, but also - encompass the requirements of TDM, lambda and port switching networks - managed by Generalized MPLS (GMPLS) protocols. Protocol solutions - developed to meet the requirements set out in this document must be - equally applicable to MPLS and GMPLS. + encompass the requirements of L2SC, TDM, lambda and port switching + networks managed by Generalized MPLS (GMPLS) protocols. Protocol + solutions developed to meet the requirements set out in this document + must be equally applicable to MPLS and GMPLS. Table of Contents - 1. Introduction .................................................. 3 - 2. Definitions ................................................... 4 - 2.1 Acronyms .................................................. 4 - 2.2 Terminology ............................................... 4 - 2.3 Conventions ............................................... 5 - 3. Problem statements ............................................ 5 - 3.1 Motivation ................................................ 5 - 3.2 Requirements overview ..................................... 6 - 4. Application Specific Requirements ............................. 8 - 4.1 P2MP tunnel for IP multicast data ......................... 8 - 4.2 P2MP backbone network for IP multicast network ............ 9 - 4.3 Layer 2 Multicast Over MPLS ...............................10 - 4.4 VPN multicast network .....................................10 - 4.5 GMPLS network .............................................11 - 5. Requirements for P2MP capability exptension ...................12 - 5.1 P2MP LSP tunnels ..........................................12 - 5.2 P2MP explicit routing .....................................12 - 5.3 Explicit Path Loose Hops and Widely Scoped Abstract Nodes .13 - 5.4 P2MP LSP establishment, teardown, and modification - mechanisms ................................................14 - 5.5 Failure Reporting and Error Recovery ......................14 - 5.6 Record route of P2MP TE LSP tunnels .......................15 + 1. Introduction .................................................. 4 + 2. Definitions ................................................... 5 + 2.1 Acronyms .................................................. 5 + 2.2 Terminology ............................................... 5 + 2.3 Conventions ............................................... 6 + 3. Problem statements ............................................ 7 + 3.1 Motivation ................................................ 7 + 3.2 Requirements overview ..................................... 7 + 4. Application Specific Requirements ............................. 9 + 4.1 P2MP tunnel for IP multicast data ......................... 9 + 4.2 P2MP TE backbone network for IP multicast network .........10 + 4.3 Layer 2 Multicast Over MPLS ...............................11 + 4.4 VPN multicast network .....................................12 + 4.5 GMPLS network .............................................13 + 5. Detailed requirements for P2MP TE extensions ..................13 + 5.1 P2MP LSP tunnels ..........................................13 + 5.2 P2MP explicit routing .....................................14 + 5.3 Explicit Path Loose Hops and Widely Scoped Abstract Nodes .15 + 5.4 P2MP TE LSP establishment, teardown, and modification + mechanisms ................................................16 + 5.5 Failure Reporting and Error Recovery ......................16 + 5.6 Record route of P2MP TE LSP tunnels .......................17 5.7 Call Admission Control (CAC) and QoS control mechanism - of P2MP LSP tunnels .......................................15 - 5.8 Rerouting of P2MP TE LSP ..................................16 - 5.9 IPv4/IPv6 support .........................................16 - 5.10 P2MP MPLS Label ..........................................16 - 5.11 Routing advertisement of P2MP capability .................17 - 5.12 Multi-Area/AS LSP ........................................17 - 5.13 P2MP MPLS management .....................................17 - 6. Security Considerations........................................17 - 7. Acknowledgements ..............................................17 - 8. References ....................................................18 - 9. Author's Addresses ............................................19 + of P2MP TE LSP tunnels ....................................18 + 5.8 Reoptimization of P2MP TE LSP .............................18 + 5.9 IPv4/IPv6 support .........................................19 + 5.10 P2MP MPLS Label ..........................................19 + 5.11 Routing advertisement of P2MP capability .................19 + 5.12 Multi-Area/AS LSP ........................................19 + 5.13 P2MP MPLS management .....................................20 + 5.14 Scalability ..............................................20 + 5.15 Backwards Compatibility ..................................20 + 5.16 GMPLS ....................................................21 + 5.17 Requirements for Hierarchical P2MP TE LSPs ...............21 + 5.18 P2MP Crankback routing ...................................22 + 6. Security Considerations........................................22 + 7. Acknowledgements ..............................................22 + 8. References ....................................................22 + 8.1 Normative References ......................................22 + 8.2 Informational References ..................................23 + 9. Author's Addresses ............................................24 + 10. Intellectual Property Consideration ...........................26 + 11. Full Copyright Statement ......................................26 1. Introduction + Existing MPLS Traffic Engineering (MPLS-TE) allows for strict QoS + guarantees, resources optimization, and fast failure recovery but is + limited to P2P applications. There are P2MP applications like Content + Distribution, Interactive Multimedia and VPN multicast that would + also benefit from these TE capabilities. This clearly motivates for + enhancement of base MPLS-TE tool box in order to support P2MP + applications. + This document presents a set of requirements for Point-to-Multipoint (P2MP) Traffic Engineering (TE) extensions to Multiprotocol Label Switching (MPLS). It specifies functional requirements for RSVP-TE - [RFC3209] in order to deliver P2MP applications over a MPLS TE - infrastructure. + [RFC3209] in order to deliver P2MP applications over a MPLS TE. It is intended that potential solutions, that specify RSVP-TE procedures for P2MP TE LSP setup, use these requirements as a guideline. It is not intended to specify solution specific details in this document. It is intended that the requirements presented in this document are not limited to the requirements of packet switched networks, but also encompass the requirements of TDM, lambda and port switching networks managed by Generalized MPLS (GMPLS) protocols. Protocol solutions developed to meet the requirements set out in this document must be equally applicable to MPLS and GMPLS. Content Distribution (CD), Interactive multi-media (IMM), and VPN multicast are applications that are best supported with multicast - capabilities. - - One possible solution would be to setup multiple P2P TE LSPs, one - to each of the required egress LSRs. This requires replicating - incoming packets to all the P2P LSPs at the ingress LSR to - accommodate multipoint communication. This is sub-optimal. It - places the replication burden on the ingress LSR and hence has - very poor scaling characteristics. It also wastes bandwidth - resources, memory and MPLS (e.g. label) resources in the network. + capabilities. One possible way to map P2MP flows onto LSPs in a MPLS + network is to setup multiple P2P TE LSPs, one to each of the required + egress LSRs. This requires replicating incoming packets to all the + P2P LSPs at the ingress LSR to accommodate multipoint communication. + This is sub-optimal. It places the replication burden on the ingress + LSR and hence has very poor scaling characteristics. It also wastes + bandwidth resources, memory and MPLS (e.g. label) resources in the + network. Hence, to provide TE for a P2MP application in an efficient manner - in a large scale environemnt, P2MP TE mechanisms are required. - Existing MPLS P2P TE mechanisms have to be enhanced to support P2MP - TE LSP setup. + in a large-scale environment, P2MP TE mechanisms are required + specifically to support P2MP TE LSPs. Existing MPLS TE mechanisms + [RFC3209] do not support P2MP TE LSPs so new mechanisms must be + developed. This should be achieved without running a multicast routing protocol in the network core and with maximum re-use of the existing MPLS - protocols. A P2MP LSP will be setup with TE constraints and will - allow efficient packet replication at various branching points in - the network. RSVP-TE will be used for setting up a P2MP LSP with - enhancements to existing P2P TE LSP procedures. The P2MP TE LSP - setup mechanism will include the ability to add/remove receivers - to/from an existing P2MP LSP. + protocols in particular MPLS Traffic Engineering. + + A P2MP TE LSP will be set up with TE constraints and will allow + efficient packet replication at various branching points in the + network. RSVP-TE will be used for setting up a P2MP TE LSP with + enhancements to existing P2P TE LSP procedures. The P2MP TE LSP setup + mechanism will include the ability to add/remove receivers to/from an + existing P2MP TE LSP. + + Moreover, multicast traffic cannot currently benefit from P2P TE LSP. + Hence, CAC for P2P TE LSP cannot take into account the bandwidth used + for multicast traffic. P2MP TE will allow to count the bandwidth used + by unicast and multicast traffic by means of CAC. The problem statement is discussed in the following section. This - document discusses various applications that can use P2MP MPLS TE. + document discusses various applications that can use P2MP TE LSP. Detailed requirements for the setup of a P2MP MPLS TE LSP using RSVP-TE are described. Application specific requirements are also described. 2. Definitions 2.1 Acronyms P2P: @@ -153,194 +172,218 @@ 2.2 Terminology The reader is assumed to be familiar with the terminology in [RFC3031] and [RFC3209]. P2MP TE LSP: A traffic engineered label switched path that has one unique ingress LSR (also referred to as the root) and more than one - egress LSR (referred to as the leaf). + egress LSR (also referred to as the leaf). P2MP path: - The ordered set of LSRs and links that comprise the P2MP LSP. + The ordered set of LSRs and links that comprise the path of + a P2MP TE LSP from its ingress LSR to all of its egress LSRs. + + This path may be viewed as a tree. sub-P2MP path: A sub-P2MP path is a portion of a P2MP path starting at a particular LSR that is a member of the P2MP path and includes ALL downstream LSRs that are also members of the P2MP path. + A sub-P2MP path may be viewed as a sub-tree. + + P2P sub-LSP path: + + The path from the ingress LSR to a particular egress LSR. ingress LSR: - It is responsible for initiating the signaling messages that set - up, modify and teardown the LSP + The LSR that is responsible for initiating the signaling messages + that set up the P2MP TE LSP. + + egress LSR: + + One of potentially many destinations of the P2MP TE LSP. Egress + LSRs may also be referred to as leaf nodes or leaves. + + bud LSR: + + An LSR that is an egress, but also has one or more directly + connected downstream LSRs. branch LSR: - A LSR that has more than one downstream LSR. A branch LSR receives - a single MPLS frame, makes a duplicate of it, and sends each to - downstream interfaces. + An LSR that has more than one directly connected downstream LSR. graft LSR: - A LSR that is already a member of the P2MP path and is in + An LSR that is already a member of the P2MP path and is in process of signaling a new sub-P2MP path. prune LSR: - A LSR that is already a member of the P2MP path and is in + An LSR that is already a member of the P2MP path and is in process of tearing down an existing sub-P2MP path. - egress LSR: - - One of potentially many destinations of the P2MP LSP. Note - that in some P2MP paths, an egress LSR may also have one or more - downstream LSRs. Such an egress LSR may also be referred to - as a branch LSR. - 2.3 Conventions 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 [5]. 3. Problem Statement 3.1 Motivation Content Distribution (CD), Interactive multi-media (IMM), and VPN multicast are applications that are best supported with multicast capabilities. IP Multicast provides P2MP communication. However, there are no Traffic Engineering (TE) capabilities or QoS guarantees with existing IP multicast protocols. Note that Diff-serv (see [RFC2475],[RFC2597] - and [RFC3246]) combined with IP multicast routing is not sufficient - for P2MP applications for many of the same reasons that it is not - sufficient for unicast applications TE and constraint based routing - are required to enable and scale the efficient management of network - resources, mechanism to prevent congestion (including Call Admission - Function combined with explicit source routing, Diffserv), and to - enable sub-second rerouting around network failures. Furthermore - there are no existing P2MP mechanisms for carrying layer 2 or - SONET/SDH multicast traffic over MPLS. TE capabilities are desirable - for both these applications. + and [RFC3246]) combined with IP multicast routing may not be + sufficient for P2MP applications for many of the same reasons that + it is not sufficient for unicast applications. Note also that + multicast tree provided by existing IP multicast routing protocols + are not optimal, which may lead to significant bandwidth wasting. + TE and Constraint Based Routing, including Call Admission Control + (CAC), explicit source routing and bandwidth reservation, is required + to enable efficient resource optimization, strict QoS guarantees, and + fast recovery around network failures. + + Furthermore there are no existing P2MP mechanisms for carrying + layer 2 or SONET/SDH multicast traffic over MPLS. TE capabilities are + desirable for both these applications. One possible solution would be to setup multiple P2P TE LSPs, one to each of the required egress LSRs. This requires replicating incoming traffic to all the P2P LSPs at the ingress LSR to accommodate multipoint communication. This is clearly sub-optimal. It places the replication burden on the ingress LSR and hence has very poor scaling characteristics. It also wastes bandwidth resources, memory and MPLS (e.g. label) resources in the network. Hence, to provide MPLS TE [RFC2702] for a P2MP application in an efficient manner in a large scale environment, P2MP TE mechanisms are required. Existing MPLS P2P TE mechanisms have to be enhanced to - support P2MP TE LSP setup. + support P2MP TE LSP. 3.2. Requirements Overview This document is proposing requirements for the setup of P2MP TE LSPs. This should be achieved without running a multicast routing protocol in the network core and with maximum re-use of the existing MPLS protocols. Note that the use of MPLS forwarding to carry the multicast traffic may also be useful in the context of some network design where it is being desired to avoid running some multicast routing protocol like PIM [PIM-SM] or BGP (which might be required for the use of PIM). - A P2MP LSP will be setup with TE constraints and will allow efficient - MPLS packet replication at various branching points in the network. - RSVP-TE will be used for setting up a P2MP LSP with enhancements to - existing P2P TE LSP procedures. + + A P2MP LSP will be set up with TE constraints and will allow + efficient MPLS packet replication at various branching points in the + network. RSVP-TE will be used for setting up a P2MP TE LSP with + enhancements to existing P2P TE LSP procedures. The P2MP TE LSP setup mechanism will include the ability to - add/remove receivers to/from an existing P2MP LSP and should support - all the TE LSP management procedures defined for P2P TE LSP - (like the non disruptive rerouting (so called "Make before break" - procedure). + add/remove egress LSRs to/from an existing P2MP TE LSP and should + support all the TE LSP management procedures defined for P2P TE LSP + (like the non disruptive rerouting - the so called "Make before + break" procedure). The computation of P2MP TE paths is implementation dependent and is beyond the scope of the solutions that are built with this document as a guideline. - The MPLS WG will specify how to build solutions for the setup a P2MP - TE LSP. The usage of those solutions will be application dependent - and is out of the scope of this draft. + The MPLS WG will specify how to build P2MP TE LSPs. The usage of + those solutions will be application dependent and is out of the scope + of this draft. However, it is a requirement that those solutions be + applicable to GMPLS as well as MPLS so that only a single set of + solutions are developed. Consider the following figure. Source 1 (S1) | I-LSR1 | | | | R2----E-LSR3--LSR1 LSR2---E-LSR2--Receiver 1 (R1) | : R3----E-LSR4 E-LSR5 | : | : R4 R5 - Figure 1. + Figure 1 - The above figure shows I(Ingress)-LSR1, E(Egress)-LSR2, E-LSR3 and - E-LSR4. I-LSR1 is attached to a traffic source that is generating - traffic for a P2MP application. E-LSR2, E-LSR3 and E-LSR4 are - attached to receivers that are interested in receiving traffic for - the application. The following are the objectives that we wish to - achieve: + The figure above shows a single ingress (I-LSR1), and four egresses + (E-LSR2, E-LSR3, E-LSR4 and E-LSR5). I-LSR1 is attached to a traffic + source that is generating traffic for a P2MP application. + Receivers:R1, R2, R3 and R4 are attached to E-LSR2, E-LSR3 and + E-LSR4. - a) A P2MP TE LSP path information which satisfies various + The following are the objectives that we wish to achieve: + + a) A P2MP TE LSP path which satisfies various constrains is pre-determined and supplied to ingress I-LSR1. + + Note that no assumption is made on whether the path is provided + to I-LSR1 or computed by I-LSR1. + Typical constraints are bandwidth requirements, resource class - affinities, fast rerouting, preemption, along with several - potential other constraints. There should not be any + affinities, fast rerouting, preemption. There should not be any restriction on the possibility to support the set of constraints already defined for point to point TE LSPs. - b) Set up a P2MP TE LSP from I-LSR1 to E-LSR2, E-LSR3 and E-LSR4 - using the path information which could have been computed by - some off-line or on-line algorithms. + + b) A P2MP TE LSP is set up by means of RSVP-TE from I-LSR1 to + E-LSR2, E-LSR3 and E-LSR4 using the path information. + c) In this case, the branch LSR1 should replicate incoming packets and send them to E-LSR3 and E-LSR4. - d) The P2MP TE LSP should be setup by enhancing existing RSVP-TE - P2P procedures and without any requirement for multicast - routing protocol in the network core. - e) The solution should provide the ability to gracefully modify - P2MP TE LSP (i.e add/remove some part of the p2mp TE LSP - without requiring to entirely tearing down or setting up a - completely new p2mp TE LSP). Such operations should be - performed in a non traffic disruptive fashion. In this case, - a sub-P2MP path LSR2->E-LSR5 is grafted and pruned based on - traffic destination change. + + d) If a new receiver (R5) expresses an interest in receiving + traffic, a new path is determined and a sub-P2MP path from + LSR2 to E-LSR5 is grafted onto the P2MP path. LSR2 becomes + a branch LSR. 4. Application Specific Requirements This section describes some of the applications that P2MP MPLS - TE is applicable to along with application specific requirements, - if any. + TE is applicable to along with application specific requirements. -4.1 P2MP tunnel for IP multicast data + The purpose of this section is not to mandate how P2MP TE LSPs must + be used in certain application scenarios. Rather it is to illustrate + some of the potential application scenarios so as to highlight + the features and functions that any P2MP solution must provide in + order to be of wide use and applicability. This section is not meant + to be exhaustive and not limited to the described applications. - One typical scenario is to use P2MP TE LSPs as P2MP tunnels of - multicast data traffic (e.g. IP mcast). In this scenario, a P2MP LSP - tunnel is established between an ingress LSR which accomodates - IP multicast source and several egress LSRs which accomodate several - IP multicast receivers. Instead of using IP multicast routing - protocol in the network core, a P2MP LSP tunnel is established over - the network and IP multicast data are tunnelled from an ingress LSR - node to multiple egress leaf LSRs with the data replication at the - branch LSRs in the network core. Figure 2 shows this example. - Note that a P2MP TE LSP can be established over multiple AREAs/ASs. +4.1 P2MP TE LSP for IP multicast data + + One typical scenario is to use P2MP TE LSPs as P2MP tunnels carrying + multicast data traffic (e.g. IP mcast). In this scenario, a P2MP TE + LSP is established between an ingress LSR which supports + IP multicast source and several egress LSRs which support several + IP multicast receivers. Instead of using an IP multicast routing + protocol in the network core, a P2MP TE LSP is established over + the network and IP multicast data are tunneled from an ingress LSR + node to multiple egress leaf LSRs with data replication at the + branch LSRs in the network core. Figure 2 shows an example. + + Note that a P2MP TE LSP can be established over multiple areas/ASs + and that the egress LSRs may deliver data into an IP multicast + network. Mcast Source | +---------------I-LSR0----------------+ | | | | LSR0 +----E-LSR2---R2 | / \ / | R1---E-LSR1---LSR2-----LSR1 LSR3----LSR4----E-LSR3---R3 | / \ \ | | / \ +----E-LSR4---R4 @@ -348,47 +391,48 @@ +-------- / ------++------ \ ---------+ | | || | R5---E-LSR5--------LSR5 || IPmcast Network | | / \ || | +-E-LSR6---E-LSR7-++----MR0--MR1------+ | | | | R6 R7 R8 R9 Figure 2 -4.2 P2MP backbone network for IP multicast network +4.2 P2MP TE backbone network for IP multicast network - In this scenario, P2MP TE LSPs are utilized to construct a P2MP - backbone network for multicast network (e.g. IPmcast network). Each - IP multicast access networks is interconnected by a P2MP TE LSP. - A P2MP LSP is established from an ingress LSR which accomodates IP - multicast network that has a Mcast Source to multiple egress LSRs - which accomodate an IP multicast network. In this scenario, - ingress/egress LSRs placed at the edge of multicast network must - handle IP multicast routing protocol. This means that each - ingress/egress LSR exchanges IP multicast routing messages as - neighbour router. Figure 3 shows a network example of this scenario. - A P2MP LSP is established from a I-LSR1 to E-LSR2, E-LSR3, E-LSR4 and - each ingress/egress LSR exchanges the multicast routing messages each - other. + P2MP TE LSPs are applicable in a backbone network to construct or + support a multicast network(e.g. IPmcast network). + The IP multicast access networks are interconnected by P2MP TE LSPs. + A P2MP TE LSP is established from an ingress LSR which accommodates + an IP multicast network that has a multicast source to multiple + egress LSRs which each accommodate an IP multicast network. + + In this scenario, ingress/egress LSRs placed at the edge of multicast + network must handle an IP multicast routing protocol. This means that + the ingress/egress LSRs exchange IP multicast routing messages as + neighbour routers. Figure 3 shows a network example of this scenario. + + A P2MP TE LSP is established from a I-LSR1 to E-LSR2, E-LSR3, E-LSR4 + and the ingress/egress LSR exchanges the multicast routing messages + with each other. As specified in the section on the problem statement it should be possible for a solution to add/remove egress LSRs to/from the P2MP MPLS TE LSP. IP multicast group membership distribution between the egress LSRs may change frequently. This in turn may require a potential P2MP MPLS TE solution, that is suitable for IP multicast, - to handle additions/deletions of egress LSRs at a rapid rate. + to handle additions/deletions of egress LSRs with an appropriate + reactiveness. It is recommended to support a message exchange mechanism on top of - P2MP LSP setup mechanism to support multicast (S, G) Join/ Leave and - to allow the ingress LSR to hold sufficient information in order to - optimise multicast FEC on sender nodes. + P2MP LSP setup mechanism to support multicast (S, G) Join/Leave. Though several schemes exist to handle this scenario, these are out of scope of this document. This document only describes requirements to setup a P2MP TE LSP. Mcast Source | +-----MR-----+ | | | | MR | @@ -406,170 +450,183 @@ R1---MR---MR || MR || MR__ | | / \ || / \ || / \ \MR---R8 +--MR--MR--++----MR--MR---++--MR--MR--+ | | | | | | R2 R3 R4 R5 R6 R7 Figure 3 4.3 Layer 2 Multicast Over MPLS - Existing layer 2 networks offer multicast video services. These are - typically carried using layer 2 NBMA technology such as ATM or - layer 2 BA technology such as Ethernet. It may be desirable to - deliver these layer 2 multicast services over a converged MPLS - infrastructure where P2MP TE LSPs are used instead. + Existing layer 2 networks offer multicast video services. These + are typically carried using layer 2 NBMA technology such as ATM + or layer 2 Broadcast Access technology such as Ethernet. It may be + desirable to deliver these layer 2 multicast services over a + converged MPLS infrastructure where P2MP TE LSPs are used instead. + + For instance, several SPs provision P2MP ATM VCs for TV/ADSL + services. These P2MP VCs are setup between a video server and a set + of ATM DSLAMs. Each channel is carried in a distinct P2MP VC. These + VC maybe be routed independently, or may all be nested into a unique + PVC, connecting the video sever to all DSLAMs. + + Such service could benefit from a P2MP MPLS-TE control plane. An + option is to setup a permanent P2MP TE LSP between the video server + and all DSLAMs, that would correspond to a PVC carrying all channel + VCs. In this case each DSLAM receives all channels, even if there are + no receivers that are registered for a given channel. This ensure + fast zapping, but lead to significant bandwidth wasting. + + A second option is to setup a distinct P2MP TE LSP per channel. If a + client, behind a DSLAM, zaps to a new channel, then the DSLAM has + to be added to the P2MP TE LSP carrying this channel using a P2MP TE + grafting procedure. Pruning procedure has to be used to remove a + DSLAM from the P2MP TE LSP if it is not already egress LSR for that + LSP because all the clients, behind the DSLAM, stop watching the + channel. 4.4 VPN multicast network In this scenario, P2MP TE LSPs are utilized to construct a provider network which can deliver VPN multicast service(s) to its customers. + A P2MP TE LSP is established between all the PE routers which accommodate the customer private network(s) that handle the IP - multicast packets. Each PE router must handle VPN instance. + multicast packets. Each PE router must handle a VPN instance. - For example, in Layer3 VPN like BGP/MPLS based IP VPN + For example, in Layer3 VPNs like BGP/MPLS based IP VPNs [BGP/MPLS IP VPNs], this means that each PE router must handle both private multicast VRF tables and common multicast routing and forwarding table. And each PE router exchanges private multicast routing information between the corresponding PE routers. It is - desirable that P2MP MPLS TE can be used for Layer3 VPN's data + desirable that P2MP MPLS TE can be used for Layer3 VPN data transmission. - Another example is Layer2 VPN that supports multipoint - LAN connectivity service. In Ethernet network environment, IP - multicast data is flooded to the appropriate Ethernet port(s). In - Ethernet multipoint L2 VPN service provided by MPLS, this function is - achieved by switching MPLS encapsulated frames towards the relevant - PE nodes. But if existing P2P TE LSPs are used as tunnels between - PEs, any ingress PE must duplicate the frames and the send them to - the corresponding PEs. This means data stream is flooded just from - ingress PE, which will waste provider's network resources. - So, for Layer 2 VPNs, it is desirable that P2MP MPLS TE LSPs are used - for data transmission instead of P2P MPLS TE LSPs, contributing in - turn to savings of network resources. + Another example is a Layer2 VPN that supports multipoint + LAN connectivity service. In an Ethernet network environment, IP + multicast data is flooded to the appropriate Ethernet port(s). -4.5 GMPLS Network + An Ethernet multipoint Layer2 VPN service provided by MPLS, this + function is achieved by switching MPLS encapsulated frames towards + the relevant PE nodes. But if existing P2P TE LSPs are used as + tunnels between PEs, any ingress PE must duplicate the frames and + send them to the corresponding PEs. This means the data stream is + flooded just from the ingress PE, which will waste the provider's + network resources. + + So, for Layer 2 VPNs that are required to support multicast traffic, + it is desirable that P2MP MPLS TE LSPs are used for data transmission + instead of P2P MPLS TE LSPs, contributing in turn to savings of + network resources. + + This document does not set requirements for how multicast VPNs are + provided, but it does set requirements for the function that must be + available in P2MP MPLS solutions. Therefore, it is not a requirement + that multicast VPNs utilize P2MP MPLS, but it is a requirement that + P2MP MPLS solutions should be capable of supporting multicast VPNs. + +4.5 GMPLS Networks GMPLS supports only P2P TE-LSPs just like MPLS. GMPLS enhances MPLS - to support four new classes of interfaces Layer-2 Switch Capable + to support four new classes of interfaces: Layer-2 Switch Capable (L2SC), Time-Division Multiplex (TDM), Lambda Switch Capable (LSC) and Fiber-Switch Capable (FSC) in addition to Packet Switch Capable (PSC) already supported by MPLS. All of these interface classes have so far been limited to P2P TE LSPs (see [RFC 3473] and [RFC 3471]). The requirement for P2MP services for non-packet switch interfaces is similar to that for PSC interfaces. In particular, cable distribution services such as video distribution are prime candidates to use P2MP features. Therefore, it is a requirement that all the features/mechanisms (and protocol extensions) that will be defined to provide MPLS P2MP TE LSPs will be equally applicable to P2MP PSC and non-PSC TE-LSPs. - This also means that solutions for MPLS P2MP TE-LSPs when applied - to GMPLS P2MP PSC and non-PSC TE-LSPs shall be backward and - forward compatible with the other features of GMPLS including: - - o control and data plane separation (IF_ID RSVP_HOP and - IF_ID ERROR_SPEC), - o full support of numbered and unnumbered TE links (see [RFC 3477] - and [GMPLS-ROUTING]), - o use of the GENERALIZED_LABEL_REQUEST and the GENERALIZED_LABEL - (C-Type 2 and 3) in conjunction with the LABEL_SET and the - ACCEPTABLE_LABEL_SET object, - o processing of the ADMIN_STATUS object, - o processing of the PROTECTION object, - o support of Explicit Label Control, - o processing of the Path_State_Removed Flag, - o handling of Graceful Deletion procedures. - - In addition, since non-PSC TE-LSPs may have to be processed in - environments where the "P2MP capability" could be limited, specific - constraints may also apply during the P2MP TE Path computation. Being - technology specific, these constraints are outside the scope of this - document. However, technology independent constraints (i.e. - constraints that are applicable independently of the LSP class) - should be allowed during P2MP TE LSP message processing. It has to be - emphasized that path computation and management techniques shall be - as close as possible than those being used for PSC P2P and P2MP TE - LSPs. - -5. Requirements for P2MP capability extension +5. Detailed requirements for P2MP TE extensions 5.1 P2MP LSP tunnels The P2MP RSVP-TE extensions MUST be applicable to signaling LSPs of different traffic types. For example, it must be possible to - signal a P2MP LSP to carry any kind of payload being packet or + signal a P2MP TE LSP to carry any kind of payload being packet or non-packet based (including frame, cell, TDM un/structured, etc.) Carrying IP multicast or Ethernet traffic within a P2MP tunnel are typical examples. As with P2P MPLS technology[RFC3031], traffic is classified with FEC in this extension. All packets which belong to a particular FEC and which travel from a particular node MUST follow the same P2MP path. In order to scale to a large number of branches, P2MP TE LSPs should be identified by unique identifier that is constant for the whole LSP regardless of the number of branches and/or leaves. Therefore, the identification of the P2MP session by its destination addresses is not adequate. 5.2 P2MP explicit routing Various optimizations in P2MP path formation need to be applied to - meet various needs such as bandwidth guarantees, delay requirements, - and minimization of the total P2MP path cost. + meet various QoS requirements and operational constraints. + Some P2MP applications may request a bandwidth guaranteed P2MP path + which satisfies end-to-end delay requirements. And some operators + may want to set up a cost minimum P2MP path by specifying branch LSRs + explicitly. The P2MP TE solution therefore MUST provide a means of establishing - arbitrary P2MP paths. Figure 4 shows two typical examples. + arbitrary P2MP paths under the control of an external path + computation process or path configuration process or dynamic path + computation process located on the ingress LSR. Figure 4 shows two + typical examples. A A | / \ B B C | / \ / \ C D E F G | / \ / \/ \ / \ D--E*-F*-G*-H*-I*-J*-K*--L H I J KL M N O Steiner P2MP path SPF P2MP path - Figure 4 Examples of P2MP LSP topology + Figure 4 Examples of P2MP TE LSP topology One example is Steiner[STEINER] P2MP path (Cost minimum P2MP path). This P2MP path is suitable for constructing cost minimum P2MP path. To realize this P2MP path, several intermediate LSRs must be both MPLS data terminating LSR and transit LSR (LSR E, F, G, H, I, J, K, - in the figure). This means that the LSR must perform both label + in the figure 4). This means that the LSR must perform both label swapping and popping at the same time. Therefore, the P2MP TE solution MUST support a mechanism that can setup this kind of - terminate LSR between a ingress LSR and egress LSRs. + bud LSR between an ingress LSR and egress LSRs. Another example is CSPF (Constraint Shortest Path Fast) P2MP path. By some metric (which can be set upon any specific criteria like the delay, bandwidth, a combination of those), one can calculate a cost minimum P2MP path. This P2MP path is suitable for carrying real time traffic. To support explicit setup of any reasonable P2MP path shape, a P2MP - TE solution must support some form of explicit source-based control - of the P2MP path. This can be used by the ingress LSR to setup the - P2MP LSP. Being implementation specific (more precisely dependent of + TE solution MUST support some form of explicit source-based control + of the P2MP path which can explicitly include particular LSRs as + branch nodes. This can be used by the ingress LSR to setup the P2MP + TE LSP. Being implementation specific (more precisely dependent of the data structure specific representation and its processing), the detailed method for controlling the P2MP TE LSP topology depends on how the control plane represents the P2MP TE LSP data plane entity. - For instance, a P2MP TE LSP can be simply represented by its - individual branches or as a whole. Here also, effectiveness of the - potential solutions is left outside the scope of this document. - In any case, it is expected that this control must be driven by the - ingress LSR. + + For instance, a P2MP TE LSP can be simply represented as a + whole tree or by its individual branches. + + Here also, effectiveness of the potential solutions is left outside + the scope of this document. In any case, it is expected that this + control must be driven by the ingress LSR. 5.3 Explicit Path Loose Hops and Widely Scoped Abstract Nodes A P2MP path is completely specified if all of the required branches and hops between a sender and leaf LSR are indicated. A P2MP path is partially specified if only a subset of intermediate branches and hops are indicated. This may be achieved using loose hops in the explicit path, or using widely scoped abstract nodes such as IPv4 prefixes shorter than 32 bits or AS numbers. @@ -581,177 +638,327 @@ based control of the P2MP path as defined in the previous section. Where this support is provided, protocol solutions MUST allow downstream LSRs to apply further explicit control to the P2MP path to resolve a partially specified path into a (more) completely specified path. Protocol solutions MUST allow the P2MP path to be completely specified at the ingress where sufficient information exists to allow the full path to be computed. - In all cases, the egress nodes of the P2MP LSP must be fully + In all cases, the egress nodes of the P2MP TE LSP must be fully specified. -5.4 P2MP LSP establishment, teardown, and modification mechanisms + In case of path being computed by some downstream LSRs (e.g. case of + hops specified as loose hops), the solution SHOULD provide the + ability for the ingress LSR of the P2MP TE LSP to learn the full + P2MP path. Note that this requirement may be relaxed in some + environment (e.g. Inter-AS) where confidentiality must be preserved. + +5.4 P2MP TE LSP establishment, teardown, and modification mechanisms The P2MP TE solution must support large scale P2MP TE LSPs establishment and teardown in a scalable manner. - In addition to whole P2MP TE LSP establishment and teardown - mechanism, it SHOULD implement partial P2MP path modification - mechanism. + In addition to P2MP TE LSP establishment and teardown mechanism, + it SHOULD implement partial P2MP path modification mechanism. For the purpose of adding sub-P2MP TE LSPs for existing P2MP TE LSP, the extension SHOULD support grafting mechanism. For the purpose of deleting a sub-P2MP TE LSPs from existing P2MP TE LSP, the extension SHOULD support pruning mechanism. It is RECOMMENDED that these grafting and pruning operations do not cause any additional processing in nodes except along the path to the - grafting and pruning node and its downstream nodes. + grafting and pruning node and its downstream nodes. Moreover, both + grafting and pruning operations MUST not be traffic disruptive for + the traffic currently forwarded along the P2MP path. 5.5 Failure Reporting and Error Recovery Failure events may cause egress nodes or sub-P2MP LSPs to become - detached from the P2MP LSP. These events must be reported upstream as - for a P2P LSP. + detached from the P2MP TE LSP. These events must be reported upstream + as for a P2P LSP. - Protection and recovery techniques SHOULD be applied to the LSP to - build new sub-P2MP LSPs or use backup sub-P2MP LSPs to restore the - data to the severed egress nodes. + The solution SHOULD provide recovery techniques such as protection + and restoration allowing to recover any impacted sub-P2MP TE LSPs. + In particular, it is required to provide fast protection mechanisms + applicable to P2MP TE LSP similar to the solutions specified in [FRR] + for P2P TE LSPs. Note also that no assumption is made on whether + backup paths for P2MP TE LSPs should or not be shared with P2P TE + LSPs backup paths. + + A P2MP TE solution MUST support P2MP fast protection mechanism + to handle P2MP applications sensitive to traffic disruption. The report of the failure of delivery to fewer than all of the egress - nodes SHOULD NOT cause automatic teardown of the P2MP LSP. That is, - while some egress nodes remain connected to the P2MP path it should - be a matter of local policy at the ingress whether the P2MP LSP is - retained. + nodes SHOULD NOT cause automatic teardown of the P2MP TE LSP. + That is, while some egress nodes remain connected to the P2MP path it + should be a matter of local policy at the ingress whether the P2MP + LSP is retained. When all egress node downstreams of a branch node have become - disconnected from the P2MP path, and the branch node is unable to - restore connectivity to any of them through recovery or protection + disconnected from the P2MP path, and the some branch node is unable + to restore connectivity to any of them through recovery or protection mechanisms, the branch node MAY remove itself from the P2MP path. Since the faults that severed the various downstream egress nodes - from the P2MP path may be disperate, the branch node MUST report all - such errors to its upstream neighbor. + from the P2MP path may be disparate, the branch node MUST report all + such errors to its upstream neighbor. The ingress node can then + decide to re-compute the path to that particular egress node, around + the failure point. + + Solutions MAY include the facility for transit LSRs and particularly + branch nodes to recompute sub-P2MP paths to restore them after + failures. In the event of successful repair, no error notification is + reported to upstream nodes, but the new paths are reported if route + recording is in use. Crankback requirements are discussed in + [CRANKBACK]. 5.6 Record route of P2MP TE LSP tunnels - Being able to identify the established topology of P2MP LSP is very - important for various purpose:Management, operation of some local - recovery mechanism like Fast Reroute [FRR]. A network operator uses - this information to manage P2MP LSP. Therefore, topology information - MUST be collected and updated after P2MP LSP establishment and - modification process. + Being able to identify the established topology of P2MP TE LSP is + very important for various purpose:Management, operation of some + local recovery mechanism like Fast Reroute [FRR]. A network operator + uses this information to manage P2MP TE LSP. Therefore, topology + information MUST be collected and updated after P2MP TE LSP + establishment and modification process. For this purpose, conventional Record Route mechanism is useful. As with other conventional mechanism, this information should be forwarded upstream towards the sender node. The P2MP TE solution MUST support a mechanism which can collect and update P2MP path topology information after P2MP LSP establishment and modification process. + It is RECOMMENDED that those information are collected in a data - format by which the sendor node can recognize the P2MP path topology + format by which the sender node can recognize the P2MP path topology without involving some complicated data calculation process. + The solution MUST support the recording of both outgoing interfaces + or node-id [NODE-ID]. + 5.7 Call Admission Control (CAC) and QoS Control mechanism - of P2MP LSP tunnels + of P2MP TE LSP tunnels - P2MP LSP share network resource with P2P LSP. Therefore it is - important to use CAC and QoS as P2P LSP for easy and scalable + P2MP TE LSP share network resource with P2P TE LSP. Therefore it is + important to use CAC and QoS as P2P TE LSP for easy and scalable operation. In particular, it should be highlighted that because - mutliacst traffic cannot make use of point to point TE LSP, multicast + Multicast traffic cannot make use of point to point TE LSP, multicast traffic cannot be easily taken into account by point to point in order to perform CAC. The use of P2MP TE LSP will now allow for an accounting of the unicast and multicast traffic for bandwidth reservation. P2MP TE solution MUST both supports FF and SE reservation style. P2MP TE solution MUST be applicable to Diffserv-enabled network that can provide consistent QoS control in P2MP LSP traffic. This solution SHOULD also satisfy DS-TE requirement [RFC3564] and - interoprable smoothly with current P2P DS-TE protocol specification. + interoperable smoothly with current P2P DS-TE protocol specification. -5.8 Rerouting of P2MP TE LSP + Note that this requirement document does not make any assumption on + the type of bandwidth pool used for P2MP TE LSP which can either be + shared with P2P TE LSP or be dedicated. - The detection of a more optical path and network resource failure(s) - (such as link(s) and node(s)) are examples of situation where P2MP TE - LSP re-routing is needed. While re-routing is in progress, an - important requirement is avoiding traffic disruption. An additional - requirement is avoiding double bandwidth reservation (over the common - parts between the old and new LSP) through the use of resource - sharing. Make-before-break (see [RFC 3209]) delivers simultaneously a - solution to these requirements. +5.8 Reoptimization of P2MP TE LSP - Make-Before-Break MUST be supported for a P2MP TE LSP to ensure - that there is no traffic disruption when the P2MP TE LSP is rerouted. + The detection of a more optimal path is an example of situation where + P2MP TE LSP re-routing is may be required. While re-routing is in + progress, an important requirement is avoiding double bandwidth + reservation (over the common parts between the old and new LSP) + thorough the use of resource sharing. Make-before-break + (see [RFC3209]) delivers simultaneously a solution to these + requirements. - And a P2MP TE solution MUST support P2MP fast rerouting mechanism - to handle P2MP applications sensitive to traffic disruption. + Make-before-break MUST be supported for a P2MP TE LSP to ensure that + there is no traffic disruption when the P2MP TE LSP is rerouted. + + There is a possibility to achieve make-before-break that only + applies to a sub-P2MP path without impacting the data on the all of + the other parts of the P2MP path. + + The solution SHOULD allow for make-before-break reoptimization of + a sub-tree with no impact on the rest of the tree (no label + reallocation, no change in identifiers...). + + Such reoptimization MAY be initiated by the sub-tree root branch + node. (e.g. the branch node setup a new sub-tree, then splices + traffic on the new subtree and delete the former sub-tree). 5.9 IPv4/IPv6 support A P2MP TE solution MUST be applicable to IPv4/IPv6. 5.10 P2MP MPLS Label A P2MP TE solution MUST support establishment of both P2P and - P2MP TE LSP and MUST NOT impede the operation of P2P LSPs within + P2MP TE LSP and MUST NOT impede the operation of P2P TE LSPs within the same network. A P2MP TE solution MUST be specified in such - a way that it allows P2MP and P2P LSPs to be signaled on the + a way that it allows P2MP and P2P TE LSPs to be signaled on the same interface. Labels for P2MP TE LSPs and P2P TE LSPs MAY be assigned from shared or dedicated label space(s). Label space shareability is implementation specific. 5.11 Routing advertisement of P2MP capability This document has identified several high-level requirements for - enhancements to routing protocols to support P2MP MPLS. - These are needed to facilitate the computation of P2MP paths using TE - constraints so that explicit source-control may be applied to the LSP - paths as they are signaled through the network. + enhancements to routing and signalling protocols to support + P2MP MPLS. These are needed to facilitate the computation of P2MP + paths using TE constraints so that explicit source-control may be + applied to the LSP paths as they are signaled through the network. These requirements include but not restricted to: - - the ability of an LSR to support branching + - the ability of an LSR to support branching. - the ability of an LSR to act as an egress and a branch for the same LSP. The applicability of these requirements is for further study. These requirements are developed in a separate document. 5.12 Multi-Area/AS LSP P2MP TE solution SHOULD support multi-Area/AS LSP. + A separate document may deal with the specifics of inter-area + and inter-AS P2MP TE LSPs. + 5.13 P2MP MPLS management The MPLS MIB should be enhanced to provide P2MP TE LSP management. P2MP TE LSPs MUST have a unique identifier whose definition MAY be partially or entirely shared with P2P TE LSP identifiers used for management purposes. +5.14 Scalability + + Scalability is a key requirement in P2MP MPLS systems. Solutions + should be designed to scale well with an increase in the number of + any of the following: the number of recipients, the number of branch + points and the number of branches. Both scalability of performance + and operation must be considered. + + Key considerations may include: + - the amount of refresh processing associated with maintaining a + P2MP TE LSP. + - the amount of protocol state that must be maintained by transit + LSRs along a P2MP path. + - the number of protocol messages required to set up or tear down + a P2MP LSP as a function of the number of egress LSRs. + - the number of protocol messages required to repair a P2MP LSP + after failure or perform make-before-break. + - the amount of protocol information transmitted to manage a P2MP + TE LSP (i.e. the message size). + - the amount of potential routing extensions. + - the amount of control plane processing required by the ingress, + transit and egress LSRs to add/delete a branch LSP to/from an + existing P2MP LSP. + +5.15 Backwards Compatibility + + It should be an aim of any P2MP solution to offer as much backward + compatibility as possible. An ideal would be to offer P2MP services + across legacy MPLS networks without any change to any LSR in the + network. + + If this ideal cannot be achieved, the aim should be to use legacy + nodes as both transit non-branch LSRs and egress LSRs. + + It is a further requirement of all protocol solutions that any LSR + that implements the solution shall not be prohibited by that act from + supporting P2P TE LSPs using existing signaling mechanisms. That is, + unless administratively prohibited, P2P TE LSPs must be supported + through a P2MP network. + +5.16 GMPLS + + Solutions for MPLS P2MP TE-LSPs when applied to GMPLS P2MP PSC + or non-PSC TE-LSPs must be backward and forward compatible with + the other features of GMPLS including: + + o control and data plane separation (IF_ID RSVP_HOP and + IF_ID ERROR_SPEC), + o full support of numbered and unnumbered TE links (see [RFC 3477] + and [GMPLS-ROUTING]), + o use of the GENERALIZED_LABEL_REQUEST and the GENERALIZED_LABEL + (C-Type 2 and 3) in conjunction with the LABEL_SET and the + ACCEPTABLE_LABEL_SET object, + o processing of the ADMIN_STATUS object, + o processing of the PROTECTION object, + o support of Explicit Label Control, + o processing of the Path_State_Removed Flag, + o handling of Graceful Deletion procedures. + + In addition, since non-PSC TE-LSPs may have to be processed in + environments where the "P2MP capability" could be limited, specific + constraints may also apply during the P2MP TE Path computation. + Being technology specific, these constraints are outside the scope + of this document. However, technology independent constraints (i.e. + constraints that are applicable independently of the LSP class) + should be allowed during P2MP TE LSP message processing. It has to + be emphasized that path computation and management techniques shall + be as close as possible than those being used for PSC P2P TE LSPs + and P2MP TE LSPs. + + Finally, note that bi-directional TE LSPs are not applicable to + multicast traffic. Although many leaf nodes may be considered as + senders in a multicast group, a P2MP TE LSP models a single + distribution tree from a sender to multiple recipients. If such + a tree were made bi-directional it would be a multipoint-to-point + tree in the reverse direction. + +5.17 Requirements for Hierarchical P2MP TE LSPs + + [LSP-HIER] define concepts and procedures for P2P LSP hierarchy. They + should be extended to support P2MP LSP hierarchy. + + The P2MP MPLS-TE solution SHOULD support the concept of region and + region hierarchy (PSC1