| < draft-ietf-mpls-p2mp-sig-requirement-03.txt | draft-ietf-mpls-p2mp-sig-requirement-04.txt > | |||
|---|---|---|---|---|
| Network Working Group Seisho Yasukawa (NTT) | Network Working Group Seisho Yasukawa (NTT) | |||
| Internet Draft Editor | Internet Draft Editor | |||
| Category: Informational | Category: Informational | |||
| Expiration Date: December 2005 June 2005 | Expiration Date: June 2006 December 2005 | |||
| Signaling Requirements for Point to Multipoint | Signaling Requirements for Point to Multipoint | |||
| Traffic Engineered MPLS LSPs | Traffic Engineered MPLS LSPs | |||
| <draft-ietf-mpls-p2mp-sig-requirement-03.txt> | <draft-ietf-mpls-p2mp-sig-requirement-04.txt> | |||
| Status of this Memo | Status of this Memo | |||
| By submitting this Internet-Draft, each author represents that any | By submitting this Internet-Draft, each author represents that any | |||
| applicable patent or other IPR claims of which he or she is aware | applicable patent or other IPR claims of which he or she is aware | |||
| have been or will be disclosed, and any of which he or she becomes | have been or will be disclosed, and any of which he or she becomes | |||
| aware will be disclosed, in accordance with Section 6 of BCP 79. | aware will be disclosed, in accordance with Section 6 of BCP 79. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF), its areas, and its working groups. Note that | Task Force (IETF), its areas, and its working groups. Note that | |||
| skipping to change at page 1, line 45 ¶ | skipping to change at page 1, line 44 ¶ | |||
| Abstract | Abstract | |||
| This document presents a set of requirements for the establishment | This document presents a set of requirements for the establishment | |||
| and maintenance of Point-to-Multipoint (P2MP) Traffic Engineered (TE) | and maintenance of Point-to-Multipoint (P2MP) Traffic Engineered (TE) | |||
| Multiprotocol Label Switching (MPLS) Label Switched Paths (LSPs). | Multiprotocol Label Switching (MPLS) Label Switched Paths (LSPs). | |||
| There is no intent to specify solution specific details nor | There is no intent to specify solution specific details nor | |||
| application specific requirements in this document. | application specific requirements in this document. | |||
| The requirements presented in this document are | The requirements presented in this document apply equally to packet | |||
| not limited to the requirements of packet switched networks, but also | switched networks under the control of MPLS protocols and to but also | |||
| encompass the requirements of Layer two Switching (L2SC), Time | encompass the requirements of Layer two Switching (L2SC), Time | |||
| Division Multiplexing (TDM), lambda and port switching networks | Division Multiplexing (TDM), lambda, and port switching networks | |||
| managed by Generalized MPLS (GMPLS) protocols. Protocol solutions | managed by Generalized MPLS (GMPLS) protocols. Protocol solutions | |||
| developed to meet the requirements set out in this document must | developed to meet the requirements set out in this document must | |||
| attempt to be equally applicable to MPLS and GMPLS. | attempt to be equally applicable to MPLS and GMPLS. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction ................................................... 3 | 1. Introduction ................................................... 3 | |||
| 1.1 Non-Objectives ............................................. 5 | 1.1 Non-Objectives ................................................ 5 | |||
| 2. Definitions .................................................... 6 | 2. Definitions .................................................... 6 | |||
| 2.1 Acronyms ................................................... 6 | 2.1 Acronyms ...................................................... 6 | |||
| 2.2 Terminology ................................................ 6 | 2.2 Terminology ................................................... 6 | |||
| 2.2.1 Terminology for Partial LSPs .......................... 7 | 2.2.1 Terminology for Partial LSPs ................................ 7 | |||
| 2.3 Conventions ................................................ 8 | 2.3 Conventions ................................................... 8 | |||
| 3. Problem Statement .............................................. 8 | 3. Problem Statement .............................................. 9 | |||
| 3.1 Motivation ................................................. 8 | 3.1 Motivation .................................................... 9 | |||
| 3.2. Requirements Overview ..................................... 9 | 3.2. Requirements Overview......................................... 9 | |||
| 4. Detailed requirements for P2MP TE extensions .................. 11 | 4. Detailed requirements for P2MP TE extensions .................. 11 | |||
| 4.1 P2MP LSP ................................................. 11 | 4.1 P2MP LSP ..................................................... 11 | |||
| 4.2 P2MP explicit routing ..................................... 11 | 4.2 P2MP explicit routing......................................... 11 | |||
| 4.3 Explicit Path Loose Hops and Widely Scoped Abstract Nodes . 12 | 4.3 Explicit Path Loose Hops and Widely Scoped Abstract Nodes .... 12 | |||
| 4.4 P2MP TE LSP establishment, teardown, and modification | 4.4 P2MP TE LSP establishment, teardown, and modification mechanisms | |||
| mechanisms ................................................ 13 | ............................................................ 13 | |||
| 4.5 Fragmentation ............................................. 14 | 4.5 Fragmentation ................................................ 14 | |||
| 4.6 Failure Reporting and Error Recovery ...................... 14 | 4.6 Failure Reporting and Error Recovery ......................... 14 | |||
| 4.7 Record route of P2MP TE LSP .............................. 15 | 4.7 Record route of P2MP TE LSP .................................. 15 | |||
| 4.8 Call Admission Control (CAC) and QoS Control mechanism | 4.8 Call Admission Control (CAC) and QoS Control mechanism of | |||
| of P2MP TE LSPs ........................................... 16 | P2MP TE LSPs ............................................... 16 | |||
| 4.9 Variation of LSP Parameters ............................... 16 | 4.9 Variation of LSP Parameters .................................. 16 | |||
| 4.10 Re-optimization of P2MP TE LSPs .......................... 16 | 4.10 Re-optimization of P2MP TE LSPs ............................. 17 | |||
| 4.11 Tree Remerge ............................................. 17 | 4.11 Merging of Tree Branches .................................... 17 | |||
| 4.12 Data Duplication ......................................... 18 | 4.12 Data Duplication ............................................ 18 | |||
| 4.13 IPv4/IPv6 support ........................................ 19 | 4.13 IPv4/IPv6 support ........................................... 19 | |||
| 4.14 P2MP MPLS Label .......................................... 19 | 4.14 P2MP MPLS Label ............................................. 19 | |||
| 4.15 Routing advertisement of P2MP capability ................. 19 | 4.15 Advertisement of P2MP capability ............................ 19 | |||
| 4.16 Multi-access LANs ........................................ 20 | 4.16 Multi-access LANs ........................................... 20 | |||
| 4.17 P2MP MPLS OAM ............................................ 20 | 4.17 P2MP MPLS OAM ............................................... 20 | |||
| 4.18 Scalability .............................................. 20 | 4.18 Scalability ................................................. 20 | |||
| 4.18.1 Absolute Limits ..................................... 21 | 4.18.1 Absolute Limits ........................................... 21 | |||
| 4.19 Backwards Compatibility .................................. 23 | 4.19 Backwards Compatibility ..................................... 23 | |||
| 4.20 GMPLS .................................................... 23 | 4.20 GMPLS ....................................................... 23 | |||
| 4.21 P2MP Crankback routing ................................... 24 | 4.21 P2MP Crankback routing ...................................... 24 | |||
| 5. Security Considerations ....................................... 24 | 5. Security Considerations ....................................... 24 | |||
| 6. IANA Considerations ........................................... 25 | 6. IANA Considerations ........................................... 25 | |||
| 7. Acknowledgements .............................................. 25 | 7. Acknowledgements .............................................. 25 | |||
| 8. References .................................................... 25 | 8. References .................................................... 25 | |||
| 8.1 Normative References ...................................... 25 | 8.1 Normative References ......................................... 25 | |||
| 8.2 Informational References .................................. 26 | 8.2 Informational References ..................................... 25 | |||
| 9. Editor's Address .............................................. 27 | 9. Editor's Address .............................................. 26 | |||
| 10. Authors' Addresses ........................................... 27 | 10. Authors' Addresses ........................................... 26 | |||
| 11. Intellectual Property Consideration .......................... 28 | 11. Intellectual Property Consideration .......................... 28 | |||
| 12. Full Copyright Statement ..................................... 29 | 12. Full Copyright Statement ..................................... 28 | |||
| 1. Introduction | 1. Introduction | |||
| Existing MPLS Traffic Engineering (MPLS-TE) allows for strict QoS | Existing MPLS Traffic Engineering (MPLS-TE) allows for strict QoS | |||
| guarantees, resources optimization, and fast failure recovery, but | guarantees, resources optimization, and fast failure recovery, but | |||
| is limited to point-to-point (P2P) applications. Requirements have | is limited to point-to-point (P2P) LSPs. There is a desire to support | |||
| been expressed for the provision of point-to-multipoint (P2MP) | point-to-multipoint (P2MP) services using traffic engineered LSPs and | |||
| services using traffic engineered LSPs and this clearly motivates | this clearly motivates enhancements of the base MPLS-TE tool box in | |||
| enhancements of the base MPLS-TE tool box in order to support P2MP | order to support P2MP MPLS-TE LSPs. | |||
| MPLS-TE LSPs. | ||||
| A P2MP TE LSP is a TE LSP in the definitions of [RFC2702] and | ||||
| [RFC3031] that has a single ingress LSR, one or more egress LSRs, and | ||||
| is unidirectional. P2MP services (that deliver data from a single | ||||
| source to one or more receivers) may be supported by any combination | ||||
| of P2P and P2MP LSPs depending on the degree of optimization required | ||||
| within the network, and such LSPs may be Traffic Engineered again | ||||
| depending on the requirements of the network. Further, multipoint-to- | ||||
| multipoint (MP2MP) services (that deliver data from more than one | ||||
| source to one or more receivers) may be supported by a combination | ||||
| of P2P and P2MP LSPs. | ||||
| [RFC2702] specifies requirements for traffic engineering over MPLS. | [RFC2702] specifies requirements for traffic engineering over MPLS. | |||
| It describes traffic engineering in some detail, and those | In Section 2, it describes traffic engineering in some detail, and | |||
| definitions and objectives are equally applicable to traffic | those definitions are equally applicable to traffic engineering in a | |||
| engineering in a point-to-multipoint service environment. They are | point-to-multipoint service environment. They are not repeated here, | |||
| not repeated here, but it is assumed that the reader is fully | but it is assumed that the reader is fully familiar with them. | |||
| familiar with them. | ||||
| [RFC2702] also explains how MPLS is particularly suited to traffic | Section 3.0 of [RFC2702] also explains how MPLS is particularly | |||
| engineering, and presents the following eight reasons. | suited to traffic engineering, and presents the following eight | |||
| reasons. | ||||
| 1. Explicit label switched paths which are not constrained by the | 1. Explicit label switched paths which are not constrained by the | |||
| destination based forwarding paradigm can be easily created | destination based forwarding paradigm can be easily created | |||
| through manual administrative action or through automated | through manual administrative action or through automated | |||
| action by the underlying protocols. | action by the underlying protocols. | |||
| 2. LSPs can potentially be efficiently maintained. | 2. LSPs can potentially be efficiently maintained. | |||
| 3. Traffic trunks can be instantiated and mapped onto LSPs. | 3. Traffic trunks can be instantiated and mapped onto LSPs. | |||
| 4. A set of attributes can be associated with traffic trunks which | 4. A set of attributes can be associated with traffic trunks which | |||
| modulate their behavioral characteristics. | modulate their behavioral characteristics. | |||
| 5. A set of attributes can be associated with resources which | 5. A set of attributes can be associated with resources which | |||
| skipping to change at page 3, line 46 ¶ | skipping to change at page 4, line 8 ¶ | |||
| whereas classical destination only based IP forwarding permits | whereas classical destination only based IP forwarding permits | |||
| only aggregation. | only aggregation. | |||
| 7. It is relatively easy to integrate a "constraint-based routing" | 7. It is relatively easy to integrate a "constraint-based routing" | |||
| framework with MPLS. | framework with MPLS. | |||
| 8. A good implementation of MPLS can offer significantly lower | 8. A good implementation of MPLS can offer significantly lower | |||
| overhead than competing alternatives for Traffic Engineering. | overhead than competing alternatives for Traffic Engineering. | |||
| These points are equally applicable to point-to-multipoint traffic | These points are equally applicable to point-to-multipoint traffic | |||
| engineering. Points 1. and 7. are particularly important. Note that | engineering. Points 1. and 7. are particularly important. Note that | |||
| point 3. implies that the concept of a point-to-multipoint traffic | point 3. implies that the concept of a point-to-multipoint traffic | |||
| trunk is defined and is supported (or mapped onto) P2MP LSPs. | trunk is defined and is supported by (or mapped onto) P2MP LSPs. | |||
| That is, the traffic flow for a point-to-multipoint LSP is not | That is, the traffic flow for a point-to-multipoint LSP is not | |||
| constrained to the path or paths that it would follow during | constrained to the path or paths that it would follow during | |||
| multicast routing or shortest path destination-based routing, but can | multicast routing or shortest path destination-based routing, but can | |||
| be explicitly controlled through manual or automated action. | be explicitly controlled through manual or automated action. | |||
| Further, the explicit paths that are used may be computed using | Further, the explicit paths that are used may be computed using | |||
| algorithms based on a variety of constraints to produce all manner | algorithms based on a variety of constraints to produce all manner | |||
| of tree shapes. For example, an explicit path may be cost-based | of tree shapes. For example, an explicit path may be cost-based | |||
| [STEINER], shortest path, QoS-based, or may use some fair-cost QoS | [STEINER], shortest path, QoS-based, or may use some fair-cost QoS | |||
| algorithm. | algorithm. | |||
| [RFC2702] also describes the functional capabilities required to | [RFC2702] also describes the functional capabilities required to | |||
| fully support Traffic Engineering over MPLS in large networks. | fully support Traffic Engineering over MPLS in large networks. | |||
| This document presents a set of requirements for Point-to-Multipoint | This document presents a set of requirements for Point-to-Multipoint | |||
| (P2MP) Traffic Engineering (TE) extensions to Multiprotocol Label | (P2MP) Traffic Engineering (TE) extensions to Multiprotocol Label | |||
| Switching (MPLS). It specifies functional requirements for solutions | Switching (MPLS). It specifies functional requirements for solutions | |||
| to deliver P2MP TE LSPs. | to deliver P2MP TE LSPs. | |||
| Solutions that specify procedures for P2MP TE LSP setup MUST satisfy | Solutions that specify procedures for P2MP TE LSP setup MUST satisfy | |||
| these requirements. There is no intent to specify solution specific | these requirements. There is no intent to specify solution-specific | |||
| details nor application specific requirements in this document. | details nor application-specific requirements in this document. | |||
| The requirements presented in this document are not limited to the | The requirements presented in this document apply equally to packet | |||
| requirements of packet switched networks, but also encompass the | packet switched networks under the control of MPLS protocols and to | |||
| requirements of TDM, lambda and port switching networks managed by | packet switched, TDM, lambda, and port switching networks managed | |||
| Generalized MPLS (GMPLS) protocols. Protocol solutions developed to | by Generalized MPLS (GMPLS) protocols. Protocol solutions developed | |||
| meet the requirements set out in this document MUST attempt to be | to meet the requirements set out in this document MUST attempt to be | |||
| equally applicable to MPLS and GMPLS. | equally applicable to MPLS and GMPLS. | |||
| Existing MPLS TE mechanisms such as [RFC3209] do not support P2MP TE | Existing MPLS TE mechanisms such as [RFC3209] do not support P2MP TE | |||
| LSPs so new mechanisms need to be developed. This should be achieved | LSPs so new mechanisms need to be developed. This SHOULD be achieved | |||
| with maximum re-use of existing MPLS protocols. | with maximum re-use of existing MPLS protocols. | |||
| Note that there is a separation between routing and signaling in | Note that there is a separation between routing and signaling in | |||
| MPLS TE. In particular, the path of the MPLS TE LSP is determined by | MPLS TE. In particular, the path of the MPLS TE LSP is determined by | |||
| performing a constraint-based computation (such as CSPF) on a traffic | performing a constraint-based computation (such as CSPF) on a traffic | |||
| engineering database (TED). The contents of the TED may be collected | engineering database (TED). The contents of the TED may be collected | |||
| through a variety of mechanisms. | through a variety of mechanisms. | |||
| This document focuses on requirements for establishing and | This document focuses on requirements for establishing and | |||
| maintaining P2MP MPLS TE LSPs through signaling protocols; and | maintaining P2MP MPLS TE LSPs through signaling protocols; and | |||
| skipping to change at page 5, line 6 ¶ | skipping to change at page 5, line 18 ¶ | |||
| o A P2MP TE LSP will be set up with TE constraints and will allow | o A P2MP TE LSP will be set up with TE constraints and will allow | |||
| efficient packet or data replication at various branching points in | efficient packet or data replication at various branching points in | |||
| the network. Although replication is a data plane issue, it is the | the network. Although replication is a data plane issue, it is the | |||
| responsibility of the control plane (acting in conjunction with the | responsibility of the control plane (acting in conjunction with the | |||
| path computation component) to install LSPs in the network such | path computation component) to install LSPs in the network such | |||
| that replication can be performed efficiently. Note that the notion | that replication can be performed efficiently. Note that the notion | |||
| of "efficient" replication is relative and may have different | of "efficient" replication is relative and may have different | |||
| meanings depending on the objectives (see section 4.2). | meanings depending on the objectives (see section 4.2). | |||
| o P2MP TE LSP setup mechanisms must include the ability to add/remove | o P2MP TE LSP setup mechanisms must include the ability to add/remove | |||
| receivers to/from an existing P2MP TE LSP. | receivers to/from the P2MP service supported by an existing P2MP TE | |||
| LSP. | ||||
| o Tunnel endpoints of P2MP TE LSP will be modified by adding/removing | o Tunnel endpoints of P2MP TE LSP will be modified by adding/removing | |||
| egress LSRs to/from an existing P2MP TE LSP. It is assumed that the | egress LSRs to/from an existing P2MP TE LSP. It is assumed that the | |||
| rate of change of leaves of a P2MP service (that is, the rate at | rate of change of leaves of a P2MP LSP (that is, the rate at | |||
| which new egress LSRs join, or old egress LSRs are pruned) is "not | which new egress LSRs join, or old egress LSRs are pruned) is "not | |||
| so high" because P2MP TE LSPs are assumed to be utilized for TE | so high" because P2MP TE LSPs are assumed to be utilized for TE | |||
| applications. This issue is discussed at greater length in section | applications. This issue is discussed at greater length in section | |||
| 4.18.1. | 4.18.1. | |||
| o A P2MP TE LSP will be protected by fast error recovery mechanisms | o A P2MP TE LSP may be protected by fast error recovery mechanisms | |||
| to minimize disconnection of a P2MP service. And a set of | to minimize disconnection of a P2MP service. | |||
| attributes of the P2MP TE LSP (e.g. bandwidth etc) will be modified | ||||
| by some mechanism (e.g. Make-before-break etc) to accommodate | o And a set of attributes of the P2MP TE LSP (e.g. bandwidth, etc.) | |||
| attribute changes to the P2MP service. These issues are discussed | may be modified by some mechanism (e.g. make-before-break etc.) | |||
| in section 4.6 and 4.10. | to accommodate attribute changes to the P2MP service without | |||
| impacting data traffic. These issues are discussed in section 4.6 | ||||
| and 4.10. | ||||
| It is not a requirement that the ingress LSR must control the | ||||
| addition or removal of leaves from the P2MP tree. | ||||
| It is this document's objective that a solution compliant to the | It is this document's objective that a solution compliant to the | |||
| requirements equips and operates these P2MP TE capabilities in a | requirements set out in this document MUST operate these P2MP | |||
| scalable fashion. | TE capabilities in a scalable fashion. | |||
| 1.1 Non-Objectives | 1.1 Non-Objectives | |||
| For clarity, this section lists some items that are out of scope of | For clarity, this section lists some items that are out of scope of | |||
| this document. | this document. | |||
| It is assumed that some information elements describing the P2MP TE | It is assumed that some information elements describing the P2MP TE | |||
| LSP are known to the ingress LSR prior to LSP establishment. For | LSP are known to the ingress LSR prior to LSP establishment. For | |||
| example, the ingress LSRs knows the IP addresses that identify the | example, the ingress LSRs knows the IP addresses that identify the | |||
| egress LSRs of the P2MP TE LSP. The mechanisms by which the ingress | egress LSRs of the P2MP TE LSP. The mechanisms by which the ingress | |||
| LSR obtains this information is outside the scope of P2MP TE | LSR obtains this information is outside the scope of P2MP TE | |||
| signaling and so is not included in this document. Other documents | signaling and so is not included in this document. Other documents | |||
| may complete the description of this function by providing | may complete the description of this function by providing | |||
| automated, protocol-based ways of passing this information to the | automated, protocol-based ways of passing this information to the | |||
| ingress LSR. | ingress LSR. | |||
| The following are non-objectives of this document. | This document does not specify any requirements for the following | |||
| functions. | ||||
| - Non-TE LSPs (such as per-hop, routing-based LSPs). | - Non-TE LSPs (such as per-hop, routing-based LSPs). | |||
| - Discovery of egress leaves for a P2MP LSP | - Discovery of egress leaves for a P2MP LSP. | |||
| - Hierarchical P2MP LSPs | - Hierarchical P2MP LSPs. | |||
| - OAM for P2MP LSPs | - OAM for P2MP LSPs. | |||
| - Inter-area and inter-AS P2MP TE LSPs | - Inter-area and inter-AS P2MP TE LSPs. | |||
| - Applicability of P2MP MPLS TE LSPs to service scenarios | - Applicability of P2MP MPLS TE LSPs to service scenarios. | |||
| - Specific application or application requirements | - Specific application or application requirements. | |||
| - Algorithms for computing P2MP distribution trees | - Algorithms for computing P2MP distribution trees. | |||
| - Multipoint-to-point LSPs | ||||
| - Multipoint-to-multipoint LSPs | - Multipoint-to-point LSPs. | |||
| - Routing protocols | - Multipoint-to-multipoint LSPs. | |||
| - Construction of the traffic engineering database | - Routing protocols. | |||
| - Construction of the traffic engineering database. | ||||
| - Distribution of the information used to construct the traffic | - Distribution of the information used to construct the traffic | |||
| engineering database | engineering database. | |||
| 2. Definitions | 2. Definitions | |||
| 2.1 Acronyms | 2.1 Acronyms | |||
| P2P: | P2P: | |||
| Point-to-point | Point-to-point | |||
| P2MP: | P2MP: | |||
| Point-to-multipoint | Point-to-multipoint | |||
| 2.2 Terminology | 2.2 Terminology | |||
| The reader is assumed to be familiar with the terminology in | The reader is assumed to be familiar with the terminology in | |||
| [RFC3031] and [RFC3209]. | [RFC3031] and [RFC3209]. | |||
| The following terms are defined for use in the context of TE LSPs | The following terms are defined for use in the context of P2MP TE | |||
| only. | LSPs only. | |||
| P2MP tree: | P2MP tree: | |||
| The ordered set of LSRs and TE links that comprise the path of a | The ordered set of LSRs and TE links that comprise the path of a | |||
| P2MP TE LSP from its ingress LSR to all of its egress LSRs. | P2MP TE LSP from its ingress LSR to all of its egress LSRs. | |||
| ingress LSR: | ingress LSR: | |||
| The LSR that is responsible for initiating the signaling | The LSR that is responsible for initiating the signaling messages | |||
| messages that set up the P2MP TE LSP. | that set up the P2MP TE LSP. | |||
| egress LSR: | egress LSR: | |||
| One of potentially many destinations of the P2MP TE LSP. | One of potentially many destinations of the P2MP TE LSP. Egress | |||
| Egress LSRs may also be referred to as leaf nodes or leaves. | LSRs may also be referred to as leaf nodes or leaves. | |||
| bud LSR: | bud LSR: | |||
| An LSR that is an egress, but also has one or more directly | An LSR that is an egress LSR, but also has one or more directly | |||
| connected downstream LSRs. | connected downstream LSRs. | |||
| branch LSR: | branch LSR: | |||
| An LSR that has more than one directly connected downstream LSR. | An LSR that has more than one directly connected downstream LSR. | |||
| graft LSR: | P2MP-ID (P2ID): | |||
| An LSR that is already a member of the P2MP tree and is in | A unique identifier of a P2MP TE LSP, that is constant for the | |||
| process of signaling a new sub-P2MP tree. | whole LSP regardless of the number of branches and/or leaves. | |||
| prune LSR: | source: | |||
| An LSR that is a member of the P2MP tree and is in | The sender of traffic that is carried on a P2MP service supported | |||
| process of tearing down an existing sub-P2MP tree. | by a P2MP LSP. The sender is not necessarily the ingress LSR of | |||
| the P2MP LSP. | ||||
| P2MP-ID (P2ID): | receiver: | |||
| A unique identifier of a P2MP TE LSP, that is constant for the | A recipient of traffic carried on a P2MP service supported by a | |||
| whole LSP regardless of the number of branches and/or leaves. | P2MP LSP. A receiver is not necessarily an egress LSR of the P2MP | |||
| LSP. Zero, one or more receivers may receive data through a given | ||||
| egress LSR. | ||||
| 2.2.1 Terminology for Partial LSPs | 2.2.1 Terminology for Partial LSPs | |||
| It is convenient to sub-divide P2MP trees for functional and | It is convenient to sub-divide P2MP trees for functional and | |||
| representational reasons. A tree may be divided in two dimensions: | representational reasons. A tree may be divided in two dimensions: | |||
| - A division may be made along the length of the tree. For example, | - 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 | the tree may be split into two components each running from the | |||
| ingress LSR to a discrete set of egress LSRs | ingress LSR to a discrete set of egress LSRs. Upstream LSRs (for | |||
| example, the ingress LSR) may be members of both components. | ||||
| - A tree may be divided at a branch LSR (or any transit LSR) to | - 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 | produce a component of the tree that runs from the branch (or | |||
| transit) LSR to all downstream egress LSRs. | transit) LSR to all egress LSRs downstream of this point. | |||
| These two methods of splitting the P2MP tree can be combined, so it | These two methods of splitting the P2MP tree can be combined, so it | |||
| is useful to introduce some terminology to allow the partitioned | is useful to introduce some terminology to allow the partitioned | |||
| trees to be clearly described. | trees to be clearly described. | |||
| Use the following designations: | Use the following designations: | |||
| Source (ingress) LSR - S | Source (ingress) LSR - S | |||
| Leaf (egress) LSR - L | Leaf (egress) LSR - L | |||
| Branch LSR - B | Branch LSR - B | |||
| Transit LSR - X | Transit LSR - X (any single, arbitrary LSR that is not a source, | |||
| leaf or branch) | ||||
| All - A | All - A | |||
| Partial (i.e. not all) - P | Partial (i.e. not all) - P | |||
| Define a new term: | Define a new term: | |||
| Sub-LSP | Sub-LSP | |||
| A segment of a P2MP TE LSP that runs from one of the LSP's LSRs | A segment of a P2MP TE LSP that runs from one of the LSP's LSRs | |||
| to one or more of its other LSRs. | to one or more of its other LSRs. | |||
| skipping to change at page 8, line 18 ¶ | skipping to change at page 8, line 42 ¶ | |||
| S2L sub-LSP | S2L sub-LSP | |||
| The path from the source to one specific leaf. | The path from the source to one specific leaf. | |||
| S2PL sub-LSP | S2PL sub-LSP | |||
| The path from the source to a set of leaves. | The path from the source to a set of leaves. | |||
| B2AL sub-LSP | B2AL sub-LSP | |||
| The path from a branch LSR to all downstream leaves. | The path from a branch LSR to all downstream leaves. | |||
| X2X sub-LSP | X2X sub-LSP | |||
| A component of the P2MP LSP that is a simple path with | A component of the P2MP LSP that is a simple path thatwith | |||
| no branches. | does not branches. | |||
| Note that the S2AL sub-LSP is equivalent to the P2MP LSP. | Note that the S2AL sub-LSP is equivalent to the P2MP LSP. | |||
| 2.3 Conventions | 2.3 Conventions | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in | |||
| this document are to be interpreted as described in [RFC2119]. | this document are to be interpreted as described in [RFC2119]. | |||
| 3. Problem Statement | 3. Problem Statement | |||
| 3.1 Motivation | 3.1 Motivation | |||
| As described in section 1, Traffic Engineering and Constraint Based | As described in section 1, Traffic Engineering and Constraint Based | |||
| Routing, including Call Admission Control(CAC), explicit source | Routing (including Call Admission Control(CAC), explicit source | |||
| routing and bandwidth reservation, are required to enable efficient | routing, and bandwidth reservation) are required to enable efficient | |||
| resource usage and strict QoS guarantees. Such mechanisms also make | resource usage and strict QoS guarantees. Such mechanisms also make | |||
| it possible to provide services across a congested network where | it possible to provide services across a congested network where | |||
| conventional "shortest path first" forwarding paradigms would fail. | conventional "shortest path first" forwarding paradigms would fail. | |||
| Existing MPLS TE mechanisms [RFC3209] and GMPLS TE mechanisms | Existing MPLS TE mechanisms [RFC3209] and GMPLS TE mechanisms | |||
| [RFC3473] only provide support for P2P TE LSPs. While it is possible | [RFC3473] only provide support for P2P TE LSPs. While it is possible | |||
| to provide P2MP TE services using P2P TE LSPs, any such approach is | to provide P2MP TE services using P2P TE LSPs, any such approach is | |||
| potentially suboptimal since it may result in data replication at | potentially suboptimal since it may result in data replication at | |||
| the ingress LSR, or in duplicate data traffic within the network. | the ingress LSR, or in duplicate data traffic within the network. | |||
| Hence, to provide P2MP MPLS TE services in a fully efficient manner | Hence, to provide P2MP MPLS TE services in a fully efficient manner | |||
| it is necessary to specify specific requirements. These requirements | it is necessary to specify specific requirements. These requirements | |||
| can then be used to define mechanisms for the use of existing | can then be used when defining mechanisms for the use of existing | |||
| protocols and/or extensions to existing protocols and/or new | protocols and/or extensions to existing protocols and/or new | |||
| protocols. | protocols. | |||
| 3.2. Requirements Overview | 3.2. Requirements Overview | |||
| This document states basic requirements for the setup of P2MP TE | This document states basic requirements for the setup of P2MP TE | |||
| LSPs. The requirements apply to the signaling techniques only, and | LSPs. The requirements apply to the signaling techniques only, and | |||
| no assumptions are made about which routing protocols are run within | no assumptions are made about which routing protocols are run within | |||
| the network, nor about how the information that is used to construct | the network, nor about how the information that is used to construct | |||
| the Traffic Engineering Database (TED) is distributed. These factors | the Traffic Engineering Database (TED) is distributed. These factors | |||
| are out of the scope of this document. | are out of the scope of this document. | |||
| A P2MP TE LSP path will be computed taking into account various | A P2MP TE LSP path computation will take into account various | |||
| constraints such as bandwidth, affinities, required level of | constraints such as bandwidth, affinities, required level of | |||
| protection and so on. The solution MUST allow for the computation of | protection and so on. The solution MUST allow for the computation of | |||
| P2MP TE LSP paths satisfying constraints with the objective of | P2MP TE LSP paths satisfying constraints with the objective of | |||
| supporting various optimization criteria such as delays, bandwidth | supporting various optimization criteria such as delays, bandwidth | |||
| consumption in the network, or any other combinations. This is likely | consumption in the network, or any other combinations. This is likely | |||
| to require the presence of a TED, as well as the ability to signal | to require the presence of a TED, as well as the ability to signal | |||
| the explicit path of an LSP. | the explicit path of an LSP. | |||
| A desired requirement is also to maximize the re-use of existing | A desired requirement is also to maximize the re-use of existing | |||
| MPLS TE techniques and protocols where doing so does not adversely | MPLS TE techniques and protocols where doing so does not adversely | |||
| skipping to change at page 9, line 40 ¶ | skipping to change at page 10, line 12 ¶ | |||
| ... the consensus reached by the Multiprotocol Label Switching | ... the consensus reached by the Multiprotocol Label Switching | |||
| (MPLS) Working Group within the IETF to focus its efforts on | (MPLS) Working Group within the IETF to focus its efforts on | |||
| "Resource Reservation Protocol (RSVP)-TE: Extensions to RSVP for | "Resource Reservation Protocol (RSVP)-TE: Extensions to RSVP for | |||
| Label-Switched Paths (LSP) Tunnels" (RFC 3209) as the MPLS signaling | Label-Switched Paths (LSP) Tunnels" (RFC 3209) as the MPLS signaling | |||
| protocol for traffic engineering applications... | protocol for traffic engineering applications... | |||
| The P2MP TE LSP setup mechanism MUST include the ability to | The P2MP TE LSP setup mechanism MUST include the ability to | |||
| add/remove egress LSRs to/from an existing P2MP TE LSP and MUST | add/remove egress LSRs to/from an existing P2MP TE LSP and MUST | |||
| allow for the support of all the TE LSP management procedures | allow for the support of all the TE LSP management procedures | |||
| already defined for P2P TE LSP. Further, when new TE LSP procedures | already defined for P2P TE LSP. Further, when new TE LSP procedures | |||
| are developed for P2P TE LSPs equivalent or identical procedures | are developed for P2P TE LSPs, equivalent or identical procedures | |||
| SHOULD be developed for P2MP TE LSPs. | SHOULD be developed for P2MP TE LSPs. | |||
| The computation of P2MP trees is implementation dependent and is | The computation of P2MP trees is implementation dependent and is | |||
| beyond the scope of the solutions that are built with this document | beyond the scope of the solutions that are built with this document | |||
| as a guideline. | as a guideline. | |||
| Consider the following figure. | Consider the following figure. | |||
| Source 1 (S1) | Source 1 (S1) | |||
| | | | | |||
| skipping to change at page 10, line 21 ¶ | skipping to change at page 10, line 35 ¶ | |||
| | | | | | | |||
| R2----E-LSR3--LSR1 LSR2---E-LSR2--Receiver 1 (R1) | R2----E-LSR3--LSR1 LSR2---E-LSR2--Receiver 1 (R1) | |||
| | : | | : | |||
| R3----E-LSR4 E-LSR5 | R3----E-LSR4 E-LSR5 | |||
| | : | | : | |||
| | : | | : | |||
| R4 R5 | R4 R5 | |||
| Figure 1 | Figure 1 | |||
| Figure 1 shows a single ingress (I-LSR1), and four egresses(E-LSR2, | Figure 1 shows a single ingress LSR (I-LSR1), and four egress LSRs | |||
| E-LSR3, E-LSR4 and E-LSR5). I-LSR1 is attached to a traffic source | (E-LSR2, E-LSR3, E-LSR4 and E-LSR5). I-LSR1 is attached to a traffic | |||
| that is generating traffic for a P2MP application. Receivers R1, R2, | source that is generating traffic for a P2MP application. Receivers | |||
| R3 and R4 are attached to E-LSR2, E-LSR3 and E-LSR4. | 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. | The following are the objectives of P2MP LSP establishment and use. | |||
| a) A P2MP tree which satisfies various constraints is | a) A P2MP tree which satisfies various constraints is | |||
| pre-determined and supplied to ingress I-LSR1. | pre-determined and details are supplied to I-LSR1. | |||
| Note that no assumption is made on whether the tree is | Note that no assumption is made on whether the tree is | |||
| provided to I-LSR1 or computed by I-LSR1. Note that the | provided to I-LSR1 or computed by I-LSR1. The | |||
| solution SHOULD also allow for the support of partial path by | solution SHOULD also allow for the support of a partial path by | |||
| means of loose routing. | means of loose routing. | |||
| Typical constraints are bandwidth requirements, resource class | Typical constraints are bandwidth requirements, resource class | |||
| affinities, fast rerouting, preemption, to mention a few of | affinities, fast rerouting, preemption. There should not be any | |||
| them. There should not be any restriction on the possibility | restriction on the possibility to support the set of | |||
| to support the set of constraints already defined for point to | constraints already defined for point to point TE LSPs. A new | |||
| point TE LSPs. A new constraint may specify which LSRs should | constraint may specify which LSRs should be used as branch LSRs | |||
| be used as branch points for the P2MP LSR in order to take | for the P2MP LSR in order to take into account LSR capabilities | |||
| into account some LSR capabilities or network constraints. | or network constraints. | |||
| b) A P2MP TE LSP is set up from I-LSR1 to E-LSR2, E-LSR3 and | b) A P2MP TE LSP is set up from I-LSR1 to E-LSR2, E-LSR3 and | |||
| E-LSR4 using the tree information. | E-LSR4 using the tree information. | |||
| c) In this case, the branch LSR1 should replicate incoming | c) In this case, the branch LSR1 should replicate incoming | |||
| packets or data and send them to E-LSR3 and E-LSR4. | packets or data and send them to E-LSR3 and E-LSR4. | |||
| d) If a new receiver (R5) expresses an interest in receiving | d) If a new receiver (R5) expresses an interest in receiving | |||
| traffic, a new tree is determined and a B2L sub-LSP from | traffic, a new tree is determined and a B2L sub-LSP from LSR2 | |||
| LSR2 to E-LSR5 is grafted onto the P2MP TE LSP. LSR2 becomes a | to E-LSR5 is grafted onto the P2MP TE LSP. LSR2 becomes a | |||
| branch LSR. | branch LSR. | |||
| 4. Detailed requirements for P2MP TE extensions | 4. Detailed requirements for P2MP TE extensions | |||
| 4.1 P2MP LSP | 4.1 P2MP LSP | |||
| The P2MP TE extensions MUST be applicable to the signaling of LSPs | The P2MP TE extensions MUST be applicable to the signaling of LSPs | |||
| for different switching types. For example, it MUST be possible to | for different switching types. For example, it MUST be possible to | |||
| signal a P2MP TE LSP in any switching medium being packet or | signal a P2MP TE LSP in any switching medium being packet or | |||
| non-packet based (including frame, cell, TDM, lambda, etc.) | non-packet based (including frame, cell, TDM, lambda, etc.). | |||
| As with P2P MPLS technology [RFC3031], traffic is classified with a | As with P2P MPLS technology [RFC3031], traffic is classified with a | |||
| FEC in this extension. All packets which belong to a particular FEC | FEC in this extension. All packets which belong to a particular FEC | |||
| and which travel from a particular node MUST follow the same P2MP | and which travel from a particular node MUST follow the same P2MP | |||
| tree. | tree. | |||
| In order to scale to a large number of branches, P2MP TE LSPs SHOULD | In order to scale to a large number of branches, P2MP TE LSPs SHOULD | |||
| be identified by a unique identifier (the P2MP ID or P2ID) that is | be identified by a unique identifier (the P2MP ID or P2ID) that is | |||
| constant for the whole LSP regardless of the number of branches | constant for the whole LSP regardless of the number of branches | |||
| and/or leaves. Therefore, the identification of the P2MP session by | and/or leaves. | |||
| its destination addresses is not adequate. | ||||
| 4.2 P2MP explicit routing | 4.2 P2MP explicit routing | |||
| Various optimizations in P2MP tree formation need to be applied to | Various optimizations in P2MP tree formation need to be applied to | |||
| meet various QoS requirements and operational constraints. | meet various QoS requirements and operational constraints. | |||
| Some P2MP applications may request a bandwidth guaranteed P2MP tree | Some P2MP applications may request a bandwidth guaranteed P2MP tree | |||
| which satisfies end-to-end delay requirements. And some operators | which satisfies end-to-end delay requirements. And some operators | |||
| may want to set up a cost minimum P2MP tree by specifying branch | may want to set up a cost minimum P2MP tree by specifying branch | |||
| LSRs explicitly. | LSRs explicitly. | |||
| skipping to change at page 12, line 18 ¶ | skipping to change at page 12, line 33 ¶ | |||
| support a mechanism that can setup this kind of bud LSR between an | support a mechanism that can setup this kind of bud LSR between an | |||
| ingress LSR and egress LSRs. Note that this includes constrained | ingress LSR and egress LSRs. Note that this includes constrained | |||
| Steiner trees that allow for the computation of a minimal cost trees | Steiner trees that allow for the computation of a minimal cost trees | |||
| with some other constraints such as a bounded delay between the | with some other constraints such as a bounded delay between the | |||
| source and every receiver. | source and every receiver. | |||
| Another example is a CSPF (Constraint Shortest Path First) P2MP | Another example is a CSPF (Constraint Shortest Path First) P2MP | |||
| tree. By some metric (which can be set upon any specific criteria | tree. By some metric (which can be set upon any specific criteria | |||
| like the delay, bandwidth, a combination of those), one can | like the delay, bandwidth, a combination of those), one can | |||
| calculate a shortest path P2MP tree. This P2MP tree is suitable for | calculate a shortest path P2MP tree. This P2MP tree is suitable for | |||
| carrying real time traffic. | carrying real-time traffic. | |||
| The solution MUST allow the operator to make use of any tree | The solution MUST allow the operator to make use of any tree | |||
| computation technique. In the former case an efficient/optimal tree | computation technique. In the former case an efficient/optimal tree | |||
| is defined as a minimal cost tree (Steiner tree) whereas in the | is defined as a minimal cost tree (Steiner tree) whereas in the | |||
| later case it is defined as the tree that provides shortest path | later case it is defined as the tree that provides shortest path | |||
| between the source and any receiver. | between the source and any receiver. | |||
| To support explicit setup of any reasonable P2MP tree shape, a P2MP | To support explicit setup of any reasonable P2MP tree shape, a P2MP | |||
| TE solution MUST support some form of explicit source-based control | TE solution MUST support some form of explicit source-based control | |||
| of the P2MP tree which can explicitly include particular LSRs as | of the P2MP tree which can explicitly include particular LSRs as | |||
| branch nodes. This can be used by the ingress LSR to setup the P2MP | branch LSRs. This can be used by the ingress LSR to setup the P2MP | |||
| TE LSP. For instance, a P2MP TE LSP can be simply represented as a | TE LSP. For instance, a P2MP TE LSP can be simply represented as a | |||
| whole tree or by its individual branches. | whole tree or by its individual branches. | |||
| 4.3 Explicit Path Loose Hops and Widely Scoped Abstract Nodes | 4.3 Explicit Path Loose Hops and Widely Scoped Abstract Nodes | |||
| A P2MP tree is completely specified if all of the required branches | A P2MP tree is completely specified if all of the required branches | |||
| and hops between a sender and leaf LSR are indicated. | and hops between a sender and leaf LSR are indicated. | |||
| A P2MP tree is partially specified if only a subset of intermediate | A P2MP tree is partially specified if only a subset of intermediate | |||
| branches and hops are indicated. This may be achieved using loose | branches and hops are indicated. This may be achieved using loose | |||
| hops in the explicit path, or using widely scoped abstract nodes | hops in the explicit path, or using widely scoped abstract nodes | |||
| skipping to change at page 13, line 6 ¶ | skipping to change at page 13, line 19 ¶ | |||
| beyond the scope of this document. | beyond the scope of this document. | |||
| Protocol solutions SHOULD include a way to specify loose hops and | Protocol solutions SHOULD include a way to specify loose hops and | |||
| widely scoped abstract nodes in the explicit source-based control of | widely scoped abstract nodes in the explicit source-based control of | |||
| the P2MP tree as defined in the previous section. Where this support | the P2MP tree as defined in the previous section. Where this support | |||
| is provided, protocol solutions MUST allow downstream LSRs to apply | is provided, protocol solutions MUST allow downstream LSRs to apply | |||
| further explicit control to the P2MP tree to resolve a partially | further explicit control to the P2MP tree to resolve a partially | |||
| specified tree into a (more) completely specified tree. | specified tree into a (more) completely specified tree. | |||
| Protocol solutions MUST allow the P2MP tree to be completely | Protocol solutions MUST allow the P2MP tree to be completely | |||
| specified at the ingress where sufficient information exists to allow | specified at the ingress LSR where sufficient information exists to | |||
| the full tree to be computed and where policies along the path (such | allow the full tree to be computed and where policies along the path | |||
| as at domain boundaries) support full specification. | (such as at domain boundaries) support full specification. | |||
| In all cases, the egress nodes of the P2MP TE LSP must be fully | In all cases, the egress LSRs of the P2MP TE LSP must be fully | |||
| specified either individually or through some collective identifier. | specified either individually or through some collective identifier. | |||
| Without this information, it is impossible to know to where the TE | Without this information, it is impossible to know to where the TE | |||
| LSP should be routed. | LSP should be routed. | |||
| In case of a tree being computed by some downstream LSRs (e.g. the | In case of a tree being computed by some downstream LSRs (e.g. the | |||
| case of hops specified as loose hops), the solution MUST provide | case of hops specified as loose hops), the solution MUST provide | |||
| protocol mechanisms for the ingress LSR of the P2MP TE LSP to learn | protocol mechanisms for the ingress LSR of the P2MP TE LSP to learn | |||
| the full P2MP tree. Note that this information may not always be | the full P2MP tree. Note that this information may not always be | |||
| obtainable owing to policy considerations, but where part of the path | obtainable owing to policy considerations, but where part of the path | |||
| remains confidential it MUST be reported through aggregation (for | remains confidential it MUST be reported through aggregation (for | |||
| example, using an AS number). | example, using an AS number). | |||
| 4.4 P2MP TE LSP establishment, teardown, and modification mechanisms | 4.4 P2MP TE LSP establishment, teardown, and modification mechanisms | |||
| The P2MP TE solution MUST support establishment, maintenance and | The P2MP TE solution MUST support establishment, maintenance and | |||
| teardown of P2MP TE LSPs in a manner that is at least scalable in a | teardown of P2MP TE LSPs in a manner that is at least scalable in a | |||
| linear way. This MUST include both the existence of very many LSPs at | linear way. This MUST include both the existence of very many LSPs at | |||
| once, and the existence of very many destinations for a single P2MP | once, and the existence of very many destinations for a single P2MP | |||
| LSP. | LSP. | |||
| In addition to P2MP TE LSP establishment and teardown mechanism, it | In addition to P2MP TE LSP establishment and teardown mechanisms, it | |||
| SHOULD implement partial P2MP tree modification mechanism. | SHOULD support a partial P2MP tree modification mechanism. | |||
| For the purpose of adding sub-P2MP TE LSPs to an existing P2MP TE | For the purpose of adding sub-P2MP TE LSPs to an existing P2MP TE | |||
| LSP, the extensions SHOULD support a grafting mechanism. For the | LSP, the extensions SHOULD support a grafting mechanism. For the | |||
| purpose of deleting a sub-P2MP TE LSPs from an existing P2MP TE LSP, | purpose of deleting a sub-P2MP TE LSPs from an existing P2MP TE LSP, | |||
| the extensions SHOULD support a pruning mechanism. | the extensions SHOULD support a pruning mechanism. | |||
| It is RECOMMENDED that these grafting and pruning operations do not | It is RECOMMENDED that these grafting and pruning operations cause | |||
| cause any additional processing in nodes except along the path to | no additional processing in nodes that are not along the path to | |||
| the grafting and pruning node and its downstream nodes. Moreover, | the grafting or pruning node, or that are downstream of the grafting | |||
| both grafting and pruning operations MUST not be traffic disruptive | or pruning node toward the grafted or pruned leaves. Moreover, both | |||
| for the traffic currently forwarded along the P2MP tree. | grafting and pruning operations MUST NOT disrupt traffic currently | |||
| forwarded along the P2MP tree. | ||||
| There is no assumption that the explicitly routed P2MP LSP remains on | There is no assumption that the explicitly routed P2MP LSP remains on | |||
| an optimal path after several grafts and prunes have occurred. In | an optimal path after several grafts and prunes have occurred. In | |||
| this context, scalable refers to the signaling process for the P2MP | this context, scalable refers to the signaling process for the P2MP | |||
| TE LSP. The TE nature of the LSP allows that re-optimization may take | TE LSP. The TE nature of the LSP allows that re-optimization may take | |||
| place from time to time to restore the optimality of the LSP. | place from time to time to restore the optimality of the LSP. | |||
| 4.5 Fragmentation | 4.5 Fragmentation | |||
| The P2MP TE solution MUST handle the situation where a single | The P2MP TE solution MUST handle the situation where a single | |||
| skipping to change at page 14, line 33 ¶ | skipping to change at page 14, line 43 ¶ | |||
| The solution to these problems SHOULD NOT rely on IP fragmentation of | The solution to these problems SHOULD NOT rely on IP fragmentation of | |||
| protocol messages and it is RECOMMENDED to rely on some protocol | protocol messages and it is RECOMMENDED to rely on some protocol | |||
| procedures specific to the signaling solution. | procedures specific to the signaling solution. | |||
| In the event that fragmented IP packets containing protocol messages | In the event that fragmented IP packets containing protocol messages | |||
| are received, it is NOT RECOMMENDED that they are reassembled at the | are received, it is NOT RECOMMENDED that they are reassembled at the | |||
| receiving LSR. | receiving LSR. | |||
| 4.6 Failure Reporting and Error Recovery | 4.6 Failure Reporting and Error Recovery | |||
| Failure events may cause egress nodes or sub-P2MP LSPs to become | Failure events may cause egress LSRs or sub-P2MP LSPs to become | |||
| detached from the P2MP TE LSP. These events MUST be reported upstream | detached from the P2MP TE LSP. These events MUST be reported upstream | |||
| as for a P2P LSP. | as for a P2P LSP. | |||
| The solution SHOULD provide recovery techniques such as protection | The solution SHOULD provide recovery techniques such as protection | |||
| and restoration allowing recovery of any impacted sub-P2MP TE LSPs. | and restoration allowing recovery of any impacted sub-P2MP TE LSPs. | |||
| In particular, a solution MUST provide fast protection mechanisms | In particular, a solution MUST provide fast protection mechanisms | |||
| applicable to P2MP TE LSP similar to the solutions specified in | applicable to P2MP TE LSP similar to the solutions specified in | |||
| [RFC4090] for P2P TE LSPs. Note also that no assumption is made on | [RFC4090] 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 | whether backup paths for P2MP TE LSPs should or should not be shared | |||
| with P2P TE LSPs backup paths. | with P2P TE LSPs backup paths. | |||
| skipping to change at page 15, line 13 ¶ | skipping to change at page 15, line 25 ¶ | |||
| requirements, or may want to relax some requirements stated in this | requirements, or may want to relax some requirements stated in this | |||
| document. This may lead to variations in the solution. | document. This may lead to variations in the solution. | |||
| The solution SHOULD also support the ability to meet other network | The solution SHOULD also support the ability to meet other network | |||
| recovery requirements such as bandwidth protection and bounded | recovery requirements such as bandwidth protection and bounded | |||
| propagation delay increase along the backup path during failure. | propagation delay increase along the backup path during failure. | |||
| A P2MP TE solution MUST support P2MP fast protection mechanism to | A P2MP TE solution MUST support P2MP fast protection mechanism to | |||
| handle P2MP applications sensitive to traffic disruption. | handle P2MP applications sensitive to traffic disruption. | |||
| If the ingress is informed of the failure of delivery to fewer than | If the ingress LSR is informed of the failure of delivery to fewer | |||
| all of the egress nodes this SHOULD NOT cause automatic teardown of | than all of the egress LSRs this SHOULD NOT cause automatic teardown | |||
| the P2MP TE LSP. That is, while some egress nodes remain connected to | of the P2MP TE LSP. That is, while some egress LSRs remain connected | |||
| the P2MP tree it SHOULD be a matter of local policy at the ingress | to the P2MP tree it SHOULD be a matter of local policy at the ingress | |||
| whether the P2MP LSP is retained. | LSR whether the P2MP LSP is retained. | |||
| When all egress nodes downstream of a branch node have become | When all egress LSRs downstream of a branch LSR have become | |||
| disconnected from the P2MP tree, and the some branch node is unable | disconnected from the P2MP tree, and some branch LSR is unable | |||
| to restore connectivity to any of them by means of some recovery or | to restore connectivity to any of them by means of some recovery or | |||
| protection mechanisms, the branch node MAY remove itself from the | protection mechanisms, the branch LSR MAY remove itself from the | |||
| P2MP tree provided that it is not also an egress LSR (that is, a | P2MP tree provided that it is not also an egress LSR (that is, a | |||
| bud). Since the faults that severed the various downstream egress | bud). Since the faults that severed the various downstream egress | |||
| nodes from the P2MP tree may be disparate, the branch node MUST | LSRs from the P2MP tree may be disparate, the branch LSR MUST | |||
| report all such errors to its upstream neighbor. An upstream LSR or | report all such errors to its upstream neighbor. An upstream LSR or | |||
| the ingress node can then decide to re-compute the path to those | the ingress LSR can then decide to re-compute the path to those | |||
| particular egress nodes, around the failure point. | particular egress LSRs, around the failure point. | |||
| Solutions MAY include the facility for transit LSRs and particularly | Solutions MAY include the facility for transit LSRs and particularly | |||
| branch nodes to recompute sub-P2MP trees to restore them after | branch LSRs to recompute sub-P2MP trees to restore them after | |||
| failures. In the event of successful repair, error notifications | failures. In the event of successful repair, error notifications | |||
| SHOULD NOT be reported to upstream nodes, but the new paths are | SHOULD NOT be reported to upstream nodes, but the new paths are | |||
| reported if route recording is in use. Crankback requirements are | reported if route recording is in use. Crankback requirements are | |||
| discussed in Section 4.21. | discussed in Section 4.21. | |||
| 4.7 Record route of P2MP TE LSP | 4.7 Record route of P2MP TE LSP | |||
| Being able to identify the established topology of P2MP TE LSP is | Being able to identify the established topology of P2MP TE LSP is | |||
| very important for various purposes such as management and operation | very important for various purposes such as management and operation | |||
| of some local recovery mechanisms like Fast Reroute [RFC4090]. A | of some local recovery mechanisms like Fast Reroute [RFC4090]. A | |||
| skipping to change at page 16, line 21 ¶ | skipping to change at page 16, line 31 ¶ | |||
| P2MP TE LSPs | P2MP TE LSPs | |||
| P2MP TE LSPs may share network resource with P2P TE LSPs. Therefore | P2MP TE LSPs may share network resource with P2P TE LSPs. Therefore | |||
| it is important to use CAC and QoS in the same way as P2P TE LSPs | it is important to use CAC and QoS in the same way as P2P TE LSPs | |||
| for easy and scalable operation. | for easy and scalable operation. | |||
| P2MP TE solutions MUST support both resource sharing and exclusive | P2MP TE solutions MUST support both resource sharing and exclusive | |||
| resource utilization to facilitate co-existence with other LSPs to | resource utilization to facilitate co-existence with other LSPs to | |||
| the same destination(s). | the same destination(s). | |||
| P2MP TE solution MUST be applicable to DiffServ-enabled networks | P2MP TE solutions MUST be applicable to DiffServ-enabled networks | |||
| that can provide consistent QoS control in P2MP LSP traffic. | that can provide consistent QoS control in P2MP LSP traffic. | |||
| Any solution SHOULD also satisfy the DS-TE requirements [RFC3564] | Any solution SHOULD also satisfy the DS-TE requirements [RFC3564] | |||
| and interoperate smoothly with current P2P DS-TE protocol | and interoperate smoothly with current P2P DS-TE protocol | |||
| specifications. | specifications. | |||
| Note that this requirement document does not make any assumption on | 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 | 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. | shared with P2P TE LSP or be dedicated for P2MP use. | |||
| 4.9 Variation of LSP Parameters | 4.9 Variation of LSP Parameters | |||
| Certain parameters (such as priority and bandwidth) are associated | Certain parameters (such as priority and bandwidth) are associated | |||
| with an LSP. The parameters are installed by the signaling exchanges | with an LSP. The parameters are installed by the signaling exchanges | |||
| associated with establishing and maintaining the LSP. | associated with establishing and maintaining the LSP. | |||
| Any solution MUST NOT allow for variance of these parameters within | Any solution MUST NOT allow for variance of these parameters within | |||
| a single P2MP LSP. That is: | a single P2MP LSP. That is: | |||
| - No attributes set and signaled by the ingress of a P2MP LSP may | - No attributes set and signaled by the ingress LSR of a P2MP LSP may | |||
| be varied by downstream LSRs. | be varied by downstream LSRs. | |||
| - There MUST be homogeneous QoS from the root to all leaves of a | - There MUST be homogeneous QoS from the root to all leaves of a | |||
| single P2MP LSP. | single P2MP LSP. | |||
| Variation of parameters may be allowed so long as it applies to the | Changing the parameters for the whole tree MAY be supported, but the | |||
| whole LSP from ingress to all egresses. | change MUST apply to the whole tree from ingress LSR to all egress | |||
| LSRs. | ||||
| 4.10 Re-optimization of P2MP TE LSPs | 4.10 Re-optimization of P2MP TE LSPs | |||
| The detection of a more optimal path (for example, one with a lower | 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 | overall cost) is an example of a situation where P2MP TE LSP | |||
| re-routing may be required. While re-routing is in progress, an | re-routing may be required. While re-routing is in progress, an | |||
| important requirement is avoiding double bandwidth reservation | important requirement is avoiding double bandwidth reservation | |||
| (over the common parts between the old and new LSP) thorough the use | (over the common parts between the old and new LSP) thorough the use | |||
| of resource sharing. | of resource sharing. | |||
| Make-before-break MUST be supported for a P2MP TE LSP to ensure that | Make-before-break MUST be supported for a P2MP TE LSP to ensure that | |||
| there is minimal traffic disruption when the P2MP TE LSP is | there is minimal traffic disruption when the P2MP TE LSP is | |||
| re-routed. | re-routed. | |||
| It is possible to achieve make-before-break that only applies to a | Make-before-break that only applies to a sub-P2MP tree without | |||
| sub-P2MP tree without impacting the data on all of the other parts | impacting the data on all of the other parts of the P2MP tree MUST be | |||
| of the P2MP tree. | supported. | |||
| The solution SHOULD allow for make-before-break re-optimization of | The solution SHOULD allow for make-before-break re-optimization of | |||
| any subdivision of the P2MP LSP (S2PL sub-LSP, S2X sub-LSP, S2L | any subdivision of the P2MP LSP (S2PL sub-LSP, S2X sub-LSP, S2L | |||
| sub-LSP, X2AL sub-LSP, B2PL sub-LSP, X2AL sub-LSP, or B2AL tree). | sub-LSP, X2AL sub-LSP, B2PL sub-LSP, X2AL sub-LSP, or B2AL tree). | |||
| Further it SHOULD do so minimizing the signaling impact on the rest | Further it SHOULD do so minimizing the signaling impact on the rest | |||
| of the P2MP LSP, and without affecting the ability of the management | of the P2MP LSP, and without affecting the ability of the management | |||
| plane to manage the LSP. | plane to manage the LSP. | |||
| The solution SHOULD also provide the ability for the ingress LSR to | The solution SHOULD also provide the ability for the ingress LSR to | |||
| have a strict control on the re-optimization process. The ingress | have strict control over the re-optimization process. The ingress | |||
| LSR SHOULD be able to limit all re-optimization to be | LSR SHOULD be able to limit all re-optimization to be | |||
| source-initiated. | source-initiated. | |||
| Where sub-LSP re-optimization is allowed by the ingress LSR, such | Where sub-LSP re-optimization is allowed by the ingress LSR, such | |||
| re-optimization MAY be initiated by a downstream LSR that is the | re-optimization MAY be initiated by a downstream LSR that is the | |||
| root of the sub-LSP that is to be re-optimized. Sub-LSP | root of the sub-LSP that is to be re-optimized. Sub-LSP | |||
| re-optimization initiated by a downstream LSR MUST be carried out | re-optimization initiated by a downstream LSR MUST be carried out | |||
| with the same regard to minimizing the hit on active traffic as | with the same regard to minimizing the impact on active traffic as | |||
| was described above for other re-optimization. | was described above for other re-optimization. | |||
| 4.11 Tree Remerge | 4.11 Merging of Tree Branches | |||
| It is possible for a single transit LSR to receive multiple signaling | It is possible for a single transit LSR to receive multiple signaling | |||
| messages for the same P2MP LSP but for different sets of | messages for the same P2MP LSP but for different sets of | |||
| destinations. These messages may be received from the same or | destinations. These messages may be received from the same or | |||
| different upstream nodes and may need to be passed on to the same or | different upstream nodes and may need to be passed on to the same or | |||
| different downstream nodes. | different downstream nodes. | |||
| This situation may arise as the result of the signaling solution | This situation may arise as the result of the signaling solution | |||
| definition or implementation options within the signaling solution. | definition or implementation options within the signaling solution. | |||
| Further, it may happen during make-before-break reoptimization | Further, it may happen during make-before-break reoptimization | |||
| (section 4.10), or as a result of signaling message fragmentation | (section 4.10). | |||
| (section 4.5). | ||||
| It is even possible that it is necessary to construct distinct | It is even possible that it is necessary to construct distinct | |||
| upstream branches in order to achieve the correct label choices in | upstream branches in order to achieve the correct label choices in | |||
| certain switching technologies managed by GMPLS (for example, | certain switching technologies managed by GMPLS (for example, | |||
| photonic cross-connects where the selection of a particular lambda | photonic cross-connects where the selection of a particular lambda | |||
| for the downstream branches is only available on different upstream | for the downstream branches is only available on different upstream | |||
| switches). | switches). | |||
| The solution MUST support the case where of multiple signaling | The solution MUST support the case where multiple signaling | |||
| messages for the same P2MP LSP are received at a single transit LSR | messages for the same P2MP LSP are received at a single transit LSR | |||
| and refer to the same upstream interface. In this case the result of | and refer to the same upstream interface. In this case the result of | |||
| the protocol procedures SHOULD be a single data flow on the upstream | the protocol procedures SHOULD be a single data flow on the upstream | |||
| interface. | interface. | |||
| The solution SHOULD support the case where multiple signaling | The solution SHOULD support the case where multiple signaling | |||
| messages for the same P2MP LSP are received at a single transit LSR | messages for the same P2MP LSP are received at a single transit LSR | |||
| and refer to different upstream interfaces, and where each signaling | and refer to different upstream interfaces, and where each signaling | |||
| message results in the use of different downstream interfaces. This | message results in the use of different downstream interfaces. This | |||
| case represents data flows that cross at the LSR but which do not | case represents data flows that cross at the LSR but which do not | |||
| skipping to change at page 18, line 35 ¶ | skipping to change at page 18, line 47 ¶ | |||
| An alternative to supporting this last case is for the signaling | An alternative to supporting this last case is for the signaling | |||
| protocol to indicate an error such that the merge may be resolved by | protocol to indicate an error such that the merge may be resolved by | |||
| the upstream LSRs. | the upstream LSRs. | |||
| 4.12 Data Duplication | 4.12 Data Duplication | |||
| Data duplication refers to the receipt by any recipient of duplicate | Data duplication refers to the receipt by any recipient of duplicate | |||
| instances of the data. In a packet environment this means the | instances of the data. In a packet environment this means the | |||
| receipt of duplicate packets. Although small-scale packet duplication | receipt of duplicate packets. Although small-scale packet duplication | |||
| should be a benign (if inefficient) situation, certain existing and | (that is, a few packets over a relatively short period of time) | |||
| deployed applications will not tolerate packet duplication. Long-term | should be a harmless (if inefficient) situation, certain existing and | |||
| deployed applications will not tolerate packet duplication. Sustained | ||||
| packet duplication is, at best, a waste of network and processing | packet duplication is, at best, a waste of network and processing | |||
| resources, and at worst may cause congestion and the inability to | resources, and at worst may cause congestion and the inability to | |||
| process the data correctly. | process the data correctly. | |||
| In a non-packet environment data duplication means the duplication in | In a non-packet environment data duplication means the duplication of | |||
| time of some part of the signal that may lead to the replication of | some part of the signal that may lead to the replication of data or | |||
| data or to the scrambling of data. | to the scrambling of data. | |||
| Data duplication may legitimately arise in various scenarios | Data duplication may legitimately arise in various scenarios | |||
| including re-optimization of active LSPs as described in the | including re-optimization of active LSPs as described in the | |||
| previous section, and protection of LSPs. Thus, it is impractical to | previous section, and protection of LSPs. Thus, it is impractical to | |||
| regulate against data duplication in this document. | regulate against data duplication in this document. | |||
| Instead, the solution: | Instead, the solution: | |||
| - SHOULD limit to bounded transitory conditions the cases where | - SHOULD limit to bounded transitory conditions the cases where | |||
| network bandwidth is wasted by the existence of duplicate delivery | network bandwidth is wasted by the existence of duplicate delivery | |||
| skipping to change at page 19, line 22 ¶ | skipping to change at page 19, line 37 ¶ | |||
| 4.14 P2MP MPLS Label | 4.14 P2MP MPLS Label | |||
| A P2MP TE solution MUST allow the continued use of existing | A P2MP TE solution MUST allow the continued use of existing | |||
| techniques to establish P2P LSPs (TE and otherwise) within the same | techniques to establish P2P LSPs (TE and otherwise) within the same | |||
| network, and MUST allow the co-existence of P2P LSPs within the same | network, and MUST allow the co-existence of P2P LSPs within the same | |||
| network as P2MP TE LSPs. | network as P2MP TE LSPs. | |||
| A P2MP TE solution MUST be specified in such a way that it allows | 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. | P2MP and P2P TE LSPs to be signaled on the same interface. | |||
| 4.15 Routing advertisement of P2MP capability | 4.15 Advertisement of P2MP capability | |||
| Several high-level requirements have been identified to determine the | Several high-level requirements have been identified to determine the | |||
| capabilities of LSRs within a P2MP network. The aim of such | capabilities of LSRs within a P2MP network. The aim of such | |||
| information is to facilitate the computation of P2MP trees using TE | information is to facilitate the computation of P2MP trees using TE | |||
| constraints within a network that contains LSRs that do not all have | constraints within a network that contains LSRs that do not all have | |||
| the same capabilities levels with respect to P2MP signaling and data | the same capabilities levels with respect to P2MP signaling and data | |||
| forwarding. | forwarding. | |||
| These capabilities include, but are not limited to: | These capabilities include, but are not limited 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 | - The ability of an LSR to act as an egress LSR and a branch LSR for | |||
| LSP. | the same LSP. | |||
| - the ability of an LSR to support P2MP MPLS-TE signaling. | - The ability of an LSR to support P2MP MPLS-TE signaling. | |||
| 4.16 Multi-access LANs | 4.16 Multi-access LANs | |||
| P2MP MPLS TE may be used to traverse network segments that are | P2MP MPLS TE may be used to traverse network segments that are | |||
| provided by multi-access media such as Ethernet. In these cases, it | 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 | is also possible that the entry point to the network segment is a | |||
| branch point of the P2MP LSP. | branch LSR of the P2MP LSP. | |||
| Two options clearly exist: | Two options clearly exist: | |||
| - the branch point replicates the data and transmits multiple copies | - the branch LSR replicates the data and transmits multiple copies | |||
| onto the segment | onto the segment | |||
| - the branch point sends a single copy of the data to the segment | - the branch LSR sends a single copy of the data to the segment | |||
| and relies on the exit points to discriminate the reception of | and relies on the exit points to determine whether to receive and | |||
| the data. | forward the data. | |||
| The first option has a significant data plane scaling issue since all | The first option has a significant data plane scaling issue since all | |||
| replicated data must be sent through the same port and carried on the | replicated data must be sent through the same port and carried on the | |||
| same segment. Thus, a solution SHOULD provide a mechanism for a | 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 | branch LSR to send a single copy of the data onto a multi-access | |||
| network and reach multiple (adjacent) downstream nodes. The second | network and reach multiple (adjacent) downstream nodes. The second | |||
| option may have control plane scaling issues. | option may have control plane scaling issues. | |||
| 4.17 P2MP MPLS OAM | 4.17 P2MP MPLS OAM | |||
| The MPLS and GMPLS MIB modules will be enhanced to provide P2MP TE | The MPLS and GMPLS MIB modules MUST be enhanced to provide P2MP TE | |||
| LSP management in line with whatever signaling solutions are | LSP management in line with whatever signaling solutions are | |||
| developed. | developed. | |||
| In order to facilitate correct management, P2MP TE LSPs MUST have | In order to facilitate correct management, P2MP TE LSPs MUST have | |||
| unique identifiers since otherwise it is impossible to determine | unique identifiers since otherwise it is impossible to determine | |||
| which LSP is being managed. | which LSP is being managed. | |||
| Further discussions of OAM are out of scope for this document. | Further discussions of OAM are out of scope for this document. | |||
| See [P2MP-OAM] for more details. | See [P2MP-OAM] for more details. | |||
| 4.18 Scalability | 4.18 Scalability | |||
| Scalability is a key requirement in P2MP MPLS systems. Solutions MUST | 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 | be designed to scale well with an increase in the number of any of | |||
| the following: | the following: | |||
| - the number of recipients | - the number of recipients | |||
| - the number of branch points | - the number of egress LSRs | |||
| - the number of branch LSRs | ||||
| - the number of branches. | - the number of branches. | |||
| Both scalability of control plane operation (setup, maintenance, | Both scalability of control plane operation (setup, maintenance, | |||
| modification and teardown) MUST be considered. | modification and teardown) MUST be considered. | |||
| Key considerations MUST include: | Key considerations MUST include: | |||
| - the amount of refresh processing associated with maintaining | - the amount of refresh processing associated with maintaining | |||
| a P2MP TE LSP. | a P2MP TE LSP. | |||
| - the amount of protocol state that must be maintained by ingress | - the amount of protocol state that must be maintained by ingress | |||
| and transit LSRs along a P2MP tree. | and transit LSRs along a P2MP tree. | |||
| skipping to change at page 21, line 13 ¶ | skipping to change at page 21, line 34 ¶ | |||
| existing P2MP LSP. | existing P2MP LSP. | |||
| It is expected that the applicability of each solution will be | It is expected that the applicability of each solution will be | |||
| evaluated with regards to the aforementioned scalability criteria. | evaluated with regards to the aforementioned scalability criteria. | |||
| 4.18.1 Absolute Limits | 4.18.1 Absolute Limits | |||
| In order to achieve the best solution for the problem space it is | In order to achieve the best solution for the problem space it is | |||
| helpful to clarify the boundaries for P2MP TE LSPs. | helpful to clarify the boundaries for P2MP TE LSPs. | |||
| - Number of recipients. | - Number of egress LSRs. | |||
| A scaling bound is placed on the solution mechanism such that a | A scaling bound is placed on the solution mechanism such that a | |||
| P2MP TE LSP MUST reduce to similar scaling properties as a P2P LSP | P2MP TE LSP MUST reduce to similar scaling properties as a P2P LSP | |||
| when the number of recipients reduces to one. | when the number of egress LSRs reduces to one. That is, | |||
| establishing a P2MP TE LSP to a single egress LSR should cost | ||||
| approximately as much as establishing a P2P LSP. | ||||
| It is important to classify the issues of scaling within the | It is important to classify the issues of scaling within the | |||
| context of Traffic Engineering. It is anticipated that the initial | context of Traffic Engineering. It is anticipated that the initial | |||
| deployments of P2MP TE LSPs will be limited to a maximum of around | deployments of P2MP TE LSPs will be limited to a maximum of around | |||
| a hundred recipients, but that medium term deployments may increase | a hundred egress LSRs, but that within five years deployments may | |||
| this to several hundred, and that future deployments may require | increase this to several hundred, and that future deployments may | |||
| significantly larger numbers. | require significantly larger numbers. | |||
| An acceptable upper bound for a solution, therefore, is one that | An acceptable upper bound for a solution, therefore, is one that | |||
| scales linearly with the number of recipients. It is expected that | scales linearly with the number of egress LSRs. It is expected that | |||
| solutions will scale better than linearly. | solutions will scale better than linearly. | |||
| Solutions that scale worse than linear (that is, exponential or | Solutions that scale worse than linear (that is, exponential or | |||
| polynomial) are not acceptable whatever the number of recipients | polynomial) are not acceptable whatever the number of egress LSRs | |||
| they could support. | they could support. | |||
| - Number of branch points. | - Number of branch LSRs. | |||
| Solutions MUST support all possibilities from one extreme of a | Solutions MUST support all possibilities from one extreme of a | |||
| single branch point that forks to all leaves on a separate branch, | single branch LSR that forks to all leaves on a separate branch, | |||
| to the greatest number of branch points which is (n-1) for n | to the greatest number of branch LSRs which is (n-1) for n egress | |||
| recipients. Assumptions MUST NOT be made in the solution regarding | LSRs. Assumptions MUST NOT be made in the solution regarding which | |||
| which topology is more common, and the solution MUST be designed | topology is more common, and the solution MUST be designed to | |||
| to ensure scalability in all topologies. | ensure scalability in all topologies. | |||
| - Dynamics of P2MP tree. | - Dynamics of P2MP tree. | |||
| Recall that the mechanisms for determining which recipients should | Recall that the mechanisms for determining which egress LSRs should | |||
| be added to an LSP, and for adding and removing recipients from | be added to an LSP, and for adding and removing egress LSRs from | |||
| that group are out of the scope of this document. Nevertheless, it | that group are out of the scope of this document. Nevertheless, it | |||
| is useful to understand the expected rates of arrival and | is useful to understand the expected rates of arrival and | |||
| departure of recipients since this can impact the selection of | departure of egress LSRs since this can impact the selection of | |||
| solution techniques. | solution techniques. | |||
| Again, it must be recalled that this document is limited to | Again, it must be recalled that this document is limited to Traffic | |||
| Traffic Engineering, and in this model the rate of change of LSP | Engineering, and in this model the rate of change of LSP egress | |||
| egresses may be expected to be lower than the rate of change of | LSRs may be expected to be lower than the rate of change of | |||
| recipients in an IP multicast group. | recipients in an IP multicast group. | |||
| Although the absolute number of recipients coming and going is the | Although the absolute number of egress LSRs coming and going is the | |||
| important element for determining the scalability of a solution, | important element for determining the scalability of a solution, | |||
| it may be noted that a percentage may be a more comprehensible | 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 | measure, but that this is not as significant for LSPs with a small | |||
| number of recipients. | number of recipients. | |||
| A working figure for an established P2MP TE LSP is less than 10% | A working figure for an established P2MP TE LSP is less than 10% | |||
| churn per day. That is, a relatively slow rate of churn. | churn per day. That is, a relatively slow rate of churn. | |||
| We could say that a P2MP LSP would be shared by multiple multicast | We could say that a P2MP LSP would be shared by multiple multicast | |||
| groups and so the dynamics of the P2MP LSP would be relatively | groups and so the dynamics of the P2MP LSP would be relatively | |||
| small. | small. | |||
| Solutions MUST optimize around such relatively low rates of change | Solutions MUST optimize for such relatively low rates of change and | |||
| and are NOT REQUIRED to optimize for significantly higher rates | are not required to optimize for significantly higher rates of | |||
| of change. | change. | |||
| - Rate of change within the network. | - Rate of change within the network. | |||
| It is also important to understand the scaling with regard to | It is also important to understand the scaling with regard to | |||
| changes within the network. That is, one of the features of a | changes within the network. That is, one of the features of a P2MP | |||
| P2MP TE LSP is that it can be robust or protected against network | TE LSP is that it can be robust or protected against network | |||
| failures, and can be re-optimized to take advantage of newly | failures, and can be re-optimized to take advantage of newly | |||
| available network resources. | available network resources. | |||
| It is more important that a solution be optimized for scaling with | It is more important that a solution be optimized for scaling with | |||
| respect to recovery and re-optimization of the LSP, than for change | respect to recovery and re-optimization of the LSP than for change | |||
| in the recipients, because P2MP is used as a TE tool. | in the egress LSRs, because P2MP is used as a TE tool. | |||
| The solution MUST follow this distinction. | The solution MUST follow this distinction and optimize accordingly. | |||
| 4.19 Backwards Compatibility | 4.19 Backwards Compatibility | |||
| It SHOULD be an aim of any P2MP solution to offer as much backward | It SHOULD be an aim of any P2MP solution to offer as much backward | |||
| compatibility as possible. An ideal which is probably impossible to | compatibility as possible. An ideal which is probably impossible to | |||
| achieve would be to offer P2MP services across legacy MPLS networks | achieve would be to offer P2MP services across legacy MPLS networks | |||
| without any change to any LSR in the network. | without any change to any LSR in the network. | |||
| If this ideal cannot be achieved, the aim SHOULD be to use legacy | If this ideal cannot be achieved, the aim SHOULD be to use legacy | |||
| nodes as both transit non-branch LSRs and egress LSRs. | nodes as both transit non-branch LSRs and egress LSRs. | |||
| skipping to change at page 23, line 17 ¶ | skipping to change at page 23, line 43 ¶ | |||
| The requirement for P2MP services for non-packet switch interfaces | The requirement for P2MP services for non-packet switch interfaces | |||
| is similar to that for Packet-Switch Capable (PSC) interfaces. | is similar to that for Packet-Switch Capable (PSC) interfaces. | |||
| Therefore, it is a requirement that reasonable attempts must be made | Therefore, it is a requirement that reasonable attempts must be made | |||
| to make all the features/mechanisms (and protocol extensions) that | to make all the features/mechanisms (and protocol extensions) that | |||
| will be defined to provide MPLS P2MP TE LSPs equally applicable to | 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 | 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 | over-complicate the PSC solution a decision may be taken to separate | |||
| the solutions. | the solutions. | |||
| Solutions for MPLS P2MP TE-LSPs when applied to GMPLS P2MP PSC or | 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 | non-PSC TE-LSPs MUST be compatible with the other features of GMPLS | |||
| other features of GMPLS including: | including: | |||
| - control and data plane separation (IF_ID RSVP_HOP and IF_ID | - control and data plane separation, | |||
| ERROR_SPEC), | - full support of numbered and unnumbered TE links, | |||
| - full support of numbered and unnumbered TE links (see [RFC 3477] | - use of the arbitrary labels and labels for specific technologies, | |||
| and [GMPLS-ROUTE]), | as well as negotiation of labels where necessary to support limited | |||
| - use of the GENERALIZED_LABEL_REQUEST, the GENERALIZED_LABEL (C-Type | label processing and swapping capabilities, | |||
| 2 and 3), the SUGGESTED_LABEL and the RECOVERY_LABEL, in | - the ability to apply external control to the labels selected on | |||
| conjunction with the LABEL_SET and the ACCEPTABLE_LABEL_SET object, | each hop of the LSP, and to control the next hop | |||
| - processing of the ADMIN_STATUS object, | label/port/interface for data after it reaches the egress LSR, | |||
| - processing of the PROTECTION object, | ||||
| - support of Explicit Label Control, | - support for graceful and alarm-free enablement and termination of | |||
| - processing of the Path_State_Removed Flag, | LSPs, | |||
| - full support for protection including link level protection, | ||||
| end-to-end protection and segment protection, | ||||
| - the ability to teardown an LSP from a downstream LSR, in particular | ||||
| from the egress LSR, | ||||
| - handling of Graceful Deletion procedures, | - handling of Graceful Deletion procedures, | |||
| - E2E and Segment Recovery procedures, | - support for failure and restart or reconnection of the control | |||
| - support of Graceful Restart. | plane without any disruption of the data plane. | |||
| In addition, since non-PSC TE-LSPs may have to be processed in | In addition, since non-PSC TE-LSPs may have to be processed in | |||
| environments where the "P2MP capability" could be limited, specific | environments where the "P2MP capability" could be limited, specific | |||
| constraints may also apply during the P2MP TE Path computation. | constraints may also apply during the P2MP TE Path computation. | |||
| Being technology specific, these constraints are outside the scope | Being technology specific, these constraints are outside the scope | |||
| of this document. However, technology independent constraints | of this document. However, technology independent constraints | |||
| (i.e. constraints that are applicable independently of the LSP | (i.e. constraints that are applicable independently of the LSP | |||
| class) SHOULD be allowed during P2MP TE LSP message processing. | class) SHOULD be allowed during P2MP TE LSP message processing. | |||
| It has to be emphasized that path computation and management | It has to be emphasized that path computation and management | |||
| techniques shall be as close as possible to those being used for | techniques shall be as close as possible to those being used for | |||
| skipping to change at page 24, line 10 ¶ | skipping to change at page 24, line 39 ¶ | |||
| [CRANKBACK]. In particular, they SHOULD provide sufficient | [CRANKBACK]. In particular, they SHOULD provide sufficient | |||
| information to a branch LSR from downstream LSRs to allow the branch | information to a branch LSR from downstream LSRs to allow the branch | |||
| LSR to re-route a sub-LSP around any failures or problems in the | LSR to re-route a sub-LSP around any failures or problems in the | |||
| network. | network. | |||
| 5. Security Considerations | 5. Security Considerations | |||
| This requirements document does not define any protocol extensions | This requirements document does not define any protocol extensions | |||
| and does not, therefore, make any changes to any security models. | and does not, therefore, make any changes to any security models. | |||
| It is a requirement that any P2MP solution developed to meet some or | ||||
| all of the requirements expressed in this document MUST include | ||||
| mechanisms to enable the secure establishment and management of P2MP | ||||
| MPLS-TE LSPs. This includes, but is not limited to: | ||||
| - mechanisms to ensure that the ingress LSR of a P2MP LSP is | ||||
| identified | ||||
| - mechanisms to ensure that communicating signaling entities can | ||||
| verify each other's identities | ||||
| - mechanisms to ensure that control plane messages are protected | ||||
| against spoofing and tampering | ||||
| - mechanisms to ensure that unauthorized leaves or branches are not | ||||
| added to the P2MP LSP | ||||
| - mechanisms to protect signaling messages from snooping. | ||||
| It should be noted that P2MP signaling mechanisms built on P2P | It should be noted that P2MP signaling mechanisms built on P2P | |||
| RSVP-TE signaling are likely to inherit all of the security | RSVP-TE signaling are likely to inherit all of the security | |||
| techniques and problems associated with RSVP-TE. These problems may | techniques and problems associated with RSVP-TE. These problems may | |||
| be exacerbated in P2MP situations where security relationships may | be exacerbated in P2MP situations where security relationships may | |||
| need to maintained between an ingress and multiple egresses. Such | need to maintained between an ingress LSR and multiple egress LSRs. | |||
| issues are similar to security issues for IP multicast. | Such issues are similar to security issues for IP multicast. | |||
| It is a requirement that documents offering solutions for P2MP LSPs | It is a requirement that documents offering solutions for P2MP LSPs | |||
| MUST have detailed security sections. | MUST have detailed security sections. | |||
| 6. IANA Considerations | 6. IANA Considerations | |||
| This informational draft does not introduce any new encodings or code | This informational draft does not introduce any new encodings or code | |||
| points. It requires no action from IANA. | points. It requires no action from IANA. | |||
| 7. Acknowledgements | 7. Acknowledgements | |||
| The authors would like to thank George Swallow, Ichiro Inoue, Dean | The authors would like to thank George Swallow, Ichiro Inoue, Dean | |||
| Cheng, Lou Berger and Eric Rosen for their review and suggestions. | Cheng, Lou Berger and Eric Rosen for their review and suggestions. | |||
| Thanks to Loa Andersson for his help resolving the final issues in | Thanks to Loa Andersson for his help resolving the final issues in | |||
| this document. | this document and to Harald Alvestrand for a thorough GenArt review. | |||
| 8. References | 8. References | |||
| 8.1 Normative References | 8.1 Normative References | |||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, March 1997. | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
| [RFC2205] Braden, R., Zhang, L., Berson, S., Herzog, S. and | ||||
| S. Jamin, "Resource ReSerVation Protocol (RSVP) - | ||||
| Version 1, Functional Specification", RFC 2205, | ||||
| September 1997. | ||||
| [RFC2475] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z. | ||||
| and W. Weiss, "An Architecture for Differentiated | ||||
| Services", RFC 2475, December 1998. | ||||
| [RFC2597] Heinanen, J., Baker, F., Weiss, W. and J. Wroclawski, | ||||
| "Assured Forwarding PHB Group", RFC 2597, June 1999. | ||||
| [RFC2702] D. Awduche, J. Malcolm, J. Agogbua, M. O'Dell, J. | [RFC2702] D. Awduche, J. Malcolm, J. Agogbua, M. O'Dell, J. | |||
| McManus, "Requirements for Traffic Engineering Over | McManus, "Requirements for Traffic Engineering Over | |||
| MPLS", RFC2702, September 1999. | MPLS", RFC2702, September 1999. | |||
| [RFC3031] Rosen, E., Viswanathan, A. and R. Callon, | [RFC3031] Rosen, E., Viswanathan, A. and R. Callon, | |||
| "Multiprotocol Label Switching Architecture", RFC 3031, | "Multiprotocol Label Switching Architecture", RFC 3031, | |||
| January 2001. | January 2001. | |||
| [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, | [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, | |||
| V. and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP | V. and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP | |||
| Tunnels", RFC 3209, December 2001. | Tunnels", RFC 3209, December 2001. | |||
| [RFC3246] Davie, B., Charny, A., Bennet, J.C.R., Benson, K., Le | ||||
| Boudec, J.Y., Davari, S., Courtney, W., Firioiu, V. and | ||||
| D. Stiliadis, "An Expedited Forwarding PHB (Per-Hop | ||||
| Behavior)", RFC 3246, March 2002. | ||||
| [RFC3667] Bradner, S., "IETF Rights in Contributions", BCP 78, | ||||
| RFC 3667, February 2004. | ||||
| [RFC3668] Bradner, S., Ed., "Intellectual Property Rights in IETF | ||||
| Technology", BCP 79, RFC 3668, February 2004. | ||||
| 8.2 Informational References | 8.2 Informational References | |||
| [RFC3471] Berger, L., Editor, "Generalized Multi-Protocol Label | ||||
| Switching (GMPLS) Signaling Functional Description", | ||||
| RFC 3471, January 2003. | ||||
| [RFC3473] Berger, L., Editor, "Generalized Multi-Protocol Label | [RFC3473] Berger, L., Editor, "Generalized Multi-Protocol Label | |||
| Switching (GMPLS) Signaling - Resource ReserVation | Switching (GMPLS) Signaling - Resource ReserVation | |||
| Protocol-Traffic Engineering (RSVP-TE) Extensions", | Protocol-Traffic Engineering (RSVP-TE) Extensions", | |||
| RFC 3473, January 2003. | RFC 3473, January 2003. | |||
| [RFC3477] K. Kompella, Y. Rekhter, "Signalling Unnumbered Links | ||||
| in Resource ReSerVation Protocol -Traffic Engineering | ||||
| (RSVP-TE)", RFC3477, January 2003. | ||||
| [RFC3564] F. Le Faucheur, W. Lai, "Requirements for Support of | [RFC3564] F. Le Faucheur, W. Lai, "Requirements for Support of | |||
| Differentiated Services-aware MPLS Traffic | Differentiated Services-aware MPLS Traffic | |||
| Engineering", RFC 3564, July 2003. | Engineering", RFC 3564, July 2003. | |||
| [RFC3630] D. Katz, D. Yeung, K. Kompella, "Traffic Engineering | ||||
| Extensions to OSPF Version 2", RFC 3630, September | ||||
| 2003. | ||||
| [RFC4090] P. Pan, G. Swallow, A. Atlas, "Fast Reroute Extensions | [RFC4090] P. Pan, G. Swallow, A. Atlas, "Fast Reroute Extensions | |||
| to RSVP-TE for LSP Tunnels", RFC 4090, May 2005. | to RSVP-TE for LSP Tunnels", RFC 4090, May 2005. | |||
| [GMPLS-ROUTE] K. Kompella, Y. Rekhter, Editor, "Routing Extensions | ||||
| in Support of Generalized Multi-Protocol Label | ||||
| Switching", draft-ietf-ccamp-gmpls-routing, work in | ||||
| progress. | ||||
| [STEINER] H. Salama, et al., "Evaluation of Multicast Routing | [STEINER] H. Salama, et al., "Evaluation of Multicast Routing | |||
| Algorithm for Real-Time Communication on High-Speed | Algorithm for Real-Time Communication on High-Speed | |||
| Networks," IEEE Journal on Selected Area in | Networks," IEEE Journal on Selected Area in | |||
| Communications, pp.332-345, 1997. | Communications, pp.332-345, 1997. | |||
| [IS-IS-TE] Henk Smit, Tony Li, "Intermediate System to | ||||
| Intermediate System (IS-IS) Extensions for Traffic | ||||
| Engineering (TE)", RFC 3784, June 2004. | ||||
| [CRANKBACK] A. Farrel, A. Satyanarayana, A. Iwata, N. Fujita, G. | [CRANKBACK] A. Farrel, A. Satyanarayana, A. Iwata, N. Fujita, G. | |||
| Ash, S. Marshall, "Crankback Signaling Extensions for | Ash, S. Marshall, "Crankback Signaling Extensions for | |||
| MPLS Signaling", draft-ietf-ccamp-crankback, work in | MPLS Signaling", draft-ietf-ccamp-crankback, work in | |||
| progress. | progress. | |||
| [LSP-HIER] K. Kompella, Y. Rekhter, "LSP Hierarchy with | ||||
| Generalized MPLS TE", | ||||
| draft-ietf-mpls-lsp-hierarchy, work in progress. | ||||
| [P2MP-OAM] S. Yasukawa, A. Farrel, D. King, and T. Nadeau, "OAM | [P2MP-OAM] S. Yasukawa, A. Farrel, D. King, and T. Nadeau, "OAM | |||
| Requirements for Point-to-Multipoint MPLS Networks", | Requirements for Point-to-Multipoint MPLS Networks", | |||
| draft-yasukawa-mpls-p2mp-oam-reqs, work in progress. | draft-yasukawa-mpls-p2mp-oam-reqs, work in progress. | |||
| 9. Editor's Address | 9. Editor's Address | |||
| Seisho Yasukawa | Seisho Yasukawa | |||
| NTT Corporation | NTT Corporation | |||
| 9-11, Midori-Cho 3-Chome | 9-11, Midori-Cho 3-Chome | |||
| Musashino-Shi, Tokyo 180-8585, | Musashino-Shi, Tokyo 180-8585, | |||
| End of changes. 115 change blocks. | ||||
| 285 lines changed or deleted | 280 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||