idnits 2.17.1 draft-ietf-bess-evpn-bum-procedure-updates-07.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (August 9, 2019) is 1722 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 (-21) exists of draft-ietf-bess-evpn-igmp-mld-proxy-03 Summary: 0 errors (**), 0 flaws (~~), 2 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 BESS Z. Zhang 3 Internet-Draft W. Lin 4 Updates: 7432 (if approved) Juniper Networks 5 Intended status: Standards Track J. Rabadan 6 Expires: February 10, 2020 Nokia 7 K. Patel 8 Arrcus 9 A. Sajassi 10 Cisco Systems 11 August 9, 2019 13 Updates on EVPN BUM Procedures 14 draft-ietf-bess-evpn-bum-procedure-updates-07 16 Abstract 18 This document specifies procedure updates for broadcast, unknown 19 unicast, and multicast (BUM) traffic in Ethernet VPNs (EVPN), 20 including selective multicast, and provider tunnel segmentation. 21 This document updates RFC 7432. 23 Requirements Language 25 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 26 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 27 "OPTIONAL" in this document are to be interpreted as described in BCP 28 14 [RFC2119] [RFC8174] when, and only when, they appear in all 29 capitals, as shown here. 31 Status of This Memo 33 This Internet-Draft is submitted in full conformance with the 34 provisions of BCP 78 and BCP 79. 36 Internet-Drafts are working documents of the Internet Engineering 37 Task Force (IETF). Note that other groups may also distribute 38 working documents as Internet-Drafts. The list of current Internet- 39 Drafts is at https://datatracker.ietf.org/drafts/current/. 41 Internet-Drafts are draft documents valid for a maximum of six months 42 and may be updated, replaced, or obsoleted by other documents at any 43 time. It is inappropriate to use Internet-Drafts as reference 44 material or to cite them other than as "work in progress." 46 This Internet-Draft will expire on February 10, 2020. 48 Copyright Notice 50 Copyright (c) 2019 IETF Trust and the persons identified as the 51 document authors. All rights reserved. 53 This document is subject to BCP 78 and the IETF Trust's Legal 54 Provisions Relating to IETF Documents 55 (https://trustee.ietf.org/license-info) in effect on the date of 56 publication of this document. Please review these documents 57 carefully, as they describe your rights and restrictions with respect 58 to this document. Code Components extracted from this document must 59 include Simplified BSD License text as described in Section 4.e of 60 the Trust Legal Provisions and are provided without warranty as 61 described in the Simplified BSD License. 63 Table of Contents 65 1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 66 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 67 2.1. Reasons for Tunnel Segmentation . . . . . . . . . . . . . 4 68 3. Additional Route Types of EVPN NLRI . . . . . . . . . . . . . 5 69 3.1. Per-Region I-PMSI A-D route . . . . . . . . . . . . . . . 6 70 3.2. S-PMSI A-D route . . . . . . . . . . . . . . . . . . . . 6 71 3.3. Leaf-AD route . . . . . . . . . . . . . . . . . . . . . . 7 72 4. Selective Multicast . . . . . . . . . . . . . . . . . . . . . 8 73 5. Inter-AS Segmentation . . . . . . . . . . . . . . . . . . . . 8 74 5.1. Changes to Section 7.2.2 of [RFC7117] . . . . . . . . . . 8 75 5.2. I-PMSI Leaf Tracking . . . . . . . . . . . . . . . . . . 10 76 5.3. Backward Compatibility . . . . . . . . . . . . . . . . . 10 77 5.3.1. Designated ASBR Election . . . . . . . . . . . . . . 12 78 6. Inter-Region Segmentation . . . . . . . . . . . . . . . . . . 12 79 6.1. Area/AS vs. Region . . . . . . . . . . . . . . . . . . . 12 80 6.2. Per-region Aggregation . . . . . . . . . . . . . . . . . 14 81 6.3. Use of S-NH-EC . . . . . . . . . . . . . . . . . . . . . 15 82 6.4. Ingress PE's I-PMSI Leaf Tracking . . . . . . . . . . . . 15 83 7. Multi-homing Support . . . . . . . . . . . . . . . . . . . . 15 84 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 85 9. Security Considerations . . . . . . . . . . . . . . . . . . . 16 86 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 16 87 11. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 16 88 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 17 89 12.1. Normative References . . . . . . . . . . . . . . . . . . 17 90 12.2. Informative References . . . . . . . . . . . . . . . . . 18 91 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 19 93 1. Terminology 95 It is expected that audience is familiar with EVPN and MVPN concepts 96 and terminologies. For convenience, the following terms are briefly 97 explained. 99 o PMSI: P-Multicast Service Interface - a conceptual interface for a 100 PE to send customer multicast traffic to all or some PEs in the 101 same VPN. 103 o I-PMSI: Inclusive PMSI - to all PEs in the same VPN. 105 o S-PMSI: Selective PMSI - to some of the PEs in the same VPN. 107 o Leaf A-D routes: For explicit leaf tracking purpose. Triggered by 108 S-PMSI A-D routes and targeted at triggering route's originator. 110 o IMET A-D route: Inclusive Multicast Ethernet Tag A-D route. The 111 EVPN equivalent of MVPN Intra-AS I-PMSI A-D route. 113 o SMET A-D route: Selective Multicast Ethernet Tag A-D route. The 114 EVPN equivalent of MVPN Leaf A-D route but unsolicited and 115 untargeted. 117 2. Introduction 119 [RFC7432] specifies procedures to handle broadcast, unknown unicast, 120 and multicast (BUM) traffic in Section 11, 12 and 16, using Inclusive 121 Multicast Ethernet Tag Route. A lot of details are referred to 122 [RFC7117] (VPLS Multicast). In particular, selective multicast is 123 briefly mentioned for Ingress Replication but referred to [RFC7117]. 125 [RFC7117] specifies procedures for using both inclusive tunnels and 126 selective tunnels, similar to MVPN procedures specified in [RFC6513] 127 and [RFC6514]. A new SAFI "MCAST-VPLS" is introduced, with two types 128 of NLRIs that match MVPN's S-PMSI A-D routes and Leaf A-D routes. 129 The same procedures can be applied to EVPN selective multicast for 130 both Ingress Replication and other tunnel types, but new route types 131 need to be defined under the same EVPN SAFI. 133 MVPN uses terms I-PMSI and S-PMSI A-D Routes. For consistency and 134 convenience, this document will use the same I/S-PMSI terms for VPLS 135 and EVPN. In particular, EVPN's Inclusive Multicast Ethernet Tag 136 Route and VPLS's VPLS A-D route carrying PTA (PMSI Tunnel Attribute) 137 for BUM traffic purpose will all be referred to as I-PMSI A-D routes. 138 Depending on the context, they may be used interchangeably. 140 MVPN provider tunnels and EVPN/VPLS BUM provider tunnels, which are 141 referred to as MVPN/EVPN/VPLS provider tunnels in this document for 142 simplicity, can be segmented for technical or administrative reasons, 143 which are summarized in Section 2.1 of this document. [RFC6513] and 144 [RFC6514] cover MVPN inter-as segmentation, [RFC7117] covers VPLS 145 multicast inter-as segmentation, and [RFC7524] (Seamless MPLS 146 Multicast) covers inter-area segmentation for both MVPN and VPLS. 148 There is a difference between MVPN and VPLS multicast inter-as 149 segmentation. For simplicity, EVPN will use the same procedures as 150 in MVPN. All ASBRs can re-advertise their choice of the best route. 151 Each can become the root of its intra-AS segment and inject traffic 152 it receives from its upstream, while each downstream PE/ASBR will 153 only pick one of the upstream ASBRs as its upstream. This is also 154 the behavior even for VPLS in case of inter-area segmentation. 156 For inter-area segmentation, [RFC7524] requires the use of Inter-area 157 P2MP Segmented Next-Hop Extended Community (S-NH-EC), and the setting 158 of "Leaf Information Required" (LIR) flag in PTA in certain 159 situations. Either of these could be optional in case of EVPN. 160 Removing these requirements would make the segmentation procedures 161 transparent to ingress and egress PEs. 163 [RFC7524] assumes that segmentation happens at area borders. 164 However, it could be at "regional" borders, where a region could be a 165 sub-area, or even an entire AS plus its external links (Section 6). 166 That would allow for more flexible deployment scenarios (e.g. for 167 single-area provider networks). 169 This document specifies/clarifies/redefines certain/additional EVPN 170 BUM procedures, with a salient goal that they're better aligned among 171 MVPN, EVPN and VPLS. For brevity, only changes/additions to relevant 172 [RFC7117] and [RFC7524] procedures are specified, instead of 173 repeating the entire procedures. Note that these are to be applied 174 to EVPN only, even though sometimes they may sound to be updates to 175 [RFC7117] or [RFC7524]. 177 2.1. Reasons for Tunnel Segmentation 179 Tunnel segmentation may be required and/or desired because of 180 administrative and/or technical reasons. 182 For example, an MVPN/VPLS/EVPN network may span multiple providers 183 and Inter-AS Option-B has to be used, in which the end-to-end 184 provider tunnels have to be segmented at and stitched by the ASBRs. 185 Different providers may use different tunnel technologies (e.g., 186 provider A uses Ingress Replication [RFC7988], provider B uses RSVP- 187 TE P2MP [RFC4875] while provider C uses mLDP [RFC6388]). Even if 188 they use the same tunnel technology like RSVP-TE P2MP, it may be 189 impractical to set up the tunnels across provider boundaries. 191 The same situations may apply between the ASes and/or areas of a 192 single provider. For example, the backbone area may use RSVP-TE P2MP 193 tunnels while non-backbone areas may use mLDP tunnels. 195 Segmentation can also be used to divide an AS/area to smaller 196 regions, so that control plane state and/or forwarding plane state/ 197 burden can be limited to that of individual regions. For example, 198 instead of Ingress Replicating to 100 PEs in the entire AS, with 199 inter-area segmentation [RFC7524] a PE only needs to replicate to 200 local PEs and ABRs. The ABRs will further replicate to their 201 downstream PEs and ABRs. This not only reduces the forwarding plane 202 burden, but also reduces the leaf tracking burden in the control 203 plane. 205 Smaller regions also have the benefit that, in case of tunnel 206 aggregation, it is easier to find congruence among the segments of 207 different constituent (service) tunnels and the resulting aggregation 208 (base) tunnel in a region. This leads to better bandwidth 209 efficiency, because the more congruent they are, the fewer leaves of 210 the base tunnel need to discard traffic when a service tunnel's 211 segment does not need to receive the traffic (yet it is receiving the 212 traffic due to aggregation). 214 Another advantage of the smaller region is smaller BIER sub-domains. 215 In this new multicast architecture BIER [RFC8279], packets carry a 216 BitString, in which the bits correspond to edge routers that needs to 217 receive traffic. Smaller sub-domains means smaller BitStrings can be 218 used without having to send multiple copies of the same packet. 220 3. Additional Route Types of EVPN NLRI 222 [RFC7432] defines the format of EVPN NLRI as the following: 224 +-----------------------------------+ 225 | Route Type (1 octet) | 226 +-----------------------------------+ 227 | Length (1 octet) | 228 +-----------------------------------+ 229 | Route Type specific (variable) | 230 +-----------------------------------+ 232 So far eight types have been defined: 234 + 1 - Ethernet Auto-Discovery (A-D) route 235 + 2 - MAC/IP Advertisement route 236 + 3 - Inclusive Multicast Ethernet Tag route 237 + 4 - Ethernet Segment route 238 + 5 - IP Prefix Route 239 + 6 - Selective Multicast Ethernet Tag Route 240 + 7 - Multicast Join Synch Route 241 + 8 - Multicast Leave Synch Route 243 This document defines three additional route types: 245 + 9 - Per-Region I-PMSI A-D route 246 + 10 - S-PMSI A-D route 247 + 11 - Leaf A-D route 249 The "Route Type specific" field of the type 9 and type 10 EVPN NLRIs 250 starts with a type 1 RD, whose Administrative sub-field MUST match 251 that of the RD in all the EVPN routes from the same advertising 252 router for a given EVI, except the Leaf A-D route (Section 3.3). 254 3.1. Per-Region I-PMSI A-D route 256 The Per-region I-PMSI A-D route has the following format. Its usage 257 is discussed in Section 6.2. 259 +-----------------------------------+ 260 | RD (8 octets) | 261 +-----------------------------------+ 262 | Ethernet Tag ID (4 octets) | 263 +-----------------------------------+ 264 | Extended Community (8 octets) | 265 +-----------------------------------+ 267 After Ethernet Tag ID, an Extended Community (EC) is used to identify 268 the region. Various types and sub-types of ECs provide maximum 269 flexibility. Note that this is not an EC Attribute, but an 8-octet 270 field embedded in the NLRI itself, following EC encoding scheme. 272 3.2. S-PMSI A-D route 274 The S-PMSI A-D route has the following format: 276 +-----------------------------------+ 277 | RD (8 octets) | 278 +-----------------------------------+ 279 | Ethernet Tag ID (4 octets) | 280 +-----------------------------------+ 281 | Multicast Source Length (1 octet) | 282 +-----------------------------------+ 283 | Multicast Source (Variable) | 284 +-----------------------------------+ 285 | Multicast Group Length (1 octet) | 286 +-----------------------------------+ 287 | Multicast Group (Variable) | 288 +-----------------------------------+ 289 |Originator's Addr Length (1 octet) | 290 +-----------------------------------+ 291 |Originator's Addr (4 or 16 octets) | 292 +-----------------------------------+ 294 Other than the addition of Ethernet Tag ID and Originator's Addr 295 Length, it is identical to the S-PMSI A-D route as defined in 296 [RFC7117]. The procedures in [RFC7117] also apply (including 297 wildcard functionality), except that the granularity level is per 298 Ethernet Tag. 300 3.3. Leaf-AD route 302 The Route Type specific field of a Leaf A-D route consists of the 303 following: 305 +-----------------------------------+ 306 | Route Key (variable) | 307 +-----------------------------------+ 308 |Originator's Addr Length (1 octet) | 309 +-----------------------------------+ 310 |Originator's Addr (4 or 16 octets) | 311 +-----------------------------------+ 313 A Leaf A-D route is originated in response to a PMSI route, which 314 could be an Inclusive Multicast Tag route, a per-region I-PMSI A-D 315 route, an S-PMSI A-D route, or some other types of routes that may be 316 defined in the future that triggers Leaf A-D routes. The Route Key 317 is the "Route Type Specific" field of the route for which this Leaf 318 A-D route is generated. 320 The general procedures of Leaf A-D route are first specified in 321 [RFC6514] for MVPN. The principles apply to VPLS and EVPN as well. 322 [RFC7117] has details for VPLS Multicast, and this document points 323 out some specifics for EVPN, e.g. in Section 5. 325 4. Selective Multicast 327 [I-D.ietf-bess-evpn-igmp-mld-proxy] specifies procedures for EVPN 328 selective forwarding of IP multicast using SMET routes. It assumes 329 selective forwarding is always used with IR or BIER for all flows. 330 An NVE proxies the IGMP/MLD state that it learns on its ACs to 331 (C-S,C-G) or (C-*,C-G) SMET routes and advertises to other NVEs, and 332 an receiving NVE converts the SMET routes back to IGMP/MLD messages 333 and send them out of its ACs. The receiving NVE also uses the SMET 334 routes to identify which NVEs need to receive traffic for a 335 particular (C-S,C-G) or (C-*,C-G) to achieve selective forwarding 336 using IR or BIER. 338 With the above procedures, selective forwarding is done for all flows 339 and the SMET routes are advertised for all flows. It is possible 340 that an operator may not want to track all those (C-S, C-G) or 341 (C-*,C-G) state on the NVEs, and the multicast traffic pattern allows 342 inclusive forwarding for most flows while selective forwarding is 343 needed only for a few high-rate flows. For that, or for tunnel types 344 other than IR/BIER, S-PMSI/Leaf A-D procedures defined for Selective 345 Multicast for VPLS in [RFC7117] are used. Other than that different 346 route types and formats are specified with EVPN SAFI for S-PMSI A-D 347 and Leaf A-D routes (Section 3), all procedures in [RFC7117] with 348 respect to Selective Multicast apply to EVPN as well, including 349 wildcard procedures. In a nut shell, a source NVE advertises S-SPMSI 350 A-D routes to announce the tunnels used for certain flows, and 351 receiving NVEs either join the announced PIM/mLDP tunnel or respond 352 with Leaf A-D routes if the Leaf Information Requested flag is set in 353 the S-PMSI A-D route's PTA (so that the source NVE can include them 354 as tunnel leaves). 356 An optimization to the [RFC7117] procedures may be applied. Even if 357 a source NVE sets the LIR bit to request Leaf A-D routes, an egress 358 NVE may omit the Leaf A-D route if it already advertises a 359 corresponding SMET route, and the source NVE will use that in lieu of 360 the Leaf A-D route. 362 The optional optimizations specified for MVPN in [RFC8534] are also 363 applicable to EVPN when the S-PMSI/Leaf A-D routes procedures are 364 used for EVPN selective multicast forwarding. 366 5. Inter-AS Segmentation 368 5.1. Changes to Section 7.2.2 of [RFC7117] 370 The first paragraph of Section 7.2.2.2 of [RFC7117] says: 372 "... The best route procedures ensure that if multiple 373 ASBRs, in an AS, receive the same Inter-AS A-D route from their EBGP 374 neighbors, only one of these ASBRs propagates this route in Internal 375 BGP (IBGP). This ASBR becomes the root of the intra-AS segment of 376 the inter-AS tree and ensures that this is the only ASBR that accepts 377 traffic into this AS from the inter-AS tree." 379 The above VPLS behavior requires complicated VPLS specific procedures 380 for the ASBRs to reach agreement. For EVPN, a different approach is 381 used and the above quoted text is not applicable to EVPN. 383 With the different approach for EVPN, each ASBR will re-advertise its 384 received Inter-AS A-D route to its IBGP peers and becomes the root of 385 an intra-AS segment of the inter-AS tree. The intra-AS segment 386 rooted at one ASBR is disjoint with another intra-AS segment rooted 387 at another ASBR. This is the same as the procedures for S-PMSI in 388 [RFC7117] itself. 390 The following text at the end of the second bullet: 392 "................................................... If, in order 393 to instantiate the segment, the ASBR needs to know the leaves of 394 the tree, then the ASBR obtains this information from the A-D 395 routes received from other PEs/ASBRs in the ASBR's own AS." 397 is changed to the following when applied to EVPN: 399 "................................................... If, in order 400 to instantiate the segment, the ASBR needs to know the leaves of 401 the tree, then the ASBR MUST set the LIR flag to 1 in the PTA to 402 trigger Leaf A-D routes from egress PEs and downstream ASBRs. 403 It MUST be (auto-)configured with an import RT, which controls 404 acceptance of leaf A-D routes by the ASBR." 406 Accordingly, the following paragraph in Section 7.2.2.4: 408 "If the received Inter-AS A-D route carries the PMSI Tunnel attribute 409 with the Tunnel Identifier set to RSVP-TE P2MP LSP, then the ASBR 410 that originated the route MUST establish an RSVP-TE P2MP LSP with the 411 local PE/ASBR as a leaf. This LSP MAY have been established before 412 the local PE/ASBR receives the route, or it MAY be established after 413 the local PE receives the route." 415 is changed to the following when applied to EVPN: 417 "If the received Inter-AS A-D route has the LIR flag set in its PTA, 418 then a receiving PE must originate a corresponding Leaf A-D route, 419 and a receiving ASBR must originate a corresponding Leaf A-D route if 420 and only if it received and imported one or more corresponding Leaf 421 A-D routes from its downstream IBGP or EBGP peers, or it has non-null 422 downstream forwarding state for the PIM/mLDP tunnel that instantiates 423 its downstream intra-AS segment. The ASBR that (re-)advertised the 424 Inter-AS A-D route then establishes a tunnel to the leaves discovered 425 by the Leaf A-D routes." 427 5.2. I-PMSI Leaf Tracking 429 An ingress PE does not set the LIR flag in its I-PMSI's PTA, even 430 with Ingress Replication or RSVP-TE P2MP tunnels. It does not rely 431 on the Leaf A-D routes to discover leaves in its AS, and Section 11.2 432 of [RFC7432] explicitly states that the LIR flag must be set to zero. 434 An implementation of [RFC7432] might have used the Originating 435 Router's IP Address field of the Inclusive Multicast Ethernet Tag 436 routes to determine the leaves, or might have used the Next Hop field 437 instead. Within the same AS, both will lead to the same result. 439 With segmentation, an ingress PE MUST determine the leaves in its AS 440 from the BGP next hops in all its received I-PMSI A-D routes, so it 441 does not have to set the LIR bit set to request Leaf A-D routes. PEs 442 within the same AS will all have different next hops in their I-PMSI 443 A-D routes (hence will all be considered as leaves), and PEs from 444 other ASes will have the next hop in their I-PMSI A-D routes set to 445 addresses of ASBRs in this local AS, hence only those ASBRs will be 446 considered as leaves (as proxies for those PEs in other ASes). Note 447 that in case of Ingress Replication, when an ASBR re-advertises IBGP 448 I-PMSI A-D routes, it MUST advertise the same label for all those for 449 the same Ethernet Tag ID and the same EVI. When an ingress PE builds 450 its flooding list, multiple routes may have the same (nexthop, label) 451 tuple and they will only be added as a single branch in the flooding 452 list. 454 5.3. Backward Compatibility 456 The above procedures assume that all PEs are upgraded to support the 457 segmentation procedures: 459 o An ingress PE uses the Next Hop instead of Originating Router's IP 460 Address to determine leaves for the I-PMSI tunnel. 462 o An egress PE sends Leaf A-D routes in response to I-PMSI routes, 463 if the PTA has the LIR flag set (by the re-advertising ASBRs). 465 o In case of Ingress Replication, when an ingress PE builds its 466 flooding list, multiple I-PMSI routes may have the same (nexthop, 467 label) tuple and only a single branch for those will be added in 468 the flooding list. 470 If a deployment has legacy PEs that does not support the above, then 471 a legacy ingress PE would include all PEs (including those in remote 472 ASes) as leaves of the inclusive tunnel and try to send traffic to 473 them directly (no segmentation), which is either undesired or not 474 possible; a legacy egress PE would not send Leaf A-D routes so the 475 ASBRs would not know to send external traffic to them. 477 To address this backward compatibility problem, the following 478 procedure can be used (see Section 6.2 for per-PE/AS/region I-PMSI 479 A-D routes): 481 o An upgraded PE indicates in its per-PE I-PMSI A-D route that it 482 supports the new procedures. This is done by setting a flag bit 483 in the EVPN Multicast Flags Extended Community. 485 o All per-PE I-PMSI A-D routes are restricted to the local AS and 486 not propagated to external peers. 488 o The ASBRs in an AS originate per-region I-PMSI A-D routes and 489 advertise to their external peers to advertise tunnels used to 490 carry traffic from the local AS to other ASes. Depending on the 491 types of tunnels being used, the LIR flag in the PTA may be set, 492 in which case the downstream ASBRs and upgraded PEs will send Leaf 493 A-D routes to pull traffic from their upstream ASBRs. In a 494 particular downstream AS, one of the ASBRs is elected, based on 495 the per-region I-PMSI A-D routes for a particular source AS, to 496 send traffic from that source AS to legacy PEs in the downstream 497 AS. The traffic arrives at the elected ASBR on the tunnel 498 announced in the best per-region I-PMSI A-D route for the source 499 AS, that the ASBR has selected of all those that it received over 500 EBGP or IBGP sessions. The election procedure is described in 501 Section 5.3.1. 503 o In an ingress/upstream AS, if and only if an ASBR has active 504 downstream receivers (PEs and ASBRs), which are learned either 505 explicitly via Leaf AD routes or implicitly via PIM join or mLDP 506 label mapping, the ASBR originates a per-PE I-PMSI A-D route 507 (i.e., regular Inclusive Multicast Ethernet Tag route) into the 508 local AS, and stitches incoming per-PE I-PMSI tunnels into its 509 per-region I-PMSI tunnel. With this, it gets traffic from local 510 PEs and send to other ASes via the tunnel announced in its per- 511 region I-PMSI A-D route. 513 Note that, even if there is no backward compatibility issue, the use 514 of per-region I-PMSI has the benefit of keeping all per-PE I-PMSI A-D 515 routes in their local ASes, greatly reducing the flooding of the 516 routes and their corresponding Leaf A-D routes (when needed), and the 517 number of inter-as tunnels. 519 5.3.1. Designated ASBR Election 521 When an ASBR re-advertises a per-region I-PMSI A-D route into an AS 522 in which a designated ASBR needs to be used to forward traffic to the 523 legacy PEs in the AS, it SHOULD include a DF Election EC. The EC and 524 its use is specified in [RFC8584]. The AC-DF bit in the DF Election 525 EC SHOULD be cleared. If it is known that no legacy PEs exist in the 526 AS, the ASBR SHOULD NOT include the EC and SHOULD remove the DF 527 Election EC if one is carried in the per-region I-PMSI A-D routes 528 that it receives. Note that this is done for each set of per-region 529 I-PMSI A-D routes with the same NLRI. 531 Based on the procedures in [RFC8584], an election algorithm is 532 determined according to the DF Election ECs carried in the set of 533 per-region I-PMSI routes of the same NLRI re-adverised into the AS. 534 The algorithm is then applied to a candidate list, which is the set 535 of ASBRs that re-advertised the per-region I-PMSI routes of the same 536 NLRI carrying the DF Election EC. 538 6. Inter-Region Segmentation 540 6.1. Area/AS vs. Region 542 [RFC7524] is for MVPN/VPLS inter-area segmentation and does not 543 explicitly cover EVPN. However, if "area" is replaced by "region" 544 and "ABR" is replaced by "RBR" (Regional Border Router) then 545 everything still works, and can be applied to EVPN as well. 547 A region can be a sub-area, or can be an entire AS including its 548 external links. Instead of automatic region definition based on IGP 549 areas, a region would be defined as a BGP peer group. In fact, even 550 with IGP area based region definition, a BGP peer group listing the 551 PEs and ABRs in an area is still needed. 553 Consider the following example diagram: 555 --------- ------ --------- 556 / \ / \ / \ 557 / \ / \ / \ 558 | PE1 o ASBR1 -- ASBR2 ASBR3 -- ASBR4 o PE2 | 559 \ / \ / \ / 560 \ / \ / \ / 561 --------- ------ --------- 562 AS 100 AS 200 AS 300 563 |-----------|--------|---------|--------|------------| 564 segment1 segment2 segment3 segment4 segment5 566 The inter-as segmentation procedures specified so far ([RFC6513] 567 [RFC6514], [RFC7117], and Section 5 of this document) require all 568 ASBRs to be involved, and Ingress Replication is used between two 569 ASBRs in different ASes. 571 In the above diagram, it's possible that ASBR1/4 does not support 572 segmentation, and the provider tunnels in AS 100/300 can actually 573 extend across the external link. In this case, the inter-region 574 segmentation procedures can be used instead - a region is the entire 575 (AS100 + ASBR1-ASBR2 link) or (AS300 + ASBR3-ASBR4 link). ASBR2/3 576 would be the RBRs, and ASBR1/4 will just be a transit core router 577 with respect to provider tunnels. 579 As illustrated in the diagram below, ASBR2/3 will establish a 580 multihop EBGP session with either a RR or directly with PEs in the 581 neighboring AS. I/S-PMSI A-D routes from ingress PEs will not be 582 processed by ASBR1/4. When ASBR2 re-advertises the routes into AS 583 200, it changes the next hop to its own address and changes PTA to 584 specify the tunnel type/identification in its own AS. When ASBR3 re- 585 advertises I/S-PMSI A-D routes into the neighboring AS 300, it 586 changes the next hop to its own address and changes PTA to specify 587 the tunnel type/identification in the neighboring region 3. Now the 588 segment is rooted at ASBR3 and extends across the external link to 589 PEs. 591 --------- ------ --------- 592 / RR....\.mh-ebpg / \ mh-ebgp/....RR \ 593 / : \ `. / \ .' / : \ 594 | PE1 o ASBR1 -- ASBR2 ASBR3 -- ASBR4 o PE2 | 595 \ / \ / \ / 596 \ / \ / \ / 597 --------- ------ --------- 598 AS 100 AS 200 AS 300 599 |-------------------|----------|---------------------| 600 segment 1 segment 2 segment 3 602 6.2. Per-region Aggregation 604 Notice that every I/S-PMSI route from each PE will be propagated 605 throughout all the ASes or regions. They may also trigger 606 corresponding Leaf A-D routes depending on the types of tunnels used 607 in each region. This may become too many - routes and corresponding 608 tunnels. To address this concern, the I-PMSI routes from all PEs in 609 a AS/region can be aggregated into a single I-PMSI route originated 610 from the RBRs, and traffic from all those individual I-PMSI tunnels 611 will be switched into the single I-PMSI tunnel. This is like the 612 MVPN Inter-AS I-PMSI route originated by ASBRs. 614 The MVPN Inter-AS I-PMSI A-D route can be better called as per-AS 615 I-PMSI A-D route, to be compared against the (per-PE) Intra-AS I-PMSI 616 A-D routes originated by each PE. In this document we will call it 617 as per-region I-PMSI A-D route, in case we want to apply the 618 aggregation at regional level. The per-PE I-PMSI routes will not be 619 propagated to other regions. If multiple RBRs are connected to a 620 region, then each will advertise such a route, with the same route 621 key (Section 3.1). Similar to the per-PE I-PMSI A-D routes, RBRs/PEs 622 in a downstream region will each select a best one from all those re- 623 advertised by the upstream RBRs, hence will only receive traffic 624 injected by one of them. 626 MVPN does not aggregate S-PMSI routes from all PEs in an AS like it 627 does for I-PMSIs routes, because the number of PEs that will 628 advertise S-PMSI routes for the same (s,g) or (*,g) is small. This 629 is also the case for EVPN, i.e., there is no per-region S-PMSI 630 routes. 632 Notice that per-region I-PMSI routes can also be used to address 633 backwards compatibility issue, as discussed in Section 5.3. 635 The per-region I-PMSI route uses an embedded EC in NLRI to identify a 636 region. As long as it uniquely identifies the region and the RBRs 637 for the same region uses the same EC it is permitted. For example, 638 an AS number or area ID can be used to as following: 640 o For a two-octet AS number, a Transitive Two-Octet AS-Specific EC 641 of sub-type 0x09 (Source AS), with the Global Administrator sub- 642 field set to the AS number and the Local Administrator sub-field 643 set to 0. 645 o For a four-octet AS number, a Transitive Four-Octet AS-Specific EC 646 of sub-type 0x09 (Source AS), with the Global Administrator sub- 647 field set to the AS number and the Local Administrator sub-field 648 set to 0. 650 o For an area ID, a Transitive IPv4-Address-Specific EC of any sub- 651 type, with the Global Administrator sub-field set to the area ID 652 and the Local Administrator sub-field set to 0. 654 Uses of other particular ECs may be specified in other documents. 656 6.3. Use of S-NH-EC 658 [RFC7524] specifies the use of S-NH-EC because it does not allow ABRs 659 to change the BGP next hop when they re-advertise I/S-PMSI AD routes 660 to downstream areas. That is only to be consistent with the MVPN 661 Inter-AS I-PMSI A-D routes, whose next hop must not be changed when 662 they're re-advertised by the segmenting ABRs for reasons specific to 663 MVPN. For EVPN, it is perfectly fine to change the next hop when 664 RBRs re-advertise the I/S-PMSI A-D routes, instead of relying on S- 665 NH-EC. As a result, this document specifies that RBRs change the BGP 666 next hop when they re-advertise I/S-PMSI A-D routes and do not use S- 667 NH-EC. If a downstream PE/RBR needs to originate Leaf A-D routes, it 668 constructs an IP-based Route Target Extended Community by placing the 669 IP address carried in the Next Hop of the received I/S-PMSI A-D route 670 in the Global Administrator field of the Community, with the Local 671 Administrator field of this Community set to 0 and setting the 672 Extended Communities attribute of the Leaf A-D route to that 673 Community. 675 The advantage of this is that neither ingress nor egress PEs need to 676 understand/use S-NH-EC, and consistent procedure (based on BGP next 677 hop) is used for both inter-as and inter-region segmentation. 679 6.4. Ingress PE's I-PMSI Leaf Tracking 681 [RFC7524] specifies that when an ingress PE/ASBR (re-)advertises an 682 VPLS I-PMSI A-D route, it sets the LIR flag to 1 in the route's PTA. 683 Similar to the inter-as case, this is actually not really needed for 684 EVPN. To be consistent with the inter-as case, the ingress PE does 685 not set the LIR flag in its originated I-PMSI A-D routes, and 686 determines the leaves based on the BGP next hops in its received 687 I-PMSI A-D routes, as specified in Section 5.2. 689 The same backward compatibility issue exists, and the same solution 690 as in the inter-as case applies, as specified in Section 5.3. 692 7. Multi-homing Support 694 If multi-homing does not span across different ASes or regions, 695 existing procedures work with segmentation, and a segmentation point 696 will remove the ESI label from the packets. If an ES is multi-homed 697 to PEs in different ASes or regions, additional procedures are needed 698 to work with segmentation. The procedures are well understood but 699 omitted here until the requirement becomes clear. 701 8. IANA Considerations 703 IANA has temporarily assigned the following new EVPN route types: 705 o 9 - Per-Region I-PMSI A-D route 707 o 10 - S-PMSI A-D route 709 o 11 - Leaf A-D route 711 This document requests IANA to assign one flag bit from the EVPN 712 Multicast Flags Extended Community: 714 o Bit-S - The router supports segmentation procedure defined in this 715 document 717 9. Security Considerations 719 This document does not seem to introduce new security risks, though 720 this may be revised after further review and scrutiny. 722 10. Acknowledgements 724 The authors thank Eric Rosen, John Drake, and Ron Bonica for their 725 comments and suggestions. 727 11. Contributors 729 The following also contributed to this document through their earlier 730 work in EVPN selective multicast. 732 Junlin Zhang 733 Huawei Technologies 734 Huawei Bld., No.156 Beiqing Rd. 735 Beijing 100095 736 China 738 Email: jackey.zhang@huawei.com 740 Zhenbin Li 741 Huawei Technologies 742 Huawei Bld., No.156 Beiqing Rd. 743 Beijing 100095 744 China 746 Email: lizhenbin@huawei.com 748 12. References 750 12.1. Normative References 752 [I-D.ietf-bess-evpn-igmp-mld-proxy] 753 Sajassi, A., Thoria, S., Patel, K., Yeung, D., Drake, J., 754 and W. Lin, "IGMP and MLD Proxy for EVPN", draft-ietf- 755 bess-evpn-igmp-mld-proxy-03 (work in progress), June 2019. 757 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 758 Requirement Levels", BCP 14, RFC 2119, 759 DOI 10.17487/RFC2119, March 1997, 760 . 762 [RFC7117] Aggarwal, R., Ed., Kamite, Y., Fang, L., Rekhter, Y., and 763 C. Kodeboniya, "Multicast in Virtual Private LAN Service 764 (VPLS)", RFC 7117, DOI 10.17487/RFC7117, February 2014, 765 . 767 [RFC7432] Sajassi, A., Ed., Aggarwal, R., Bitar, N., Isaac, A., 768 Uttaro, J., Drake, J., and W. Henderickx, "BGP MPLS-Based 769 Ethernet VPN", RFC 7432, DOI 10.17487/RFC7432, February 770 2015, . 772 [RFC7524] Rekhter, Y., Rosen, E., Aggarwal, R., Morin, T., 773 Grosclaude, I., Leymann, N., and S. Saad, "Inter-Area 774 Point-to-Multipoint (P2MP) Segmented Label Switched Paths 775 (LSPs)", RFC 7524, DOI 10.17487/RFC7524, May 2015, 776 . 778 [RFC7988] Rosen, E., Ed., Subramanian, K., and Z. Zhang, "Ingress 779 Replication Tunnels in Multicast VPN", RFC 7988, 780 DOI 10.17487/RFC7988, October 2016, 781 . 783 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 784 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 785 May 2017, . 787 [RFC8534] Dolganow, A., Kotalwar, J., Rosen, E., Ed., and Z. Zhang, 788 "Explicit Tracking with Wildcard Routes in Multicast VPN", 789 RFC 8534, DOI 10.17487/RFC8534, February 2019, 790 . 792 [RFC8584] Rabadan, J., Ed., Mohanty, S., Ed., Sajassi, A., Drake, 793 J., Nagaraj, K., and S. Sathappan, "Framework for Ethernet 794 VPN Designated Forwarder Election Extensibility", 795 RFC 8584, DOI 10.17487/RFC8584, April 2019, 796 . 798 12.2. Informative References 800 [RFC4875] Aggarwal, R., Ed., Papadimitriou, D., Ed., and S. 801 Yasukawa, Ed., "Extensions to Resource Reservation 802 Protocol - Traffic Engineering (RSVP-TE) for Point-to- 803 Multipoint TE Label Switched Paths (LSPs)", RFC 4875, 804 DOI 10.17487/RFC4875, May 2007, 805 . 807 [RFC6388] Wijnands, IJ., Ed., Minei, I., Ed., Kompella, K., and B. 808 Thomas, "Label Distribution Protocol Extensions for Point- 809 to-Multipoint and Multipoint-to-Multipoint Label Switched 810 Paths", RFC 6388, DOI 10.17487/RFC6388, November 2011, 811 . 813 [RFC6513] Rosen, E., Ed. and R. Aggarwal, Ed., "Multicast in MPLS/ 814 BGP IP VPNs", RFC 6513, DOI 10.17487/RFC6513, February 815 2012, . 817 [RFC6514] Aggarwal, R., Rosen, E., Morin, T., and Y. Rekhter, "BGP 818 Encodings and Procedures for Multicast in MPLS/BGP IP 819 VPNs", RFC 6514, DOI 10.17487/RFC6514, February 2012, 820 . 822 [RFC8279] Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A., 823 Przygienda, T., and S. Aldrin, "Multicast Using Bit Index 824 Explicit Replication (BIER)", RFC 8279, 825 DOI 10.17487/RFC8279, November 2017, 826 . 828 Authors' Addresses 830 Zhaohui Zhang 831 Juniper Networks 833 EMail: zzhang@juniper.net 835 Wen Lin 836 Juniper Networks 838 EMail: wlin@juniper.net 840 Jorge Rabadan 841 Nokia 843 EMail: jorge.rabadan@nokia.com 845 Keyur Patel 846 Arrcus 848 EMail: keyur@arrcus.com 850 Ali Sajassi 851 Cisco Systems 853 EMail: sajassi@cisco.com