--- 1/draft-ietf-mpls-p2mp-requirement-03.txt 2006-02-05 00:42:13.000000000 +0100 +++ 2/draft-ietf-mpls-p2mp-requirement-04.txt 2006-02-05 00:42:13.000000000 +0100 @@ -1,39 +1,36 @@ Network Working Group Seisho Yasukawa (NTT) Internet Draft Editor Category: Informational -Expiration Date: December 2004 July 2004 +Expiration Date: February 2005 September 2004 Requirements for Point to Multipoint Traffic Engineered MPLS LSPs - + Status of this Memo By submitting this Internet-Draft, I certify that any applicable patent or other IPR claims of which I am aware have been disclosed, or will be disclosed, and any of which I become aware will be disclosed, in accordance with RFC 3668. - 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. - 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." + 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/1id-abstracts.html The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Abstract This document presents a set of requirements for @@ -39,97 +36,163 @@ This document presents a set of requirements for Point-to-Multipoint(P2MP) Traffic Engineered (TE) Multiprotocol Label Switching (MPLS) Label Switched Paths (LSPs). It specifies functional requirements for solutions in order to deliver P2MP applications over a MPLS TE infrastructure. It is intended that solutions that specify procedures for P2MP TE LSP setup satisfy these requirements. There is no intent to either specify solution specific details in this document or application specific requirements. + 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 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 attempt to be equally applicable to MPLS and - GMPLS. + not limited to the requirements of packet switched networks, but also + 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 attempt to be equally applicable to MPLS and GMPLS. Table of Contents - 1. Introduction ................................................. 04 - 2. Definitions .................................................. 05 - 2.1 Acronyms ................................................. 05 - 2.2 Terminology .............................................. 06 - 2.3 Conventions .............................................. 07 - 3. Problem Statement ............................................ 07 - 3.1 Motivation ............................................... 07 - 3.2 Requirements Overview .................................... 08 - 4. Examples of candidate applications that may require - P2MP TE LSP ...................................................10 - 4.1 P2MP TE LSP for IP multicast data ....................... 10 - 4.2 P2MP TE backbone network for IP multicast network ....... 11 - 4.3 Layer 2 Multicast Over MPLS ............................. 13 - 4.4 VPN multicast network ................................... 13 - 4.5 GMPLS Networks .......................................... 14 - 5. Detailed requirements for P2MP TE extensions ................. 15 - 5.1 P2MP LSP tunnels ........................................ 15 - 5.2 P2MP explicit routing ................................... 15 - 5.3 Explicit Path Loose Hops and Widely Scoped Abstract Nodes.17 - 5.4 P2MP TE LSP establishment, teardown, and modification - mechanisms .............................................. 17 - 5.5 Fragmentation ........................................... 18 - 5.6 Failure Reporting and Error Recovery .................... 18 - 5.7 Record route of P2MP TE LSP tunnels ..................... 19 - 5.8 Call Admission Control (CAC) and QoS Control mechanism .. 19 - 5.9 Reoptimization of P2MP TE LSP ........................... 20 - 5.10 IPv4/IPv6 support ....................................... 20 - 5.11 P2MP MPLS Label ......................................... 21 - 5.12 Routing advertisement of P2MP capability ................ 21 - 5.13 Multi-Area/AS LSP ....................................... 21 - 5.14 P2MP MPLS OAM ........................................... 21 - 5.15 Scalability ............................................. 22 - 5.16 Backwards Compatibility ................................. 22 - 5.17 GMPLS ................................................... 23 - 5.18 Requirements for Hierarchical P2MP TE LSPs .............. 24 - 5.19 P2MP Crankback routing .................................. 24 - 6. Security Considerations ...................................... 24 - 7. Acknowledgements ............................................. 25 - 8. References ................................................... 25 - 8.1 Normative References ..................................... 25 - 8.2 Informational References ................................. 26 - 9. Editor's Address ............................................. 27 - 10. Authors' Addresses .......................................... 27 - 11. Intellectual Property Consideration ......................... 29 - 11.1 IPR Disclosure Acknowledgement .......................... 29 - 12. Full Copyright Statement .................................... 29 + + 1. Introduction .................................................. 04 + 2. Definitions ................................................... 07 + 2.1 Acronyms .................................................. 07 + 2.2 Terminology ............................................... 07 + 2.3 Conventions ............................................... 09 + 3. Problem Statement ............................................. 09 + 3.1 Motivation ................................................ 09 + 3.2. Requirements Overview .................................... 10 + 4. Examples of candidate applications that may require P2MP TE LSP 12 + 4.1 P2MP TE LSP for IP multicast data ......................... 13 + 4.2 P2MP TE backbone network for IP multicast network ........ 13 + 4.3 Layer 2 Multicast Over MPLS .............................. 14 + 4.4 VPN multicast network ..................................... 15 + 4.5 GMPLS Networks ............................................ 16 + 5. Detailed requirements for P2MP TE extensions .................. 16 + 5.1 P2MP LSP tunnels .......................................... 16 + 5.2 P2MP explicit routing ..................................... 17 + 5.3 Explicit Path Loose Hops and Widely Scoped Abstract Nodes . 18 + 5.4 P2MP TE LSP establishment, teardown, and modification mecha 19 + 5.5 Fragmentation ............................................. 19 + 5.6 Failure Reporting and Error Recovery ...................... 20 + 5.7 Record route of P2MP TE LSP tunnels ....................... 21 + 5.8 Call Admission Control (CAC) and QoS Control mechanism .... 21 + 5.9 Variation of LSP Parameters ............................... 22 + 5.10 Re-optimization of P2MP TE LSPs .......................... 22 + 5.11 Tree Remerge ............................................. 23 + 5.12 Data Duplication ......................................... 24 + 5.13 IPv4/IPv6 support ........................................ 24 + 5.14 P2MP MPLS Label .......................................... 24 + 5.15 Routing advertisement of P2MP capability ................. 24 + 5.16 Multi-Area/AS LSP ........................................ 25 + 5.17 Multi-access LANs ........................................ 25 + 5.18 P2MP MPLS OAM ............................................ 25 + 5.19 Scalability .............................................. 26 + 5.20 Backwards Compatibility .................................. 28 + 5.21 GMPLS .................................................... 28 + 5.22 Requirements for Hierarchical P2MP TE LSPs ............... 29 + 5.23 P2MP Crankback routing ................................... 29 + 6. Security Considerations ....................................... 29 + 7. Acknowledgements .............................................. 30 + 8. References .................................................... 30 + 8.1 Normative References ...................................... 30 + 8.2 Informational References .................................. 31 + 9. Editor's Address .............................................. 32 + 10. Authors' Addresses ........................................... 32 + 11. Intellectual Property Consideration .......................... 34 + 12. Full Copyright Statement ..................................... 34 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 enhancements of the base MPLS-TE tool box in order to - support P2MP applications. + 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 + enhancements of the base MPLS-TE tool box in order to support P2MP + applications. + + [RFC2702] specifies requirements for traffic engineering over MPLS. + It describes traffic engineering in some detail, and those + definitions and objectives are equally applicable to traffic + engineering in a point-to-multipoint service environment. They are + not repeated here, but it is assumed that the reader is fully + familiar with them. + + [RFC2702] also explains how MPLS is particularly suited to traffic + engineering, and presents the following eight reason. + + 1. Explicit label switched paths which are not constrained by + the destination based forwarding paradigm can be easily created + through manual administrative action or through automated + action by the underlying protocols. + 2. LSPs can potentially be efficiently maintained. + 3. Traffic trunks can be instantiated and mapped onto LSPs. + 4. A set of attributes can be associated with traffic trunks + which modulate their behavioral characteristics. + 5. A set of attributes can be associated with resources which + constrain the placement of LSPs and traffic trunks across + them. + 6. MPLS allows for both traffic aggregation and disaggregation + whereas classical destination only based IP forwarding + permits only aggregation. + 7. It is relatively easy to integrate a "constraint-based routing" + framework with MPLS. + 8. A good implementation of MPLS can offer significantly lower + overhead than competing alternatives for Traffic Engineering. + + These points are equally applicable to point-to-multipoint + traffic engineering. Points 1. and 7. are particularly important. + + That is, the traffic flow for a point-to-multipoint LSP is not + constrained to the path or paths that it would follow during + multicast routing or shortest path destination-based routing, but + can be explicitly controlled through manual or automated action. + + Further, the explicit paths that are used may be computed using + algorithms based on a variety of constraints to produce all manner of + tree shapes. For example, an explicit path may be cost-based + [STEINER], shortest path, QoS-based, or may use some fair-cost QoS + algorithm. Such computations are potentially bound to be more complex + and varied than anything available in the multicast forwarding + paradigm. + + [RFC2702] also describes the functional capabilities required to + fully support Traffic Engineering over MPLS in large networks. + + 1. A set of attributes associated with traffic trunks which + collectively specify their behavioral characteristics. + + 2. A set of attributes associated with resources which constrain + the placement of traffic trunks through them. These can also be + viewed as topology attribute constraints. + + 3. A "constraint-based routing" framework which is used to select + paths for traffic trunks subject to constraints imposed by + items 1) and 2) above. The constraint-based routing framework + does not have to be part of MPLS. However, the two need to be + tightly integrated together. + + These basic requirements also should be supported by + point-to-multipoint traffic engineering. 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 solutions to deliver P2MP TE LSPs. For the sake of illustration, RSVP-TE [RFC3209] is one possible candidate to provide such a solution so as to deliver P2MP TE LSPs. - It is intended that solutions that specify procedures for - P2MP TE LSP setup satisfy these requirements. There is no intent to - either specify solution specific details in this document or - application specific requirements. + It is intended that solutions that specify procedures for P2MP TE LSP + setup satisfy these requirements. There is no intent to either + specify solution specific details in this document or application + specific requirements. 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 attempt to 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 @@ -175,22 +239,22 @@ traffic cannot currently benefit from P2P TE LSPs. Hence, Call Admission Control for P2P TE LSP cannot take into account the bandwidth used for multicast traffic. P2MP TE will allow the bandwidth used by both the unicast and multicast traffics to be counted by means of CAC. This document is organized as follows: Section 2 provides a set of definitions used throughout the document. The problem statement is then discussed in Section 3. for the sake of illustration, this document lists various applications that could make use P2MP TE - LSP. Detailed application-specific requirements as far as - P2MP TE LSP is concerned are out of the scope of this document. + LSP. Detailed application-specific requirements as far as P2MP TE LSP + is concerned are out of the scope of this document. Detailed requirements for the support of applications that require P2MP MPLS TE LSPs are described in section 4. The requirement for Multipoint-to-Point and Multipoint-to-Multipoint TE LSPs are outside of the scope of this document. 2. Definitions 2.1 Acronyms @@ -211,30 +275,20 @@ A traffic engineered label switched path that has one unique ingress LSR (also referred to as the root) and one or more egress LSRs (also referred to as the leaf). P2MP tree: 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. - sub-P2MP tree: - - A sub-P2MP tree is a portion of a P2MP tree starting at - a particular LSR that is a member of the P2MP tree and includes - ALL downstream LSRs that are also members of the P2MP tree. - - P2P sub-LSP: - - The path from the ingress LSR to a particular egress LSR. - ingress LSR: 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. @@ -252,22 +306,73 @@ An LSR that is already a member of the P2MP tree and is in process of signaling a new sub-P2MP tree. prune LSR: An LSR that is a member of the P2MP tree and is in process of tearing down an existing sub-P2MP tree. P2MP-ID (Pid): - The ID that can be used to map a set of P2P sub-LSPs to a - particular P2MP LSP. + A unique identifier of a P2MP TE LSP, that is constant for the + whole LSP regardless of the number of branches and/or leaves. + +2.2.1 Terminology for Partial LSPs + + It is convenient to sub-divide P2MP trees for functional and + representational reasons. a tree may be divided in two dimensions: + + - A division may be made along the length of the tree. For example, + the tree may be split into two components each running from the + ingress LSR to a discrete set of egress LSRs + - A tree may be divided at a branch LSR (or any transit LSR) to + produce a component of the tree that runs from the branch (or + transit) LSR to all downsetram egress LSRs. + + These two methods of splitting the P2MP tree can be combined, so it + is useful to introduce some terminology to allow the partitioned + trees to be clearly described. + + Use the following designations: + Source (ingress) LSR - S + Leaf (egress) LSR - L + Branch LSR - B + Transit LSR - X + Define three terms: + + Sub-LSP + A component of the P2MP LSP that runs from one LSR to another + without (or ignoring) any branches. + + Sub-tree + A component of the P2MP LSP that runs from one LSR to more than + one other LSR by branching. + + Tree + A component of the P2MP LSP that runs from one LSR to all + downstream LSRs. + + Using these new concepts we can define any combination or split of + the P2MP tree. For example: + + S2L sub-LSP + The path from the source to one specific leaf. + + S2L sub-tree + The path from the source to a set of leaves. + + B2L tree + The path from a branch LSR to all downstream leaves. + + X2X sub-LSP + A component of the P2MP LSP that is a simple path with + no branches. 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]. 3. Problem Statement 3.1 Motivation @@ -276,22 +381,22 @@ 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 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 trees provided by existing IP multicast - routing protocols are not optimal from a bandwidth usage - perspective, which may lead to significant bandwidth wasting. + routing protocols are not optimal from a bandwidth usage perspective, + 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 usage and strict QoS guarantees. 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; the related set of application requirements are outside of the scope of this document and might @@ -308,49 +413,51 @@ Hence, to provide MPLS TE [RFC2702] for a P2MP application in an efficient manner (that is, with scalable impact on signaling and protocol state) in a large scale environment, P2MP TE mechanisms are required. Existing MPLS P2P TE mechanisms have to be enhanced to support P2MP TE LSP. 3.2. Requirements Overview This document states basic requirements for the setup of P2MP TE LSPs and a solution SHOULD satisfy them without requiring that a - multicast routing protocol is used, although such a protocol - MUST NOT be prohibited. It is desirable to maximize the re-use of - existing MPLS TE techniques and protocols. Note that the use of - MPLS forwarding to carry the multicast traffic may also be useful - in the context of some network designs where it might be desired to - avoid running some multicast routing protocol like PIM [PIM-SM] or - BGP (which might be required for the use of PIM). + multicast routing protocol is used, although such a protocol MUST NOT + be prohibited. The mechanism used to construct the TED from which + the paths of P2MP trees are computed is out of scope of this document + although it is desirable to maximize the re-use of existing MPLS TE + techniques and protocols. Note that the use of MPLS forwarding to + carry the multicast traffic may also be useful in the context of some + network designs where it might be 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 TE LSP path will be computed taking into account various constraints such as bandwidth, affinities, required level of protection and so on. The solution MUST allow for the computation of P2MP TE LSP paths satisfying constraints with the objective of supporting various optimization criteria such as delays, bandwidth consumption in the network, or any other combinations. This document does not restrict the choice of signaling protocol used to set up a P2MP TE LSP, but it should be noted that [RFC3468] states ... the consensus reached by the Multiprotocol Label Switching - (MPLS) Working Group within the IETF to focus its - efforts on "Resource Reservation Protocol (RSVP)-TE: Extensions to - RSVP for Label-Switched Paths (LSP) Tunnels" (RFC 3209) as the MPLS - signaling protocol for traffic engineering applications... + (MPLS) Working Group within the IETF to focus its efforts on + "Resource Reservation Protocol (RSVP)-TE: Extensions to RSVP for + Label-Switched Paths (LSP) Tunnels" (RFC 3209) as the MPLS signaling + protocol for traffic engineering applications... The P2MP TE LSP setup mechanism MUST include the ability to - add/remove egress LSRs to/from an existing P2MP TE LSP and MUST allow - for the support of all the TE LSP management procedures already - defined for P2P TE LSP such as the non disruptive rerouting (the so - called "Make before break" procedure). + add/remove egress LSRs to/from an existing P2MP TE LSP and MUST + allow for the support of all the TE LSP management procedures + already defined for P2P TE LSP such as the non disruptive rerouting + (the so called "Make before break" procedure). The computation of P2MP TE trees is implementation dependent and is beyond the scope of the solutions that are built with this document as a guideline. A separate document(s) 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 document. However, it is a requirement that those solutions attempt to be applicable to GMPLS as well as to MPLS so that only a single set of solutions are developed. @@ -375,24 +481,24 @@ 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. The following are the objectives of P2MP LSP establishment and use. a) A P2MP TE LSP tree which satisfies various constraints is pre-determined and supplied to ingress I-LSR1. - Note that no assumption is made on whether the tree is provided - to I-LSR1 or computed by I-LSR1. Note that the solution SHOULD - also allow for the support of partial path by means of loose - routing. + Note that no assumption is made on whether the tree is + provided to I-LSR1 or computed by I-LSR1. Note that the + solution SHOULD also allow for the support of partial path by + means of loose routing. Typical constraints are bandwidth requirements, resource class affinities, fast rerouting, preemption, to mention a few of them. There should not be any restriction on the possibility to support the set of constraints already defined for point to point TE LSPs. A new constraint may specify which LSRs should be used as branch points for the P2MP LSR in order to take into account some LSR capabilities or network constraints. b) A P2MP TE LSP is set up from I-LSR1 to E-LSR2, E-LSR3 and @@ -456,41 +562,30 @@ 4.2 P2MP TE backbone network for IP multicast network 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 handle an IP multicast routing protocol. + In this scenario, ingress/egress LSRs placed at the edge of multicast + network handle an IP multicast routing protocol. This means that the ingress/egress LSRs exchange IP multicast routing messages as neighbor 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 related to 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 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. - 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 | +------|-----+ @@ -538,21 +633,22 @@ to be added to the P2MP TE LSP carrying this channel using a P2MP TE grafting procedure, if it is not already egress LSR for that LSP. Pruning procedure has to be used to remove a DSLAM from the P2MP TE LSP when there is no longer any client behind the DSLAM, watching the channel. 4.4 VPN multicast network In this scenario, P2MP TE LSPs could be utilized to construct a provider network which can deliver VPN multicast service(s) to its - customers. + customers. It is, however, not a requirement that VPN multicast + services be delivered using P2MP TE LSPs. 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 a VPN instance. For example, in Layer3 VPNs like BGP/MPLS based IP VPNs [BGPMPLS-VPN], 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. In case @@ -592,29 +688,28 @@ GMPLS currently supports only P2P TE-LSPs just like MPLS. GMPLS enhances MPLS 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 [RFC3473] 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 - reasonable attempts must be made to make all the features/mechanisms + distribution services such as video distribution are prime candidates + to use P2MP features. Therefore, it is a requirement that reasonable + attempts must be made to make all the features/mechanisms (and protocol extensions) that will be defined to provide MPLS P2MP TE LSPs equally applicable to P2MP PSC and non-PSC TE-LSPs. If the requirements of non-PSC networks over-complicate the PSC solution a decision may be taken to separate the solutions. This decision must - be taken in full consultation with the MPLS and CCAMP working - groups. + be taken in full consultation with the MPLS and CCAMP working groups. 5. Detailed requirements for P2MP TE extensions 5.1 P2MP LSP tunnels The P2MP TE extensions MUST be applicable to the signaling of LSPs of different traffic types. For example, it MUST be possible to 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 @@ -631,22 +726,22 @@ 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 tree formation need to be applied to meet various QoS requirements and operational constraints. Some P2MP applications may request a bandwidth guaranteed P2MP tree which satisfies end-to-end delay requirements. And some operators - may want to set up a cost minimum P2MP tree by specifying branch LSRs - explicitly. + may want to set up a cost minimum P2MP tree by specifying branch + LSRs explicitly. The P2MP TE solution therefore MUST provide a means of establishing arbitrary P2MP trees under the control of an external tree computation process or path configuration process or dynamic tree computation process located on the ingress LSR. Figure 4 shows two typical examples. A A | / \ B B C @@ -657,27 +752,27 @@ Steiner P2MP tree SPF P2MP tree Figure 4 Examples of P2MP TE LSP topology One example is the Steiner P2MP tree (Cost minimum P2MP tree) [STEINER]. This P2MP tree is suitable for constructing a cost minimum P2MP tree so as to minimize the bandwidth consumption in the core. To realize this P2MP tree, several intermediate LSRs must be both MPLS data terminating LSRs and transit LSRs (LSRs E, F, G, - H, I, J and K in the figure 4). This means that the LSRs 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 bud LSR between an ingress LSR and egress LSRs. Note that - this includes constrained Steiner trees that allow for the - computation of a minimal cost trees with some other constraints such - as a bounded delay between the source and every receiver. + H, I, J and K in the figure 4). This means that the LSRs 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 bud + LSR between an ingress LSR and egress LSRs. Note that this includes + constrained Steiner trees that allow for the computation of a minimal + cost trees with some other constraints such as a bounded delay + between the source and every receiver. Another example is a CSPF (Constraint Shortest Path First) P2MP tree. By some metric (which can be set upon any specific criteria like the delay, bandwidth, a combination of those), one can calculate a shortest path P2MP tree. This P2MP tree is suitable for carrying real time traffic. The solution MUST allow the operator to make use of any tree computation technique. In the former case an efficient/optimal tree is defined as a minimal cost tree (Steiner tree) whereas in the @@ -754,34 +849,48 @@ This situation may arrise in either of the following circumstances. a. The ingress LSR cannot signal the whole tree in a single message. b. The information in a message expands to be too large (or is discovered to be too large) at some transit node. This may occur because of some increase in the information that needs to be signaled or because of a reduction in the size of signaling message that is supported. + The solution to these problems SHOULD NOT rely on IP fragmentation, + it is RECOMMENDED to rely on some protocol procedures specific to + the signaling solution. + + It is NOT RECOMMENDED that fragmented protocol messages are + re-combined at any downstream LSR. + 5.6 Failure Reporting and Error Recovery Failure events may cause egress nodes or sub-P2MP LSPs to become detached from the P2MP TE LSP. These events MUST be reported upstream as for a P2P LSP. The solution SHOULD provide recovery techniques such as protection and restoration allowing recovery of any impacted sub-P2MP TE LSPs. In particular, a solution MUST 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 should not be shared with P2P TE LSPs backup paths. + Note that the functions specified in [FRR] are currently specific to + packet environments and do not apply to non-packet environments. + Thus, while solutions MUST provide fast protection mechanisms + similar to those specified in [FRR], this requirement is limited to + the subset of the solution space that applies to packet switched + networks only. + Note that other application-specific requirement documents may introduce even more stringent requirement such as non packet loss, at the cost of some increased bandwidth consumption. The solution SHOULD also support the ability to meet other network recovery requirements such as bandwidth protection and bounded propagation delay increase along the backup path during failure. A P2MP TE solution MUST support P2MP fast protection mechanism to handle P2MP applications sensitive to traffic disruption. @@ -802,21 +910,21 @@ P2MP tree 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 those particular egress nodes, around the failure point. Solutions MAY include the facility for transit LSRs and particularly branch nodes to recompute sub-P2MP trees to restore them after failures. In the event of successful repair, error notifications SHOULD NOT be reported to upstream nodes, but the new paths are reported if route recording is in use. Crankback requirements are - discussed in Section 5.18. + discussed in Section 5.23. 5.7 Record route of P2MP TE LSP tunnels Being able to identify the established topology of P2MP TE LSP is very important for various purposes such as management and operation of some local recovery mechanisms like Fast Reroute [FRR]. A network operator uses this information to manage P2MP TE LSPs. Therefore, topology information MUST be collected and updated after P2MP TE LSP establishment and modification process. @@ -855,63 +962,131 @@ that can provide consistent QoS control in P2MP LSP traffic. Any solution SHOULD also satisfy the DS-TE requirements [RFC3564] and interoperate smoothly with current P2P DS-TE protocol specifications. Note that this requirement document does not make any assumption on the type of bandwidth pool used for P2MP TE LSPs which can either be shared with P2P TE LSP or be dedicated for P2MP use. -5.9 Reoptimization of P2MP TE LSP +5.9 Variation of LSP Parameters + + Various parameters to an LSP (such as priority, bandwidth, etc.) are + signaled along each branch of the LSP. + + Any solution MUST NOT allow for variance of these parameters. That + is, + - no attributes set and signaled by the ingress of a P2MP LSP may be + varied by downstream LSRs + - there MUST be homogenous QoS from the root to all leaves. + + THIS IS A PROVISIONAL REQUIREMENT STILL OPEN FOR DISCUSSION. + +5.10 Re-optimization of P2MP TE LSPs The detection of a more optimal path (for example, one with a lower overall cost) is an example of a situation where P2MP TE LSP re-routing 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 MUST be supported for a P2MP TE LSP to ensure that - there is no traffic disruption when the P2MP TE LSP is re-routed. - For example, the P2P MPLS TE make-before-break mechanism could be - extended and used if RSVP-TE was used as the P2MP signaling protocol. + there is minimal traffic disruption when the P2MP TE LSP is + re-routed. It is possible to achieve make-before-break that only applies to a sub-P2MP tree without impacting the data on all of the other parts of the P2MP tree. - 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, etc.). + The solution SHOULD allow for make-before-break re-optimization of + any subdivision of the P2MP LSP (S2L sub-tree, S2X sub-LSP, S2L + sub-LSP, X2L sub-tree, B2L sub-tree, X2L tree, or B2L tree) with no + impact on the rest of the P2MP LSP (no label reallocation, no change + in identifiers, etc.). The solution SHOULD also provide the ability for the ingress LSR to - have a strict control on the reoptimization process. - Such reoptimization MAY be initiated by the sub-tree root branch + have a strict control on the re-optimization process. + Such re-optimization MAY be initiated by the sub-tree root branch node (that is, the branch node MAY setup a new sub-tree, then splice traffic on the new subtree and delete the former sub-tree). -5.10 IPv4/IPv6 support + THE REQUIREMENT FOR RE-OPTIMIZATION BY SUB-TREE ROOT BRANCH IS + STILL OPEN FOR DISCUSSION + +5.11 Tree Remerge + + It is possible for a single transit LSR to receive multiple + signaling messages for the same P2MP LSP but for different + sets of desinations. These messages may be received from the + same or different upstream nodes and may need to be passed on + to the same or different downstream nodes. + + This situation may arise as the result of the signaling solution + definition or implementation options within the signaling + solution. Further, it may happen during make-before-break + reoptimization (section 5.9), or as a result of signaling + message fragmentation (section 5.5). + + It is even possible that it is necessary to construct distinct + upstream branches in order to achieve the correct label choices + in certain switching technologies managed by GMPLS (for example, + photonic cross-connects where the selection of a particular + lambda for the downstream branches is only available on differnt + upstream switches). + + The solution MUST handle the case where multiple signaling + messages for the same P2MP LSP are received at a single transit + LSR with the end result of all receivers being added to the + P2MP LSP. + + THIS REQUIREMENT IS STILL UNDER DISCUSSION + +5.12 Data Duplication + + Data duplication refers to the receipt by any recipient of duplicate + instances of the data. In a packet environment this means the + receipt of duplicate packets - although this should be a benign (if + inefficient) situation, it may be catastrophic in certain existing + and deployed applications. In a non-packet environment this means + the duplication in time of some part of the signal that may lead to + the replication of data or to the scrambling of data. + + Data duplication may legitimately arrise in various scenarios + including re-optimization of active LSPs as described in the + previous section, and protection of LSPs. Thus, it is impractical to + regulate against data duplication in this document. + + Instead, the solution MUST provide a mechanism to resolve, limit or + avoid data duplication at either or both of: + - the point at which the data path diverges + - the point at which the data paths converge. + + THE EXTENT TO WHICH DATA DUPLICATION MAY BE TOLERATED (in time or in + a count of bits or packets) IS FOR FURTHER STUDY. + +5.13 IPv4/IPv6 support Any P2MP TE solution MUST be equally applicable to IPv4 and IPv6. -5.11 P2MP MPLS Label +5.14 P2MP MPLS Label A P2MP TE solution MUST support establishment of both P2P and P2MP TE LSPs 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 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.12 Routing advertisement of P2MP capability +5.15 Routing advertisement of P2MP capability Several high-level requirements have been identified to determine the capabilities of LSRs within a P2MP network. The aim of such information is to facilitate the computation of P2MP trees using TE constraints within a network that contains LSRs that do not all have the same capabilities levels with respect to P2MP signaling and data forwarding. These capabilities include, but are not limited to: @@ -919,46 +1094,67 @@ - the ability of an LSR to act as an egress and a branch for the same LSP. - the ability of an LSR to support P2MP MPLS-TE signalling. It is expected that it may be appropriate to gather this information through extensions to TE IGPs (see [RFC3630] and [IS-IS-TE]), but the precise requirements and mechanisms are out of the scope of this document. It is expected that a separate document will cover this requirement. -5.13 Multi-Area/AS LSP +5.16 Multi-Area/AS LSP P2MP TE solutions SHOULD support multi-area/AS P2MP TE LSPs. The precise requirements in support of multi-area/AS P2MP TE LSPs is out of the scope of this document. It is expected that a separate document will cover this requirement. -5.14 P2MP MPLS OAM +5.17 Multi-access LANs + + P2MP MPLS TE may be used to traverse network segments that are + provided by multi-access media such as Ethernet. In these cases, it + is also possible that the entry point to the network segment is a + branch point of the P2MP LSP. + + Two options clearly exist: + + - the branch point replicates the data and transmits multiple + copies onto the segment + - the branch point sends a single copy of the data to the segment + and relies on the exit points to discriminate the reception of + the data. + + The first option has a significant scaling issue since all + replicated data must be sent through the same port and carried on + the same segment. Thus, a solution SHOULD provide a mechanism for a + branch node to send a single copy of the data onto a multi-access + network and reach multiple (adjacent) downstrem nodes. + +5.18 P2MP MPLS OAM Management of P2MP LSPs is as important as the management of P2P LSPs. The MPLS and GMPLS MIB modules MUST be enhanced to provide P2MP TE LSP management. In order to facilitate correct management, P2MP TE LSPs MUST have unique identifiers. OAM facilities will have special demands in P2MP environments especially within the context of tracing the paths and connectivity of P2MP TE LSPs. The precise requirements and mechanisms for OAM are out of the scope of this document. It is expected that a separate document will cover these requirements. -5.15 Scalability +5.19 Scalability Scalability is a key requirement in P2MP MPLS systems. Solutions MUST 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 - the number of branches. Both scalability of performance and operation MUST be considered. @@ -975,99 +1171,168 @@ - 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. It is expected that the applicability of each solution will be evaluated with regards to the aforementioned scalability criteria. -5.16 Backwards Compatibility +5.19.1 Absolute Limits + + THIS IS SECTION DESCRIBES PROVISIONAL REQUIREMENTS STILL OPEN FOR + DISCUSSION. + + In order to achieve the best solution for the problem space it is + helpful to clarify the boundaries for P2MP TE LSPs. + + - Number of recipients. + A P2MP TE LSP MUST reduce to similar scaling properties as a P2P + LSP when the number of recipients reduces to one. + It is important to classify the problem as a Traffic Engineering + problem. It is anticipated that the initial deployments of P2MP TE + LSPs may be limited to only several hundred recipients, but also + that future deployments may require significantly larger numbers. + An acceptable solution, therefore, is one that scales linearly + with the number of recipients. + + Solutions that scale worse than linear (that is, exponential or + polynomial) are not acceptable whatever the number of recipients + they could support + + - Number of branch points. + Solutions MUST support all possiblities from one extreme of a + single branch point that forks to all leaves on a separate branch, + to the greatest number of branch points which is (n-1) for n + recipients. Assumptions MUST NOT be made in the solution regarding + which topology is more common, and the solution MUST be designed + to ensure scalability in all topologies. + + - Dynamics of P2MP tree. + Recall that the mechanisms for determining which recipients should + be added to an LSP, and for adding and removing recipients from + that group are out of the scope of this document. Nevertheless, it + is useful to understand the expected rates of arrival and + departure of recipients since this can impact the selection of + solution techniques. + Again, it must be recall that this document is limited to Traffic + Engineering, and in this model the rate of change of recipients + may be expected to be lower than in an IP multicast group. + Although the absolute number of recipients coming and going is the + important element for determining the scalability of a solution, + it may be noted that a percentage may be a more comprehensible + measure but that this is not as significant for LSPs with a small + number of recipients. + A working figure for an established P2MP TE LSP is less than 10% + churn per day. That is, a relatively slow rate of churn. + We could say that a P2MP LSP would be shared by multiple multicast + groups and dynamics of P2MP LSP would be relatively small. + Considering applicability that P2MP LSP to use L2 multi-access + path technology, we can consider stable P2MP L2 path even when we + transfer IP multicast traffic over the path. + + Solutions MUST optimize around such relatively low rates of change + and are NOT REQUIRED to optimize for significantly higher rates + of change. + + - Rate of change within the network. + It is also important to understand the scaling with regard to + changes within the network. That is, one of the features of a + P2MP TE LSP is that it can be robust or protected against network + failures, and can be re-optimized to take advantage of newly + available network resources. + + It is more important that a solution be optimized for scaling with + respect to recovery and re-optimization of the LSP, than for change + in the recipients, because P2MP is used as a TE tool. + The solution MUST follow this distinction. + +5.20 Backwards Compatibility It SHOULD be an aim of any P2MP solution to offer as much backward compatibility as possible. An ideal which is probably impossible to achieve 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 for the solution 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. Also, it is a requirement that P2MP TE LSPs MUST be able to co-exist with IP unicast and IP multicast networks. -5.17 GMPLS +5.21 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: - control and data plane separation (IF_ID RSVP_HOP and IF_ID ERROR_SPEC), - full support of numbered and unnumbered TE links (see [RFC 3477] and [GMPLS-ROUTE]), - use of the GENERALIZED_LABEL_REQUEST, the GENERALIZED_LABEL (C-Type 2 and 3), the SUGGESTED_LABEL and the RECOVERY_LABEL, in conjunction with the LABEL_SET and the ACCEPTABLE_LABEL_SET object, - processing of the ADMIN_STATUS object, - processing of the PROTECTION object, - support of Explicit Label Control, - processing of the Path_State_Removed Flag, - handling of Graceful Deletion procedures. - E2E and Segment Recovery procedures. + - support of Graceful Restart 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 to those being used for PSC P2P TE LSPs and P2MP TE LSPs. -5.18 Requirements for Hierarchical P2MP TE LSPs +5.22 Requirements for Hierarchical P2MP TE LSPs [LSP-HIER] defines concepts and procedures for P2P LSP hierarchy. These procedures SHOULD be extended to support P2MP LSP hierarchy. The P2MP MPLS-TE solution SHOULD support the concept of region and region hierarchy (PSC1