idnits 2.17.00 (12 Aug 2021) /tmp/idnits59930/draft-ietf-isis-segment-routing-msd-16.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 (September 23, 2018) is 1336 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-idr-bgp-ls-segment-routing-msd has been published as RFC 8814 == Outdated reference: draft-ietf-isis-mpls-elc has been published as RFC 9088 == Outdated reference: draft-ietf-pce-segment-routing has been published as RFC 8664 Summary: 0 errors (**), 0 flaws (~~), 4 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 IS-IS Working Group J. Tantsura 3 Internet-Draft Nuage Networks 4 Intended status: Standards Track U. Chunduri 5 Expires: March 27, 2019 Huawei Technologies 6 S. Aldrin 7 Google, Inc 8 L. Ginsberg 9 Cisco Systems 10 September 23, 2018 12 Signaling MSD (Maximum SID Depth) using IS-IS 13 draft-ietf-isis-segment-routing-msd-16 15 Abstract 17 This document defines a way for an Intermediate System to 18 Intermediate System (IS-IS) router to advertise multiple types of 19 supported Maximum SID Depths (MSDs) at node and/or link granularity. 20 Such advertisements allow entities (e.g., centralized controllers) to 21 determine whether a particular SID stack can be supported in a given 22 network. This document only defines one type of MSD maximum label 23 imposition, but defines an encoding that can support other MSD types. 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 March 27, 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. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 61 1.2. Requirements Language . . . . . . . . . . . . . . . . . . 3 62 2. Node MSD Advertisement . . . . . . . . . . . . . . . . . . . 3 63 3. Link MSD Advertisement . . . . . . . . . . . . . . . . . . . 4 64 4. Procedures for using Node and Link MSD Advertisements . . . . 5 65 5. Base MPLS Imposition MSD . . . . . . . . . . . . . . . . . . 6 66 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 67 7. Security Considerations . . . . . . . . . . . . . . . . . . . 7 68 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 7 69 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 70 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 71 10.1. Normative References . . . . . . . . . . . . . . . . . . 8 72 10.2. Informative References . . . . . . . . . . . . . . . . . 9 73 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 75 1. Introduction 77 When Segment Routing (SR) paths are computed by a centralized 78 controller, it is critical that the controller learns the Maximum SID 79 Depth (MSD) that can be imposed at each node/link of a given SR path 80 to insure that the Segment Identifier (SID) stack depth of a computed 81 path does not exceed the number of SIDs the node is capable of 82 imposing. 84 [I-D.ietf-pce-segment-routing] defines how to signal MSD in the SR 85 Path Computation Element (PCE) Capability TLV and in the METRIC 86 Object originally defined in [RFC5440]. However, if PCEP is not 87 supported/configured on the head-end of an SR tunnel or a Binding-SID 88 anchor node and controller does not participate in IGP routing, it 89 has no way to learn the MSD of nodes and links. BGP-LS (Distribution 90 of Link-State and TE Information using Border Gateway Protocol) 91 [RFC7752] defines a way to expose topology and associated attributes 92 and capabilities of the nodes in that topology to a centralized 93 controller. MSD signaling by BGP-LS has been defined in 94 [I-D.ietf-idr-bgp-ls-segment-routing-msd]. Typically, BGP-LS is 95 configured on a small number of nodes that do not necessarily act as 96 head-ends. In order for BGP-LS to signal MSD for all the nodes and 97 links in the network MSD is relevant, MSD capabilities should be 98 advertised by every Intermediate System to Intermediate System(IS-IS) 99 router in the network. 101 Other types of MSD are known to be useful. For example, 102 [I-D.ietf-isis-mpls-elc] defines Readable Label Depth Capability 103 (RLDC) that is used by a head-end to insert an Entropy Label (EL) at 104 a depth, that could be read by transit nodes. 106 This document defines an extension to IS-IS used to advertise one or 107 more types of MSD at node and/or link granularity. It also creates 108 an IANA registry for assigning MSD type identifiers. It also defines 109 the Base MPLS Imposition MSD type. In the future it is expected that 110 new MSD types will be defined to signal additional capabilities e.g., 111 entropy labels, SIDs that can be imposed through recirculation, or 112 SIDs associated with another dataplane e.g., IPv6. 114 Although MSD advertisements are associated with Segment Routing, the 115 advertisements MAY be present even if Segment Routing itself is not 116 enabled. Note that in a non-SR MPLS network, label depth is what is 117 defined by the MSD advertisements. 119 1.1. Terminology 121 BMI: Base MPLS Imposition is the number of MPLS labels which can be 122 imposed inclusive of all service/transport/special labels 124 MSD: Maximum SID Depth - the number of SIDs supported by a node or a 125 link on a node 127 SID: Segment Identifier as defined in [RFC8402] 129 1.2. Requirements Language 131 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 132 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 133 "OPTIONAL" in this document are to be interpreted as described in BCP 134 14 [RFC2119] [RFC8174] when, and only when, they appear in all 135 capitals, as shown here . 137 2. Node MSD Advertisement 139 The node MSD sub-TLV is defined within the body of the IS-IS Router 140 Capability TLV [RFC7981], to carry the provisioned SID depth of the 141 router originating the Router Capability TLV. Node MSD is the 142 smallest MSD supported by the node on the set of interfaces 143 configured for use by the advertising IGP instance. MSD values may 144 be learned via a hardware API or may be provisioned. 146 0 1 147 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 149 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 150 | Type | Length | 151 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 152 | MSD-Type | MSD-Value | 153 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 154 // ................... // 155 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 156 | MSD-Type | MSD-Value | 157 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 159 Figure 1: Node MSD Sub-TLV 161 Type: 23 (allocated by IANA via the early assignment process) 163 Length: variable (multiple of 2 octets) and represents the total 164 length of value field. 166 Value: field consists of one or more pairs of a 1 octet MSD-Type and 167 1 octet MSD-Value. 169 MSD-Type is a value defined in the IGP MSD Types registry created by 170 the IANA Section of this document. 172 MSD-Value is a number in the range of 0-255. For all MSD-Types, 0 173 represents lack of the ability to support SID stack of any depth; any 174 other value represents that of the node. This value MUST represent 175 the lowest value supported by any link configured for use by the 176 advertising IS-IS instance. 178 This sub-TLV is optional. The scope of the advertisement is specific 179 to the deployment. 181 If there exist multiple Node MSD advertisements for the same MSD-Type 182 originated by the same router, the procedures defined in [RFC7981] 183 apply. These procedures may result in different MSD values being 184 used by (for example) different controllers - but this does not 185 create any interoperability issue. 187 3. Link MSD Advertisement 189 The link MSD sub-TLV is defined for TLVs 22, 23, 25, 141, 222, and 190 223 to carry the MSD of the interface associated with the link. MSD 191 values may be signaled by the forwarding plane or may be provisioned. 193 0 1 194 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 196 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 197 | Type | Length | 198 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 199 | MSD-Type | MSD-Value | 200 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 201 // ................... // 202 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 203 | MSD-Type | MSD-Value | 204 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 206 Figure 2: Link MSD Sub-TLV 208 Type: 15 (allocated by IANA via the early assignment process) 210 Length: variable (multiple of 2 octets) and represents the total 211 length of value field. 213 Value: consists of one or more pairs of a 1 octet MSD-Type and 1 214 octet MSD-Value. 216 MSD-Type is a value defined in the MSD Types registry created by the 217 IANA Section of this document. 219 MSD-Value is a number in the range of 0-255. For all MSD-Types, 0 220 represents lack of the ability to support SID stack of any depth; any 221 other value represents that of the link. 223 This sub-TLV is optional. 225 If multiple Link MSD advertisements for the same MSD-Type and the 226 same link are received, the procedure used to select which copy is 227 used is undefined. 229 4. Procedures for using Node and Link MSD Advertisements 231 When Link MSD is present for a given MSD type, the value of the Link 232 MSD MUST take precedence over the Node MSD. When a Link MSD type is 233 not signaled but the Node MSD type is, then the Node MSD type value 234 MUST be considered as the MSD value for that link. 236 In order to increase flooding efficiency, it is RECOMMENDED that 237 routers with homogenous link MSD values advertise just the Node MSD 238 value. 240 The meaning of the absence of both Node and Link MSD advertisements 241 for a given MSD type is specific to the MSD type. Generally it can 242 only be inferred that the advertising node does not support 243 advertisement of that MSD type. However, in some cases the lack of 244 advertisement might imply that the functionality associated with the 245 MSD type is not supported. The correct interpretation MUST be 246 specified when an MSD type is defined. 248 5. Base MPLS Imposition MSD 250 Base MPLS Imposition MSD (BMI-MSD) signals the total number of MPLS 251 labels which can be imposed, including all service/transport/special 252 labels. 254 Absence of BMI-MSD advertisements indicates solely that the 255 advertising node does not support advertisement of this capability. 257 6. IANA Considerations 259 This document requests IANA to allocate a sub-TLV type for the new 260 sub TLV proposed in Section 2 of this document from IS-IS Router 261 Capability TLV Registry as defined by [RFC7981]. 263 IANA has allocated the following value through the early assignment 264 process: 266 Value Description Reference 267 ----- --------------- ------------- 268 23 Node MSD This document 270 Figure 3: Node MSD 272 This document requests IANA to allocate a sub-TLV type as defined in 273 Section 3 from Sub-TLVs for TLVs 22, 23, 25, 141, 222, and 223 274 registry. 276 IANA has allocated the following value through the early assignment 277 process: 279 Value Description Reference 280 ----- --------------- ------------- 281 15 Link MSD This document 283 Figure 4: Link MSD 285 Per TLV information where Link MSD sub-TLV can be part of: 287 TLV 22 23 25 141 222 223 288 --- -------------------- 289 y y y y y y 291 Figure 5: TLVs where LINK MSD Sub-TLV can be present 293 This document requests creation of an IANA managed registry under the 294 category of "Interior Gateway Protocol (IGP) Parameters" IANA 295 registries to identify MSD types as proposed in Section 2 and 296 Section 3. The registration procedure is "Expert Review" as defined 297 in [RFC8126]. Suggested registry name is "IGP MSD Types". Types are 298 an unsigned 8 bit number. The following values are defined by this 299 document: 301 Value Name Reference 302 ----- --------------------- ------------- 303 0 Reserved This document 304 1 Base MPLS Imposition MSD This document 305 2-250 Unassigned This document 306 251-254 Experimental This document 307 255 Reserved This document 309 Figure 6: MSD Types Codepoints Registry 311 General guidance for the Designated Experts is as defined in 312 [RFC7370] 314 7. Security Considerations 316 Security considerations as specified by [RFC7981] are applicable to 317 this document. 319 Advertisement of the additional information defined in this document 320 that is false, e.g., an MSD that is incorrect, may result in a path 321 computation failing, having a service unavailable, or calculation of 322 a path that cannot be supported by the head-end (the node performing 323 the imposition). 325 The presence of this information also may inform an attacker of how 326 to induce any of the aforementioned conditions. 328 8. Contributors 330 The following people contributed to this document: 332 Peter Psenak 333 Email: ppsenak@cisco.com 335 9. Acknowledgements 337 The authors would like to thank Acee Lindem, Ketan Talaulikar, 338 Stephane Litkowski and Bruno Decraene for their reviews and valuable 339 comments. 341 10. References 343 10.1. Normative References 345 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 346 Requirement Levels", BCP 14, RFC 2119, 347 DOI 10.17487/RFC2119, March 1997, 348 . 350 [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation 351 Element (PCE) Communication Protocol (PCEP)", RFC 5440, 352 DOI 10.17487/RFC5440, March 2009, 353 . 355 [RFC7370] Ginsberg, L., "Updates to the IS-IS TLV Codepoints 356 Registry", RFC 7370, DOI 10.17487/RFC7370, September 2014, 357 . 359 [RFC7981] Ginsberg, L., Previdi, S., and M. Chen, "IS-IS Extensions 360 for Advertising Router Information", RFC 7981, 361 DOI 10.17487/RFC7981, October 2016, 362 . 364 [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for 365 Writing an IANA Considerations Section in RFCs", BCP 26, 366 RFC 8126, DOI 10.17487/RFC8126, June 2017, 367 . 369 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 370 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 371 May 2017, . 373 [RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., 374 Decraene, B., Litkowski, S., and R. Shakir, "Segment 375 Routing Architecture", RFC 8402, DOI 10.17487/RFC8402, 376 July 2018, . 378 10.2. Informative References 380 [I-D.ietf-idr-bgp-ls-segment-routing-msd] 381 Tantsura, J., Chunduri, U., Mirsky, G., and S. Sivabalan, 382 "Signaling MSD (Maximum SID Depth) using Border Gateway 383 Protocol Link-State", draft-ietf-idr-bgp-ls-segment- 384 routing-msd-02 (work in progress), August 2018. 386 [I-D.ietf-isis-mpls-elc] 387 Xu, X., Kini, S., Sivabalan, S., Filsfils, C., and S. 388 Litkowski, "Signaling Entropy Label Capability and Entropy 389 Readable Label Depth Using IS-IS", draft-ietf-isis-mpls- 390 elc-05 (work in progress), July 2018. 392 [I-D.ietf-pce-segment-routing] 393 Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W., 394 and J. Hardwick, "PCEP Extensions for Segment Routing", 395 draft-ietf-pce-segment-routing-12 (work in progress), June 396 2018. 398 [RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and 399 S. Ray, "North-Bound Distribution of Link-State and 400 Traffic Engineering (TE) Information Using BGP", RFC 7752, 401 DOI 10.17487/RFC7752, March 2016, 402 . 404 Authors' Addresses 406 Jeff Tantsura 407 Nuage Networks 409 Email: jefftant.ietf@gmail.com 411 Uma Chunduri 412 Huawei Technologies 414 Email: uma.chunduri@huawei.com 416 Sam Aldrin 417 Google, Inc 419 Email: aldrin.ietf@gmail.com 420 Les Ginsberg 421 Cisco Systems 423 Email: ginsberg@cisco.com