PCE S. Peng Internet-Draft Q. Xiong Intended status: Standards Track ZTE Corporation Expires: June 1, 2020 F. Qin China Mobile November 29, 2019 PCE TE Constraints for Network Slicing draft-peng-pce-te-constraints-02 Abstract This document proposes a set of extensions for PCEP to support the constraints for network slicing during path computation, e.g, IGP instance, virtual network, specific application, color template and FA-id etc. 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 June 1, 2020. 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 Peng, et al. Expires June 1, 2020 [Page 1] Internet-Draft PCE TE Constraints for Network Slicing November 2019 the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Conventions used in this document . . . . . . . . . . . . . . 3 2.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 2.2. Requirements Language . . . . . . . . . . . . . . . . . . 3 3. PCEP Extensions for Constraints . . . . . . . . . . . . . . . 3 3.1. Source Protocol Object . . . . . . . . . . . . . . . . . 3 3.2. Multi-topology Object . . . . . . . . . . . . . . . . . . 4 3.3. The AII Object . . . . . . . . . . . . . . . . . . . . . 5 3.4. Application Specific Object . . . . . . . . . . . . . . . 6 3.5. The Color Object . . . . . . . . . . . . . . . . . . . . 7 3.6. The FA-id Object . . . . . . . . . . . . . . . . . . . . 8 4. Security Considerations . . . . . . . . . . . . . . . . . . . 9 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 7. Normative References . . . . . . . . . . . . . . . . . . . . 10 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12 1. Introduction [RFC5440] describes the Path Computation Element Protocol (PCEP) which is used between a Path Computation Element (PCE) and a Path Computation Client (PCC) (or other PCE) to enable computation of Multi-protocol Label Switching (MPLS) for Traffic Engineering Label Switched Path (TE LSP). PCEP Extensions for the Stateful PCE Model [RFC8231] describes a set of extensions to PCEP to enable active control of MPLS-TE and Generalized MPLS (GMPLS) tunnels. As depicted in [RFC4655], a PCE MUST be able to compute the path of a TE LSP by operating on the TED and considering bandwidth and other constraints applicable to the TE LSP service request. The constraint parameters are provided such as metric, bandwidth, delay, affinity, etc. However these parameters can't meet the network slicing requirements. According to 5G context, network slicing is the collection of a set of technologies to support network service differentiation and meeting the diversified requirements from vertical industries. The slices may be seen as virtual networks and partition the network resources into sub-topologies in transport network. Multiple existing identifiers could be used to identify the virtual network resource and viewed as constraints of network slicing when PCE is deployed. A PCE always perform path computation based on the network topology information collected through BGP-LS [RFC7752]. BGP-LS can get Peng, et al. Expires June 1, 2020 [Page 2] Internet-Draft PCE TE Constraints for Network Slicing November 2019 multiple link-state data from multiple IGP instance, or multiple virtual topologies from a single IGP instance. It is necessary to restrict the PCE to a small topology scope during path computation for some special purpose. BGP-LS can also get application specific TE attributes for a link, it is also necessary to restrict PCE to use TE attributes of specific application The PCE MUST take the identifier of slicing into consideration during path computation. This document proposes a set of extensions for PCEP to support the constraints for network slicing during path computation, e.g, IGP instance, virtual network, specific application, color template and FA-id etc. 2. Conventions used in this document 2.1. Terminology The terminology is defined as [RFC5440] and [RFC7752]. 2.2. 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 Extensions for Constraints 3.1. Source Protocol Object The Source Protocol object is optional and can be used for several purposes. In a PCReq message, a PCC MAY insert one Source Protocol object to indicate the source protocol that MUST be considered by the PCE. The PCE will perform path computation based on the sub-topology identified by the specific source protocol. The absence of the Source Protocol object MUST be interpreted by the PCE as a path computation request for which no constraints need be applied to any of the source protocols. In a PCRep/PCInit/PCUpd message, the Source Protocol object MAY be inserted so as to provide the source protocol information for the computed path. Peng, et al. Expires June 1, 2020 [Page 3] Internet-Draft PCE TE Constraints for Network Slicing November 2019 Only one Source Protocol Object could be inserted in the above messages, otherwise the first one MUST be considered and others MUST be ignored. Source Protocol Object-Class is TBA. Source Protocol Object-Type is 1. The format of the Source Protocol object is shown as Figure 1: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Protocol-ID | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Identifier | | (64 bits) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 1: Source Protocol Object The Source Protocol object body has a fixed length of 12 bytes. Protocol-ID (8 bits): defined in [RFC7752] section 3.2. Reserved (24 bits): This field MUST be set to zero on transmission and MUST be ignored on receipt. Identifier (64 bits): defined in [RFC7752] section 3.2. 3.2. Multi-topology Object The Multi-topology object is optional and can be used for several purposes. In a PCReq message, a PCC MAY insert one Multi-topology object to indicate the sub-topology of an IGP instance that MUST be considered by the PCE. The PCE will perform path computation based on the sub- topology identified by the specific Multi-Topology ID within a source protocol. The absence of the Multi-topology object MUST be interpreted by the PCE as a path computation request for which no constraints need be applied to any of the multi-topologies. In a PCRep/PCInit/PCUpd message, the Multi-topology object MAY be inserted so as to provide the Multi-topology information for the computed path. Peng, et al. Expires June 1, 2020 [Page 4] Internet-Draft PCE TE Constraints for Network Slicing November 2019 Only one Multi-topology Object could be inserted in the above messages, otherwise the first one MUST be considered and others MUST be ignored. It MUST be inserted with a Source Protocol Object, if not it MUST be ignored. Multi-topology Object-Class is TBA. Multi-topology Object-Type is 1. The format of the Multi-topology object is shown as Figure 2: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |R R R R| Multi-Topology ID | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 2: Multi-topology Object The Multi-topology object body has a fixed length of 4 bytes. Multi-Topology ID (12 bits): Semantics of the IS-IS MT-ID are defined in Section 7.2 of [RFC5120]. Semantics of the OSPF MT-ID are defined in Section 3.7 of [RFC4915]. If the value is derived from OSPF, then the upper 9 bits MUST be set to 0. Bits R are reserved and SHOULD be set to 0 when originated and ignored on receipt. Reserved (16 bits): This field MUST be set to zero on transmission and MUST be ignored on receipt. 3.3. The AII Object The AII object is optional and can be used for several purposes. In a PCReq message, a PCC MAY insert one AII object to indicate the global virtual network that MUST be considered by the PCE. The PCE will perform path computation based on the intra or inter-domain sub- topology identified by the specific AII, which is independent of routing protocols such as IGP/BGP. The absence of the AII object MUST be interpreted by the PCE as a path computation request for which no constraints need be applied to any of the virtual network, i.e, a default AII (0) will be applied. In a PCRep/PCInit/PCUpd message, the AII object MAY be inserted so as to provide the network slicing information for the computed path. Peng, et al. Expires June 1, 2020 [Page 5] Internet-Draft PCE TE Constraints for Network Slicing November 2019 Only one AII Object could be inserted in the above messages, otherwise the first one MUST be considered and others MUST be ignored. AII Object-Class is TBA. AII Object-Type is 1. The format of the AII object is shown as Figure 3: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | AII | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 3: AII Object The AII object body has a fixed length of 4 bytes. AII (32 bits): Administrative Instance Identifier defined in [I-D.peng-lsr-network-slicing]. 3.4. Application Specific Object The Application Specific object is optional and can be used for several purposes. In a PCReq message, a PCC MAY insert one Application Specific object to indicate the appliaction that MUST be considered by the PCE. The PCE will perform path computation using the specific application attributes. The absence of the Application Specific object MUST be interpreted by the PCE as a path computation request for which no constraints need be applied to any of the Application Specific attributes. In a PCRep/PCInit/PCUpd message, the Application Specific object MAY be inserted so as to provide the Application Specific information for the computed path. Only one Application Specific Object could be inserted in the above messages, otherwise the first one MUST be considered and others MUST be ignored. Application Specific Object-Class is TBA. Peng, et al. Expires June 1, 2020 [Page 6] Internet-Draft PCE TE Constraints for Network Slicing November 2019 Application Specific Object-Type is 1. The format of the Application Specific object is shown as Figure 4: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Standard Application ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | User Defined Application ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 4: Application Specific Object The Application Specific object body has a fixed length of 8 bytes. Standard Application ID: Represents a bit-position value for a single STANDARD application that is defined in the IANA "IGP Parameters" registries under the "Link Attribute Applications" registry [I-D.ietf-isis-te-app]. User Defined Application ID: Represents a single user defined application which is a specific implementation. 3.5. The Color Object The Color object is optional and can be used for several purposes. In a PCReq message, a PCC MAY insert one Color object to indicate the traffic engineering purpose that is recognized by the both PCE and PCC with no conflict meaning. The PCE will perform path computation based on the color template. The same color template may be also defined at PCC and the exsiting constraints (i.e, metric, bandwidth, dealy, etc) carried in the message MUST be ignored. The absence of the Color object MUST be interpreted by the PCE as a path computation request for which traditional constraints that are contained in message need be applied. In a PCRep/PCInit/PCUpd message, the Color object MAY be inserted so as to provide the TE purpose information for the computed path, the PCC recognize the color value that match a local color-template. Only one Color Object could be inserted in the above messages, otherwise the first one MUST be considered and others MUST be ignored. Color Object-Class is TBA. Peng, et al. Expires June 1, 2020 [Page 7] Internet-Draft PCE TE Constraints for Network Slicing November 2019 Color Object-Type is 1. The format of the Color object is shown as Figure 5: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Color | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 5: Color Object The Color object body has a fixed length of 4 bytes. Color (32 bits): indicate a TE template, 0 is invalid value. It is consistent with the Color Extended Community defined in [I-D.ietf-idr-tunnel-encaps], and color of SR policy defined in [I-D.ietf-spring-segment-routing-policy]. Note that Color Object defined in this document is used to represent a TE template, it can be suitable for any TE instance such as RSVP- TE, SR-TE, SR-policy. [I-D.barth-pce-segment-routing-policy-cp] has proposed the SR policy KEY (that also includes a color information) as an association group KEY to associate many candidate paths, however it is only for association purpose but not constraint purpose for path computation. A color tempate can be defined to use exsiting constraints such as metric, bandwidth, dealy, affinity parameters, and the sub-topology constraints above defined in this document. 3.6. The FA-id Object FA-id defined in [I-D.ietf-lsr-flex-algo] is a short mapping of SR policy color to optimaze segment stack depth for the IGP area partial of the entire SR policy. The overlay service that want to be carried over a particual SR-FA path must firstly let the SR policy supplier know that requirement. There are two possible ways to map a color to an FA-id. One is explicit mapping configuration within color template, the other is dynamic to replace a long segment list to short FA segment by headend or controller once the creterias contained in the color-template equal to that contained in FAD. In a PCReq message, a PCC MAY insert one FA-id object to indicate the above explicit FA-id mapping. The PCE will perform path computation based on the FA-id. In detailed, The PCE will check if there are Peng, et al. Expires June 1, 2020 [Page 8] Internet-Draft PCE TE Constraints for Network Slicing November 2019 connectivity within the corresponding Flex-algo plane to the destination. If yes, the path computation result will be represented as segment list with a single prefix-SID@FA for intra-domain case, or serveral prefix-SID@FA for inter-domain case. In a PCRep/PCInit/PCUpd message, the FA-id object MAY be inserted so as to provide the FA plane information for the computed path. In general, the FA-id object is only meaningful for the domain that headend node belongs to. For inter-domain case, operator MUST ensure the FA-id configuration of different domain are same for an E2E slice, when he want to explicitly indicate FA-id in PCEP message. Only one FA-id Object could be inserted in the above messages, otherwise the first one MUST be considered and others MUST be ignored. FA-id Object-Class is TBA. FA-id Object-Type is 1. The format of the FA-id object is shown as Figure 6: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FA-id | Unused | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 6: FA-id Object The FA-id object body has a fixed length of 4 bytes. FA-id (8 bits): indicate an explicit FA-id mapping. 4. Security Considerations TBA 5. Acknowledgements TBA Peng, et al. Expires June 1, 2020 [Page 9] Internet-Draft PCE TE Constraints for Network Slicing November 2019 6. IANA Considerations IANA is requested to make allocations from the registry, as follows: +---------+-------------------------------+------------------+ | Value | Object | Reference | +---------+-------------------------------+------------------+ | TBA1 | Source Protocol Object | [this document] | | TBA2 | Multi-topology Object | [this document] | | TBA3 | AII Object | [this document] | | TBA4 | Application Specific Object | [this document] | | TBA5 | Color Object | [this document] | | TBA6 | FA-id Object | [this document] | +---------+-------------------------------+------------------+ Table 1 7. Normative References [I-D.barth-pce-segment-routing-policy-cp] Koldychev, M., Sivabalan, S., Barth, C., Li, C., and H. Bidgoli, "PCEP extension to support Segment Routing Policy Candidate Paths", draft-barth-pce-segment-routing-policy- cp-04 (work in progress), October 2019. [I-D.ietf-idr-tunnel-encaps] Patel, K., Velde, G., and S. Ramachandra, "The BGP Tunnel Encapsulation Attribute", draft-ietf-idr-tunnel-encaps-14 (work in progress), September 2019. [I-D.ietf-isis-te-app] Ginsberg, L., Psenak, P., Previdi, S., Henderickx, W., and J. Drake, "IS-IS TE Attributes per application", draft- ietf-isis-te-app-09 (work in progress), October 2019. [I-D.ietf-lsr-flex-algo] Psenak, P., Hegde, S., Filsfils, C., Talaulikar, K., and A. Gulko, "IGP Flexible Algorithm", draft-ietf-lsr-flex- algo-05 (work in progress), November 2019. [I-D.ietf-spring-segment-routing-policy] Filsfils, C., Sivabalan, S., Voyer, D., Bogdanov, A., and P. Mattes, "Segment Routing Policy Architecture", draft- ietf-spring-segment-routing-policy-03 (work in progress), May 2019. Peng, et al. Expires June 1, 2020 [Page 10] Internet-Draft PCE TE Constraints for Network Slicing November 2019 [I-D.peng-lsr-network-slicing] Peng, S., Chen, R., and G. Mirsky, "Packet Network Slicing using Segment Routing", draft-peng-lsr-network-slicing-00 (work in progress), February 2019. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation Element (PCE)-Based Architecture", RFC 4655, DOI 10.17487/RFC4655, August 2006, . [RFC4915] Psenak, P., Mirtorabi, S., Roy, A., Nguyen, L., and P. Pillay-Esnault, "Multi-Topology (MT) Routing in OSPF", RFC 4915, DOI 10.17487/RFC4915, June 2007, . [RFC5120] Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi Topology (MT) Routing in Intermediate System to Intermediate Systems (IS-ISs)", RFC 5120, DOI 10.17487/RFC5120, February 2008, . [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation Element (PCE) Communication Protocol (PCEP)", RFC 5440, DOI 10.17487/RFC5440, March 2009, . [RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and S. Ray, "North-Bound Distribution of Link-State and Traffic Engineering (TE) Information Using BGP", RFC 7752, DOI 10.17487/RFC7752, March 2016, . [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, . Peng, et al. Expires June 1, 2020 [Page 11] Internet-Draft PCE TE Constraints for Network Slicing November 2019 Authors' Addresses Shaofu Peng ZTE Corporation No.50 Software Avenue Nanjing, Jiangsu 210012 China Email: peng.shaofu@zte.com.cn Quan Xiong ZTE Corporation No.6 Huashi Park Rd Wuhan, Hubei 430223 China Email: xiong.quan@zte.com.cn Fengwei Qin China Mobile Beijing China Email: qinfengwei@chinamobile.com Peng, et al. Expires June 1, 2020 [Page 12]