TEAS Working GroupInternet Engineering Task Force (IETF) T. Saad, Ed.Internet-DraftRequest for Comments: 8149 R. Gandhi, Ed.Intended status:Category: Standards Track Z. AliExpires: August 6, 2017ISSN: 2070-1721 Cisco Systems, Inc. R. Venator Defense Information Systems Agency Y. Kamite NTT Communications CorporationFebruary 2,April 2017 RSVP ExtensionsFor Re-optimizationfor Reoptimization of Loosely Routed Point-to-Multipoint Traffic Engineering Label Switched Paths (LSPs)draft-ietf-teas-p2mp-loose-path-reopt-09AbstractRe-optimizationThe reoptimization of a Point-to-Multipoint (P2MP) TrafficEngineeredEngineering (TE) Label Switched Path (LSP) may be triggered based on the need tore-optimizereoptimize an individual source-to-leaf (S2L) sub-LSP or a set of S2L sub-LSPs, both usingSub-Group-Based Re-optimizationthe Sub-Group-based reoptimization method, or the entire P2MP-TE LSP tree using the Make-Before-Break (MBB) method. This document discusses the application of the existing mechanisms for pathre-optimizationreoptimization of loosely routedPoint-to-PointPoint- to-Point (P2P) TE LSPs to the P2MP-TE LSPs, identifies issues in doingsoso, and defines procedures to address them. Whenre-optimizingreoptimizing a large number of S2L sub-LSPs in a tree using theSub-Group-Based Re-optimizationSub-Group-based reoptimization method, the S2L sub-LSP descriptor list may need to be semantically fragmented. This document defines the notion of a fragment identifier to help recipient nodes unambiguously reconstruct the fragmented S2L sub-LSP descriptor list. Status ofthisThis Memo ThisInternet-Draftissubmitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documentsan Internet Standards Track document. This document is a product of the Internet Engineering Task Force (IETF).Note that other groups may also distribute working documents as Internet-Drafts. The listIt represents the consensus ofcurrent Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents validthe IETF community. It has received public review and has been approved fora maximumpublication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 7841. Information about the current status ofsix monthsthis document, any errata, and how to provide feedback on it may beupdated, replaced, or obsoleted by other documentsobtained atany time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."http://www.rfc-editor.org/info/rfc8149. Copyright Notice Copyright (c) 2017 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction. . . . . . . . . . . . . . . . . . . . . . . . . 4....................................................3 2. Conventions Used in This Document. . . . . . . . . . . . . . 4...............................4 2.1. Key Word Definitions. . . . . . . . . . . . . . . . . . . 4.......................................4 2.2. Abbreviations. . . . . . . . . . . . . . . . . . . . . . 5..............................................4 2.3. Terminology. . . . . . . . . . . . . . . . . . . . . . . 5................................................4 3. Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . 5........................................................5 3.1. Loosely Routed Inter-domain P2MP-TE LSP Tree. . . . . . . 6...............5 3.2. Existing MechanismForfor Tree-Based P2MP-TE LSPRe-optimization . . . . . . . . . . . . . . . . . . . . . 6Reoptimization .............................................6 3.3. Existing MechanismForfor Sub-Group-Based P2MP-TE LSPRe-optimization . . . . . . . . . . . . . . . . . . . . . 7Reoptimization .............................................7 4. Signaling ExtensionsForfor Loosely Routed P2MP-TE LSPRe-optimization . . . . . . . . . . . . . . . . . . . . . . . 8Reoptimization ..................................................8 4.1. Tree-BasedRe-optimization . . . . . . . . . . . . . . . . 8Reoptimization ..................................8 4.2. Sub-Group-BasedRe-optimizationReoptimization Using Fragment Identifier. . . . . . . . . . . . . . . . . . . . . . . . 9...9 5. Message and Object Definitions. . . . . . . . . . . . . . . . 11.................................11 5.1.P2MP-TE"P2MP-TE Tree Re-evaluationRequestRequest" Flag. . . . . . . . . 11.................11 5.2.Preferable"Preferable P2MP-TE TreeExistsExists" Path Error Sub-code. . . . 11......11 5.3. Fragment IdentifierForfor S2Lsub-LSPSub-LSP Descriptor. . . . . . 11............11 6. Compatibility. . . . . . . . . . . . . . . . . . . . . . . . 12..................................................12 7. IANA Considerations. . . . . . . . . . . . . . . . . . . . . 13............................................13 7.1.P2MP-TE"P2MP-TE Tree Re-evaluationRequestRequest" Flag. . . . . . . . . 13.................13 7.2.Preferable"Preferable P2MP-TE TreeExistsExists" Path Error Sub-code. . . . 13......13 7.3. Fragment IdentifierForfor S2Lsub-LSPSub-LSP Descriptor. . . . . . 14............14 8. Security Considerations. . . . . . . . . . . . . . . . . . . 14........................................14 9. References. . . . . . . . . . . . . . . . . . . . . . . . . . 16.....................................................15 9.1. Normative References. . . . . . . . . . . . . . . . . . . 16......................................15 9.2. Informative References. . . . . . . . . . . . . . . . . . 16....................................16 Acknowledgments. . . . . . . . . . . . . . . . . . . . . . . . . 17 Author's...................................................16 Authors' Addresses. . . . . . . . . . . . . . . . . . . . . . . . 17................................................17 1. Introduction This document defines Resource Reservation Protocol - Traffic Engineering (RSVP-TE) [RFC2205] [RFC3209] signaling extensions forre-optimizingreoptimizing loosely routed Point-to-Multipoint (P2MP) TrafficEngineeredEngineering (TE) Label Switched Paths (LSPs) [RFC4875] in aMulti-ProtocolMultiprotocol Label Switching (MPLS) or Generalized MPLS (GMPLS) [RFC3473] network. A P2MP-TE LSP is comprised of one or more source-to-leaf (S2L) sub-LSPs. A loosely routed P2MP-TE S2L sub-LSP is defined as one whose path does not contain the full explicit route identifying each node along the path to the egress node at the time of its signaling by the ingress node. Such an S2L sub-LSP is signaled with no Explicit Route Object (ERO) [RFC3209],orwith an ERO that contains at least oneloose next-hop,"loose next hop", or with an ERO that contains an abstract nodewhichthat identifies more than one node. This is often the case with inter-domain P2MP-TE LSPs where a Path Computation Element (PCE) is not used [RFC5440]. As per [RFC4875], an ingress node mayre-optimizereoptimize the entire P2MP-TE LSP tree by re-signaling all its S2Lsub-LSP(s)sub-LSPs using the Make-Before-Break (MBB)methodmethod, or it mayre-optimizereoptimize an individual S2Lsub- LSPsub-LSP or a set of S2Lsub-LSPs i.e.sub-LSPs, i.e., an individual destination or a set of destinations, both using theSub-Group-Based Re-optimizationSub-Group-based reoptimization method. [RFC4736] defines an RSVP signaling procedure forre-optimizingreoptimizing the path(s) of loosely routed Point-to-Point (P2P) TE LSP(s).ThoseThe mechanisms listed in [RFC4736] include a method for the ingress node to trigger a new path re-evaluation request and a method for themid-pointmidpoint node tonotifysend a notification regarding the availability of a preferred path. This document discusses the application of those mechanisms to there-optimizationreoptimization of loosely routed P2MP-TE LSPs, identifies issues in doingsoso, and defines procedures to address them. Forre-optimizingreoptimizing a group of S2L sub-LSPs in a tree using theSub- Group-Based Re-optimizationSub-Group-based reoptimization method, an S2L sub-LSP descriptor list can be used to signal one or more S2L sub-LSPs in an RSVP message. This RSVP message may need to be semantically fragmented when a large number of S2L sub-LSPs are added to the descriptor list. This document defines the notion of a fragment identifier to help recipient nodes unambiguously reconstruct the fragmented S2L sub-LSP descriptor list. 2. Conventions Used in This Document 2.1. Key Word Definitions The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119]. 2.2. Abbreviations ABR: Area Border Router.AS: Autonomous System.ERO: Explicit Route Object. LSP: Label Switched Path. LSR: Label Switching Router. RRO: Record Route Object. S2L sub-LSP: Source-to-leafsub Label Switched Path.sub-LSP. TE LSP: Traffic EngineeringLabel Switched Path. TE LSP ingress: Head-end/sourceLSP. 2.3. Terminology This document defines the following terms: o Ingress node: Head-end / source node of the TE LSP.TE LSP egress: Tail-end/destinationo Egress node: Tail-end / destination node of the TE LSP.2.3. Terminology The readerIt is assumedto bethat the reader is also familiar with the terminology in [RFC4736] and [RFC4875]. 3. Overview [RFC4736] defines RSVP signaling extensions forre-optimizingreoptimizing loosely routed P2P TE LSPs as follows: o Amid-pointmidpoint LSR that expands loosenext-hop(s)next hop(s) sends a solicited or unsolicited PathErr withtheNotify error code 25 (as defined in[RFC3209])[RFC3209]), with sub-code 6 to indicate "Preferable Path Exists" to the ingress node. o An ingress node triggers a path re-evaluation request at allmid-point LSR(s)midpoint LSRs thatexpandsexpand loosenext-hop(s)next hop(s) by setting the "Path Re-evaluation Request" flag (0x20) in the SESSION_ATTRIBUTESObjectobject in the Path message. o The ingressnodenode, upon receiving this PathErr with the Notify error codeeither(either solicited orunsolicitedunsolicited), initiatesre-optimizationthe reoptimization of theLSPLSP, using the MBB method with a different LSP-ID. The following sections discuss the issues that may arise when applying the mechanisms defined in [RFC4736] forre-optimizingreoptimizing loosely routed P2MP-TE LSPs. 3.1. Loosely Routed Inter-domain P2MP-TE LSP Tree An example of a loosely routed inter-domain P2MP-TE LSP tree is shown in Figure 1. In this example, the P2MP-TE LSP tree consists of3three S2L sub-LSPs, to destinations(i.e.(i.e., leafs) R10,R11R11, and R12 from the ingress node(i.e.(i.e., source) R1. Nodes R2 and R5 are branchnodesnodes, and nodes ABR3, ABR4, ABR7,ABR8ABR8, and ABR9 arearea border routers.ABRs. For the S2L sub-LSP to destination R10, nodes ABR3,ABR7ABR7, and R10 are defined as loosenext-hops.next hops. For the S2L sub-LSP to destination R11, nodes ABR3,ABR8ABR8, and R11 are defined as loosenext-hops.next hops. For the S2L sub-LSP to destination R12, nodes ABR4,ABR9ABR9, and R12 are defined as loosenext-hops.next hops. <--area1--><--area0--><-area2-> ABR7---R10 / / ABR3---R5 / \ / \ R1---R2 ABR8---R11 \ \ ABR4---R6 \ \ ABR9---R12 Figure 1:AnExample of Loosely Routed Inter-domain P2MP-TE LSP Tree 3.2. Existing MechanismForfor Tree-Based P2MP-TE LSPRe-optimization MechanismsReoptimization The mechanisms defined in [RFC4736] can be easily applied to trigger there-optimizationreoptimization of an individual S2L sub-LSP or a group of S2Lsub-LSP(s).sub-LSPs. However, to applythese [RFC4736]those mechanisms for triggering there-optimizationreoptimization of a P2MP-TE LSP tree, an ingress node needs to send path re-evaluation requests on all (typically100s of)hundreds) of the S2Lsub-LSPssub-LSPs, and themid-pointmidpoint LSR needs to send PathErrs with the Notify error code for all S2L sub-LSPs. Such mechanisms may lead to the following issues: o Amid-pointmidpoint LSR that expands loosenext-hop(s)next hop(s) may have to accumulate the received path re-evaluation request(s) for all S2L sub-LSPs(e.g.(e.g., by using a wait timer) and interpret them as are-optimizationreoptimization request for the whole P2MP-TE LSP tree. Otherwise, amid-pointmidpoint LSR may prematurelynotifysend a "Preferable Path Exists" notification for one S2L sub-LSP or asub-setsubset of S2L sub-LSPs. o Similarly, the ingress node may have to heuristically determine when to perform P2MP-TE LSP treere-optimizationreoptimization and when to perform S2L sub-LSPre-optimization.reoptimization. For example, an implementation may choose to delayre-optimizationreoptimization long enough to allow allPathErr(s)PathErrs to be received. Such timer-based procedures may produce undesired results. o The ingress node that receives (un)solicited PathErr(s) with the Notify error code for one or more individual S2Lsub-LSP(s),sub-LSPs may prematurely startre-optimizingreoptimizing thesub-setsubset of S2L sub-LSPs. However, as mentioned in[RFC4875][RFC4875], Section 14.2, suchsub-group based re- optimizationa Sub-Group-based reoptimization procedure may result in data duplication that can be avoided if the entire P2MP-TE LSP tree isre-optimizedreoptimized using theMake-Before-BreakMBB method with a different LSP-ID, especially if the ingress node eventually receives PathErrs with the Notify error code for all S2L sub-LSPs of the P2MP-TE LSP tree. In order to addressabove mentionedthe above-mentioned issues and to alignre-optimizationthe reoptimization of P2MP-TELSPLSPs with P2PLSPLSPs [RFC4736],there is a need fora mechanism is needed to triggerre-optimizationthe reoptimization of the LSP tree by re-signaling all S2L sub-LSPs with a different LSP-ID. To meet this requirement, this document defines RSVP-TE signaling extensions for the ingress node to trigger the re-evaluation of the P2MP LSP tree on every hop that has anext-hopnext hop defined as a loose or abstract hop for one or more S2L sub-LSPpath,paths, and amid-pointmidpoint LSR to signal to the ingress node that a preferable LSP tree exists (compared to the current path) or that the whole P2MP-TE LSP must bere-optimizedreoptimized (because of maintenance required on the TE LSP path) (see Section 4.1). 3.3. Existing MechanismForfor Sub-Group-Based P2MP-TE LSPRe-optimizationReoptimization Applying the procedures discussed inRFC4736[RFC4736] in conjunction with theSub-Group-Based Re-OptimizationSub-Group-based reoptimization procedures ([RFC4875], Section 14.2), an ingress node MAY trigger path re-evaluation requests for a set of S2L sub-LSPs in a single Path message using an S2L sub-LSP descriptor list. Similarly, amid-pointmidpoint LSR may send a PathErr withtheNotify error code 25 and sub-code 6 ("Preferable Path Exists") containing a list of S2L sub-LSPs transiting through the LSR using an S2L sub-LSP descriptor list to notify the ingress node. This method can be used forre-optimizingreoptimizing a sub-group of S2L sub-LSPs within an LSP tree using the same LSP-ID. This method can alleviate thescalescaling issue associated with sending RSVP messages for individual S2L sub-LSPs. However, this procedure can lead to the following issues when used tore-optimizereoptimize the LSP tree: o A Path message that is intended to carry the path re-evaluation request as defined in [RFC4736] with a full list of S2L sub-LSPs in an S2Lsub-LSPssub-LSP descriptor list will be decomposed at branching LSRs, and only a subset of the S2L sub-LSPs that are routed over the samenext-hopnext hop will be added in the descriptor list of the Path message propagated to downstreammid-pointmidpoint LSRs. Consequently, when a preferable path exists at suchmid-pointmidpoint LSRs, the PathErr with the Notify error code can only include thesub-setsubset of S2L sub-LSPs traversing the LSR. In this case, at the ingress node there is no way to distinguish which mode ofre-optimizationreoptimization to invoke,i.e. sub-group based re-optimizationi.e., Sub-Group-based reoptimization using the same LSP-ID ortree based re-optimizationtree-based reoptimization using a different LSP-ID. o An LSR may semantically fragment a large RSVP message (when a combined message may not be large enough to fit all S2L sub-LSPs). In this case, the ingress node may receive multiple PathErrs withsub-setssubsets of S2L sub-LSPs in each (due to either the combined Path message getting fragmented or the combined PathErr message getting fragmented) and would require additional logic to determine how tore-optimizereoptimize the LSP tree (for example, waiting for some time to aggregate all possible PathErr messages before taking an action). When fragmented, RSVP messages may arrive out of order, and the receiver has no way of knowing the beginning and end of the S2L sub-LSP list. In order to address theabove mentionedabove-mentioned issues caused byRSVP messagesemanticfragmentation,fragmentation of an RSVP message, this document defines a new fragment identifier object for the S2L sub-LSP descriptor list when combining a large number of S2L sub-LSPs in an RSVP message (see Section 4.2). 4. Signaling ExtensionsForfor Loosely Routed P2MP-TE LSPRe-optimizationReoptimization 4.1. Tree-BasedRe-optimizationReoptimization To evaluate a P2MP-TE LSP tree onmid-pointmidpoint LSRs that expand loosenext-hop(s),next hop(s), an ingress node MAY send a Path message with the "P2MP-TE Tree Re-evaluationRequest (value TBA1)"Request" flag set (bit number 14 in the Attribute Flags TLV) as defined in this document. The ingress node selects one of the S2L sub-LSPs of the P2MP-TE LSP tree transiting amid-pointmidpoint LSR to trigger the re-evaluation request. The ingress node MAY send a re-evaluation request to each border LSR on the path of the LSP tree. Amid-pointmidpoint LSR that expands loosenext-hop(s)next hop(s) for one or more S2L sub-LSPpath(s)paths does the following upon receiving a Path message with the "P2MP-TE Tree Re-evaluation Request" flag set: o Themid-pointmidpoint LSR MUST check for a preferable P2MP-TE LSP tree by re-evaluating all S2Lsub-LSP(s)sub-LSPs that are expanded paths of the loosenext-hopsnext hops of the P2MP-TE LSP. o If a preferable P2MP-TE LSP tree is found, themid-pointmidpoint LSR MUST send to the ingress node an RSVP PathErr withtheNotify error code 25defined in[RFC3209] and sub-code"Preferable13 ("Preferable P2MP-TE TreeExists (value TBA2)"Exists)" as defined in thisdocument to the ingress node.document. Themid- pointmidpoint LSR, in turn, SHOULD NOT propagate the "P2MP-TE TreeRe- evaluationRe-evaluation Request" flag in the subsequent RSVP Path messages sent downstream for the re-evaluated P2MP-TE LSP. o If no preferable tree for P2MP-TELSPLSPs can be found, themid-pointmidpoint LSR that expands loosenext-hop(s)next hop(s) for one or more S2L sub-LSPpath(s)paths MUST propagate the request downstream by setting the "P2MP-TE Tree Re-evaluation Request" flag in the LSP_ATTRIBUTESObjectobject of the RSVP Path message. Amid-pointmidpoint LSR MAY send an unsolicited PathErr with the Notify error code andsub-codethe "Preferable P2MP-TE Tree Exists" sub-code to the ingress node to notify the ingress node of a preferred P2MP-TE LSP tree when it determines that it exists. In this case, themid-pointmidpoint LSR that expands loosenext-next hop(s) for one or more S2L sub-LSPpath(s)paths selects one of the S2Lsub-LSP(s)sub-LSPs of the P2MP-TE LSP tree to send this PathErr message to the ingress node. Themid-pointmidpoint LSR SHOULD consider how frequently it chooses to send such aPathErr -PathErr, consideringboththat both (1) a PathErr may be lostonduring its transit to the ingress node andthat(2) the ingress node may choose not tore-optimizereoptimize the LSP when such a PathErr is received. The sending of an RSVP PathErr with the Notify error code and the "Preferable P2MP-TE Tree Exists" sub-code to the ingress node notifies the ingress node of the existence of a preferable P2MP-TE LSPtreetree, and upon receiving this PathErr, the ingress node SHOULD triggerre-optimizationthe reoptimization of theLSPLSP, using the MBB method with a different LSP-ID. 4.2. Sub-Group-BasedRe-optimizationReoptimization Using Fragment Identifier It might be preferable, as per [RFC4875], tore-optimizereoptimize the entire P2MP-TE LSP by re-signaling all of its S2Lsub-LSP(s)sub-LSPs (Section14.1, "Make-before-Break")14.1 ("Make-before-Break") in [RFC4875]) or tore-optimizereoptimize an individual S2L sub-LSP or a group of S2Lsub-LSP(s) i.e.sub-LSPs, i.e., an individual destination or a group ofdestination(s)destinations (Section 14.2"Sub-Group-Based Re-Optimization"("Sub-Group-Based Re-Optimization") in [RFC4875]), both using the same LSP-ID. For loosely routed S2L sub-LSPs, this can be achieved by using the procedures defined in [RFC4736] tore-optimizereoptimize one or more S2Lsub-LSP(s)sub-LSPs of the P2MP-TE LSP. An ingress node may trigger path re-evaluation requests using the procedures defined in [RFC4736] for a set of S2L sub-LSPs by combining multiple Path messages using an S2L sub-LSP descriptor list [RFC4875]. An S2L sub-LSP descriptor list is created using a series of S2L_SUB_LSPObjectsobjects as defined in [RFC4875]. Similarly, amid- pointmidpoint LSR may send a PathErr withtheNotify error code(value 25)25 and"Preferablesub-code 6 ("Preferable PathExists" (sub-code 6)Exists") containing a list of S2L sub-LSPs transiting through the LSR using an S2L sub-LSP descriptor list to notify the ingress node of preferable paths available. The S2L_SUB_LSP_FRAG object defined in this document is optional, with the following exceptions: o As per[RFC4875] (Section 5.2.3, "Transit[RFC4875], Section 5.2.3 ("Transit Fragmentation of Path State Information"), when a Path message is not large enough to fit all S2L sub-LSPs in the descriptor list, an LSR may semantically fragment the message. In this case, the LSR MUST add the S2L_SUB_LSP_FRAGObjectobject defined in this document for each fragment in the S2L sub-LSP descriptor to be able to rebuild the list from the received fragments that may arrive out of order.The S2L_SUB_LSP_FRAG Object defined in this document is optional. However, a nodeo In any other situation where an RSVP message needs to be fragmented, an LSR MUST add the S2L_SUB_LSP_FRAGObjectobject for each fragment in the S2L sub-LSPdescriptor when the RSVP message needs to be fragmented.descriptor. Amid-pointmidpoint LSR SHOULD wait to accumulate all S2L sub-LSPs before attempting to re-evaluate a preferable path when a Path message for "Path Re-evaluation Request" is received with the S2L_SUB_LSP_FRAGObject.object. If amid-pointmidpoint LSR does not receive all fragments of the Path message (for example, when fragments are lost) within a configurable time interval, it SHOULD trigger the re-evaluation of all S2L sub-LSPs of the P2MP-TE LSP transiting on the node. Amid-pointmidpoint LSR MUST receive at least one fragment of the Path message to trigger thisbehaviour.behavior. An ingress node SHOULD wait to accumulate all S2L sub-LSPs before attempting to triggerre-optimizationreoptimization when a PathErr with the Notify error code and the "Preferable Path Exists" sub-code is received withaan S2L_SUB_LSP_FRAGObject.object. If an ingress node does not receive all fragments of the PathErr message (for example, when fragments are lost) within a configurable time interval, it SHOULD triggerre- optimizationthe reoptimization of all S2L sub-LSPs of the P2MP-TE LSP transiting on themid-pointmidpoint node that had sent the PathErr message. An ingress node MUST receive at least one fragment of the PathErr message to trigger thisbehaviour.behavior. The S2L_SUB_LSP_FRAGObjectobject defined in this document has a wider applicability in addition to the P2MP-TE LSPre-optimization.reoptimization. It can also be used (in Path and Resv messages) tosetupset up a new P2MP-TELSP,LSP and to send other PathErr messages as well as Path Tear and Resv Tear messages for a set of S2L sub-LSPs. This is outside the scope of this document. 5. Message and Object Definitions 5.1.P2MP-TE"P2MP-TE Tree Re-evaluationRequestRequest" Flag In order to trigger a tree re-evaluation request, a new flagis definedinAttributesthe Attribute Flags TLV of the LSP_ATTRIBUTESObjectobject [RFC5420]as follows:is defined by this document: Bit Number(TBA1, to be assigned by IANA): P2MP-TE14: "P2MP-TE Tree Re-evaluationRequestRequest" flag The "P2MP-TE Tree Re-evaluation Request" flag is meaningful in a Path message of a P2MP-TE S2L sub-LSP and is inserted by the ingress node using the message format defined in [RFC6510]. 5.2.Preferable"Preferable P2MP-TE TreeExistsExists" Path Error Sub-code In order to indicate to an ingress node that a preferable P2MP-TE LSP tree exists, the following new sub-code for PathErr messages with Notify error code 25 [RFC3209] isdefined:defined by this document: Sub-code(TBA2, to be assigned by IANA): Preferable13: "Preferable P2MP-TE TreeExistsExists" sub-code When a preferable path for a P2MP-TE LSP tree exists, themid-pointmidpoint LSR sends a solicited or unsolicited "Preferable P2MP-TE Tree Exists" sub-code with a PathErr message with Notify error code 25 to the ingress node of the P2MP-TE LSP. 5.3. Fragment IdentifierForfor S2Lsub-LSPSub-LSP Descriptor The S2L_SUB_LSPObjectobject [RFC4875] identifies a particular S2L sub-LSP belonging to the P2MP-TE LSP. An S2L sub-LSP descriptor list is created using a series of S2L_SUB_LSPObjectsobjects as defined in [RFC4875]. The RSVP message may need to be semantically fragmented [RFC4875] due to a large number of S2L sub-LSPs added in the descriptor list, and such fragments may be receivedourout of order. To be able to rebuild the fragmented S2L sub-LSP descriptor list correctly, the followingObjectobject is defined to identify thefragments.fragments: S2L_SUB_LSP_FRAG:Class-Num TBA3 by IANA +---------------+---------------+---------------+---------------+Class Number 204 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Length (8 bytes) |Class-Num TBA3|Class Num 204 | C-Type 1 |+---------------+---------------+---------------+---------------++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Fragment ID | FragmentsTot |Tot.| FragmentNumNum. |+---------------+---------------+---------------+---------------++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fragment ID: 16-bit integer in the range of 1 to 65535. This value is incremented for each new RSVP message that needs to be semantically fragmented. The fragment ID is reset to 1 when it reaches the maximum value of 65535. The scope of the fragment ID is limited to the RSVP message type(e.g.(e.g., Path) carrying the fragment. In other words, fragment IDs do not have any correlation between different RSVP message types(e.g.(e.g., Path and PathErr). The receiver does not check to ensureifthat the consecutive new RSVP messages(e.g.(e.g., Path messages) are received with fragment IDs incremented by 1. Fragments Total: 8-bit integer in the range of 1 to 255. This value indicates the number of fragments sent for the given RSVP message. This value MUST be the same in all fragmented RSVP messages with a commonFragmentfragment ID. Fragment Number: 8-bit integer in the range of 1 to 255. This value indicates the position of this fragment in the given RSVP message. The format of an S2L sub-LSP descriptor message is as follows: <S2L sub-LSP descriptor> ::= [ <S2L_SUB_LSP_FRAG> ] <S2L_SUB_LSP> [ <P2MP SECONDARY_EXPLICIT_ROUTE> ] The S2L_SUB_LSP_FRAGObjectobject is added before adding the S2L_SUB_LSPObjectobject in the semantically fragmented RSVP message. 6. Compatibility The LSP_ATTRIBUTESObjectobject has been defined in [RFC5420] and its message formats in [RFC6510] with class numbers in the form 11bbbbbb, which ensures compatibility with non-supporting nodes. Per [RFC2205], nodes not supporting this extension will ignore the new flag defined for thisObjectobject in this documentbutand will forward it without modification. The S2L_SUB_LSP_FRAGObjectobject has been defined with class numbers in the form 11bbbbbb, which ensures compatibility with non-supporting nodes. Per [RFC2205], nodes not supporting thisObjectobject will ignore theObject butobject and will forward it without modification. 7. IANA Considerations IANAis requested to administer assignment of new values for namespace defined in this document and summarized in this section.has performed the actions described below. 7.1.P2MP-TE"P2MP-TE Tree Re-evaluationRequestRequest" Flag IANA maintainsa name space for RSVP-TE TE parametersthe "Resource Reservation Protocol-Traffic Engineering (RSVP-TE) Parameters" registry (seehttp://www.iana.org/assignments/rsvp-te-parameters). From the registries in this name space "Attribute Flags", allocation<http://www.iana.org/assignments/rsvp-te-parameters>). Per Section 5.1 of this document, IANA has registered a new flagis requested (Section 5.1). The followingin the "Attribute Flags" registry. This new flag is defined for theAttributesAttribute Flags TLV in the LSP_ATTRIBUTESObjectobject [RFC5420].The numeric value is to be assigned by IANA. o P2MP-TE Tree Re-evaluation Request Flag: +--------+---------------+---------+---------+---------+-----------++-----+---------------+----------+----------+-----+-----+-----------+ | BitNo|Attribute | CarriedName |CarriedAttribute| Attribute| RRO |CarriedERO | Reference | | No |Flag Name|in PathFlags |in ResvFlags |in RRO| | | | | | Path | Resv | |or ERO| |+--------+---------------+---------+---------+---------+-----------++-----+---------------+----------+----------+-----+-----+-----------+ | |TBA1 by|P2MP-TE Tree | Yes | No | No | No | This | |IANA14 | Re-evaluation | | | | | document |+--------+---------------+---------+---------+---------+-----------+| | Request | | | | | | +-----+---------------+----------+----------+-----+-----+-----------+ 7.2.Preferable"Preferable P2MP-TE TreeExistsExists" Path Error Sub-code IANA maintainsa name space for RSVP protocol parametersthe "Resource Reservation Protocol (RSVP) Parameters" registry (seehttp://www.iana.org/assignments/rsvp-parameters). From<http://www.iana.org/assignments/rsvp-parameters>). Per Section 5.2 of this document, IANA has registered a new error code in thesub-registry"Sub-Codes - 25 Notify Error"in registrysub-registry of the "Error Codes and Globally-Defined Error ValueSub-Codes", allocation of a new error code is requested (Section 5.2).Sub-Codes" registry. As defined in [RFC3209],the Error Codeerror code 25 in theERROR SPEC ObjectERROR_SPEC object corresponds to a PathErr with the Notify error. This document adds a new "Preferable P2MP-TE Tree Exists" sub-code for this PathErr as follows:o Preferable P2MP-TE Tree Exists sub-code:+----------+--------------------+---------+---------+-----------+ |Sub-codeValue |Sub-codeDescription | PathErr | PathErr | Reference | |value|Description| Code | Name | | +----------+--------------------+---------+---------+-----------+ |TBA2 by13 | Preferable P2MP-TE | 25 | Notify | This | |IANA| Tree Exists | | Error | document | +----------+--------------------+---------+---------+-----------+ 7.3. Fragment IdentifierForfor S2Lsub-LSPSub-LSP Descriptor IANA maintainsa name space for RSVP protocol parametersthe "Resource Reservation Protocol (RSVP) Parameters" registry (seehttp://www.iana.org/assignments/rsvp-parameters). From<http://www.iana.org/assignments/rsvp-parameters>). Per Section 5.3 of this document, IANA has registered a new class number in theregistry"Class Names, Class Numbers, and ClassTypes", allocation of new Class-Num is requested (Section 5.3). oTypes" registry. +-----------------+---------------------------+-----------------+ | Class Number | Class Name | Reference | +-----------------+---------------------------+-----------------+ | 204 | S2L_SUB_LSP_FRAGObject:| This document | +-----------------+---------------------------+-----------------+ IANA has also created the "Class Types or C-Types - 204 S2L_SUB_LSP_FRAG" registry and populated it as follows: +-----------------+---------------------------+-----------------+ |Class-Num valueValue | Description | Reference | +-----------------+---------------------------+-----------------+ |TBA3 by IANA1 | S2L_SUB_LSP_FRAG | This document | +-----------------+---------------------------+-----------------+ 8. Security Considerations This document defines RSVP-TE signaling extensions to allow an ingress node of a P2MP-TE LSP to request the re-evaluation of the LSP tree downstream of anode,node andforto allow amid-pointmidpoint LSR to notify the ingress node of the existence of a preferable tree by sending aPathErr.PathErr message. As per [RFC4736], in the case of a P2MP-TE LSP S2L sub-LSP spanning multiple domains, it may be desirable for amid-pointmidpoint LSR to modify the RSVP PathErr messagedefined in this documentto preserve confidentiality across domains. This document also defines a fragment identifier for the S2L sub-LSP descriptor when combining a large number of S2L sub-LSPs in an RSVP message and the message needs to be semantically fragmented. The introduction of the fragment identifier, by itself, introduces no additional information to signaling. For a general discussion on security issues related to MPLS andGMPLS related security issues,GMPLS, see the MPLS/GMPLS security framework [RFC5920]. 9. References 9.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March1997.1997, <http://www.rfc-editor.org/info/rfc2119>. [RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and S. Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1 Functional Specification", RFC 2205, DOI 10.17487/RFC2205, September1997.1997, <http://www.rfc-editor.org/info/rfc2205>. [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP Tunnels", RFC 3209, DOI 10.17487/RFC3209, December2001.2001, <http://www.rfc-editor.org/info/rfc3209>. [RFC4736] Vasseur, JP., Ed., Ikejiri,Y.Y., and R. Zhang,R,"Reoptimization of Multiprotocol Label Switching (MPLS) Traffic Engineering (TE) Loosely Routed Label Switched Path (LSP)", RFC 4736, DOI 10.17487/RFC4736, November2006.2006, <http://www.rfc-editor.org/info/rfc4736>. [RFC4875] Aggarwal, R., Ed., Papadimitriou, D., Ed., and S. Yasukawa, Ed., "Extensions to Resource Reservation Protocol - Traffic Engineering (RSVP-TE) for Point-to-Multipoint TE Label Switched Paths (LSPs)", RFC 4875, DOI 10.17487/RFC4875, May2007.2007, <http://www.rfc-editor.org/info/rfc4875>. [RFC5420] Farrel, A., Ed., Papadimitriou, D., Vasseur, JP., andAyyangar, A.,A. Ayyangarps, "Encoding of Attributes for MPLS LSP Establishment Using Resource Reservation Protocol Traffic Engineering (RSVP-TE)", RFC 5420, DOI 10.17487/RFC5420, February2009.2009, <http://www.rfc-editor.org/info/rfc5420>. 9.2. Informative References [RFC3473] Berger, L., Ed., "Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions", RFC 3473, DOI 10.17487/RFC3473, January2003.2003, <http://www.rfc-editor.org/info/rfc3473>. [RFC5440] Vasseur, JP., Ed., and JL. Le Roux, Ed., "Path Computation Element (PCE) Communication Protocol (PCEP)", RFC 5440, DOI 10.17487/RFC5440, March2009.2009, <http://www.rfc-editor.org/info/rfc5440>. [RFC5920] Fang, L., Ed., "Security Framework for MPLS and GMPLS Networks", RFC 5920, DOI 10.17487/RFC5920, July2010.2010, <http://www.rfc-editor.org/info/rfc5920>. [RFC6510] Berger, L. and G. Swallow, "Resource Reservation Protocol (RSVP) Message Formats for Label Switched Path (LSP) Attributes Objects", RFC 6510, DOI 10.17487/RFC6510, February2012.2012, <http://www.rfc-editor.org/info/rfc6510>. Acknowledgments The authors would like to thank Loa Andersson, Sriganesh Kini, Curtis Villamizar, Dimitri Papadimitriou, Nobo Akiya, Vishnu PavanBeeramBeeram, and Joel M. Halpern for reviewing this document and providing many useful comments and suggestions. The authors would also like to thank Ling Zeng with Cisco Systems for implementing the mechanisms defined in this document. A special thanks to Adrian Farrel for his thorough review of this document.Author'sAuthors' Addresses Tarek Saad (editor) CiscoSystems EMail:Systems, Inc. Email: tsaad@cisco.com Rakesh Gandhi (editor) CiscoSystems EMail:Systems, Inc. Email: rgandhi@cisco.com Zafar Ali CiscoSystems EMail:Systems, Inc. Email: zali@cisco.com Robert H. Venator Defense Information Systems AgencyEMail:Email: robert.h.venator.civ@mail.mil Yuji Kamite NTT Communications CorporationEMail:Email: y.kamite@ntt.com