Path Computation Element (PCE) Protocol Extensions for Stateful PCE Usage in GMPLS-controlled Networks
The information below is for an old version of the document.
This is an older version of an Internet-Draft whose latest revision state is "Active".
|Authors||Young Lee , Fatai Zhang , Ramon Casellas , Oscar Gonzalez de Dios , Zafar Ali|
|RFC stream||Internet Engineering Task Force (IETF)|
RTGDIR Early review (of -19) Has Nits
|Additional resources||Mailing list discussion|
|Stream||WG state||WG Document|
|IESG||IESG state||I-D Exists|
|Send notices to||(None)|
PCE Working Group Young Lee (Editor) Internet-Draft Fatai Zhang Intended status: Standards Track Huawei Ramon Casellas CTTC Oscar Gonzalez de Dios Telefonica I+D Zafar Ali Cisco Systems March 7, 2019 Path Computation Element (PCE) Protocol Extensions for Stateful PCE Usage in GMPLS-controlled Networks draft-ietf-pce-pcep-stateful-pce-gmpls-10 Abstract The Path Computation Element (PCE) facilitates Traffic Engineering (TE) based path calculation in large, multi-domain, multi-region, or multi-layer networks. The PCE communication Protocol (PCEP) has been extended to support stateful PCE functions where the PCE retains information about the paths already present in the network, but those extensions are technology-agnostic. This memo provides extensions required for PCEP so as to enable the usage of a stateful PCE capability in GMPLS-controlled networks. Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." Zhang et al Expires September 2019 [Page 1] Internet-Draft Stateful PCEP for GMPLS March 2019 The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on September 7, 2019. Copyright Notice Copyright (c) 2019 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 Table of Contents.................................................2 1. Introduction...................................................3 2. Conventions used in this document..............................3 3. Context of Stateful PCE and PCEP for GMPLS.....................4 4. Main Requirements..............................................4 5. PCEP Extensions................................................5 5.1. LSP Update in GMPLS-controlled Networks...................5 5.2. LSP Synchronization in GMPLS-controlled Networks..........5 5.3. Modification of Existing PCEP Messages and Procedures.....7 5.3.1. Modification for LSP Re-optimization.................7 5.3.2. Modification for Route Exclusion.....................8 5.3.3. Modification for SRP Object to indicate Bi-directional LSP.........................................................9 5.4. Object Encoding...........................................9 6. IANA Considerations............................................9 6.1. New PCEP Error Codes......................................9 6.2. New Subobject for the Exclude Route Object...............10 6.3. New "B" Flag in the SRP Object...........................10 7. Manageability Considerations..................................10 7.1. Requirements on Other Protocols and Functional Components10 Lee et al. Expires September 2019 [Page 2] Internet-Draft Stateful PCEP for GMPLS March 2019 8. Security Considerations.......................................11 9. Acknowledgement...............................................11 10. References...................................................11 10.1. Normative References....................................11 10.2. Informative References..................................12 11. Contributors' Address........................................12 Authors' Addresses...............................................13 1. Introduction [RFC4655] presents the architecture of a Path Computation Element (PCE)-based model for computing Multiprotocol Label Switching (MPLS) and Generalized MPLS (GMPLS) Traffic Engineering Label Switched Paths (TE LSPs). To perform such a constrained computation, a PCE stores the network topology (i.e., TE links and nodes) and resource information (i.e., TE attributes) in its TE Database (TED). Such a PCE is usually referred as a stateless PCE. To request path computation services to a PCE, [RFC5440] defines the PCE communication Protocol (PCEP) for interaction between a Path Computation Client (PCC) and a PCE, or between two PCEs. PCEP as specified in [RFC 5440] mainly focuses on MPLS networks and the PCEP extensions needed for GMPLS-controlled networks are provided in [PCEP-GMPLS]. Stateful PCEs are shown to be helpful in many application scenarios, in both MPLS and GMPLS networks, as illustrated in [RFC8051]. Further discussion of concept of a stateful PCE can be found in [RFC7399]. In order for these applications to able to exploit the capability of stateful PCEs, extensions to PCEP are required. [RFC8051] describes how a stateful PCE can be applicable to solve various problems for MPLS-TE and GMPLS networks and the benefits it brings to such deployments. [RFC8231] provides the fundamental extensions needed for stateful PCE to support general functionality, but leaves out the specification for technology-specific objects/TLVs. This document focuses on the extensions that are necessary in order for the deployment of stateful PCEs in GMPLS-controlled networks. 2. Conventions used in this document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in Lee et al. Expires September 2019 [Page 3] Internet-Draft Stateful PCEP for GMPLS March 2019 BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here. 3. Context of Stateful PCE and PCEP for GMPLS This document is built on the basis of Stateful PCE [RFC8231] and PCEP for GMPLS [PCEP-GMPLS]. There are two types of LSP operation for Stateful PCE. For Active Stateful PCE, PCUpd message is sent from PCE to PCC to update the LSP state for the LSP delegated to PCE. Any changes to the delegated LSPs generate a PCRpt message by the PCC to PCE to convey the changes of the LSP. Any modifications to the Objects/TLVs that are identified in this document to support GMPLS technology- specific attributes will be carried in the PCRpt and PCUpd messages. For Passive Stateful PCEs, PCReq/PCRep messages are used to convey path computation instructions. GMPLS-technology specific Objects and TLVs are defined in [PCEP-GMPLS], so this document just points at that work and only adds the stateful PCE aspects where applicable. Passive Stateful PCE makes use of PCRpt messages when reporting LSP State changes sent by PCC to PCEs. Any modifications to the Objects/TLVs that are identified in this document to support GMPLS technology-specific attributes will be carried in the PCRpt message. [PCEP-GMPLS] defines GMPLS-technology specific Objects/TLVs and this document makes use of these Objects/TLVs without modifications where applicable. Some of these Objects/TLVs may require modifications to incorporate stateful PCE element where applicable. 4. Main Requirements This section notes the main functional requirements for PCEP extensions to support stateful PCE for use in GMPLS-controlled networks, based on the description in [RFC8051]. Many requirements are common across a variety of network types (e.g., MPLS-TE networks and GMPLS networks) and the protocol extensions to meet the requirements are already described in [RFC8231]. This document does not repeat the description of those protocol extensions. This document presents protocol extensions for a set of requirements which are specific to the use of a stateful PCE in a GMPLS-controlled network. The basic requirements are as follows: o Advertisement of the stateful PCE capability. This generic requirement is covered in Section 5.4. of [RFC8231]. This Lee et al. Expires September 2019 [Page 4] Internet-Draft Stateful PCEP for GMPLS March 2019 document assumes that STATEFUL-PCE-CAPABILITY TLV can be used for GMPLS Stateful PCE capability and therefore does not provide any further extensions. o LSP delegation is already covered in Section 5.7. of [RFC8231]. Section 2.2. of this document does not provide any further extensions. o Active LSP update is covered in Section 6.2 of [RFC8231]. Section 4.1. of this document provides extension for its application in GMPLS-controlled networks. o LSP state synchronization and LSP state report. This is a generic requirement already covered in Section 5.6. of [RFC8231]. However, there are further extensions required specifically for GMPLS- controlled networks and discussed in Section 4.2. 5. PCEP Extensions 5.1. LSP Update in GMPLS-controlled Networks [RFC8231] defines the Path Computation LSP Update Request (PCUpd) message to enable to update the attributes of an LSP. However, that document does not define technology-specific parameters. A key element of the PCUpd message is the attribute-list construct defined in [RFC5440] and extended by many other PCEP specifications. For GMPLS purposes we note that the BANDWIDTH object used in the attribute-list is defined in [PCEP-GMPLS]. Furthermore, additional TLVs are defined for the LSPA object in [PCEP-GMPLS] and MAY be included to indicate technology-specific attributes. There are other technology-specific attributes that need to be conveyed in the <intended-attribute-list> of the <path> construct in the PCUpd message. Note that these path details in the PCUpd message are the same as the <attribute-list> of the PCRep message. See Section 4.2 for the details. 5.2. LSP Synchronization in GMPLS-controlled Networks PCCs need to report the attributes of LSPs to the PCE to enable stateful operation of a GMPLS network. This process is known as LSP state synchronization. The LSP attributes include bandwidth, associated route, and protection information etc., are stored by the PCE in the LSP database (LSP-DB). Note that, as described in [RFC8231], the LSP state synchronization covers both the bulk reporting of LSPs at initialization as well the reporting of new or modified LSP during normal operation. Incremental LSP-DB Lee et al. Expires September 2019 [Page 5] Internet-Draft Stateful PCEP for GMPLS March 2019 synchronization may be desired in a GMPLS-controlled network and it is specified in [RFC8232]. [RFC8231] describes mechanisms for LSP synchronization using the Path Computation State Report (PCRpt) message, but does not cover reporting of technology-specific attributes. As stated in [RFC8231], the <path> construct is further composed of a compulsory Explicit Route Object (ERO) and a compulsory attribute-list and an optional Record Route Object (RRO). In order to report LSP states in GMPLS networks, this specification allows the use within a PCRpt message both of technology- and GMPLS-specific attribute objects and TLVs defined in [PCEP-GMPLS] as follows: o Include Route Object (IRO)/ Exclude Route Object (XRO) Extensions to support the inclusion/exclusion of labels and label sub-objects for GMPLS. (See Section 2.6 and 2.7 in [PCEP- GMPLS]) o END-POINTS (Generalized END-POINTS Object Type. See Section 2.5 in [PCEP-GMPLS]) o BANDWIDTH (Generalized BANDWIDTH Object Type. See Section 2.3 in [PCEP-GMPLS]) o LSPA (PROTECTION ATTRIBUTE TLV, See Section 2.8 in [PCEP-GMPLS]. The END-POINTS object SHOULD be carried within the attribute-list to specify the endpoints pertaining to the reported LSP. The XRO object MAY be carried to specify the network resources that the reported LSP avoids and a PCE SHOULD consider avoid these network resources during the process of re-optimizing after this LSP is delegated to the PCE. To be more specific, the <attribute-list> is updated as follows using the notations of [RFC5511]: <attribute-list> ::= [<END-POINTS>] [<LSPA>] [<BANDWIDTH>] [<metric-list>] [<IRO>] [<XRO>] <metric-list>::= <METRIC>[<metric-list>] If the LSP being reported protects another LSP, the PROTECTION- ATTRIBUTE TLV [PCEP-GMPLS] MUST be included in the LSPA object to Lee et al. Expires September 2019 [Page 6] Internet-Draft Stateful PCEP for GMPLS March 2019 describe its attributes and restrictions. Moreover, if the status of the protecting LSP changes from non-operational to operational, the PCC SHOULD synchronize the state change of the LSPs to the stateful PCE using a PCRpt message. This use case arises, for example, when the protecting LSP becomes operational due to the failure of the primary LSP. 5.3. Modification of Existing PCEP Messages and Procedures One of the advantages mentioned in [RFC8051] is that the stateful nature of a PCE simplifies the information conveyed in PCEP messages, notably between PCC and PCE, since it is possible to refer to PCE managed state for active LSPs. To be more specific, with a stateful PCE, it is possible to refer to an LSP with a unique identifier in the scope of the PCC-PCE session and thus use such identifier to refer to that LSP. Note this is also applicable to packet networks. 5.3.1. Modification for LSP Re-optimization The Request Parameters (RP) object on a Path Computation Request (PCReq) message carries the R bit. When set, this indicates that the PCC is requesting re-optimization of an existing LSP. Upon receiving such a PCReq, a stateful PCE SHOULD perform the re- optimization in the following cases: o The existing bandwidth and route information of the LSP to be re-optimized is provided in the PCReq message using the BANDWIDTH object and the ERO. o The existing bandwidth and route information is not supplied in the PCReq message, but can be found in the PCE's LSP-DB. In this case, the LSP MUST be identified using an LSP identifier carried in the PCReq message, and that fact requires that the LSP identifier was previously supplied either by the PCC in a PCRpt message or by the PCE in a PCRep message. [RFC8231] defines how this is achieved using a combination of the per-node LSP identifier (PLSP-ID) and the PCC's address. If no LSP state information is available to carry out re- optimization, the stateful PCE should report the error "LSP state information unavailable for the LSP re-optimization" (Error Type = TBD1, Error value= TBD2). Lee et al. Expires September 2019 [Page 7] Internet-Draft Stateful PCEP for GMPLS March 2019 5.3.2. Modification for Route Exclusion [RFC5521] defines a mechanism for a PCC to request or demand that specific nodes, links, or other network resources are excluded from paths computed by a PCE. A PCC may wish to request the computation of a path that avoids all link and nodes traversed by some other LSP. To this end this document defines a new sub-object for use with route exclusion defined in [RFC5521]. The LSP exclusion sub-object is as follows: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |X|Type (TBD3) | Length | Attributes | Flag | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | // Symbolic Path Name // | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ X bit and Attribute fields are defined in [RFC5521]. Type: Subobject Type for an LSP exclusion sub-object. Value of TBD3. To be assigned by IANA. Length: The Length contains the total length of the subobject in bytes, including the Type and Length fields. Flags: This field may be used to further specify the exclusion constraint with regard to the LSP. Currently, no values are defined. Symbolic Path Name: This is the identifier given to an LSP and is unique in the context of the PCC address as defined in [RFC8231]. Reserved: MUST be transmitted as zero and SHOULD be ignored on receipt. This sub-object is OPTIONAL in the exclude route object (XRO) and can be present multiple times. When a stateful PCE receives a PCReq message carrying this sub-object, it SHOULD search for the identified LSP in its LSP-DB and then exclude from the new path computation all resources used by the identified LSP. If the stateful PCE cannot recognize one or more of the received LSP identifiers, it should send an error message PCErr reporting "The LSP state information for route exclusion purpose cannot be found" Lee et al. Expires September 2019 [Page 8] Internet-Draft Stateful PCEP for GMPLS March 2019 (Error-type = TBD1, Error-value = TBD4). Optionally, it may provide with the unrecognized identifier information to the requesting PCC using the error reporting techniques described in [RFC5440]. 5.3.3. Modification for SRP Object to indicate Bi-directional LSP The format of the SRP object is defined in [RFC8231]. The object is used in PCUpd and PCInit messages for GMPLS. This document defines a new flag to be carried in the Flags field of the SRP object. This flag indicates a bidirectional co-routed LSP setup operation initiated by the PCE as follows: o B (Bidirectional LSP -- 1 bit): If set to 0, it indicates a request to create a uni-directional LSP. If set to 1, it indicates a request to create a bidirectional co-routed LSP. The bit position is TBD5 as assigned by IANA (see Section 5.3) 5.4. Object Encoding Note that, as is stated in Section 7 of [RFC8231], the P flag and the I flag of the PCEP objects used on PCUpd and PCRpt messages SHOULD be set to 0 on transmission and SHOULD be ignored on receipt since these flags are exclusively related to path computation requests. 6. IANA Considerations 6.1. New PCEP Error Codes IANA is requested to make the following allocation in the "PCEP- ERROR Object Error Types and Values" registry. Error Type Meaning Reference TBD1 LSP state information missing [This.I-D] Error-value TBD2: LSP state information unavailable [This.I-D] for the LSP re-optimization Error-value TBD4: LSP state information for route exclusion purpose cannot be found [This.I-D] Lee et al. Expires September 2019 [Page 9] Internet-Draft Stateful PCEP for GMPLS March 2019 6.2. New Subobject for the Exclude Route Object IANA maintains the "PCEP Parameters" registry containing a subregistry called "PCEP Objects". This registry has a subregistry for the XRO (Exclude Route Object) listing the sub-objects that can be carried in the XRO. IANA is requested to assign a further sub- object that can be carried in the XRO as follows: Value Description Reference ----------+------------------------------+------------- TBD3 LSP identifier sub-object [This.I-D] 6.3. New "B" Flag in the SRP Object IANA maintains a subregistry, named the "SRP Object Flag Field", within the "Path Computation Element Protocol (PCEP) Numbers" registry, to manage the Flag field of the SRP object. IANA is requested to make an assignment from this registry as follows: Bit Description Reference --- ---------------------------- ---------- TDB5 Bi-directional co-routed LSP [This.I-D] 7. Manageability Considerations The description and functionality specifications presented related to stateful PCEs should also comply with the manageability specifications covered in Section 8 of [RFC4655]. Furthermore, a further list of manageability issues presented in [RFC8231] should also be considered. Additional considerations are presented in the next section. 7.1. Requirements on Other Protocols and Functional Components When the detailed route information is included for LSP state synchronization (either at the initial stage or during LSP state report process), this requires the ingress node of an LSP carry the RRO object in order to enable the collection of such information. Lee et al. Expires September 2019 [Page 10] Internet-Draft Stateful PCEP for GMPLS March 2019 8. Security Considerations This draft provides additional extensions to PCEP so as to facilitate stateful PCE usage in GMPLS-controlled networks, on top of [RFC8231]. The PCEP extensions to support GMPLS-controlled networks should be considered under the same security as for MPLS networks, as noted in [RFC7025]. Therefore, the security considerations elaborated in [RFC5440] still apply to this draft. Furthermore, [RFC8231] provides a detailed analysis of the additional security issues incurred due to the new extensions and possible solutions needed to support for the new stateful PCE capabilities and they apply to this document as well. 9. Acknowledgement We would like to thank Adrian Farrel and Cyril Margaria for the useful comments and discussions. 10. References 10.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to indicate requirements levels", RFC 2119, March 1997. [RFC4655] Farrel, A., Vasseur, J.-P., and Ash, J., "A Path Computation Element (PCE)-Based Architecture", RFC 4655, August 2006. [RFC5440] Vasseur, J.-P., and Le Roux, JL., "Path Computation Element (PCE) Communication Protocol (PCEP)", RFC 5440, March 2009. [RFC8174] B. Leiba, "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", RFC 8174, May 2017. [RFC8231] Crabbe, E., Medved, J., Varga, R., Minei, I., "Path Computation Element Communication Protocol (PCEP) Extensions for Stateful PCE", RFC 8231, September 2017. [PCEP-GMPLS] Margaria, C., Gonzalez de Dios, O., Zhang, F., "PCEP extensions for GMPLS", draft-ietf-pce-gmpls-pcep- extensions, work in progress. Lee et al. Expires September 2019 [Page 11] Internet-Draft Stateful PCEP for GMPLS March 2019 10.2. Informative References [RFC5511] A. Farrel, "Routing Backus-Naur Form (RBNF): A Syntax Used to Form Encoding Rules in Various Routing Protocol Specifications", RFC 5511, April 2009. [RFC8051] Zhang, X., Minei, I., et al, "Applicability of Stateful Path Computation Element (PCE) ", RFC 8051, January 2017. [RFC8232] Crabbe, E., Minei, I., Medved, J., Varga, R., Zhang, X., and D. Dhody, "Optimizations of Label Switched Path State Synchronization Procedures for a Stateful PCE", RFC 8232, September 2017. 11. Contributors' Address Xian Zhang Huawei Technologies F3-5-B R&D Center, Huawei Base Bantian, Longgang District Shenzhen 518129 P.R.China Phone: +86-755-28972645 Email: email@example.com Dhruv Dhody Huawei Technology India Email: firstname.lastname@example.org Yi Lin Huawei Technologies F3-5-B R&D Center, Huawei Base Bantian, Longgang District Shenzhen 518129 P.R.China Phone: +86-755-28972914 Email: email@example.com Lee et al. Expires September 2019 [Page 12] Internet-Draft Stateful PCEP for GMPLS March 2019 Authors' Addresses Young Lee (Editor) Huawei 5340 Legacy Drive, Suite 170 Plano, TX 75023 US Phone: +1 469 278 5838 EMail: firstname.lastname@example.org Fatai Zhang Huawei F3-5-B R&D Center, Huawei Base Bantian, Longgang District P.R. China Phone: +86-755-28972912 Email: email@example.com Ramon Casellas CTTC Av. Carl Friedrich Gauss n7 Castelldefels, Barcelona 08860 Spain Phone: Email: firstname.lastname@example.org Oscar Gonzalez de Dios Telefonica Investigacion y Desarrollo Emilio Vargas 6 Madrid, 28045 Spain Phone: +34 913374013 Email: email@example.com Zafar Ali Cisco Systems Email: firstname.lastname@example.org Lee et al. Expires September 2019 [Page 13]