idnits 2.17.1 draft-hegde-lsr-flex-algo-bw-con-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 : ---------------------------------------------------------------------------- ** There are 23 instances of too long lines in the document, the longest one being 22 characters in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 71 has weird spacing: '...m Delay sub-T...' -- The document date (February 22, 2021) is 1157 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) == Missing Reference: 'RFC 7684' is mentioned on line 356, but not defined == Outdated reference: A later version (-26) exists of draft-ietf-lsr-flex-algo-13 == Outdated reference: A later version (-16) exists of draft-bashandy-rtgwg-segment-routing-uloop-10 -- Obsolete informational reference (is this intentional?): RFC 5316 (Obsoleted by RFC 9346) Summary: 1 error (**), 0 flaws (~~), 5 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 SPRING S. Hegde 3 Internet-Draft W. Britto 4 Intended status: Standards Track R. Shetty 5 Expires: August 26, 2021 Juniper Networks Inc. 6 B. Decraene 7 Orange 8 February 22, 2021 10 Flexible Algorithms Bandwidth Constraints 11 draft-hegde-lsr-flex-algo-bw-con-00 13 Abstract 15 Many networks configure the link metric relative to the link 16 capacity. High bandwidth traffic gets routed as per the link 17 capacity. Flexible algorithms provides mechanisms to create 18 constraint based paths in IGP. This draft documents a set of 19 bandwidth related constraints to be used in Flexible Algorithms. 21 Requirements Language 23 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 24 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 25 document are to be interpreted as described in RFC 2119 [RFC2119]. 27 Status of This Memo 29 This Internet-Draft is submitted in full conformance with the 30 provisions of BCP 78 and BCP 79. 32 Internet-Drafts are working documents of the Internet Engineering 33 Task Force (IETF). Note that other groups may also distribute 34 working documents as Internet-Drafts. The list of current Internet- 35 Drafts is at https://datatracker.ietf.org/drafts/current/. 37 Internet-Drafts are draft documents valid for a maximum of six months 38 and may be updated, replaced, or obsoleted by other documents at any 39 time. It is inappropriate to use Internet-Drafts as reference 40 material or to cite them other than as "work in progress." 42 This Internet-Draft will expire on August 26, 2021. 44 Copyright Notice 46 Copyright (c) 2021 IETF Trust and the persons identified as the 47 document authors. All rights reserved. 49 This document is subject to BCP 78 and the IETF Trust's Legal 50 Provisions Relating to IETF Documents 51 (https://trustee.ietf.org/license-info) in effect on the date of 52 publication of this document. Please review these documents 53 carefully, as they describe your rights and restrictions with respect 54 to this document. Code Components extracted from this document must 55 include Simplified BSD License text as described in Section 4.e of 56 the Trust Legal Provisions and are provided without warranty as 57 described in the Simplified BSD License. 59 Table of Contents 61 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 62 2. Bandwidth Metric adevertisement . . . . . . . . . . . . . . . 3 63 2.1. ISIS Bandwidth Metric sub-TLV . . . . . . . . . . . . . . 3 64 2.2. OSPF Bandwidth Metric sub-TLV . . . . . . . . . . . . . . 4 65 3. FAD constraint sub-TLVs . . . . . . . . . . . . . . . . . . . 5 66 3.1. ISIS FAD constraint sub-TLVs . . . . . . . . . . . . . . 6 67 3.1.1. ISIS Exclude Minimum Bandwidth sub-TLV . . . . . . . 6 68 3.1.2. ISIS Exclude Maximum Delay sub-TLV . . . . . . . . . 6 69 3.2. OSPF FAD constraint sub-TLVs . . . . . . . . . . . . . . 7 70 3.2.1. OSPF Exclude Minimum Bandwidth sub-TLV . . . . . . . 7 71 3.2.2. OSPF Exclude Maximum Delay sub-TLV . . . . . . . . . 8 72 4. Automatic metric calculation . . . . . . . . . . . . . . . . 9 73 4.1. Simple mode . . . . . . . . . . . . . . . . . . . . . . . 9 74 4.2. Interface group mode . . . . . . . . . . . . . . . . . . 10 75 4.3. ISIS FAD constraint sub-TLVs for automatic metric 76 calculation . . . . . . . . . . . . . . . . . . . . . . . 10 77 4.3.1. Reference Bandwidth sub-TLV . . . . . . . . . . . . . 10 78 4.3.2. Threshold metric sub-TLV . . . . . . . . . . . . . . 12 79 4.4. OSPF FAD constraint sub-TLVs for automatic metric 80 calculation . . . . . . . . . . . . . . . . . . . . . . . 14 81 4.4.1. Reference Bandwidth sub-TLV . . . . . . . . . . . . . 14 82 4.4.2. Threshold metric sub-TLV . . . . . . . . . . . . . . 16 83 5. Backward Compatibility . . . . . . . . . . . . . . . . . . . 17 84 6. Security Considerations . . . . . . . . . . . . . . . . . . . 17 85 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 86 7.1. IGP Metric-Type Registry . . . . . . . . . . . . . . . . 17 87 7.2. ISIS Sub-Sub-TLVs for Flexible Algorithm Definition Sub- 88 TLV . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 89 7.3. OSPF Sub-TLVs for Flexible Algorithm Definition Sub-TLV . 18 90 7.4. Sub-TLVs for TLVs 22, 23, 25, 141, 222, and 223 . . . . . 18 91 7.5. Sub-sub-TLV Codepoints for Application-Specific Link 92 Attributes . . . . . . . . . . . . . . . . . . . . . . . 18 93 7.6. OSPFv2 Extended Link TLV Sub-TLVs . . . . . . . . . . . . 19 94 7.7. Types for sub-TLVs of TE Link TLV (Value 2) . . . . . . . 19 95 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 19 96 9. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 19 97 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 19 98 10.1. Normative References . . . . . . . . . . . . . . . . . . 19 99 10.2. Informative References . . . . . . . . . . . . . . . . . 20 100 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 21 102 1. Introduction 104 High bandwidth traffic such as residential internet traffic and 105 machine to machine elephant flows benefit from using high capacily 106 links for the traffic. Many network operators define link metric 107 relative to the link capacity. It may be useful to exclude the high 108 bandwidth traffic from utilizing links below certain capacity. A 109 flex-algo [I-D.ietf-lsr-flex-algo] is defined as a set of parameters 110 consisting of calculation-type, metric-type and a set of constraints. 111 It is very convenient to define a flex-algo that uses bandwidth based 112 metric-type which can be used for carrying high bandwidth traffic.In 113 this regard, it's useful to define additional metric-type and 114 additional bandwidth related constraints to simplify the operations. 116 This document specifies a new metric-type to be used in flex-algo 117 described in section Section 2. Additional Flexible Algorithm 118 Definition (FAD) constraints defined in section Section 3. Section 4 119 defines mechanisms to automatically calculate metric based on 120 reference bandwidth and actual link bandwidth. 122 2. Bandwidth Metric adevertisement 124 ISIS and OSPF advertise link metric in their respective link 125 information. Multiple types of metric are supported, IGP cost, te- 126 metric defined in [RFC5305] and [RFC3630] and delay metric defined in 127 [RFC8570] and [RFC7471]. A brownfield network might have deployed 128 legacy transport mechanisms using igp-cost and te-metric which 129 continue to run during migration period. In this brownfield network 130 if the operator wants to introduce two Flex-Algos, one for delay 131 metric and another for bandwidth metric, a new metric-type to carry 132 bandwidth related metric, would be needed. The IGP cost and te- 133 metric may be already used by legacy applications and may not be 134 available to carry link bandwidth based metric. This document 135 defines a new metric called bandwidth metric. ISIS and OSPF will 136 advertise this new type of metric in their link information. This 137 document also defines a new metric-type called "bandwidth metric" in 138 the FAD sub-TLV. 140 2.1. ISIS Bandwidth Metric sub-TLV 142 The ISIS Bandwidth Metric sub-TLV specifies the link metric based on 143 link bandwidth. Typically, this metric is assigned by a network 144 administrator. The bandwidth metric sub-TLV is advertised in below 145 TLVs 147 TLV-22 (Extended IS reachability) [RFC5305] 149 TLV-222 (MT-ISN) [RFC5120] 151 TLV-23 (IS Neighbor Attribute) [RFC5311] 153 TLV-223 (MT IS Neighbor Attribute) [RFC5311] 155 TLV-141 (inter-AS reachability information) [RFC5316] 157 0 1 2 3 158 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 159 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 160 | Type | Length | Reserved | 161 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 162 | value | 163 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 165 Type : TBD (To be assigned by IANA) 166 Length: 5 octets 167 Value : metric value range (1 - 4,261,412,864) 169 Figure 1: ISIS bandwidth metric sub-TLV 171 The bandwidth metric sub-TLV MUST be advertised only once. If there 172 are multiple bandwidth metric sub-TLVs in one or more received 173 LSPDUs, the first one MUST be used and the subsequesnt ones MUST be 174 ignored. 176 2.2. OSPF Bandwidth Metric sub-TLV 178 The Bandwidth Metric sub-TLV specifies the link metric based on link 179 bandwidth. Typically, this metric is assigned by a network 180 administrator. The bandwidth metric sub-TLV is a sub-TLV of the OSPF 181 Link TLV and advertised in OSPF extended Link LSA [RFC7684]. The 182 Bandwidth Metric sub-TLV is TLV type TBD (IANA), and is four octets 183 in length. 185 0 1 2 3 186 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 187 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 188 | Type | Length | 189 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 190 | Value... | 191 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 193 Type : TBD (To be assigned by IANA) 194 Length: 4 octets 195 Value : metric value (1- 4,294,967,296) 197 Figure 2: OSPF bandwidth metric sub-TLV 199 The bandwidth metric sub-TLV MUST be advertised only once. If there 200 are multiple bandwidth metric sub-TLVs in a receieved Link TLV, the 201 first one MUST be used and the subsequent ones MUST be ignored. 203 3. FAD constraint sub-TLVs 205 It is useful to exclude Links having capacity lower than a minimum 206 value from the flex-algo topology that is designed to carry high 207 bandwidth traffic. This can be achieved by associating link affinity 208 to the lower capacity links and advertise exclude link constraint in 209 the FAD for that link affinity. This works well where the link 210 capacity is constant. When a L3 link is collection of L2 links (LAG/ 211 L2 Bundle) , the link bandwidth varies based on the constituent link 212 going up and down. The operator has to constantly monitor the link 213 capacity and assign appropriate link affinity on link capacity 214 changes beyond minimum value. In certain cases, the minimum link 215 bandwidth required may change based on the applications that use the 216 high bandwidth Flex-Algo. This document proposes a new exclude 217 minimum bandwidth constraint. When this constraint is advertised in 218 a FAD, based on the advertised link bandwidth, the link will be 219 pruned from the flex-algo topology if its below the FAD advertised 220 Minimum bandwidth value. 222 Similarly, exclude maximum link delay constraint is also defined in 223 this document. Links may have the link delay measured dynamically 224 and advertised in delay metric in IGP. For usecases that deploy low 225 latency flex-algo, may want to exclude links that have delay more 226 than a defined threshold. 228 3.1. ISIS FAD constraint sub-TLVs 230 3.1.1. ISIS Exclude Minimum Bandwidth sub-TLV 232 ISIS Flex-algo Exclude Minimum Bandwidth sub-TLV (FAEMB) is a sub-TLV 233 of the ISIS FAD sub-TLV. It has the following format. 235 0 1 2 3 236 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 237 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 238 | Type | Length | 239 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 240 | Min bandwidth | 241 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 242 where: 244 Type: 1 246 Length: 4 octets. 248 Min Bandwidth: link bandwidth is encoded in 32 bits in IEEE 249 floating point format. The units are bytes per second. 251 Figure 3: ISIS FAEMB sub-TLV 253 The FAEMB sub-TLV MUST appear only once in the FAD sub-TLV. If it 254 appears more than once, the ISIS FAD Sub-TLV MUST be ignored by the 255 receiver. The total link bandwidth as advertised by the sub-TLV 9 of 256 the TLV 22/222/23/223/141 is compared against the Min bandwidth 257 advertised in FAEMB sub-TLV. If the link bandwidth is lower, the 258 link is excluded from the Flex-algo topology of the corresponding 259 Flex-algo which advertised the FAEMB sub-TLV. If a link does not 260 have the link bandwidth advertised but the FAD contains this sub-TLV, 261 then that link MUST be excluded from the topology. 263 3.1.2. ISIS Exclude Maximum Delay sub-TLV 265 ISIS Flex-algo Exclude Maximum Delay sub-TLV (FAEMD) is a sub-TLV of 266 the ISIS FAD sub-TLV. It has the following format. 268 0 1 2 3 269 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 270 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 271 | Type | Length | 272 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 273 | max link delay | 274 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 275 where: 277 Type: TBD 279 Length: 3 octets 281 Max link delay: Maximum link delay in microseconds 283 Figure 4: ISIS FAEMD sub-TLV 285 The FAEMD sub-TLV MUST appear only once in the FAD sub-TLV. If it 286 appears more than once, the ISIS FAD Sub-TLV MUST be ignored by the 287 receiver. The link delay [RFC8570].as advertised by the sub-TLV 33 288 of the TLV 22/222/23/223/141 is compared against the Max link delay 289 advertised in FAEMD sub-TLV. If the link delay value is higher, the 290 link is excluded from the Flex-algo topology of the corresponding 291 Flex-algo which advertised the FAEMD sub-TLV. If a link does not 292 have the link delay advertised but the FAD contains this sub-TLV, 293 then that link MUST be excluded from the topology. 295 3.2. OSPF FAD constraint sub-TLVs 297 3.2.1. OSPF Exclude Minimum Bandwidth sub-TLV 299 OSPF Flex-algo Bandwidth Exclusion sub-TLV (FAEMB) is a sub-TLV of 300 the OSPF FAD TLV. It has the following format. 302 0 1 2 3 303 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 304 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 305 | Type | Length | 306 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 307 | Min bandwidth | 308 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 309 where: 311 Type: TBD 313 Length: 4 octets. 315 Min Bandwidth: link bandwidth is encoded in 32 bits in IEEE 316 floating point format. The units are bytes per second. 318 Figure 5: OSPF FAEMB sub-TLV 320 The FAEMB sub-TLV MUST appear only once in the FAD sub-TLV. If it 321 appears more than once, the OSPF FAD TLV MUST be ignored by the 322 receiver. The total link bandwidth as advertised by the sub-TLV 6 of 323 the Extended Link TLV of Extended Link Opaque LSA [RFC 7684] is 324 compared against the Min bandwidth advertised in FAEMB sub-TLV. If 325 the link bandwidth is lesser, the link is excluded from the Flex-algo 326 topology of the corresponding Flex-algo which advertised the FAEMB 327 sub-TLV. If a link does not have the link bandwidth advertised but 328 the FAD contains this sub-TLV, then that link MUST be excluded from 329 the topology. 331 3.2.2. OSPF Exclude Maximum Delay sub-TLV 333 OSPF Flex-algo Exclude Maximum Delay sub-TLV (FAEMD) is a sub-TLV of 334 the OSPF FAD TLV. It has the following format. 336 0 1 2 3 337 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 338 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 339 | Type | Length | 340 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 341 | max link delay | 342 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 343 where: 345 Type: TBD 347 Length: 4 octets 349 Max link delay: Maximum link delay in microseconds 351 Figure 6: OSPF FAEMD sub-TLV 353 The FAEMD sub-TLV MUST appear only once in the OSPF FAD TLV. If it 354 appears more than once, the OSPF FAD TLV MUST be ignored by the 355 receiver. The link delay as advertised by the sub-TLV 27 of the 356 Extended Link TLV of Extended link opaque LSA [RFC 7684] is compared 357 against the Max delay advertised in FAEMD sub-TLV. If the link delay 358 value is higher, the link is excluded from the Flex-algo topology of 359 the corresponding Flex-algo which advertised the FAEMD sub-TLV. If a 360 link does not have the link delay advertised but the FAD contains 361 this sub-TLV, then that link MUST be excluded from the topology. 363 4. Automatic metric calculation 365 Networks which are designed to be highly regular and follow uniform 366 metric assignment may want to further simplify the operations by 367 automatically calculating the metric based on the reference bandwidth 368 or a staircase metric assignment based on bandwidth thresholds. 369 Based on the advertised rules, every node automatically calculates 370 the link metric of the links in the network before running SPF 371 algorithm. Based on the delay in receiving the link bandwidth 372 changes, there may be possibility of micro-loops which is no 373 different from IGP susceptibility to micro-loops during metric 374 change. The micro-loop avoidance procedures described in 375 [I-D.bashandy-rtgwg-segment-routing-uloop] can be used to avoid 376 micro-loops when the automatic metric calculation is deployed. 378 4.1. Simple mode 380 In simple mode, the link bandwidth of a single Layer 3 link is used. 381 Two ways of automatic metric calculation is supported. 383 1. Based on reference bandwidth 384 2. Staircase metric values based on bandwidth thresholds 386 4.2. Interface group mode 388 Simple mode of metric calculation may not work well when there are 389 multiple parallel layer 3 interfaces between two nodes. 391 A------B======C=======D 392 | | 393 ------E------- 395 Figure 7: Parallel interfaces 397 In the above diagram, there are two parallel links between B->C and 398 C->D. Lets assume the link bandwidth is uniform 10Gbps on all links. 399 When Simple mode of metric derivation is used,the metric is derived 400 as 10 on all links. Traffic will be load balanced beween B-> C->D 401 and B->E->D. Since the bandwidth is higher B->C->D path, the 402 requirement is t be able to assign smaller metric based on cumulative 403 metric for the parallel links. 405 In the interface group mode, every node identifies the set of 406 parallel links betweena pair of nodes based on IGP link 407 advertisements and considers cumulative bandwidth of the parallel 408 links while arriving at the metric for the link. Two ways of 409 automatic metric calculation is supported for interface group mode as 410 well. 412 1. Based on reference bandwidth 414 2. Staircase metric values based on bandwidth thresholds 416 The cumulative metric of the parallel link is used and based on 417 reference bandwidth or staircase metric assignment method, metric 418 value is derived. The derived metric is assigned to each of the 419 parallel link between nodes. Interface group mode is useful for 420 deployments that do not use L2 bundles. 422 4.3. ISIS FAD constraint sub-TLVs for automatic metric calculation 424 4.3.1. Reference Bandwidth sub-TLV 426 The Flexible Algorithm Definition Reference Bandwidth Sub-TLV (FADRB 427 Sub-TLV) is a Sub-TLV of the ISIS FAD sub-TLV. It has the following 428 format: 430 0 1 2 3 431 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 432 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 433 | Type | Length | Reserved |S| Flags | 434 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 435 | Reference Bandwidth | 436 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 437 | Roundoff BW. | 438 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 440 where: 442 Type: TBD 444 Length: 10 octets. 445 Reference Bandwidth: link bandwidth is encoded in 32 bits in IEEE 446 floating point format. The units are bytes per second. 447 Roundoff BW: link bandwidth is encoded in 32 bits in IEEE 448 floating point format. The units are bytes per second. 450 Flags: 452 0 1 2 3 4 5 6 7 453 +-+-+-+-+-+-+-+-+ 454 |S| | | | 455 +-+-+-+-+-+-+-+-+ 457 S-flag: when set, interface group Mode MUST be used to derive total link bandwidth. 459 Metric calculation: (Reference_bandwidth) / 460 (Total_link_bandwidth - 461 (Mod of(Total_link_bandwidth,roundoff_bw))) 463 Round-off BW value is used to make sure the the metric 464 does not change when there is smaller 465 change in the link bandwidth. 467 Figure 8: ISIS FADRB sub-TLV 469 The ISIS FADRB Sub-TLV MUST NOT appear more then once in an ISIS FAD 470 sub-TLV. If it appears more then once, the ISIS FAD sub-TLV MUST be 471 ignored by the receiver. 473 4.3.2. Threshold metric sub-TLV 475 The Flexible Algorithm Definition Threshold Bandwidth Sub-TLV (FADTB 476 Sub-TLV) is a Sub-TLV of the ISIS FAD sub-TLV. It has the following 477 format: 479 0 1 2 3 480 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 481 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 482 | Type | Length | Reserved |S| Flags | 483 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 484 | Threshold Bandwidth 1 Min. | 485 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 486 | Threshold Bandwidth 1 Max. | 487 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 488 | Threshold metric 1 | 489 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 490 ..... 491 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 492 | Threshold Bandwidth n Min. | 493 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 494 | Threshold Bandwidth n Max. | 495 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 496 | Threshold metric n | 497 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 499 where: 501 Type: TBD 503 Length: 2 + n*12 octets.Here n is equal to Number of Threshold Bandwidth sets specified. 505 Flags: 507 0 1 2 3 4 5 6 7 508 +-+-+-+-+-+-+-+-+ 509 |S| | | | 510 +-+-+-+-+-+-+-+-+ 512 S-flag: when set, interface group Mode MUST be used to derive total link bandwidth. 514 Staircase bandwidth threshold and associated metric values. 515 Threshold Bandwidth 1 Min.: Minimum link bandwidth is encoded in 32 bits in IEEE 516 floating point format. The units are bytes per second. 517 Threshold Bandwidth 1 Max.:Maximum link bandwidth is encoded in 32 bits in IEEE 518 floating point format. The units are bytes per second. 519 Threshold metric 1 : metric value range (1 - 4,294,967,296) 521 When the computed link bandwidth is in the range specified by 522 Min and Max threshold bandwidth values, 523 the corresponding metric value is assigned to the link during SPF calculation. 525 Figure 9: ISIS FADTB sub-TLV 527 The ISIS FADTB Sub-TLV MUST NOT appear more then once in an ISIS FAD 528 sub-TLV. If it appears more then once, the ISIS FAD sub-TLV MUST be 529 ignored by the receiver. 531 4.4. OSPF FAD constraint sub-TLVs for automatic metric calculation 533 4.4.1. Reference Bandwidth sub-TLV 535 The Flexible Algorithm Definition Reference Bandwidth Sub-TLV (FADRB 536 Sub-TLV) is a Sub-TLV of the OSPF FAD TLV. It has the following 537 format: 539 0 1 2 3 540 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 541 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 542 | Type | Length | 543 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 544 | Reserved |S| Flags | 545 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 546 | Reference Bandwidth | 547 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 548 | Roundoff BW. | 549 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 551 where: 553 Type: TBD 555 Length: 10 octets. 556 Reference Bandwidth: link bandwidth is encoded in 32 bits in IEEE 557 floating point format. The units are bytes per second. 558 Roundoff BW: link bandwidth is encoded in 32 bits in IEEE 559 floating point format. The units are bytes per second. 561 Flags: 563 0 1 2 3 4 5 6 7 564 +-+-+-+-+-+-+-+-+ 565 |S| | | | 566 +-+-+-+-+-+-+-+-+ 568 S-flag: when set, interface group Mode MUST be used 569 to derive total link bandwidth. 571 Metric calculation: (Reference_bandwidth) / 572 (Total_link_bandwidth - 573 (Mod of(Total_link_bandwidth,roundoff_bw))) 575 Round-off BW value is used to make sure the the 576 metric does not change when there is smaller 577 change in the link bandwidth. 579 Figure 10: OSPF FADRB sub-TLV 581 The OSPF FADRB Sub-TLV MUST NOT appear more then once in an OSPF FAD 582 TLV. If it appears more then once, the OSPF FAD TLV MUST be ignored 583 by the receiver. 585 4.4.2. Threshold metric sub-TLV 587 The Flexible Algorithm Definition Threshold Bandwidth Sub-TLV (FADTB 588 Sub-TLV) is a Sub-TLV of the OSPF FAD TLV. It has the following 589 format: 591 0 1 2 3 592 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 593 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 594 | Type | Length | 595 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 596 | Reserved |S| Flags | 597 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 598 | Threshold Bandwidth 1 Min. | 599 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 600 | Threshold Bandwidth 1 Max. | 601 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 602 | Threshold metric 1 | 603 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 604 ..... 605 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 606 | Threshold Bandwidth n Min. | 607 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 608 | Threshold Bandwidth n Max. | 609 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 610 | Threshold metric n | 611 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 613 where: 615 Type: TBD 617 Length: 2 + n*12 octets.Here n is equal to Number of Threshold Bandwidth specified. 619 Flags: 621 0 1 2 3 4 5 6 7 622 +-+-+-+-+-+-+-+-+ 623 |S| | | | 624 +-+-+-+-+-+-+-+-+ 626 S-flag: when set, interface group Mode MUST be used to derive total link bandwidth. 628 Stircase bandwidth threshold and associated metric values. 629 Threshold Bandwidth 1 Min.: Minimum link bandwidth is encoded in 32 bits in IEEE 630 floating point format. The units are bytes per second. 632 Threshold Bandwidth 1 Max.:Maximum link bandwidth is encoded in 32 bits in IEEE 633 floating point format. The units are bytes per second. 634 Threshold metric 1 : metric value range (1 - 4,294,967,296) 636 When the computed link bandwidth is in the range specified by 637 Min and Max threshold bandwidth values, 638 the corresponding metric value is assigned to the link during SPF calculation. 640 Figure 11: OSPF FADTB sub-TLV 642 The OSPF FADTB Sub-TLV MUST NOT appear more then once in an OSPF FAD 643 TLV. If it appears more then once, the OSPF FAD TLV MUST be ignored 644 by the receiver. 646 5. Backward Compatibility 648 6. Security Considerations 650 TBD 652 7. IANA Considerations 654 7.1. IGP Metric-Type Registry 656 Type: Suggested 3 (TBA) 658 Description: Bandwidth metric 660 Reference: This document 662 7.2. ISIS Sub-Sub-TLVs for Flexible Algorithm Definition Sub-TLV 664 Type: Suggested 6 (TBA) 666 Description: ISIS Exclude Minimum Bandwidth sub-TLV 668 Reference: This document Section 3.1.1 670 Type: Suggested 7 (TBA) 672 Description: ISIS Exclude Maximum Delay sub-TLV 674 Reference: This document Section 3.1.2 676 Type: Suggested 8 (TBA) 678 Description: ISIS Reference Bandwidth sub-TLV 679 Reference: This document Section 4.3.1 681 Type: Suggested 9 (TBA) 683 Description: ISIS Threshold metric sub-TLV 685 Reference: This document Section 4.3.2 687 7.3. OSPF Sub-TLVs for Flexible Algorithm Definition Sub-TLV 689 Type: Suggested 6 (TBA) 691 Description: OSPF Exclude Minimum Bandwidth sub-TLV 693 Reference: This document Section 3.2.1 695 Type: Suggested 7 (TBA) 697 Description: OSPF Exclude Maximum Delay sub-TLV 699 Reference: This document Section 3.2.2 701 Type: Suggested 8 (TBA) 703 Description: OSPF Reference Bandwidth sub-TLV 705 Reference: This document Section 4.4.1 707 Type: Suggested 9 (TBA) 709 Description: OSPF Threshold metric sub-TLV 711 Reference: This document Section 4.4.2 713 7.4. Sub-TLVs for TLVs 22, 23, 25, 141, 222, and 223 715 Type: Suggested 45 (TBA) 717 Description: Bandwidth metric 719 Reference: This document Section 2.1 721 7.5. Sub-sub-TLV Codepoints for Application-Specific Link Attributes 723 Type: Suggested 45 (TBA) 725 Description: Bandwidth metric 726 Reference: This document Section 2.1 728 7.6. OSPFv2 Extended Link TLV Sub-TLVs 730 Type: Suggested 45 (TBA) 732 Description: Bandwidth metric 734 Reference: This document Section 2.2 736 7.7. Types for sub-TLVs of TE Link TLV (Value 2) 738 Type: Suggested 45 (TBA) 740 Description: Bandwidth metric 742 Reference: This document Section 2.2 744 8. Acknowledgements 746 Many thanks to Chris Bowers, Krzysztof Szarcowitz, Julian Lucek, Ram 747 Santhanakrishnan for discussions and inputs. 749 9. Contributors 751 1. Salih K A 753 Juniper Networks 755 salih@juniper.net 757 10. References 759 10.1. Normative References 761 [I-D.ietf-lsr-flex-algo] 762 Psenak, P., Hegde, S., Filsfils, C., Talaulikar, K., and 763 A. Gulko, "IGP Flexible Algorithm", draft-ietf-lsr-flex- 764 algo-13 (work in progress), October 2020. 766 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 767 Requirement Levels", BCP 14, RFC 2119, 768 DOI 10.17487/RFC2119, March 1997, 769 . 771 [RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering 772 (TE) Extensions to OSPF Version 2", RFC 3630, 773 DOI 10.17487/RFC3630, September 2003, 774 . 776 [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic 777 Engineering", RFC 5305, DOI 10.17487/RFC5305, October 778 2008, . 780 [RFC7684] Psenak, P., Gredler, H., Shakir, R., Henderickx, W., 781 Tantsura, J., and A. Lindem, "OSPFv2 Prefix/Link Attribute 782 Advertisement", RFC 7684, DOI 10.17487/RFC7684, November 783 2015, . 785 10.2. Informative References 787 [I-D.bashandy-rtgwg-segment-routing-uloop] 788 Bashandy, A., Filsfils, C., Litkowski, S., Decraene, B., 789 Francois, P., and P. Psenak, "Loop avoidance using Segment 790 Routing", draft-bashandy-rtgwg-segment-routing-uloop-10 791 (work in progress), December 2020. 793 [RFC5120] Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi 794 Topology (MT) Routing in Intermediate System to 795 Intermediate Systems (IS-ISs)", RFC 5120, 796 DOI 10.17487/RFC5120, February 2008, 797 . 799 [RFC5311] McPherson, D., Ed., Ginsberg, L., Previdi, S., and M. 800 Shand, "Simplified Extension of Link State PDU (LSP) Space 801 for IS-IS", RFC 5311, DOI 10.17487/RFC5311, February 2009, 802 . 804 [RFC5316] Chen, M., Zhang, R., and X. Duan, "ISIS Extensions in 805 Support of Inter-Autonomous System (AS) MPLS and GMPLS 806 Traffic Engineering", RFC 5316, DOI 10.17487/RFC5316, 807 December 2008, . 809 [RFC7471] Giacalone, S., Ward, D., Drake, J., Atlas, A., and S. 810 Previdi, "OSPF Traffic Engineering (TE) Metric 811 Extensions", RFC 7471, DOI 10.17487/RFC7471, March 2015, 812 . 814 [RFC8570] Ginsberg, L., Ed., Previdi, S., Ed., Giacalone, S., Ward, 815 D., Drake, J., and Q. Wu, "IS-IS Traffic Engineering (TE) 816 Metric Extensions", RFC 8570, DOI 10.17487/RFC8570, March 817 2019, . 819 Authors' Addresses 821 Shraddha Hegde 822 Juniper Networks Inc. 823 Exora Business Park 824 Bangalore, KA 560103 825 India 827 Email: shraddha@juniper.net 829 William Britto A J 830 Juniper Networks Inc. 832 Email: bwilliam@juniper.net 834 Rajesh Shetty 835 Juniper Networks Inc. 837 Email: mrajesh@juniper.net 839 Bruno Decraene 840 Orange 842 Email: bruno.decraene@orange.com