idnits 2.17.1 draft-ietf-ospf-segment-routing-msd-15.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 (July 24, 2018) is 2096 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) == Unused Reference: 'RFC8126' is defined on line 403, but no explicit reference was found in the text == Outdated reference: A later version (-19) exists of draft-ietf-isis-segment-routing-msd-12 == Outdated reference: A later version (-18) exists of draft-ietf-idr-bgp-ls-segment-routing-msd-01 == Outdated reference: A later version (-15) exists of draft-ietf-ospf-mpls-elc-05 == Outdated reference: A later version (-16) exists of draft-ietf-pce-segment-routing-12 -- Obsolete informational reference (is this intentional?): RFC 7752 (Obsoleted by RFC 9552) Summary: 0 errors (**), 0 flaws (~~), 6 warnings (==), 2 comments (--). 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: January 25, 2019 Huawei Technologies 6 S. Aldrin 7 Google, Inc 8 P. Psenak 9 Cisco Systems 10 July 24, 2018 12 Signaling MSD (Maximum SID Depth) using OSPF 13 draft-ietf-ospf-segment-routing-msd-15 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 January 25, 2019. 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 . . . . . . . . . . . . . . . . . . . . . . 7 71 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 72 10.1. Normative References . . . . . . . . . . . . . . . . . . 8 73 10.2. Informative References . . . . . . . . . . . . . . . . . 8 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 do 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 defines 105 the Base MPLS Imposition MSD type. In the future it is expected, 106 that new MSD types will be defined to signal additional capabilities 107 e.g., entropy labels, SIDs that can be imposed through recirculation, 108 or SIDs associated with another dataplane e.g., IPv6. Although MSD 109 advertisements are associated with Segment Routing, the 110 advertisements MAY be present even if Segment Routing itself is not 111 enabled. 113 1.1. Conventions used in this document 115 1.1.1. Terminology 117 This memo makes use of the terms defined in [RFC7770] 119 BGP-LS: Distribution of Link-State and TE Information using Border 120 Gateway Protocol 122 BMI: Base MPLS Imposition is the number of MPLS labels that can be 123 imposed inclusive of all service/transport/special labels 125 OSPF: Open Shortest Path First 127 MSD: Maximum SID Depth - the number of SIDs a node or one of its 128 links can support 130 PCC: Path Computation Client 132 PCE: Path Computation Element 134 PCEP: Path Computation Element Protocol 136 SR: Segment Routing 138 SID: Segment Identifier 140 LSA: Link state advertisement 142 RI: OSPF Router Information LSA 144 1.2. Requirements Language 146 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 147 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 148 "OPTIONAL" in this document are to be interpreted as described in BCP 149 14 [RFC2119] [RFC8174] when, and only when, they appear in all 150 capitals, as shown here. 152 2. Node MSD Advertisement 154 The node MSD TLV within the body of the OSPF RI Opaque LSA is defined 155 to carry the provisioned SID depth of the router originating the RI 156 LSA. Node MSD is the smallest MSD supported by the node on the set 157 of interfaces configured for use by the advertising IGP instance. 158 MSD values may be learned via a hardware API or may be provisioned.. 160 0 1 2 3 161 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 163 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 164 | Type | Length | 165 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 166 | MSD Type and Value ... 167 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ... 169 Figure 1: Node MSD TLV 171 The Type: TBD1 173 Length: variable (minimum of 2, multiple of 2 octets) and represents 174 the total length of value field. 176 Value: consists of one or more pairs of a 1 octet MSD-type and 1 177 octet MSD-Value. 179 MSD-Type: one of the values defined in the IGP MSD Types registry 180 defined in [I-D.ietf-isis-segment-routing-msd]. 182 MSD-Value: a number in the range of 0-255. For all MSD-Types, 0 183 represents lack of the ability to impose MSD stack of any depth; any 184 other value represents that of the node. This value MUST represent 185 the lowest value supported by any link configured for use by the 186 advertising OSPF instance. 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 and 1 236 octet MSD-Value. 238 MSD-Type: one of the values defined in the MSD Types registry defined 239 in [I-D.ietf-isis-segment-routing-msd]. 241 MSD-Value field contains Link MSD of the router originating the 242 corresponding LSA as specified for OSPFv2 and OSPFv3. Link MSD is a 243 number in the range of 0-255. For all MSD-Types, 0 represents lack 244 of the ability to impose MSD stack of any depth; any other value 245 represents that of the particular link when used as an outgoing 246 interface. 248 Other MSD Types are reserved for future extensions. 250 If this TLV is advertised multiple times in the same OSPFv2 Extended 251 Link Opaque LSA, only the first instance of the TLV is used by 252 receiving OSPFv2 routers. This situation SHOULD be logged as an 253 error. 255 If this TLV is advertised multiple times for the same link in 256 different OSPFv2 Extended Link Opaque LSAs originated by the same 257 OSPFv2 router, the OSPFv2 Extended Link TLV in the OSPFv2 Extended 258 Link Opaque LSA with the smallest Opaque ID is used by receiving 259 OSPFv2 routers. This situation may be logged as a warning. 261 4. Using Node and Link MSD Advertisements 263 When Link MSD is present for a given MSD type, the value of the Link 264 MSD MUST take preference over the Node MSD. When a Link MSD type is 265 not signalled but the Node MSD type is, then the value of that Link 266 MSD type MUST be considered as the corresponding Node MSD type value. 267 In order to increase flooding efficiency, it is RECOMMENDED, that 268 routers with homogenous link MSD values advertise just the Node MSD 269 value. 271 The meaning of the absence of both Node and Link MSD advertisements 272 for a given MSD type is specific to the MSD type. Generally it can 273 only be inferred that the advertising node does not support 274 advertisement of that MSD type. However, in some cases the lack of 275 advertisement might imply that the functionality associated with the 276 MSD type is not supported. The correct interpretation MUST be 277 specified when an MSD type is defined. 279 5. Base MPLS Imposition MSD 281 The Base MPLS Imposition MSD (BMI-MSD) signals the total number of 282 MPLS labels a node is capable of imposing, including all 283 service/transport/special labels. 285 Absence of BMI-MSD advertisements indicates solely that the 286 advertising node does not support advertisement of this capability. 287 Assignment of MSD-Type for BMI-MSD is defined in 288 [I-D.ietf-isis-segment-routing-msd]. 290 6. IANA Considerations 292 This document requests IANA to allocate TLV type (TBD1) from the OSPF 293 Router Information (RI) TLVs Registry as defined by [RFC7770]. IANA 294 has allocated the value 12 through the early assignment process. 295 Also, this document requests IANA to allocate a sub-TLV type (TBD2) 296 from the OSPFv2 Extended Link TLV Sub-TLVs registry. IANA has 297 allocated the the value 6 through the early assignment process. 298 Finally, this document requests IANA to allocate a sub-TLV type 299 (TBD3) from the OSPFv3 Extended-LSA Sub-TLV registry. 301 7. Security Considerations 303 Security concerns for OSPF are addressed in [RFC7474]. Further 304 security analysis for OSPF protocol is done in [RFC6863] including 305 analysis of both the above documents. Security considerations, as 306 specified by [RFC7770], [RFC7684] and [RFC8362] are applicable to 307 this document. 309 Advertisement of an incorrect MSD value may result: in a path 310 computation failing and the service unavailable or instantiation of a 311 path that can't be supported by the head-end (the node performing the 312 imposition). 314 8. Contributors 316 The following people contributed to this document: 318 Les Ginsberg 320 Email: ginsberg@cisco.com 322 9. Acknowledgements 324 The authors would like to thank Acee Lindem, Ketan Talaulikar, Tal 325 Mizrahi, Stephane Litkowski and Bruno Decraene for their reviews and 326 valuable comments. 328 10. References 329 10.1. Normative References 331 [I-D.ietf-isis-segment-routing-msd] 332 Tantsura, J., Chunduri, U., Aldrin, S., and L. Ginsberg, 333 "Signaling MSD (Maximum SID Depth) using IS-IS", draft- 334 ietf-isis-segment-routing-msd-12 (work in progress), May 335 2018. 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 [RFC7474] Bhatia, M., Hartman, S., Zhang, D., and A. Lindem, Ed., 343 "Security Extension for OSPFv2 When Using Manual Key 344 Management", RFC 7474, DOI 10.17487/RFC7474, April 2015, 345 . 347 [RFC7684] Psenak, P., Gredler, H., Shakir, R., Henderickx, W., 348 Tantsura, J., and A. Lindem, "OSPFv2 Prefix/Link Attribute 349 Advertisement", RFC 7684, DOI 10.17487/RFC7684, November 350 2015, . 352 [RFC7770] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and 353 S. Shaffer, "Extensions to OSPF for Advertising Optional 354 Router Capabilities", RFC 7770, DOI 10.17487/RFC7770, 355 February 2016, . 357 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 358 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 359 May 2017, . 361 [RFC8362] Lindem, A., Roy, A., Goethals, D., Reddy Vallem, V., and 362 F. Baker, "OSPFv3 Link State Advertisement (LSA) 363 Extensibility", RFC 8362, DOI 10.17487/RFC8362, April 364 2018, . 366 10.2. Informative References 368 [I-D.ietf-idr-bgp-ls-segment-routing-msd] 369 Tantsura, J., Chunduri, U., Mirsky, G., and S. Sivabalan, 370 "Signaling Maximum SID Depth using Border Gateway Protocol 371 Link-State", draft-ietf-idr-bgp-ls-segment-routing-msd-01 372 (work in progress), October 2017. 374 [I-D.ietf-ospf-mpls-elc] 375 Xu, X., Kini, S., Sivabalan, S., Filsfils, C., and S. 376 Litkowski, "Signaling Entropy Label Capability and 377 Readable Label-stack Depth Using OSPF", draft-ietf-ospf- 378 mpls-elc-05 (work in progress), January 2018. 380 [I-D.ietf-pce-segment-routing] 381 Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W., 382 and J. Hardwick, "PCEP Extensions for Segment Routing", 383 draft-ietf-pce-segment-routing-12 (work in progress), June 384 2018. 386 [RFC5838] Lindem, A., Ed., Mirtorabi, S., Roy, A., Barnes, M., and 387 R. Aggarwal, "Support of Address Families in OSPFv3", 388 RFC 5838, DOI 10.17487/RFC5838, April 2010, 389 . 391 [RFC6863] Hartman, S. and D. Zhang, "Analysis of OSPF Security 392 According to the Keying and Authentication for Routing 393 Protocols (KARP) Design Guide", RFC 6863, 394 DOI 10.17487/RFC6863, March 2013, 395 . 397 [RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and 398 S. Ray, "North-Bound Distribution of Link-State and 399 Traffic Engineering (TE) Information Using BGP", RFC 7752, 400 DOI 10.17487/RFC7752, March 2016, 401 . 403 [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for 404 Writing an IANA Considerations Section in RFCs", BCP 26, 405 RFC 8126, DOI 10.17487/RFC8126, June 2017, 406 . 408 Authors' Addresses 410 Jeff Tantsura 411 Nuage Networks 413 Email: jefftant.ietf@gmail.com 415 Uma Chunduri 416 Huawei Technologies 418 Email: uma.chunduri@huawei.com 419 Sam Aldrin 420 Google, Inc 422 Email: aldrin.ietf@gmail.com 424 Peter Psenak 425 Cisco Systems 427 Email: ppsenak@cisco.com