rfc9624v2.txt | rfc9624.txt | |||
---|---|---|---|---|
Internet Engineering Task Force (IETF) Z. Zhang | Internet Engineering Task Force (IETF) Z. Zhang | |||
Request for Comments: 9624 T. Przygienda | Request for Comments: 9624 T. Przygienda | |||
Category: Standards Track Juniper Networks | Category: Standards Track Juniper Networks | |||
ISSN: 2070-1721 A. Sajassi | ISSN: 2070-1721 A. Sajassi | |||
Cisco Systems | Cisco Systems | |||
J. Rabadan | J. Rabadan | |||
Nokia | Nokia | |||
July 2024 | August 2024 | |||
EVPN Broadcast, Unknown Unicast, or Multicast (BUM) Using Bit Index | EVPN Broadcast, Unknown Unicast, or Multicast (BUM) Using Bit Index | |||
Explicit Replication (BIER) | Explicit Replication (BIER) | |||
Abstract | Abstract | |||
This document specifies protocols and procedures for forwarding | This document specifies protocols and procedures for forwarding | |||
Broadcast, Unknown Unicast, or Multicast (BUM) traffic of Ethernet | Broadcast, Unknown Unicast, or Multicast (BUM) traffic of Ethernet | |||
VPNs (EVPNs) using Bit Index Explicit Replication (BIER). | VPNs (EVPNs) using Bit Index Explicit Replication (BIER). | |||
skipping to change at line 212 ¶ | skipping to change at line 212 ¶ | |||
domain-id (see [RFC8279]). This indicates that packets sent | domain-id (see [RFC8279]). This indicates that packets sent | |||
on the PMSI will be sent on the specified BIER sub-domain. | on the PMSI will be sent on the specified BIER sub-domain. | |||
How that sub-domain is chosen is outside the scope of this | How that sub-domain is chosen is outside the scope of this | |||
document. | document. | |||
2. The second subfield is a two-octet field containing the BFR-id | 2. The second subfield is a two-octet field containing the BFR-id | |||
in the sub-domain identified in the first subfield of the | in the sub-domain identified in the first subfield of the | |||
router that is constructing the PTA. | router that is constructing the PTA. | |||
3. The third subfield is the BFR-Prefix (see [RFC8279]) of the | 3. The third subfield is the BFR-Prefix (see [RFC8279]) of the | |||
router (a BFIR) that is constructing the PTA. THE BRF-Prefix | router (a BFIR) that is constructing the PTA. The BFR-Prefix | |||
will either be a /32 IPv4 address or a /128 IPv6 address. | will either be a /32 IPv4 address or a /128 IPv6 address. | |||
Whether the address is IPv4 or IPv6 can be inferred from the | Whether the address is IPv4 or IPv6 can be inferred from the | |||
total length of the PTA. | total length of the PTA. | |||
The BFR-Prefix need not be the same IP address that is carried | The BFR-Prefix need not be the same IP address that is carried | |||
in any other field of the x-PMSI A-D route, even if the BFIR | in any other field of the x-PMSI A-D route, even if the BFIR | |||
is the originating router of the x-PMSI A-D route. | is the originating router of the x-PMSI A-D route. | |||
* MPLS Label. For EVPN-MPLS [RFC7432], this field contains an | * MPLS Label. For EVPN-MPLS [RFC7432], this field contains an | |||
upstream-assigned MPLS label. It is assigned by the BFIR. | upstream-assigned MPLS label. It is assigned by the BFIR. | |||
skipping to change at line 256 ¶ | skipping to change at line 256 ¶ | |||
2.1. IP-Based Tunnel and BIER PHP | 2.1. IP-Based Tunnel and BIER PHP | |||
When VXLAN/NVGRE/GENEVE is used for EVPN, by default, the outer IP | When VXLAN/NVGRE/GENEVE is used for EVPN, by default, the outer IP | |||
header (and UDP header in the case of VXLAN/GENEVE) is not included | header (and UDP header in the case of VXLAN/GENEVE) is not included | |||
in the BIER payload, except when it is known a priori that BIER | in the BIER payload, except when it is known a priori that BIER | |||
Penultimate Hop Popping (PHP) [BIER-PHP] is used in the BIER domain | Penultimate Hop Popping (PHP) [BIER-PHP] is used in the BIER domain | |||
and the encapsulation (after the BIER header is popped) between the | and the encapsulation (after the BIER header is popped) between the | |||
BIER Penultimate Hop and the egress PE does not have a way to | BIER Penultimate Hop and the egress PE does not have a way to | |||
indicate the next header is VXLAN/NVGRE/GENEVE. In that case, the | indicate the next header is VXLAN/NVGRE/GENEVE. In that case, the | |||
full VXLAN/NVGRE/GENEVE encapsulation MUST be used. In the outer IP | full VXLAN/NVGRE/GENEVE encapsulation MUST be used. In the outer IP | |||
header, a well-known IP multicast address (to be assigned by IANA) is | header, a well-known IP multicast address (224.0.0.122 in the case of | |||
used as the destination address, and the egress PEs MUST be set up to | IPv4 or FF02:0:0:0:0:0:0:14 in the case of IPv6) is used as the | |||
receive and process packets addressed to the destination address. | destination address, and the egress PEs MUST be set up to receive and | |||
The address is used for all BDs, and the inner VXLAN/NVGRE/GENEVE | process packets addressed to the destination address. The address is | |||
header will be used to identify BDs. | used for all BDs, and the inner VXLAN/NVGRE/GENEVE header will be | |||
used to identify BDs. | ||||
2.2. Explicit Tracking | 2.2. Explicit Tracking | |||
When using BIER to transport an EVPN BUM data packet through a BIER | 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 | 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 | 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 | delivered. This can be done in either of two ways as described in | |||
the following two sections. | the following two sections. | |||
2.2.1. Using IMET/SMET Routes | 2.2.1. Using IMET/SMET Routes | |||
skipping to change at line 463 ¶ | skipping to change at line 464 ¶ | |||
then pushed onto the packet's label stack for EVPN-MPLS. For EVPN- | then pushed onto the packet's label stack for EVPN-MPLS. For EVPN- | |||
VXLAN/NVGRE/GENEVE, a VXLAN/NVGRE/GENEVE header is prepended to the | VXLAN/NVGRE/GENEVE, a VXLAN/NVGRE/GENEVE header is prepended to the | |||
packet with the VNI/VSID set to the value in the PTA's Label field, | packet with the VNI/VSID set to the value in the PTA's Label field, | |||
and then an IP/UDP header is prepended if needed (e.g., for PHP | and then an IP/UDP header is prepended if needed (e.g., for PHP | |||
purposes). | purposes). | |||
Then, the packet is encapsulated in a BIER header and forwarded | Then, the packet is encapsulated in a BIER header and forwarded | |||
according to the procedures of [RFC8279] and [RFC8296]. | according to the procedures of [RFC8279] and [RFC8296]. | |||
Specifically, see "Imposing and Processing the BIER Encapsulation" | Specifically, see "Imposing and Processing the BIER Encapsulation" | |||
(Section 3 of [RFC8296]). The Proto field in the BIER header is set | (Section 3 of [RFC8296]). The Proto field in the BIER header is set | |||
to 2 in the case of EVPN-MPLS, a value to be assigned in the case of | to 2 in the case of EVPN-MPLS, 7/8/9 in the case of EVPN-VXLAN/NVGRE/ | |||
EVPN-VXLAN/NVGRE/GENEVE (Section 5) when an IP header is not used, or | GENEVE (Section 5) when an IP header is not used, or 4/6 if an IP | |||
4/6 if an IP header is used for EVPN-VXLAN/NVGRE/GENEVE. | header is used for EVPN-VXLAN/NVGRE/GENEVE. | |||
To create the proper BIER header for a given packet, the BFIR must | 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 | know all the BFERs that need to receive that packet. This is | |||
determined from the set of leaf-tracking routes. | determined from the set of leaf-tracking routes. | |||
4.1.2. At a BFIR That Is a P-Tunnel Segmentation Point | 4.1.2. At a BFIR That Is a P-Tunnel Segmentation Point | |||
In this case, the encapsulation for the upstream segment of the | In this case, the encapsulation for the upstream segment of the | |||
P-tunnel includes (among other things) a label that identifies 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 | x-PMSI or IMET A-D route that is the match for reception on the | |||
End of changes. 4 change blocks. | ||||
10 lines changed or deleted | 11 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. |