idnits 2.17.1 draft-malhotra-bess-evpn-unequal-lb-03.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 : ---------------------------------------------------------------------------- ** The document seems to lack a Security Considerations section. ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document seems to lack the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords -- however, there's a paragraph with a matching beginning. Boilerplate error? (The document does seem to have the reference to RFC 2119 which the ID-Checklist requires). -- The document date (June 27, 2018) is 2128 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: 'PE-1' is mentioned on line 419, but not defined == Missing Reference: 'PE-2' is mentioned on line 419, but not defined == Missing Reference: 'PE-3' is mentioned on line 419, but not defined == Missing Reference: 'XXX' is mentioned on line 396, but not defined == Missing Reference: 'RFC 7814' is mentioned on line 601, but not defined -- Possible downref: Non-RFC (?) normative reference: ref. 'BGP-LINK-BW' -- Possible downref: Non-RFC (?) normative reference: ref. 'EVPN-IP-ALIASING' -- Possible downref: Non-RFC (?) normative reference: ref. 'EVPN-DF-PREF' -- Possible downref: Non-RFC (?) normative reference: ref. 'EVPN-PER-MCAST-FLOW-DF' -- Possible downref: Non-RFC (?) normative reference: ref. 'EVPN-DF-ELECT-FRAMEWORK' Summary: 2 errors (**), 0 flaws (~~), 7 warnings (==), 6 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 INTERNET-DRAFT N. Malhotra, Ed. 4 A. Sajassi 5 Intended Status: Proposed Standard Cisco 6 J. Rabadan 7 Nokia 8 J. Drake 9 Juniper 10 A. Lingala 11 AT&T 12 S. Thoria 13 Cisco 15 Expires: Dec 29, 2018 June 27, 2018 17 Weighted Multi-Path Procedures for EVPN All-Active Multi-Homing 18 draft-malhotra-bess-evpn-unequal-lb-03 20 Abstract 22 In an EVPN-IRB based network overlay, EVPN LAG enables all-active 23 multi-homing for a host or CE device connected to two or more PEs via 24 a LAG bundle, such that bridged and routed traffic from remote PEs 25 can be equally load balanced (ECMPed) across the multi-homing PEs. 26 This document defines extensions to EVPN procedures to optimally 27 handle unequal access bandwidth distribution across a set of multi- 28 homing PEs in order to: 30 o provide greater flexibility, with respect to adding or 31 removing individual PE-CE links within the access LAG 33 o handle PE-CE LAG member link failures that can result in unequal 34 PE-CE access bandwidth across a set of multi-homing PEs 36 Status of this Memo 38 This Internet-Draft is submitted to IETF in full conformance with 39 the provisions of BCP 78 and BCP 79. 41 Internet-Drafts are working documents of the Internet Engineering 42 Task Force (IETF), its areas, and its working groups. Note that 43 other groups may also distribute working documents as 44 Internet-Drafts. 46 Internet-Drafts are draft documents valid for a maximum of six 47 months and may be updated, replaced, or obsoleted by other 48 documents at any time. It is inappropriate to use Internet- 49 Drafts as reference material or to cite them other than as "work 50 in progress." 52 The list of current Internet-Drafts can be accessed at 53 http://www.ietf.org/1id-abstracts.html 55 The list of Internet-Draft Shadow Directories can be accessed at 56 http://www.ietf.org/shadow.html 58 Copyright and License Notice 60 Copyright (c) 2017 IETF Trust and the persons identified as the 61 document authors. All rights reserved. 63 This document is subject to BCP 78 and the IETF Trust's Legal 64 Provisions Relating to IETF Documents 65 (http://trustee.ietf.org/license-info) in effect on the date of 66 publication of this document. Please review these documents 67 carefully, as they describe your rights and restrictions with 68 respect to this document. Code Components extracted from this 69 document must include Simplified BSD License text as described in 70 Section 4.e of the Trust Legal Provisions and are provided 71 without warranty as described in the Simplified BSD License. 73 Table of Contents 75 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 76 1.1 PE CE Link Provisioning . . . . . . . . . . . . . . . . . . 5 77 1.2 PE CE Link Failures . . . . . . . . . . . . . . . . . . . . 6 78 1.3 Design Requirement . . . . . . . . . . . . . . . . . . . . . 7 79 1.4 Terminology . . . . . . . . . . . . . . . . . . . . . . . . 7 80 2. Solution Overview . . . . . . . . . . . . . . . . . . . . . . . 8 81 3. Weighted Unicast Traffic Load-balancing . . . . . . . . . . . 8 82 3.1 LOCAL PE Behavior . . . . . . . . . . . . . . . . . . . . . 8 83 3.1 Link Bandwidth Extended Community . . . . . . . . . . . . . 8 84 3.2 REMOTE PE Behavior . . . . . . . . . . . . . . . . . . . . . 9 85 4. Weighted BUM Traffic Load-Sharing . . . . . . . . . . . . . . 10 86 4.1 The BW Capability in the DF Election Extended Community . . 10 87 4.2 BW Capability and Default DF Election algorithm . . . . . . 11 88 4.3 BW Capability and HRW DF Election algorithm (Type 1 and 89 4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 90 4.3.1 BW Increment . . . . . . . . . . . . . . . . . . . . . . 11 91 4.3.2 HRW Hash Computations with BW Increment . . . . . . . . 12 92 4.3.3 Cost-Benefit Tradeoff on Link Failures . . . . . . . . . 13 94 4.4 BW Capability and Preference DF Election algorithm . . . . 14 95 5. Real-time Available Bandwidth . . . . . . . . . . . . . . . . . 15 96 6. Routed EVPN Overlay . . . . . . . . . . . . . . . . . . . . . . 15 97 7. EVPN-IRB Multi-homing with non-EVPN routing . . . . . . . . . . 16 98 7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 17 99 7.1 Normative References . . . . . . . . . . . . . . . . . . . 17 100 7.2 Informative References . . . . . . . . . . . . . . . . . . 17 101 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 18 102 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 18 104 1 Introduction 106 In an EVPN-IRB based network overlay, with an access CE multi-homed 107 via a LAG interface, bridged and routed traffic from remote PEs can 108 be equally load balanced (ECMPed) across the multi-homing PEs: 110 o ECMP Load-balancing for bridged unicast traffic is enabled via 111 aliasing and mass-withdraw procedures detailed in RFC 7432. 113 o ECMP Load-balancing for routed unicast traffic is enabled via 114 existing L3 ECMP mechanisms. 116 o Load-sharing of bridged BUM traffic on local ports is enabled 117 via EVPN DF election procedure detailed in RFC 7432 119 All of the above load-balancing and DF election procedures implicitly 120 assume equal bandwidth distribution between the CE and the set of 121 multi-homing PEs. Essentially, with this assumption of equal "access" 122 bandwidth distribution across all PEs, ALL remote traffic is equally 123 load balanced across the multi-homing PEs. This assumption of equal 124 access bandwidth distribution can be restrictive with respect to 125 adding / removing links in a multi-homed LAG interface and may also 126 be easily broken on individual link failures. A solution to handle 127 unequal access bandwidth distribution across a set of multi-homing 128 EVPN PEs is proposed in this document. Primary motivation behind this 129 proposal is to enable greater flexibility with respect to adding / 130 removing member PE-CE links, as needed and to optimally handle PE-CE 131 link failures. 133 1.1 PE CE Link Provisioning 135 +------------------------+ 136 | Underlay Network Fabric| 137 +------------------------+ 139 +-----+ +-----+ 140 | PE1 | | PE2 | 141 +-----+ +-----+ 142 \ / 143 \ ESI-1 / 144 \ / 145 +\---/+ 146 | \ / | 147 +--+--+ 148 | 149 CE1 151 Figure 1 153 Consider a CE1 that is dual-homed to PE1 and PE2 via EVPN-LAG with 154 single member links of equal bandwidth to each PE (aka, equal access 155 bandwidth distribution across PE1 and PE2). If the provider wants to 156 increase link bandwidth to CE1, it MUST add a link to both PE1 and 157 PE2 in order to maintain equal access bandwidth distribution and 158 inter-work with EVPN ECMP load-balancing. In other words, for a dual- 159 homed CE, total number of CE links must be provisioned in multiples 160 of 2 (2, 4, 6, and so on). For a triple-homed CE, number of CE links 161 must be provisioned in multiples of three (3, 6, 9, and so on). To 162 generalize, for a CE that is multi-homed to "n" PEs, number of PE-CE 163 physical links provisioned must be an integral multiple of "n". This 164 is restrictive in case of dual-homing and very quickly becomes 165 prohibitive in case of multi-homing. 167 Instead, a provider may wish to increase PE-CE bandwidth OR number of 168 links in ANY link increments. As an example, for CE1 dual-homed to 169 PE1 and PE2 in all-active mode, provider may wish to add a third link 170 to ONLY PE1 to increase total bandwidth for this CE by 50%, rather 171 than being required to increase access bandwidth by 100% by adding a 172 link to each of the two PEs. While existing EVPN based all-active 173 load-balancing procedures do not necessarily preclude such asymmetric 174 access bandwidth distribution among the PEs providing redundancy, it 175 may result in unexpected traffic loss due to congestion in the access 176 interface towards CE. This traffic loss is due to the fact that PE1 177 and PE2 will continue to attract equal amount of CE1 destined traffic 178 from remote PEs, even when PE2 only has half the bandwidth to CE1 as 179 PE1. This may lead to congestion and traffic loss on the PE2-CE1 180 link. If bandwidth distribution to CE1 across PE1 and PE2 is 2:1, 181 traffic from remote hosts MUST also be load-balanced across PE1 and 182 PE2 in 2:1 manner. 184 1.2 PE CE Link Failures 186 More importantly, unequal PE-CE bandwidth distribution described 187 above may occur during regular operation following a link failure, 188 even when PE-CE links were provisioned to provide equal bandwidth 189 distribution across multi-homing PEs. 191 +------------------------+ 192 | Underlay Network Fabric| 193 +------------------------+ 195 +-----+ +-----+ 196 | PE1 | | PE2 | 197 +-----+ +-----+ 198 \\ // 199 \\ ESI-1 // 200 \\ /X 201 +\\---//+ 202 | \\ // | 203 +---+---+ 204 | 205 CE1 207 Consider a CE1 that is multi-homed to PE1 and PE2 via a link bundle 208 with two member links to each PE. On a PE2-CE1 physical link failure, 209 link bundle represented by ESI-1 on PE2 stays up, however, it's 210 bandwidth is cut in half. With the existing ECMP procedures, both PE1 211 and PE2 will continue to attract equal amount of traffic from remote 212 PEs, even when PE1 has double the bandwidth to CE1. If bandwidth 213 distribution to CE1 across PE1 and PE2 is 2:1, traffic from remote 214 hosts MUST also be load-balanced across PE1 and PE2 in 2:1 manner to 215 avoid unexpected congestion and traffic loss on PE2-CE1 links within 216 the LAG. 218 1.3 Design Requirement 220 +-----------------------+ 221 |Underlay Network Fabric| 222 +-----------------------+ 224 +-----+ +-----+ +-----+ +-----+ 225 | PE1 | | PE2 | ..... | PEx | | PEn | 226 +-----+ +-----+ +-----+ +-----+ 227 \ \ // // 228 \ L1 \ L2 // Lx // Ln 229 \ \ // // 230 +-\-------\-----------//--------//-+ 231 | \ \ ESI-1 // // | 232 +----------------------------------+ 233 | 234 CE 236 To generalize, if total link bandwidth to a CE is distributed across 237 "n" multi-homing PEs, with Lx being the number of links / bandwidth 238 to PEx, traffic from remote PEs to this CE MUST be load-balanced 239 unequally across [PE1, PE2, ....., PEn] such that, fraction of total 240 unicast and BUM flows destined for CE that are serviced by PEx is: 242 Lx / [L1+L2+.....+Ln] 244 Solution proposed below includes extensions to EVPN procedures to 245 achieve the above. 247 1.4 Terminology 249 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 250 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 251 "OPTIONAL" in this document are to be interpreted as described in 252 BCP14 [RFC2119] [RFC8174] when, and only when, they appear in all 253 capitals, as shown here. 255 "LOCAL PE" in the context of an ESI refers to a provider edge switch 256 OR router that physically hosts the ESI. 258 "REMOTE PE" in the context of an ESI refers to a provider edge switch 259 OR router in an EVPN overlay, who's overlay reachability to the ESI 260 is via the LOCAL PE. 262 2. Solution Overview 264 In order to achieve weighted load balancing for overlay unicast 265 traffic, Ethernet A-D per-ES route (EVPN Route Type 1) is leveraged 266 to signal the ESI bandwidth to remote PEs. Using Ethernet A-D per-ES 267 route to signal the ESI bandwidth provides a mechanism to be able to 268 react to changes in access bandwidth in a service and host 269 independent manner. Remote PEs computing the MAC path-lists based on 270 global and aliasing Ethernet A-D routes now have the ability to setup 271 weighted load-balancing path-lists based on the ESI access bandwidth 272 received from each PE that the ESI is multi-homed to. If Ethernet A-D 273 per-ES route is also leveraged for IP path-list computation, as per 274 [EVPN-IP-ALIASING], it also provides a method to do weighted load- 275 balancing for IP routed traffic. 277 In order to achieve weighted load-balancing of overlay BUM traffic, 278 EVPN ES route (Route Type 4) is leveraged to signal the ESI bandwidth 279 to PEs within an ESI's redundancy group to influence per-service DF 280 election. PEs in an ESI redundancy group now have the ability to do 281 service carving in proportion to each PE's relative ESI bandwidth. 283 Procedures to accomplish this are described in greater detail next. 285 3. Weighted Unicast Traffic Load-balancing 287 3.1 LOCAL PE Behavior 289 A PE that is part of an ESI's redundancy group would advertise a 290 additional "link bandwidth" EXT-COMM attribute with Ethernet A-D per- 291 ES route (EVPN Route Type 1), that represents total bandwidth of PE's 292 physical links in an ESI. BGP link bandwidth EXT-COMM defined in 293 [BGP-LINK-BW] is re-used for this purpose. 295 3.1 Link Bandwidth Extended Community 297 Link bandwidth extended community described in [BGP-LINK-BW] for 298 layer 3 VPNs is re-used here to signal local ES link bandwidth to 299 remote PEs. link-bandwidth extended community is however defined in 300 [BGP-LINK-BW] as optional non-transitive. In inter-AS scenarios, 301 link-bandwidth may need to be signaled to an eBGP neighbor along with 302 next-hop unchanged. It is work in progress with authors of [BGP-LINK- 303 BW] to allow for this attribute to be used as transitive in inter-AS 304 scenarios. 306 3.2 REMOTE PE Behavior 308 A receiving PE should use per-ES link bandwidth attribute received 309 from each PE to compute a relative weight for each remote PE, per-ES, 310 as shown below. 312 if, 314 L(x,y) : link bandwidth advertised by PE-x for ESI-y 316 W(x,y) : normalized weight assigned to PE-x for ESI-y 318 H(y) : Highest Common Factor (HCF) of [L(1,y), L(2,y), ....., 319 L(n,y)] 321 then, the normalized weight assigned to PE-x for ESI-y may be 322 computed as follows: 324 W(x,y) = L(x,y) / H(y) 326 For a MAC+IP route (EVPN Route Type 2) received with ESI-y, receiving 327 PE MUST compute MAC and IP forwarding path-list weighted by the above 328 normalized weights. 330 As an example, for a CE dual-homed to PE-1, PE-2, PE-3 via 2, 1, and 331 1 GE physical links respectively, as part of a link bundle 332 represented by ESI-10: 334 L(1, 10) = 2000 Mbps 336 L(2, 10) = 1000 Mbps 338 L(3, 10) = 1000 Mbps 340 H(10) = 1000 342 Normalized weights assigned to each PE for ESI-10 are as follows: 344 W(1, 10) = 2000 / 1000 = 2. 346 W(2, 10) = 1000 / 1000 = 1. 348 W(3, 10) = 1000 / 1000 = 1. 350 For a remote MAC+IP host route received with ESI-10, forwarding load- 351 balancing path-list must now be computed as: [PE-1, PE-1, PE-2, PE-3] 352 instead of [PE-1, PE-2, PE-3]. This now results in load-balancing of 353 all traffic destined for ESI-10 across the three multi-homing PEs in 354 proportion to ESI-10 bandwidth at each PE. 356 Above weighted path-list computation MUST only be done for an ESI, IF 357 a link bandwidth attribute is received from ALL of the PE's 358 advertising reachability to that ESI via Ethernet A-D per-ES Route 359 Type 1. In the event that link bandwidth attribute is not received 360 from one or more PEs, forwarding path-list would be computed using 361 regular ECMP semantics. 363 4. Weighted BUM Traffic Load-Sharing 365 Optionally, load sharing of per-service DF role, weighted by 366 individual PE's link-bandwidth share within a multi-homed ES may also 367 be achieved. 369 In order to do that, a new DF Election Capability [EVPN-DF-ELECT- 370 FRAMEWORK] called "BW" (Bandwidth Weighted DF Election) is defined. 371 BW may be used along with some DF Election Types, as described in the 372 following sections. 374 4.1 The BW Capability in the DF Election Extended Community 376 [EVPN-DF-ELECT-FRAMEWORK] defines a new extended community for PEs 377 within a redundancy group to signal and agree on uniform DF Election 378 Type and Capabilities for each ES. This document requests a bit in 379 the DF Election extended community Bitmap: 381 Bit 28: BW (Bandwidth Weighted DF Election) 383 ES routes advertised with the BW bit set will indicate the desire of 384 the advertising PE to consider the link-bandwidth in the DF Election 385 algorithm defined by the value in the "DF Type". 387 As per [EVPN-DF-ELECT-FRAMEWORK], all the PEs in the ES MUST 388 advertise the same Capabilities and DF Type, otherwise the PEs will 389 fall back to Default [RFC7432] DF Election procedure. 391 The BW Capability MAY be advertised with the following DF Types: 393 o Type 0: Default DF Election algorithm, as in [RFC7432] 394 o Type 1: HRW algorithm, as in [EVPN-DF-ELECT-FRAMEWORK] 395 o Type 2: Preference algorithm, as in [EVPN-DF-PREF] 396 o Type 4: HRW per-multicast flow DF Election, as in [XXX] 398 The following sections describe how the DF Election procedures are 399 modified for the above DF Types when the BW Capability is used. 401 4.2 BW Capability and Default DF Election algorithm 403 When all the PEs in the ES agree to use the BW Capability with DF 404 Type 0, the Default DF Election procedure is modified as follows: 406 o Each PE advertises a "Link Bandwidth" EXT-COMM attribute along 407 with the ES route to signal the PE-CE link bandwidth (LBW) for 408 the ES. 409 o A receiving PE MUST use the ES link bandwidth attribute 410 received from each PE to compute a relative weight for each 411 remote PE. 412 o The DF Election procedure MUST now use this weighted list of PEs 413 to compute the per-VLAN Designated Forwarder, such that the DF 414 role is distributed in proportion to this normalized weight. 416 Considering the same example as in Section 3, the candidate PE list 417 for DF election is: 419 [PE-1, PE-1, PE-2, PE-3]. 421 The DF for a given VLAN-a on ES-10 is now computed as (VLAN-a % 4). 422 This would result in the DF role being distributed across PE1, PE2, 423 and PE3 in portion to each PE's normalized weight for ES-10. 425 4.3 BW Capability and HRW DF Election algorithm (Type 1 and 4) 427 [EVPN-DF-ELECT-FRAMEWORK] introduces Highest Random Weight (HRW) 428 algorithm (DF Type 1) for DF election in order to solve potential DF 429 election skew depending on Ethernet tag space distribution. [EVPN- 430 PER-MCAST-FLOW-DF] further extends HRW algorithm for per-multicast 431 flow based hash computations (DF Type 4). This section describes 432 extensions to HRW Algorithm for EVPN DF Election specified in [EVPN- 433 DF-ELECT-FRAMEWORK] and in [EVPN-PER-MCAST-FLOW-DF] in order to 434 achieve DF election distribution that is weighted by link bandwidth. 436 4.3.1 BW Increment 438 A new variable called "bandwidth increment" is computed for each [PE, 439 ES] advertising the ES link bandwidth attribute as follows: 441 In the context of an ES, 443 L(i) = Link bandwidth advertised by PE(i) for this ES 445 L(min) = lowest link bandwidth advertised across all PEs for this ES 447 Bandwidth increment, "b(i)" for a given PE(i) advertising a link 448 bandwidth of L(i) is defined as an integer value computed as: 450 b(i) = L(i) / L(min) 452 As an example, 454 with PE(1) = 10, PE(2) = 10, PE(3) = 20 456 bandwidth increment for each PE would be computed as: 458 b(1) = 1, b(2) = 1, b(3) = 2 460 with PE(1) = 10, PE(2) = 10, PE(3) = 10 462 bandwidth increment for each PE would be computed as: 464 b(1) = 1, b(2) = 1, b(3) = 1 466 Note that the bandwidth increment must always be an integer, 467 including, in an unlikely scenario of a PE's link bandwidth not being 468 an exact multiple of L(min). If it computes to a non-integer value 469 (including as a result of link failure), it MUST be rounded down to 470 an integer. 472 4.3.2 HRW Hash Computations with BW Increment 474 HRW algorithm as described in [EVPN-DF-ELECT-FRAMEWORK] and in [EVPN- 475 PER-MCAST-FLOW-DF] compute a random hash value (referred to as 476 affinity here) for each PE(i), where, (0 < i <= N), PE(i) is the PE 477 at ordinal i, and Address(i) is the IP address of PE at ordinal i. 479 For 'N' PEs sharing an Ethernet segment, this results in 'N' 480 candidate hash computations. PE that has the highest hash value is 481 selected as the DF. 483 Affinity computation for each PE(i) is extended to be computed one 484 per-bandwidth increment associated with PE(i) instead of a single 485 affinity computation per PE(i). 487 PE(i) with b(i) = j, results in j affinity computations: 489 affinity(i, x), where 1 < x <= j 491 This essentially results in number of candidate HRW hash computations 492 for each PE that is directly proportional to that PE's relative 493 bandwidth within an ES and hence gives PE(i) a probability of being 494 DF in proportion to it's relative bandwidth within an ES. 496 As an example, consider an ES that is multi-homed to two PEs, PE1 and 497 PE2, with equal bandwidth distribution across PE1 and PE2. This would 498 result in a total of two candidate hash computations: 500 affinity(PE1, 1) 502 affinity(PE2, 1) 504 Now, consider a scenario with PE1's link bandwidth as 2x that of PE2. 505 This would result in a total of three candidate hash computations to 506 be used for DF election: 508 affinity(PE1, 1) 510 affinity(PE1, 2) 512 affinity(PE2, 1) 514 which would give PE1 2/3 probability of getting elected as a DF, in 515 proportion to its relative bandwidth in the ES. 517 Depending on the chosen HRW hash function, affinity function MUST be 518 extended to include bandwidth increment in the computation. 520 For e.g., 522 affinity function specified in [EVPN-PER-MCAST-FLOW-DF] MAY be 523 extended as follows to incorporate bandwidth increment j: 525 affinity(S,G,V, ESI, Address(i,j)) = 526 (1103515245.((1103515245.Address(i).j + 12345) XOR 527 D(S,G,V,ESI))+12345) (mod 2^31) 529 affinity or random function specified in [EVPN-DF-ELECT-FRAMEWORK] 530 MAY be extended as follows to incorporate bandwidth increment j: 532 affinity(v, Es, Address(i,j)) = (1103515245((1103515245.Address(i).j 533 + 12345) XOR D(v,Es))+12345)(mod 2^31) 535 4.3.3 Cost-Benefit Tradeoff on Link Failures 537 While incorporating link bandwidth into the DF election process 538 provides optimal BUM traffic distribution across the ES links, it 539 also implies that affinity values for a given PE are re-computed, and 540 DF elections are re-adjusted on changes to that PE's bandwidth 541 increment that might result from link failures or link additions. If 542 the operator does not wish to have this level of churn in their DF 543 election, then they should not advertise the BW capability. Not 544 advertising BW capability may result in less than optimal BUM traffic 545 distribution while still retaining the ability to allow a remote 546 ingress PE to do weighted ECMP for its unicast traffic to a set of 547 multi-homed PEs, as described in section 3.2. 549 Same also applies to use of BW capability with service carving (DF 550 Type 0), as specified in section 4.2. 552 4.4 BW Capability and Preference DF Election algorithm 554 This section applies to ES'es where all the PEs in the ES agree use 555 the BW Capability with DF Type 2. The BW Capability modifies the 556 Preference DF Election procedure [EVPN-DF-PREF], by adding the LBW 557 value as a tie-breaker as follows: 559 o Section 4.1, bullet (f) in [EVPN-DF-PREF] now considers the LBW 560 value: 562 f) In case of equal Preference in two or more PEs in the ES, the 563 tie-breakers will be the DP bit, the LBW value and the lowest 564 IP PE in that order. For instance: 566 o If vES1 parameters were [Pref=500,DP=0,LBW=1000] in PE1 and 567 [Pref=500,DP=1, LBW=2000] in PE2, PE2 would be elected due 568 to the DP bit. 569 o If vES1 parameters were [Pref=500,DP=0,LBW=1000] in PE1 and 570 [Pref=500,DP=0, LBW=2000] in PE2, PE2 would be elected due 571 to a higher LBW, even if PE1's IP address is lower. 572 o The LBW exchanged value has no impact on the Non-Revertive 573 option described in [EVPN-DF-PREF]. 575 5. Real-time Available Bandwidth 577 PE-CE link bandwidth availability may sometimes vary in real-time 578 disproportionately across PE_CE links within a multi-homed ESI due to 579 various factors such as flow based hashing combined with fat flows 580 and unbalanced hashing. Reacting to real-time available bandwidth is 581 at this time outside the scope of this document. Procedures described 582 in this document are strictly based on static link bandwidth 583 parameter. 585 6. Routed EVPN Overlay 587 An additional use case is possible, such that traffic to an end host 588 in the overlay is always IP routed. In a purely routed overlay such 589 as this: 591 o A host MAC is never advertised in EVPN overlay control plane o 592 Host /32 or /128 IP reachability is distributed across the 593 overlay via EVPN route type 5 (RT-5) along with a zero or non- 594 zero ESI 595 o An overlay IP subnet may still be stretched across the underlay 596 fabric, however, intra-subnet traffic across the stretched 597 overlay is never bridged 598 o Both inter-subnet and intra-subnet traffic, in the overlay is 599 IP routed at the EVPN GW. 601 Please refer to [RFC 7814] for more details. 603 Weighted multi-path procedure described in this document may be used 604 together with procedures described in [EVPN-IP-ALIASING] for this use 605 case. Ethernet A-D per-ES route advertised with Layer 3 VRF RTs would 606 be used to signal ES link bandwidth attribute instead of the Ethernet 607 A-D per-ES route with Layer 2 VRF RTs. All other procedures described 608 earlier in this document would apply as is. 610 If [EVPN-IP-ALIASING] is not used for routed fast convergence, link 611 bandwidth attribute may still be advertised with IP routes (RT-5) to 612 achieve PE-CE link bandwidth based load-balancing as described in 613 this document. In the absence of [EVPN-IP-ALIASING], re-balancing of 614 traffic following changes in PE-CE link bandwidth will require all IP 615 routes from that CE to be re-advertised in a prefix dependent manner. 617 7. EVPN-IRB Multi-homing with non-EVPN routing 619 EVPN-LAG based multi-homing on an IRB gateway may also be deployed 620 together with non-EVPN routing, such as global routing or an L3VPN 621 routing control plane. Key property that differentiates this set of 622 use cases from EVPN IRB use cases discussed earlier is that EVPN 623 control plane is used only to enable LAG interface based multi-homing 624 and NOT as an overlay VPN control plane. EVPN control plane in this 625 case enables: 627 o DF election via EVPN RT-4 based procedures described in [RFC7432] 628 o LOCAL MAC sync across multi-homing PEs via EVPN RT-2 629 o LOCAL ARP and ND sync across multi-homing PEs via EVPN RT-2 631 Applicability of weighted ECMP procedures proposed in this document 632 to these set of use cases will be addressed in subsequent revisions. 634 7. References 636 7.1 Normative References 638 [RFC7432] Sajassi, A., Ed., Aggarwal, R., Bitar, N., Isaac, A., 639 Uttaro, J., Drake, J., and W. Henderickx, "BGP MPLS-Based 640 Ethernet VPN", RFC 7432, DOI 10.17487/RFC7432, February 641 2015, . 643 [BGP-LINK-BW] Mohapatra, P., Fernando, R., "BGP Link Bandwidth 644 Extended Community", January 2013, 645 . 648 [EVPN-IP-ALIASING] Sajassi, A., Badoni, G., "L3 Aliasing and Mass 649 Withdrawal Support for EVPN", July 2017, 650 . 653 [EVPN-DF-PREF] Rabadan, J., Sathappan, S., Przygienda, T., Lin, W., 654 Drake, J., Sajassi, A., and S. Mohanty, "Preference-based 655 EVPN DF Election", internet-draft ietf-bess-evpn-pref-df- 656 01.txt, April 2018. 658 [EVPN-PER-MCAST-FLOW-DF] Sajassi, et al., "Per multicast flow 659 Designated Forwarder Election for EVPN", March 2018, 660 . 663 [EVPN-DF-ELECT-FRAMEWORK] Rabadan, Mohanty, et al., "Framework for 664 EVPN Designated Forwarder Election Extensibility", March 665 2018, . 668 [RFC2119] S. Bradner, "Key words for use in RFCs to Indicate 669 Requirement Levels", March 1997, 670 . 672 [RFC8174] B. Leiba, "Ambiguity of Uppercase vs Lowercase in RFC 2119 673 Key Words", May 2017, 674 . 676 7.2 Informative References 677 8. Acknowledgements 679 Authors would like to thank Satya Mohanty for valuable review and 680 inputs with respect to HRW algorithm refinements proposed in this 681 document. 683 Authors' Addresses 685 Neeraj Malhotra, Ed. 686 Email: neeraj.ietf@gmail.com 688 Ali Sajassi 689 Cisco 690 Email: sajassi@cisco.com 692 Jorge Rabadan 693 Nokia 694 Email: jorge.rabadan@nokia.com 696 John Drake 697 Juniper 698 EMail: jdrake@juniper.net 700 Avinash Lingala 701 AT&T 702 Email: ar977m@att.com 704 Samir Thoria 705 Cisco 706 Email: sthoria@cisco.com