idnits 2.17.00 (12 Aug 2021) /tmp/idnits24854/draft-ietf-pce-association-policy-02.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (February 27, 2018) is 1544 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Outdated reference: draft-ietf-pce-association-group has been published as RFC 8697 == Outdated reference: draft-ietf-pce-segment-routing has been published as RFC 8664 == Outdated reference: A later version (-18) exists of draft-ietf-pce-pcep-yang-06 Summary: 0 errors (**), 0 flaws (~~), 4 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 PCE Working Group D. Dhody, Ed. 3 Internet-Draft Huawei Technologies 4 Intended status: Standards Track S. Sivabalan 5 Expires: August 31, 2018 Cisco Systems, Inc. 6 S. Litkowski 7 Orange 8 J. Tantsura 9 Individual 10 J. Hardwick 11 Metaswitch Networks 12 February 27, 2018 14 Path Computation Element communication Protocol extension for 15 associating Policies and LSPs 16 draft-ietf-pce-association-policy-02 18 Abstract 20 This document introduces a simple mechanism to associate policies to 21 a group of Label Switched Paths (LSPs) via an extension to the Path 22 Computation Element (PCE) Communication Protocol (PCEP). 24 Status of This Memo 26 This Internet-Draft is submitted in full conformance with the 27 provisions of BCP 78 and BCP 79. 29 Internet-Drafts are working documents of the Internet Engineering 30 Task Force (IETF). Note that other groups may also distribute 31 working documents as Internet-Drafts. The list of current Internet- 32 Drafts is at https://datatracker.ietf.org/drafts/current/. 34 Internet-Drafts are draft documents valid for a maximum of six months 35 and may be updated, replaced, or obsoleted by other documents at any 36 time. It is inappropriate to use Internet-Drafts as reference 37 material or to cite them other than as "work in progress." 39 This Internet-Draft will expire on August 31, 2018. 41 Copyright Notice 43 Copyright (c) 2018 IETF Trust and the persons identified as the 44 document authors. All rights reserved. 46 This document is subject to BCP 78 and the IETF Trust's Legal 47 Provisions Relating to IETF Documents 48 (https://trustee.ietf.org/license-info) in effect on the date of 49 publication of this document. Please review these documents 50 carefully, as they describe your rights and restrictions with respect 51 to this document. Code Components extracted from this document must 52 include Simplified BSD License text as described in Section 4.e of 53 the Trust Legal Provisions and are provided without warranty as 54 described in the Simplified BSD License. 56 Table of Contents 58 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 59 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3 60 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 61 3. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . 4 62 3.1. Policy based Constraints . . . . . . . . . . . . . . . . 5 63 4. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 6 64 5. Policy Association Group . . . . . . . . . . . . . . . . . . 7 65 5.1. Policy Parameters TLV . . . . . . . . . . . . . . . . . . 7 66 6. Security Considerations . . . . . . . . . . . . . . . . . . . 8 67 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 68 7.1. Association object Type Indicators . . . . . . . . . . . 9 69 7.2. PCEP TLV Type Indicators . . . . . . . . . . . . . . . . 9 70 8. Manageability Considerations . . . . . . . . . . . . . . . . 9 71 8.1. Control of Function and Policy . . . . . . . . . . . . . 9 72 8.2. Information and Data Models . . . . . . . . . . . . . . . 9 73 8.3. Liveness Detection and Monitoring . . . . . . . . . . . . 9 74 8.4. Verify Correct Operations . . . . . . . . . . . . . . . . 10 75 8.5. Requirements On Other Protocols . . . . . . . . . . . . . 10 76 8.6. Impact On Network Operations . . . . . . . . . . . . . . 10 77 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 10 78 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 10 79 10.1. Normative References . . . . . . . . . . . . . . . . . . 10 80 10.2. Informative References . . . . . . . . . . . . . . . . . 11 81 Appendix A. Contributor Addresses . . . . . . . . . . . . . . . 12 82 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12 84 1. Introduction 86 [RFC5440] describes the Path Computation Element communication 87 Protocol (PCEP) which enables the communication between a Path 88 Computation Client (PCC) and a Path Control Element (PCE), or between 89 two PCEs based on the PCE architecture [RFC4655]. [RFC5394] provides 90 additional details on policy within the PCE architecture and also 91 provides context for the support of PCE Policy. 93 PCEP Extensions for Stateful PCE Model [RFC8231] describes a set of 94 extensions to PCEP to enable active control of Multiprotocol Label 95 Switching Traffic Engineering (MPLS-TE) and Generalzied MPLS (GMPLS) 96 tunnels. [RFC8281] describes the setup and teardown of PCE-initiated 97 LSPs under the active stateful PCE model, without the need for local 98 configuration on the PCC, thus allowing for a dynamic network. 99 Currently, the LSPs can either be signaled via Resource Reservation 100 Protocol Traffic Engineering (RSVP-TE) or can be segment routed as 101 specified in [I-D.ietf-pce-segment-routing]. 103 [I-D.ietf-pce-association-group] introduces a generic mechanism to 104 create a grouping of LSPs which can then be used to define 105 associations between a set of LSPs and a set of attributes (such as 106 configuration parameters or behaviors) and is equally applicable to 107 stateful PCE (active and passive modes) and stateless PCE. 109 This document specifies a PCEP extension to associate one or more 110 LSPs with policies using the generic association mechanism. 112 A PCEP speaker may want to influence the PCEP peer with respect to 113 path selection and other policies. This document describes a PCEP 114 extension to associate policies by creating Policy Association Group 115 (PAG) and encoding this association in PCEP messages. The 116 specification is applicable to both stateful and stateless PCEP 117 sessions. 119 1.1. Requirements Language 121 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 122 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 123 "OPTIONAL" in this document are to be interpreted as described in BCP 124 14 [RFC2119] [RFC8174] when, and only when, they appear in all 125 capitals, as shown here. 127 2. Terminology 129 The following terminology is used in this document. 131 Association parameters: As described in 132 [I-D.ietf-pce-association-group], the combination of the mandatory 133 fields Association type, Association ID and Association Source in 134 the ASSOCIATION object uniquely identify the association group. 135 If the optional TLVs - Global Association Source or Extended 136 Association ID are included, then they MUST be included in 137 combination with mandatory fields to uniquely identifying the 138 association group. 140 Association information: As described in 141 [I-D.ietf-pce-association-group], the ASSOCIATION object MAY 142 include other optional TLVs based on the association types, that 143 provides 'information' related to the association type. 145 LSR: Label Switch Router. 147 LSR: Label Switch Router. 149 MPLS: Multiprotocol Label Switching. 151 PAG: Policy Association Group. 153 PCC: Path Computation Client. Any client application requesting a 154 path computation to be performed by a Path Computation Element. 156 PCE: Path Computation Element. An entity (component, application, 157 or network node) that is capable of computing a network path or 158 route based on a network graph and applying computational 159 constraints. 161 PCEP: Path Computation Element Communication Protocol. 163 3. Motivation 165 Paths computed using PCE MAY be subjected to various policies on both 166 PCE and PCC. For example, in a centralized traffic engineering 167 scenario, network operators may instantiate LSPs and specifies 168 policies for traffic steering, path monitoring, etc., for some LSPs 169 via the stateful PCE. Similarly, a PCC may request a user- or 170 service-specific policy to be applied at the PCE, such as constraints 171 relaxation to meet optimal QoS and resiliency. 173 PCEP speaker can use the generic mechanism as per 174 [I-D.ietf-pce-association-group] to associate a set of LSPs with 175 policy, without the need to know the details of such policies, which 176 simplifies network operations, avoids frequent software upgrades, as 177 well provides an ability to introduce new policy faster. 179 PAG Y 180 {Service-Specific Policy 181 for constraint 182 Initiate & Monitor LSP relaxation} 183 | | 184 | PAG X PCReq | 185 V {Monitor LSP} {PAG Y} V 186 +-----+ ----------------> +-----+ 187 _ _ _ _ _ _| PCE | | | PCE | 188 | +-----+ | ----------> +-----+ 189 | PCEInitiate | | PCReq 190 |{PAG X} | | {PAG Y} 191 | | | 192 | .-----. | | .-----. 193 | ( ) | +----+ ( ) 194 | .--( )--. | |PCC1|--.--( )--. 195 V ( ) | +----+ ( ) 196 +---+ ( ) | ( ) 197 |PCC|----( (G)MPLS network ) +----+ ( (G)MPLS network ) 198 +---+ ( ) |PCC2|------( ) 199 PAG X ( ) +----+ ( ) 200 {Monitor LSP} '--( )--' '--( )--' 201 ( ) ( ) 202 '-----' '-----' 204 Case 1: Policy requested by PCE Case 2: Policy requested by 205 and enforced by PCC PCC and enforced by 206 PCE 208 Figure 1: Sample use-cases for carrying policies over PCEP session 210 3.1. Policy based Constraints 212 In the context of policy-enabled path computation [RFC5394], path 213 computation policies may be applied at both a PCC and a PCE. 214 Consider an Label Switch Router (LSR) with a policy enabled PCC, it 215 receives a service request via signaling, including over a Network- 216 Network Interface (NNI) or User Network Interface (UNI) reference 217 point, or receives a configuration request over a management 218 interface to establish a service. The PCC may also apply user- or 219 service-specific policies to decide how the path selection process 220 should be constrained, that is, which constraints, diversities, 221 optimization criterion, and constraint relaxation strategies should 222 be applied in order for the service LSP(s) to have a likelihood to be 223 successfully established and provide necessary QoS and resilience 224 against network failures. The user- or service-specific policies 225 applied to PCC and are then passed to the PCE along with the Path 226 computation request, in the form of constraints [RFC5394]. 228 PCEP speaker can use the generic mechanism as per 229 [I-D.ietf-pce-association-group] to associate a set of LSPs with 230 policy and its resulting path computation constraints. This would 231 simplify the path computation message exchanges in PCEP. 233 4. Overview 235 As per [I-D.ietf-pce-association-group], LSPs are associated with 236 other LSPs with which they interact by adding them to a common 237 association group. Grouping can also be used to define association 238 between LSPs and policies associated to them. One new Association 239 Type is defined in this document, based on the generic Association 240 object - 242 o Association type = TBD1 ("Policy Association Type") for Policy 243 Association Group (PAG) 245 This Association-Type is operator-configured association in nature 246 and created by the operator manually on the PCEP peers. The LSP 247 belonging to this associations is conveyed via PCEP messages to the 248 PCEP peer. Operator-configured Association Range SHOULD NOT be set 249 for this association-type, and MUST be ignored, so that the full 250 range of association identifier can be utilized. 252 A PAG can have one or more LSPs and its associated policy(s). The 253 association parameters including association identifier, type 254 (Policy), as well as the association source IP address is manually 255 configured by the operator and is used to identify the PAG as 256 described in [I-D.ietf-pce-association-group]. 258 As per the processing rules specified in section 5.4 of 259 [I-D.ietf-pce-association-group], if a PCEP speaker does not support 260 this Policy association-type, it MUST return a PCErr message with 261 Error-Type 26 (Early allocation by IANA) "Association Error" and 262 Error-Value 1 "Association-type is not supported". Since the PAG is 263 opaque in nature, the PAG and the policy MUST be configured on the 264 PCEP peers as per the operator-configured association procedures. 265 All processing is as per section 5.4 of 266 [I-D.ietf-pce-association-group]. If a PCE speaker receives PAG in a 267 PCEP message, and the association information is not configured, it 268 MUST return a PCErr message with Error-Type TBD "Association Error" 269 and Error- Value 4 "Association unknown". If some of the association 270 information [I-D.ietf-pce-association-group] (the TLVs defined in 271 this document) received from the peer does not match the local 272 configured values, the PCEP speaker will reject the PCEP message and 273 send a PCErr message with Error-Type 26 (Early allocation by IANA) 274 "Association Error" and Error-Value 5 "Operator-configured 275 association information mismatch". 277 5. Policy Association Group 279 Association groups and their memberships are defined using the 280 ASSOCIATION object defined in [I-D.ietf-pce-association-group]. Two 281 object types for IPv4 and IPv6 are defined. The ASSOCIATION object 282 includes "Association type" indicating the type of the association 283 group. This document add a new Association type - 285 Association type = TBD1 ("Policy Association Type") for PAG. 287 PAG may carry optional TLVs including but not limited to - 289 o POLICY-PARAMETERS-TLV: Used to communicate opaque information 290 useful to apply the policy, described in Section 5.1. 292 o VENDOR-INFORMATION-TLV: Used to communicate arbitrary vendor 293 specific behavioral information, described in [RFC7470]. 295 5.1. Policy Parameters TLV 297 The POLICY-PARAMETERS-TLV is an optional TLV that can be carried in 298 ASSOCIATION object (with "Policy Association Type") to carry opaque 299 information needed to apply the policy at the PCEP peer. In some 300 cases to apply a PCE policy successfully, it is required to also 301 associate some policy parameters that needs to be evaluated to 302 successfully apply the said policy. This TLV is used to carry those 303 policy parameters. The TLV could include one or more policy related 304 parameter. The encoding format and the order MUST be known to the 305 PCEP peers, this could be done during configuration of policy and 306 association parameters for the PAG. The TLV format is as per the 307 format of all PCEP TLVs, as defined in [RFC5440], and shown in 308 Figure 2. Only one POLICY-PARAMETERS-TLV can be carried and only the 309 first occurrence is processed and any others MUST be ignored. 311 0 1 2 3 312 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 313 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 314 | Type=TBD2 | Length | 315 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 316 // Policy Parameters // 317 +---------------------------------------------------------------+ 319 Figure 2: The POLICY-PARAMETERS-TLV format 321 The type of the POLICY-PARAMETERS-TLV is TBD2 and it has a variable 322 length. The Value field is variable field padded to a 4-bytes 323 alignment; padding is not included in 'Len' field. The 'Len' field 324 is 1-byte followed by the opaque variable. The PCEP peer 325 implementation need to be aware of the encoding format, order, and 326 meaning of the 'Policy Parameters' well in advance based on the 327 policy. Note that from the protocol point of view this data is 328 opaque and can be used to carry parameters in any format understood 329 by the PCEP peers and associated to the policy. The exact use of 330 this TLV is beyond the scope of this document. 332 If the PCEP peer is unaware of the policy parameters associated with 333 the policy and it receives the POLICY-PARAMETERS-TLV, it MUST ignore 334 the TLV and SHOULD log this event. Further, if one or more 335 parameters received in the POLICY-PARAMETERS-TLV received by the PCEP 336 speaker are considered as unacceptable in the context of the 337 associated policy (e.g. out of range value, badly encoded value...), 338 the PCEP speaker MUST NOT apply the received policy and SHOULD log 339 this event. 341 Note that, the vendor specific behavioral information is encoded in 342 VENDOR-INFORMATION-TLV which can be used along with this TLV. 344 6. Security Considerations 346 This document defines one new type for association, which do not add 347 any new security concerns beyond those discussed in [RFC5440], 348 [RFC8231] and [I-D.ietf-pce-association-group] in itself. 350 Some deployments may find policy associations and their implications 351 as extra sensitive and thus should employ suitable PCEP security 352 mechanisms like [RFC8253]. Also extra care needs to be taken by the 353 implementation with respect to POLICY-PARAMETERS-TLV while decoding, 354 verifying and applying these policy variables. 356 7. IANA Considerations 358 7.1. Association object Type Indicators 360 This document defines the following new association type originally 361 defined in [I-D.ietf-pce-association-group]. 363 Value Name Reference 365 TBD1 Policy Association Type [This I.D.] 367 7.2. PCEP TLV Type Indicators 369 The following TLV Type Indicator values are requested within the 370 "PCEP TLV Type Indicators" subregistry of the "Path Computation 371 Element Protocol (PCEP) Numbers" registry: 373 Value Description Reference 375 TBD2 POLICY-PARAMETERS-TLV [This I.D.] 377 8. Manageability Considerations 379 8.1. Control of Function and Policy 381 An operator MUST be allowed to configure the policy associations at 382 PCEP peers and associate it with the LSPs. They MAY also allow 383 configuration to related policy parameters, in which case the an 384 operator MUST also be allowed to set the encoding format and order to 385 parse the associated policy parameters TLV. 387 8.2. Information and Data Models 389 An implementation SHOULD allow the operator to view the PAG 390 configured. Further implementation SHOULD allow to view the current 391 set of LSPs in the PAG. To serve this purpose, the PCEP YANG module 392 [I-D.ietf-pce-pcep-yang] includes association groups and can be used 393 for PAG. 395 8.3. Liveness Detection and Monitoring 397 Mechanisms defined in this document do not imply any new liveness 398 detection and monitoring requirements in addition to those already 399 listed in [RFC5440]. 401 8.4. Verify Correct Operations 403 Mechanisms defined in this document do not imply any new operation 404 verification requirements in addition to those already listed in 405 [RFC5440]. 407 8.5. Requirements On Other Protocols 409 Mechanisms defined in this document do not imply any new requirements 410 on other protocols. 412 8.6. Impact On Network Operations 414 Mechanisms defined in this document do not have any impact on network 415 operations in addition to those already listed in [RFC5440]. 417 9. Acknowledgments 419 A special thanks to author of [I-D.ietf-pce-association-group], this 420 document borrow some of the text from it. 422 10. References 424 10.1. Normative References 426 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 427 Requirement Levels", BCP 14, RFC 2119, 428 DOI 10.17487/RFC2119, March 1997, 429 . 431 [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation 432 Element (PCE) Communication Protocol (PCEP)", RFC 5440, 433 DOI 10.17487/RFC5440, March 2009, 434 . 436 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 437 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 438 May 2017, . 440 [RFC8231] Crabbe, E., Minei, I., Medved, J., and R. Varga, "Path 441 Computation Element Communication Protocol (PCEP) 442 Extensions for Stateful PCE", RFC 8231, 443 DOI 10.17487/RFC8231, September 2017, 444 . 446 [I-D.ietf-pce-association-group] 447 Minei, I., Crabbe, E., Sivabalan, S., Ananthakrishnan, H., 448 Dhody, D., and Y. Tanaka, "PCEP Extensions for 449 Establishing Relationships Between Sets of LSPs", draft- 450 ietf-pce-association-group-04 (work in progress), August 451 2017. 453 10.2. Informative References 455 [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation 456 Element (PCE)-Based Architecture", RFC 4655, 457 DOI 10.17487/RFC4655, August 2006, 458 . 460 [RFC5394] Bryskin, I., Papadimitriou, D., Berger, L., and J. Ash, 461 "Policy-Enabled Path Computation Framework", RFC 5394, 462 DOI 10.17487/RFC5394, December 2008, 463 . 465 [RFC7470] Zhang, F. and A. Farrel, "Conveying Vendor-Specific 466 Constraints in the Path Computation Element Communication 467 Protocol", RFC 7470, DOI 10.17487/RFC7470, March 2015, 468 . 470 [RFC8253] Lopez, D., Gonzalez de Dios, O., Wu, Q., and D. Dhody, 471 "PCEPS: Usage of TLS to Provide a Secure Transport for the 472 Path Computation Element Communication Protocol (PCEP)", 473 RFC 8253, DOI 10.17487/RFC8253, October 2017, 474 . 476 [RFC8281] Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "Path 477 Computation Element Communication Protocol (PCEP) 478 Extensions for PCE-Initiated LSP Setup in a Stateful PCE 479 Model", RFC 8281, DOI 10.17487/RFC8281, December 2017, 480 . 482 [I-D.ietf-pce-segment-routing] 483 Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W., 484 and J. Hardwick, "PCEP Extensions for Segment Routing", 485 draft-ietf-pce-segment-routing-11 (work in progress), 486 November 2017. 488 [I-D.ietf-pce-pcep-yang] 489 Dhody, D., Hardwick, J., Beeram, V., and J. Tantsura, "A 490 YANG Data Model for Path Computation Element 491 Communications Protocol (PCEP)", draft-ietf-pce-pcep- 492 yang-06 (work in progress), January 2018. 494 Appendix A. Contributor Addresses 496 Qin Wu 497 Huawei Technologies 498 101 Software Avenue, Yuhua District 499 Nanjing, Jiangsu 210012 500 China 502 EMail: sunseawq@huawei.com 504 Clarence Filsfils 505 Cisco Systems, Inc. 506 Pegasus Parc 507 De kleetlaan 6a, DIEGEM BRABANT 1831 508 BELGIUM 510 Email: cfilsfil@cisco.com 512 Xian Zhang 513 Huawei Technologies 514 Bantian, Longgang District 515 Shenzhen 518129 516 P.R.China 518 EMail: zhang.xian@huawei.com 520 Udayasree Palle 521 Huawei Technologies 522 Divyashree Techno Park, Whitefield 523 Bangalore, Karnataka 560066 524 India 526 EMail: udayasreereddy@gmail.com 528 Authors' Addresses 530 Dhruv Dhody (editor) 531 Huawei Technologies 532 Divyashree Techno Park, Whitefield 533 Bangalore, Karnataka 560066 534 India 536 EMail: dhruv.ietf@gmail.com 537 Siva Sivabalan 538 Cisco Systems, Inc. 539 2000 Innovation Drive 540 Kanata, Ontario K2K 3E8 541 Canada 543 EMail: msiva@cisco.com 545 Stephane Litkowski 546 Orange 548 EMail: stephane.litkowski@orange.com 550 Jeff Tantsura 551 Individual 553 EMail: jefftant.ietf@gmail.com 555 Jonathan Hardwick 556 Metaswitch Networks 557 100 Church Street 558 Enfield, Middlesex 559 UK 561 EMail: Jonathan.Hardwick@metaswitch.com