idnits 2.17.1 draft-ietf-lsr-pce-discovery-security-support-09.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 : ---------------------------------------------------------------------------- -- The draft header indicates that this document updates RFC8306, but the abstract doesn't seem to directly say this. It does mention RFC8306 though, so this could be OK. -- The draft header indicates that this document updates RFC8623, but the abstract doesn't seem to directly say this. It does mention RFC8623 though, so this could be OK. -- The draft header indicates that this document updates RFC8231, but the abstract doesn't seem to directly say this. It does mention RFC8231 though, so this could be OK. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year (Using the creation date from RFC5088, updated by this document, for RFC5378 checks: 2006-09-20) -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (21 August 2021) is 980 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) No issues found here. Summary: 0 errors (**), 0 flaws (~~), 1 warning (==), 5 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 PCE working group D. Lopez 3 Internet-Draft Telefonica I+D 4 Updates: 5088, 5089, 8231, 8306, 8623 (if Q. Wu 5 approved) D. Dhody 6 Intended status: Standards Track Q. Ma 7 Expires: 22 February 2022 Huawei 8 D. King 9 Old Dog Consulting 10 21 August 2021 12 IGP extension for PCEP security capability support in the PCE discovery 13 draft-ietf-lsr-pce-discovery-security-support-09 15 Abstract 17 When a Path Computation Element (PCE) is a Label Switching Router 18 (LSR) participating in the Interior Gateway Protocol (IGP), or even a 19 server participating in IGP, its presence and path computation 20 capabilities can be advertised using IGP flooding. The IGP 21 extensions for PCE discovery (RFC 5088 and RFC 5089) define a method 22 to advertise path computation capabilities using IGP flooding for 23 OSPF and IS-IS respectively. However these specifications lack a 24 method to advertise PCEP security (e.g., Transport Layer Security 25 (TLS), TCP Authentication Option (TCP-AO)) support capability. 27 This document defines capability flag bits for PCE-CAP-FLAGS sub-TLV 28 that can be announced as an attribute in the IGP advertisement to 29 distribute PCEP security support information. In addition, this 30 document updates RFC 5088 and RFC 5089 to allow advertisement of Key 31 ID or Key Chain Name Sub-TLV to support TCP-AO security capability. 32 RFC 8231, RFC 8306, and RFC 8623 are also updated to reflect the 33 movement of the IANA "PCE Capability Flags" registry. 35 Status of This Memo 37 This Internet-Draft is submitted in full conformance with the 38 provisions of BCP 78 and BCP 79. 40 Internet-Drafts are working documents of the Internet Engineering 41 Task Force (IETF). Note that other groups may also distribute 42 working documents as Internet-Drafts. The list of current Internet- 43 Drafts is at https://datatracker.ietf.org/drafts/current/. 45 Internet-Drafts are draft documents valid for a maximum of six months 46 and may be updated, replaced, or obsoleted by other documents at any 47 time. It is inappropriate to use Internet-Drafts as reference 48 material or to cite them other than as "work in progress." 49 This Internet-Draft will expire on 22 February 2022. 51 Copyright Notice 53 Copyright (c) 2021 IETF Trust and the persons identified as the 54 document authors. All rights reserved. 56 This document is subject to BCP 78 and the IETF Trust's Legal 57 Provisions Relating to IETF Documents (https://trustee.ietf.org/ 58 license-info) in effect on the date of publication of this document. 59 Please review these documents carefully, as they describe your rights 60 and restrictions with respect to this document. Code Components 61 extracted from this document must include Simplified BSD License text 62 as described in Section 4.e of the Trust Legal Provisions and are 63 provided without warranty as described in the Simplified BSD License. 65 Table of Contents 67 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 68 2. Conventions used in this document . . . . . . . . . . . . . . 3 69 3. IGP extension for PCEP security capability support . . . . . 3 70 3.1. Use of PCEP security capability support for PCE 71 discovery . . . . . . . . . . . . . . . . . . . . . . . . 4 72 3.2. KEY-ID Sub-TLV . . . . . . . . . . . . . . . . . . . . . 4 73 3.3. KEY-CHAIN-NAME Sub-TLV . . . . . . . . . . . . . . . . . 5 74 4. Update to RFC5088 and RFC5089 . . . . . . . . . . . . . . . . 5 75 5. Backward Compatibility Consideration . . . . . . . . . . . . 6 76 6. Management Considerations . . . . . . . . . . . . . . . . . . 6 77 7. Security Considerations . . . . . . . . . . . . . . . . . . . 6 78 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 79 8.1. PCE Capability Flag . . . . . . . . . . . . . . . . . . . 7 80 8.2. PCED sub-TLV Type Indicators . . . . . . . . . . . . . . 7 81 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 7 82 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 83 10.1. Normative References . . . . . . . . . . . . . . . . . . 8 84 10.2. Informative References . . . . . . . . . . . . . . . . . 9 85 Appendix A. No MD5 Capability Support . . . . . . . . . . . . . 10 86 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10 88 1. Introduction 90 As described in [RFC5440], PCEP communication privacy is one 91 importance issue, as an attacker that intercepts a Path Computation 92 Element (PCE) message could obtain sensitive information related to 93 computed paths and resources. 95 Among the possible solutions mentioned in these documents, Transport 96 Layer Security (TLS) [RFC8446] provides support for peer 97 authentication, and message encryption and integrity while TCP 98 Authentication Option (TCP-AO) [RFC5925] and Cryptographic Algorithms 99 for TCP-AO [RFC5926] offer significantly improved security for 100 applications using TCP. As specified in section 4 of [RFC8253], in 101 order for a Path Computation Client (PCC) to establish a connection 102 with a PCE server using TLS or TCP-AO, PCC needs to know whether PCE 103 server supports TLS or TCP-AO as a secure transport. 105 [RFC5088] and [RFC5089] define a method to advertise path computation 106 capabilities using IGP flooding for OSPF and IS-IS respectively. 107 However these specifications lack a method to advertise PCEP security 108 (e.g., TLS) support capability. 110 This document defines capability flag bits for PCE-CAP-FLAGS sub-TLV 111 that can be announced as attributes in the IGP advertisement to 112 distribute PCEP security support information. In addition, this 113 document updates RFC5088 and RFC5089 to allow advertisement of Key ID 114 or Key Chain Name Sub-TLV to support TCP-AO security capability. 116 Note that the PCEP Open message exchange is another way to discover 117 PCE capabilities information, but in this instance, the TCP security 118 related key parameters need to be known before the PCEP session is 119 established and the PCEP Open messages are exchanged. Thus, the use 120 of the PCE discovery and capabilities advertisement of the IGP needs 121 to be leveraged. 123 2. Conventions used in this document 125 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 126 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 127 "OPTIONAL" in this document are to be interpreted as described in BCP 128 14 [RFC2119] [RFC8174] when, and only when, they appear in all 129 capitals, as shown here. 131 3. IGP extension for PCEP security capability support 133 [RFC5088] defines a PCE Discovery (PCED) TLV carried in an OSPF 134 Router Information Link State Advertisement (LSA) as defined in 135 [RFC7770] to facilitate PCE discovery using OSPF. This document 136 defines two capability flag bits in the OSPF PCE Capability Flags to 137 indicate TCP Authentication Option (TCP-AO) support 138 [RFC5925][RFC5926] and PCEP over TLS support [RFC8253] respectively. 140 Similarly, [RFC5089] defines the PCED sub-TLV for use in PCE 141 discovery using IS-IS. This document will use the same flag for the 142 OSPF PCE Capability Flags sub-TLV to allow IS-IS to indicate TCP 143 Authentication Option (TCP-AO) support, PCEP over TLS support 144 respectively. 146 The IANA assignments for shared OSPF and IS-IS Security Capability 147 Flags are documented in Section 8.1 ("OSPF PCE Capability Flags") of 148 this document. 150 3.1. Use of PCEP security capability support for PCE discovery 152 TCP-AO, PCEP over TLS support flag bits are advertised using IGP 153 flooding. 155 * PCE supports TCP-AO: IGP advertisement SHOULD include TCP-AO 156 support flag bit. 158 * PCE supports TLS: IGP advertisement SHOULD include PCEP over TLS 159 support flag bit. 161 If PCE supports multiple security mechanisms, it SHOULD include all 162 corresponding flag bits in IGP advertisement. 164 If the client is restricted to a PCE server with TCP-AO support, the 165 client MUST check if TCP-AO support flag bit in the PCE- CAP-FLAGS 166 sub-TLV is set. If not, the client SHOULD NOT consider this PCE. If 167 the client is restriced to a PCE server using TLS, the client MUST 168 check if PCEP over TLS support flag bit in the PCE-CAP-FLAGS sub-TLV 169 is set. If not, the client SHOULD NOT consider this PCE. Note that 170 this can be overridden based on a local policy at the PCC. 172 3.2. KEY-ID Sub-TLV 174 The KEY-ID sub-TLV specifies a key that can be used by the PCC to 175 identify the TCP-AO key [RFC5925]. 177 The KEY-ID sub-TLV MAY be present in the PCED sub-TLV carried within 178 the IS-IS Router Information Capability TLV when the capability flag 179 bit of PCE-CAP-FLAGS sub-TLV in IS-IS is set to indicate TCP 180 Authentication Option (TCP-AO) support. Similarly, this sub-TLV MAY 181 be present in the PCED TLV carried within OSPF Router Information LSA 182 when the capability flag bit of PCE-CAP-FLAGS sub-TLV in OSPF is set 183 to indicate TCP-AO support. 185 The KEY-ID sub-TLV has the following format: 187 Type: 6 188 Length: 4 190 KeyID: The one octet Key ID as per [RFC5925] to uniquely identify 191 the Master Key Tuple (MKT). 193 Reserved: MUST be set to zero while sending and ignored on 194 receipt. 196 3.3. KEY-CHAIN-NAME Sub-TLV 198 The KEY-CHAIN-NAME sub-TLV specifies a keychain name that can be used 199 by the PCC to identify the keychain [RFC8177]. 201 The KEY-CHAIN-NAME sub-TLV MAY be present in the PCED sub-TLV carried 202 within the IS-IS Router Information Capability TLV when the 203 capability flag bit of PCE-CAP-FLAGS sub-TLV in IS-IS is set to 204 indicate TCP Authentication Option (TCP-AO) support. Similarly, this 205 sub-TLV MAY be present in the PCED TLV carried within OSPF Router 206 Information LSA when the capability flag bit of PCE-CAP-FLAGS sub-TLV 207 in OSPF is set to indicate TCP-AO support. 209 The KEY-CHAIN-NAME sub-TLV has the following format: 211 Type: 7 213 Length: Variable 215 Key Name: The Key Chain Name contains a string to be used to 216 identify the key chain. It SHOULD be a string of printable ASCII 217 characters, without a NULL terminator. The sub-TLV MUST be zero- 218 padded so that the sub-TLV is 4-octet aligned. 220 4. Update to RFC5088 and RFC5089 222 Section 4 of [RFC5088] states that no new sub-TLVs will be added to 223 the PCED TLV, and no new PCE information will be carried in the 224 Router Information LSA. This document updates [RFC5088] by allowing 225 the two sub-TLVs defined in this document to be carried in the PCED 226 TLV advertised in the Router Information LSA. 228 Section 4 of [RFC5089] states that no new sub-TLVs will be added to 229 the PCED TLV, and no new PCE information will be carried in the 230 Router CAPABLITY TLV. This document updates [RFC5089] by allowing 231 the two sub-TLVs defined in this document to be carried in the PCED 232 TLV advertised in the Router CAPABILITY TLV. 234 The introduction of the additional sub-TLVs should be viewed as an 235 exception to the [RFC5088][RFC5089] policy justified by the 236 requirements to discover the PCEP security support prior to 237 establishing a PCEP session. The restrictions defined in 238 [RFC5089][RFC5089] should still be considered to be in place. 240 The registry for the PCE Capability Flags assigned in section 8.2 of 241 [RFC8231], section 6.9 of [RFC8306], and section 11.1 of [RFC8623] 242 has changed to the IGP Parameters "Path Computation Element (PCE) 243 Capability Flags" registry created in this document. 245 5. Backward Compatibility Consideration 247 An LSR that does not support the IGP PCE capability bits specified in 248 this document silently ignores those bits. 250 An LSR that does not support the KEYNAME sub-TLV specified in this 251 document silently ignores the sub-TLV. 253 IGP extensions defined in this document do not introduce any new 254 interoperability issues. 256 6. Management Considerations 258 A configuration option may be provided for advertising and 259 withdrawing PCEP security capability via OSPF and IS-IS. 261 7. Security Considerations 263 Security considerations as specified by [RFC5088] and [RFC5089] are 264 applicable to this document. 266 The information related to PCEP security is sensitive and due care 267 needs to be taken by the operator. This document defines new 268 capability bits that are susceptible to a downgrade attack by 269 toggling them. The content of Key ID or Key Chain Name Sub-TLV can 270 be tweaked to enable a man-in-the-middle attack. Thus before 271 advertising the PCEP security parameters, using the mechanism 272 described in this document, the IGP MUST be known to provide 273 authentication and integrity for the PCED TLV using the mechanisms 274 defined in [RFC5304], [RFC5310] or [RFC5709]. 276 Moreover, as stated in [RFC5088] and [RFC5089], if the IGP does not 277 provide any encryption mechanisms to protect the secrecy of the PCED 278 TLV, then the operator must ensure that no private data is carried in 279 the TLV, e.g. that key-ids or key-chain names do not reveal sensitive 280 information about the network. 282 8. IANA Considerations 284 8.1. PCE Capability Flag 286 IANA is requested to move the "PCE Capability Flags" registry from 287 "Open Shortest Path First v2 (OSPFv2) Parameters" to under the IANA 288 Common IGP parameters registry and allocate new bits assignments for 289 the IGP Parameters "Path Computation Element (PCE) Capability Flags" 290 registry. 292 Bit Meaning Reference 293 xx TCP-AO Support [This.I.D] 294 xx PCEP over TLS support [This.I.D] 296 The registry is located at: https://www.iana.org/assignments/igp- 297 parameters/igp-parameters.xhtml 299 8.2. PCED sub-TLV Type Indicators 301 The PCED sub-TLVs were defined in [RFC5088] and [RFC5089], but they 302 did not create a registry for it. This document requests IANA to 303 create a new subregistry called "PCED sub-TLV type indicators" under 304 the "Interior Gateway Protocol (IGP) Parameters" registry. The 305 registration policy for this subregistry is "IETF Review" [RFC8126]. 306 Values in this subregistry come from the range 0-65535. 308 This subregistry should be populated with: 310 Value Description Reference 311 0 Reserved [This.I.D][RFC5088] 312 1 PCE-ADDRESS [This.I.D][RFC5088] 313 2 PATH-SCOPE [This.I.D][RFC5088] 314 3 PCE-DOMAIN [This.I.D][RFC5088] 315 5 PCE-CAP-FLAGS [This.I.D][RFC5088] 316 4 NEIG-PCE-DOMAIN [This.I.D][RFC5088] 317 6 KEY-ID [This.I.D] 318 7 KEY-CHAIN-NAME [This.I.D] 320 This registry is located at: https://www.iana.org/assignments/igp- 321 parameters/igp-parameters.xhtml and used by both OSPF PCED TLV and 322 IS-IS PCED sub-TLV. 324 9. Acknowledgments 326 The authors of this document would also like to thank Acee Lindem, 327 Julien Meuric, Les Ginsberg, Ketan Talaulikar, Yaron Sheffer, Tom 328 Petch, Aijun Wang, Adrian Farrel for the review and comments. 330 The authors would also like to speical thank Michale Wang for his 331 major contributions to the initial version. 333 10. References 335 10.1. Normative References 337 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 338 Requirement Levels", BCP 14, RFC 2119, 339 DOI 10.17487/RFC2119, March 1997, 340 . 342 [RFC5088] Le Roux, JL., Ed., Vasseur, JP., Ed., Ikejiri, Y., and R. 343 Zhang, "OSPF Protocol Extensions for Path Computation 344 Element (PCE) Discovery", RFC 5088, DOI 10.17487/RFC5088, 345 January 2008, . 347 [RFC5089] Le Roux, JL., Ed., Vasseur, JP., Ed., Ikejiri, Y., and R. 348 Zhang, "IS-IS Protocol Extensions for Path Computation 349 Element (PCE) Discovery", RFC 5089, DOI 10.17487/RFC5089, 350 January 2008, . 352 [RFC5925] Touch, J., Mankin, A., and R. Bonica, "The TCP 353 Authentication Option", RFC 5925, DOI 10.17487/RFC5925, 354 June 2010, . 356 [RFC5926] Lebovitz, G. and E. Rescorla, "Cryptographic Algorithms 357 for the TCP Authentication Option (TCP-AO)", RFC 5926, 358 DOI 10.17487/RFC5926, June 2010, 359 . 361 [RFC8253] Lopez, D., Gonzalez de Dios, O., Wu, Q., and D. Dhody, 362 "PCEPS: Usage of TLS to Provide a Secure Transport for the 363 Path Computation Element Communication Protocol (PCEP)", 364 RFC 8253, DOI 10.17487/RFC8253, October 2017, 365 . 367 [RFC8177] Lindem, A., Ed., Qu, Y., Yeung, D., Chen, I., and J. 368 Zhang, "YANG Data Model for Key Chains", RFC 8177, 369 DOI 10.17487/RFC8177, June 2017, 370 . 372 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 373 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 374 May 2017, . 376 [RFC7770] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and 377 S. Shaffer, "Extensions to OSPF for Advertising Optional 378 Router Capabilities", RFC 7770, DOI 10.17487/RFC7770, 379 February 2016, . 381 [RFC5304] Li, T. and R. Atkinson, "IS-IS Cryptographic 382 Authentication", RFC 5304, DOI 10.17487/RFC5304, October 383 2008, . 385 [RFC5310] Bhatia, M., Manral, V., Li, T., Atkinson, R., White, R., 386 and M. Fanto, "IS-IS Generic Cryptographic 387 Authentication", RFC 5310, DOI 10.17487/RFC5310, February 388 2009, . 390 [RFC5709] Bhatia, M., Manral, V., Fanto, M., White, R., Barnes, M., 391 Li, T., and R. Atkinson, "OSPFv2 HMAC-SHA Cryptographic 392 Authentication", RFC 5709, DOI 10.17487/RFC5709, October 393 2009, . 395 [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for 396 Writing an IANA Considerations Section in RFCs", BCP 26, 397 RFC 8126, DOI 10.17487/RFC8126, June 2017, 398 . 400 [RFC8231] Crabbe, E., Minei, I., Medved, J., and R. Varga, "Path 401 Computation Element Communication Protocol (PCEP) 402 Extensions for Stateful PCE", RFC 8231, 403 DOI 10.17487/RFC8231, September 2017, 404 . 406 [RFC8306] Zhao, Q., Dhody, D., Ed., Palleti, R., and D. King, 407 "Extensions to the Path Computation Element Communication 408 Protocol (PCEP) for Point-to-Multipoint Traffic 409 Engineering Label Switched Paths", RFC 8306, 410 DOI 10.17487/RFC8306, November 2017, 411 . 413 [RFC8623] Palle, U., Dhody, D., Tanaka, Y., and V. Beeram, "Stateful 414 Path Computation Element (PCE) Protocol Extensions for 415 Usage with Point-to-Multipoint TE Label Switched Paths 416 (LSPs)", RFC 8623, DOI 10.17487/RFC8623, June 2019, 417 . 419 10.2. Informative References 421 [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation 422 Element (PCE) Communication Protocol (PCEP)", RFC 5440, 423 DOI 10.17487/RFC5440, March 2009, 424 . 426 [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol 427 Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, 428 . 430 Appendix A. No MD5 Capability Support 432 To be compliant with Section 10.2 of RFC5440, this document doesn't 433 consider adding capability for TCP-MD5. Therefore by default, a PCEP 434 Speaker supports the capability for TCP-MD5 (See section 10.2, 435 [RFC5440]). A method to advertise TCP-MD5 Capability support using 436 IGP flooding is not required. If the client is looking for a PCE 437 server with other Security capability support (e.g., TLS support) 438 than TCP-MD5, the client MUST check if the corresponding flag bit in 439 the PCE-CAP-FLAGS sub-TLV is set (See section 3.1). Irrespective of 440 which security capability (e.g., TCP-MD5) is selected, the same key- 441 ids or key-chain names on the PCC and PCE server should be 442 configured. 444 Authors' Addresses 446 Diego R. Lopez 447 Telefonica I+D 448 Spain 450 Email: diego.r.lopez@telefonica.com 452 Qin Wu 453 Huawei Technologies 454 101 Software Avenue, Yuhua District 455 Nanjing 456 Jiangsu, 210012 457 China 459 Email: bill.wu@huawei.com 460 Dhruv Dhody 461 Huawei Technologies 462 Divyashree Techno Park, Whitefield 463 Bangalore 560037 464 Karnataka 465 India 467 Email: dhruv.ietf@gmail.com 469 Qiufang Ma 470 Huawei 471 101 Software Avenue, Yuhua District 472 Nanjing 473 Jiangsu, 210012 474 China 476 Email: maqiufang1@huawei.com 478 Daniel King 479 Old Dog Consulting 480 United Kingdom 482 Email: daniel@olddog.co.uk