idnits 2.17.1 draft-lp-lsr-fa-bandwidth-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 : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 53 has weird spacing: '...ndwidth const...' == Line 54 has weird spacing: '...ndwidth const...' -- The document date (April 22, 2021) is 1100 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 (-26) exists of draft-ietf-lsr-flex-algo-13 Summary: 0 errors (**), 0 flaws (~~), 4 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 LSR Working Group Yao. Liu 3 Internet-Draft Shaofu. Peng 4 Intended status: Standards Track ZTE Corp. 5 Expires: October 24, 2021 April 22, 2021 7 Flexible Algorithm with Bandwidth Constrains 8 draft-lp-lsr-fa-bandwidth-00 10 Abstract 12 This document proposes extensions for IGP to allow the computation 13 based on bandwidth constraints together with the existing metric in 14 Flexible Algorithm. 16 Status of This Memo 18 This Internet-Draft is submitted in full conformance with the 19 provisions of BCP 78 and BCP 79. 21 Internet-Drafts are working documents of the Internet Engineering 22 Task Force (IETF). Note that other groups may also distribute 23 working documents as Internet-Drafts. The list of current Internet- 24 Drafts is at https://datatracker.ietf.org/drafts/current/. 26 Internet-Drafts are draft documents valid for a maximum of six months 27 and may be updated, replaced, or obsoleted by other documents at any 28 time. It is inappropriate to use Internet-Drafts as reference 29 material or to cite them other than as "work in progress." 31 This Internet-Draft will expire on October 24, 2021. 33 Copyright Notice 35 Copyright (c) 2021 IETF Trust and the persons identified as the 36 document authors. All rights reserved. 38 This document is subject to BCP 78 and the IETF Trust's Legal 39 Provisions Relating to IETF Documents 40 (https://trustee.ietf.org/license-info) in effect on the date of 41 publication of this document. Please review these documents 42 carefully, as they describe your rights and restrictions with respect 43 to this document. Code Components extracted from this document must 44 include Simplified BSD License text as described in Section 4.e of 45 the Trust Legal Provisions and are provided without warranty as 46 described in the Simplified BSD License. 48 Table of Contents 50 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 51 2. Conventions used in this document . . . . . . . . . . . . . . 2 52 2.1. Requirements Language . . . . . . . . . . . . . . . . . . 2 53 3. ISIS bandwidth constraint Sub-TLV of ISIS FAD Sub-TLV . . . 3 54 4. OSPF bandwidth constraint Sub-TLV of ISIS FAD Sub-TLV . . . 3 55 5. Calculation of Flex Algorithm Paths . . . . . . . . . . . . . 4 56 5.1. Calculation . . . . . . . . . . . . . . . . . . . . . . . 5 57 5.2. Illustration . . . . . . . . . . . . . . . . . . . . . . 6 58 6. Security Considerations . . . . . . . . . . . . . . . . . . . 6 59 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 60 7.1. ISIS Sub-Sub-TLVs for Flexible Algorithm Definition Sub- 61 TLV . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 62 7.2. OSPF Sub-Sub-TLVs for Flexible Algorithm Definition Sub- 63 TLV . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 64 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 65 8.1. Normative References . . . . . . . . . . . . . . . . . . 7 66 8.2. Informative References . . . . . . . . . . . . . . . . . 7 67 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 69 1. Introduction 71 [I-D.ietf-lsr-flex-algo] defines the Flex-Algorithm as a set of 72 parameters consisting of calculation-type, metric-type and a set of 73 constraints. The metric includes igp-metric, te-metric, delay- 74 metric, and etc. 76 While the calculation of a path based on metrics is accumulative, 77 e.g, the path calculated based on the delay-metric is that with the 78 smallest sum of the metrics of each link. The bandwidth of a path 79 depends on the link with the smallest bandwidth among the links that 80 comprise the path. 82 It's more appropriate that the bandwidth acts as a constraint instead 83 of a metric in the path computation. 85 This document proposes extensions for IGP to allow the computation 86 based on bandwidth constraints together with the existing metric in 87 FLex-Algo. 89 2. Conventions used in this document 91 2.1. Requirements Language 93 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 94 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 95 "OPTIONAL" in this document are to be interpreted as described in BCP 96 14 [RFC2119] [RFC8174] when, and only when, they appear in all 97 capitals, as shown here. 99 3. ISIS bandwidth constraint Sub-TLV of ISIS FAD Sub-TLV 101 This document defines the ISIS bandwidth constraint Sub-TLV. It is a 102 Sub-TLV of the ISIS FAD Sub-TLV [I-D.ietf-lsr-flex-algo] and has the 103 following format: 105 0 1 2 3 106 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 107 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 108 | Type | Length | BW-Con Type | Reserved | 109 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 111 Figure 1: ISIS bandwidth constraint Sub-TLV 113 where: 115 o Type: TBA 117 o Length: 1 octets 119 o BW-Con Type: 1 octets of bandwidth constraint information. 121 The BW-Con Type has the following values: 123 1: Choose the link with Maximum Link Bandwidth ( MLB defined in 124 [RFC5305] ). 126 2: Choose the link with maximum Unidirectional Available Bandwidth ( 127 UAB defined in [RFC8570] ). 129 3: Choose the link with the lowest bandwidth utilization rate. 131 The ISIS bandwidth constraint Sub-TLV MUST NOT appear more than once 132 in an ISIS FAD Sub-TLV. If it appears more than once, the ISIS FAD 133 Sub-TLV MUST be ignored by the receiver. 135 4. OSPF bandwidth constraint Sub-TLV of ISIS FAD Sub-TLV 137 This document defines the OSPF bandwidth constraint Sub-TLV. It is a 138 Sub-TLV of the OSPF FAD Sub-TLV [I-D.ietf-lsr-flex-algo] and has the 139 following format: 141 0 1 2 3 142 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 143 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 144 | Type | Length | 145 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 146 | BW-Con Type | Reserved | 147 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 149 Figure 2: OSPF bandwidth constraint Sub-TLV 151 where: 153 o Type: TBA 155 o Length: 1 octets 157 o BW-Con Type: 1 octets of bandwidth constraint information. 159 The BW-Con Type has the following values: 161 1: Choose the link with Maximum Bandwidth ( MB defined in [RFC3630] 162 ). 164 2: Choose the link with maximum Unidirectional Available Bandwidth ( 165 UAB defined in [RFC7471] ). 167 3: Choose the link with the lowest bandwidth utilization rate. 169 The OSPF bandwidth constraint Sub-TLV MUST NOT appear more than once 170 in a OSPF FAD Sub-TLV. If it appears more than once, the OSPF FAD 171 Sub-TLV MUST be ignored by the receiver. 173 5. Calculation of Flex Algorithm Paths 175 Routes that don't support the bandwidth constraint Sub-TLV MUST NOT 176 participate in the corresponding Flex-Algo plane. 178 Existing rules for calculation of Flex-Algorithm paths specified in 179 [I-D.ietf-lsr-flex-algo] are still applicable. 181 As for the new bandwidth constraint, first, select the optimal 182 path(s) only according to the bandwidth constraint. If there are 183 multiple candidate paths satisfying the bandwidth constraint, then 184 select the best path based on the metric computation from these 185 candidate paths. 187 5.1. Calculation 189 The result of IGP flex algo shortest path calculation based on 190 bandwidth constraints is that each participating node in flex algo 191 plane constructs a SPT (with itself as the root) per algorithm, which 192 contains all other participating nodes as destination nodes. 194 Step1: Assume S is the root, and other nodes are D1, D2, D3,... Dn. 196 Step2: Find all paths from source node S to destination node D1. 197 Suppose there is one or more paths, and it is recorded as path-1, 198 path-2,..., path-m, where m > =1. 200 Step3: Initializes the current root node (cur-root) to S. Take two 201 paths (such as path-1 and path-2) to compare to see who is more 202 qualified for the constraint. Note that as mentioned above, the 203 constraint conditions here refer to the combination of bandwidth 204 constraint and metric, and compare based on bandwidth constraints 205 firstly and then metric secondly. This can be compared in segments, 206 that is, from the current root node to the destination node, finding 207 a first crossed node which appears in two paths at the same time and 208 is recorded as the current branch (cur-branch) node. 210 Step4: Compare the path segment from the current root node to the 211 current branch node in the two paths to see who is more qualified for 212 the path. If one of the two path segments is optimal and the other 213 is suboptimal, it means that one of the two paths is optimal than the 214 other. Add the optimal path to the "winning group". Note that if 215 the path of the suboptimal is originally in the "winning group", the 216 "winning group" should be cleared firstly and then new optimal path 217 is added. The optimal path continues to compare with other paths, 218 jump to Step3. 220 Otherwise, if the two path fragments are both optimal, the current 221 root node (cur root) is updated as the current branch node. If the 222 current root node reaches the destination node, the comparison is 223 finished, and the two paths join the "winning group" to form ECMP 224 (equal cost multi path equivalent multipath); otherwise, continue to 225 find the next crossed node in the two paths as the new current branch 226 node, and jump to Step4. 228 Step5: The above result will get the shortest paths from S to D1. 229 Similarly, repeating Step2 for destination D2, D3,..., Dn 230 respectively will get the shortest path from S to D2, D3,..., Dn 231 respectively. Thus the shortest path tree with S as the root node in 232 the flex algo plane is constructed. 234 5.2. Illustration 236 +----D----+ 237 | | 238 A------B C 239 | | 240 +----E----+ 242 Figure 3: Reference Topology 244 As shown in Figure 3, there're 5 nodes in the given FA plane, whose 245 metric type is delay metric and the bandwidth constrain is to choose 246 the link with the maximum total bandwidth. 248 The bandwidth and metric for each link is shown in Table 1. 250 +------+-----------+--------+ 251 | Link | Bandwidth | Metric | 252 +------+-----------+--------+ 253 | A-B | 100 | 10 | 254 | B-D | 5 | 2 | 255 | D-C | 10 | 2 | 256 | B-E | 10 | 1 | 257 | E-C | 5 | 1 | 258 +------+-----------+--------+ 260 Table 1: Bandwidth and Metric 262 It is required to calculate the optimal path from A to C in this FA 263 plane. 265 First, select the path who has the maximum bandwidth . Since the 266 bandwidth of a path depends on the link with the smallest bandwidth, 267 the maximum bandwidth s of path A-B-D-C and A-B-E-C are both 5. 268 These two paths are chosen as candidate paths. 270 Second, compare the metric values of the candidate paths. The metric 271 of path A-B-E-C is smaller, so it is chosen as the best path. 273 6. Security Considerations 275 TBD 277 7. IANA Considerations 279 7.1. ISIS Sub-Sub-TLVs for Flexible Algorithm Definition Sub-TLV 281 Type: TBA 283 Description: bandwidth constraint Sub-TLV 285 Reference: This document. 287 7.2. OSPF Sub-Sub-TLVs for Flexible Algorithm Definition Sub-TLV 289 Type: TBA 291 Description: bandwidth constraint Sub-TLV 293 Reference: This document. 295 8. References 297 8.1. Normative References 299 [I-D.ietf-lsr-flex-algo] 300 Psenak, P., Hegde, S., Filsfils, C., Talaulikar, K., and 301 A. Gulko, "IGP Flexible Algorithm", draft-ietf-lsr-flex- 302 algo-13 (work in progress), October 2020. 304 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 305 Requirement Levels", BCP 14, RFC 2119, 306 DOI 10.17487/RFC2119, March 1997, 307 . 309 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 310 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 311 May 2017, . 313 8.2. Informative References 315 [RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering 316 (TE) Extensions to OSPF Version 2", RFC 3630, 317 DOI 10.17487/RFC3630, September 2003, 318 . 320 [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic 321 Engineering", RFC 5305, DOI 10.17487/RFC5305, October 322 2008, . 324 [RFC7471] Giacalone, S., Ward, D., Drake, J., Atlas, A., and S. 325 Previdi, "OSPF Traffic Engineering (TE) Metric 326 Extensions", RFC 7471, DOI 10.17487/RFC7471, March 2015, 327 . 329 [RFC8570] Ginsberg, L., Ed., Previdi, S., Ed., Giacalone, S., Ward, 330 D., Drake, J., and Q. Wu, "IS-IS Traffic Engineering (TE) 331 Metric Extensions", RFC 8570, DOI 10.17487/RFC8570, March 332 2019, . 334 Authors' Addresses 336 Liu Yao 337 ZTE Corp. 339 Email: liu.yao71@zte.com.cn 341 Peng Shaofu 342 ZTE Corp. 344 Email: peng.shaofu@zte.com.cn