rfc9572.original | rfc9572.txt | |||
---|---|---|---|---|
BESS Z. Zhang | Internet Engineering Task Force (IETF) Z. Zhang | |||
Internet-Draft W. Lin | Request for Comments: 9572 W. Lin | |||
Updates: 7432 (if approved) Juniper Networks | Updates: 7432 Juniper Networks | |||
Intended status: Standards Track J. Rabadan | Category: Standards Track J. Rabadan | |||
Expires: May 22, 2022 Nokia | ISSN: 2070-1721 Nokia | |||
K. Patel | K. Patel | |||
Arrcus | Arrcus | |||
A. Sajassi | A. Sajassi | |||
Cisco Systems | Cisco Systems | |||
November 18, 2021 | May 2024 | |||
Updates on EVPN BUM Procedures | Updates to EVPN Broadcast, Unknown Unicast, or Multicast (BUM) | |||
draft-ietf-bess-evpn-bum-procedure-updates-14 | Procedures | |||
Abstract | Abstract | |||
This document specifies updated procedures for handling broadcast, | This document specifies updated procedures for handling Broadcast, | |||
unknown unicast, and multicast (BUM) traffic in Ethernet VPNs (EVPN), | Unknown Unicast, or Multicast (BUM) traffic in Ethernet VPNs (EVPNs), | |||
including selective multicast, and provider tunnel segmentation. | including selective multicast and segmentation of provider tunnels. | |||
This document updates RFC 7432. | This document updates RFC 7432. | |||
Requirements Language | ||||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | ||||
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | ||||
"OPTIONAL" in this document are to be interpreted as described in BCP | ||||
14 [RFC2119] [RFC8174] when, and only when, they appear in all | ||||
capitals, as shown here. | ||||
Status of This Memo | Status of This Memo | |||
This Internet-Draft is submitted in full conformance with the | This is an Internet Standards Track document. | |||
provisions of BCP 78 and BCP 79. | ||||
Internet-Drafts are working documents of the Internet Engineering | ||||
Task Force (IETF). Note that other groups may also distribute | ||||
working documents as Internet-Drafts. The list of current Internet- | ||||
Drafts is at https://datatracker.ietf.org/drafts/current/. | ||||
Internet-Drafts are draft documents valid for a maximum of six months | This document is a product of the Internet Engineering Task Force | |||
and may be updated, replaced, or obsoleted by other documents at any | (IETF). It represents the consensus of the IETF community. It has | |||
time. It is inappropriate to use Internet-Drafts as reference | received public review and has been approved for publication by the | |||
material or to cite them other than as "work in progress." | Internet Engineering Steering Group (IESG). Further information on | |||
Internet Standards is available in Section 2 of RFC 7841. | ||||
This Internet-Draft will expire on May 22, 2022. | Information about the current status of this document, any errata, | |||
and how to provide feedback on it may be obtained at | ||||
https://www.rfc-editor.org/info/rfc9572. | ||||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2021 IETF Trust and the persons identified as the | Copyright (c) 2024 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(https://trustee.ietf.org/license-info) in effect on the date of | (https://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
include Simplified BSD License text as described in Section 4.e of | include Revised BSD License text as described in Section 4.e of the | |||
the Trust Legal Provisions and are provided without warranty as | Trust Legal Provisions and are provided without warranty as described | |||
described in the Simplified BSD License. | in the Revised BSD License. | |||
Table of Contents | Table of Contents | |||
1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction | |||
2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1.1. Requirements Language | |||
2.1. Tunnel Segmentation . . . . . . . . . . . . . . . . . . . 4 | 1.2. Terminology | |||
2.1.1. Reasons for Tunnel Segmentation . . . . . . . . . . . 5 | 2. Tunnel Segmentation | |||
3. Additional Route Types of EVPN NLRI . . . . . . . . . . . . . 6 | 2.1. Reasons for Tunnel Segmentation | |||
3.1. Per-Region I-PMSI A-D route . . . . . . . . . . . . . . . 7 | 3. Additional Route Types of EVPN NLRI | |||
3.2. S-PMSI A-D route . . . . . . . . . . . . . . . . . . . . 7 | 3.1. Per-Region I-PMSI A-D Route | |||
3.3. Leaf A-D route . . . . . . . . . . . . . . . . . . . . . 8 | 3.2. S-PMSI A-D Route | |||
4. Selective Multicast . . . . . . . . . . . . . . . . . . . . . 8 | 3.3. Leaf A-D Route | |||
5. Inter-AS Segmentation . . . . . . . . . . . . . . . . . . . . 9 | 4. Selective Multicast | |||
5.1. Differences from Section 7.2.2 of [RFC7117] When Applied | 5. Inter-AS Segmentation | |||
to EVPN . . . . . . . . . . . . . . . . . . . . . . . . . 9 | 5.1. Differences from Section 7.2.2 of RFC 7117 when Applied to | |||
5.2. I-PMSI Leaf Tracking . . . . . . . . . . . . . . . . . . 11 | EVPNs | |||
5.3. Backward Compatibility . . . . . . . . . . . . . . . . . 11 | 5.2. I-PMSI Leaf Tracking | |||
5.3.1. Designated ASBR Election . . . . . . . . . . . . . . 13 | 5.3. Backward Compatibility | |||
6. Inter-Region Segmentation . . . . . . . . . . . . . . . . . . 13 | 5.3.1. Designated ASBR Election | |||
6.1. Area/AS vs. Region . . . . . . . . . . . . . . . . . . . 13 | 6. Inter-Region Segmentation | |||
6.2. Per-region Aggregation . . . . . . . . . . . . . . . . . 14 | 6.1. Area/AS vs. Region | |||
6.3. Use of S-NH-EC . . . . . . . . . . . . . . . . . . . . . 15 | 6.2. Per-Region Aggregation | |||
6.4. Ingress PE's I-PMSI Leaf Tracking . . . . . . . . . . . . 16 | 6.3. Use of S-NH-EC | |||
7. Multi-homing Support . . . . . . . . . . . . . . . . . . . . 16 | 6.4. Ingress PE's I-PMSI Leaf Tracking | |||
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 | 7. Multihoming Support | |||
9. Security Considerations . . . . . . . . . . . . . . . . . . . 17 | 8. IANA Considerations | |||
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 17 | 9. Security Considerations | |||
11. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 17 | 10. References | |||
12. References . . . . . . . . . . . . . . . . . . . . . . . . . 18 | 10.1. Normative References | |||
12.1. Normative References . . . . . . . . . . . . . . . . . . 18 | 10.2. Informative References | |||
12.2. Informative References . . . . . . . . . . . . . . . . . 19 | Acknowledgements | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 20 | Contributors | |||
Authors' Addresses | ||||
1. Terminology | 1. Introduction | |||
It is expected that audience is familiar with MVPN [RFC6513] | [RFC7117] specifies procedures for multicast in the Virtual Private | |||
[RFC6514], VPLS Multicast [RFC7117] and EVPN [RFC7432] concepts and | LAN Service (VPLS multicast), using both inclusive tunnels and | |||
terminologies. For convenience, the following terms are briefly | selective tunnels with or without inter-AS segmentation, similar to | |||
explained. | the Multicast VPN (MVPN) procedures specified in [RFC6513] and | |||
[RFC6514]. [RFC7524] specifies inter-area tunnel segmentation | ||||
procedures for both VPLS multicast and MVPNs. | ||||
o PMSI [RFC6513]: P-Multicast Service Interface - a conceptual | [RFC7432] specifies BGP MPLS-based Ethernet VPN (EVPN) procedures, | |||
including those handling Broadcast, Unknown Unicast, or Multicast | ||||
(BUM) traffic. [RFC7432] refers to [RFC7117] for details but leaves | ||||
a few feature gaps related to selective tunnel and tunnel | ||||
segmentation (Section 2.1). | ||||
This document aims to fill in those gaps by covering the use of | ||||
selective and segmented tunnels in EVPNs. In the same way that | ||||
[RFC7432] refers to [RFC7117] for details, this document only | ||||
specifies differences from relevant procedures provided in [RFC7117] | ||||
and [RFC7524], rather than repeating the text from those documents. | ||||
Note that these differences are applicable to EVPNs only and are not | ||||
updates to [RFC7117] or [RFC7524]. | ||||
MVPN, VPLS, and EVPN technologies all need to discover other Provider | ||||
Edges (PEs) in the same L3/L2 VPN and announce the inclusive tunnels. | ||||
MVPN technology introduced the Inclusive P-Multicast Service | ||||
Interface (I-PMSI) concept and uses I-PMSI Auto-Discovery (A-D) | ||||
routes for that purpose. EVPN technology uses Inclusive Multicast | ||||
Ethernet Tag (IMET) A-D routes, but VPLS technology just adds a PMSI | ||||
Tunnel Attribute (PTA) to an existing VPLS A-D route for that | ||||
purpose. For selective tunnels, they all do use the same term: | ||||
Selective PMSI (S-PMSI) A-D routes. | ||||
This document often refers to the I-PMSI concept, which is the same | ||||
for all three technologies. For consistency and convenience, an | ||||
EVPN's IMET A-D route and a VPLS's VPLS A-D route carrying a PTA for | ||||
BUM traffic purposes may each be referred to as an I-PMSI A-D route, | ||||
depending on the context. | ||||
1.1. Requirements Language | ||||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | ||||
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | ||||
"OPTIONAL" in this document are to be interpreted as described in | ||||
BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all | ||||
capitals, as shown here. | ||||
1.2. Terminology | ||||
It is assumed that the reader is familiar with concepts and | ||||
terminologies related to MVPN technology [RFC6513] [RFC6514], VPLS | ||||
multicast [RFC7117], and EVPN technology [RFC7432]. For convenience, | ||||
the following terms are briefly explained. | ||||
AS: Autonomous System | ||||
PMSI [RFC6513]: P-Multicast Service Interface. A conceptual | ||||
interface for a PE to send customer multicast traffic to all or | interface for a PE to send customer multicast traffic to all or | |||
some PEs in the same VPN. | some PEs in the same VPN. | |||
o I-PMSI: Inclusive PMSI - to all PEs in the same VPN. | I-PMSI: Inclusive PMSI. Enables traffic to be sent to all PEs in | |||
the same VPN. | ||||
o S-PMSI: Selective PMSI - to some of the PEs in the same VPN. | S-PMSI: Selective PMSI. Enables traffic to be sent to some of the | |||
PEs in the same VPN. | ||||
o I/S-PMSI A-D Route: Auto-Discovery routes used to announce the | I/S-PMSI A-D Route: Auto-Discovery route used to announce the | |||
tunnels that instantiate an I/S-PMSI. | tunnels that instantiate an I/S-PMSI. | |||
o Leaf Auto-Discovery (A-D) routes [RFC6513]: For explicit leaf | Leaf Auto-Discovery (A-D) Route [RFC6513]: For explicit leaf- | |||
tracking purpose. Triggered by I/S-PMSI A-D routes and targeted | tracking purposes. Triggered by I/S-PMSI A-D routes and targeted | |||
at triggering route's (re-)advertiser. Its NLRI embeds the entire | at the triggering route's (re-)advertiser. Its Network Layer | |||
NLRI of the triggering PMSI A-D route. | Reachability Information (NLRI) embeds the entire NLRI of the | |||
triggering PMSI A-D route. | ||||
o IMET A-D route [RFC7432]: Inclusive Multicast Ethernet Tag A-D | IMET A-D Route [RFC7432]: Inclusive Multicast Ethernet Tag A-D | |||
route. The EVPN equivalent of MVPN Intra-AS I-PMSI A-D route used | route. The EVPN equivalent of an MVPN Intra-AS I-PMSI A-D route | |||
to announce the tunnels that instantiate an I-PMSI. | used to announce the tunnels that instantiate an I-PMSI. | |||
o SMET A-D route [I-D.ietf-bess-evpn-igmp-mld-proxy]: Selective | SMET A-D Route [RFC9251]: Selective Multicast Ethernet Tag A-D | |||
Multicast Ethernet Tag A-D route. The EVPN equivalent of MVPN | route. The EVPN equivalent of an MVPN Leaf A-D route, but | |||
Leaf A-D route but unsolicited and untargeted. | unsolicited and untargeted. | |||
o PMSI Tunnel Attribute (PTA): An optional transitive BGP attribute | PMSI Tunnel Attribute (PTA): An optional transitive BGP attribute | |||
that may be attached to PMSI/Leaf A-D routes to provide | that may be attached to PMSI/Leaf A-D routes to provide | |||
information for a PMSI tunnel. | information for a PMSI tunnel. | |||
2. Introduction | IBGP: Internal BGP (BGP connection between internal peers). | |||
[RFC7117] specifies procedures for Multicast in Virtual Private LAN | ||||
Service (VPLS Multicast) using both inclusive tunnels and selective | ||||
tunnels with or without inter-as segmentation, similar to the | ||||
Multicast VPN (MVPN) procedures specified in [RFC6513] and [RFC6514]. | ||||
[RFC7524] specifies inter-area tunnel segmentation procedures for | ||||
both VPLS Multicast and MVPN. | ||||
[RFC7432] specifies BGP MPLS-Based Ethernet VPN (EVPN) procedures, | ||||
including those handling broadcast, unknown unicast, and multicast | ||||
(BUM) traffic. A lot of details are referred to [RFC7117], yet with | ||||
quite some feature gaps like selective tunnel and tunnel segmentation | ||||
(Section 2.1). | ||||
This document aims at filling the gaps - cover the use of selective | ||||
and segmented tunnels in EVPN. It follows the same editorial choice | ||||
as in RFC7432 and only specifies differences from relevant procedures | ||||
in [RFC7117] and [RFC7524], instead of repeating the text. Note that | ||||
these differences are applicable to EVPN only, and are not updates to | ||||
[RFC7117] or [RFC7524]. | ||||
MVPN, VPLS and EVPN all have the need to discover other PEs in the | EBGP: External BGP (BGP connection between external peers). | |||
same L3/L2 VPN and announce the inclusive tunnels. MVPN introduced | ||||
the I-PMSI concept and uses I-PMSI A-D route for that. EVPN uses | ||||
Inclusive Multicast Ethernet Tag Route (IMET) A-D route but VPLS just | ||||
adds an PMSI Tunnel Attribute (PTA) to the existing VPLS A-D route | ||||
for that purpose. For selective tunnels, they all do use the same | ||||
term S-PMSI A-D routes. | ||||
Many places of this document involve the I-PMSI concept that is all | RT: Route Target. Controls route importation and propagation. | |||
the same for all three technologies. For consistency and | ||||
convenience, EVPN's IMET and VPLS's VPLS A-D route carrying PTA for | ||||
BUM traffic purpose may all be referred to as I-PMSI A-D routes | ||||
depending on the context. | ||||
2.1. Tunnel Segmentation | 2. Tunnel Segmentation | |||
MVPN provider tunnels and EVPN/VPLS BUM provider tunnels, which are | MVPN provider tunnels and EVPN/VPLS BUM provider tunnels, which are | |||
referred to as MVPN/EVPN/VPLS provider tunnels in this document for | referred to as MVPN/EVPN/VPLS provider tunnels in this document for | |||
simplicity, can be segmented for technical or administrative reasons, | simplicity, can be segmented for technical or administrative reasons, | |||
which are summarized in Section 2.1.1 of this document. [RFC6513] | which are summarized in Section 2.1 of this document. [RFC6513] and | |||
and [RFC6514] cover MVPN inter-as segmentation, [RFC7117] covers VPLS | [RFC6514] cover MVPN inter-AS segmentation, [RFC7117] covers VPLS | |||
multicast inter-as segmentation, and [RFC7524] (Seamless MPLS | multicast inter-AS segmentation, and [RFC7524] (seamless MPLS | |||
Multicast) covers inter-area segmentation for both MVPN and VPLS. | multicast) covers inter-area segmentation for both MVPNs and VPLSs. | |||
With tunnel segmentation, different segments of an end-to-end tunnel | With tunnel segmentation, different segments of an end-to-end tunnel | |||
may have different encapsulation overhead. However, the largest | may have different encapsulation overheads. However, the largest | |||
overhead of the tunnel caused by an encapsulation method on a | overhead of the tunnel caused by an encapsulation method on a | |||
particular segment is not different from the case of a non-segmented | particular segment is not different from the case of a non-segmented | |||
tunnel with that encapsulation method. This is similar to the case | tunnel with that encapsulation method. This is similar to the case | |||
of a network with different link types. | of a network with different link types. | |||
There is a difference between MVPN and VPLS multicast inter-as | There is a difference between MVPN and VPLS multicast inter-AS | |||
segmentation (the VPLS approach is briefly discribed in Section 5.1). | segmentation (the VPLS approach is briefly described in Section 5.1). | |||
For simplicity, EVPN will use the same procedures as in MVPN. All | For simplicity, EVPNs will use the same procedures as those for | |||
ASBRs can re-advertise their choice of the best route. Each can | MVPNs. All ASBRs can re-advertise their choice of the best route. | |||
become the root of its intra-AS segment and inject traffic it | Each can become the root of its intra-AS segment and inject traffic | |||
receives from its upstream, while each downstream PE/ASBR will only | it receives from its upstream, while each downstream PE/ASBR will | |||
pick one of the upstream ASBRs as its upstream. This is also the | only pick one of the upstream ASBRs as its upstream. This is also | |||
behavior even for VPLS in case of inter-area segmentation. | the behavior even for VPLS in the case of inter-area segmentation. | |||
For inter-area segmentation, [RFC7524] requires the use of Inter-area | For inter-area segmentation, [RFC7524] requires the use of the Inter- | |||
P2MP Segmented Next-Hop Extended Community (S-NH-EC), and the setting | Area Point-to-Multipoint (P2MP) Segmented Next-Hop Extended Community | |||
of "Leaf Information Required" L flag in PTA in certain situations. | (S-NH-EC) and the setting of the Leaf Information Required (L) flag | |||
In the EVPN case, the requirements around S-NH-EC and the PTA "L" | in the PTA in certain situations. In the EVPN case, the requirements | |||
flag differ from [RFC7524] to make the segmentation procedures | around the S-NH-EC and the L flag in the PTA differ from [RFC7524] to | |||
transparent to ingress and egress PEs. | make the segmentation procedures transparent to ingress and egress | |||
PEs. | ||||
[RFC7524] assumes that segmentation happens at area borders. | [RFC7524] assumes that segmentation happens at area borders. | |||
However, it could be at "regional" borders, where a region could be a | However, it could be at "regional" borders, where a region could be a | |||
sub-area, or even an entire AS plus its external links (Section 6.1). | sub-area, or even an entire AS plus its external links (Section 6.1); | |||
That would allow for more flexible deployment scenarios (e.g. for | this would allow for more flexible deployment scenarios (e.g., for | |||
single-area provider networks). This document extends the inter-area | single-area provider networks). This document extends the inter-area | |||
segmentation to inter-region segmentation for EVPN. | segmentation concept to inter-region segmentation for EVPNs. | |||
2.1.1. Reasons for Tunnel Segmentation | 2.1. Reasons for Tunnel Segmentation | |||
Tunnel segmentation may be required and/or desired because of | Tunnel segmentation may be required and/or desired for administrative | |||
administrative and/or technical reasons. | and/or technical reasons. | |||
For example, an MVPN/VPLS/EVPN network may span multiple providers | For example, an MVPN/VPLS/EVPN may span multiple providers, and the | |||
and the end-to-end provider tunnels have to be segmented at and | end-to-end provider tunnels have to be segmented at and stitched by | |||
stitched by the ASBRs. Different providers may use different tunnel | the ASBRs. Different providers may use different tunnel technologies | |||
technologies (e.g., provider A uses Ingress Replication [RFC7988], | (e.g., provider A uses ingress replication [RFC7988], provider B uses | |||
provider B uses RSVP-TE P2MP [RFC4875] while provider C uses mLDP | RSVP-TE P2MP [RFC4875], and provider C uses Multipoint LDP (mLDP) | |||
[RFC6388]). Even if they use the same tunnel technology like RSVP-TE | [RFC6388]). Even if they use the same tunnel technology (e.g., RSVP- | |||
P2MP, it may be impractical to set up the tunnels across provider | TE P2MP), it may be impractical to set up the tunnels across provider | |||
boundaries. | boundaries. | |||
The same situations may apply between the ASes and/or areas of a | The same situations may apply between the ASes and/or areas of a | |||
single provider. For example, the backbone area may use RSVP-TE P2MP | single provider. For example, the backbone area may use RSVP-TE P2MP | |||
tunnels while non-backbone areas may use mLDP tunnels. | tunnels while non-backbone areas may use mLDP tunnels. | |||
Segmentation can also be used to divide an AS/area into smaller | Segmentation can also be used to divide an AS/area into smaller | |||
regions, so that control plane state and/or forwarding plane state/ | regions, so that control plane state and/or forwarding plane state/ | |||
burden can be limited to that of individual regions. For example, | burden can be limited to that of individual regions. For example, | |||
instead of Ingress Replicating to 100 PEs in the entire AS, with | instead of ingress-replicating to 100 PEs in the entire AS, with | |||
inter-area segmentation [RFC7524] a PE only needs to replicate to | inter-area segmentation [RFC7524], a PE only needs to replicate to | |||
local PEs and ABRs. The ABRs will further replicate to their | local PEs and Area Border Routers (ABRs). The ABRs will further | |||
downstream PEs and ABRs. This not only reduces the forwarding plane | replicate to their downstream PEs and ABRs. This not only reduces | |||
burden, but also reduces the leaf tracking burden in the control | the forwarding plane burden, but also reduces the leaf-tracking | |||
plane. | burden in the control plane. | |||
Smaller regions also have the benefit that, in case of tunnel | In the case of tunnel aggregation, smaller regions provide the | |||
aggregation, it is easier to find congruence among the segments of | benefit of making it easier to find congruence among the segments of | |||
different constituent (service) tunnels and the resulting aggregation | different constituent (service) tunnels and the resulting aggregation | |||
(base) tunnel in a region. This leads to better bandwidth | (base) tunnel in a region. This leads to better bandwidth | |||
efficiency, because the more congruent they are, the fewer leaves of | efficiency, because the more congruent they are, the fewer leaves of | |||
the base tunnel need to discard traffic when a service tunnel's | the base tunnel need to discard traffic when a service tunnel's | |||
segment does not need to receive the traffic (yet it is receiving the | segment does not need to receive the traffic (yet it is receiving the | |||
traffic due to aggregation). | traffic due to aggregation). | |||
Another advantage of the smaller region is smaller BIER [RFC8279] | Another advantage of the smaller region is smaller Bit Index Explicit | |||
sub-domains. With BIER, packets carry a BitString, in which the bits | Replication (BIER) subdomains [RFC8279]. With BIER, packets carry a | |||
correspond to edge routers that needs to receive traffic. Smaller | BitString, in which the bits correspond to edge routers that need to | |||
sub-domains means smaller BitStrings can be used without having to | receive traffic. Smaller subdomains means that smaller BitStrings | |||
send multiple copies of the same packet. | can be used without having to send multiple copies of the same | |||
packet. | ||||
3. Additional Route Types of EVPN NLRI | 3. Additional Route Types of EVPN NLRI | |||
[RFC7432] defines the format of EVPN NLRI as the following: | [RFC7432] defines the format of EVPN NLRI as follows: | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Route Type (1 octet) | | | Route Type (1 octet) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Length (1 octet) | | | Length (1 octet) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Route Type specific (variable) | | | Route Type specific (variable) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
So far eight route types have been defined in [RFC7432], | So far, eight route types have been defined in [RFC7432], [RFC9136], | |||
[I-D.ietf-bess-evpn-prefix-advertisement], and | and [RFC9251]: | |||
[I-D.ietf-bess-evpn-igmp-mld-proxy]: | ||||
+ 1 - Ethernet Auto-Discovery (A-D) route | +=======+=========================================+ | |||
+ 2 - MAC/IP Advertisement route | | Value | Description | | |||
+ 3 - Inclusive Multicast Ethernet Tag route | +=======+=========================================+ | |||
+ 4 - Ethernet Segment route | | 1 | Ethernet Auto-discovery | | |||
+ 5 - IP Prefix Route | +-------+-----------------------------------------+ | |||
+ 6 - Selective Multicast Ethernet Tag Route | | 2 | MAC/IP Advertisement | | |||
+ 7 - Multicast Join Synch Route | +-------+-----------------------------------------+ | |||
+ 8 - Multicast Leave Synch Route | | 3 | Inclusive Multicast Ethernet Tag | | |||
+-------+-----------------------------------------+ | ||||
| 4 | Ethernet Segment | | ||||
+-------+-----------------------------------------+ | ||||
| 5 | IP Prefix | | ||||
+-------+-----------------------------------------+ | ||||
| 6 | Selective Multicast Ethernet Tag Route | | ||||
+-------+-----------------------------------------+ | ||||
| 7 | Multicast Membership Report Synch Route | | ||||
+-------+-----------------------------------------+ | ||||
| 8 | Multicast Leave Synch Route | | ||||
+-------+-----------------------------------------+ | ||||
Table 1: Pre-existing Route Types | ||||
This document defines three additional route types: | This document defines three additional route types: | |||
+ 9 - Per-Region I-PMSI A-D route | +=======+=============================+ | |||
+ 10 - S-PMSI A-D route | | Value | Description | | |||
+ 11 - Leaf A-D route | +=======+=============================+ | |||
| 9 | Per-Region I-PMSI A-D route | | ||||
+-------+-----------------------------+ | ||||
| 10 | S-PMSI A-D route | | ||||
+-------+-----------------------------+ | ||||
| 11 | Leaf A-D route | | ||||
+-------+-----------------------------+ | ||||
The "Route Type specific" field of the type 9 and type 10 EVPN NLRIs | Table 2: New Route Types | |||
starts with a type 1 RD, whose Administrator sub-field MUST match | ||||
that of the RD in all current non-Leaf A-D (Section 3.3) EVPN routes | ||||
from the same advertising router for a given EVI. | ||||
3.1. Per-Region I-PMSI A-D route | The "Route Type specific" field of the Type 9 and Type 10 EVPN NLRIs | |||
starts with a Type 1 RD (Route Distinguisher), whose Administrator | ||||
sub-field MUST match that of the RD in all current EVPN routes that | ||||
are not Leaf A-D routes (Section 3.3), i.e., non-Leaf A-D routes from | ||||
the same advertising router for a given EVPN instance (EVI). | ||||
The Per-region I-PMSI A-D route has the following format. Its usage | 3.1. Per-Region I-PMSI A-D Route | |||
The per-region I-PMSI A-D route has the following format. Its usage | ||||
is discussed in Section 6.2. | is discussed in Section 6.2. | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| RD (8 octets) | | | RD (8 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Ethernet Tag ID (4 octets) | | | Ethernet Tag ID (4 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Region ID (8 octets) | | | Region ID (8 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
The Region ID identifies the region and is encoded just as how an | The Region ID identifies the region and is encoded in the same way | |||
Extended Community is encoded, as detailed in Section 6.2. | that an EC is encoded, as detailed in Section 6.2. | |||
3.2. S-PMSI A-D route | 3.2. S-PMSI A-D Route | |||
The S-PMSI A-D route has the following format: | The S-PMSI A-D route has the following format: | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| RD (8 octets) | | | RD (8 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Ethernet Tag ID (4 octets) | | | Ethernet Tag ID (4 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Multicast Source Length (1 octet) | | | Multicast Source Length (1 octet) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Multicast Source (Variable) | | | Multicast Source (variable) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Multicast Group Length (1 octet) | | | Multicast Group Length (1 octet) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Multicast Group (Variable) | | | Multicast Group (variable) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
|Originator's Addr Length (1 octet) | | |Originator's Addr Length (1 octet) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
|Originator's Addr (4 or 16 octets) | | |Originator's Addr (4 or 16 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
Other than the addition of Ethernet Tag ID and Originator's Addr | Other than the addition of the Ethernet Tag ID and Originator's Addr | |||
Length, it is identical to the S-PMSI A-D route as defined in | Length fields, it is identical to the S-PMSI A-D route as defined in | |||
[RFC7117]. The procedures in [RFC7117] also apply (including | [RFC7117]. The procedures specified in [RFC7117] also apply | |||
wildcard functionality), except that the granularity level is per | (including wildcard functionality), except that the granularity level | |||
Ethernet Tag. | is per Ethernet Tag. | |||
3.3. Leaf A-D route | 3.3. Leaf A-D Route | |||
The Route Type specific field of a Leaf A-D route consists of the | The Route Type specific field of a Leaf A-D route consists of the | |||
following: | following: | |||
+-----------------------------------+ | +-----------------------------------+ | |||
| Route Key (variable) | | | Route Key (variable) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
|Originator's Addr Length (1 octet) | | |Originator's Addr Length (1 octet) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
|Originator's Addr (4 or 16 octets) | | |Originator's Addr (4 or 16 octets) | | |||
+-----------------------------------+ | +-----------------------------------+ | |||
A Leaf A-D route is originated in response to a PMSI route, which | A Leaf A-D route is originated in response to a PMSI route, which | |||
could be an Inclusive Multicast Tag route, a per-region I-PMSI A-D | could be an IMET A-D route, a per-region I-PMSI A-D route, an S-PMSI | |||
route, an S-PMSI A-D route, or some other types of routes that may be | A-D route, or some other types of routes that may be defined in the | |||
defined in the future that triggers Leaf A-D routes. The Route Key | future that trigger Leaf A-D routes. The Route Key is the NLRI of | |||
is the NLRI of the route for which this Leaf A-D route is generated. | the route for which this Leaf A-D route is generated. | |||
The general procedures of Leaf A-D route are first specified in | The general procedures for Leaf A-D routes were first specified in | |||
[RFC6514] for MVPN. The principles apply to VPLS and EVPN as well. | [RFC6514] for MVPNs. The principles therein apply to VPLSs and EVPNs | |||
[RFC7117] has details for VPLS Multicast, and this document points | as well. [RFC7117] provides details regarding VPLS multicast, and | |||
out some specifics for EVPN, e.g. in Section 5. | this document points out some specifics for EVPNs, e.g., in | |||
Section 5. | ||||
4. Selective Multicast | 4. Selective Multicast | |||
[I-D.ietf-bess-evpn-igmp-mld-proxy] specifies procedures for EVPN | [RFC9251] specifies procedures for EVPN selective forwarding of IP | |||
selective forwarding of IP multicast using SMET routes. It assumes | multicast traffic using SMET routes. It assumes that selective | |||
selective forwarding is always used with IR for all flows (though the | forwarding is always used with ingress replication for all flows | |||
same signaling can also be used for an ingress PE to find out the set | (though the same signaling can also be used for an ingress PE to | |||
of egress PEs for selective forwarding with BIER). An NVE proxies | learn the set of egress PEs for selective forwarding with BIER). A | |||
the IGMP/MLD state that it learns on its ACs to (C-S,C-G) or | Network Virtualization Edge (NVE) proxies the IGMP/MLD state ("MLD" | |||
(C-*,C-G) SMET routes that advertises to other NVEs, and a receiving | stands for "Multicast Listener Discovery") that it learns on its | |||
NVE converts the SMET routes back to IGMP/MLD messages and sends them | Attachment Circuits (ACs) to (C-S,C-G) or (C-*,C-G) SMET routes that | |||
out of its ACs. The receiving NVE also uses the SMET routes to | are advertised to other NVEs, and a receiving NVE converts the SMET | |||
identify which NVEs need to receive traffic for a particular | routes back to IGMP/MLD messages and sends them out of its ACs. The | |||
(C-S,C-G) or (C-*,C-G) to achieve selective forwarding using IR or | receiving NVE also uses the SMET routes to identify which NVEs need | |||
BIER. | to receive traffic for a particular (C-S,C-G) or (C-*,C-G) to achieve | |||
selective forwarding using ingress replication or BIER. | ||||
With the above procedures, selective forwarding is done for all flows | With the above procedures, selective forwarding is done for all | |||
and the SMET routes are advertised for all flows. It is possible | flows, and the SMET routes are advertised for all flows. It is | |||
that an operator may not want to track all those (C-S, C-G) or | possible that an operator may not want to track all those (C-S, C-G) | |||
(C-*,C-G) state on the NVEs, and the multicast traffic pattern allows | or (C-*,C-G) states on the NVEs, and the multicast traffic pattern | |||
inclusive forwarding for most flows while selective forwarding is | allows inclusive forwarding for most flows while selective forwarding | |||
needed only for a few high-rate flows. For that, or for tunnel types | is needed only for a few high-rate flows. For that reason, or for | |||
other than IR/BIER, S-PMSI/Leaf A-D procedures defined for Selective | tunnel types other than ingress replication or BIER, S-PMSI/Leaf A-D | |||
Multicast for VPLS in [RFC7117] are used. Other than that different | procedures defined for selective multicast for VPLS in [RFC7117] are | |||
route types and formats are specified with EVPN SAFI for S-PMSI A-D | used. Other than the fact that different route types and formats are | |||
and Leaf A-D routes (Section 3), all procedures in [RFC7117] with | specified with an EVPN SAFI for S-PMSI A-D and Leaf A-D routes | |||
respect to Selective Multicast apply to EVPN as well, including | (Section 3), all procedures specified in [RFC7117] with respect to | |||
wildcard procedures. In a nutshell, a source NVE advertises S-PMSI | selective multicast apply to EVPNs as well, including wildcard | |||
A-D routes to announce the tunnels used for certain flows, and | procedures. In a nutshell, a source NVE advertises S-PMSI A-D routes | |||
receiving NVEs either join the announced PIM/mLDP tunnel or respond | to announce the tunnels used for certain flows, and receiving NVEs | |||
with Leaf A-D routes if the Leaf Information Required flag is set in | either join the announced PIM/mLDP tunnel or respond with Leaf A-D | |||
the S-PMSI A-D route's PTA (so that the source NVE can include them | routes if the L flag is set in the S-PMSI A-D route's PTA (so that | |||
as tunnel leaves). | the source NVE can include them as tunnel leaves). | |||
An optimization to the [RFC7117] procedures may be applied. Even if | An optimization to the procedures provided in [RFC7117] may be | |||
a source NVE sets the L flag to request Leaf A-D routes, an egress | applied. Even if a source NVE sets the L flag to request Leaf A-D | |||
NVE MAY omit the Leaf A-D route if it has already advertised a | routes, an egress NVE MAY omit the Leaf A-D route if it has already | |||
corresponding SMET route, and the source NVE MUST use that in lieu of | advertised a corresponding SMET route, and the source NVE MUST use | |||
the Leaf A-D route. | that in lieu of the Leaf A-D route. | |||
The optional optimizations specified for MVPN in [RFC8534] are also | The optional optimizations specified for MVPNs in [RFC8534] are also | |||
applicable to EVPN when the S-PMSI/Leaf A-D routes procedures are | applicable to EVPNs when the procedures for S-PMSI/Leaf A-D routes | |||
used for EVPN selective multicast forwarding. | are used for EVPN selective multicast forwarding. | |||
5. Inter-AS Segmentation | 5. Inter-AS Segmentation | |||
5.1. Differences from Section 7.2.2 of [RFC7117] When Applied to EVPN | 5.1. Differences from Section 7.2.2 of RFC 7117 when Applied to EVPNs | |||
The first paragraph of Section 7.2.2.2 of [RFC7117] says: | The first paragraph of Section 7.2.2.2 of [RFC7117] says: | |||
"... The best route procedures ensure that if multiple | | ... The best route procedures ensure that if multiple ASBRs, in an | |||
ASBRs, in an AS, receive the same Inter-AS A-D route from their EBGP | | AS, receive the same Inter-AS A-D route from their EBGP neighbors, | |||
neighbors, only one of these ASBRs propagates this route in Internal | | only one of these ASBRs propagates this route in Internal BGP | |||
BGP (IBGP). This ASBR becomes the root of the intra-AS segment of | | (IBGP). This ASBR becomes the root of the intra-AS segment of the | |||
the inter-AS tree and ensures that this is the only ASBR that accepts | | inter-AS tree and ensures that this is the only ASBR that accepts | |||
traffic into this AS from the inter-AS tree." | | traffic into this AS from the inter-AS tree. | |||
The above VPLS behavior requires complicated VPLS specific procedures | The above VPLS behavior requires complicated VPLS-specific procedures | |||
for the ASBRs to reach agreement. For EVPN, a different approach is | for the ASBRs to reach agreement. For EVPNs, a different approach is | |||
used and the above quoted text is not applicable to EVPN. | used; the above text from [RFC7117] is not applicable to EVPNs. | |||
With the different approach for EVPN/MVPN, each ASBR will re- | With the different approach for EVPNs/MVPNs, each ASBR will re- | |||
advertise its received Inter-AS A-D route to its IBGP peers and | advertise its received Inter-AS A-D route to its IBGP peers and | |||
becomes the root of an intra-AS segment of the inter-AS tree. The | becomes the root of an intra-AS segment of the inter-AS tree. The | |||
intra-AS segment rooted at one ASBR is disjoint with another intra-AS | intra-AS segment rooted at one ASBR is disjoint from another intra-AS | |||
segment rooted at another ASBR. This is the same as the procedures | segment rooted at another ASBR. This is the same as the procedures | |||
for S-PMSI in [RFC7117] itself. | for S-PMSI routes in [RFC7117] itself. | |||
The following bullet in Section 7.2.2.2 of [RFC7117] does not apply | The following bullet in Section 7.2.2.2 of [RFC7117] does not apply | |||
to EVPN. | to EVPNs. | |||
+ If the ASBR uses ingress replication to instantiate the intra-AS | | * If the ASBR uses ingress replication to instantiate the intra- | |||
segment of the inter-AS tunnel, the re-advertised route MUST NOT | | AS segment of the inter-AS tunnel, the re-advertised route MUST | |||
carry the PMSI Tunnel attribute. | | NOT carry the PMSI Tunnel attribute. | |||
The following bullet in Section 7.2.2.2 of [RFC7117]: | The following bullet in Section 7.2.2.2 of [RFC7117]: | |||
+ If the ASBR uses a P-multicast tree to instantiate the intra-AS | | * If the ASBR uses a P-multicast tree to instantiate the intra-AS | |||
segment of the inter-AS tunnel, the PMSI Tunnel attribute MUST | | segment of the inter-AS tunnel, the PMSI Tunnel attribute MUST | |||
contain the identity of the tree that is used to instantiate the | | contain the identity of the tree that is used to instantiate | |||
segment (note that the ASBR could create the identity of the tree | | the segment (note that the ASBR could create the identity of | |||
prior to the actual instantiation of the segment). If, in order | | the tree prior to the actual instantiation of the segment). | |||
to instantiate the segment, the ASBR needs to know the leaves of | | If, in order to instantiate the segment, the ASBR needs to know | |||
the tree, then the ASBR obtains this information from the A-D | | the leaves of the tree, then the ASBR obtains this information | |||
routes received from other PEs/ASBRs in the ASBR's own AS. | | from the A-D routes received from other PEs/ASBRs in the ASBR's | |||
| own AS. | ||||
is changed to the following when applied to EVPN: | is changed to the following when applied to EVPNs: | |||
"The PMSI Tunnel attribute MUST specify the tunnel for the segment. | | * The PTA MUST specify the tunnel for the segment. If and only | |||
If and only if, in order to establish the tunnel, the ASBR needs to | | if, in order to establish the tunnel, the ASBR needs to know | |||
know the leaves of the tree, then the ASBR MUST set the L flag to | | the leaves of the tree, then the ASBR MUST set the L flag to 1 | |||
1 in the PTA to trigger Leaf A-D routes from egress PEs and | | in the PTA to trigger Leaf A-D routes from egress PEs and | |||
downstream ASBRs. It MUST be (auto-)configured with an import RT, | | downstream ASBRs. It MUST be (auto-)configured with an import | |||
which controls acceptance of leaf A-D routes by the ASBR." | | RT, which controls acceptance of Leaf A-D routes by the ASBR. | |||
Accordingly, the following paragraph in Section 7.2.2.4 of [RFC7117]: | Accordingly, the following paragraph in Section 7.2.2.4 of [RFC7117]: | |||
"If the received Inter-AS A-D route carries the PMSI Tunnel attribute | | If the received Inter-AS A-D route carries the PMSI Tunnel | |||
with the Tunnel Identifier set to RSVP-TE P2MP LSP, then the ASBR | | attribute with the Tunnel Identifier set to RSVP-TE P2MP LSP, then | |||
that originated the route MUST establish an RSVP-TE P2MP LSP with the | | the ASBR that originated the route MUST establish an RSVP-TE P2MP | |||
local PE/ASBR as a leaf. This LSP MAY have been established before | | LSP with the local PE/ASBR as a leaf. This LSP MAY have been | |||
the local PE/ASBR receives the route, or it MAY be established after | | established before the local PE/ASBR receives the route, or it MAY | |||
the local PE receives the route." | | be established after the local PE receives the route. | |||
is changed to the following when applied to EVPN: | is changed to the following when applied to EVPNs: | |||
"If the received Inter-AS A-D route has the L flag set in its PTA, | | If the received Inter-AS A-D route has the L flag set in its PTA, | |||
then a receiving PE MUST originate a corresponding Leaf A-D route, | | then a receiving PE MUST originate a corresponding Leaf A-D route. | |||
while a receiving ASBR MUST originate a corresponding Leaf A-D route | | A receiving ASBR MUST originate a corresponding Leaf A-D route if | |||
if and only if it received and imported one or more corresponding | | and only if one of the following conditions is met: (1) it | |||
Leaf A-D routes from its downstream IBGP or EBGP peers, or it has | | received and imported one or more corresponding Leaf A-D routes | |||
non-null downstream forwarding state for the PIM/mLDP tunnel that | | from its downstream IBGP or EBGP peers or (2) it has non-null | |||
instantiates its downstream intra-AS segment. The targeted ASBR for | | downstream forwarding state for the PIM/mLDP tunnel that | |||
the Leaf A-D route, which (re-)advertised the Inter-AS A-D route, | | instantiates its downstream intra-AS segment. The targeted ASBR | |||
MUST establish a tunnel to the leaves discovered by the Leaf A-D | | for the Leaf A-D route, which (re-)advertised the Inter-AS A-D | |||
routes." | | route, MUST establish a tunnel to the leaves discovered by the | |||
| Leaf A-D routes. | ||||
5.2. I-PMSI Leaf Tracking | 5.2. I-PMSI Leaf Tracking | |||
An ingress PE does not set the L flag in its Inclusive Multicast | An ingress PE does not set the L flag in its IMET A-D route's PTA, | |||
Ethernet Tag (IMET) A-D route's PTA, even with Ingress Replication or | even with Ingress Replication tunnels or RSVP-TE P2MP tunnels. It | |||
RSVP-TE P2MP tunnels. It does not rely on the Leaf A-D routes to | does not rely on the Leaf A-D routes to discover leaves in its AS, | |||
discover leaves in its AS, and Section 11.2 of [RFC7432] explicitly | and Section 11.2 of [RFC7432] explicitly states that the L flag must | |||
states that the L flag must be set to zero. | be set to 0. | |||
An implementation of [RFC7432] might have used the Originating | An implementation of [RFC7432] might have used the Originating | |||
Router's IP Address field of the IMET A-D routes to determine the | Router's IP Address field of the IMET A-D routes to determine the | |||
leaves, or might have used the Next Hop field instead. Within the | leaves or might have used the Next Hop field instead. Within the | |||
same AS, both will lead to the same result. | same AS, both will lead to the same result. | |||
With segmentation, an ingress PE MUST determine the leaves in its AS | With segmentation, an ingress PE MUST determine the leaves in its AS | |||
from the BGP next hops in all its received IMET A-D routes, so it | from the BGP next hops in all its received IMET A-D routes, so it | |||
does not have to set the L flag set to request Leaf A-D routes. PEs | does not have to set the L flag to request Leaf A-D routes. PEs | |||
within the same AS will all have different next hops in their IMET | within the same AS will all have different next hops in their IMET | |||
A-D routes (hence will all be considered as leaves), and PEs from | A-D routes (and hence will all be considered as leaves), and PEs from | |||
other ASes will have the next hop in their IMET A-D routes set to | other ASes will have the next hop in their IMET A-D routes set to | |||
addresses of ASBRs in this local AS, hence only those ASBRs will be | addresses of ASBRs in this local AS; hence, only those ASBRs will be | |||
considered as leaves (as proxies for those PEs in other ASes). Note | considered as leaves (as proxies for those PEs in other ASes). Note | |||
that in case of Ingress Replication, when an ASBR re-advertises IMET | that in the case of ingress replication, when an ASBR re-advertises | |||
A-D routes to IBGP peers, it MUST advertise the same label for all | IMET A-D routes to IBGP peers, it MUST advertise the same label for | |||
those for the same Ethernet Tag ID and the same EVI. Otherwise, | all those routes for the same Ethernet Tag ID and the same EVI. | |||
duplicated copies will be sent by the ingress PE and received by | Otherwise, duplicated copies will be sent by the ingress PE and | |||
egress PEs in other regions. For the same reason, when an ingress PE | received by egress PEs in other regions. For the same reason, when | |||
builds its flooding list, if multiple routes have the same (nexthop, | an ingress PE builds its flooding list, if multiple routes have the | |||
label) tuple they MUST only be added as a single branch in the | same (nexthop, label) tuple, they MUST only be added as a single | |||
flooding list. | branch in the flooding list. | |||
5.3. Backward Compatibility | 5.3. Backward Compatibility | |||
The above procedures assume that all PEs are upgraded to support the | The above procedures assume that all PEs are upgraded to support the | |||
segmentation procedures: | segmentation procedures: | |||
o An ingress PE uses the Next Hop and not Originating Router's IP | * An ingress PE uses the Next Hop and not the Originating Router's | |||
Address to determine leaves for the I-PMSI tunnel. | IP Address to determine leaves for the I-PMSI tunnel. | |||
o An egress PE sends Leaf A-D routes in response to I-PMSI routes, | * An egress PE sends Leaf A-D routes in response to I-PMSI routes, | |||
if the PTA has the L flag set by the re-advertising ASBR. | if the PTA has the L flag set by the re-advertising ASBR. | |||
o In case of Ingress Replication, when an ingress PE builds its | * In the case of ingress replication, when an ingress PE builds its | |||
flooding list, multiple I-PMSI routes may have the same (nexthop, | flooding list, multiple I-PMSI routes may have the same (nexthop, | |||
label) tuple and only a single branch for those will be added in | label) tuple, and only a single branch for those routes will be | |||
the flooding list. | added in the flooding list. | |||
If a deployment has legacy PEs that does not support the above, then | If a deployment has legacy PEs that do not support the above, then a | |||
a legacy ingress PE would include all PEs (including those in remote | legacy ingress PE would include all PEs (including those in remote | |||
ASes) as leaves of the inclusive tunnel and try to send traffic to | ASes) as leaves of the inclusive tunnel and try to send traffic to | |||
them directly (no segmentation), which is either undesired or not | them directly (no segmentation), which is either undesirable or | |||
possible; a legacy egress PE would not send Leaf A-D routes so the | impossible; a legacy egress PE would not send Leaf A-D routes so the | |||
ASBRs would not know to send external traffic to them. | ASBRs would not know to send external traffic to them. | |||
If this backward compatibility problem needs to be addressed, the | If this backward-compatibility problem needs to be addressed, the | |||
following procedure MUST be used (see Section 6.2 for per-PE/AS/ | following procedure MUST be used (see Section 6.2 for per-PE/AS/ | |||
region I-PMSI A-D routes): | region I-PMSI A-D routes): | |||
o An upgraded PE indicates in its per-PE I-PMSI A-D route that it | * An upgraded PE indicates in its per-PE I-PMSI A-D route that it | |||
supports the new procedures. This is done by setting a flag bit | supports the new procedures. This is done by setting a flag bit | |||
in the EVPN Multicast Flags Extended Community. | in the EVPN Multicast Flags Extended Community. | |||
o All per-PE I-PMSI A-D routes are restricted to the local AS and | * All per-PE I-PMSI A-D routes are restricted to the local AS and | |||
not propagated to external peers. | not propagated to external peers. | |||
o The ASBRs in an AS originate per-region I-PMSI A-D routes and | * The ASBRs in an AS originate per-region I-PMSI A-D routes and | |||
advertise them to their external peers to specify tunnels used to | advertise them to their external peers to specify tunnels used to | |||
carry traffic from the local AS to other ASes. Depending on the | carry traffic from the local AS to other ASes. Depending on the | |||
types of tunnels being used, the L flag in the PTA may be set, in | types of tunnels being used, the L flag in the PTA may be set, in | |||
which case the downstream ASBRs and upgraded PEs will send Leaf | which case the downstream ASBRs and upgraded PEs will send Leaf | |||
A-D routes to pull traffic from their upstream ASBRs. In a | A-D routes to pull traffic from their upstream ASBRs. In a | |||
particular downstream AS, one of the ASBRs is elected, based on | particular downstream AS, one of the ASBRs is elected, based on | |||
the per-region I-PMSI A-D routes for a particular source AS, to | the per-region I-PMSI A-D routes for a particular source AS, to | |||
send traffic from that source AS to legacy PEs in the downstream | send traffic from that source AS to legacy PEs in the downstream | |||
AS. The traffic arrives at the elected ASBR on the tunnel | AS. The traffic arrives at the elected ASBR on the tunnel | |||
announced in the best per-region I-PMSI A-D route for the source | announced in the best per-region I-PMSI A-D route for the source | |||
AS, that the ASBR has selected of all those that it received over | AS, as selected by the ASBR from all the routes that it received | |||
EBGP or IBGP sessions. The election procedure is described in | over EBGP or IBGP sessions. The election procedure is described | |||
Section 5.3.1. | in Section 5.3.1. | |||
o In an ingress/upstream AS, if and only if an ASBR has active | * In an ingress/upstream AS, if and only if an ASBR has active | |||
downstream receivers (PEs and ASBRs), which are learned either | downstream receivers (PEs and ASBRs), which are learned either | |||
explicitly via Leaf A-D routes or implicitly via PIM join or mLDP | explicitly via Leaf A-D routes or implicitly via PIM Join or mLDP | |||
label mapping, the ASBR originates a per-PE I-PMSI A-D route | label mapping, the ASBR originates a per-PE I-PMSI A-D route | |||
(i.e., regular Inclusive Multicast Ethernet Tag route) into the | (i.e., a regular IMET route) into the local AS and stitches | |||
local AS, and stitches incoming per-PE I-PMSI tunnels into its | incoming per-PE I-PMSI tunnels into its per-region I-PMSI tunnel. | |||
per-region I-PMSI tunnel. With this, it gets traffic from local | Via this process, it gets traffic from local PEs and sends the | |||
PEs and send to other ASes via the tunnel announced in its per- | traffic to other ASes via the tunnel announced in its per-region | |||
region I-PMSI A-D route. | I-PMSI A-D route. | |||
Note that, even if there is no backward compatibility issue, the use | Note that even if there are no backward-compatibility issues, the use | |||
of per-region I-PMSI has the benefit of keeping all per-PE I-PMSI A-D | of per-region I-PMSI A-D routes provides the benefit of keeping all | |||
routes in their local ASes, greatly reducing the flooding of the | per-PE I-PMSI A-D routes in their local ASes, greatly reducing the | |||
routes and their corresponding Leaf A-D routes (when needed), and the | flooding of the routes and their corresponding Leaf A-D routes (when | |||
number of inter-as tunnels. | needed) and reducing the number of inter-AS tunnels. | |||
5.3.1. Designated ASBR Election | 5.3.1. Designated ASBR Election | |||
When an ASBR re-advertises a per-region I-PMSI A-D route into an AS | When an ASBR re-advertises a per-region I-PMSI A-D route into an AS | |||
in which a designated ASBR needs to be used to forward traffic to the | in which a designated ASBR needs to be used to forward traffic to the | |||
legacy PEs in the AS, it MUST include a DF Election EC. The EC and | legacy PEs in the AS, it MUST include a Designated Forwarder (DF) | |||
its use is specified in [RFC8584]. The AC-DF bit in the DF Election | Election EC. The EC and its use are specified in [RFC8584]. The AC- | |||
EC MUST be cleared. If it is known that no legacy PEs exist in the | DF bit in the DF Election EC MUST be cleared. If it is known that no | |||
AS, the ASBR MUST NOT include the EC and MUST remove the DF Election | legacy PEs exist in the AS, the ASBR MUST NOT include the EC and MUST | |||
EC if one is carried in the per-region I-PMSI A-D routes that it | remove the DF Election EC if one is carried in the per-region I-PMSI | |||
receives. Note that this is done for each set of per-region I-PMSI | A-D routes that it receives. Note that this is done for each set of | |||
A-D routes with the same NLRI. | per-region I-PMSI A-D routes with the same NLRI. | |||
Based on the procedures in [RFC8584], an election algorithm is | Based on the procedures specified in [RFC8584], an election algorithm | |||
determined according to the DF Election ECs carried in the set of | is determined according to the DF Election ECs carried in the set of | |||
per-region I-PMSI routes of the same NLRI re-adverised into the AS. | per-region I-PMSI routes of the same NLRI re-advertised into the AS. | |||
The algorithm is then applied to a candidate list, which is the set | The algorithm is then applied to a candidate list, which is the set | |||
of ASBRs that re-advertised the per-region I-PMSI routes of the same | of ASBRs that re-advertised the per-region I-PMSI routes of the same | |||
NLRI carrying the DF Election EC. | NLRI carrying the DF Election EC. | |||
6. Inter-Region Segmentation | 6. Inter-Region Segmentation | |||
6.1. Area/AS vs. Region | 6.1. Area/AS vs. Region | |||
[RFC7524] is for MVPN/VPLS inter-area segmentation and does not | [RFC7524] addresses MVPN/VPLS inter-area segmentation and does not | |||
explicitly cover EVPN. However, if "area" is replaced by "region" | explicitly cover EVPNs. However, if "area" is replaced by "region" | |||
and "ABR" is replaced by "RBR" (Regional Border Router) then | and "ABR" is replaced by "RBR" (Regional Border Router), then | |||
everything still works, and can be applied to EVPN as well. | everything still works and can be applied to EVPNs as well. | |||
A region can be a sub-area, or can be an entire AS including its | A region can be a sub-area, or it can be an entire AS, including its | |||
external links. Instead of automatic region definition based on IGP | external links. Instead of automatically defining a region based on | |||
areas, a region would be defined as a BGP peer group. In fact, even | IGP areas, a region would be defined as a BGP peer group. In fact, | |||
with IGP area based region definition, a BGP peer group listing the | even with a region definition based on an IGP area, a BGP peer group | |||
PEs and ABRs in an area is still needed. | listing the PEs and ABRs in an area is still needed. | |||
Consider the following example diagram for inter-as segmentation: | Consider the following example diagram for inter-AS segmentation: | |||
--------- ------ --------- | --------- ------ --------- | |||
/ \ / \ / \ | / \ / \ / \ | |||
/ \ / \ / \ | / \ / \ / \ | |||
| PE1 o ASBR1 -- ASBR2 ASBR3 -- ASBR4 o PE2 | | | PE1 o ASBR1 -- ASBR2 ASBR3 -- ASBR4 o PE2 | | |||
\ / \ / \ / | \ / \ / \ / | |||
\ / \ / \ / | \ / \ / \ / | |||
--------- ------ --------- | --------- ------ --------- | |||
AS 100 AS 200 AS 300 | AS 100 AS 200 AS 300 | |||
|-----------|--------|---------|--------|------------| | |-----------|--------|---------|--------|------------| | |||
segment1 segment2 segment3 segment4 segment5 | segment1 segment2 segment3 segment4 segment5 | |||
The inter-as segmentation procedures specified so far ([RFC6513] | The inter-AS segmentation procedures specified so far ([RFC6513], | |||
[RFC6514], [RFC7117], and Section 5 of this document) require all | [RFC6514], [RFC7117], and Section 5 of this document) require all | |||
ASBRs to be involved, and Ingress Replication is used between two | ASBRs to be involved, and ingress replication is used between two | |||
ASBRs in different ASes. | ASBRs in different ASes. | |||
In the above diagram, it's possible that ASBR1/4 does not support | In the above diagram, it's possible that ASBR1/4 does not support | |||
segmentation, and the provider tunnels in AS 100/300 can actually | segmentation, and the provider tunnels in AS 100/300 can actually | |||
extend across the external link. In this case, the inter-region | extend across the external link. In this case, the inter-region | |||
segmentation procedures can be used instead - a region is the entire | segmentation procedures can be used instead -- a region is the entire | |||
(AS100 + ASBR1-ASBR2 link) or (AS300 + ASBR3-ASBR4 link). ASBR2/3 | AS100 plus the ASBR1-ASBR2 link or the entire AS300 plus the | |||
would be the RBRs, and ASBR1/4 will just be a transit core router | ASBR3-ASBR4 link. ASBR2/3 would be the RBRs, and ASBR1/4 will just | |||
with respect to provider tunnels. | be a transit core router with respect to provider tunnels. | |||
As illustrated in the diagram below, ASBR2/3 will establish a | As illustrated in the diagram below, ASBR2/3 will establish a | |||
multihop EBGP session with either a RR or directly with PEs in the | multihop EBGP session, either with a Route Reflector (RR) or directly | |||
neighboring AS. I/S-PMSI A-D routes from ingress PEs will not be | with PEs in the neighboring AS. I/S-PMSI A-D routes from ingress PEs | |||
processed by ASBR1/4. When ASBR2 re-advertises the routes into AS | will not be processed by ASBR1/4. When ASBR2 re-advertises the | |||
200, it changes the next hop to its own address and changes PTA to | routes into AS 200, it changes the next hop to its own address and | |||
specify the tunnel type/identification in its own AS. When ASBR3 re- | changes its PTA to specify the tunnel type/identification in its own | |||
advertises I/S-PMSI A-D routes into the neighboring AS 300, it | AS. When ASBR3 re-advertises I/S-PMSI A-D routes into the | |||
changes the next hop to its own address and changes PTA to specify | neighboring AS 300, it changes the next hop to its own address and | |||
the tunnel type/identification in the neighboring region. Now the | changes its PTA to specify the tunnel type/identification in the | |||
segment is rooted at ASBR3 and extends across the external link to | neighboring region. Now, the segment is rooted at ASBR3 and extends | |||
PEs. | across the external link to PEs. | |||
--------- ------ --------- | --------- ------ --------- | |||
/ RR....\.mh-ebpg / \ mh-ebgp/....RR \ | / RR....\.mh-ebpg / \ mh-ebgp/....RR \ | |||
/ : \ `. / \ .' / : \ | / : \ `. / \ .' / : \ | |||
| PE1 o ASBR1 -- ASBR2 ASBR3 -- ASBR4 o PE2 | | | PE1 o ASBR1 -- ASBR2 ASBR3 -- ASBR4 o PE2 | | |||
\ / \ / \ / | \ / \ / \ / | |||
\ / \ / \ / | \ / \ / \ / | |||
--------- ------ --------- | --------- ------ --------- | |||
AS 100 AS 200 AS 300 | AS 100 AS 200 AS 300 | |||
|-------------------|----------|---------------------| | |-------------------|----------|---------------------| | |||
segment 1 segment 2 segment 3 | segment 1 segment 2 segment 3 | |||
6.2. Per-region Aggregation | 6.2. Per-Region Aggregation | |||
Notice that every I/S-PMSI route from each PE will be propagated | Notice that every I/S-PMSI route from each PE will be propagated | |||
throughout all the ASes or regions. They may also trigger | throughout all the ASes or regions. They may also trigger | |||
corresponding Leaf A-D routes depending on the types of tunnels used | corresponding Leaf A-D routes, depending on the types of tunnels used | |||
in each region. This may become too many - routes and corresponding | in each region. This may result in too many routes and corresponding | |||
tunnels. To address this concern, the I-PMSI routes from all PEs in | tunnels. To address this concern, the I-PMSI routes from all PEs in | |||
a AS/region can be aggregated into a single I-PMSI route originated | an AS/region can be aggregated into a single I-PMSI route originated | |||
from the RBRs, and traffic from all those individual I-PMSI tunnels | from the RBRs, and traffic from all those individual I-PMSI tunnels | |||
will be switched into the single I-PMSI tunnel. This is like the | will be switched into the single I-PMSI tunnel. This is like the | |||
MVPN Inter-AS I-PMSI route originated by ASBRs. | MVPN Inter-AS I-PMSI route originated by ASBRs. | |||
The MVPN Inter-AS I-PMSI A-D route can be better called as per-AS | The MVPN Inter-AS I-PMSI A-D route can be better called a "per-AS | |||
I-PMSI A-D route, to be compared against the (per-PE) Intra-AS I-PMSI | I-PMSI A-D route", to be compared against the (per-PE) Intra-AS | |||
A-D routes originated by each PE. In this document we will call it | I-PMSI A-D routes originated by each PE. In this document, we will | |||
as per-region I-PMSI A-D route, in case we want to apply the | call it a "per-region I-PMSI A-D route" in cases where we want to | |||
aggregation at regional level. The per-PE I-PMSI routes will not be | apply aggregation at the regional level. The per-PE I-PMSI routes | |||
propagated to other regions. If multiple RBRs are connected to a | will not be propagated to other regions. If multiple RBRs are | |||
region, then each will advertise such a route, with the same Region | connected to a region, then each will advertise such a route, with | |||
ID and Ethernet Tag ID (Section 3.1). Similar to the per-PE I-PMSI | the same Region ID and Ethernet Tag ID (Section 3.1). Similar to the | |||
A-D routes, RBRs/PEs in a downstream region will each select a best | per-PE I-PMSI A-D routes, RBRs/PEs in a downstream region will each | |||
one from all those re-advertised by the upstream RBRs, hence will | select the best route from all those re-advertised by the upstream | |||
only receive traffic injected by one of them. | RBRs and hence will only receive traffic injected by one of them. | |||
MVPN does not aggregate S-PMSI routes from all PEs in an AS like it | MVPNs do not aggregate S-PMSI routes from all PEs in an AS like they | |||
does for I-PMSIs routes, because the number of PEs that will | do for I-PMSI routes, because the number of PEs that will advertise | |||
advertise S-PMSI routes for the same (s,g) or (*,g) is small. This | S-PMSI routes for the same (S,G) or (*,G) is small. This is also the | |||
is also the case for EVPN, i.e., there is no per-region S-PMSI | case for EVPNs, i.e., there are no per-region S-PMSI routes. | |||
routes. | ||||
Notice that per-region I-PMSI routes can also be used to address | Notice that per-region I-PMSI routes can also be used to address | |||
backwards compatibility issue, as discussed in Section 5.3. | backward-compatibility issues, as discussed in Section 5.3. | |||
The Region ID in the per-region I-PMSI route's NLRI is encoded like | The Region ID in the per-region I-PMSI route's NLRI is encoded like | |||
an EC. For example, the Region ID can encode an AS number or area ID | an EC. For example, the Region ID can encode an AS number or area ID | |||
in the following EC format: | in the following EC format: | |||
o For a two-octet AS number, a Transitive Two-Octet AS-Specific EC | * For a two-octet AS number, a Transitive Two-Octet AS-specific EC | |||
of sub-type 0x09 (Source AS), with the Global Administrator sub- | of sub-type 0x09 (Source AS), with the Global Administrator sub- | |||
field set to the AS number and the Local Administrator sub-field | field set to the AS number and the Local Administrator sub-field | |||
set to 0. | set to 0. | |||
o For a four-octet AS number, a Transitive Four-Octet AS-Specific EC | * For a four-octet AS number, a Transitive Four-Octet AS-specific EC | |||
of sub-type 0x09 (Source AS), with the Global Administrator sub- | of sub-type 0x09 (Source AS), with the Global Administrator sub- | |||
field set to the AS number and the Local Administrator sub-field | field set to the AS number and the Local Administrator sub-field | |||
set to 0. | set to 0. | |||
o For an area ID, a Transitive IPv4-Address-Specific EC of any sub- | * For an area ID, a Transitive IPv4-Address-specific EC of any sub- | |||
type, with the Global Administrator sub-field set to the area ID | type, with the Global Administrator sub-field set to the area ID | |||
and the Local Administrator sub-field set to 0. | and the Local Administrator sub-field set to 0. | |||
Uses of other EC encoding MAY be allowed as long as it uniquely | The use of other EC encodings MAY be allowed as long as they uniquely | |||
identifies the region and the RBRs for the same region uses the same | identify the region and the RBRs for the same region use the same | |||
Region ID. | Region ID. | |||
6.3. Use of S-NH-EC | 6.3. Use of S-NH-EC | |||
[RFC7524] specifies the use of S-NH-EC because it does not allow ABRs | [RFC7524] specifies the use of the S-NH-EC because it does not allow | |||
to change the BGP next hop when they re-advertise I/S-PMSI A-D routes | ABRs to change the BGP next hop when they re-advertise I/S-PMSI A-D | |||
to downstream areas. That is only to be consistent with the MVPN | routes to downstream areas. That behavior is only to be consistent | |||
Inter-AS I-PMSI A-D routes, whose next hop must not be changed when | with the MVPN Inter-AS I-PMSI A-D routes, whose next hop must not be | |||
they're re-advertised by the segmenting ABRs for reasons specific to | changed when they're re-advertised by the segmenting ABRs for reasons | |||
MVPN. For EVPN, it is perfectly fine to change the next hop when | specific to MVPNs. For EVPNs, it is perfectly fine to change the | |||
RBRs re-advertise the I/S-PMSI A-D routes, instead of relying on S- | next hop when RBRs re-advertise the I/S-PMSI A-D routes, instead of | |||
NH-EC. As a result, this document specifies that RBRs change the BGP | relying on the S-NH-EC. As a result, this document specifies that | |||
next hop when they re-advertise I/S-PMSI A-D routes and do not use S- | RBRs change the BGP next hop when they re-advertise I/S-PMSI A-D | |||
NH-EC. The advantage of this is that neither ingress nor egress PEs | routes and do not use the S-NH-EC. This provides the advantage that | |||
need to understand/use S-NH-EC, and a consistent procedure (based on | neither ingress PEs nor egress PEs need to understand/use the S-NH- | |||
BGP next hop) is used for both inter-as and inter-region | EC, and a consistent procedure (based on BGP next hops) is used for | |||
segmentation. | both inter-AS and inter-region segmentation. | |||
If a downstream PE/RBR needs to originate Leaf A-D routes, it | If a downstream PE/RBR needs to originate Leaf A-D routes, it | |||
constructs an IP-based Route Target Extended Community by placing the | constructs an IP-based Route Target Extended Community by placing the | |||
IP address carried in the Next Hop of the received I/S-PMSI A-D route | IP address carried in the Next Hop of the received I/S-PMSI A-D route | |||
in the Global Administrator field of the Community, with the Local | in the Global Administrator field of the extended community, with the | |||
Administrator field of this Community set to 0 and setting the | Local Administrator field of this extended community set to 0, and | |||
Extended Communities attribute of the Leaf A-D route to that | also setting the Extended Communities attribute of the Leaf A-D route | |||
Community. | to that extended community. | |||
Similar to [RFC7524], the upstream RBR MUST (auto-)configure a RT | Similar to [RFC7524], the upstream RBR MUST (auto-)configure an RT | |||
with the Global Administrator field set to the Next Hop in the re- | with the Global Administrator field set to the Next Hop in the re- | |||
advertised I/S-PMSI A-D route and with the Local Administrator field | advertised I/S-PMSI A-D route and with the Local Administrator field | |||
set to 0. With this, the mechanisms specified in [RFC4684] for | set to 0. Using this technique, the mechanisms specified in | |||
constrained BGP route distribution can be used along with this | [RFC4684] for constrained BGP route distribution can be used along | |||
specification to ensure that only the needed PE/ABR will have to | with this specification to ensure that only the needed PE/ABR will | |||
process a said Leaf A-D route. | have to process a particular Leaf A-D route. | |||
6.4. Ingress PE's I-PMSI Leaf Tracking | 6.4. Ingress PE's I-PMSI Leaf Tracking | |||
[RFC7524] specifies that when an ingress PE/ASBR (re-)advertises an | [RFC7524] specifies that when an ingress PE/ASBR (re-)advertises a | |||
VPLS I-PMSI A-D route, it sets the L flag to 1 in the route's PTA. | VPLS I-PMSI A-D route, it sets the L flag to 1 in the route's PTA. | |||
Similar to the inter-as case, this is actually not really needed for | Similar to the inter-AS case, this is actually not really needed for | |||
EVPN. To be consistent with the inter-as case, the ingress PE does | EVPNs. To be consistent with the inter-AS case, the ingress PE does | |||
not set the L flag in its originated I-PMSI A-D routes, and | not set the L flag in its originated I-PMSI A-D routes, and it | |||
determines the leaves based on the BGP next hops in its received | determines the leaves based on the BGP next hops in its received | |||
I-PMSI A-D routes, as specified in Section 5.2. | I-PMSI A-D routes, as specified in Section 5.2. | |||
The same backward compatibility issue exists, and the same solution | The same backward-compatibility issue exists, and the same solution | |||
as in the inter-as case applies, as specified in Section 5.3. | as that for the inter-AS case applies, as specified in Section 5.3. | |||
7. Multi-homing Support | 7. Multihoming Support | |||
To support multi-homing with segmentation, ESI labels SHOULD be | To support multihoming with segmentation, Ethernet Segment Identifier | |||
allocated from "Domain-wide Common Block" (DCB) | (ESI) labels SHOULD be allocated from a "Domain-wide Common Block" | |||
[I-D.ietf-bess-mvpn-evpn-aggregation-label] for all tunnel types | (DCB) [RFC9573] for all tunnel types, including Ingress Replication | |||
including Ingress Replication. Via means outside the scope of this | tunnels [RFC7988]. Via means outside the scope of this document, PEs | |||
document, PEs know that ESI labels are from DCB and then existing | know that ESI labels are from a DCB, and existing multihoming | |||
multi-homing procedures work as is (whether a multi-homed Ethernet | procedures will then work "as is" (whether a multihomed Ethernet | |||
Segment spans across segmentation regions or not). | Segment spans segmentation regions or not). | |||
Not using DCB-allocated ESI labels is outside the scope of this | Not using DCB-allocated ESI labels is outside the scope of this | |||
document. | document. | |||
8. IANA Considerations | 8. IANA Considerations | |||
IANA has temporarily assigned the following new EVPN route types in | IANA has assigned the following new EVPN route types in the "EVPN | |||
the EVPN Route Types registry: | Route Types" registry: | |||
o 9 - Per-Region I-PMSI A-D route | +=======+=============================+===========+ | |||
| Value | Description | Reference | | ||||
+=======+=============================+===========+ | ||||
| 9 | Per-Region I-PMSI A-D route | RFC 9572 | | ||||
+-------+-----------------------------+-----------+ | ||||
| 10 | S-PMSI A-D route | RFC 9572 | | ||||
+-------+-----------------------------+-----------+ | ||||
| 11 | Leaf A-D route | RFC 9572 | | ||||
+-------+-----------------------------+-----------+ | ||||
o 10 - S-PMSI A-D route | Table 3: New Route Types | |||
o 11 - Leaf A-D route | IANA has assigned one flag bit from the "Multicast Flags Extended | |||
Community" registry created by [RFC9251]: | ||||
This document requests IANA to assign one flag bit from the EVPN | +=====+======================+===========+===================+ | |||
Multicast Flags Extended Community Flags registry to be created in | | Bit | Name | Reference | Change Controller | | |||
[draft-ietf-bess-evpn-igmp-mld-proxy]: | +=====+======================+===========+===================+ | |||
| 8 | Segmentation Support | RFC 9572 | IETF | | ||||
+-----+----------------------+-----------+-------------------+ | ||||
o Bit-S - Segmentation Procedure Support | Table 4: New Multicast Flag | |||
9. Security Considerations | 9. Security Considerations | |||
The Selective Forwarding procedures via S-PMSI/Leaf A-D routes in | The procedures specified in this document for selective forwarding | |||
this document are based on the same procedures for MVPN [RFC6513] | via S-PMSI/Leaf A-D routes are based on the same procedures as those | |||
[RFC6514] and VPLS Multicast [RFC7117]. The tunnel segmentation | used for MVPNs [RFC6513] [RFC6514] and VPLS multicast [RFC7117]. The | |||
procedures in this document are based on the similar procedures for | procedures for tunnel segmentation as specified in this document are | |||
MVPN inter-AS [RFC6514] and inter-area [RFC7524] tunnel segmentation, | based on similar procedures used for MVPN inter-AS tunnel | |||
and procedures for VPLS Multicast [RFC7117] inter-as tunnel | segmentation [RFC6514] and inter-area tunnel segmentation [RFC7524], | |||
segmentation. When applied to EVPN, they do not introduce new | as well as procedures for VPLS multicast inter-AS tunnel segmentation | |||
security concerns besides what have been discussed in [RFC6513], | [RFC7117]. When applied to EVPNs, they do not introduce new security | |||
[RFC6514], [RFC7117], and [RFC7524]. They also do not introduce new | concerns beyond those discussed in [RFC6513], [RFC6514], [RFC7117], | |||
security concerns compared to [RFC7432]. | and [RFC7524]. They also do not introduce new security concerns | |||
compared to [RFC7432]. | ||||
10. Acknowledgements | ||||
The authors thank Eric Rosen, John Drake, and Ron Bonica for their | ||||
comments and suggestions. | ||||
11. Contributors | ||||
The following also contributed to this document through their earlier | ||||
work in EVPN selective multicast. | ||||
Junlin Zhang | ||||
Huawei Technologies | ||||
Huawei Bld., No.156 Beiqing Rd. | ||||
Beijing 100095 | ||||
China | ||||
Email: jackey.zhang@huawei.com | ||||
Zhenbin Li | ||||
Huawei Technologies | ||||
Huawei Bld., No.156 Beiqing Rd. | ||||
Beijing 100095 | ||||
China | ||||
Email: lizhenbin@huawei.com | ||||
12. References | ||||
12.1. Normative References | ||||
[I-D.ietf-bess-evpn-igmp-mld-proxy] | 10. References | |||
Sajassi, A., Thoria, S., Mishra, M., Drake, J., and W. | ||||
Lin, "IGMP and MLD Proxy for EVPN", draft-ietf-bess-evpn- | ||||
igmp-mld-proxy-14 (work in progress), October 2021. | ||||
[I-D.ietf-bess-mvpn-evpn-aggregation-label] | 10.1. Normative References | |||
Zhang, Z., Rosen, E., Lin, W., Li, Z., and I. Wijnands, | ||||
"MVPN/EVPN Tunnel Aggregation with Common Labels", draft- | ||||
ietf-bess-mvpn-evpn-aggregation-label-06 (work in | ||||
progress), April 2021. | ||||
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, | |||
DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
<https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
[RFC6513] Rosen, E., Ed. and R. Aggarwal, Ed., "Multicast in MPLS/ | [RFC6513] Rosen, E., Ed. and R. Aggarwal, Ed., "Multicast in MPLS/ | |||
BGP IP VPNs", RFC 6513, DOI 10.17487/RFC6513, February | BGP IP VPNs", RFC 6513, DOI 10.17487/RFC6513, February | |||
2012, <https://www.rfc-editor.org/info/rfc6513>. | 2012, <https://www.rfc-editor.org/info/rfc6513>. | |||
skipping to change at page 19, line 36 ¶ | skipping to change at line 889 ¶ | |||
"Explicit Tracking with Wildcard Routes in Multicast VPN", | "Explicit Tracking with Wildcard Routes in Multicast VPN", | |||
RFC 8534, DOI 10.17487/RFC8534, February 2019, | RFC 8534, DOI 10.17487/RFC8534, February 2019, | |||
<https://www.rfc-editor.org/info/rfc8534>. | <https://www.rfc-editor.org/info/rfc8534>. | |||
[RFC8584] Rabadan, J., Ed., Mohanty, S., Ed., Sajassi, A., Drake, | [RFC8584] Rabadan, J., Ed., Mohanty, S., Ed., Sajassi, A., Drake, | |||
J., Nagaraj, K., and S. Sathappan, "Framework for Ethernet | J., Nagaraj, K., and S. Sathappan, "Framework for Ethernet | |||
VPN Designated Forwarder Election Extensibility", | VPN Designated Forwarder Election Extensibility", | |||
RFC 8584, DOI 10.17487/RFC8584, April 2019, | RFC 8584, DOI 10.17487/RFC8584, April 2019, | |||
<https://www.rfc-editor.org/info/rfc8584>. | <https://www.rfc-editor.org/info/rfc8584>. | |||
12.2. Informative References | [RFC9251] Sajassi, A., Thoria, S., Mishra, M., Patel, K., Drake, J., | |||
and W. Lin, "Internet Group Management Protocol (IGMP) and | ||||
Multicast Listener Discovery (MLD) Proxies for Ethernet | ||||
VPN (EVPN)", RFC 9251, DOI 10.17487/RFC9251, June 2022, | ||||
<https://www.rfc-editor.org/info/rfc9251>. | ||||
[I-D.ietf-bess-evpn-prefix-advertisement] | [RFC9573] Zhang, Z., Rosen, E., Lin, W., Li, Z., and IJ. Wijnands, | |||
Rabadan, J., Henderickx, W., Drake, J. E., Lin, W., and A. | "MVPN/EVPN Tunnel Aggregation with Common Labels", | |||
Sajassi, "IP Prefix Advertisement in Ethernet VPN (EVPN)", | RFC 9573, DOI 10.17487/RFC9573, May 2024, | |||
draft-ietf-bess-evpn-prefix-advertisement-11 (work in | <https://www.rfc-editor.org/info/rfc9573>. | |||
progress), May 2018. | ||||
10.2. Informative References | ||||
[RFC4684] Marques, P., Bonica, R., Fang, L., Martini, L., Raszuk, | [RFC4684] Marques, P., Bonica, R., Fang, L., Martini, L., Raszuk, | |||
R., Patel, K., and J. Guichard, "Constrained Route | R., Patel, K., and J. Guichard, "Constrained Route | |||
Distribution for Border Gateway Protocol/MultiProtocol | Distribution for Border Gateway Protocol/MultiProtocol | |||
Label Switching (BGP/MPLS) Internet Protocol (IP) Virtual | Label Switching (BGP/MPLS) Internet Protocol (IP) Virtual | |||
Private Networks (VPNs)", RFC 4684, DOI 10.17487/RFC4684, | Private Networks (VPNs)", RFC 4684, DOI 10.17487/RFC4684, | |||
November 2006, <https://www.rfc-editor.org/info/rfc4684>. | November 2006, <https://www.rfc-editor.org/info/rfc4684>. | |||
[RFC4875] Aggarwal, R., Ed., Papadimitriou, D., Ed., and S. | [RFC4875] Aggarwal, R., Ed., Papadimitriou, D., Ed., and S. | |||
Yasukawa, Ed., "Extensions to Resource Reservation | Yasukawa, Ed., "Extensions to Resource Reservation | |||
skipping to change at page 20, line 29 ¶ | skipping to change at line 933 ¶ | |||
Replication Tunnels in Multicast VPN", RFC 7988, | Replication Tunnels in Multicast VPN", RFC 7988, | |||
DOI 10.17487/RFC7988, October 2016, | DOI 10.17487/RFC7988, October 2016, | |||
<https://www.rfc-editor.org/info/rfc7988>. | <https://www.rfc-editor.org/info/rfc7988>. | |||
[RFC8279] Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A., | [RFC8279] Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A., | |||
Przygienda, T., and S. Aldrin, "Multicast Using Bit Index | Przygienda, T., and S. Aldrin, "Multicast Using Bit Index | |||
Explicit Replication (BIER)", RFC 8279, | Explicit Replication (BIER)", RFC 8279, | |||
DOI 10.17487/RFC8279, November 2017, | DOI 10.17487/RFC8279, November 2017, | |||
<https://www.rfc-editor.org/info/rfc8279>. | <https://www.rfc-editor.org/info/rfc8279>. | |||
[RFC9136] Rabadan, J., Ed., Henderickx, W., Drake, J., Lin, W., and | ||||
A. Sajassi, "IP Prefix Advertisement in Ethernet VPN | ||||
(EVPN)", RFC 9136, DOI 10.17487/RFC9136, October 2021, | ||||
<https://www.rfc-editor.org/info/rfc9136>. | ||||
Acknowledgements | ||||
The authors thank Eric Rosen, John Drake, and Ron Bonica for their | ||||
comments and suggestions. | ||||
Contributors | ||||
The following people also contributed to this document through their | ||||
earlier work in EVPN selective multicast. | ||||
Junlin Zhang | ||||
Huawei Technologies | ||||
Huawei Bld., No. 156 Beiqing Rd. | ||||
Beijing | ||||
100095 | ||||
China | ||||
Email: jackey.zhang@huawei.com | ||||
Zhenbin Li | ||||
Huawei Technologies | ||||
Huawei Bld., No. 156 Beiqing Rd. | ||||
Beijing | ||||
100095 | ||||
China | ||||
Email: lizhenbin@huawei.com | ||||
Authors' Addresses | Authors' Addresses | |||
Zhaohui Zhang | Zhaohui Zhang | |||
Juniper Networks | Juniper Networks | |||
Email: zzhang@juniper.net | ||||
EMail: zzhang@juniper.net | ||||
Wen Lin | Wen Lin | |||
Juniper Networks | Juniper Networks | |||
Email: wlin@juniper.net | ||||
EMail: wlin@juniper.net | ||||
Jorge Rabadan | Jorge Rabadan | |||
Nokia | Nokia | |||
Email: jorge.rabadan@nokia.com | ||||
EMail: jorge.rabadan@nokia.com | ||||
Keyur Patel | Keyur Patel | |||
Arrcus | Arrcus | |||
Email: keyur@arrcus.com | ||||
EMail: keyur@arrcus.com | ||||
Ali Sajassi | Ali Sajassi | |||
Cisco Systems | Cisco Systems | |||
Email: sajassi@cisco.com | ||||
EMail: sajassi@cisco.com | ||||
End of changes. 139 change blocks. | ||||
506 lines changed or deleted | 552 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. |