idnits 2.17.00 (12 Aug 2021) /tmp/idnits11045/draft-ietf-ospf-segment-routing-msd-12.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 -- however, there's a paragraph with a matching beginning. Boilerplate error? (The document does seem to have the reference to RFC 2119 which the ID-Checklist requires). -- The document date (May 09, 2018) is 1473 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) ** Obsolete normative reference: RFC 4970 (Obsoleted by RFC 7770) == Outdated reference: draft-ietf-idr-bgp-ls-segment-routing-msd has been published as RFC 8814 == Outdated reference: draft-ietf-ospf-mpls-elc has been published as RFC 9089 == Outdated reference: draft-ietf-pce-segment-routing has been published as RFC 8664 Summary: 1 error (**), 0 flaws (~~), 5 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 OSPF Working Group J. Tantsura 3 Internet-Draft Nuage Networks 4 Intended status: Standards Track U. Chunduri 5 Expires: November 10, 2018 Huawei Technologies 6 S. Aldrin 7 Google, Inc 8 P. Psenak 9 Cisco Systems 10 May 09, 2018 12 Signaling MSD (Maximum SID Depth) using OSPF 13 draft-ietf-ospf-segment-routing-msd-12 15 Abstract 17 This document defines a way for an OSPF Router to advertise multiple 18 types of supported Maximum SID Depths (MSDs) at node and/or link 19 granularity. Such advertisements allow entities (e.g., centralized 20 controllers) to determine whether a particular SID stack can be 21 supported in a given network. This document defines only one type of 22 MSD, but defines an encoding that can support other MSD types. Here 23 the term OSPF means both OSPFv2 and OSPFv3. 25 Status of This Memo 27 This Internet-Draft is submitted in full conformance with the 28 provisions of BCP 78 and BCP 79. 30 Internet-Drafts are working documents of the Internet Engineering 31 Task Force (IETF). Note that other groups may also distribute 32 working documents as Internet-Drafts. The list of current Internet- 33 Drafts is at https://datatracker.ietf.org/drafts/current/. 35 Internet-Drafts are draft documents valid for a maximum of six months 36 and may be updated, replaced, or obsoleted by other documents at any 37 time. It is inappropriate to use Internet-Drafts as reference 38 material or to cite them other than as "work in progress." 40 This Internet-Draft will expire on November 10, 2018. 42 Copyright Notice 44 Copyright (c) 2018 IETF Trust and the persons identified as the 45 document authors. All rights reserved. 47 This document is subject to BCP 78 and the IETF Trust's Legal 48 Provisions Relating to IETF Documents 49 (https://trustee.ietf.org/license-info) in effect on the date of 50 publication of this document. Please review these documents 51 carefully, as they describe your rights and restrictions with respect 52 to this document. Code Components extracted from this document must 53 include Simplified BSD License text as described in Section 4.e of 54 the Trust Legal Provisions and are provided without warranty as 55 described in the Simplified BSD License. 57 Table of Contents 59 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 60 1.1. Conventions used in this document . . . . . . . . . . . . 3 61 1.1.1. Terminology . . . . . . . . . . . . . . . . . . . . . 3 62 1.2. Requirements Language . . . . . . . . . . . . . . . . . . 4 63 2. Node MSD Advertisement . . . . . . . . . . . . . . . . . . . 4 64 3. Link MSD sub-TLV . . . . . . . . . . . . . . . . . . . . . . 5 65 4. Using Node and Link MSD Advertisements . . . . . . . . . . . 6 66 5. Base MPLS Imposition MSD . . . . . . . . . . . . . . . . . . 6 67 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 68 7. Security Considerations . . . . . . . . . . . . . . . . . . . 7 69 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 7 70 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 71 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 72 10.1. Normative References . . . . . . . . . . . . . . . . . . 8 73 10.2. Informative References . . . . . . . . . . . . . . . . . 9 74 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 76 1. Introduction 78 When Segment Routing(SR) paths are computed by a centralized 79 controller, it is critical that the controller learns the Maximum SID 80 Depth(MSD) that can be imposed at each node/link on a given SR path 81 to insure that the SID stack depth of a computed path doesn't exceed 82 the number of SIDs the node is capable of imposing. 84 The PCEP SR extensions draft [I-D.ietf-pce-segment-routing] signals 85 MSD in SR PCE Capability TLV and METRIC Object. However, if PCEP is 86 not supported/configured on the head-end of an SR tunnel or a 87 Binding-SID anchor node and controller does not participate in IGP 88 routing, it has no way to learn the MSD of nodes and links. BGP-LS 89 [RFC7752] defines a way to expose topology and associated attributes 90 and capabilities of the nodes in that topology to a centralized 91 controller. MSD signaling by BGP-LS has been defined in 92 [I-D.ietf-idr-bgp-ls-segment-routing-msd]. Typically, BGP-LS is 93 configured on a small number of nodes that do not necessarily act as 94 head-ends. In order for BGP-LS to signal MSD for all the nodes and 95 links in the network MSD is relevant, MSD capabilites should be 96 advertised by every OSPF router in the network. 98 Other types of MSD are known to be useful. For example, 99 [I-D.ietf-ospf-mpls-elc] defines Readable Label Depth Capability 100 (RLDC) that is used by a head-end to insert an Entropy Label (EL) at 101 a depth that can be read by transit nodes. 103 This document defines an extension to OSPF used to advertise one or 104 more types of MSD at node and/or link granularity. It also creates 105 an IANA registry for assigning MSD type identifiers. It also defines 106 the Base MPLS Imposition MSD type. In the future it is expected, 107 that new MSD types will be defined to signal additional capabilities 108 e.g., entropy labels, SIDs that can be imposed through recirculation, 109 or SIDs associated with another dataplane e.g., IPv6. Although MSD 110 advertisements are associated with Segment Routing, the 111 advertisements MAY be present even if Segment Routing itself is not 112 enabled. 114 1.1. Conventions used in this document 116 1.1.1. Terminology 118 This memo makes use of the terms defined in [RFC7770] 120 BGP-LS: Distribution of Link-State and TE Information using Border 121 Gateway Protocol 123 BMI: Base MPLS Imposition is the number of MPLS labels that can be 124 imposed inclusive of all service/transport/special labels 126 OSPF: Open Shortest Path First 128 MSD: Maximum SID Depth - the number of SIDs a node or one of its 129 links can support 131 PCC: Path Computation Client 133 PCE: Path Computation Element 135 PCEP: Path Computation Element Protocol 137 SR: Segment Routing 139 SID: Segment Identifier 141 LSA: Link state advertisement 143 RI: Router Information LSA 145 1.2. Requirements Language 147 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 148 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 149 "OPTIONAL" in this document are to be interpreted as described in 150 BCP14 [RFC2119], [RFC8174] when, and only when they appear in all 151 capitals, as shown here . 153 2. Node MSD Advertisement 155 The node MSD TLV within the body of the OSPF RI Opaque LSA is defined 156 to carry the provisioned SID depth of the router originating the RI 157 LSA. Node MSD is the smallest MSD supported by the node on the set 158 of interfaces configured for use by the advertising IGP instance. 159 MSD values may be learned via a hardware API or may be provisioned.. 161 0 1 2 3 162 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 164 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 165 | Type | Length | 166 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 167 | MSD Type and Value ... 168 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ... 170 Figure 1: Node MSD TLV 172 The Type: TBD1 174 Length: variable (minimum of 2, multiple of 2 octets) and represents 175 the total length of value field. 177 Value: consists of one or more pairs of a 1 octet type (IANA 178 Registry) and 1 octet value. 180 MSD Type 1 (IANA Section), MSD and the Value field contains the MSD 181 of the originating router. Node MSD is a number in the range of 182 0-255. 0 represents lack of the ability to impose MSD stack of any 183 depth; any other value represents that of the node. This value 184 SHOULD represent the minimum value supported by a node. 186 Other MSD Types are reserved for future extensions. 188 This TLV is applicable to OSPFv2 and to OSPFv3 [RFC5838] and is 189 optional. The scope of the advertisement is specific to the 190 deployment. 192 When multiple Node MSD TLVs are received from a given router, the 193 receiver MUST use the first occurrence of the TLV in the Router 194 Information LSA. If the Node MSD TLV appears in multiple Router 195 Information LSAs that have different flooding scopes, the Node MSD 196 TLV in the Router Information LSA with the area-scoped flooding scope 197 MUST be used. If the Node MSD TLV appears in multiple Router 198 Information LSAs that have the same flooding scope, the Node MSD TLV 199 in the Router Information (RI) LSA with the numerically smallest 200 Instance ID MUST be used and subsequent instances of the Node MSD TLV 201 MUST be ignored. The RI LSA can be advertised at any of the defined 202 opaque flooding scopes (link, area, or Autonomous System (AS)). For 203 the purpose of Node MSD TLV advertisement, area-scoped flooding is 204 REQUIRED. 206 3. Link MSD sub-TLV 208 The link sub-TLV is defined to carry the MSD of the interface 209 associated with the link. MSD values may be learned via a hardware 210 API or may be provisioned. 212 0 1 2 3 213 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 215 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 216 | Type | Length | 217 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 218 | MSD Type and Value ... 219 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ... 221 Figure 2: Link MSD Sub-TLV 223 Type: 225 For OSPFv2, the Link level MSD value is advertised as an optional 226 Sub-TLV of the OSPFv2 Extended Link TLV as defined in [RFC7684], and 227 has value of TBD2. 229 For OSPFv3, the Link level MSD value is advertised as an optional 230 Sub-TLV of the E-Router-LSA TLV as defined in [RFC8362], and has 231 value of TBD3. 233 Length: variable and similar to that, defined in Section 2. 235 Value: consists of one or more pairs of a 1 octet MSD Type (IANA 236 Registry) and 1 octet value. 238 MSD Type 1 (IANA Section), MSD and the Value field contains Link MSD 239 of the router originating the corresponding LSA as specified for 240 OSPFv2 and OSPFv3. Link MSD is a number in the range of 0-255. 0 241 represents lack of the ability to impose MSD stack of any depth; any 242 other value represents that of the particular link MSD value. 244 Other MSD Types are reserved for future extensions. 246 If this TLV is advertised multiple times in the same OSPFv2 Extended 247 Link Opaque LSA, only the first instance of the TLV is used by 248 receiving OSPFv2 routers. This situation SHOULD be logged as an 249 error. 251 If this TLV is advertised multiple times for the same link in 252 different OSPFv2 Extended Link Opaque LSAs originated by the same 253 OSPFv2 router, the OSPFv2 Extended Link TLV in the OSPFv2 Extended 254 Link Opaque LSA with the smallest Opaque ID is used by receiving 255 OSPFv2 routers. This situation may be logged as a warning. 257 4. Using Node and Link MSD Advertisements 259 When Link MSD is present for a given MSD type, the value of the Link 260 MSD MUST take preference over the Node MSD. When a Link MSD type is 261 not signalled but the Node MSD type is, then the value of that Link 262 MSD type MUST be considered as the corresponding Node MSD type value. 263 In order to increase flooding efficiency, it is RECOMMENDED, that 264 routers with homogenous link MSD values advertise just the Node MSD 265 value. 267 The meaning of the absence of both Node and Link MSD advertisements 268 for a given MSD type is specific to the MSD type. Generally it can 269 only be inferred that the advertising node does not support 270 advertisement of that MSD type. However, in some cases the lack of 271 advertisement might imply that the functionality associated with the 272 MSD type is not supported. The correct interpretation MUST be 273 specified when an MSD type is defined. 275 5. Base MPLS Imposition MSD 277 The Base MPLS Imposition MSD (BMI-MSD) signals the total number of 278 MPLS labels a node is capable of imposing, including all 279 service/transport/special labels. 281 Absence of BMI-MSD advertisements indicates solely that the 282 advertising node does not support advertisement of this capability. 284 6. IANA Considerations 286 This document requests IANA to allocate TLV type (TBD1) from the OSPF 287 Router Information (RI) TLVs Registry as defined by [RFC4970]. IANA 288 has allocated the value 12 through the early assignment process. 289 Also, this document requests IANA to allocate a sub-TLV type (TBD2) 290 from the OSPFv2 Extended Link TLV Sub-TLVs registry. IANA has 291 allocated the the value 6 through the early assignment process. 292 Finally, this document requests IANA to allocate a sub-TLV type 293 (TBD3) from the OSPFv3 Extended-LSA Sub-TLV registry. 295 This document requests creation of an IANA managed registry under a 296 new category of "Interior Gateway Protocol (IGP) Parameters" IANA 297 registries to identify MSD types as proposed in Section 2, Section 3. 298 The registration procedure is "Expert Review" as defined in 299 [RFC8126]. The suggested registry name is "MSD types". Types are an 300 unsigned 8 bit number. The following values are defined by this 301 document. 303 Value Name Reference 304 ----- --------------------- ------------- 305 0 Reserved This document 306 1 Base MPLS Imposition MSD This document 307 2-250 Unassigned This document 308 251-254 Experimental This document 309 255 Reserved This document 311 Figure 3: MSD Types Codepoints Registry 313 7. Security Considerations 315 Security concerns for OSPF are addressed in [RFC7474]. Further 316 security analysis for OSPF protocol is done in [RFC6863] including 317 analysis of both the above documents. Security considerations, as 318 specified by [RFC7770], [RFC7684] and [RFC8362] are applicable to 319 this document. 321 Advertisement of an incorrect MSD value may result: in a path 322 computation failing and the service unavailable or instantiation of a 323 path that can't be supported by the head-end (the node performing the 324 imposition). 326 8. Contributors 328 The following people contributed to this document: 330 Les Ginsberg 331 Email: ginsberg@cisco.com 333 9. Acknowledgements 335 The authors would like to thank Acee Lindem, Ketan Talaulikar, 336 Stephane Litkowski and Bruno Decraene for their reviews and valuable 337 comments. 339 10. References 341 10.1. Normative References 343 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 344 Requirement Levels", BCP 14, RFC 2119, 345 DOI 10.17487/RFC2119, March 1997, 346 . 348 [RFC4970] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and 349 S. Shaffer, "Extensions to OSPF for Advertising Optional 350 Router Capabilities", RFC 4970, DOI 10.17487/RFC4970, July 351 2007, . 353 [RFC7474] Bhatia, M., Hartman, S., Zhang, D., and A. Lindem, Ed., 354 "Security Extension for OSPFv2 When Using Manual Key 355 Management", RFC 7474, DOI 10.17487/RFC7474, April 2015, 356 . 358 [RFC7684] Psenak, P., Gredler, H., Shakir, R., Henderickx, W., 359 Tantsura, J., and A. Lindem, "OSPFv2 Prefix/Link Attribute 360 Advertisement", RFC 7684, DOI 10.17487/RFC7684, November 361 2015, . 363 [RFC7770] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and 364 S. Shaffer, "Extensions to OSPF for Advertising Optional 365 Router Capabilities", RFC 7770, DOI 10.17487/RFC7770, 366 February 2016, . 368 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 369 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 370 May 2017, . 372 [RFC8362] Lindem, A., Roy, A., Goethals, D., Reddy Vallem, V., and 373 F. Baker, "OSPFv3 Link State Advertisement (LSA) 374 Extensibility", RFC 8362, DOI 10.17487/RFC8362, April 375 2018, . 377 10.2. Informative References 379 [I-D.ietf-idr-bgp-ls-segment-routing-msd] 380 Tantsura, J., Chunduri, U., Mirsky, G., and S. Sivabalan, 381 "Signaling Maximum SID Depth using Border Gateway Protocol 382 Link-State", draft-ietf-idr-bgp-ls-segment-routing-msd-01 383 (work in progress), October 2017. 385 [I-D.ietf-ospf-mpls-elc] 386 Xu, X., Kini, S., Sivabalan, S., Filsfils, C., and S. 387 Litkowski, "Signaling Entropy Label Capability and 388 Readable Label-stack Depth Using OSPF", draft-ietf-ospf- 389 mpls-elc-05 (work in progress), January 2018. 391 [I-D.ietf-pce-segment-routing] 392 Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W., 393 and J. Hardwick, "PCEP Extensions for Segment Routing", 394 draft-ietf-pce-segment-routing-11 (work in progress), 395 November 2017. 397 [RFC5838] Lindem, A., Ed., Mirtorabi, S., Roy, A., Barnes, M., and 398 R. Aggarwal, "Support of Address Families in OSPFv3", 399 RFC 5838, DOI 10.17487/RFC5838, April 2010, 400 . 402 [RFC6863] Hartman, S. and D. Zhang, "Analysis of OSPF Security 403 According to the Keying and Authentication for Routing 404 Protocols (KARP) Design Guide", RFC 6863, 405 DOI 10.17487/RFC6863, March 2013, 406 . 408 [RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and 409 S. Ray, "North-Bound Distribution of Link-State and 410 Traffic Engineering (TE) Information Using BGP", RFC 7752, 411 DOI 10.17487/RFC7752, March 2016, 412 . 414 [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for 415 Writing an IANA Considerations Section in RFCs", BCP 26, 416 RFC 8126, DOI 10.17487/RFC8126, June 2017, 417 . 419 Authors' Addresses 421 Jeff Tantsura 422 Nuage Networks 424 Email: jefftant.ietf@gmail.com 425 Uma Chunduri 426 Huawei Technologies 428 Email: uma.chunduri@huawei.com 430 Sam Aldrin 431 Google, Inc 433 Email: aldrin.ietf@gmail.com 435 Peter Psenak 436 Cisco Systems 438 Email: ppsenak@cisco.com