PCE S. Peng Internet-Draft Q. Xiong Intended status: Standards Track ZTE Corporation Expires: January 30, 2020 July 29, 2019 PCEP Extension for TE Constraints draft-peng-pce-te-constraints-00 Abstract This document proposes a set of constraints for PCEP to configure PCE to use specific virtual network topology or application attributes during path computation. A simple COLOR parameter is also introduced to simplify network operations. 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 January 30, 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 the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Peng & Xiong Expires January 30, 2020 [Page 1] Internet-Draft PCEP Extension for TE Constraints July 2019 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 4. Security Considerations . . . . . . . . . . . . . . . . . . . 8 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 7. Normative References . . . . . . . . . . . . . . . . . . . . 9 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10 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. [RFC8281] describes the setup and teardown of PCE-initiated LSPs under the active stateful PCE model, without the need for local configuration on the PCC, thus allowing for dynamic centralized control of a network. Till now there are known path computation constraint parameters such as metric, bandwidth, delay, affinity, etc. However all these parameters can't meet increasing service requirements. A PCE always perform path computation based on the network topology information collected through BGP-LS [RFC7752]. BGP-LS can get multiple link- state database from multiple IGP instance, or multiple virtual topology from a single IGP instance. It is necessary to limit 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 limit PCE to use TE attributes of specific application during path computation. This document will extend PCEP to support some new constraint parameters during path computation, e.g, IGP instance, virtual network, specific application, as well as a simple COLOR parameter. Peng & Xiong Expires January 30, 2020 [Page 2] Internet-Draft PCEP Extension for TE Constraints July 2019 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 later 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. 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: Peng & Xiong Expires January 30, 2020 [Page 3] Internet-Draft PCEP Extension for TE Constraints July 2019 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 later 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. 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: Peng & Xiong Expires January 30, 2020 [Page 4] Internet-Draft PCEP Extension for TE Constraints July 2019 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 (16 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 later 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. 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: Peng & Xiong Expires January 30, 2020 [Page 5] Internet-Draft PCEP Extension for TE Constraints July 2019 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 later 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. Application Specific Object-Type is 1. The format of the Application Specific object is shown as Figure 4: Peng & Xiong Expires January 30, 2020 [Page 6] Internet-Draft PCEP Extension for TE Constraints July 2019 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 that is implementation specific. 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 later will perform path computation based on the color template defined in local and extract the detailed constraints from the color template. Note the same color template is also defined in PCC side. At this time, any other traditional constraints (i.e, metric, bandwidth, dealy, etc) that is directly contained 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. Color Object-Type is 1. Peng & Xiong Expires January 30, 2020 [Page 7] Internet-Draft PCEP Extension for TE Constraints July 2019 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): Represent a TE purpose, 0 is invalid value. It is consistent with the meaning of Color Extended Community that is defined in [I-D.ietf-idr-tunnel-encaps], and color of SR policy that is also defined in [I-D.ietf-spring-segment-routing-policy]. Note that Color Object defined in this document is used to represent a TE purpose, 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 already been using 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 any constraints such as traditional metric, bandwidth, dealy, affinity parameters, but also any sub-topology parameters above defined in this document. Both PCE and PCC MUST have the same understanding for a same color value. 4. Security Considerations TBA 5. Acknowledgements TBA 6. IANA Considerations IANA is requested to make allocations from the registry, as follows: Peng & Xiong Expires January 30, 2020 [Page 8] Internet-Draft PCEP Extension for TE Constraints July 2019 +--------+------------------------------+------------------+ | 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] | +--------+------------------------------+------------------+ Table 1 7. Normative References [I-D.barth-pce-segment-routing-policy-cp] Koldychev, M., Sivabalan, S., Barth, C., and C. Li, "PCEP extension to support Segment Routing Policy Candidate Paths", draft-barth-pce-segment-routing-policy-cp-03 (work in progress), July 2019. [I-D.ietf-idr-tunnel-encaps] Patel, K., Velde, G., Ramachandra, S., and E. Rosen, "The BGP Tunnel Encapsulation Attribute", draft-ietf-idr- tunnel-encaps-13 (work in progress), July 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-06 (work in progress), April 2019. [I-D.ietf-spring-segment-routing-policy] Filsfils, C., Sivabalan, S., daniel.voyer@bell.ca, d., bogdanov@google.com, b., and P. Mattes, "Segment Routing Policy Architecture", draft-ietf-spring-segment-routing- policy-03 (work in progress), May 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, . Peng & Xiong Expires January 30, 2020 [Page 9] Internet-Draft PCEP Extension for TE Constraints July 2019 [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, . [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, . Authors' Addresses Shaofu Peng ZTE Corporation No.50 Software Avenue Nanjing, Jiangsu 210012 China Email: peng.shaofu@zte.com.cn Peng & Xiong Expires January 30, 2020 [Page 10] Internet-Draft PCEP Extension for TE Constraints July 2019 Quan Xiong ZTE Corporation No.6 Huashi Park Rd Wuhan, Hubei 430223 China Email: xiong.quan@zte.com.cn Peng & Xiong Expires January 30, 2020 [Page 11]