| rfc9784v1.txt | rfc9784.txt | |||
|---|---|---|---|---|
| Internet Engineering Task Force (IETF) A. Sajassi | Internet Engineering Task Force (IETF) A. Sajassi | |||
| Request for Comments: 9784 P. Brissette | Request for Comments: 9784 P. Brissette | |||
| Category: Standards Track Cisco Systems | Category: Standards Track Cisco Systems | |||
| ISSN: 2070-1721 R. Schell | ISSN: 2070-1721 R. Schell | |||
| Verizon | ||||
| J. Drake | J. Drake | |||
| Juniper | Independent | |||
| J. Rabadan | J. Rabadan | |||
| Nokia | Nokia | |||
| May 2025 | June 2025 | |||
| EVPN Virtual Ethernet Segments | Virtual Ethernet Segments for EVPN and Provider Backbone Bridge EVPN | |||
| Abstract | Abstract | |||
| Ethernet VPN (EVPN) and Provider Backbone Bridge EVPN (PBB-EVPN) | Ethernet VPN (EVPN) and Provider Backbone Bridge EVPN (PBB-EVPN) | |||
| introduce a comprehensive suite of solutions for delivering Ethernet | introduce a comprehensive suite of solutions for delivering Ethernet | |||
| services over MPLS/IP networks. These solutions offer advanced | services over MPLS/IP networks. These solutions offer advanced | |||
| multi-homing capabilities. Specifically, they support Single-Active | multihoming capabilities. Specifically, they support Single-Active | |||
| and All-Active redundancy modes for an Ethernet Segment (ES), which | and All-Active redundancy modes for an Ethernet Segment (ES), which | |||
| is defined as a collection of physical links connecting a multi-homed | is defined as a collection of physical links connecting a multihomed | |||
| device or network to a set of Provider Edge (PE) devices. This | device or network to a set of Provider Edge (PE) devices. This | |||
| document extends the concept of an Ethernet Segment by allowing an ES | document extends the concept of an ES by allowing an ES to be | |||
| to be associated with a set of Ethernet Virtual Circuits (EVCs), such | associated with a set of Ethernet Virtual Circuits (EVCs), such as | |||
| as VLANs, or other entities, including MPLS Label Switched Paths | VLANs, or other entities, including MPLS Label Switched Paths (LSPs) | |||
| (LSPs) or pseudowires (PWs). This extended concept is referred to as | or pseudowires (PWs). This extended concept is referred to as | |||
| virtual Ethernet Segments (vESes). This document lists the | virtual Ethernet Segments (vESes). This document lists the | |||
| requirements and specifies the necessary extensions to support vES in | requirements and specifies the necessary extensions to support vES in | |||
| both EVPN and PBB-EVPN. | both EVPN and PBB-EVPN. | |||
| Status of This Memo | Status of This Memo | |||
| This is an Internet Standards Track document. | This is an Internet Standards Track document. | |||
| This document is a product of the Internet Engineering Task Force | This document is a product of the Internet Engineering Task Force | |||
| (IETF). It represents the consensus of the IETF community. It has | (IETF). It represents the consensus of the IETF community. It has | |||
| skipping to change at line 69 ¶ | skipping to change at line 68 ¶ | |||
| in the Revised BSD License. | in the Revised BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction | 1. Introduction | |||
| 1.1. Requirements Language | 1.1. Requirements Language | |||
| 1.2. vESes in Access Ethernet Networks | 1.2. vESes in Access Ethernet Networks | |||
| 1.3. vESes in Access MPLS Networks | 1.3. vESes in Access MPLS Networks | |||
| 2. Terminology | 2. Terminology | |||
| 3. Requirements | 3. Requirements | |||
| 3.1. Single-Homed and Multi-Homed vES | 3.1. Single-Homed and Multihomed vES | |||
| 3.2. Local Switching | 3.2. Local Switching | |||
| 3.3. EVC Service Types | 3.3. EVC Service Types | |||
| 3.4. Designated Forwarder (DF) Election | 3.4. Designated Forwarder (DF) Election | |||
| 3.5. EVC Monitoring | 3.5. EVC Monitoring | |||
| 3.6. Failure and Recovery | 3.6. Failure and Recovery | |||
| 3.7. Fast Convergence | 3.7. Fast Convergence | |||
| 4. Solution Overview | 4. Solution Overview | |||
| 4.1. EVPN DF Election for vES | 4.1. EVPN DF Election for vES | |||
| 4.2. Grouping and Route Coloring for vES | 4.2. Grouping and Route Coloring for vES | |||
| 4.2.1. EVPN Route Coloring for vES | 4.2.1. EVPN Route Coloring for vES | |||
| skipping to change at line 100 ¶ | skipping to change at line 99 ¶ | |||
| 8.1. Normative References | 8.1. Normative References | |||
| 8.2. Informative References | 8.2. Informative References | |||
| Acknowledgements | Acknowledgements | |||
| Authors' Addresses | Authors' Addresses | |||
| 1. Introduction | 1. Introduction | |||
| Ethernet VPN (EVPN) [RFC7432] and Provider Backbone Bridge EVPN (PBB- | Ethernet VPN (EVPN) [RFC7432] and Provider Backbone Bridge EVPN (PBB- | |||
| EVPN) [RFC7623] introduce a comprehensive suite of solutions for | EVPN) [RFC7623] introduce a comprehensive suite of solutions for | |||
| delivering Ethernet services over MPLS/IP networks. These solutions | delivering Ethernet services over MPLS/IP networks. These solutions | |||
| offer advanced multi-homing capabilities. Specifically, they support | offer advanced multihoming capabilities. Specifically, they support | |||
| Single-Active and All-Active redundancy modes for an Ethernet Segment | Single-Active and All-Active redundancy modes for an Ethernet Segment | |||
| (ES). As defined in [RFC7432], an ES represents a collection of | (ES). As defined in [RFC7432], an ES represents a collection of | |||
| Ethernet links that connect a customer site to one or more Provider | Ethernet links that connect a customer site to one or more Provider | |||
| Edge (PE) devices. | Edge (PE) devices. | |||
| This document extends the concept of an Ethernet Segment by allowing | This document extends the concept of an ES by allowing an ES to be | |||
| an ES to be associated with a set of Ethernet Virtual Circuits (EVCs) | associated with a set of Ethernet Virtual Circuits (EVCs) (such as | |||
| (such as VLANs) or other entities, including MPLS Label Switched | VLANs) or other entities, including MPLS Label Switched Paths (LSPs) | |||
| Paths (LSPs) or pseudowires (PWs). This extended concept is referred | or pseudowires (PWs). This extended concept is referred to as | |||
| to as virtual Ethernet Segments (vESes). This document lists the | virtual Ethernet Segments (vESes). This document lists the | |||
| requirements and specifies the necessary extensions to support vES in | requirements and specifies the necessary extensions to support vES in | |||
| both EVPN and PBB-EVPN. The scope of this document includes PBB-EVPN | both EVPN and PBB-EVPN. The scope of this document includes PBB-EVPN | |||
| [RFC7623], EVPN over MPLS [RFC7432], and EVPN over IP [RFC8365]; | [RFC7623], EVPN over MPLS [RFC7432], and EVPN over IP [RFC8365]; | |||
| however, it excludes EVPN over SRv6 [RFC9252]. | however, it excludes EVPN over SRv6 [RFC9252]. | |||
| 1.1. Requirements Language | 1.1. Requirements Language | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | |||
| "OPTIONAL" in this document are to be interpreted as described in | "OPTIONAL" in this document are to be interpreted as described in | |||
| skipping to change at line 133 ¶ | skipping to change at line 132 ¶ | |||
| 1.2. vESes in Access Ethernet Networks | 1.2. vESes in Access Ethernet Networks | |||
| Some service providers (SPs) seek to extend the concept of physical | Some service providers (SPs) seek to extend the concept of physical | |||
| Ethernet links in an ES to encompass EVCs, wherein multiple EVCs | Ethernet links in an ES to encompass EVCs, wherein multiple EVCs | |||
| (such as VLANs) can be aggregated onto a single physical External | (such as VLANs) can be aggregated onto a single physical External | |||
| Network-Network Interface (ENNI). An ES composed of a set of EVCs | Network-Network Interface (ENNI). An ES composed of a set of EVCs | |||
| rather than physical links is referred to as a vES. Figure 1 | rather than physical links is referred to as a vES. Figure 1 | |||
| illustrates two PE devices (PE1 and PE2), each with an ENNI | illustrates two PE devices (PE1 and PE2), each with an ENNI | |||
| aggregating several EVCs. Some of these EVCs on a given ENNI can be | aggregating several EVCs. Some of these EVCs on a given ENNI can be | |||
| associated with vESes. For instance, the multi-homed vES depicted in | associated with vESes. For instance, the multihomed vES depicted in | |||
| Figure 1 consists of EVC4 on ENNI1 and EVC5 on ENNI2. | Figure 1 consists of EVC4 on ENNI1 and EVC5 on ENNI2. | |||
| Third-Party | Third-Party | |||
| +-----+ EAP | +-----+ EAP | |||
| | CE11|EVC1 +---------+ | | CE11|EVC1 +---------+ | |||
| +-----+ \ | | +---+ | +-----+ \ | | +---+ | |||
| Cust. A \-0=========0--ENNI1| | | Cust. A \-0=========0--ENNI1| | | |||
| +-----+ | | ENNI1| | +-------+ +---+ | +-----+ | | ENNI1| | +-------+ +---+ | |||
| | CE12|EVC2--0=========0--ENNI1|PE1|---| | | | | | CE12|EVC2--0=========0--ENNI1|PE1|---| | | | | |||
| +-----+ | | ENNI1| | |SP |---|PE3|- | +-----+ | | ENNI1| | |SP |---|PE3|- | |||
| skipping to change at line 159 ¶ | skipping to change at line 158 ¶ | |||
| +-----+ -0=== ===0--ENNI2| | | |---|PE4|-/ +---+ | +-----+ -0=== ===0--ENNI2| | | |---|PE4|-/ +---+ | |||
| | CE3 |EVC4/ | | ENNI2|PE2|---| | | | | | CE3 |EVC4/ | | ENNI2|PE2|---| | | | | |||
| | |EVC5--0=========0--ENNI2| | +-------+ +---+ | | |EVC5--0=========0--ENNI2| | +-------+ +---+ | |||
| +-----+ | | +---+ | +-----+ | | +---+ | |||
| Cust. C +---------+ /\ | Cust. C +---------+ /\ | |||
| /\ || | /\ || | |||
| || ENNI | || ENNI | |||
| EVCs Interface | EVCs Interface | |||
| <--------802.1Q----------> <---- EVPN Network -----> <-802.1Q-> | <--------802.1Q----------> <---- EVPN Network -----> <-802.1Q-> | |||
| Figure 1: A Dual-Homed Device/Network (Both SA/AA) and SH on the | Figure 1: Single-Homed Devices and a Dual-Homed Device/Network on | |||
| Same ENNI | the Same ENNI | |||
| ENNIs are commonly used to reach remote customer sites via | ENNIs are commonly used to reach remote customer sites via | |||
| independent Ethernet access networks or third-party Ethernet Access | independent Ethernet access networks or third-party Ethernet Access | |||
| Providers (EAPs). ENNIs can aggregate traffic from many vESes (e.g., | Providers (EAPs). ENNIs can aggregate traffic from many vESes (e.g., | |||
| hundreds to thousands), where each vES is represented by its | hundreds to thousands), where each vES is represented by its | |||
| associated EVC on that ENNI. As a result, ENNIs and their associated | associated EVC on that ENNI. As a result, ENNIs and their associated | |||
| EVCs are key elements of SP external boundaries that are carefully | EVCs are key elements of SP external boundaries that are carefully | |||
| designed and closely monitored. As a reminder, the ENNI is the | designed and closely monitored. As a reminder, the ENNI is the | |||
| demarcation between the SP (IP/MPLS core network) and the third-party | demarcation between the SP (IP/MPLS core network) and the third-party | |||
| Ethernet Access Provider. | Ethernet Access Provider. | |||
| To meet customers' Service Level Agreements (SLAs), SPs build | To meet customers' Service Level Agreements (SLAs), SPs build | |||
| redundancy via multiple EVPN PEs and across multiple ENNIs (as shown | redundancy via multiple EVPN PEs and across multiple ENNIs (as shown | |||
| in Figure 1), where a given vES can be multi-homed to two or more | in Figure 1), where a given vES can be multihomed to two or more EVPN | |||
| EVPN PE devices (on two or more ENNIs) via their associated EVCs. | PE devices (on two or more ENNIs) via their associated EVCs. Just | |||
| Just like physical ESs in the solutions described in [RFC7432] and | like physical ESs in the solutions described in [RFC7432] and | |||
| [RFC7623], these vESes can be single-homed or multi-homed ESs, and | [RFC7623], these vESes can be single-homed or multihomed ESs, and | |||
| when multi-homed, they can operate in either Single-Active or All- | when multihomed, they can operate in either Single-Active or All- | |||
| Active redundancy modes. In a typical SP external-boundary scenario | Active redundancy modes. In a typical SP external-boundary scenario | |||
| (e.g., with an EAP), an ENNI can be associated with several thousands | (e.g., with an EAP), an ENNI can be associated with several thousands | |||
| of single-homed vESes, several hundreds of Single-Active vESes, and | of single-homed vESes, several hundreds of Single-Active vESes, and | |||
| tens or hundreds of All-Active vESes. The specific figures used | tens or hundreds of All-Active vESes. The specific figures used | |||
| throughout this document reflect the relative quantities (hundreds, | throughout this document reflect the relative quantities (hundreds, | |||
| thousands, etc.) of various elements as understood at the time of | thousands, etc.) of various elements as understood at the time of | |||
| writing. | writing. | |||
| 1.3. vESes in Access MPLS Networks | 1.3. vESes in Access MPLS Networks | |||
| skipping to change at line 249 ¶ | skipping to change at line 248 ¶ | |||
| pairs between PE1 and AG2 and between PE2 and AG2, respectively. The | pairs between PE1 and AG2 and between PE2 and AG2, respectively. The | |||
| vES consists of these two LSP pairs (LSP1 and LSP2), and each LSP | vES consists of these two LSP pairs (LSP1 and LSP2), and each LSP | |||
| pair has two PWs. This vES will be shared by two separate EVPN | pair has two PWs. This vES will be shared by two separate EVPN | |||
| instances (e.g., EVI-1 and EVI-2) in the EVPN network. PW3 and PW4 | instances (e.g., EVI-1 and EVI-2) in the EVPN network. PW3 and PW4 | |||
| are associated with EVI-1 and EVI-2, respectively, on PE1, and PW5 | are associated with EVI-1 and EVI-2, respectively, on PE1, and PW5 | |||
| and PW6 are associated with EVI-1 and EVI-2, respectively, on PE2. | and PW6 are associated with EVI-1 and EVI-2, respectively, on PE2. | |||
| In some cases, the aggregation of PWs that share the same LSP pair | In some cases, the aggregation of PWs that share the same LSP pair | |||
| may not be possible. For instance, if PW3 were terminated into a | may not be possible. For instance, if PW3 were terminated into a | |||
| third PE, e.g., PE3, instead of PE1, the vES would need to be defined | third PE, e.g., PE3, instead of PE1, the vES would need to be defined | |||
| on a per individual PW on each PE. | on each PW on each PE. | |||
| For MPLS/IP access networks where a vES represents a set of LSP pairs | For MPLS/IP access networks where a vES represents a set of LSP pairs | |||
| or a set of PWs, this document extends the Single-Active multi-homing | or a set of PWs, this document extends the Single-Active multihoming | |||
| procedures defined in [RFC7432] and [RFC7623] to accommodate vES. | procedures defined in [RFC7432] and [RFC7623] to accommodate vES. | |||
| The extension of vES to support All-Active multi-homing in MPLS/IP | The extension of vES to support All-Active multihoming in MPLS/IP | |||
| access networks is beyond the scope of this document. | access networks is beyond the scope of this document. | |||
| This document defines the concept of a vES and specifies the | This document defines the concept of a vES and specifies the | |||
| additional extensions necessary to support a vES in accordance with | additional extensions necessary to support a vES in accordance with | |||
| [RFC7432] and [RFC7623]. Section 3 enumerates the set of | [RFC7432] and [RFC7623]. Section 3 enumerates the set of | |||
| requirements for a vES. Section 4 details the extensions for a vES | requirements for a vES. Section 4 details the extensions for a vES | |||
| applicable to EVPN solutions, including those specified in [RFC7432] | applicable to EVPN solutions, including those specified in [RFC7432] | |||
| and [RFC7209]. These extensions are designed to meet the | and [RFC7209]. These extensions are designed to meet the | |||
| requirements listed in Section 3. Section 4 also provides an | requirements listed in Section 3. Section 4 also provides an | |||
| overview of the solution, while Section 5 addresses failure handling, | overview of the solution, while Section 5 addresses failure handling, | |||
| skipping to change at line 308 ¶ | skipping to change at line 307 ¶ | |||
| PBB: Provider Backbone Bridge | PBB: Provider Backbone Bridge | |||
| PBB-EVPN: Provider Backbone Bridge EVPN | PBB-EVPN: Provider Backbone Bridge EVPN | |||
| PE: Provider Edge | PE: Provider Edge | |||
| VPWS: Virtual Private Wire Service | VPWS: Virtual Private Wire Service | |||
| Single-Active (SA) Redundancy Mode: When only a single PE, among a | Single-Active (SA) Redundancy Mode: When only a single PE, among a | |||
| group of PEs attached to an Ethernet Segment, is allowed to | group of PEs attached to an ES, is allowed to forward | |||
| forward traffic to/from that Ethernet Segment, the Ethernet | traffic to/from that ES, the ES is defined as operating in | |||
| Segment is defined as operating in Single-Active redundancy | Single-Active redundancy mode. | |||
| mode. | ||||
| All-Active (AA) Redundancy Mode: When all PEs attached to an | All-Active (AA) Redundancy Mode: When all PEs attached to an ES are | |||
| Ethernet Segment are allowed to forward traffic to/from | allowed to forward traffic to/from that ES, the ES is | |||
| that Ethernet Segment, the Ethernet Segment is defined as | defined as operating in All-Active redundancy mode. | |||
| operating in All-Active redundancy mode. | ||||
| 3. Requirements | 3. Requirements | |||
| This section describes the requirements specific to vES for EVPN and | This section describes the requirements specific to vES for EVPN and | |||
| PBB-EVPN solutions. These requirements are in addition to the ones | PBB-EVPN solutions. These requirements are in addition to the ones | |||
| described in [RFC8214], [RFC7432], and [RFC7623]. | described in [RFC8214], [RFC7432], and [RFC7623]. | |||
| 3.1. Single-Homed and Multi-Homed vES | 3.1. Single-Homed and Multihomed vES | |||
| A PE device MUST support the following types of vESes: | A PE device MUST support the following types of vESes: | |||
| (R1a) The PE MUST handle single-homed vESes on a single physical | (R1a) The PE MUST handle single-homed vESes on a single physical | |||
| port, such as a single ENNI. | port, such as a single ENNI. | |||
| (R1b) The PE MUST support a combination of single-homed vESes and | (R1b) The PE MUST support a combination of single-homed vESes and | |||
| Single-Active multi-homed vESes simultaneously on a single | Single-Active multihomed vESes simultaneously on a single | |||
| physical port, such as a single ENNI. Throughout this | physical port, such as a single ENNI. Throughout this | |||
| document, Single-Active multi-homed vESes will be referred to | document, Single-Active multihomed vESes will be referred to | |||
| as "Single-Active vESes". | as "Single-Active vESes". | |||
| (R1c) The PE MAY support All-Active multi-homed vESes on a single | (R1c) The PE MAY support All-Active multihomed vESes on a single | |||
| physical port. Throughout this document, All-Active multi- | physical port. Throughout this document, All-Active | |||
| homed vESes will be referred to as "All-Active vESes". | multihomed vESes will be referred to as "All-Active vESes". | |||
| (R1d) The PE MAY support a combination of All-Active vESes along | (R1d) The PE MAY support a combination of All-Active vESes along | |||
| with other types of vESes on a single physical port. | with other types of vESes on a single physical port. | |||
| (R1e) A multi-homed vES, whether Single-Active or All-Active, can | (R1e) A multihomed vES, whether Single-Active or All-Active, can | |||
| span across two or more ENNIs on any two or more PEs. | span across two or more ENNIs on any two or more PEs. | |||
| 3.2. Local Switching | 3.2. Local Switching | |||
| Many vESes of different types can be aggregated on a single physical | Many vESes of different types can be aggregated on a single physical | |||
| port on a PE device and some of these vESes can belong to the same | port on a PE device and some of these vESes can belong to the same | |||
| service instance (e.g., EVI). This translates into the need for | service instance (e.g., EVI). This translates into the need for | |||
| supporting local switching among the vESes for the same service | supporting local switching among the vESes for the same service | |||
| instance on the same physical port (e.g., ENNI) of the PE. | instance on the same physical port (e.g., ENNI) of the PE. | |||
| (R3a) A PE device that supports the vES function MUST support local | (R2a) A PE device that supports the vES function MUST support local | |||
| switching among different vESes associated with the same | switching among different vESes associated with the same | |||
| service instance on a single physical port. For instance, in | service instance on a single physical port. For instance, in | |||
| Figure 1, PE1 must support local switching between CE11 and | Figure 1, PE1 must support local switching between CE11 and | |||
| CE12, which are mapped to two single-homed vESes on ENNI1. In | CE12, which are mapped to two single-homed vESes on ENNI1. In | |||
| the case of Single-Active vESes, the local switching is | the case of Single-Active vESes, the local switching is | |||
| performed among active EVCs associated with the same service | performed among active EVCs associated with the same service | |||
| instance on the same ENNI. | instance on the same ENNI. | |||
| 3.3. EVC Service Types | 3.3. EVC Service Types | |||
| A physical port, such as an ENNI of a PE device, can aggregate | A physical port, such as an ENNI of a PE device, can aggregate | |||
| numerous EVCs, each associated with a vES. An EVC may carry one or | numerous EVCs, each associated with a vES. An EVC may carry one or | |||
| more VLANs. Typically, an EVC carries a single VLAN and is therefore | more VLANs. Typically, an EVC carries a single VLAN and is therefore | |||
| associated with a single broadcast domain. However, there are no | associated with a single broadcast domain. However, there are no | |||
| restrictions preventing an EVC from carrying multiple VLANs. | restrictions preventing an EVC from carrying multiple VLANs. | |||
| (R4a) An EVC can be associated with a single broadcast domain, such | (R3a) An EVC can be associated with a single broadcast domain, such | |||
| as in a VLAN-based service or a VLAN bundle service. | as in a VLAN-based service or a VLAN bundle service. | |||
| (R4b) An EVC MAY be associated with several broadcast domains, such | (R3b) An EVC MAY be associated with several broadcast domains, such | |||
| as in a VLAN-aware bundle service. | as in a VLAN-aware bundle service. | |||
| Similarly, a PE can aggregate multiple LSPs and PWs. In the case of | Similarly, a PE can aggregate multiple LSPs and PWs. In the case of | |||
| individual PWs per vES, a PW is typically associated with a single | individual PWs per vES, a PW is typically associated with a single | |||
| broadcast domain, although there are no restrictions preventing a PW | broadcast domain, although there are no restrictions preventing a PW | |||
| from carrying multiple VLANs if the PW is configured in Raw mode. | from carrying multiple VLANs if the PW is configured in Raw mode. | |||
| (R4c) A PW can be associated with a single broadcast domain, such as | (R3c) A PW can be associated with a single broadcast domain, such as | |||
| in a VLAN-based service or a VLAN bundle service. | in a VLAN-based service or a VLAN bundle service. | |||
| (R4d) A PW MAY be associated with several broadcast domains, such as | (R3d) A PW MAY be associated with several broadcast domains, such as | |||
| in a VLAN-aware bundle service. | in a VLAN-aware bundle service. | |||
| 3.4. Designated Forwarder (DF) Election | 3.4. Designated Forwarder (DF) Election | |||
| Section 8.5 of [RFC7432] specifies the default procedure for DF | Section 8.5 of [RFC7432] specifies the default procedure for DF | |||
| election in EVPN, which is also applied in [RFC7623] and [RFC8214]. | election in EVPN, which is also applied in [RFC7623] and [RFC8214]. | |||
| [RFC8584] elaborates on additional procedures for DF election in | [RFC8584] elaborates on additional procedures for DF election in | |||
| EVPN. These DF election procedures are performed at the granularity | EVPN. These DF election procedures are performed at the granularity | |||
| of (ESI, Ethernet Tag). In the context of a vES, the same EVPN | of (ESI, Ethernet Tag). In the context of a vES, the same EVPN | |||
| default procedure for DF election is applicable but at the | default procedure for DF election is applicable but at the | |||
| granularity of (vESI, Ethernet Tag). In this context, the Ethernet | granularity of (vESI, Ethernet Tag). In this context, the Ethernet | |||
| Tag is represented by an I-SID in PBB-EVPN and by a VLAN ID (VID) in | Tag is represented by an I-SID in PBB-EVPN and by a VLAN ID (VID) in | |||
| EVPN. As described in [RFC7432], this default procedure for DF | EVPN. As described in [RFC7432], this default procedure for DF | |||
| election at the granularity of (vESI, Ethernet Tag) is also known as | election at the granularity of (vESI, Ethernet Tag) is also known as | |||
| "service carving." The goal of service carving is to evenly | "service carving." The goal of service carving is to evenly | |||
| distribute the DFs for different vESes among various PEs, thereby | distribute the DFs for different vESes among various PEs, thereby | |||
| ensuring an even distribution of traffic across the PEs. The | ensuring an even distribution of traffic across the PEs. The | |||
| following requirements are applicable to the DF election of vESes for | following requirements are applicable to the DF election of vESes for | |||
| EVPN and PBB-EVPN. | EVPN and PBB-EVPN. | |||
| (R5a) A PE that supports vES function MUST support a vES with m EVCs | (R4a) A PE that supports vES function MUST support a vES with m EVCs | |||
| among n ENNIs belonging to p PEs in any arbitrary order, where | among n ENNIs belonging to p PEs in any arbitrary order, where | |||
| n >= p >= m >=2. For example, if there is a vES with 2 EVCs | n >= p >= m >=2. For example, if there is a vES with 2 EVCs | |||
| and there are 5 ENNIs on 5 PEs (PE1 through PE5), then vES can | and there are 5 ENNIs on 5 PEs (PE1 through PE5), then vES can | |||
| be dual-homed to PE2 and PE4, and the DF election must be | be dual-homed to PE2 and PE4, and the DF election must be | |||
| performed between PE2 and PE4. | performed between PE2 and PE4. | |||
| (R5b) Each vES MUST be identified by its own virtual ESI (vESI). | (R4b) Each vES MUST be identified by its own virtual ESI (vESI). | |||
| 3.5. EVC Monitoring | 3.5. EVC Monitoring | |||
| To detect the failure of an individual EVC and subsequently perform | To detect the failure of an individual EVC and subsequently perform | |||
| DF election for its associated vES as a result of this failure, each | DF election for its associated vES as a result of this failure, each | |||
| EVC should be monitored independently. | EVC should be monitored independently. | |||
| (R6a) Each EVC SHOULD be independently monitored for its operational | (R5a) Each EVC SHOULD be independently monitored for its operational | |||
| health. | health. | |||
| (R6b) A failure in a single EVC, among many aggregated on a single | (R5b) A failure in a single EVC, among many aggregated on a single | |||
| physical port or ENNI, MUST trigger a DF election for its | physical port or ENNI, MUST trigger a DF election for its | |||
| associated vES. | associated vES. | |||
| 3.6. Failure and Recovery | 3.6. Failure and Recovery | |||
| (R7a) Failure and failure recovery of an EVC for a single-homed vES | (R6a) Failure and failure recovery of an EVC for a single-homed vES | |||
| SHALL NOT impact any other EVCs within its service instance or | SHALL NOT impact any other EVCs within its service instance or | |||
| any other service instances. In other words, for PBB-EVPN, it | any other service instances. In other words, for PBB-EVPN, it | |||
| SHALL NOT trigger any MAC flushing within both its own I-SID | SHALL NOT trigger any MAC flushing within both its own I-SID | |||
| and other I-SIDs. | and other I-SIDs. | |||
| (R7b) In case of All-Active vES, failure and failure recovery of an | (R6b) In case of All-Active vES, failure and failure recovery of an | |||
| EVC for that vES SHALL NOT impact any other EVCs within its | EVC for that vES SHALL NOT impact any other EVCs within its | |||
| service instance or any other service instances. In other | service instance or any other service instances. In other | |||
| words, for PBB-EVPN, it SHALL NOT trigger any MAC flushing | words, for PBB-EVPN, it SHALL NOT trigger any MAC flushing | |||
| within both its own I-SID and other I-SIDs. | within both its own I-SID and other I-SIDs. | |||
| (R7c) Failure and failure recovery of an EVC for a Single-Active vES | (R6c) Failure and failure recovery of an EVC for a Single-Active vES | |||
| SHALL impact only its own service instance. In other words, | SHALL impact only its own service instance. In other words, | |||
| for PBB-EVPN, MAC flushing SHALL be limited to the associated | for PBB-EVPN, MAC flushing SHALL be limited to the associated | |||
| I-SID only and SHALL NOT impact any other I-SIDs. | I-SID only and SHALL NOT impact any other I-SIDs. | |||
| (R7d) Failure and failure recovery of an EVC for a Single-Active vES | (R6d) Failure and failure recovery of an EVC for a Single-Active vES | |||
| MUST only impact C-MACs associated with a multi-homed device/ | MUST only impact C-MACs associated with a multihomed device/ | |||
| network for that service instance. In other words, MAC | network for that service instance. In other words, MAC | |||
| flushing MUST be limited to a single service instance (I-SID | flushing MUST be limited to a single service instance (I-SID | |||
| in the case of PBB-EVPN) and only C-MACs for a Single-Active | in the case of PBB-EVPN) and only C-MACs for a Single-Active | |||
| multi-homed device/network. | multihomed device/network. | |||
| 3.7. Fast Convergence | 3.7. Fast Convergence | |||
| Since many EVCs (and their associated vESes) are aggregated via a | Since many EVCs (and their associated vESes) are aggregated via a | |||
| single physical port (e.g., ENNI), when there is a failure of that | single physical port (e.g., ENNI), when there is a failure of that | |||
| physical port, it impacts many vESes and equally triggers many ES | physical port, it impacts many vESes and equally triggers many ES | |||
| route withdrawals. Formulating, sending, receiving, and processing | route withdrawals. Formulating, sending, receiving, and processing | |||
| such large numbers of BGP messages can introduce delay in DF election | such large numbers of BGP messages can introduce delay in DF election | |||
| and convergence time. As such, it is highly desirable to have a | and convergence time. As such, it is highly desirable to have a | |||
| mass-withdraw mechanism similar to the one in [RFC7432] for | mass-withdraw mechanism similar to the one in [RFC7432] for | |||
| withdrawing many Ethernet A-D per ES routes. | withdrawing many Ethernet A-D per ES routes. | |||
| (R8a) There SHOULD be a mechanism equivalent to EVPN mass withdraw | (R7a) There SHOULD be a mechanism equivalent to EVPN mass withdraw | |||
| such that upon an ENNI failure, only a single BGP message to | such that upon an ENNI failure, only a single BGP message to | |||
| the PEs is needed to trigger DF election for all impacted | the PEs is needed to trigger DF election for all impacted | |||
| vESes associated with that ENNI. | vESes associated with that ENNI. | |||
| 4. Solution Overview | 4. Solution Overview | |||
| The solutions described in [RFC7432] and [RFC7623] are leveraged as | The solutions described in [RFC7432] and [RFC7623] are leveraged as | |||
| is, with the modification that the ESI assignment is performed for an | is, with the modification that the ESI assignment is performed for an | |||
| EVC or a group of EVCs or LSPs/PWs instead of a link or a group of | EVC or a group of EVCs or LSPs/PWs instead of a link or a group of | |||
| physical links. In other words, the ESI is associated with a vES | physical links. In other words, the ESI is associated with a vES | |||
| (hereby referred to as the "vESI"). | (hereby referred to as the "vESI"). | |||
| In the EVPN solution, the overall procedures remain consistent, with | In the EVPN solution, the overall procedures remain consistent, with | |||
| the primary difference being the handling of physical port failures | the primary difference being the handling of physical port failures | |||
| that can affect multiple vESes. Sections 5.1 and 5.3 describe the | that can affect multiple vESes. Sections 5.1 and 5.3 describe the | |||
| procedures for managing physical port or link failures in the context | procedures for managing physical port or link failures in the context | |||
| of EVPN. In a typical multi-homed setup, MAC addresses learned | of EVPN. In a typical multihomed setup, MAC addresses learned behind | |||
| behind a vES are advertised using the ESI associated with the vES | a vES are advertised using the ESI associated with the vES (i.e., the | |||
| (i.e., the vESI). EVPN aliasing and mass-withdraw operations are | vESI). EVPN aliasing and mass-withdraw operations are conducted with | |||
| conducted with respect to the vES identifier. Specifically, the | respect to the vES identifier. Specifically, the Ethernet A-D routes | |||
| Ethernet A-D routes for these operations are advertised using the | for these operations are advertised using the vESI instead of the | |||
| vESI instead of the ESI. | ESI. | |||
| For the PBB-EVPN solution, the main change is with respect to the | For the PBB-EVPN solution, the main change is with respect to the | |||
| B-MAC address assignment, which is performed in a similar way to what | B-MAC address assignment, which is performed in a similar way to what | |||
| is described in Section 7.2.1.1 of [RFC7623], with the following | is described in Section 6.2.1.1 of [RFC7623], with the following | |||
| refinements: | refinements: | |||
| * One shared B-MAC address SHOULD be used per PE for the single- | * One shared B-MAC address SHOULD be used per PE for the single- | |||
| homed vESes. In other words, a single B-MAC is shared for all | homed vESes. In other words, a single B-MAC is shared for all | |||
| single-homed vESes on that PE. | single-homed vESes on that PE. | |||
| * One shared B-MAC address SHOULD be used per PE, per physical port | * One shared B-MAC address SHOULD be used per PE, per physical port | |||
| (e.g., ENNI) for the Single-Active vESes. In other words, a | (e.g., ENNI) for the Single-Active vESes. In other words, a | |||
| single B-MAC is shared for all Single-Active vESes that share the | single B-MAC is shared for all Single-Active vESes that share the | |||
| same ENNI. | same ENNI. | |||
| skipping to change at line 524 ¶ | skipping to change at line 521 ¶ | |||
| 4.1. EVPN DF Election for vES | 4.1. EVPN DF Election for vES | |||
| The service carving procedures for vESes are almost the same as the | The service carving procedures for vESes are almost the same as the | |||
| procedures outlined in Section 8.5 of [RFC7432] and in [RFC8584], | procedures outlined in Section 8.5 of [RFC7432] and in [RFC8584], | |||
| except that ES is replaced with vES. | except that ES is replaced with vES. | |||
| For the sake of clarity and completeness, the default DF election | For the sake of clarity and completeness, the default DF election | |||
| procedure of [RFC7432] is repeated below with the necessary changes: | procedure of [RFC7432] is repeated below with the necessary changes: | |||
| 1. When a PE discovers the vESI or is configured with the vESI | 1. When a PE discovers the vESI or is configured with the vESI | |||
| associated with its attached vES, it advertises an Ethernet | associated with its attached vES, it advertises an ES route with | |||
| Segment route with the associated ES-Import extended community | the associated ES-Import Route Target extended community | |||
| attribute. | attribute. | |||
| 2. The PE then starts a timer (default value = 3 seconds) to allow | 2. The PE then starts a timer (default value = 3 seconds) to allow | |||
| the reception of Ethernet Segment routes from other PE nodes | the reception of ES routes from other PE nodes connected to the | |||
| connected to the same vES. This timer value MUST be the same | same vES. This timer value MUST be the same across all PEs | |||
| across all PEs connected to the same vES. | connected to the same vES. | |||
| 3. When the timer expires, each PE builds an ordered list of the IP | 3. When the timer expires, each PE builds an ordered list of the IP | |||
| addresses of all the PE nodes connected to the vES (including | addresses of all the PE nodes connected to the vES (including | |||
| itself), in increasing numeric value. Each IP address in this | itself), in increasing numeric value. Each IP address in this | |||
| list is extracted from the "Originator Router's IP address" field | list is extracted from the "Originator Router's IP address" field | |||
| of the advertised Ethernet Segment route. Every PE is then given | of the advertised ES route. Every PE is then given an ordinal | |||
| an ordinal indicating its position in the ordered list, starting | indicating its position in the ordered list, starting with 0 as | |||
| with 0 as the ordinal for the PE with the numerically lowest IP | the ordinal for the PE with the numerically lowest IP address. | |||
| address. The ordinals are used to determine which PE node will | The ordinals are used to determine which PE node will be the DF | |||
| be the DF for a given EVPN instance on the vES using the | for a given EVPN instance on the vES using the following rule: | |||
| following rule: Assuming a redundancy group of N PE nodes, the PE | Assuming a redundancy group of N PE nodes, the PE with ordinal i | |||
| with ordinal i is the DF for an EVPN instance with an associated | is the DF for an EVPN instance with an associated Ethernet Tag | |||
| Ethernet Tag value of V when (V mod N) = i. It should be noted | value of V when (V mod N) = i. It should be noted that using the | |||
| that using the "Originator Router's IP address" field in the | "Originator Router's IP address" field in the ES route to get the | |||
| Ethernet Segment route to get the PE IP address needed for the | PE IP address needed for the ordered list allows a CE to be | |||
| ordered list allows a CE to be multi-homed across different ASes, | multihomed across different ASes, if such need ever arises. | |||
| if such need ever arises. | ||||
| 4. The PE that is elected as a DF for a given EVPN instance will | 4. The PE that is elected as a DF for a given EVPN instance will | |||
| unblock traffic for that EVPN instance. Note that the DF PE | unblock traffic for that EVPN instance. Note that the DF PE | |||
| unblocks all traffic in both ingress and egress directions for | unblocks all traffic in both ingress and egress directions for | |||
| Single-Active vESes and unblocks multi-destination in the egress | Single-Active vESes and unblocks multi-destination in the egress | |||
| direction for All-Active multi-homed vESes. All non-DF PEs block | direction for All-Active multihomed vESes. All non-DF PEs block | |||
| all traffic in both ingress and egress directions for Single- | all traffic in both ingress and egress directions for Single- | |||
| Active vESes and block multi-destination traffic in the egress | Active vESes and block multi-destination traffic in the egress | |||
| direction for All-Active vESes. | direction for All-Active vESes. | |||
| In case of an EVC failure, the affected PE withdraws its | In case of an EVC failure, the affected PE withdraws its | |||
| corresponding Ethernet Segment route if there are no more EVCs | corresponding ES route if there are no more EVCs associated to the | |||
| associated to the vES in the PE. This will re-trigger the DF | vES in the PE. This will re-trigger the DF election procedure on all | |||
| election procedure on all the PEs in the redundancy group. For PE | the PEs in the redundancy group. For PE node failure, or upon PE | |||
| node failure, or upon PE commissioning or decommissioning, the PEs | commissioning or decommissioning, the PEs re-trigger the DF election | |||
| re-trigger the DF election procedure across all affected vESes. In | procedure across all affected vESes. In case of a Single-Active | |||
| case of a Single-Active, when a service moves from one PE in the | scenario, when a service moves from one PE in the redundancy group to | |||
| redundancy group to another PE because of DF re-election, the PE | another PE because of DF re-election, the PE (which ends up being the | |||
| (which ends up being the elected DF for the service) MUST trigger a | elected DF for the service) MUST trigger a MAC address flush | |||
| MAC address flush notification towards the associated vES if the | notification towards the associated vES if the multihoming device is | |||
| multi-homing device is a bridge or the multi-homing network is an | a bridge or the multihoming network is an Ethernet bridged network. | |||
| Ethernet bridged network. | ||||
| For LSP-based and PW-based vES, the non-DF PE SHOULD signal PW-status | For LSP-based and PW-based vES, the non-DF PE SHOULD signal PW-status | |||
| 'standby' to the Aggregation PE (e.g., AG1 and AG2 in Figure 2), and | 'standby' to the Aggregation PE (e.g., AG1 and AG2 in Figure 2), and | |||
| a new DF PE MAY send a Label Distribution Protocol (LDP) MAC withdraw | a new DF PE MAY send a Label Distribution Protocol (LDP) MAC withdraw | |||
| message as a MAC address flush notification. It should be noted that | message as a MAC address flush notification. It should be noted that | |||
| the PW-status is signaled for the scenarios where there is a one-to- | the PW-status is signaled for the scenarios where there is a one-to- | |||
| one mapping between EVI (EVPN instance) and the PW. | one mapping between EVI (EVPN instance) and the PW. | |||
| 4.2. Grouping and Route Coloring for vES | 4.2. Grouping and Route Coloring for vES | |||
| skipping to change at line 593 ¶ | skipping to change at line 588 ¶ | |||
| By default, the MAC address of the corresponding port (e.g., ENNI) is | By default, the MAC address of the corresponding port (e.g., ENNI) is | |||
| used to represent the 'color' of the port, and the EVPN Router's MAC | used to represent the 'color' of the port, and the EVPN Router's MAC | |||
| Extended Community defined in [RFC9135] is used to signal this color. | Extended Community defined in [RFC9135] is used to signal this color. | |||
| The difference between coloring mechanisms for EVPN and PBB-EVPN is | The difference between coloring mechanisms for EVPN and PBB-EVPN is | |||
| that the extended community is advertised with the Ethernet A-D per | that the extended community is advertised with the Ethernet A-D per | |||
| ES route for EVPN, whereas the extended community is advertised with | ES route for EVPN, whereas the extended community is advertised with | |||
| the B-MAC route for PBB-EVPN. | the B-MAC route for PBB-EVPN. | |||
| The subsequent sections detailing Grouping of Ethernet A-D per ES and | The subsequent sections detailing Grouping of Ethernet A-D per ES | |||
| Grouping of B-MAC addresses will be essential for addressing port | routes and Grouping of B-MAC addresses will be essential for | |||
| failure handling, as discussed in Sections 5.3, 5.4, and 5.5. | addressing port failure handling, as discussed in Sections 5.3, 5.4, | |||
| and 5.5. | ||||
| 4.2.1. EVPN Route Coloring for vES | 4.2.1. EVPN Route Coloring for vES | |||
| When a PE discovers the vESI or is configured with the vESI | When a PE discovers the vESI or is configured with the vESI | |||
| associated with its attached vES, an Ethernet Segment route and | associated with its attached vES, an ES route and Ethernet A-D per ES | |||
| Ethernet A-D per ES route are generated using the vESI identifier. | route are generated using the vESI identifier. | |||
| These Ethernet Segment and Ethernet A-D per ES routes specific to | These ES and Ethernet A-D per ES routes specific to each vES are | |||
| each vES are colored with an attribute representing their association | colored with an attribute representing their association to a | |||
| to a physical port (e.g., ENNI). | physical port (e.g., ENNI). | |||
| The corresponding port 'color' is encoded in the EVPN Router's MAC | The corresponding port 'color' is encoded in the EVPN Router's MAC | |||
| Extended Community defined in [RFC9135] and advertised along with the | Extended Community defined in [RFC9135] and advertised along with the | |||
| Ethernet Segment and Ethernet A-D per ES routes for this vES. The | ES and Ethernet A-D per ES routes for this vES. The color (which is | |||
| color (which is the MAC address of the port) MUST be unique. | the MAC address of the port) MUST be unique. | |||
| The PE also constructs a special Grouping Ethernet A-D per ES route | The PE also constructs a special Grouping Ethernet A-D per ES route | |||
| that represents all the vESes associated with the port (e.g., ENNI). | that represents all the vESes associated with the port (e.g., ENNI). | |||
| The corresponding port 'color' is encoded in the ESI field. For this | The corresponding port 'color' is encoded in the ESI field. For this | |||
| encoding, Type 3 ESI (Section 5 of [RFC7432]) is used with the MAC | encoding, Type 3 ESI (Section 5 of [RFC7432]) is used with the MAC | |||
| field set to the color (MAC address) of the port and the 3-octet | field set to the color (MAC address) of the port and the 3-octet | |||
| local discriminator field set to 0xFFFFFF. | local discriminator field set to 0xFFFFFF. | |||
| The ESI label extended community (Section 7.5 of [RFC7432]) is not | The ESI label extended community (Section 7.5 of [RFC7432]) is not | |||
| relevant to Grouping Ethernet A-D per ES route. The label value is | relevant to Grouping Ethernet A-D per ES route. The label value is | |||
| skipping to change at line 703 ¶ | skipping to change at line 699 ¶ | |||
| +-----+ | | | | +-------+ | +-----+ | | | | +-------+ | |||
| +-----+ +---+ | +-----+ +---+ | |||
| /\ /\ /\ | /\ /\ /\ | |||
| || || || | || || || | |||
| A C E | A C E | |||
| Figure 3: Failure Scenarios A, B, C, D, and E | Figure 3: Failure Scenarios A, B, C, D, and E | |||
| 5.1. EVC Failure Handling for Single-Active vES in EVPN | 5.1. EVC Failure Handling for Single-Active vES in EVPN | |||
| In [RFC7432], when a DF PE connected to a Single-Active multi-homed | In [RFC7432], when a DF PE connected to a Single-Active multihomed ES | |||
| Ethernet Segment loses connectivity to the segment, due to link or | loses connectivity to the segment, due to link or port failure, it | |||
| port failure, it signals the remote PEs to invalidate all MAC | signals the remote PEs to invalidate all MAC addresses associated | |||
| addresses associated with that Ethernet Segment. This is done by | with that ES. This is done by means of a mass-withdraw message, by | |||
| means of a mass-withdraw message, by withdrawing the Ethernet A-D per | withdrawing the Ethernet A-D per ES route. It should be noted that | |||
| ES route. It should be noted that for dual-homing use cases where | for dual-homing use cases where there is only a single backup path, | |||
| there is only a single backup path, MAC invalidating can be avoided | MAC invalidating can be avoided by the remote PEs as they can update | |||
| by the remote PEs as they can update their next hop associated with | their next hop associated with the affected MAC entries to the backup | |||
| the affected MAC entries to the backup path per the procedure | path per the procedure described in Section 8.2 of [RFC7432]. | |||
| described in Section 8.2 of [RFC7432]. | ||||
| In case of an EVC failure that impacts a single vES, this same EVPN | In case of an EVC failure that impacts a single vES, this same EVPN | |||
| procedure is used. In this case, the mass withdraw is conveyed by | procedure is used. In this case, the mass withdraw is conveyed by | |||
| withdrawing the Ethernet A-D per vES route carrying the vESI | withdrawing the Ethernet A-D per vES route carrying the vESI | |||
| representing the failed EVC. Upon receiving this message, the remote | representing the failed EVC. Upon receiving this message, the remote | |||
| PEs perform the same procedures outlined in Section 8.2 of [RFC7432]. | PEs perform the same procedures outlined in Section 8.2 of [RFC7432]. | |||
| 5.2. EVC Failure Handling for a Single-Active vES in PBB-EVPN | 5.2. EVC Failure Handling for a Single-Active vES in PBB-EVPN | |||
| In [RFC7432], when a PE connected to a Single-Active Ethernet Segment | In [RFC7432], when a PE connected to a Single-Active ES loses | |||
| loses connectivity to the segment, due to link or port failure, it | connectivity to the segment, due to link or port failure, it signals | |||
| signals the remote PE to flush all C-MAC addresses associated with | the remote PE to flush all C-MAC addresses associated with that ES. | |||
| that Ethernet Segment. This is done by updating the advertised B-MAC | This is done by updating the advertised B-MAC route's MAC Mobility | |||
| route's MAC Mobility Extended Community. | extended community. | |||
| In case of an EVC failure that impacts a single vES, if the above | In case of an EVC failure that impacts a single vES, if the above | |||
| PBB-EVPN procedure is used, it results in excessive C-MAC flushing | PBB-EVPN procedure is used, it results in excessive C-MAC flushing | |||
| because a single physical port can support a large number of EVCs | because a single physical port can support a large number of EVCs | |||
| (and their associated vESes); therefore, updating the advertised | (and their associated vESes); therefore, updating the advertised | |||
| B-MAC corresponding to the physical port, with MAC Mobility Extended | B-MAC corresponding to the physical port, with MAC Mobility extended | |||
| Community, will result in flushing C-MAC addresses not just for the | community, will result in flushing C-MAC addresses not just for the | |||
| impacted EVC but for all other EVCs on that port. | impacted EVC but for all other EVCs on that port. | |||
| To reduce the scope of C-MAC flushing to only the impacted service | To reduce the scope of C-MAC flushing to only the impacted service | |||
| instances (the service instance(s) impacted by the EVC failure), the | instances (the service instance(s) impacted by the EVC failure), the | |||
| PBB-EVPN C-MAC flushing needs to be adapted on a per-service-instance | PBB-EVPN C-MAC flushing needs to be adapted on a per-service-instance | |||
| basis (i.e., per I-SID). [RFC9541] introduces a B-MAC/I-SID route | basis (i.e., per I-SID). [RFC9541] introduces a B-MAC/I-SID route | |||
| where the existing PBB-EVPN B-MAC route is modified to carry an I-SID | where the existing PBB-EVPN B-MAC route is modified to carry an | |||
| in the "Ethernet Tag ID" field instead of NULL value. To the | I-SID, instead of a NULL value, in the "Ethernet Tag ID" field. To | |||
| receiving PE, this field indicates flushing all C-MAC addresses | the receiving PE, this field indicates flushing all C-MAC addresses | |||
| associated with that I-SID for that B-MAC. This C-MAC flushing | associated with that I-SID for that B-MAC. This C-MAC flushing | |||
| mechanism per I-SID SHOULD be used in case of an EVC failure | mechanism per I-SID SHOULD be used in case of an EVC failure | |||
| impacting a vES. Since an EVC typically maps to a single broadcast | impacting a vES. Since an EVC typically maps to a single broadcast | |||
| domain and thus a single service instance, the affected PE only needs | domain and thus a single service instance, the affected PE only needs | |||
| to advertise a single B-MAC/I-SID route. However, if the failed EVC | to advertise a single B-MAC/I-SID route. However, if the failed EVC | |||
| carries multiple VLANs each with its own broadcast domain, then the | carries multiple VLANs each with its own broadcast domain, then the | |||
| affected PE needs to advertise multiple B-MAC/I-SID routes -- one for | affected PE needs to advertise multiple B-MAC/I-SID routes, i.e., one | |||
| each VLAN (broadcast domain) -- i.e., one for each I-SID. Each | route for each VLAN (broadcast domain), meaning one route for each | |||
| B-MAC/I-SID route basically instructs the remote PEs to perform | I-SID. Each B-MAC/I-SID route basically instructs the remote PEs to | |||
| flushing for C-MACs corresponding to the advertised B-MAC only for | perform flushing for C-MACs corresponding to the advertised B-MAC | |||
| the advertised I-SID. | only for the advertised I-SID. | |||
| The C-MAC flushing based on a B-MAC/I-SID route works fine when there | The C-MAC flushing based on a B-MAC/I-SID route works fine when there | |||
| are only a few VLANs (e.g., I-SIDs) per EVC. However, if the number | are only a few VLANs (e.g., I-SIDs) per EVC. However, if the number | |||
| of I-SIDs associated with a failed EVC is large, then it is | of I-SIDs associated with a failed EVC is large, then it is | |||
| RECOMMENDED to assign a B-MAC per vES, and upon EVC failure, the | RECOMMENDED to assign a B-MAC per vES, and upon EVC failure, the | |||
| affected PE simply withdraws this B-MAC message to other PEs. | affected PE simply withdraws this B-MAC message to other PEs. | |||
| 5.3. Port Failure Handling for Single-Active vESes in EVPN | 5.3. Port Failure Handling for Single-Active vESes in EVPN | |||
| When many EVCs are aggregated via a single physical port on a PE, | When many EVCs are aggregated via a single physical port on a PE, | |||
| skipping to change at line 789 ¶ | skipping to change at line 784 ¶ | |||
| for that color, which represents all the vESes associated with | for that color, which represents all the vESes associated with | |||
| the port. | the port. | |||
| 3. Upon a port failure (e.g., an ENNI failure), the PE MAY send a | 3. Upon a port failure (e.g., an ENNI failure), the PE MAY send a | |||
| mass-withdraw message by withdrawing the Grouping Ethernet A-D | mass-withdraw message by withdrawing the Grouping Ethernet A-D | |||
| per ES route. | per ES route. | |||
| 4. When this message is received, the remote PE MAY detect the | 4. When this message is received, the remote PE MAY detect the | |||
| special vES mass-withdraw message by identifying the Grouping | special vES mass-withdraw message by identifying the Grouping | |||
| Ethernet A-D per ES route. The remote PEs MAY then access the | Ethernet A-D per ES route. The remote PEs MAY then access the | |||
| list created in (1) of the vESes for the specified color and | list of vESes created per item 1 for the specified color and | |||
| locally initiate MAC address invalidating procedures for each of | locally initiate MAC address invalidating procedures for each of | |||
| the vESes in the list. | the vESes in the list. | |||
| In scenarios where a logical ENNI is used, the above procedure | In scenarios where a logical ENNI is used, the above procedure | |||
| equally applies. The logical ENNI is represented by a Grouping | equally applies. The logical ENNI is represented by a Grouping | |||
| Ethernet A-D per ES where the Type 3 ESI and the 6 bytes used in the | Ethernet A-D per ES route where the Type 3 ESI and the 6 bytes used | |||
| ENNI's ESI MAC address field are used as a color for the vESes as | in the ENNI's ESI MAC address field are used as a color for the vESes | |||
| described above and in Section 4.2.1. | as described above and in Section 4.2.1. | |||
| 5.4. Port Failure Handling for Single-Active vESes in PBB-EVPN | 5.4. Port Failure Handling for Single-Active vESes in PBB-EVPN | |||
| When many EVCs are aggregated via a single physical port on a PE, | When many EVCs are aggregated via a single physical port on a PE, | |||
| where each EVC corresponds to a vES, then the port failure impacts | where each EVC corresponds to a vES, then the port failure impacts | |||
| all the associated EVCs and their corresponding vESes. If the number | all the associated EVCs and their corresponding vESes. If the number | |||
| of EVCs corresponding to the Single-Active vESes for that physical | of EVCs corresponding to the Single-Active vESes for that physical | |||
| port is in the thousands, then thousands of service instances | port is in the thousands, then thousands of service instances | |||
| (I-SIDs) are impacted. In such failure scenarios, the following two | (I-SIDs) are impacted. In such failure scenarios, the following two | |||
| MAC flushing mechanisms per [RFC7623] can be performed. | MAC flushing mechanisms per [RFC7623] can be performed. | |||
| 1. If the MAC address of the physical port is used for PBB | 1. If the MAC address of the physical port is used for PBB | |||
| encapsulation as B-MAC SA, then upon the port failure, the PE | encapsulation as B-MAC SA, then upon the port failure, the PE | |||
| MUST use the EVPN MAC route withdrawal message to signal the | MUST use the EVPN MAC route withdrawal message to signal the | |||
| flush. | flush. | |||
| 2. If the PE's shared MAC address is used for PBB encapsulation as | 2. If the PE's shared MAC address is used for PBB encapsulation as | |||
| B-MAC SA, then upon the port failure, the PE MUST re-advertise | B-MAC SA, then upon the port failure, the PE MUST re-advertise | |||
| this MAC route with the MAC Mobility Extended Community to signal | this MAC route with the MAC Mobility extended community to signal | |||
| the flush. | the flush. | |||
| The first method is recommended because it reduces the scope of | The first method is recommended because it reduces the scope of | |||
| flushing the most. | flushing the most. | |||
| As noted above, the advertisement of the extended community along | As noted above, the advertisement of the extended community along | |||
| with the B-MAC route for coloring purposes is optional and only | with the B-MAC route for coloring purposes is optional and only | |||
| recommended when there are many vESes per physical port and each vES | recommended when there are many vESes per physical port and each vES | |||
| is associated with a very large number of service instances (i.e., a | is associated with a very large number of service instances (i.e., a | |||
| large number of I-SIDs). | large number of I-SIDs). | |||
| skipping to change at line 910 ¶ | skipping to change at line 905 ¶ | |||
| +----+ | | +---+ | +----+ | | +---+ | |||
| +-----+ | +-----+ | |||
| Figure 4: Fast Convergence Upon ENNI Failure | Figure 4: Fast Convergence Upon ENNI Failure | |||
| As discussed in Section 4.2, it is highly desirable to have a mass- | As discussed in Section 4.2, it is highly desirable to have a mass- | |||
| withdraw mechanism similar to the one in [RFC7432]. Although such an | withdraw mechanism similar to the one in [RFC7432]. Although such an | |||
| optimization is desirable, it is OPTIONAL. If the optimization is | optimization is desirable, it is OPTIONAL. If the optimization is | |||
| implemented, the following procedures are used: | implemented, the following procedures are used: | |||
| 1. When a vES is configured, the PE advertises the Ethernet Segment | 1. When a vES is configured, the PE advertises the ES route for this | |||
| route for this vES with a color that corresponds to the | vES with a color that corresponds to the associated physical | |||
| associated physical port. | port. | |||
| 2. All receiving PEs within the redundancy group record this color | 2. All receiving PEs within the redundancy group record this color | |||
| and compile a list of vESes associated with it. | and compile a list of vESes associated with it. | |||
| 3. Additionally, the PE advertises a Grouping Ethernet A-D per ES | 3. Additionally, the PE advertises a Grouping Ethernet A-D per ES | |||
| for EVPN, and a Grouping B-MAC for PBB-EVPN, which corresponds to | route for EVPN, and a Grouping B-MAC route for PBB-EVPN, which | |||
| the color and vES grouping. | corresponds to the color and vES grouping. | |||
| 4. In the event of a port failure, such as an ENNI failure, the PE | 4. In the event of a port failure, such as an ENNI failure, the PE | |||
| withdraws the previously advertised Grouping Ethernet A-D per ES | withdraws the previously advertised Grouping Ethernet A-D per ES | |||
| or Grouping B-MAC associated with the failed port. The PE should | route or Grouping B-MAC route associated with the failed port. | |||
| prioritize sending these Grouping route withdrawal messages over | The PE should prioritize sending these Grouping route withdrawal | |||
| the withdrawal of individual vES routes affected by the failure. | messages over the withdrawal of individual vES routes affected by | |||
| For instance, as depicted in Figure 4, when the physical port | the failure. For instance, as depicted in Figure 4, when the | |||
| associated with ENNI3 fails on PE2, it withdraws the previously | physical port associated with ENNI3 fails on PE2, it withdraws | |||
| advertised Grouping Ethernet A-D per ES route. Upon receiving | the previously advertised Grouping Ethernet A-D per ES route. | |||
| this withdrawal message, other multi-homing PEs (such as PE1 and | Upon receiving this withdrawal message, other multihoming PEs | |||
| PE3) recognize that the vESes associated with CE1 and CE3 are | (such as PE1 and PE3) recognize that the vESes associated with | |||
| impacted, based on the associated color, and thus initiate the DF | CE1 and CE3 are impacted, based on the associated color, and thus | |||
| election procedure for these vESes. Furthermore, upon receiving | initiate the DF election procedure for these vESes. Furthermore, | |||
| this withdrawal message, remote PEs (such as PE4) initiate the | upon receiving this withdrawal message, remote PEs (such as PE4) | |||
| failover procedure for the vESes associated with CE1 and CE3 and | initiate the failover procedure for the vESes associated with CE1 | |||
| switch to the other PE for each vES redundancy group. | and CE3 and switch to the other PE for each vES redundancy group. | |||
| 5. On reception of Grouping Ethernet A-D per ES or Grouping B-MAC | 5. On reception of Grouping Ethernet A-D per ES route or Grouping | |||
| route withdrawal, other PEs in the redundancy group initiate DF | B-MAC route withdrawal, other PEs in the redundancy group | |||
| election procedures across all their affected vESes. | initiate DF election procedures across all their affected vESes. | |||
| 6. The PE with the physical port failure (ENNI failure) sends a vES | 6. The PE with the physical port failure (ENNI failure) sends a vES | |||
| route withdrawal for every impacted vES. Upon receiving these | route withdrawal for every impacted vES. Upon receiving these | |||
| messages, the other PEs clear up their BGP tables. It should be | messages, the other PEs clear up their BGP tables. It should be | |||
| noted that the vES route withdrawal messages are not used for | noted that the vES route withdrawal messages are not used for | |||
| executing DF election procedures by the receiving PEs when | executing DF election procedures by the receiving PEs when | |||
| Grouping Ethernet A-D per ES or Grouping B-MAC withdrawal has | Grouping Ethernet A-D per ES route or Grouping B-MAC route | |||
| been previously received. | withdrawal has been previously received. | |||
| 6. Security Considerations | 6. Security Considerations | |||
| All the security considerations in [RFC7432] and [RFC7623] apply | All the security considerations in [RFC7432] and [RFC7623] apply | |||
| directly to this document because this document leverages the control | directly to this document because this document leverages the control | |||
| and data plane procedures described in those documents. | and data plane procedures described in those documents. | |||
| This document does not introduce any new security considerations | This document does not introduce any new security considerations | |||
| beyond that of [RFC7432] and [RFC7623] because advertisements and the | beyond that of [RFC7432] and [RFC7623] because advertisements and the | |||
| processing of Ethernet Segment routes for vES in this document follow | processing of ES routes for vES in this document follow that of | |||
| that of physical ES in those RFCs. | physical ES in those RFCs. | |||
| 7. IANA Considerations | 7. IANA Considerations | |||
| This document has no IANA actions. | This document has no IANA actions. | |||
| 8. References | 8. References | |||
| 8.1. Normative References | 8.1. Normative References | |||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| skipping to change at line 1013 ¶ | skipping to change at line 1008 ¶ | |||
| [RFC9541] Rabadan, J., Ed., Sathappan, S., Nagaraj, K., Miyake, M., | [RFC9541] Rabadan, J., Ed., Sathappan, S., Nagaraj, K., Miyake, M., | |||
| and T. Matsuda, "Flush Mechanism for Customer MAC | and T. Matsuda, "Flush Mechanism for Customer MAC | |||
| Addresses Based on Service Instance Identifier (I-SID) in | Addresses Based on Service Instance Identifier (I-SID) in | |||
| Provider Backbone Bridging EVPN (PBB-EVPN)", RFC 9541, | Provider Backbone Bridging EVPN (PBB-EVPN)", RFC 9541, | |||
| DOI 10.17487/RFC9541, March 2024, | DOI 10.17487/RFC9541, March 2024, | |||
| <https://www.rfc-editor.org/info/rfc9541>. | <https://www.rfc-editor.org/info/rfc9541>. | |||
| 8.2. Informative References | 8.2. Informative References | |||
| [MEF63] Metro Ethernet Forum, "Subscriber Ethernet Services | [MEF63] Metro Ethernet Forum, "Subscriber Ethernet Services | |||
| Definitions", MEF Standard, MEF 6.3, November 2019. | Definitions", MEF Standard, MEF 6.3, November 2019, | |||
| <https://www.mef.net/resources/mef-6-3-subscriber- | ||||
| ethernet-service-definitions>. | ||||
| [RFC4377] Nadeau, T., Morrow, M., Swallow, G., Allan, D., and S. | [RFC4377] Nadeau, T., Morrow, M., Swallow, G., Allan, D., and S. | |||
| Matsushima, "Operations and Management (OAM) Requirements | Matsushima, "Operations and Management (OAM) Requirements | |||
| for Multi-Protocol Label Switched (MPLS) Networks", | for Multi-Protocol Label Switched (MPLS) Networks", | |||
| RFC 4377, DOI 10.17487/RFC4377, February 2006, | RFC 4377, DOI 10.17487/RFC4377, February 2006, | |||
| <https://www.rfc-editor.org/info/rfc4377>. | <https://www.rfc-editor.org/info/rfc4377>. | |||
| [RFC6310] Aissaoui, M., Busschbach, P., Martini, L., Morrow, M., | [RFC6310] Aissaoui, M., Busschbach, P., Martini, L., Morrow, M., | |||
| Nadeau, T., and Y. Stein, "Pseudowire (PW) Operations, | Nadeau, T., and Y. Stein, "Pseudowire (PW) Operations, | |||
| Administration, and Maintenance (OAM) Message Mapping", | Administration, and Maintenance (OAM) Message Mapping", | |||
| skipping to change at line 1071 ¶ | skipping to change at line 1068 ¶ | |||
| Ali Sajassi | Ali Sajassi | |||
| Cisco Systems | Cisco Systems | |||
| Email: sajassi@cisco.com | Email: sajassi@cisco.com | |||
| Patrice Brissette | Patrice Brissette | |||
| Cisco Systems | Cisco Systems | |||
| Email: pbrisset@cisco.com | Email: pbrisset@cisco.com | |||
| Rick Schell | Rick Schell | |||
| Verizon | Independent | |||
| Email: richard.schell@verizon.com | Email: rick_schell@outlook.com | |||
| John E Drake | John E. Drake | |||
| Juniper | Independent | |||
| Email: jdrake@juniper.net | Email: je_drake@yahoo.com | |||
| Jorge Rabadan | Jorge Rabadan | |||
| Nokia | Nokia | |||
| Email: jorge.rabadan@nokia.com | Email: jorge.rabadan@nokia.com | |||
| End of changes. 66 change blocks. | ||||
| 166 lines changed or deleted | 163 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||