idnits 2.17.1 draft-stone-pce-local-protection-enforcement-00.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 seems to lack the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. (The document does seem to have the reference to RFC 2119 which the ID-Checklist requires). -- The document date (March 2, 2020) is 1516 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) ** Downref: Normative reference to an Informational RFC: RFC 4655 ** Obsolete normative reference: RFC 7525 (Obsoleted by RFC 9325) ** Obsolete normative reference: RFC 7752 (Obsoleted by RFC 9552) Summary: 3 errors (**), 0 flaws (~~), 2 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group A. Stone 3 Internet-Draft M. Aissaoui 4 Intended status: Standards Track Nokia 5 Expires: September 3, 2020 S. Sivabalan 6 Cisco Systems, Inc. 7 March 2, 2020 9 Local Protection Enforcement in PCEP 10 draft-stone-pce-local-protection-enforcement-00 12 Abstract 14 This document aims to clarify existing usage of the local protection 15 desired bit signalled in Path Computation Element Protocol (PCEP). 16 This document also introduces a new flag for signalling protection 17 strictness in PCEP. 19 Status of This Memo 21 This Internet-Draft is submitted in full conformance with the 22 provisions of BCP 78 and BCP 79. 24 Internet-Drafts are working documents of the Internet Engineering 25 Task Force (IETF). Note that other groups may also distribute 26 working documents as Internet-Drafts. The list of current Internet- 27 Drafts is at https://datatracker.ietf.org/drafts/current/. 29 Internet-Drafts are draft documents valid for a maximum of six months 30 and may be updated, replaced, or obsoleted by other documents at any 31 time. It is inappropriate to use Internet-Drafts as reference 32 material or to cite them other than as "work in progress." 34 This Internet-Draft will expire on September 3, 2020. 36 Copyright Notice 38 Copyright (c) 2020 IETF Trust and the persons identified as the 39 document authors. All rights reserved. 41 This document is subject to BCP 78 and the IETF Trust's Legal 42 Provisions Relating to IETF Documents 43 (https://trustee.ietf.org/license-info) in effect on the date of 44 publication of this document. Please review these documents 45 carefully, as they describe your rights and restrictions with respect 46 to this document. Code Components extracted from this document must 47 include Simplified BSD License text as described in Section 4.e of 48 the Trust Legal Provisions and are provided without warranty as 49 described in the Simplified BSD License. 51 1. Introduction 53 Path Computation Element (PCE) Communication Protocol (PCEP) 54 [RFC5440] enables the communication between a Path Computation Client 55 (PCC) and a Path Control Element (PCE), or between two PCEs based on 56 the PCE architecture [RFC4655]. 58 PCEP [RFC5440] utilizes flags, values and concepts previously defined 59 in RSVP-TE Extensions [RFC3209] and Fast Reroute Extensions to RSVP- 60 TE [RFC4090]. One such concept in PCEP is the 'Local Protection 61 Desired' (L-flag in the LSPA Object in RFC5440), which was originally 62 defined in the SESSION-ATTRIBUTE Object in RFC3209. In RSVP, this 63 flag signals to downstream routers that local protection is desired, 64 which indicates to transit routers that they may use a local repair 65 mechanism. The headend router calculating the path does not know 66 whether a downstream router will or will not protect a hop during 67 it's calculation. Therefore, a local protection desired does not 68 require the transit router to satisfy protection in order to 69 establish the RSVP signalled path. This flag is signalled in PCEP as 70 an attribute of the LSP via the LSP Attributes object. 72 PCEP Extensions for Segment Routing (draft-ietf-pce-segment-routing) 73 extends support in PCEP for Segment Routed LSPs (SR-LSPs) as defined 74 in the Segment Routing Architecture [RFC8402]. As per the Segment 75 Routing Architecture, Adjacency Segment Identifiers(Adj-SID) may be 76 eligible for protection (using IPFRR or MPLS-FRR). The protection 77 eligibility is advertised into IGP (draft-ietf-ospf-segment-routing- 78 extensions and draft-ietf-isis-segment-routing-extensions) as the 79 B-Flag part of the Adjacency SID sub-tlv and can be discovered by a 80 PCE via BGP-LS [RFC7752] using the BGP-LS Segment Routing Extensions 81 (draft-ietf-idr-bgp-ls-segment-routing-ext). An Adjacency SID may or 82 may not have protection eligibility and for a given adjacency between 83 two routers there may be multiple Adjacency SIDs, some of which are 84 protected and some which are not. 86 A Segment Routed path calculated by PCE may contain various types of 87 segments, as defined in [RFC8402] such as Adjacency, Node or Binding. 88 The protection eligibility for Adjacency SIDs can be discovered by 89 PCE, so therefore the PCE can take the protection eligibility into 90 consideration as a path constraint. If a path is calculated to 91 include other segment identifiers which are not applicable to having 92 their protection state advertised, as they may only be locally 93 significant for each router processing the SID such as Node SIDs, it 94 may not be possible for PCE to include the protection constraint as 95 part of the path calculation. 97 It is desirable for an operator to define the enforcement, or 98 strictness of the protection requirement when it can be applied. 100 2. Requirements Language 102 In this document, the key words "MUST", "MUST NOT", "REQUIRED", 103 "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", 104 and "OPTIONAL" are to be interpreted as described in BCP 14, 105 [RFC2119]. 107 3. Terminology 109 This document uses the following terminology: 111 PROTECTION MANDATORY: path MUST have protection eligibility on all 112 links. 114 UNPROTECTED MANDATORY: path MUST NOT have protection eligibility on 115 all links. 117 PROTECTION PREFERRED: path SHOULD have protection eligibility on all 118 links but MAY contain links which do not have protection eligibility. 120 UNPROTECTED PREFERRED: path SHOULD NOT have protection eligibility on 121 all links but MAY contain links which have protection eligibility. 123 PCC: Path Computation Client. Any client application requesting a 124 path computation to be performed by a Path Computation Element. 126 PCE: Path Computation Element. An entity (component, application, or 127 network node) that is capable of computing a network path or route 128 based on a network graph and applying computational constraints. 130 PCEP: Path Computation Element Protocol. 132 4. Motivation 134 4.1. Implementation differences 136 As defined in [RFC5440] the mechanism to signal protection 137 enforcement in PCEP is with the previously mentioned L-flag defined 138 in the LSPA Object. The name of the flag uses the term "Desired", 139 which by definition means "strongly wished for or intended" and is 140 rooted in the RSVP use case. For RSVP, this is not within control of 141 the PCE. However, [RFC5440] does state "When set, this means that 142 the computed path must include links protected with Fast Reroute as 143 defined in [RFC4090]." Implementations of [RFC5440] have either 144 interpreted the L-Flag as PROTECTION MANDATORY or PROTECTION 145 PREFERRED, leading to operational differences. 147 4.2. SLA Enforcement 149 The boolean bit flag is unable to distinguish between the different 150 options of PROTECTION MANDATORY, UNPROTECTED MANDATORY, PROTECTION 151 PREFERRED and UNPROTECTED PREFERRED. The selection of the options 152 are typically dependent on the service level agreement the operator 153 wishes to impose on the LSP. When enforcement is used, the resulting 154 shortest path calculation is impacted. 156 For example, PROTECTION MANDATORY is for use cases where an operator 157 may need the LSP to follow a path which has local protection provided 158 along the full path, ensuring that if there is anywhere along the 159 path that traffic will be fast re-routed at the point of failure. 161 For another example, UNPROTECTED MANDATORY is when an operator may 162 intentionally prefer an LSP to not be locally protected, and thus 163 would rather local failures to cause the LSP to go down and/or rely 164 on other protection mechanisms such as a secondary diverse path. 166 There are also use cases where there is simply no requirement to 167 enforce protection or no protection along a path. This can be 168 considered as "do not care to enforce". This is a relaxation of the 169 protection constraint. The path calculation is permitted the use of 170 any SID which is available along the calculated path. The SID backup 171 availability does not impact the shortest path computation. Since 172 links may have both protected and unprotected SIDs available, the 173 option PROTECTION PREFERRED or UNPROTECTED PREFERRED is used to 174 instruction PCE a preference on which SID to select, as the behaviour 175 of the LSP would differ during a local failure depending on which SID 176 is selected. 178 5. Protection Enforcement Flag (E-Flag) 180 Section 7.11 in Path Computation Element Protocol [RFC5440] describes 181 the encoding of the Local Protection Desired (L-Flag). A new flag is 182 proposed in this document in the LSP Attributes Object which extends 183 the L-Flag to identify the protection enforcement. 185 The flag bit is to be allocated by IANA following IETF Consensus. 187 This draft version proposes using bit 6. 189 Codespace of the Flag field (LSPA Object) 191 Bit Description Reference 193 7 Local Protection Desired RFC5440 195 6 Local Protection Enforcement This document 197 The format of the LSPA Object as defined in [RFC5440] is: 199 0 1 2 3 200 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 201 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 202 | Exclude-any | 203 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 204 | Include-any | 205 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 206 | Include-all | 207 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 208 | Setup Prio | Holding Prio | Flags |E|L| Reserved | 209 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 210 | | 211 // Optional TLVs // 212 | | 213 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 215 Flags (8 bits) 217 o L flag: As defined in [RFC5440] and further updated by this 218 document. When set, protection is desired. When not set, 219 protection is not desired. The enforcement of the protection is 220 identified via the E-Flag. 222 o E flag (Protection Enforcement): When set, the value of the L-Flag 223 MUST be treated as a MUST constraint where applicable, when 224 protection state of a SID is known. When E flag is not set, the 225 value of the L-Flag MUST be treated as a MAY constraint. 227 When L-flag is set and E-flag is set then PCE MUST consider the 228 protection eligibility as PROTECTION MANDATORY constraint. 230 When L-flag is set and E-flag is not set then PCE MUST consider the 231 protection eligibility as PROTECTION PREFERRED constraint. 233 When L-flag is not set and E-flag is not set then PCE SHOULD consider 234 the protection eligibility as UNPROTECTED PREFERRED but MAY consider 235 protection eligibility as UNPROTECTED MANDATORY constraint. 237 When L-flag is not set and E-flag is set then PCE MUST consider the 238 protection eligibility as UNPROTECTED MANDATORY constraint. 240 For a PCC which does not yet support this draft, the E-flag bit is 241 always set to zero as per [RFC5440]. Therefore, a PCE communicating 242 with a PCC which does not support this draft would treat the L-Flag 243 set as being PROTECTION PREFERRED. 245 The protection constraint can only be applied to resource selection 246 in which the protection state is known to PCE. A PCE calculating a 247 path that includes resources which does not support the protection 248 state being known to PCE (such as Node SID), then the protection 249 state MAY ignore the protection enforcement constraint. 251 UNPROTECTED PREFERRED and PROTECTED PREFERRED may seem similar but 252 they indicate the preference of selection if PCE has an option of 253 either protected or unprotected available for a link. When presented 254 with either option, PCE SHOULD select the SID which has a protection 255 state matching the state of the L-Flag. 257 6. Security Considerations 259 This document clarifies the behaviour of an existing flag and 260 introduces a new flag to provide further control of that existing 261 behaviour. The introduction of this new flag and behaviour 262 clarification does not create any new sensitive information. No 263 additional security measure is required. 265 Securing the PCEP session using Transport Layer Security (TLS) 266 [RFC8253], as per the recommendations and best current practices in 267 [RFC7525],, is RECOMMENDED. 269 7. IANA Considerations 271 8. LSP Attributes Protection Enforcement Flag 273 This document defines a new LSP Attribute Flag; IANA is requested to 274 make the following bit allocation from the "LSPA Object" sub registry 275 of the PCEP Numbers registry, as follows: 277 Value Name Reference 279 6 PROTECTION-ENFORCEMENT This document 281 9. Normative References 283 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 284 Requirement Levels", BCP 14, RFC 2119, March 1997. 286 [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., 287 and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP 288 Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, 289 . 291 [RFC4090] Pan, P., Ed., Swallow, G., Ed., and A. Atlas, Ed., "Fast 292 Reroute Extensions to RSVP-TE for LSP Tunnels", RFC 4090, 293 DOI 10.17487/RFC4090, May 2005, 294 . 296 [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation 297 Element (PCE)-Based Architecture", RFC 4655, 298 DOI 10.17487/RFC4655, August 2006, 299 . 301 [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation 302 Element (PCE) Communication Protocol (PCEP)", RFC 5440, 303 DOI 10.17487/RFC5440, March 2009, 304 . 306 [RFC7525] Sheffer, Y., Holz, R., and P. Saint-Andre, 307 "Recommendations for Secure Use of Transport Layer 308 Security (TLS) and Datagram Transport Layer Security 309 (DTLS)", BCP 195, RFC 7525, DOI 10.17487/RFC7525, May 310 2015, . 312 [RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and 313 S. Ray, "North-Bound Distribution of Link-State and 314 Traffic Engineering (TE) Information Using BGP", RFC 7752, 315 DOI 10.17487/RFC7752, March 2016, 316 . 318 [RFC8253] Lopez, D., Gonzalez de Dios, O., Wu, Q., and D. Dhody, 319 "PCEPS: Usage of TLS to Provide a Secure Transport for the 320 Path Computation Element Communication Protocol (PCEP)", 321 RFC 8253, DOI 10.17487/RFC8253, October 2017, 322 . 324 [RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., 325 Decraene, B., Litkowski, S., and R. Shakir, "Segment 326 Routing Architecture", RFC 8402, DOI 10.17487/RFC8402, 327 July 2018, . 329 Authors' Addresses 331 Andrew Stone 332 Nokia 334 Email: andrew.stone@nokia.com 336 Mustapha Aissaoui 337 Nokia 339 Email: mustapha.aissaoui@nokia.com 341 Siva Sivabalan 342 Cisco Systems, Inc. 344 Email: msiva@cisco.com