RFC 9624: EVPN Broadcast, Unknown Unicast, or Multicast (BUM) Using Bit Index Explicit Replication (BIER)
- Z. Zhang,
- T. Przygienda,
- A. Sajassi,
- J. Rabadan
Abstract
This document specifies protocols and procedures for forwarding Broadcast, Unknown Unicast, or Multicast (BUM) traffic of Ethernet VPNs (EVPNs) using Bit Index Explicit Replication (BIER).¶
Status of This Memo
This is an Internet Standards Track document.¶
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 7841.¶
Information about the current status of this document, any
errata, and how to provide feedback on it may be obtained at
https://
Copyright Notice
Copyright (c) 2024 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(https://
1. Introduction
[RFC7432] and [RFC8365] specify
the protocols and procedures for Ethernet VPNs (EVPNs). For Broadcast,
Unknown Unicast, or Multicast (BUM) traffic, provider
BIER is an architecture that provides optimal multicast forwarding through a "multicast domain" without requiring intermediate routers to maintain any per-flow state or to engage in an explicit tree-building protocol.¶
The EVPN BUM procedures specified in [RFC7432] and extended in [RFC9572], [RFC9251], and [CMCAST
1.1. Terminology
- ES:
- Ethernet Segment¶
- ESI:
- Ethernet Segment Identifier¶
- BFR:
- Bit-Forwarding Router¶
- BFIR:
- Bit-Forwarding Ingress Router¶
- BFER:
- Bit-Forwarding Egress Router¶
- BFR-Prefix:
- An IP address that uniquely identifies a BFR and is routable in a BIER domain.¶
- C-S:
- A multicast source address identifying a multicast source located at an EVPN customer site. "C-" stands for "Customer-".¶
- C-G:
- A multicast group address used by an EVPN customer.¶
- C-flow:
- A customer multicast flow. Each C-flow is identified by the ordered pair (source address, group address), where each address is in the customer's address space. The identifier of a particular C-flow is usually written as (C-S, C-G). Sets of C-flows can be denoted by the use of the "C-*" wildcard (see [RFC6625]), e.g., (C-*, C-G).¶
- P-tunnel:
- A multicast tunnel through the network of one or more service providers used to transport C-flows. "P-" stands for "Provider-".¶
- IMET A-D Route:
- Inclusive Multicast Ethernet Tag Auto-Discovery route. Carried in BGP Update messages, these routes are used to advertise the "default" P-tunnel for a particular BD.¶
- SMET A-D Route:
- Selective Multicast Ethernet Tag Auto-Discovery route. Carried in BGP Update messages, these routes are used to advertise the C-flows that the advertising Provider Edge (PE) is interested in.¶
- PMSI:
- Provider Multicast Service Interface [RFC6513]. A conceptual interface used by a PE to send customer multicast traffic to all or some PEs in the same VPN.¶
- I-PMSI:
- Inclusive PMSI. For all PEs in the same VPN.¶
- S-PMSI:
- Selective PMSI. For some of the PEs in the same VPN.¶
- I-PMSI A-D Route:
- Inclusive PMSI Auto-Discovery route used to advertise the tunnels that instantiate an I-PMSI.¶
- S-PMSI A-D Route:
- Selective PMSI Auto-Discovery route used to advertise that particular C-flows are bound to (i.e., are traveling through) particular P-tunnels.¶
- PTA:
- PMSI Tunnel Attribute. A BGP attribute used to identify a particular P-tunnel.¶
- VXLAN:
- Virtual eXtensible Local Area Network [RFC7348]¶
- NVGRE:
- Network Virtualization Using Generic Routing Encapsulation [RFC7637]¶
- GENEVE:
- Generic Network Virtualization Encapsulation [RFC8926]¶
- VNI:
- VXLAN Network Identifier¶
- VSID:
- Virtual Subnet Identifier¶
- RSVP-TE P2MP:
- Resource Reservation Protocol for Point
-to -Multipoint TE Label Switched Paths (LSPs) [RFC4875]¶ - mLDP P2MP:
- Multipoint Label Distribution Protocol extensions
for Point
-to -Multipoint LSPs [RFC6388]¶
1.2. 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.¶
2. Use of the PMSI Tunnel Attribute
[RFC7432] specifies that Inclusive Multicast Ethernet Tag (IMET) routes carry a PMSI Tunnel Attribute (PTA) to identify the particular P-tunnel to which one or more BUM flows are being assigned, which is the same as specified in [RFC6514] for MVPN. [RFC8556] specifies the encoding of the PTA for the use of BIER with MVPN. Much of that specification is reused for the use of BIER with EVPN, and much of the text below is borrowed verbatim from [RFC8556].¶
The PTA contains the following fields:¶
Note that if a PTA specifying "BIER" is attached to an IMET, S-PMSI A-D, or per-region I-PMSI A-D route, the route MUST NOT be distributed beyond the boundaries of a BIER domain. That is, any routers that receive the route must be in the same BIER domain as the originator of the route. If the originator is in more than one BIER domain, the route must be distributed only within the BIER domain in which the BFR-Prefix in the PTA uniquely identifies the originator. As with all MVPN routes, the distribution of these routes is controlled by the provisioning of Route Targets.¶
2.1. IP-Based Tunnel and BIER PHP
When VXLAN
2.2. Explicit Tracking
When using BIER to transport an EVPN BUM data packet through a BIER domain, an ingress PE functions as a BFIR (see [RFC8279]). The BFIR must determine the set of BFERs to which the packet needs to be delivered. This can be done in either of two ways as described in the following two sections.¶
2.2.1. Using IMET/SMET Routes
Both IMET and SMET routes provide explicit tracking functionality.¶
For an inclusive PMSI, the set of BFERs (egress PEs) includes the originators of all IMET routes for a BD. For a selective PMSI, the set of BFERs (egress PEs) includes the originators of corresponding SMET routes.¶
The SMET routes do not carry a PTA. When an ingress
PE sends traffic on a selective tunnel using BIER, it uses the upstream
When only selective forwarding is used for all flows and without tunnel segmentation, SMET routes are used without the need for S-PMSI A-D routes. Otherwise, the procedures in the following section apply.¶
2.2.2. Using S-PMSI/Leaf A-D Routes
There are two cases where S-PMSI/Leaf A-D routes are used as discussed in the following two sections.¶
2.2.2.1. Selective Forwarding Only for Some Flows
With the SMET procedure, a PE advertises a SMET route for each (C-S, C-G) or (C-*, C-G) state that it learns on its Attachment Circuits (ACs), and each SMET route is tracked by every PE in the same BD. It may be desired that SMET routes are not used in order to reduce the burden of explicit tracking.¶
In this case, most multicast traffic will follow the I-PMSI (advertised via the IMET route) and only some flows will follow S-PMSIs. To achieve that, S-PMSI/Leaf A-D routes can be used, as specified in [RFC9572].¶
The rules specified in Sections 2.2.1 and 2.2.2 of [RFC8556] apply.¶
2.2.2.2. Tunnel Segmentation
Another case where S-PMSI/Leaf A-D routes are necessary is tunnel
segmentation, which is also specified in [RFC9572] and further
clarified in
[CMCAST
The rules specified in Section 2.2.1 of [RFC8556] apply. Section 2.2.2 of [RFC8556] does not apply, because like in MVPN, the LIR-pF flag cannot be used with segmentation.¶
2.2.2.3. Applicability of Additional MVPN Specifications
As with the MVPN case, "Use of the PMSI Tunnel Attribute in Leaf A-D Routes" (Section 3 of [RFC8556]) applies.¶
Notice that [RFC8556] refers to procedures specified in [RFC6625] and [RFC8534]. Those two documents were specified for MVPN but apply to IP multicast payload in EVPN as well.¶
2.3. MPLS Label in the PTA
Rules in Section 2.1 of [RFC8556] apply, EXCEPT the following three bullets (they do NOT apply to EVPN) in that section:¶
3. Multihoming Split Horizon
For EVPN-MPLS, [RFC7432] specifies the use of ESI labels to identify
the ES from which a BUM packet originates. A PE receiving that packet
from the core side will not forward it to the same ES. The procedure
works for both Ingress Replication (IR) and RSVP-TE/mLDP P2MP tunnels,
using downstream- and upstream
With BIER, the local bias procedure still applies for EVPN
4. Data Plane
Like MVPN, the EVPN application plays the role of the "multicast flow overlay" as described in [RFC8279].¶
4.1. Encapsulation and Transmission
A BFIR could be either an ingress PE or a P-tunnel segmentation point. The procedures are slightly different as described below.¶
4.1.1. At a BFIR That Is an Ingress PE
To transmit a BUM data packet, an ingress PE first determines the route matched for transmission and routes for tracking leaves according to the following rules.¶
If no route is matched for transmission, the packet is not forwarded onto a P-tunnel. If the tunnel that the ingress determines to use based on the route matched for transmission (and considering interworking with PEs that do not support certain tunnel types per procedures in [RFC9251]) requires leaf tracking (e.g., Ingress Replication, RSVP-TE P2MP tunnel, or BIER) but there are no leaf-tracking routes, the packet will not be forwarded onto a P-tunnel either.¶
The following text assumes that BIER is the determined tunnel type.
The ingress PE pushes an upstream
The MPLS label from the PTA of the route matched
for transmission is then pushed onto the packet's label stack for
EVPN-MPLS. For EVPN
Then, the packet is encapsulated in a BIER
header and forwarded according to the procedures of
[RFC8279] and [RFC8296].
Specifically, see "Imposing and Processing
the BIER Encapsulation" (Section 3 of [RFC8296]).
The Proto field in the BIER header is set to 2 in the case of EVPN-MPLS,
7/8/9 in the case of EVPN
To create the proper BIER header for a given packet, the BFIR must know all the BFERs that need to receive that packet. This is determined from the set of leaf-tracking routes.¶
4.1.2. At a BFIR That Is a P-Tunnel Segmentation Point
In this case, the encapsulation for the upstream segment of the P-tunnel includes (among other things) a label that identifies the x-PMSI or IMET A-D route that is the match for reception on the upstream segment. The segmentation point re-advertised the route into one or more downstream regions. Each instance of the re-advertised route for a downstream region has a PTA that specifies the tunnel for that region. For any particular downstream region, the route matched for transmission is the re-advertised route, and the leaf-tracking routes are determined as follows, if needed, for the tunnel type:¶
If the downstream region uses BIER, the packet is forwarded as follows:
the upstream segmentation's encapsulation is removed and the
above-mentioned label is swapped to the
upstream
4.2. Disposition
The same procedures in Section 4.2 of [RFC8556] are followed for EVPN-MPLS, except for some EVPN specifics that are discussed in the following two subsections of this document.¶
For EVPN
4.2.1. At a BFER That Is an Egress PE
Once the corresponding BD is determined from
the upstream
4.2.2. At a BFER That Is a P-Tunnel Segmentation Point
This is only applicable to EVPN-MPLS. The same procedures in Section 4.2.2 of [RFC8556] are followed, subject to multihoming procedures specified in [RFC9572].¶
5. IANA Considerations
Per this document, IANA has registered the following three values in the "BIER Next Protocol Identifiers" registry:¶
IANA has also assigned an IPv4 and an IPv6 multicast address for the case discussed in Section 2.1.¶
The following entry has been added to the "Local Network Control Block (224.0.0.0 - 224.0.0.255 (224.0.0/24))" registry for IPv4:¶
- Address(es):
- 224.0.0.122¶
- Description:
- Network Virtualization Overlay (NVO) BUM Traffic¶
- Reference:
- RFC 9624¶
The following entry has been added to the "Link-Local Scope Multicast Addresses" registry for IPv6:¶
6. Security Considerations
This document is about using BIER as provider tunnels for EVPN. It is very similar to using BIER as MVPN provider tunnels and does not introduce additional security implications beyond what have been discussed in the EVPN base protocol specification [RFC7432] and MVPN using BIER [RFC8556].¶
7. References
7.1. Normative References
- [RFC2119]
-
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10
.17487 , , <https:///RFC2119 www >..rfc -editor .org /info /rfc2119 - [RFC6513]
-
Rosen, E., Ed. and R. Aggarwal, Ed., "Multicast in MPLS/BGP IP VPNs", RFC 6513, DOI 10
.17487 , , <https:///RFC6513 www >..rfc -editor .org /info /rfc6513 - [RFC6514]
-
Aggarwal, R., Rosen, E., Morin, T., and Y. Rekhter, "BGP Encodings and Procedures for Multicast in MPLS/BGP IP VPNs", RFC 6514, DOI 10
.17487 , , <https:///RFC6514 www >..rfc -editor .org /info /rfc6514 - [RFC6625]
-
Rosen, E., Ed., Rekhter, Y., Ed., Hendrickx, W., and R. Qiu, "Wildcards in Multicast VPN Auto-Discovery Routes", RFC 6625, DOI 10
.17487 , , <https:///RFC6625 www >..rfc -editor .org /info /rfc6625 - [RFC7432]
-
Sajassi, A., Ed., Aggarwal, R., Bitar, N., Isaac, A., Uttaro, J., Drake, J., and W. Henderickx, "BGP MPLS-Based Ethernet VPN", RFC 7432, DOI 10
.17487 , , <https:///RFC7432 www >..rfc -editor .org /info /rfc7432 - [RFC7900]
-
Rekhter, Y., Ed., Rosen, E., Ed., Aggarwal, R., Cai, Y., and T. Morin, "Extranet Multicast in BGP/IP MPLS VPNs", RFC 7900, DOI 10
.17487 , , <https:///RFC7900 www >..rfc -editor .org /info /rfc7900 - [RFC8174]
-
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10
.17487 , , <https:///RFC8174 www >..rfc -editor .org /info /rfc8174 - [RFC8279]
-
Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A., Przygienda, T., and S. Aldrin, "Multicast Using Bit Index Explicit Replication (BIER)", RFC 8279, DOI 10
.17487 , , <https:///RFC8279 www >..rfc -editor .org /info /rfc8279 - [RFC8296]
-
Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A., Tantsura, J., Aldrin, S., and I. Meilik, "Encapsulation for Bit Index Explicit Replication (BIER) in MPLS and Non-MPLS Networks", RFC 8296, DOI 10
.17487 , , <https:///RFC8296 www >..rfc -editor .org /info /rfc8296 - [RFC8365]
-
Sajassi, A., Ed., Drake, J., Ed., Bitar, N., Shekhar, R., Uttaro, J., and W. Henderickx, "A Network Virtualization Overlay Solution Using Ethernet VPN (EVPN)", RFC 8365, DOI 10
.17487 , , <https:///RFC8365 www >..rfc -editor .org /info /rfc8365 - [RFC8534]
-
Dolganow, A., Kotalwar, J., Rosen, E., Ed., and Z. Zhang, "Explicit Tracking with Wildcard Routes in Multicast VPN", RFC 8534, DOI 10
.17487 , , <https:///RFC8534 www >..rfc -editor .org /info /rfc8534 - [RFC8556]
-
Rosen, E., Ed., Sivakumar, M., Przygienda, T., Aldrin, S., and A. Dolganow, "Multicast VPN Using Bit Index Explicit Replication (BIER)", RFC 8556, DOI 10
.17487 , , <https:///RFC8556 www >..rfc -editor .org /info /rfc8556 - [RFC8926]
-
Gross, J., Ed., Ganga, I., Ed., and T. Sridhar, Ed., "Geneve: Generic Network Virtualization Encapsulation", RFC 8926, DOI 10
.17487 , , <https:///RFC8926 www >..rfc -editor .org /info /rfc8926 - [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 , , <https:///RFC9251 www >..rfc -editor .org /info /rfc9251 - [RFC9572]
-
Zhang, Z., Lin, W., Rabadan, J., Patel, K., and A. Sajassi, "Updates to EVPN Broadcast, Unknown Unicast, or Multicast (BUM) Procedures", RFC 9572, DOI 10
.17487 , , <https:///RFC9572 www >..rfc -editor .org /info /rfc9572
7.2. Informative References
- [BIER-PHP]
-
Zhang, Z., "BIER Penultimate Hop Popping", Work in Progress, Internet-Draft, draft
-ietf , , <https://-bier -php -11 datatracker >..ietf .org /doc /html /draft -ietf -bier -php -11 - [CMCAST
-ENHANCEMENTS] -
Zhang, Z., Kebler, R., Lin, W., and E. Rosen, "MVPN/EVPN C-Multicast Routes Enhancements", Work in Progress, Internet-Draft, draft
-zzhang , , <https://-bess -mvpn -evpn -cmcast -enhancements -04 datatracker >..ietf .org /doc /html /draft -zzhang -bess -mvpn -evpn -cmcast -enhancements -04 - [RFC4875]
-
Aggarwal, R., Ed., Papadimitriou, D., Ed., and S. Yasukawa, Ed., "Extensions to Resource Reservation Protocol - Traffic Engineering (RSVP-TE) for Point
-to , RFC 4875, DOI 10-Multipoint TE Label Switched Paths (LSPs)" .17487 , , <https:///RFC4875 www >..rfc -editor .org /info /rfc4875 - [RFC6388]
-
Wijnands, IJ., Ed., Minei, I., Ed., Kompella, K., and B. Thomas, "Label Distribution Protocol Extensions for Point
-to , RFC 6388, DOI 10-Multipoint and Multipoint -to -Multipoint Label Switched Paths" .17487 , , <https:///RFC6388 www >..rfc -editor .org /info /rfc6388 - [RFC7348]
-
Mahalingam, M., Dutt, D., Duda, K., Agarwal, P., Kreeger, L., Sridhar, T., Bursell, M., and C. Wright, "Virtual eXtensible Local Area Network (VXLAN): A Framework for Overlaying Virtualized Layer 2 Networks over Layer 3 Networks", RFC 7348, DOI 10
.17487 , , <https:///RFC7348 www >..rfc -editor .org /info /rfc7348 - [RFC7637]
-
Garg, P., Ed. and Y. Wang, Ed., "NVGRE: Network Virtualization Using Generic Routing Encapsulation", RFC 7637, DOI 10
.17487 , , <https:///RFC7637 www >..rfc -editor .org /info /rfc7637
Acknowledgements
The authors thank Eric Rosen for his review and suggestions. Additionally, much of the text is borrowed verbatim from [RFC8556].¶