idnits 2.17.1 draft-ietf-isis-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 (August 29, 2018) is 2065 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: A later version (-18) exists of draft-ietf-idr-bgp-ls-segment-routing-msd-02 == Outdated reference: A later version (-13) exists of draft-ietf-isis-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 (~~), 4 warnings (==), 2 comments (--). 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 2, 2019 Huawei Technologies 6 S. Aldrin 7 Google, Inc 8 L. Ginsberg 9 Cisco Systems 10 August 29, 2018 12 Signaling MSD (Maximum SID Depth) using IS-IS 13 draft-ietf-isis-segment-routing-msd-15 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 2, 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 . . . . . . . . . . . . . . . . . 8 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 a given SR path to 80 insure that the Segment Identifier (SID) stack depth of a computed 81 path doesn't exceed the number of SIDs the node is capable of 82 imposing. 84 Path Computation Element Protocol (PCEP) SR extensions draft 85 [I-D.ietf-pce-segment-routing] signals MSD in SR Path Computation 86 Element (PCE) Capability TLV and METRIC Object. However, if PCEP is 87 not supported/configured on the head-end of an SR tunnel or a 88 Binding-SID anchor node and controller does not participate in IGP 89 routing, it has no way to learn the MSD of nodes and links. BGP-LS 90 (Distribution of Link-State and TE Information using Border Gateway 91 Protocol) [RFC7752] defines a way to expose topology and associated 92 attributes and capabilities of the nodes in that topology to a 93 centralized 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, 110 that new MSD types will be defined to signal additional capabilities 111 e.g., entropy labels, SIDs that can be imposed through recirculation, 112 or SIDs associated with another dataplane e.g., IPv6. Although MSD 113 advertisements are associated with Segment Routing, the 114 advertisements MAY be present even if Segment Routing itself is not 115 enabled. Note that in a non-SR MPLS network, label depth is what is 116 defined by the MSD advertisements. 118 1.1. Terminology 120 BMI: Base MPLS Imposition is the number of MPLS labels which can be 121 imposed inclusive of all service/transport/special labels 123 MSD: Maximum SID Depth - the number of SIDs a node or a link on a 124 node can support 126 1.2. Requirements Language 128 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 129 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 130 "OPTIONAL" in this document are to be interpreted as described in BCP 131 14 [RFC2119] [RFC8174] when, and only when, they appear in all 132 capitals, as shown here . 134 2. Node MSD Advertisement 136 The node MSD sub-TLV is defined within the body of the IS-IS Router 137 Capability TLV [RFC7981], to carry the provisioned SID depth of the 138 router originating the Router Capability TLV. Node MSD is the 139 smallest MSD supported by the node on the set of interfaces 140 configured for use by the advertising IGP instance. MSD values may 141 be learned via a hardware API or may be provisioned. 143 0 1 144 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 146 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 147 | Type | Length | 148 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 149 | MSD-Type | MSD-Value | 150 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 151 // ................... // 152 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 153 | MSD-Type | MSD-Value | 154 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 156 Figure 1: Node MSD Sub-TLV 158 Type: 23 (allocated by IANA via the early assignment process) 160 Length: variable (multiple of 2 octets) and represents the total 161 length of value field. 163 Value: field consists of one or more pairs of a 1 octet MSD-Type and 164 1 octet MSD-Value. 166 MSD-Type is a value defined in the IGP MSD Types registry created by 167 the IANA Section of this document. 169 MSD-Value is a number in the range of 0-255. For all MSD-Types, 0 170 represents lack of the ability to support SID stack of any depth; any 171 other value represents that of the node. This value MUST represent 172 the lowest value supported by any link configured for use by the 173 advertising IS-IS instance. 175 This sub-TLV is optional. The scope of the advertisement is specific 176 to the deployment. 178 If there exist multiple Node MSD advertisements for the same MSD-Type 179 originated by the same router, the procedures defined in [RFC7981] 180 apply. These procedures may result in different MSD values being 181 used by (for example) different controllers - but this does not 182 create any interoperability issue. 184 3. Link MSD Advertisement 186 The link MSD sub-TLV is defined for TLVs 22, 23, 25, 141, 222, and 187 223 to carry the MSD of the interface associated with the link. MSD 188 values may be learned via a hardware API or may be provisioned. 190 0 1 191 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 193 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 194 | Type | Length | 195 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 196 | MSD-Type | MSD-Value | 197 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 198 // ................... // 199 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 200 | MSD-Type | MSD-Value | 201 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 203 Figure 2: Link MSD Sub-TLV 205 Type: 15 (allocated by IANA via the early assignment process) 207 Length: variable (multiple of 2 octets) and represents the total 208 length of value field. 210 Value: consists of one or more pairs of a 1 octet MSD-Type and 1 211 octet MSD-Value. 213 MSD-Type is a value defined in the MSD Types registry created by the 214 IANA Section of this document. 216 MSD-Value is a number in the range of 0-255. For all MSD-Types, 0 217 represents lack of the ability to support SID stack of any depth; any 218 other value represents that of the link when used as an outgoing 219 link. 221 This sub-TLV is optional. 223 If multiple Link MSD advertisements for the same MSD-Type and the 224 same link are received, the procedure used to select which copy is 225 used is undefined. 227 4. Procedures for using Node and Link MSD Advertisements 229 When Link MSD is present for a given MSD type, the value of the Link 230 MSD MUST take preference over the Node MSD. When a Link MSD type is 231 not signaled but the Node MSD type is, then the Node MSD type value 232 MUST be considered as the MSD value for that link. 234 In order to increase flooding efficiency, it is RECOMMENDED that 235 routers with homogenous link MSD values advertise just the Node MSD 236 value. 238 The meaning of the absence of both Node and Link MSD advertisements 239 for a given MSD type is specific to the MSD type. Generally it can 240 only be inferred that the advertising node does not support 241 advertisement of that MSD type. However, in some cases the lack of 242 advertisement might imply that the functionality associated with the 243 MSD type is not supported. The correct interpretation MUST be 244 specified when an MSD type is defined. 246 5. Base MPLS Imposition MSD 248 Base MPLS Imposition MSD (BMI-MSD) signals the total number of MPLS 249 labels which can be imposed, including all service/transport/special 250 labels. 252 Absence of BMI-MSD advertisements indicates solely that the 253 advertising node does not support advertisement of this capability. 255 6. IANA Considerations 257 This document requests IANA to allocate a sub-TLV type for the new 258 sub TLV proposed in Section 2 of this document from IS-IS Router 259 Capability TLV Registry as defined by [RFC7981]. 261 IANA has allocated the following value through the early assignment 262 process: 264 Value Description Reference 265 ----- --------------- ------------- 266 23 Node MSD This document 268 Figure 3: Node MSD 270 This document requests IANA to allocate a sub-TLV type as defined in 271 Section 3 from Sub-TLVs for TLVs 22, 23, 25, 141, 222, and 223 272 registry. 274 IANA has allocated the following value through the early assignment 275 process: 277 Value Description Reference 278 ----- --------------- ------------- 279 15 Link MSD This document 281 Figure 4: Link MSD 283 Per TLV information where Link MSD sub-TLV can be part of: 285 TLV 22 23 25 141 222 223 286 --- -------------------- 287 y y y y y y 289 Figure 5: TLVs where LINK MSD Sub-TLV can be present 291 This document requests creation of an IANA managed registry under the 292 category of "Interior Gateway Protocol (IGP) Parameters" IANA 293 registries to identify MSD types as proposed in Section 2 and 294 Section 3. The registration procedure is "Expert Review" as defined 295 in [RFC8126]. Suggested registry name is "IGP MSD Types". Types are 296 an unsigned 8 bit number. The following values are defined by this 297 document 299 Value Name Reference 300 ----- --------------------- ------------- 301 0 Reserved This document 302 1 Base MPLS Imposition MSD This document 303 2-250 Unassigned This document 304 251-254 Experimental This document 305 255 Reserved This document 307 Figure 6: MSD Types Codepoints Registry 309 General guidance for the Designated Experts is as defined in 310 [RFC7370] 312 7. Security Considerations 314 Security considerations as specified by [RFC7981] are applicable to 315 this document. 317 Advertisement of the additional information defined in this document 318 that is false, e.g., an MSD that is incorrect, may result in a path 319 computation failing, having a service unavailable, or instantiation 320 of a path that can't be supported by the head-end (the node 321 performing the imposition). 323 The presence of this information also may inform an attacker of how 324 to induce any of the aforementioned conditions. 326 8. Contributors 328 The following people contributed to this document: 330 Peter Psenak 331 Email: ppsenak@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 [RFC7370] Ginsberg, L., "Updates to the IS-IS TLV Codepoints 349 Registry", RFC 7370, DOI 10.17487/RFC7370, September 2014, 350 . 352 [RFC7981] Ginsberg, L., Previdi, S., and M. Chen, "IS-IS Extensions 353 for Advertising Router Information", RFC 7981, 354 DOI 10.17487/RFC7981, October 2016, 355 . 357 [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for 358 Writing an IANA Considerations Section in RFCs", BCP 26, 359 RFC 8126, DOI 10.17487/RFC8126, June 2017, 360 . 362 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 363 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 364 May 2017, . 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 MSD (Maximum SID Depth) using Border Gateway 371 Protocol Link-State", draft-ietf-idr-bgp-ls-segment- 372 routing-msd-02 (work in progress), August 2018. 374 [I-D.ietf-isis-mpls-elc] 375 Xu, X., Kini, S., Sivabalan, S., Filsfils, C., and S. 376 Litkowski, "Signaling Entropy Label Capability and Entropy 377 Readable Label Depth Using IS-IS", draft-ietf-isis-mpls- 378 elc-05 (work in progress), July 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 [RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and 387 S. Ray, "North-Bound Distribution of Link-State and 388 Traffic Engineering (TE) Information Using BGP", RFC 7752, 389 DOI 10.17487/RFC7752, March 2016, 390 . 392 Authors' Addresses 394 Jeff Tantsura 395 Nuage Networks 397 Email: jefftant.ietf@gmail.com 399 Uma Chunduri 400 Huawei Technologies 402 Email: uma.chunduri@huawei.com 404 Sam Aldrin 405 Google, Inc 407 Email: aldrin.ietf@gmail.com 409 Les Ginsberg 410 Cisco Systems 412 Email: ginsberg@cisco.com