PCE Working Group C. Li Internet-Draft M. Chen Intended status: Standards Track Huawei Technologies Expires: September 9, 2019 W. Cheng China Mobile Z. Li J. Dong Huawei Technologies R. Gandhi Cisco Systems, Inc. March 08, 2019 PCEP Extension for Segment Routing (SR) Bidirectional Associated Paths draft-li-pce-sr-bidir-path-03 Abstract The Path Computation Element Communication Protocol (PCEP) provides mechanisms for Path Computation Elements (PCEs) to perform path computations in response to Path Computation Clients (PCCs) requests. The Stateful PCE extensions allow stateful control of Multiprotocol Label Switching (MPLS) Traffic Engineering (TE) Label Switched Paths (LSPs) using PCEP. Furthermore, PCEP can be used for computing paths in SR networks. This document defines PCEP extensions for grouping two reverse unidirectional SR Paths into an Associated Bidirectional SR path when using a Stateful PCE for both PCE-Initiated and PCC-Initiated LSPs as well as when using a Stateless PCE. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. 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." This Internet-Draft will expire on September 9, 2019. Li, et al. Expires September 9, 2019 [Page 1] Internet-Draft SR Bidirectional Association in PCEP March 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 (https://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 . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1. Requirements Language . . . . . . . . . . . . . . . . . . 4 3. PCEP Extension for Bidirectional SR Path . . . . . . . . . . 4 3.1. Double-sided Bidirectional SR Path Association Group Object . . . . . . . . . . . . . . . . . . . . . . . . . 5 4. Bidirectional Flag . . . . . . . . . . . . . . . . . . . . . 5 5. Procedures of Bidirectional Path Computation . . . . . . . . 6 5.1. PCE Initiated SR Paths . . . . . . . . . . . . . . . . . 6 5.2. PCC Initiated SR Paths . . . . . . . . . . . . . . . . . 7 5.3. Error Handling . . . . . . . . . . . . . . . . . . . . . 9 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 6.1. Association Type . . . . . . . . . . . . . . . . . . . . 10 6.2. PCEP Errors . . . . . . . . . . . . . . . . . . . . . . . 10 7. Security Considerations . . . . . . . . . . . . . . . . . . . 10 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 11 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 11 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 11 10.1. Normative References . . . . . . . . . . . . . . . . . . 11 10.2. Informative References . . . . . . . . . . . . . . . . . 13 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13 1. Introduction Segment routing (SR) [RFC8402] leverages the source routing and tunneling paradigms. SR supports to steer packets into an explicit forwarding path at the ingress node. [RFC5440] describes the Path Computation Element (PCE) Communication Protocol (PCEP). PCEP enables the communication between a Path Computation Client (PCC) and a PCE, or between PCE and PCE, for the Li, et al. Expires September 9, 2019 [Page 2] Internet-Draft SR Bidirectional Association in PCEP March 2019 purpose of computation of Multiprotocol Label Switching (MPLS) as well as Generalized MPLS (GMPLS) Traffic Engineering Label Switched Path (TE LSP) characteristics. [RFC8231] specifies a set of extensions to PCEP to enable stateful control of TE LSPs within and across PCEP sessions in compliance with [RFC4657]. It includes mechanisms to effect LSP State Synchronization between PCCs and PCEs, delegation of control over LSPs to PCEs, and PCE control of timing and sequence of path computations within and across PCEP sessions. The model of operation where LSPs are initiated from the PCE is described in [RFC8281]. [I-D.ietf-pce-segment-routing] specifies extensions to the Path Computation Element Protocol (PCEP) [RFC5440] for SR networks, that allow a stateful PCE to compute and initiate SR-TE paths, as well as a PCC to request, report or delegate SR paths. [I-D.negi-pce-segment-routing-ipv6] extend PCEP to support SR for IPv6 data plane. [I-D.ietf-pce-association-group] introduces a generic mechanism to create a grouping of LSPs which can then be used to define associations between a set of LSPs and/or a set of attributes, for example primary and secondary LSP associations, and is equally applicable to the active and passive modes of a Stateful PCE [RFC8231] or a stateless PCE [RFC5440]. Currently, SR network only supports unidirectional path, but the bidirectional SR path is required in some scenarios, for example, mobile backhaul transport network. The requirement of SR bidirectional path is specified in [I-D.cheng-spring-mpls-path-segment]. [I-D.ietf-pce-association-bidir] defines PCEP extensions for grouping two reverse unidirectional MPLS TE LSPs into an Associated Bidirectional LSP when using a Stateful PCE for both PCE-Initiated and PCC-Initiated LSPs as well as when using a Stateless PCE. This document extends the bidirectional association to segment routing by specifying PCEP extensions for grouping two reverse unidirectional SR paths into a bidirectional SR path. [I-D.ietf-pce-association-bidir] specify the Double-sided Bidirectional procedure, where the PCE creates the association and provisions at the both ends, the RSVP-TE does the signaling to the egress the status of the forward LSP and the ingress about the reverse LSP. Thus, the both ends learn both the LSPs forming the bidirectional association. In case of SR, to support the bidirectional use-case, this is done via the PCEP protocol itself as Li, et al. Expires September 9, 2019 [Page 3] Internet-Draft SR Bidirectional Association in PCEP March 2019 described in Section 3.1. This is done so that both ends are aware of the Path Segment used by each of the unidirectional LSP, as well as the status, the ERO etc. [I-D.li-pce-sr-path-segment] defines a procedure for Path Segment in PCEP for SR by defining the PATH-SEGMENT TLV. The Path Segment can be a Path Segment in SR-MPLS [I-D.cheng-spring-mpls-path-segment], or a Path Segment in SRv6 [I-D.li-spring-srv6-path-segment], or other IDs that can identify an SR path. The PATH-SEGMENT TLV SHOULD be included for associated bidirectional SR paths. 2. Terminology This document makes use of the terms defined in [I-D.ietf-pce-segment-routing]. The reader is assumed to be familiar with the terminology defined in [RFC5440], [RFC8231], [RFC8281], [I-D.ietf-pce-association-group] and [I-D.ietf-pce-association-bidir]. 2.1. Requirements Language 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 BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here. 3. PCEP Extension for Bidirectional SR Path As per [I-D.ietf-pce-association-group], LSPs are associated by adding them to a common association group. [I-D.ietf-pce-association-bidir] specifies PCEP extensions for grouping two reverse unidirectional MPLS-TE LSPs into an Associated Bidirectional LSP for both single-sided and double-sided initiation cases by defining two new Bidirectional LSP Association Groups. This document extends the procedure for SR bidirectional associated paths by defining a new bidirectional association type (i.e. Double- sided Bidirectional SR Path Association Group). The document further describes the mechanism of associating two unidirectional SR path into a bidirectional SR path. [I-D.li-pce-sr-path-segment] defines a procedure for Path Segment in PCEP for SR by defining the PATH- SEGMENT TLV. The bidirectional SR path can also use the PATH-SEGMENT TLV. Note that a new association type is created by this document to create new procedures applicable to SR-path (and are quite different than the RSVP-TE bidirectional association groups). Li, et al. Expires September 9, 2019 [Page 4] Internet-Draft SR Bidirectional Association in PCEP March 2019 3.1. Double-sided Bidirectional SR Path Association Group Object As defined in [I-D.ietf-pce-association-bidir], two LSPs are associated as a bidirectional MPLS-TE LSP by a common bidirectional LSP association group. For associating two SR paths, this document defines a new association group called 'Double-sided Bidirectional SR Path Association Group' as follows: o Association Type (TBD1 to be assigned by IANA) = Double-sided Bidirectional SR Path Association Group Similar to other bidirectional associations, this Association Type is operator-configured in nature and statically created by the operator on the PCEP peers. The paths belonging to this association is conveyed via PCEP messages to the PCEP peer. Operator-configured Association Range TLV [I-D.ietf-pce-association-group] MUST NOT be sent for these Association Types, and MUST be ignored, so that the entire range of association ID can be used for them. The handling of the Association ID, Association Source, optional Global Association Source and optional Extended Association ID in this association are set in the same way as [I-D.ietf-pce-association-bidir]. A member of the Double-sided Bidirectional SR Path Association Group can take the role of a forward or reverse SR path and follows the rules similar to the rules defined in [I-D.ietf-pce-association-bidir] for LSPs. o An SR path (forward or reverse) can not be part of more than one Double-sided Bidirectional SR Path Association Group. o The endpoints of the SR paths in this associations cannot be different. For describing the SR paths in this association group, such as direction and co-routed information, this association group reuses the Bidirectional LSP Association Group TLV defined in [I-D.ietf-pce-association-bidir]. All fields and processing rules are as per [I-D.ietf-pce-association-bidir]. 4. Bidirectional Flag As defined in [RFC5440], the B-flag in RP object MUST be set when the PCC specifies that the path computation request relates to a bidirectional TE LSP. In this document, the B-flag also MUST be set when the PCC specifies that the path computation request relates to a bidirectional SR path. When a stateful PCE initiates or updates a bidirectional SR paths including LSPs and SR paths, the B-flag in SRP object [I-D.ietf-pce-pcep-stateful-pce-gmpls] may be set as well. Li, et al. Expires September 9, 2019 [Page 5] Internet-Draft SR Bidirectional Association in PCEP March 2019 5. Procedures of Bidirectional Path Computation Two unidirectional SR paths can be associated by the association group object as specified in [I-D.ietf-pce-association-group]. A bidirectional LSP association group object is defined in [I-D.ietf-pce-association-bidir] (for MPLS-TE). This documents extends the mechanism for bidirectional SR paths. Two SR paths can be associated together by including the Bidirectional SR Path Association Group in the PCEP messages. The PATH-SEGMENT TLV [I-D.li-pce-sr-path-segment] SHOULD also be included in the LSP object for these SR paths to support required use-cases. There is also a need to include the reverse direction path in the PCEP messages, so the PCE SHOULD inform the reverse SR path to the ingress PCC and vice versa. To achieve this, a PCInitiate message for the reverse SR path is sent to the ingress PCC and a PCInitiate message for the forward SR path is sent to the egress PCC (with the same association group). These PCInitiate message MUST NOT trigger initiation of SR paths. The information of reverse direction path can be used for several scenarios, such as directed BFD [I-D.ietf-mpls-bfd-directed]. In a bidirectional LSP computaion, a same LSP would be identified via 2 different PLSP-IDs based on the PCEP session to the ingress or the egress. In other words, a LSP will have a PLSP-ID A at the ingress node while have the PLSP-ID B at the egress node. The PCE could maintain the two PLSP-ID for the same LSP. For instance, an ingress PCC requests a bidirectional SR path computation, and the PCE compute a forward LSP1 with PLSP-ID 100, and reverse LSP from the egress to the ingress with PLSP-ID 200 allocated by the egress PCC. Since the PLSP-ID space is isolated at each PCC, so the PLSP-ID allocated by egress PCC can not be used at the ingress PCC(PSLD-ID confliction may occur), so the PCE needs to allocate a PLSP-ID for LSP2 from the ingress PCC's PSLP-ID space , such as 101. It is the same situtaion for LSP1, it has PLSP-ID 100 at the ingress, and may has PLSP-ID 201 at the egress. 5.1. PCE Initiated SR Paths As specified in [I-D.ietf-pce-association-group] Bidirectional SR Association Group can be created by a Stateful PCE. o Stateful PCE can create and update the forward and reverse SR path independently for Double-sided Bidirectional SR Path Association Groups. Li, et al. Expires September 9, 2019 [Page 6] Internet-Draft SR Bidirectional Association in PCEP March 2019 o Stateful PCE can establish and remove the association relationship on a per SR path basis. o Stateful PCE can create and update the SR path and the association on a PCC via PCInitiate and PCUpd messages, respectively, using the procedures described in [I-D.ietf-pce-association-group]. o The PATH-SEGMENT TLV SHOULD be included for each SR path in the LSP object. o The opposite direction SR path (LSP2(R) at S, LSP1(R) at D ) SHOULD be informed via PCInitiate message with the matching association group. +-----+ | PCE | +-----+ PCUpd/PCInitiate / \ PCUpd/PCInitiate Tunnel 1 (F) / \ Tunnel 2 (R) (LSP1 (F), LSP2 (R)) / \ (LSP2 (F), LSP1 (R)) Assoc#1 / \ Assoc#1 / \ v v +-----+ LSP1 +-----+ | S |------------>| D | | |<------------| | +-----+ LSP2 +-----+ Figure 1: PCE-Initiated Double-sided Bidirectional SR Path 5.2. PCC Initiated SR Paths As specified in [I-D.ietf-pce-association-group] Bidirectional SR Association Group can also be created by a PCC. o PCC can create and update the forward and reverse SR paths independently for Double-sided Bidirectional SR Path Association Groups. o PCC can establish and remove the association relationship on a per SR path basis. o PCC MUST report the change in the association group of an SR path to PCE(s) via PCRpt message. Li, et al. Expires September 9, 2019 [Page 7] Internet-Draft SR Bidirectional Association in PCEP March 2019 o PCC can report the forward and reverse SR paths independently to PCE(s) via PCRpt message. o PCC can delegate the forward and reverse SR paths independently to a Stateful PCE, where PCE would control the SR paths. o Stateful PCE can update the SR paths in the Double-sided Bidirectional SR Path Association Group via PCUpd message, using the procedures described in [I-D.ietf-pce-association-group]. o The PATH-SEGMENT TLV MUST be handled as defined in [I-D.li-pce-sr-path-segment]. o The opposite direction SR path (LSP2(R) at S, LSP1(R) at D ) SHOULD be informed via PCInitiate message with the matching association group. Li, et al. Expires September 9, 2019 [Page 8] Internet-Draft SR Bidirectional Association in PCEP March 2019 +-----+ | PCE | +-----+ Reports/Delegates: ^ ^ Reports/Delegates Tunnel 1 (F) / \ Tunnel 2 (R) (LSP1 (F)) / \ (LSP2 (R)) / \ / \ / \ +-----+ LSP1 +-----+ | S |------------>| D | | |<------------| | +-----+ LSP2 +-----+ Figure 2a: PCC-Initiated Double-sided Bidirectional SR Path +-----+ | PCE | +-----+ PCUpd/PCInitiate / \ PCUpd/PCInitiate Tunnel 1 (F) / \ Tunnel 2 (R) (LSP1 (F), LSP2 (R)) / \ (LSP2 (F), LSP1 (R)) Assoc#1 / \ Assoc#1 / \ v v +-----+ LSP1 +-----+ | S |------------>| D | | |<------------| | +-----+ LSP2 +-----+ Figure 2b: PCC-Initiated Double-sided Bidirectional SR Path along with opposite direction SR path 5.3. Error Handling The error handling as described in section 5.5 of [I-D.ietf-pce-association-bidir] continue to apply. The Path Setup Type (PST) MUST be set to SR for the LSP belonging to the 'Double-sided Bidirectional SR Path Association Group', in case a PCEP speaker receives a different PST value, it MUST send an PCErr message with Error-Type = 29 (Early allocation by IANA) (Association Error) and Error-Value = TBD2 (Bidirectional LSP Association - PST Mismatch). Li, et al. Expires September 9, 2019 [Page 9] Internet-Draft SR Bidirectional Association in PCEP March 2019 6. IANA Considerations 6.1. Association Type This document defines a new Association Type for the Association Object defined [I-D.ietf-pce-association-group]. IANA is requested to make the assignment of a value for the sub-registry "ASSOCIATION Type Field" (to be created in [I-D.ietf-pce-association-group]), as follows: Value Name Reference ------------------------------------------------------------------- TBD1 Double-sided Bidirectional This document SR Path Association Group 6.2. PCEP Errors This document defines new Error value for Error Type 29 (Association Error). IANA is requested to allocate new Error value within the "PCEP-ERROR Object Error Types and Values" sub-registry of the PCEP Numbers registry, as follows: Error Type Description Reference ------------------------------------------------------------------- 29 Association Error Error value: TBD2 This document Bidirectional LSP Association - PST Mismatch 7. Security Considerations The security considerations described in [RFC5440], [RFC8231], [RFC8281], and [I-D.ietf-pce-segment-routing] apply to the extensions defined in this document as well. A new Association Type for the Association Object, Double-sided Associated Bidirectional SR Path Association Group is introduced in this document. Additional security considerations related to LSP associations due to a malicious PCEP speaker is described in [I-D.ietf-pce-association-group] and apply to this Association Type. Hence, securing the PCEP session using Transport Layer Security (TLS) [RFC8253] is recommended. Li, et al. Expires September 9, 2019 [Page 10] Internet-Draft SR Bidirectional Association in PCEP March 2019 8. Contributors The following people have substantially contributed to this document: Dhruv Dhody Huawei Technologies Divyashree Techno Park, Whitefield Bangalore, Karnataka 560066 India Email: dhruv.ietf@gmail.com Quan Xiong ZTE Corporation No.6 Huashi Park Rd Wuhan, Hubei 430223 China Email: xiong.quan@zte.com.cn 9. Acknowledgments Many thanks to Marina's review and professional comments. 10. References 10.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation Element (PCE) Communication Protocol (PCEP)", RFC 5440, DOI 10.17487/RFC5440, March 2009, . [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . [RFC8231] Crabbe, E., Minei, I., Medved, J., and R. Varga, "Path Computation Element Communication Protocol (PCEP) Extensions for Stateful PCE", RFC 8231, DOI 10.17487/RFC8231, September 2017, . Li, et al. Expires September 9, 2019 [Page 11] Internet-Draft SR Bidirectional Association in PCEP March 2019 [RFC8281] Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "Path Computation Element Communication Protocol (PCEP) Extensions for PCE-Initiated LSP Setup in a Stateful PCE Model", RFC 8281, DOI 10.17487/RFC8281, December 2017, . [I-D.ietf-pce-association-group] Minei, I., Crabbe, E., Sivabalan, S., Ananthakrishnan, H., Dhody, D., and Y. Tanaka, "PCEP Extensions for Establishing Relationships Between Sets of LSPs", draft- ietf-pce-association-group-08 (work in progress), March 2019. [I-D.ietf-pce-association-bidir] Barth, C., Gandhi, R., and B. Wen, "PCEP Extensions for Associated Bidirectional Label Switched Paths (LSPs)", draft-ietf-pce-association-bidir-02 (work in progress), November 2018. [I-D.ietf-pce-pcep-stateful-pce-gmpls] Lee, Y., Zhang, F., Casellas, R., Dios, O., and Z. Ali, "Path Computation Element (PCE) Protocol Extensions for Stateful PCE Usage in GMPLS-controlled Networks", draft- ietf-pce-pcep-stateful-pce-gmpls-10 (work in progress), March 2019. [I-D.negi-pce-segment-routing-ipv6] Negi, M., Li, C., Sivabalan, S., and P. Kaladharan, "PCEP Extensions for Segment Routing leveraging the IPv6 data plane", draft-negi-pce-segment-routing-ipv6-04 (work in progress), February 2019. [I-D.li-pce-sr-path-segment] Li, C., Chen, M., Dhody, D., Cheng, W., Dong, J., Li, Z., and R. Gandhi, "Path Computation Element Communication Protocol (PCEP) Extension for Path Segment in Segment Routing (SR)", draft-li-pce-sr-path-segment-03 (work in progress), October 2018. [I-D.li-spring-srv6-path-segment] Li, C., Chen, M., Dhody, D., Li, Z., Dong, J., and R. Gandhi, "Path Segment for SRv6 (Segment Routing in IPv6)", draft-li-spring-srv6-path-segment-00 (work in progress), October 2018. Li, et al. Expires September 9, 2019 [Page 12] Internet-Draft SR Bidirectional Association in PCEP March 2019 10.2. Informative References [RFC4657] Ash, J., Ed. and J. Le Roux, Ed., "Path Computation Element (PCE) Communication Protocol Generic Requirements", RFC 4657, DOI 10.17487/RFC4657, September 2006, . [RFC8253] Lopez, D., Gonzalez de Dios, O., Wu, Q., and D. Dhody, "PCEPS: Usage of TLS to Provide a Secure Transport for the Path Computation Element Communication Protocol (PCEP)", RFC 8253, DOI 10.17487/RFC8253, October 2017, . [RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., Decraene, B., Litkowski, S., and R. Shakir, "Segment Routing Architecture", RFC 8402, DOI 10.17487/RFC8402, July 2018, . [I-D.ietf-pce-segment-routing] Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W., and J. Hardwick, "PCEP Extensions for Segment Routing", draft-ietf-pce-segment-routing-16 (work in progress), March 2019. [I-D.ietf-mpls-bfd-directed] Mirsky, G., Tantsura, J., Varlashkin, I., and M. Chen, "Bidirectional Forwarding Detection (BFD) Directed Return Path", draft-ietf-mpls-bfd-directed-10 (work in progress), September 2018. [I-D.cheng-spring-mpls-path-segment] Cheng, W., Wang, L., Li, H., Chen, M., Gandhi, R., Zigler, R., and S. Zhan, "Path Segment in MPLS Based Segment Routing Network", draft-cheng-spring-mpls-path-segment-03 (work in progress), October 2018. Authors' Addresses Cheng Li Huawei Technologies Huawei Campus, No. 156 Beiqing Rd. Beijing 100095 China Email: chengli13@huawei.com Li, et al. Expires September 9, 2019 [Page 13] Internet-Draft SR Bidirectional Association in PCEP March 2019 Mach(Guoyi) Chen Huawei Technologies Huawei Campus, No. 156 Beiqing Rd. Beijing 100095 China Email: Mach.chen@huawei.com Weiqiang Cheng China Mobile China Email: chengweiqiang@chinamobile.com Zhenbin Li Huawei Technologies Huawei Campus, No. 156 Beiqing Rd. Beijing 100095 China Email: lizhenbin@huawei.com Jie Dong Huawei Technologies Huawei Campus, No. 156 Beiqing Rd. Beijing 100095 China Email: jie.dong@huawei.com Rakesh Gandhi Cisco Systems, Inc. Canada Email: rgandhi@cisco.com Li, et al. Expires September 9, 2019 [Page 14]