idnits 2.17.1 draft-liu-bess-evpn-mcast-bw-quantity-df-election-01.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 abstract seems to contain references ([I-D.ietf-bess-evpn-per-mcast-flow-df-election], [RFC8584], [RFC7432]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (Nov 26, 2019) is 1613 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) == Unused Reference: 'I-D.skr-bess-evpn-pim-proxy' is defined on line 402, but no explicit reference was found in the text == Outdated reference: A later version (-10) exists of draft-ietf-bess-evpn-per-mcast-flow-df-election-02 == Outdated reference: A later version (-21) exists of draft-ietf-bess-evpn-igmp-mld-proxy-04 -- No information found for draft-skr-evpn-bess-pim-proxy - is the name correct? -- Possible downref: Normative reference to a draft: ref. 'I-D.skr-bess-evpn-pim-proxy' Summary: 1 error (**), 0 flaws (~~), 5 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 BESS Working Group Yisong Liu 2 Internet Draft Individual 3 Intended status: Standards Track M. McBride 4 Expires: May 26, 2020 Futurewei 5 Nov 26, 2019 7 Multicast DF Election for EVPN based on bandwidth or quantity 8 draft-liu-bess-evpn-mcast-bw-quantity-df-election-01 10 Status of this Memo 12 This Internet-Draft is submitted in full conformance with the 13 provisions of BCP 78 and BCP 79. 15 Internet-Drafts are working documents of the Internet Engineering 16 Task Force (IETF), its areas, and its working groups. Note that 17 other groups may also distribute working documents as Internet- 18 Drafts. 20 Internet-Drafts are draft documents valid for a maximum of six 21 months and may be updated, replaced, or obsoleted by other documents 22 at any time. It is inappropriate to use Internet-Drafts as 23 reference material or to cite them other than as "work in progress." 25 The list of current Internet-Drafts can be accessed at 26 http://www.ietf.org/ietf/1id-abstracts.txt 28 The list of Internet-Draft Shadow Directories can be accessed at 29 http://www.ietf.org/shadow.html 31 This Internet-Draft will expire on May 26, 2020. 33 Copyright Notice 35 Copyright (c) 2019 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 (http://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 43 respect to this document. Code Components extracted from this 44 document must include Simplified BSD License text as described in 45 Section 4.e of the Trust Legal Provisions and are provided without 46 warranty as described in the Simplified BSD License. 48 Abstract 50 Ethernet Virtual Private Network (EVPN, RFC7432) is becoming 51 prevalent in Data Centers, Data Center Interconnect (DCI) and 52 Service Provider VPN applications. When multi-homing from a CE to 53 multiple PEs, including links in an EVPN instance on a given 54 Ethernet Segment, in an all-active redundancy mode, [RFC7432] 55 describes a basic mechanism to elect a Designated Forwarder (DF), 56 and [RFC8584] improves basic DF election by a HRW algorithm. [I- 57 D.ietf-bess-evpn-per-mcast-flow-df-election] enhances the HRW 58 algorithm for the multicast flows to perform DF election at the 59 granularity of (ESI, VLAN, Mcast flow). This document specifies a 60 new algorithm, based on multicast bandwidth utilization and 61 multicast state quantity, in order for the multicast flows to elect 62 a DF. 64 Table of Contents 66 1. Introduction ................................................ 2 67 1.1. Requirements Language .................................. 3 68 1.2. Terminology ............................................ 4 69 2. Solution .................................................... 4 70 2.1. DF Election Based on Bandwidth ......................... 5 71 2.2. DF Election Based on State Qunatity .................... 5 72 2.3. Inconsistent Timing between Multi-homed PEs ............ 5 73 2.4. Increase or Decrease of Multi-homed PEs ................ 6 74 2.4.1. Decrease of Multi-homed PEs ....................... 6 75 2.4.2. Increase of Multi-homed PEs ....................... 6 76 3. BGP Encoding ................................................ 7 77 3.1. DF Election Extended Community ......................... 7 78 3.2. Multicast DF Extended Community ........................ 8 79 4. Security Considerations .................................... 8 80 5. IANA Considerations ......................................... 8 81 6. References .................................................. 9 82 6.1. Normative References ................................... 9 83 6.2. Informative References ................................. 9 84 7. Acknowledgments ............................................. 9 85 Authors? Addresses ............................................ 11 87 1. Introduction 89 Ethernet Virtual Private Network (EVPN [RFC7432]) solutions are 90 becoming prevalent in Data Centers, Data Center Interconnect (DCI) 91 and Service Provider VPN applications. When multi-homing from a CE 92 to multiple PEs, with links in an EVPN instance on a given Ethernet 93 Segment (ES), in an all-active redundancy mode, [RFC7432] defines 94 the role of Designated Forwarder (DF) as the node that is 95 responsible to forward multicast flows. 97 Per [RFC7432], the basic method of DF election is specified. The 98 same ES is sorted in ascending order according to the IP address of 99 the EVPN peer. The PE set is generated, and then the number of PEs 100 is modulo according to the VLAN. The modulo value is equal to the 101 position of the PE in the PE set. The election is the primary DF of 102 the corresponding VLAN, and the other PEs are elected as standby. 104 [RFC8584] defines extended community attributes for DF elections, 105 which can be extended to use different DF election algorithms and 106 would be used for PEs in a redundancy group to reach a consensus as 107 to which DF election procedure is desired. A PE can notify other 108 participating PEs in a redundancy group about its DF election 109 algorithm by signaling a DF election extended community along with 110 the ES route. The document also improves the basic DF election by a 111 HRW algorithm. 113 [I-D.ietf-bess-evpn-per-mcast-flow-df-election] proposes a method 114 for DF election by enhancing the HRW algorithm, adding the source 115 and group address of the multicast flow as hash factors, and 116 extending the types 4 and 5 of the extended community of the DF 117 election for (S, G) and (*, G) types for different multicast flows. 118 The source and group address is introduced as new elements to HRW 119 algorithm, and the PE with the largest weight is selected as the DF 120 of the multicast flow. 122 However, the relationship between the bandwidth of the multicast 123 flows and the link capacity of different PEs, to the same CE device, 124 is not considered in any of the current DF election algorithms. This 125 may result in severe bandwidth utilization of different links due to 126 different bandwidth usage of multicast flows. This document 127 specifies a new algorithm for multicast flow DF election based on 128 multicast bandwidth or multicast state quantity and extends the 129 existing extended community defined in [I-D.ietf-bess-evpn-df- 130 election-framework]. 132 1.1. Requirements Language 134 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 135 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 136 "OPTIONAL" in this document are to be interpreted as described in 137 BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all 138 capitals, as shown here. 140 1.2. Terminology 142 CE: Customer Edge equipment 144 PE: Provider Edge device 146 EVPN: Ethernet Virtual Private Network 148 Ethernet Segment (ES): When a customer site (device or network) is 149 connected to one or more PEs via a set of Ethernet links, then that 150 set of links is referred to as an 'Ethernet segment'. 152 IGMP: Internet Group Management Protocol 154 MLD: Multicast Listener Discovery 156 PIM: Protocol Independent Multicast 158 2. Solution 160 In the DF election calculation, the bandwidth weight of each multi- 161 homed link of the PE is added, and the bandwidth occupation of the 162 multicast flows is calculated and divided into two scenarios: 164 * The specific bandwidth value of the multicast flow exists, and the 165 ratio of the current multicast flow bandwidth value to the link 166 bandwidth weight is calculated according to the bandwidth weight of 167 each multi-homed link, and the link with the smallest ratio is 168 elected as the new multicast flow DF. 170 * The specific bandwidth value of the multicast flow does not exist, 171 and the ratio of the current multicast flow state quantity to the 172 link bandwidth weight is calculated according to the bandwidth 173 weight of each multi-homed link, and the link with the smallest 174 ratio is elected as the new multicast flow DF. 176 In particular, if there are multiple PEs with the same calculated 177 ratio, the DF is elected according to the method of maximum 178 bandwidth weight of the link or maximum IP address of the EVPN peer. 180 Since [I-D.ietf-idr-link-bandwidth] defines the link bandwidth 181 extended community, it can be reused to transfer the link bandwidth 182 value of the local ES to other multi-homed PEs, so that each PE can 183 calculate the bandwidth weight ratio of each link of the ES in 184 advance. 186 2.1. DF Election Based on Bandwidth 188 Each PE obtains the link bandwidth values of the other multi-homed 189 PEs in the same EVPN instance on a given ES according to the 190 extended community of the Link bandwidth, and calculates the link 191 bandwidth weight ratio, for example W1:W2:...:Wn for N multi-homed 192 PEs. 194 When the CE sends an IGMP or PIM join to one of the PEs, like PE1, 195 PE1 advertises the PE2, PE3, ... and PEn by the EVPN IGMP/PIM Join 196 Synch route defined in [I-D.ietf-bess-evpn-igmp-mld-proxy] and [I- 197 D.skr-bess-evpn-pim-proxy]. If PE2, PE3, ... or PEn receives an IGMP 198 or PIM join, the procedure will be the same. 200 Each PE calculates the ratio of the current multicast flows 201 bandwidth to the link bandwidth weight. The one PE in PE1, PE2, ... 202 and PEn, which has the smallest ratio, is elected as the DF of the 203 new multicast flow. When the smallest ratios of more than one PE are 204 the same, the PE with the maximum bandwidth weight of the link or 205 the maximum EVPN peer IP address is elected as the DF. 207 2.2. DF Election Based on State Qunatity 209 The procedure is almost the same as described in section 2.1. The 210 only difference is that each PE calculates the ratio of the current 211 number of multicast states instead of the bandwidth to the link 212 bandwidth weight because of lacking specific bandwidth value of the 213 multicast flows. 215 2.3. Inconsistent Timing between Multi-homed PEs 217 As a result of the same multicast join, only one of the multi-homed 218 PEs can receive the multicast join message and advertise the EVPN 219 Join Synch route (Type 7). The other PEs need to install the new 220 multicast join state according to the received Synch route. 222 The inconsistent processing timing of the same multicast group 223 joining process between PEs may cause electing different DFs. For 224 example: 226 * Multicast group G1, G2, and G3 join packets are sent from the CE 227 to PE1, PE2 and PE3. 229 * PE1 calculates the DF of G1, while PE2 calculates the DF of G2, 230 and PE calculates the DF of G3, and at this moment each PE has not 231 received the EVPN Join Synch route. 233 * PE1, PE2 and PE3 select the link on the same ES to the CE using 234 the algorithm as described in section 2.1 or 2.2, and the same DF 235 may be elected for G1, G2, and G3. 237 * After receiving the EVPN Join Synch route sent by PE2, PE1 may 238 calculate the DF of G2 as PE3, which is inconsistent with the 239 calculation result of PE2. 241 The DF calculation results of the PEs are inconsistent, which may 242 result in multiple flows or traffic interruptions of the same 243 multicast flow state. Therefore, EVPN Join Synch routes need to 244 carry elected DF information in the route advertisement as the 245 extended community called Multicast DF Extended Community, which can 246 make the DF information for a given multicast flow state between PEs 247 consistent. The actual effect is that the PE that receives the 248 multicast join packet completes the calculation of the DF election 249 and notifies other PEs on the same ES. 251 2.4. Increase or Decrease of Multi-homed PEs 253 2.4.1. Decrease of Multi-homed PEs 255 When one of the multi-homed PEs on the same ES fails or is shut down 256 for maintenance reasons, because the other PEs have received the 257 synch routes of all the multicast flows, the multicast flows 258 destined to the failed PE need to be in a specific order (for 259 example, the group and source address ascending order) to reassign 260 the DF. The DF election calculation based on the multicast flows 261 bandwidth, or the number of multicast states, is completed by one of 262 the specified multi-homing PEs, and the specified calculated PE can 263 be selected according to the link bandwidth weight value or the IP 264 address of the EVPN peer. The specified PE needs to advertise each 265 DF election result of the multicast flow that belongs to the 266 original faulty PE to the other multi-homed PEs that belong to the 267 same ES by the EVPN Join Synch route carrying the Multicast DF 268 Extended Community. 270 If a new multicast join is received in the above calculation 271 process, the DF election calculation of the new multicast flow is 272 still completed by the PE receiving the multicast join packet. 273 Similarly, the PE needs to advertise the DF information to other 274 multi-homed PEs belonging to the same ES by the EVPN Join Synch 275 route carrying the Multicast DF Extended Community. 277 2.4.2. Increase of Multi-homed PEs 279 One multi-homing PE of the same ES is added, and no active 280 adjustment can be performed. The DF of the subsequent new multicast 281 flow is elected according to the algorithm of this document. The new 282 multicast flow must be preferentially assigned to the new PE, and 283 finally the multicast flows on the PEs of the same ES are 284 approximately equalized. 286 If active adjustment is required, consider calculating the ratio 287 using the algorithm as described in section 2.1 and 2.2. Each time 288 the multicast entries in the PE, whose ratio of the existing multi- 289 homed PE is the largest, are migrated to the new PE. The multicast 290 entries are migrated in descending order of multicast flow bandwidth 291 or in ascending order of the group and source address until the 292 ratio of the new PE is greater than the existing smallest ratio of 293 other multi-homed PEs. 295 The calculation of the active adjustment is still performed by one 296 specific PE among the multi-homed PEs. The specified calculated PE 297 can be selected according to the link bandwidth weight value or the 298 IP address of the EVPN peer. 300 After the new PE is started, in the synchronization process of all 301 the multicast entries of other multi-homed PEs, the existing 302 multicast join packet may be received on the new PE. To avoid having 303 the existing multicast join appear as a new multicast join, and 304 recalculating the DF and notifying the other PEs belonging to the 305 same ES, it is necessary to start a timer to suppress the 306 synchronization process from the new PE to other existing PE's. The 307 timer range should also be configured. 309 3. BGP Encoding 311 3.1. DF Election Extended Community 313 [RFC8584] defines an extended community, which would be used for 314 multi-homed PEs to reach a consensus as to which DF election 315 procedure is desired. A PE can notify other participating PEs its DF 316 election capability by signaling a DF election extended community 317 along with Ethernet-Segment Route (Type-4). The current document 318 extends the existing extended community defined in [RFC8584]. This 319 document defines a new DF type. 321 o DF type (1 octet) - Encodes the DF Election algorithm values 322 (between 0 and 255) that the advertising PE desires to use for the 323 ES. 325 * Type TBD1: Based on bandwidth of multicast flow DF 326 election(detailed in this document) 327 * Type TBD2: Based on quantity of multicast flow state DF 328 election(detailed in this document) 330 3.2. Multicast DF Extended Community 332 This document defines a new extended community in EVPN Type 7 route 333 to notify other multi-homed PEs the elected DF of a given multicast 334 flow. The new extended community is called Multicast DF Extended 335 Community and it belongs to the transitive extended community. The 336 type is to be assigned. It is used to carry DF information of a 337 given (S,G) or (*,G) multicast flow selection. The role of this 338 extended community has been described in sections 2.3 and 2.4. 340 0 1 2 3 341 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 342 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 343 | Type=0x06 | Sub-Type=TBD3 | Reserved | DF Length | 344 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 345 | DF IP Address(Variable) | 346 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 348 o Type is 0x06 as registered with IANA for EVPN Extended Communities 350 o Sub-Type: TBD3 352 o DF Length: the length of the DF IP Address field, 4 octets for 353 IPv4 address, 16 octets for IPv6 address 355 o DF IP Address: the elected DF IP address of the given (S,G) or 356 (*,G) route in the EVPN type 7 route 358 4. Security Considerations 360 For general EVPN Security Considerations, see [RFC7432]. 362 TBD 364 5. IANA Considerations 366 TBD 368 6. References 370 6.1. Normative References 372 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 373 Requirement Levels", BCP 14, RFC 2119, March 1997. 375 [RFC7432] A. Sajassi, Ed., R. Aggarwal, N. Bitar, A. Isaac, J. 376 Uttaro, J. Drake, and W. Henderickx, "BGP MPLS-Based 377 Ethernet VPN", RFC 7432, February 2015 379 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 380 2119 Key Words", BCP 14, RFC 8174, May 2017 382 [RFC8584] J. Rabadan Ed., S. Mohanty, Ed., A. Sajassi, J. Drake, K. 383 Nagaraj and S. Sathappan, " Framework for Ethernet VPN 384 Designated Forwarder Election Extensibility ", RFC8584, 385 April 2019. 387 [I-D.ietf-bess-evpn-per-mcast-flow-df-election] Ali Sajassi, 388 Mankamana Mishra, Samir Thoria, Jorge Rabadan and John 389 Drake, " Per multicast flow Designated Forwarder Election 390 for EVPN ", November 2019, work-in-progress, draft-ietf- 391 bess-evpn-per-mcast-flow-df-election-02. 393 [I-D.ietf-idr-link-bandwidth] P. Mohapatra and R. Fernando, " BGP 394 Link Bandwidth Extended Community ", March 2018, expired, 395 draft-ietf-idr-link-bandwidth-07. 397 [I-D.ietf-bess-evpn-igmp-mld-proxy] Ali Sajassi, Samir Thoria, Keyur 398 Patel, John Drake and Wen Lin, "IGMP and MLD 399 Proxy for EVPN", September 2019, work-in-progress, draft- 400 ietf-bess-evpn-igmp-mld-proxy-04. 402 [I-D.skr-bess-evpn-pim-proxy] J. Rabadan, Ed., J. Kotalwar, S. 403 Sathappan, Z. Zhang and A. Sajassi, "PIM Proxy in EVPN 404 Networks", October 2017, expired, draft-skr-evpn-bess-pim- 405 proxy-01. 407 6.2. Informative References 409 TBD 411 7. Acknowledgments 413 The authors would like to thank the following for their valuable 414 contributions of this document: 416 TBD 418 Authors' Addresses 420 Yisong Liu 421 Individual 423 Email: liuyisong.ietf@gmail.com 425 Mike McBride 426 Futurewei Inc. 428 Email: michael.mcbride@futurewei.com