Network Working GroupR. AggarwalA. Sajassi INTERNET-DRAFTArktanCisco Category: Standards TrackExpires: August 25, 2012 A. Sajassi Cisco J. Uttaro W. Henderickx AT&T Alcatel-Lucent A. IsaacR. Aggarwal N. BitarBloombergArktan Verizon W. Henderickx S. Boutros F. BalusR. ShekharK. Patel Alcatel-Lucent S. Salam Cisco Aldrin Isaac Bloomberg J. Drake R. Shekhar J. Uttaro Juniper NetworksS. Boutros K. Patel Cisco February 24,AT&T Expires: January 14, 2012 July 14, 2012 BGP MPLS Based Ethernet VPNdraft-ietf-l2vpn-evpn-00draft-ietf-l2vpn-evpn-01 Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/1id-abstracts.html The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html Copyright and License Notice Copyright (c) 2012 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 (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Abstract This document describes procedures for BGP MPLS based Ethernet VPNs (E-VPN). Table of Contents 1. Specification of requirements . . . . . . . . . . . . . . . . .45 2. Contributors . . . . . . . . . . . . . . . . . . . . . . . . .45 3. Introduction . . . . . . . . . . . . . . . . . . . . . . . . .45 4. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . .45 5. BGP MPLS Based E-VPN Overview . . . . . . . . . . . . . . . . .46 6. Ethernet SegmentIdentifier. . . . . . . . . . . . . . . . . .6. . . . . 7 7. Ethernet Tag . . . . . . . . . . . . . . . . . . . . . . . . . 8 7.1 VLAN Based Service Interface . . . . . . . . . . . . . . . . 9 7.2 VLAN Bundle Service Interface . . . . . . . . . . . . . . . 9 7.2.1 Port Based Service Interface . . . . . . . . . . . . . . 9 7.3 VLAN Aware Bundle Service Interface . . . . . . . . . . . . 9 8. BGP E-VPN NLRI . . . . . . . . . . . . . . . . . . . . . . . .7 7.1.10 8.1. Ethernet Auto-Discovery Route . . . . . . . . . . . . . . .8 7.2.10 8.2. MAC Advertisement Route . . . . . . . . . . . . . . . . .8 7.3.11 8.3. Inclusive Multicast Ethernet Tag Route . . . . . . . . . .9 8.11 8.4 Ethernet Segment Route . . . . . . . . . . . . . . . . . . . 12 8.5 ESI MPLS Label Extended Community . . . . . . . . . . . . . 12 8.6 ES-Import Extended Community . . . .9 9. Auto-Discovery. . . . . . . . . . . . 13 8.7 MAC Mobility Extended Community . . . . . . . . . . . .9 10. Auto-Discovery of Ethernet Tags on. . 13 9. Multi-homing Functions . . . . . . . . . . . . . . . . . . . . 13 9.1 Multi-homed EthernetSegmentsSegment Auto-Discovery . . . . .10 10.1.. . . 13 9.1.1 Constructing the EthernetA-DSegment Route . . . . . . . . 14 9.2 Fast Convergence . . .10 10.1.1.. . . . . . . . . . . . . . . . . . . 14 9.2.1 Constructing the Ethernet A-D Route perE-VPNEthernet Segment . . . . . . . . . . . . .11 10.1.1.1.. . . . . . . . . . . 15 9.2.1.1. Ethernet A-D Route Targets . . . . . . . . . . . .12 10.1.2. Ethernet A-D Route per Ethernet Segment15 9.3 Split Horizon . . . . . . .12 10.1.2.1. Ethernet A-D Route Targets. . . . . . . . . . . .13 10.2. Motivations for Ethernet A-D Route per Ethernet Segment.13 10.2.1. Multi-Homing. . . 16 9.3.1 ESI MPLS Label Assignment . . . . . . . . . . . . . . . 16 9.3.1.1 Ingress Replication . . .14 10.2.2. Optimizing Control Plane Convergence. . . . . . . . .14 10.2.3. Reducing Number of Ethernet A-D Routes. . . . 16 9.3.1.2. P2MP MPLS LSPs . . . . . . .14 11. Determining Reachability to Unicast MAC Addresses. . . . . .14 11.1. Local Learning. . . . . 17 9.3.1.3. MP2MP LSPs . . . . . . . . . . . . . . . . .15 11.2. Remote learning. . . 18 9.4 Aliasing . . . . . . . . . . . . . . . . . . .15 11.2.1. Constructing the BGP E-VPN MAC Address Advertisement.15 12. Optimizing ARP. . . . . . 18 9.4.1 Constructing the Ethernet A-D Route per EVI . . . . . . 18 9.4.1.1 Ethernet A-D Route Targets . . . . . . . . . . . . .17 13.19 9.5 Designated Forwarder Election . . . . . . . . . . . . . . .. 18 13.1.20 9.5.1 Default DF ElectionPerformed by All MESesProcedure . . . . . . . . . . . .19 13.2.. 21 9.5.2 DF ElectionPerformed Only on Multi-Homed MESeswith Service Carving . . . . . .20 14. Handling of Multi-Destination Traffic. . . . . . 21 10. Determining Reachability to Unicast MAC Addresses . . . . . . 22 10.1. Local Learning .21 14.1. Construction of the Inclusive Multicast Ethernet Tag Route. . . . . . . . . . . . . . . . . . . . . 23 10.2. Remote learning . . . . .21 14.2. P-Tunnel Identification. . . . . . . . . . . . . . . . 23 10.2.1. Constructing the BGP E-VPN MAC Address Advertisement .22 14.3. Ethernet Segment Identifier23 11. ARP andEthernet TagND . . . . . . .22 15. Processing of Unknown Unicast Packets. . . . . . . . . . . .23 15.1. Ingress Replication. . . . . . . 25 12. Handling of Multi-Destination Traffic . . . . . . . . . . . .24 15.2. P2MP MPLS LSPs26 12.1. Construction of the Inclusive Multicast Ethernet Tag Route . . . . . . . . . . . . . . . . . . . . . .24 16. Forwarding Unicast Packets. . . . 26 12.2. P-Tunnel Identification . . . . . . . . . . . . . .24 16.1. Forwarding packets received from a CE. . . 27 13. Processing of Unknown Unicast Packets . . . . . . .24 16.2. Forwarding packets received from a remote MES. . . . . 28 13.1. Ingress Replication .25 16.2.1. Unknown Unicast Forwarding. . . . . . . . . . . . . .25 16.2.2. Known Unicast Forwarding. . . . 28 13.2. P2MP MPLS LSPs . . . . . . . . . . .26 17. Split Horizon. . . . . . . . . . . 29 14. Forwarding Unicast Packets . . . . . . . . . . . . .26 17.1. ESI MPLS Label: Ingress Replication. . . . . 29 14.1. Forwarding packets received from a CE . . . . . .26 17.2. ESI MPLS Label: P2MP MPLS LSPs. . . . 29 14.2. Forwarding packets received from a remote PE . . . . . . . 30 14.2.1. Unknown Unicast Forwarding . . .27 17.3. ESI MPLS Label: MP2MP LSPs. . . . . . . . . . . 30 14.2.2. Known Unicast Forwarding . . . . .28 18.. . . . . . . . . . 31 15. Load Balancing of UnicastPacketsFrames . . . . . . . . . . . . . .28 18.1.. 31 15.1. Load balancing of traffic from anMESPE to remote CEs . . .28 18.2.. 31 15.1.1 Active-Standby Redundancy Mode . . . . . . . . . . . . 31 15.1.2 All-Active Redundancy Mode . . . . . . . . . . . . . . 32 15.2. Load balancing of traffic between anMESPE and a local CE .30 18.2.1.. 33 15.2.1. Data plane learning . . . . . . . . . . . . . . . . .31 18.2.2.34 15.2.2. Control plane learning . . . . . . . . . . . . . . . .31 19.34 16. MACMoves .Mobility . . . . . . . . . . . . . . . . . . . . . . . . .31 20.34 17. Multicast . . . . . . . . . . . . . . . . . . . . . . . . . .32 20.1.36 17.1. Ingress Replication . . . . . . . . . . . . . . . . . . .32 20.2.36 17.2. P2MP LSPs . . . . . . . . . . . . . . . . . . . . . . . .32 20.3.36 17.3. MP2MP LSPs . . . . . . . . . . . . . . . . . . . . . . . .32 20.3.1.36 17.3.1. Inclusive Trees . . . . . . . . . . . . . . . . . . .33 20.3.2.36 17.3.2. Selective Trees . . . . . . . . . . . . . . . . . . .33 20.4.37 17.4. Explicit Tracking . . . . . . . . . . . . . . . . . . . .34 21.38 18. Convergence . . . . . . . . . . . . . . . . . . . . . . . . .34 21.1.38 18.1. Transit Link and Node Failures betweenMESesPEs . . . . . . .34 21.2. MES. 38 18.2. PE Failures . . . . . . . . . . . . . . . . . . . . . . .34 21.2.1.38 18.2.1. Local Repair . . . . . . . . . . . . . . . . . . . . .35 21.3. MES38 18.3. PE to CE Network Failures . . . . . . . . . . . . . . . .35 22.39 19. LACP State Synchronization . . . . . . . . . . . . . . . . . .35 23.39 20. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . .36 24.40 21. References . . . . . . . . . . . . . . . . . . . . . . . . . .37 25.40 21. Author's Address . . . . . . . . . . . . . . . . . . . . . . .3741 1. Specification of requirements The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119]. 2. Contributors In addition to the authors listed above, the following individuals also contributed to this document: Quaizar Vohra Kireeti Kompella Apurva Mehta Nadeem Mohammad Juniper NetworksSamer SalamClarence Filsfils Dennis Cai Cisco 3. Introduction This document describes procedures for BGP MPLS based Ethernet VPNs (E-VPN). The procedures described here are intended to meet the requirements specified in [E-VPN-REQ]. Please refer to [E-VPN-REQ] for the detailed requirements and motivation.This document proposes an MPLS based technology, referred to as MPLS- based E-VPN (E-VPN).E-VPN requires extensions to existing IP/MPLS protocols as described in this document. In addition to these extensions E-VPN uses several building blocks from existing MPLS technologies. 4. Terminology CE: Customer Edge device e.g., host or router or switchMES: MPLS Edge Switch EVI:E-VPN InstanceESI:(EVI): An E-VPN routing and forwarding instance on a PE. Ethernet segment identifierLACP:(ESI): If a CE is multi-homed to two or more PEs, the set of Ethernet links that attaches the CE to the PEs is an 'Ethernet segment'. Ethernet segments MUST have a unique non- zero identifier, the 'Ethernet Segment Identifier'. Ethernet Tag: An Ethernet Tag identifies a particular broadcast domain, e.g., a VLAN. An E-VPN instance consists of one or more broadcast domains. Ethernet tag(s) are assigned to the broadcast domains of a given E-VPN instance by the provider of that E-VPN, and each PE in that E-VPN instance performs a mapping between broadcast domain identifier(s) understood by each of its attached CEs and the corresponding Ethernet tag. Link Aggregation Control ProtocolMP2MP:(LACP): Multipoint to MultipointP2MP:(MP2MP): Point to MultipointP2P:(P2MP): Point to Point (P2P): 5. BGP MPLS Based E-VPN Overview This section provides an overview of E-VPN. An E-VPN comprises CEs that are connected toPEs, or MPLS Edge Switches (MES),PEs that form the edge of the MPLS infrastructure. A CE may be a host, a router or a switch. TheMPLS Edge SwitchesPEs providelayer 2virtualbridgeLayer 2 bridged connectivity between the CEs. There may be multiple E-VPNs in the provider's network.An E-VPN routing and forwarding instance on an MES is referred to as an E-VPN Instance (EVI).TheMESes maybePEs may be connected by an MPLS LSP infrastructure which provides the benefits of MPLSLSPtechnology such as fast-reroute, resiliency, etc. TheMESesPEs may also be connected by an IP infrastructure in which case IP/GRE tunnelingisor other IP tunneling can be used between theMESes.PEs. The detailed procedures in this version of this document are specified only for MPLS LSPs as the tunneling technology. However these procedures are designed to be extensible toIP/GREIP tunneling as the PSN tunneling technology. In an E-VPN, MAC learning betweenMESesPEs occurs not in the data plane (as happens with traditional bridging) but in the control plane. Control plane learning offers greater control over the MAC learning process, such as restricting who learns what, and the ability to apply policies. Furthermore, the control plane chosen for advertising MAC reachability information is multi-protocol (MP) BGP(very similar(similar to IP VPNs (RFC4364)), providing4364)). This provides greaterscale,scalability and the ability to preserve the "virtualization" or isolation of groups of interacting agents (hosts, servers,Virtual Machines)virtual machines) from each other. InE-VPNs MESesE-VPN, PEs advertise the MAC addresses learned from the CEs that are connected to them, along with an MPLS label, to otherMESesPEs in the control plane using MP-BGP. Control plane learning enables load balancing of traffic to and from CEs that are multi- homed to multipleMESes.PEs. This is in addition to load balancing across the MPLS core via multiple LSPsbetwenbetween the same pair ofMESes.PEs. In other words it allows CEs to connect to multiple active points of attachment. It also improves convergence times in the event of certain network failures. However, learning betweenMESesPEs and CEs is done by the method best suited to the CE: data plane learning, IEEE 802.1x, LLDP, 802.1aq, ARP, management plane or other protocols. It is a local decision as to whether the Layer 2 forwarding table ona MESan PE is populated with all the MACdestinationsdestination addresses known to the controlplaneplane, or whether theMESPE implements a cache based scheme. For instance the MAC forwarding table may be populated only with the MAC destinations of the active flows transiting a specificMES.PE. The policy attributes ofanE-VPN are very similar to those ofan IP VPN.IP-VPN. AnE-VPN instanceEVI requires a Route-Distinguisher (RD) andan E- VPN requiresone or moreRoute-TargetsRoute- Targets (RTs). A CE attaches to anE- VPNE-VPN instance (EVI) on anMES,PE, on an Ethernet interface which may be configured for one or more Ethernet Tags, e.g., VLANs. Some deployment scenarios guarantee uniqueness of VLANs across E-VPNs: all points of attachment of a givenE-VPNEVI use the same VLAN, and no otherE-VPNEVI uses this VLAN. This document refers to this case as a "UniqueSingleVLAN E-VPN" and describes simplified procedures to optimize for it. 6. Ethernet SegmentIdentifierIf a CE is multi-homed to two or moreMESes,PEs, the set of Ethernet links constitutes an "Ethernetsegment".Segment". An Ethernet segment may appear to the CE as a Link Aggregation Group (LAG). Ethernet segments have an identifier, called the "Ethernet Segment Identifier" (ESI) which is encoded as a ten octets integer. A single-homed CE is considered to be attached to an Ethernet segment with ESI 0. Otherwise, an Ethernet segment MUST have a unique non-zero ESI. The ESI can be assigned using various mechanisms: 1. The ESI may be configured. For instance when E-VPNs are used to provide a VPLS service the ESI is fairly analogous to the Multi- homing site ID in [BGP-VPLS-MH]. 2. If IEEE 802.1AX LACP isused,used between theMESesPEs and CEs, then the ESI is determined from LACP by concatenating the following parameters: + CE LACP System Identifier comprised of twobytesoctets of System Priority and sixbytesoctets of System MAC address, where the System Priority is encoded in the most significant twobytes.octets. The CE LACP identifier MUST be encoded in the high order eightbytesoctets of the ESI. + CE LACP twobyteoctets Port Key. The CE LACP port key MUST be encoded in the low order twobytesoctets of theESIESI. As far as the CE isconcernedconcerned, it would treat the multipleMESesPEs that it is connected to as the same switch. This allows the CE to aggregate links that are attached to differentMESesPEs in the same bundle. 3. If LLDP isused,used between theMESesPEs and CEs that are hosts, then the ESI is determined by LLDP. The ESI will be specified in a following version. 4. In the case of indirectly connected hosts via a bridged LAN between the CEs and theMESes,PEs, the ESI is determined based on the Layer 2 bridge protocol as follows: IfSTPMST is used in the bridged LAN then the value of the ESI is derived by listening to BPDUs on the Ethernet segment. To achieve this theMESPE is not required to runSTP.MST. However theMESPE must learn theSwitch ID, MSTP ID andRoot BridgeIDMAC address and Bridge Priority of the root of the Internal Spanning Tree (IST) by listening toSTPthe BPDUs. The ESI is constructed as follows:{Switch ID (6 bits), MSTP ID (6 bits),{Bridge Priority (16 bits) , Root BridgeIDMAC Address (48 bits)} 7. Ethernet Tag An Ethernet Tag identifies a particular broadcast domain, e.g. a VLAN, in an EVI. An EVI consists of one or more broadcast domains. Ethernet Tags are assigned to the broadcast domains of a given EVI by the provider of the E-VPN service. Each PE, in a given EVI, performs a mapping between the Ethernet Tag and the corresponding broadcast domain identifier(s) understood by each of its attached CEs (e.g. CE VLAN Identifiers or CE-VIDs). If the broadcast domain identifiers(s) are understood consistently by all of the CEs in an EVI, the broadcast domain identifier(s) MAY be used as the corresponding Ethernet Tag(s). In other words, the Ethernet Tag ID assigned by the provider is numerically equal to the broadcast domain identifier (e.g., CE-VID = Ethernet Tag). Further, some deployment scenarios guarantee uniqueness of broadcast domain identifiers across all EVIs; all points of attachment of a given EVI use the same broadcast domain identifier(s) and no other EVI uses these broadcast domain identifier(s). This allows the RT(s) for each EVI to be derived automatically, as described in section 9.4.1.1.1 "Auto-Derivation from the Ethernet Tag ID". The following subsections discuss the relationship between Ethernet Tags, EVIs and broadcast domain identifiers as well as the setting of the Ethernet Tag Identifier, in the various E-VPN BGP routes (defined in section 8), for the different types of service interfaces described in [EVPN-REQ]. 7.1 VLAN Based Service Interface With this service interface, there is a one-to-one mapping between the broadcast domain identifier understood by a CE on a port (e.g. CE-VID) and an EVI. Furthermore, there is a single bridge domain per PE for the EVI. Different CEs connected to different PE ports MAY use different broadcast domain identifiers (e.g. CE-VIDs) for the same EVI. If said identifiers are different, the frames SHOULD remain tagged with the originating CE's broadcast domain identifier (e.g. CE-VID). When the CE broadcast domain identifiers are not consistent, a tag translation function MUST be supported in the data path and MUST be performed on the disposition PE. The Ethernet Tag Identifier in all E-VPN routes MUST be set to 0. 7.2 VLAN Bundle Service Interface With this service interface, there is a many-to-one mapping between the broadcast domain identifier understood by a CE on a port (e.g. CE-VID) and an EVI. Furthermore, there is a single bridge domain per PE for the EVI. Different CEs connected to different PE ports MUST use the same broadcast domain identifiers (e.g. CE-VIDs) for the same EVI. The MPLS encapsulated frames MUST remain tagged with the originating CE's broadcast domain identifier (e.g. CE-VID). Tag translation is NOT permitted. The Ethernet Tag Identifier in all E- VPN routes MUST be set to 0. 7.2.1 Port Based Service Interface This service interface is a special case of the VLAN Bundle service interface, where all of the VLANs on the port are part of the same service and map to the same bundle. The procedures are identical to those described in section 7.2. 7.3 VLAN Aware Bundle Service Interface With this service interface, there is a many-to-one mapping between the broadcast domain identifier understood by a CE on a port (e.g. CE-VID) and an EVI. Furthermore, there are multiple bridge domains per PE for the EVI: one broadcast domain per CE broadcast domain identifier. In the case where the CE broadcast domain identifiers are not consistent for different CEs, a normalized Ethernet Tag MUST be carried in the MPLS encapsulated frames and a tag translation function MUST be supported in the data path. This translation MUST be performed on both the imposition as well as the disposition PEs. The Ethernet Tag Identifier in all E-VPN routes MUST be set to the normalized Ethernet Tag assigned by the E-VPN provider. 8. BGP E-VPN NLRI This document defines a new BGP NLRI, called the E-VPN NLRI. Following is the format of the E-VPN NLRI: +-----------------------------------+ | Route Type (1 octet) | +-----------------------------------+ | Length (1 octet) | +-----------------------------------+ | Route Type specific (variable) | +-----------------------------------+ The Route Type field defines encoding of the rest of the E-VPN NLRI (Route Type specific E-VPN NLRI). The Length field indicates the length in octets of the Route Type specific field of E-VPN NLRI. This document defines the following Route Types: + 1 - Ethernet Auto-Discovery (A-D) route + 2 - MAC advertisement route + 3 - Inclusive Multicast Route +5 - Selective Multicast Auto-Discovery (A-D) Route + 64 -Leaf Auto-Discovery (A-D)Ethernet Segment Route The detailed encoding and procedures for these route types are described in subsequent sections. The E-VPN NLRI is carried in BGP [RFC4271] using BGP Multiprotocol Extensions [RFC4760] with an AFI of TBD and an SAFI of E-VPN (To be assigned by IANA). The NLRI field in the MP_REACH_NLRI/MP_UNREACH_NLRI attribute contains the E-VPN NLRI (encoded as specified above). In order for two BGP speakers to exchange labeled E-VPN NLRI, they must use BGP Capabilities Advertisement to ensure that they both are capable of properly processing such NLRI. This is done as specified in [RFC4760], by using capability code 1 (multiprotocol BGP) with an AFI of TBD and an SAFI of E-VPN.7.1.8.1. Ethernet Auto-Discovery Route A Ethernet A-D route type specific E-VPN NLRI consists of the following: +---------------------------------------+ | RD (8 octets) | +---------------------------------------+ |Ethernet Segment Identifier (10 octets)| +---------------------------------------+ | Ethernet Tag ID (4 octets) | +---------------------------------------+ | MPLS Label (3 octets) | +---------------------------------------+ For procedures and usage of this route please seethe sections on "Auto-Discovery of Ethernet Tags on Ethernet Segments", "Designated Forwarder Election"section 9.2 "Fast Convergence" and"Load Balancing". 7.2.section 9.4 "Aliasing". 8.2. MAC Advertisement Route A MAC advertisement route type specific E-VPN NLRI consists of the following: +---------------------------------------+ | RD (8 octets) | +---------------------------------------+ |Ethernet Segment Identifier (10 octets)| +---------------------------------------+ | Ethernet Tag ID (4 octets) | +---------------------------------------+ | MAC Address Length (1 octet) | +---------------------------------------+ | MAC Address (6 octets) | +---------------------------------------+ | IP Address Length (1 octet) | +---------------------------------------+ | IP Address (4 or 16 octets) | +---------------------------------------+ | MPLS Label (n * 3 octets) | +---------------------------------------+ For procedures and usage of this route please seethe sections onsection 10 "Determining Reachability to Unicast MAC Addresses" and section 15 "Load Balancing of Unicast Packets".7.3.8.3. Inclusive Multicast Ethernet Tag Route An Inclusive Multicast Ethernet Tag route type specific E-VPN NLRI consists of the following: +---------------------------------------+ | RD (8 octets) | +---------------------------------------+|Ethernet Segment Identifier (10 octets)| +---------------------------------------+| Ethernet Tag ID (4 octets) | +---------------------------------------+ | IP Address Length (1 octet) | +---------------------------------------+ | Originating Router's IP Addr | | (4 or 16 octets) | +---------------------------------------+ For procedures and usage of this route please seethe sections onsection 12 "Handling of Multi-Destination Traffic","Unknownsection 13 "Processing of Unknown Unicast Traffic" and section 17 "Multicast".8.8.4 Ethernet Segment Route The Ethernet Segment Route is encoded in the E-VPN NLRI using the Route Type value of 4. The Route Type Specific field of the NLRI is formatted as follows: +---------------------------------------+ | RD (8 octets) | +---------------------------------------+ |Ethernet Segment Identifier (10 octets)| +---------------------------------------+ For procedures and usage of this route please see section 9.5 "Designated Forwarder Election". 8.5 ESI MPLS Label Extended Community This extended community is a new transitive extended community. It may be advertised along with Ethernet Auto-Discoveryroutes. When used it carries properties associated with the ESI. Specificallyroutes and it enablessplit horizonsplit-horizon procedures for multi-homedsites. The procedures for using this Extended Community aresites as described infollowing sections.section 9.3 "Split Horizon". Each ESI MPLS Label Extended Community is encoded as a 8-octet value as follows: 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 0x44 | Sub-Type | Flags (One Octet) |Reserved=0 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reserved = 0| ESI MPLS label | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The low order bit of the flags octet is defined as the "Active- Standby" bit and may be set to 1. The other bits must be set to 0.9. Auto-Discovery E-VPN requires8.6 ES-Import Extended Community This is a new transitive extended community carried with thefollowing types of auto-discovery procedures: + E-VPN Auto-Discovery, which allows an MESEthernet Segment route. When used, it enables all the PEs connected todiscovertheother MESessame multi-homed site to import the Ethernet Segment routes. The value is derived automatically from the ESI by encoding the 6-byte MAC address portion of the ESI in theE-VPN. Each MES advertises one or more "Inclusive Multicast Tag Routes".ES-Import Extended Community. The format of this extended community is as follows: 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 0x44 | Sub-Type | ES-Import | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ES-Import Cont'd | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ For procedures and usage of this attribute, please see section 9.1 "Redundancy Group Discovery". 8.7 MAC Mobility Extended Community This extended community is a new transitive extended community. It may be advertised along with MAC Advertisement routes. The procedures foradvertising these routesusing this Extended Community are described inthesectionon "Handling of Multi- Destination Traffic". +16 "MAC Mobility". The MAC Mobility Extended Community is encoded as a 8-octet value as follows: 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 0x44 | Sub-Type | Reserved=0 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 9. Multi-homing Functions This section discusses the functions, procedures and associated BGP routes used to support multi-homing in E-VPN. This covers both multi- homed device (MHD) as well as multi-homed network (MHN) scenarios. 9.1 Multi-homed Ethernet Segment Auto-Discovery PEs connected to the same Ethernet segment can automatically discover each other with minimal to no configuration through the exchange of the EthernetTags onSegment route. 9.1.1 Constructing the EthernetSegments, inSegment Route The Route-Distinguisher (RD) MUST be aparticular E-VPN.Type 1 RD [RFC4364]. Theprocedures arevalue field comprises an IP address of the MES (typically, the loopback address) followed by 0's. The Ethernet Segment Identifier MUST be set to the ten octet ESI identifier described in section"Auto-Discovery of6. The BGP advertisement that advertises the EthernetTags onSegment route MUST also carry an ES-Import extended community attribute, as defined in section 8.6. The EthernetSegments". +Segment Route filtering MUST be done such that the Ethernet SegmentAuto-Discovery used for auto-discovery of MESesRoute is imported only by the PEs that aremulti-homedmulti- homed to the same Ethernetsegment.Segment. To that end, each PE that is connected to a particular Ethernet segment constructs an import filtering rule to import a route that carries the ES-Import extended community, constructed from the ESI. Note that the new ES-Import extended community is not the same as the Route Target Extended Community. Theprocedures are described in section "Auto-Discovery ofEthernetTagsSegment route carries this new ES-Import extended community. The PEs apply filtering on this new extended community. As a result the EthernetSegments". 10. Auto-Discovery of Ethernet Tags onSegment route is imported only by the PEs that are connected to the same EthernetSegments If a CEsegment. 9.2 Fast Convergence In E-VPN, MAC address reachability ismulti-homedlearnt via the BGP control- plane over the MPLS network. As such, in the absence of any fast protection mechanism, the network convergence time is a function of the number of MAC Advertisement routes that must be withdrawn by the PE encountering a failure. For highly scaled environments, this scheme yields slow convergence. To alleviate this, E-VPN defines a mechanism totwo or more MESes onefficiently and quickly signal, to remote PE nodes, the need to update their forwarding tables upon the occurrence of aparticularfailure in connectivity to an Ethernetsegment,segment. This is done by having eachMES MUST advertise,PE advertise an Ethernet A-D Route per Ethernet segment for each locally attached segment (refer toother MESessection 9.2.1 below for details on how this route is constructed). Upon a failure in connectivity to theE-VPN,attached segment, theinformation aboutPE withdraws the corresponding EthernetTagsA-D route. This triggers all PEs thatarereceive the withdrawal to update their next-hop adjacencies for all MAC addresses associated withthatthe Ethernet segment in question. If no other PE had advertised an Ethernet A-D route for the same segment, then the PE that received the withdrawal simply invalidates the MAC entries for that segment.AnOtherwise, the PE updates the next-hop adjacencies to point to the backup PE(s). 9.2.1 Constructing the EthernetTag identifiesA-D Route per Ethernet Segment This section describes procedures to construct the Ethernet A-D route when aparticular broadcast domain. An examplesingle such route is advertised by an PE for a given Ethernet Segment. This flavor of the Ethernet A-D route is used for fast convergence (as discussed above) as well as for advertising the ESI MPLS label used for split-horizon filtering (as discussed in section 9.2). Support of this route flavor is MANDATORY. Route-Distinguisher (RD) MUST be a Type 1 RD [RFC4364]. The value field comprises an IP address of the PE (typically, the loopback address) followed by 0. The reason for such encoding is that the RD cannot be that of a given EVI since the ESI can span across one or more EVIs. The Ethernet Segment Identifier MUST be a ten octet entity as described in section "Ethernet Segment". This document does not specify the use of the Ethernet A-D route when the Segment Identifier is set to 0. The Ethernet Tag ID MUST be set to 0. The MPLS label in the NLRI MUST be set to 0. The "ESI MPLS Label Extended Community" MUST be included in the route. If all-active multi-homing is desired, then the "Active- Standby" bit in the flags of the ESI MPLS Label Extended Community MUST be set to 0 and the MPLS label in that extended community MUST be set to aVLAN ID.valid MPLS label value. TheMES MAY advertise eachMPLS label in this Extended Community is referred to as an "ESI label". This label MUST be a downstream assigned MPLS label if the advertising PE is using ingress replication for receiving multicast, broadcast or unknown unicast traffic from other PEs. If the advertising PE is using P2MP MPLS LSPs for sending multicast, broadcast or unknown unicast traffic, then this label MUST be an upstream assigned MPLS label. The usage of this label is described in section 9.2. If the EthernetTagSegment is connected to more than one PE and active- standby multi-homing is desired, then the "Active-Standby" bit in the flags of the ESI MPLS Label Extended Community MUST be set to 1. 9.2.1.1. Ethernet A-D Route Targets The Ethernet A-D route MUST carry one or more Route Target (RT) attributes. These RTs MUST be the set of RTs associated with all the EVIs to which the Ethernet Segment,or it may advertise a wildcardcorresponding tocover allthe EthernetTags enabled on the segment. IfA-D route, belongs. 9.3 Split Horizon Consider a CE that issingle-homed,multi-homed to two or more PEs on an Ethernet segment ES1. If the CE sends a multicast, broadcast or unknown unicast packet to a particular PE, say PE1, then PE1 will forward that packet to all or subset of theMESother PEs in the EVI. In this case the PEs, other than PE1, thatitthe CE isattachedmulti-homed toMAY advertiseMUST drop theinformation about Ethernet Tags (e.g.,VLANs) onpacket and not forward back to the CE. This is referred to as "split horizon" filtering in this document. In order to achieve this split horizon function, every multicast, broadcast or unknown unicast packet is encapsulated with an MPLS label that identifies the Ethernet segment of origin (i.e. the segment from which the frame entered the E-VPN network). This label is referred to as the ESI MPLS label, and is distributed using the "Ethernet A-D route per Ethernet Segment" as per the procedures in section 9.1.1 above. This route is imported by the PEs connected to theCE. The information aboutEthernet Segment and also by the PEs that have at least one EVI in common with the Ethernet Segment in the route. As described in section 9.1.1, the route MUST carry an ESI MPLS Label Extended Community with a valid ESI MPLS label. The disposition PEs rely on the value of the ESI MPLS label to determine whether or not a flooded frame is allowed to egress a specific EthernetTagsegment. 9.3.1 ESI MPLS Label Assignment The following subsections describe the assignment procedures for the ESI MPLS label, which differ depending on the type of tunnels being used to deliver multi-destination packets in the E-VPN network. 9.3.1.1 Ingress Replication An PE that is using ingress replication for sending broadcast, multicast or unknown unicast traffic, distributes to other PEs, that belong to the Ethernet segment, aparticulardownstream assigned "ESI MPLS label" in the Ethernet A-D route. This label MUST be programmed in the platform label space by the advertising PE. Further the forwarding entry for this label must result in NOT forwarding packets received with this label onto the Ethernet segment that the label was distributed for. Consider PE1 and PE2 that are multi-homed to CE1 on ES1. Further consider that PE1 isadvertisedusing P2P or MP2P LSPs to send packets to PE2. Consider that PE1 receives a multicast, broadcast or unknown unicast packet from CE1 on VLAN1 on ESI1. In this scenario, PE2 distributes an"Ethernet Auto-DiscoveryInclusive Multicast Ethernet Tag route(Ethernet A-D route)". Thisfor VLAN1 in the associated EVI. So, when PE1 sends a multicast, broadcast or unknown unicast packet, that it receives from CE1, it MUST first push onto the MPLS label stack the ESI label that PE2 has distributed for ESI1. It MUST then push on the MPLS label distributed by PE2 in the Inclusive Multicast Ethernet Tag route for VLAN1. The resulting packet is further encapsulated in the P2P or MP2P LSP label stack required to transmit the packet to PE2. When PE2 receives this packet it determines the set of ESIs to replicate the packet to from the top MPLS label, after any P2P or MP2P LSP labels have been removed. If the next label is the ESI label assigned by PE2 for ESI1, then PE2 MUST NOT forward the packet onto ESI1. 9.3.1.2. P2MP MPLS LSPs An PE that isadvertisedusing P2MP LSPs for sending broadcast, multicast or unknown unicast traffic, distributes to other PEs, that belong to the Ethernet segment or have an E-VPNNLRI. Thein common with the EthernetTag Auto-discovery information SHOULDSegment, an upstream assigned "ESI MPLS label" in the Ethernet A-D route. This label is upstream assigned by the PE that advertises the route. This label MUST beusedprogrammed by the other PEs, that are connected toenable active-active load-balancing among MESes as describedthe ESI advertised insection "Load Balancing of Unicast Packets". Inthecase of a multi-homed CEroute, in the context label space for the advertising PE. Further the forwarding entry for thisroutelabel must result in NOT forwarding packets received with this label onto the Ethernet segment that the label was distributed for. This label MUST alsocarrybe programmed by the"ESI Label Extended Community"other PEs, that import the route but are not connected toenable split horizon as describedthe ESI advertised insection "Split Horizon". Also,theroute can be usedroute, in the context label space forDesignated Forwarder (DF) electionthe advertising PE. Further the forwarding entry for this label must be a POP with no other associated action. Consider PE1 and PE2 that are multi-homed to CE1 on ES1. Also consider PE3 that is in the same EVI asdescribedone of the EVIs to which ES1 belongs. Further, assume that PE1 is using P2MP MPLS LSPs to send broadcast, multicast or uknown unicast packets. When PE1 sends a multicast, broadcast or unknown unicast packet, that it receives from CE1, it MUST first push onto the MPLS label stack the ESI label that it has assigned for the ESI that the packet was received on. The resulting packet is further encapsulated insection "Designated Forwarder Election". Further,it MAYthe P2MP MPLS label stack necessary to transmit the packet to the other PEs. Penultimate hop popping MUST be disabled on the P2MP LSPs used in the MPLS transport infrastructure for E-VPN. When PE2 receives this packet, it de- capsulates the top MPLS label and forwards the packet using the context label space determined by the top label. If the next label is the ESI label assigned by PE1 tooptimizeESI1, then PE2 MUST NOT forward thewithdrawalpacket onto ESI1. When PE3 receives this packet, it de-capsulates the top MPLS label and forwards the packet using the context label space determined by the top label. If the next label is the ESI label assigned by PE1 to ESI1 and PE3 is not connected to ESI1, then PE3 MUST pop the label and flood the packet over all local ESIs in the EVI. 9.3.1.3. MP2MP LSPs The procedures for ESI MPLS Label assignment and usage for MP2MP LSPs will be described in a future version. 9.4 Aliasing In the case where a CE is multi-homed to multiple PE nodes, using a LAG with all-active redundancy, it is possible that only a single PE learns a set of the MAC addressesupon failure as described in section "Convergence".associated with traffic transmitted by the CE. Thissection describes proceduresleads to a situation where remote PE nodes receive MAC advertisement routes, foradvertising one or more Ethernet A-D routes perthese addresses, from a single PE even though multiple PEs are connected to the multi-homed segment. As a result, the remote PEs are not able to effectively load-balance traffic among the PE nodes connected to the multi-homed Ethernettag per E-VPN. We will call this as "Ethernet A-D route per E-VPN".segment. Thissection also describes procedures to advertisecould be the case, for e.g. when the PEs perform data- path learning on the access, andwithdrawthe load-balancing function on the CE hashes traffic from a given source MAC address to a singleEthernet A-D route per Ethernet Segment. WePE. Another scenario where this occurs is when the PEs rely on control plane learning on the access (e.g. using ARP), since ARP traffic willcallbe hashed to a single link in the LAG. To alleviate thisas "Ethernetissue, E-VPN introduces the concept of 'Aliasing'. Aliasing refers to the ability of an PE to signal that it has reachability to a given locally attached Ethernet segment, even when it has learnt no MAC addresses from that segment. The Ethernet A-D route perSegment". 10.1. ConstructingEVI is used to that end. Remote PEs which receive MAC advertisement routes with non-zero ESI SHOULD consider the advertised MAC address as reachable via all PEs which have advertised reachability to the relevant Segment using Ethernet A-DRoute The format ofroutes with the same ESI (and EthernetA-D NLRI is specified in section "BGP E- VPN NLRI". 10.1.1.Tag if applicable). 9.4.1 Constructing the Ethernet A-D Route perE-VPNEVI This section describes procedures to construct the Ethernet A-D route when one or more such routes are advertised by anMESPE for a givenE- VPN instance.EVI. This flavor of the Ethernet A-D route is used for aliasing, and support of this route flavor is OPTIONAL. Route-Distinguisher (RD) MUST be set to the RD of theE-VPN instanceEVI that is advertising the NLRI.AAn RD MUST be assigned for a givenE-VPN instanceEVI on anMES.PE. This RD MUST be unique across allE-VPN instancesEVIs on anMES.PE. It is RECOMMENDED to use the Type 1 RD [RFC4364]. The value field comprises an IP address of theMESPE (typically, the loopback address) followed by a number unique to theMES.PE. This number may be generated by theMES.PE. Or in the UniqueSingleVLANE- VPNE-VPN case, the low order 12 bits may be the 12 bit VLAN ID, with the remaining high order 4 bits set to 0.Ethernet Segment Identifier MAY be set to 0. When it is not zero theThe Ethernet Segment Identifier MUST be a ten octet entity as described in section "Ethernet Segment Identifier". This document does not specify the use of the Ethernet A-D route when the Segment Identifier is set to 0. The Ethernet Tag ID is the identifier of an Ethernet Tag on the Ethernet segment. This value may be a 12 bit VLAN ID, in which case the low order 12 bits are set to the VLAN ID and the high order 20 bits are set to 0. Or it may be another Ethernet Tag used by the E- VPN. It MAY be set to the default Ethernet Tag on the Ethernet segment or to the value 0. Note that the above allows the Ethernet A-D route to be advertised with one of the following granularities: + One Ethernet A-D route for a given <ESI, Ethernet Tag ID> tuple perE-VPN + One Ethernet A-D route for a given <Ethernet Tag ID> in a given E-VPN, for all associated Ethernet segments, where the ESIEVI. This isset to 0.applicable when the PE uses MPLS-based disposition. + One Ethernet A-D routeforper <ESI, EVI> (where theE-VPN where both ESI andEthernet Tag IDare set to 0. E-VPN supports both the non-qualified and qualified learning models. When non-qualified learningisused, the Ethernet Tag Identifier specified in this section and in other places in this document MUST beset tothe default Ethernet Tag, e.g., VLAN ID. When qualified learning0). This isused, and the Ethernet Tags between MESes and CEs in the E-VPN are consistently assigned for a given broadcast domain,applicable when theEthernet Tag Identifier MUST be set toPE uses MAC-based disposition, or when theEthernet Tag, e.g.,PE uses MPLS-based disposition when no VLANID for the concerned broadcast domain between the advertising MES and the CE. When qualified learningtranslation isused, and the Ethernet Tags, e.g., VLAN IDs between MESes and CEs in the E-VPN are not consistently assigned for a given broadcast domain, the Ethernet Tag Identifier, e.g., VLAN ID MUST be set to a common E-VPN provider assigned tag that maps locally on the advertising MES to an Ethernet broadcast domain identifier such as a VLAN ID.required. The usage of the MPLS label is described in the section on "Load Balancing of Unicast Packets". The Next Hop field of the MP_REACH_NLRI attribute of the route MUST be set to the IPv4 or IPv6 address of the advertisingMES. 10.1.1.1.PE. 9.4.1.1 Ethernet A-D Route Targets The Ethernet A-D route MUST carry one or more Route Target (RT) attributes. RTs may be configured (as in IP VPNs), or may be derived automatically. If anMESPE uses Route Target Constrain [RT-CONSTRAIN], theMESPE SHOULD advertise all such RTs using Route Target Constrains. The use of RT Constrains allows each Ethernet A-D route to reach only thoseMESesPEs that are configured to import at least one RT from the set of RTs carried in the Ethernet A-D route.10.1.1.1.1.9.4.1.1.1 Auto-Derivation from the Ethernet Tag ID The following is the procedure for deriving the RT attribute automatically from the Ethernet Tag ID associated with the advertisement: + The Global Administrator field of the RT MUST be set to the Autonomous System (AS) number that theMESPE belongs to. + The Local Administrator field of the RT contains a 4 octets long number that encodes the Ethernet Tag-ID. If the Ethernet Tag-ID is a two octet VLAN ID then it MUST be encoded in the lower two octets of the Local Administrator field and the higher two octets MUST be set to zero. For the "UniqueSingleVLAN E-VPN" this results in auto-deriving the RT from the Ethernet Tag, e.g., VLAN ID for that E-VPN.10.1.2.9.5 Designated Forwarder Election Consider a CE that is a host or a router that is multi-homed directly to more than one PE in an E-VPN on a given EthernetA-D Route persegment. One or more EthernetSegment This section describes procedures to constructTags may be configured on the EthernetA-D route when a single such routesegment. In this scenario only one of the PEs, referred to as the Designated Forwarder (DF), isadvertised by an MESresponsible for certain actions: - Sending multicast and broadcast traffic, on a given EthernetSegment. Route-Distinguisher (RD) MUST beTag on aType 1 RD [RFC4364]. The value field comprisesparticular Ethernet segment, to the CE. - Flooding unknown unicast traffic (i.e. traffic for which anIP address ofPE does not know theMES (typically,destination MAC address), on a given Ethernet Tag on a particular Ethernet segment to theloopback address) followed by 0. The reasonCE, if the environment requires flooding of unknown unicast traffic. Note that this behavior, which allows selecting a DF at the granularity of <ESI, EVI> forsuch encodingmulticast, broadcast and unknown unicast traffic, isthattheRD cannotdefault behavior in this specification. Optional mechanisms, which will bethat ofspecified in the future, will allow selecting agiven E-VPN sinceDF at theESI can span across one or more E-VPNs. Ethernet Segment Identifier MUST begranularity of <ESI, EVI, S, G>. Note that anon-zero ten octet entity as described in section "Ethernet Segment Identifier". The Ethernet Tag ID MUST be setCE always sends packets belonging to0. Ifa specific flow using a single link towards an PE. For instance, if theEthernet SegmentCE isconnecteda host then, as mentioned earlier, the host treats the multiple links that it uses tomore than one MES thenreach the"ESI MPLS Label Extended Community" MUST be includedPEs as a Link Aggregation Group (LAG). The CE employs a local hashing function to map traffic flows onto links in theroute.LAG. Ifthe Ethernet Segmenta bridged network isconnectedmulti-homed to more than oneMES and active- active multi-homing is desiredPE in an E-VPN via switches, then theMPLS labelsupport of all-active points of attachments, as described in this specification, requires theESI MPLS Label Extended Community MUSTbridge network to besetconnected to two or more PEs using avalid MPLS label value. The MPLS label inLAG. In thisExtended Community is referred tocase the reasons for doing DF election are the same asan "ESI label". This label MUST bethose described above when adownstream assigned MPLS label if the advertising MESCE isusing ingress replication for receiving multicast, broadcasta host orunknown unicast traffic, from other MESes.a router. If a bridged network does not connect to theadvertising MES isPEs usingP2MP MPLS LSPs for sending multicast, broadcast or unknown unicast traffic,LAG, thenthis label MUST be an upstream assigned MPLS label. The usageonly one of the links between the switched bridged network and the PEs must be the active link for a given Ethernet Tag. In thislabel is described in section "Split Horizon". Ifcase, the EthernetSegment is connected to more than one MES and active- standby multi-homing is desired thenA-D route per Ethernet segment MUST be advertised with the "Active-Standby"bit inflag set to one. Procedures for supporting all- active points of attachments, when a bridge network connects to theflagsPEs using LAG, are for further study. The granularity of theESI MPLS Label Extended CommunityDF election MUST besetat least the Ethernet segment via which the CE is multi-homed to1.the PEs. If theper Ethernet Segment Ethernet A-D routeDF election isused in conjunction withdone at theper {ESI, VLAN}EthernetA-D route, for reasons described below,segment granularity thenthe MPLS label in the NLRIa single PE MUST beset to 0. 10.1.2.1. Ethernet A-D Route Targets Theelected as the DF on the EthernetA-D route MUST carrysegment. If there are one or moreRoute Target (RT) attributes. These RTs MUST beEVIs enabled on thesetEthernet segment, then the granularity ofRTs associated with alltheE-VPN instances to whichDF election SHOULD be the combination of the EthernetSegment, corresponding tosegment and EVI on that Ethernet segment. In this case a single PE MUST be elected as the DF for a particular EVI on that EthernetA-D route, belongs. 10.2. Motivationssegment. The detailed procedures for DF election are described next. 9.5.1 Default DF Election Procedure As a PE discovers the other PEs that are connected to the same EthernetA-D Route perSegment, using the Ethernet SegmentThis section describes various scenarios in whichroutes, it starts building an ordered list based on theEthernet A-D route should be advertised per Ethernet Segment. 10.2.1. Multi-Homing Theoriginating PE IP addresses. This list is used to select a DF and a backup DF (BDF) on a per Ethernet SegmentEthernet A-D route MUST be advertised whenbasis. By default, the PE with the numerically highest IP address is considered the DF for that Ethernet Segment and the next PE in the list ismulti-homed. This allows Multi-Homedconsidered the BDF. If the Ethernet SegmentAuto-Discovery. It allowsis a multi-homed device, then theset of MESes connected toelected DF is thesame customer site i.e., CE, to discover each other automatically with minimal to no configuration. It also allows other MESesonly PE thathave at least one E-VPN in common withmust forward flooded multi-destination packets towards themulti-homed Ethernet Segmentsegment. All other PE nodes must not permit multi- destination packets to egress todiscovertheproperties ofsegment. In themulti-homedcase where the DF fails, the BDF takes over its functionality. This procedure enables the election of a single DF per EthernetSegment. For active-active multi-homing this route is requiredSegment, forsplit horizon proceduresall EVIs enabled on the segment. It is possible to achieve more granular load-balancing of traffic among the PE nodes by employing Service Carving, asdescribeddiscussed insection "Split Horizon" and MUST carrytheESI MPLS Label Extended Communitynext section. 9.5.2 DF Election witha valid ESI MPLS label. For active-standby multi-homing this routeService Carving With service carving, it isrequiredpossible toindicate that active-standby multi-homing and not active-active multi-homing is desired. This route will be enhancedelect multiple DFs per Ethernet Segment (one per EVI) in order tocarry LAG specific informationperform load-balancing of multi-destination traffic destined to a given Segment. The load- balancing procedures carve up the EVI space among the PE nodes evenly, in such a way that every PE is the DF for a disjoint set of EVIs. The procedure for service carving is asLACP parameters, which will be encoded as new BGP attributes or communities, infollows: 1. When a PE discovers thefuture. Note that this information will be propagatedESI of the attached Ethernet Segment, it advertises an Ethernet Segment route with the associated ES-Import extended community attribute. 2. The PE then starts a timer toall MESes that have one or more sites inallow theVLANsreception of Ethernet Segment routes from other PE nodes connected to the same Ethernet Segment.All3. When theMESes other thantimer expires, each PE builds an ordered list of theones that areIP addresses of all the PE nodes connected to theMESes will discard this information. 10.2.2. Optimizing Control Plane Convergence Ethernet A-D route perEthernet Segmentshould be advertised when it(including itself), in increasing numeric value. Every PE isdesiredthen given an ordinal indicating its position in the ordered list, starting with 0 as the ordinal for the PE with the numerically lowest IP address. The ordinals are used tooptimizedetermine which PE node will be thecontrol plane convergence ofDF for a given EVI on thewithdrawalEthernet Segment using the following rule: Assuming a redundancy group of N PE nodes, theEthernet A-D routes. If thisPE with ordinal i isdone thenthe DF for EVI V whenan Ethernet segment fails,(V mod N) = i. The above procedure results in thesingle Ethernet A-D route corresponding toentire EVI range being divided up among thesegment can be withdrawn first. This allows all MESes that receive this withdrawal to invalidatePEs in theMAC routes learned fromRG, regardless of whether a given EVI is configured/enabled on the associated Ethernetsegment.Segment or not. 4. The PE that is elected as a DF for a given EVI will unblock traffic for that EVI only if the EVI is configured/enabled on the Segment. Note that theEthernet A-D route per Ethernet Segment, when used to optimize control plane convergence, MAY be advertisedDF PE unblocks multi-destination traffic inadditionthe egress direction towards the Segment. All non-DF PEs continue to drop multi-destination traffic (for theEthernet Tag A-D routes per E-VPN or MAY be advertised on its own. 10.2.3. Reducing Number of Ethernet A-D Routes In certain scenarios advertising Ethernet A-D routes per Ethernet segment, instead of per E-VPN, may reduceassociated EVIs) in thenumberegress direction towards the Segment. In the case of link or port failure, the affected PE withdraws its EthernetA-D routesSegment route. This will re-trigger the service carving procedures on all the PEs in thenetwork. In these scenariosRG. For PE node failure, or upon PE commissioning or decommissioning, the PEs re-trigger the service carving. When a service moves from one PE in the RG to another PE as a result of re-carving, the PE, which ends up being the elected DF for the service, must trigger a MAC address flush notification towards the associated EthernetA-D routes maySegment. This can beadvertised per Ethernet segment instead of per E-VPN. 11.done, for e.g. using IEEE 802.1ak MVRP 'new' declaration. 10. Determining Reachability to Unicast MAC AddressesMESesPEs forward packets that they receive based on the destination MAC address. This implies thatMESesPEs must be able to learn how to reach a given destination unicast MAC address. There are two components to MAC address learning, "local learning" and "remote learning":11.1.10.1. Local Learning A particularMESPE must be able to learn the MAC addresses from the CEs that are connected to it. This is referred to as local learning. TheMESesPEs in a particular E-VPN MUST support local data plane learning using standard IEEE Ethernet learning procedures. AnMESPE must be capable of learning MAC addresses in the data plane when it receives packets such as the following from the CE network: - DHCP requests -gratuitousARP request for its own MAC. - ARP request for a peer. AlternativelyMESesPEs MAY learn the MAC addresses of the CEs in the control plane or via management plane integration between theMESesPEs and the CEs. There are applications where a MAC address that is reachable via a givenMESPE on a locally attached Segment (e.g. with ESI X) may move such that it becomes reachable via the sameMESPE or anotherMESPE on another Segment (e.g. with ESI Y). This is referred to as a "MACMove".Mobility". Procedures to support this are described in section "MACMoves". 11.2.Mobility". 10.2. Remote learning A particularMESPE must be able to determine how to send traffic to MAC addresses that belong to or are behind CEs connected to otherMESesPEs i.e. to remote CEs or hosts behind remote CEs. We call such MAC addresses as "remote" MAC addresses. This document requires anMESPE to learn remote MAC addresses in the control plane. In order to achievethisthis, eachMESPE advertises the MAC addresses it learns from its locally attached CEs in the control plane, to all the otherMESesPEs in theE-VPN,EVI, using MP-BGP and specifically the MACaddress advertisementAdvertisement route.11.2.1.10.2.1. Constructing the BGP E-VPN MAC Address Advertisement BGP is extended to advertise these MAC addresses using the MACadvertisementAdvertisement route type in theE-VPN-NLRI.E-VPN NLRI. The RD MUST be the RD of theE-VPN instanceEVI that is advertising the NLRI. The procedures for setting the RD for a givenE-VPNEVI are described in section"Ethernet A-D Route per E-VPN".9.4.1. The Ethernet Segment Identifier is set to the ten octet ESIidentifierdescribed in section "EthernetSegment Identifier".Segment". The Ethernet Tag ID may be zero or may represent a valid Ethernet Tag ID. This field may be non-zero when there are multiple bridge domains in theE-VPN instanceEVI (e.g., theMESPE needs to perform qualified learning for the VLANs in thatEVPN instance).EVI). When the the Ethernet Tag ID in the NLRI is set to a non-zero value, for a particular bridge domain, then this Ethernet Tag may either be the Ethernet tag value associated with the CE, e.g., VLAN ID, or it may be the Ethernet Tag Identifier, e.g., VLAN ID assigned by the E- VPN provider and mapped to the CE's Ethernet tag. The latter would be the case if the CE Ethernet tags, e.g., VLAN ID, for a particular bridge domain are different on different CEs. The MAC address length field is typically set to 48. However this specification enables specifying the MAC address as aprefixprefix; in whichcasecase, the MAC address length field is set to the length of the prefix. This provides the ability to aggregate MAC addresses if the deployment environment supports that. The encoding of a MAC address MUST be the 6-octet MAC address specified byIEEE 802 documents[802.1D-ORIG][802.1D-REV].[802.1D- REV]. If the MAC address is advertised as a prefix then the trailing bits of the prefix MUST be set to 0 to ensure that the entire prefix is encoded as 6 octets. TheMPLS LabelIP Address Length field value is set to the number of octets in theMPLS LabelIP Address field. The IP Address field is optional. By default, the IP Address Length field is set to 0 and the IP address field is omitted from the route. When a valid IP address is included, it is encoded as specified in section 12. The MPLS label field carries one or more labels (that corresponds to the stack of labels [MPLS-ENCAPS]). Each label is encoded as 3 octets, where the high-order 20 bits contain the label value, and the low order bit contains "Bottom of Stack" (as defined in[MPLS-ENCAPS]).[MPLS- ENCAPS]). The MPLS label stack MUST be the downstream assigned E-VPN MPLS label stack that is used by theMESPE to forwardMPLS encapsulatedMPLS-encapsulated Ethernetpacketsframes received from remoteMESes,PEs, where the destination MAC address in the Ethernetpacketframe is the MAC address advertised in the above NLRI. The forwarding procedures are specified in section "Forwarding Unicast Packets" and "Load Balancing of Unicast Packets". AnMESPE may advertise the same single E-VPN label for all MAC addresses in a givenE-VPN instance.EVI. This label assignment methodology is referred to as a per EVI labelassigment. Alternativelyassignment. Alternatively, anMESPE may advertise a unique E-VPN label per <ESI, Ethernet Tag> combination. This label assignment methodology is referred to as a per <ESI, Ethernet Tag> label assignment.OrAs a third option, anMESPE may advertise a uniqueE-VPNE- VPN label per MAC address. All of these methodologies have their tradeoffs. Per EVI label assignment requires the least number of E-VPN labels, but requires a MAC lookup in addition to an MPLS lookup on an egressMESPE for forwarding. On the otherhandhand, a unique label per <ESI, Ethernet Tag> or a unique label per MAC allows an egressMESPE to forward a packet that it receives from anotherMES,PE, to the connected CE, after looking up only the MPLS labelsand notwithout having todoperform a MAC lookup.As well as to insertThis includes the capability to perform appropriate VLAN ID translation on egress to theCE A MES may also advertise more than one label for a given MAC address. For instance an MES may advertise two labels, one of which is for the ESI corresponding to the MAC address and the second is for the Ethernet Tag on the ESI that the MAC address is learnt on. The IP Address field is optional. By default the IP Address length is set to 0 and the IP address is excluded. When a valid IP address is included it is encoded as specified in the section "Optimizing ARP".CE. The Next Hop field of the MP_REACH_NLRI attribute of the route MUST be set to the IPv4 or IPv6 address of the advertisingMES.PE. The BGP advertisementthat advertisesfor the MAC advertisement route MUST also carry one or more Route Target (RT) attributes. RTs may be configured (as in IP VPNs), or may be derived automatically from the Ethernet Tag ID, in the UniqueSingleVLANcasecase, as described in section "Ethernet A-D Route per E-VPN". It is to be noted that this document does not requireMESesPEs to create forwarding state for remote MACs when they are learnt in the control plane. When this forwarding state is actually created is a local implementation matter.12. Optimizing11. ARP and ND The IP address field in the MAC advertisement route may optionally carry one of the IP addresses associated with the MAC address. This provides an option which can be used to minimize the flooding of ARP or Neighbor Discovery (ND) messagesto MAC VPN CEsover the MPLS network and toMESes.remote CEs. This option also minimizes ARP (or ND) message processing onMAC VPN CEs. A MESend-stations/hosts connected to the E-VPN network. An PE may learn the IP address associated with a MAC address in the control or management plane between the CE and theMES. OrPE. Or, it may learn this binding by snooping certain messages to or from a CE. Whena MESan PE learns the IP address associated with a MAC address, of a locally connected CE, it may advertiseitthis address to otherMESesPEs by including it in the MACroute advertisement.Advertisement route. The IP Address may be anIPv4,IPv4 address encoded using fouroctetsoctets, or an IPv6 address encoded using sixteen octets. The IP Address length field MUST be set to 32 for an IPv4 addressandor to 128 for an IPv6 address. If there are multiple IP addresses associated with a MACaddressaddress, then multiple MAC advertisement routes MUST be generated, one for each IP address. Forinstanceinstance, this may be the case when thereisare both an IPv4 and an IPv6 address associated with the MAC address. When the IP address isdis-associateddissociated with the MACaddressaddress, then the MAC advertisement route with that particular IP address MUST be withdrawn. When anMESPE receives an ARP request for an IP address from a CE, and if theMESPE has the MAC address binding for that IP address, theMES shouldPE SHOULD perform ARP proxy and respond to the ARP request. Further detailed procedures will be specified in a later version.13. Designated Forwarder Election Consider a CE that is a host or a router that is multi-homed directly to more than one MES in an E-VPN on a given Ethernet segment. One or more Ethernet Tags may be configured on the Ethernet segment. In this scenario only one of the MESes, referred to as the Designated Forwarder (DF), is responsible for certain actions: - Sending multicast and broadcast traffic, on a given Ethernet Tag on a particular Ethernet segment, to the CE. Note that this behavior, which allows selecting a DF at the granularity of <ESI, Ethernet Tag> for multicast and broadcast traffic is the default behavior in this specification. Optional mechanisms, which will be specified in the future, will allow selecting a DF at the granularity of <ESI, Ethernet Tag, S, G>. - Flooding unknown unicast traffic (i.e. traffic for which an MES does not know the destination MAC address), on a given Ethernet Tag on a particular Ethernet segment to the CE, if the environment requires flooding of unknown unicast traffic. Note that a CE always sends packets belonging to a specific flow using a single link towards an MES. For instance, if the CE is a host then, as mentioned earlier, the host treats the multiple links that it uses to reach the MESes as a Link Aggregation Group (LAG). The CE employs a local hashing function to map traffic flows onto links in the LAG. If a bridge network is multi-homed to more than one MES in an E-VPN via switches, then the support of active-active points of attachments as described in this specification requires the bridge network to be connected to two or more MESes using a LAG. In this case the reasons for doing DF election are the same as those described above when a CE is a host or a router. If a bridge network does not connect to the MESes using LAG, then only one of the links between the switched bridged network and the MESes must be the active link. In this case the per Ethernet Segment Ethernet Tag routes MUST be advertised with the "Active-Standby" flag set to one. Procedures for supporting active-active points of attachments, when a bridge network does not connect to the MESes using LAG, are for further study. The granularity of the DF election MUST be at least the Ethernet segment via which the CE is multi-homed to the MESes. If the DF election is done at the Ethernet segment granularity then a single MES MUST be elected as the DF on the Ethernet segment. If there are one or more Ethernet Tags (e.g., VLANs) on the Ethernet segment then the granularity of the DF election SHOULD be the combination of the Ethernet segment and Ethernet Tag on that Ethernet segment. In this case a single MES MUST be elected as the DF for a particular Ethernet Tag on that Ethernet segment. There are two specified mechanisms for performing DF election. 13.1. DF Election Performed by All MESes The MESes perform a designated forwarder (DF) election, for an Ethernet segment, or <ESI, Ethernet Tag> combination using the Ethernet Tag A-D BGP route described in section "Auto-Discovery of Ethernet Tags on Ethernet Segments". The DF election for a particular ESI or a particular <ESI, Ethernet Tag> combination proceeds as follows. First an MES constructs a candidate list of MESes. This comprises all the Ethernet A-D routes with that particular ESI or <ESI, Ethernet Tag> tuple that an MES imports in an E-VPN instance, including the Ethernet A-D route(s) generated by the MES itself, if any. The DF MES is chosen from this candidate list. Note that DF election is carried out by all the MESes that import the DF route. The default procedure for choosing the DF is the MES with the highest IP address, of all the MESes in the candidate list. This procedure MUST be implemented. It ensures that, except during routing transients each MES chooses the same DF MES for a given ESI and Ethernet Tag combination. Other alternative procedures for performing DF election are possible and will be described in the future. 13.2. DF Election Performed Only on Multi-Homed MESes As an MES discovers other MESs that are members of the same multi- homed segment, using per Ethernet Segment Ethernet A-D Routes, it starts building an ordered list based on the originating MES IP addresses. This list is used to select a DF and a backup DF (BDF) on a per group of Ethernet Tag basis. For example, the MES with the numerically highest IP address is considered the DF for a given group of VLANs for that Ethernet segment and the next MES in the list is considered the BDF. To that end, the range of Ethernet Tags associated with the CE must be partitioned into disjoint sets. The size of each set is a function of the total number of CE Ethernet Tags and the total number of MESs that the Ethernet segment is multi- homed to. The DF can employ any distribution function that achieves an even distribution of Ethernet Tags across the MESes that are multi-homed to the Ethernet segment. The DF takes over the Ethernet Tag set of any MES encountering either a node failure or a link/Ethernet segment failure causing that MES to be isolated from the multi-homed segment. In case of a failure that is affecting the DF, then the BDF takes over the DF VLAN set. It should be noted that once all the MESs participating in an Ethernet segment have the same ordered list for that site, then Ethernet Tag groups can be assigned to each member of that list deterministically without any need to explicitly distribute Ethernet Tags among the member MESs of that list. In other words, the DF election for a group of Ethernet Tags is a local matter and can be done deterministically. As an example, consider, that the ordered list consists of m MESes: (MES1, MES2,., MESm), and there are n Ethernet Tags for that site (V0, V1, V2, ., Vn-1). Then MES1 and MES2 can be the DF and the BDF respectively for all the Ethernet Tags corresponding to (i mod m) for i:0 to n-1. MES2 and MES3 can be the DF and the BDF respectively for all the Ethernet Tags corresponding to (i mod m) + 1 and so on till the last MES in the order list is reached. As a result MESm and MES1 is the DF and the BDF respectively for the all the VLANs corresponding to (i mod m) + m-1. 14.12. Handling of Multi-Destination Traffic Procedures are required for a givenMESPE to send broadcast or multicast traffic, received from a CE encapsulated in a given Ethernet Tag in anE-VPN,EVI, to all the otherMESesPEs that span that Ethernet Tag in theE-VPN.EVI. In certain scenarios, described in section "Processing of Unknown Unicast Packets", a givenMESPE may also need to flood unknown unicast traffic to otherMESes.PEs. TheMESesPEs in a particular E-VPN may use ingressreplication orreplication, P2MP LSPs or MP2MP LSPs to send unknown unicast, broadcast or multicast traffic to otherMESes.PEs. EachMESPE MUST advertise an "Inclusive Multicast Ethernet Tag Route" to enable the above.Next sectionThe following subsection provides the procedures to construct the Inclusive Multicast Ethernet Tag route. Subsequentsectionssubsections describe in further detail its usage.14.1.12.1. Construction of the Inclusive Multicast Ethernet Tag Route The RD MUST be the RD of theE-VPN instanceEVI that is advertising the NLRI. The procedures for setting the RD for a given E-VPN are described in section"Ethernet A-D Route per E-VPN". The Ethernet Segment Identifier MAY be set to the ten octet ESI identifier described in section "Ethernet Segment Identifier". Or it MAY be set to 0. It MUST be set to 0 if the Ethernet Tag is set to 0.9.4.1. The Ethernet Tag ID is the identifier of the Ethernet Tag. It MAY be set to 0in which case an egress MES MUST perform a MAC lookupor toforward the packet.a valid Ethernet Tag value. The Originating Router's IP address MUST be set to an IP address of the PE. This address SHOULD be common for all the EVIs on the PE (e.,g., this address may be PE's loopback address). The Next Hop field of the MP_REACH_NLRI attribute of the route MUST be set to the same IP address as the one carried in the Originating Router's IP Address field. The BGP advertisementthat advertisesfor the Inclusive Multicast Ethernet Tag route MUST also carry one or more Route Target (RT) attributes. The assignment of RTs described in the section on "Constructing the BGP E-VPN MAC Address Advertisement" MUST be followed.14.2.12.2. P-Tunnel Identification In order to identify the P-Tunnel used for sending broadcast, unknown unicast or multicast traffic, the Inclusive Multicast Ethernet Tag route MUST carry a "PMSI Tunnel Attribute" as specified in [BGP MVPN]. Depending on the technology used for the P-tunnel for the E-VPN on the PE, the PMSI Tunnel attribute of the Inclusive Multicast Ethernet Tag route is constructed as follows. + If the PE that originates the advertisement uses a P-Multicast tree for the P-tunnel fortheE-VPN, the PMSI Tunnel attribute MUST contain the identity of the tree (note that the PE could create the identity of the tree prior to the actual instantiation of the tree). +AAn PE that uses a P-Multicast tree for the P-tunnel MAY aggregate two or more Ethernet Tags in the same or differentE-VPNsEVIs present on the PE onto the same tree. In thiscasecase, in addition to carrying the identity of the tree, the PMSI Tunnel attribute MUST carry an MPLS upstream assigned label which the PE has bound uniquely to the<ESI,EthernetTag>Tag forE-VPNthe EVI associated with this update (as determined by its RTs). If the PE has already advertised Inclusive Multicast Ethernet Tag routes for two or more Ethernet Tags that it now desires to aggregate, then the PE MUST re-advertise those routes. The re-advertised routes MUST be the same as the original ones, except for the PMSI Tunnel attribute and the label carried in that attribute. + If the PE that originates the advertisement uses ingress replication for the P-tunnel fortheE-VPN, the route MUST include the PMSI Tunnel attribute with the Tunnel Type set to Ingress Replication and Tunnel Identifier set to a routable address of the PE. The PMSI Tunnel attribute MUST carry a downstream assigned MPLS label. This label is used to demultiplex the broadcast, multicast or unknown unicast E-VPN traffic received over aunicastMP2P tunnel by the PE. + The Leaf Information Required flag of the PMSI Tunnel attribute MUST be set to zero, and MUST be ignored on receipt.14.3. Ethernet Segment Identifier and Ethernet Tag As described above the encoding rules allow setting the Ethernet Segment Identifier and Ethernet Tag to either non-zero valid values or to 0. If the Ethernet Tag is set to a non-zero valid value, then an egress MES can forward the packet to the set of egress ESIs in the Ethernet Tag, in the E-VPN, by performing an MPLS lookup only. Further if the ESI is also set to non zero then the egress MES does not need to replicate the packet as it is destined for a given Ethernet segment. If both Ethernet Tag and ESI are set to 0 then an egress MES MUST perform a MAC lookup in the EVI determined by the MPLS label, after the MPLS lookup, to forward the packet. If an MES advertises multiple Inclusive Ethernet Tag routes for a given E-VPN then the PMSI Tunnel Attributes for these routes MUST be distinct. 15.13. Processing of Unknown Unicast Packets The procedures in this document do not requireMESesthe PEs to flood unknown unicast traffic to otherMESes.PEs. IfMESesPEs learn CE MAC addresses via a controlplane,plane protocol, theMESesPEs can then distribute MAC addresses via BGP, and all unicast MAC addresses will be learnt prior to traffic to those destinations. However, if a destination MAC address of a received packet is not known by theMES,PE, theMESPE may have to flood the packet. Flooding must take into account "split horizon forwarding" asfollows.follows: The principles behind the following procedures are borrowed from the split horizon forwarding rules in VPLS solutions [RFC 4761, RFC 4762]. When anMESPE capable of flooding (sayMESx)PEx) receives a broadcast or multicast Ethernet frame, or one with an unknown destination MAC address, it must flood the frame. If the frame arrived from an attached CE,MESxPEx must send a copy of the frame to every other attachedCE,CE participating in the EVI, on a different ESI than the one it received the frame on, aswelllong as the PE is the DF for the egress ESI. In addition, the PE must flood the frame to all otherMESsPEs participating in theE-VPN.EVI. If, on the other hand, the frame arrived from anotherMESPE (sayMESy), MESxPEy), PEx must send a copy of the packet only to attachedCEs. MESxCEs as long as it is the DF for the egress ESI. PEx MUST NOT send the frame to otherMESs,PEs, sinceMESyPEy would have already done so. Split horizon forwarding rules apply to broadcast and multicast packets, as well as packets to an unknown MAC address. Whether or not to flood packets to unknown destination MAC addresses should be an administrative choice, depending on how learning happens between CEs andMESes.PEs. TheMESesPEs in a particular E-VPN may use ingress replication usingRSVP-TERSVP- TE P2P LSPs or LDP MP2P LSPs for sending broadcast, multicast and unknown unicast traffic to otherMESes.PEs. Or they may use RSVP-TE P2MP or LDP P2MP or LDP MP2MP LSPs for sending such traffic to otherMESes. 15.1.PEs. 13.1. Ingress Replication If ingress replication is in use, the P-Tunnel attribute, carried in the Inclusive Multicast Ethernet Tag routes for theE-VPN,EVI, specifies the downstream label that the otherMESesPEs can use to send unknown unicast, multicast or broadcast traffic for theE-VPNEVI to this particularMES.PE. TheMESPE that receives a packet with this particular MPLS label MUST treat the packet as a broadcast, multicast or unknown unicast packet. Further if the MAC address is a unicast MAC address, theMESPE MUST treat the packet as an unknown unicast packet.15.2.13.2. P2MP MPLS LSPs The procedures for using P2MP LSPs are very similar to VPLS procedures [VPLS-MCAST]. The P-Tunnel attribute used by anMESPE for sending unknown unicast, broadcast or multicast traffic for a particularEthernet segment,EVI is advertised in the Inclusive Ethernet Tag Multicast route as described in section "Handling ofMulti- DestinationMulti-Destination Traffic". The P-Tunnel attribute specifies the P2MP LSP identifier. This is the equivalent of an Inclusive tree in [VPLS-MCAST]. Note that multiple Ethernet Tags, which may be in differentE-VPNs,EVIs, may use the same P2MP LSP, using upstream labels [VPLS-MCAST]. This is the equivalent of an Aggregate Inclusive tree in [VPLS-MCAST]. When P2MP LSPs are used for flooding unknown unicast traffic, packet re-ordering is possible. TheMESPE that receives a packet on the P2MP LSP specified in the PMSI Tunnel Attribute MUST treat the packet as a broadcast, multicast or unknown unicast packet. Further if the MAC address is a unicast MAC address, theMESPE MUST treat the packet as an unknown unicast packet.16.14. Forwarding Unicast Packets16.1.14.1. Forwarding packets received from a CE When anMESPE receives a packet from a CE, on a given Ethernet Tag, it must first look up the source MAC address of the packet. In certain environments the source MAC address MAY be used to authenticate the CE and determine that traffic from the host can be allowed into the network. Source MAC lookup MAY also be used for local MAC address learning. If theMESPE decides to forward thepacketpacket, the destination MAC address of the packet must be looked up. If theMESPE has received MAC address advertisements for this destination MAC address from one or more otherMESesPEs or learned it from locally connected CEs, it is considered as a known MAC address.ElseOtherwise, the MAC address is considered as an unknown MAC address. For known MAC addresses theMESPE forwards this packet to one of the remoteMESesPEs or to a locally attachedCEs.CE. When forwarding to a remoteMESes,PE, the packet is encapsulated in the E-VPN MPLS label advertised by the remoteMES,PE, for that MAC address, and in the MPLS LSP label stack to reach the remoteMES.PE. If the MAC address is unknownthen,and if the administrative policy on theMESPE requires flooding of unknown unicasttraffic:traffic then: - TheMESPE MUST flood the packet to otherMESes. If the ESI over which the MES receives the packet is multi-homed, then the MESPEs. The PE MUST first encapsulate the packet in the ESI MPLS label as described in section"Split Horizon".9.3. If ingress replication isusedused, the packet MUST be replicated one or more times to each remoteMESPE with thebottomoutermost labelof the stackbeing an MPLS label determined asfollows.follows: This is the MPLS label advertised by the remoteMESPE in a PMSI Tunnel Attribute in the Inclusive Multicast Ethernet Tag route for an<ESI,<EVI, Ethernet Tag> combination. The Ethernet Tag in the route must be the same as the Ethernet Tagadvertised by the ingress MES in its Ethernet Tag A-D routeassociated with the interface on which the ingressMESPE receives the packet. If P2MP LSPs are being used the packet MUST be sent on the P2MP LSP that theMESPE is the root of for the Ethernet Tag in theE-VPN.EVI. If the same P2MP LSP is used for all EthernetTagsTags, then all theMESesPEs in theE-VPNEVI MUST be the leaves of the P2MP LSP. If a distinct P2MP LSP is used for a given Ethernet Tag in theE-VPNEVI, then only theMESesPEs in the Ethernet Tag MUST be the leaves of the P2MP LSP. The packet MUST be encapsulated in the P2MP LSP label stack. If the MAC address is unknown then, if theadmnistrativeadministrative policy on theMESPE does not allow flooding of unknown unicast traffic: - TheMESPE MUST drop the packet.16.2.14.2. Forwarding packets received from a remoteMES 16.2.1.PE 14.2.1. Unknown Unicast Forwarding When anMESPE receives an MPLS packet from a remoteMESPE then, after processing the MPLS label stack, if the top MPLS label ends up being a P2MP LSP label associated with anE-VPNEVI or the downstream label advertised in the P-Tunnelattributeattribute, and after performing the split horizon procedures described in section "Split Horizon": - If theMESPE is the designated forwarder of unknown unicast, broadcast or multicast traffic, on a particular set of ESIs for the Ethernet Tag, the default behavior is for theMESPE to flood the packet onthethese ESIs. In otherwordswords, the default behavior is for theMESPE to assume that the destination MAC address is unknown unicast, broadcast or multicast and it is not required todoperform a destination MAC addresslookup, as long as the granularity of the MPLS label included the Ethernet Tag.lookup. As anoptionoption, theMESPE maydoperform a destination MAC lookup to flood the packet to only a subset of the CE interfaces in the Ethernet Tag. For instance theMESPE may decide to not flood an unknown unicast packet on certain Ethernet segments even if it is the DF on the Ethernet segment, based on administrative policy. - If theMESPE is not the designated forwarder on any of the ESIs for the Ethernet Tag, the default behavior is for it to drop the packet.16.2.2.14.2.2. Known Unicast Forwarding If the top MPLS label ends up being an E-VPN label that was advertised in the unicast MAC advertisements, then theMESPE either forwards the packet based on CE next-hop forwarding information associated with the label or does a destination MAC address lookup to forward the packet to a CE.17. Split Horizon Consider a CE that is multi-homed to two or more MESes on an Ethernet segment ES1. If the CE sends a multicast, broadcast or unknown unicast packet to a particular MES, say MES1, then MES1 will forward that packet to all or subset of the other MESes in the E-VPN. In this case the MESes, other than MES1, that the CE is multi-homed to MUST drop the packet and not forward back to the CE. This is referred to as "split horizon" in this document. In order to accomplish this each MES distributes to other MESes the "per Ethernet Segment Ethernet A-D route" as per the procedures in the section "Ethernet A-D Route per Ethernet Segment". This route is imported by the MESes connected to the Ethernet Segment and also by the MESes that have at least one E-VPN in common with the Ethernet Segment in the route. As described in the section "Ethernet A-D Route per Ethernet Segment", the route MUST carry an ESI MPLS Label Extended Community with a valid ESI MPLS label. 17.1. ESI MPLS Label: Ingress Replication An MES that is using ingress replication for sending broadcast, multicast or unknown unicast traffic, distributes to other MESes, that belong to the Ethernet segment, a downstream assigned "ESI MPLS label" in the Ethernet A-D route. This label MUST be programmed in the platform label space by the advertising MES. Further the forwarding entry for this label must result in NOT forwarding packets received with this label onto the Ethernet segment that the label was distributed for. Consider MES1 and MES2 that are multi-homed to CE1 on ES1. Further consider that MES1 is using P2P or MP2P LSPs to send packets to MES2. Consider that MES1 receives a multicast, broadcast or unknown unicast packet from CE1 on VLAN1 on ESI1. First consider the case where MES2 distributes an unique Inclusive Multicast Ethernet Tag route for VLAN1, for each Ethernet segment on MES2. In this case MES1 MUST NOT replicate the packet to MES2 for <ESI1, VLAN1>. Next consider the case where MES2 distributes a single Inclusive Multicast Ethernet Tag route for VLAN1 for all Ethernet segments on MES2. In this case when MES1 sends a multicast, broadcast or unknown unicast packet, that it receives from CE1, it MUST first push onto the MPLS label stack the ESI label that MES2 has distributed for ESI1. It MUST then push on the MPLS label distributed by MES2 in the Inclusive Ethernet Tag Multicast route for Ethernet Tag1. The resulting packet is further encapsulated in the P2P or MP2P LSP label stack required to transmit the packet to MES2. When MES2 receives this packet it determines the set of ESIs to replicate the packet to from the top MPLS label, after any P2P or MP2P LSP labels have been removed. If the next label is the ESI label assigned by MES2 then MES2 MUST NOT forward the packet onto ESI1. 17.2. ESI MPLS Label: P2MP MPLS LSPs An MES that is using P2MP LSPs for sending broadcast, multicast or unknown unicast traffic, distributes to other MESes, that belong to the Ethernet segment or have an E-VPN in common with the Ethernet Segment, an upstream assigned "ESI MPLS label" in the Ethernet A-D route. This label is upstream assigned by the MES that advertises the route. This label MUST be programmed by the other MESes, that are connected to the ESI advertised in the route, in the context label space for the advertising MES. Further the forwarding entry for this label must result in NOT forwarding packets received with this label onto the Ethernet segment that the label was distributed for. This label MUST also be programmed by the other MESes, that import the route but are not connected to the ESI advertised in the route, in the context label space for the advertising MES. Further the forwarding entry for this label must be a POP with no other associated action. Consider MES1 and MES2 that are multi-homed to CE1 on ES1. Also consider MES3 that is in the same E-VPN as one of the E-VPNs to which ES1 belongs. Further assume that MES1 is using P2MP MPLS LSPs to send broadcast, multicast or uknown unicast packets. When MES1 sends a multicast, broadcast or unknown unicast packet, that it receives from CE1, it MUST first push onto the MPLS label stack the ESI label that it has assigned for the ESI that the packet was received on. The resulting packet is further encapsulated in the P2MP MPLS label stack necessary to transmit the packet to the other MESes. Penultimate hop popping MUST be disabled on the P2MP LSPs used in the MPLS transport infrastructure for E-VPN. When MES2 receives this packet it decapsulates the top MPLS label and forwards the packet using the context label space determined by the top label. If the next label is the ESI label assigned by MES1 then MES2 MUST NOT forward the packet onto ESI1. When MES3 receives this packet it decapsulates the top MPLS label and forwards the packet using the context label space determined by the top label. If the next label is the ESI label assigned by MES1 then MES3 MUST pop the label. 17.3. ESI MPLS Label: MP2MP LSPs The procedures for ESI MPLS Label assignment and usage for MP2MP LSPs will be described in a future version. 18.15. Load Balancing of UnicastPacketsFrames This section specifieshowthe load balancingis achieved to/from a CE that has more than one interface that is directly connectedprocedures for sending known unicast frames toone or more MESes. The CE may be a host or a router or it may beaswitched network that is connected via LAG to the MESes. 18.1.multi-homed CE. 15.1. Load balancing of traffic from anMESPE to remote CEs Whenever a remoteMESPE imports a MAC advertisement for a given <ESI, Ethernet Tag> in anE-VPN instance,EVI, it MUSTconsider the MAC as reachahable viaexamine allthe MESes from which it hasimported Ethernet A-D routes for that<ESI, Ethernet Tag>. Let us call thisESI in order to determine theinitial Ethernet A-D route set forload-balancing characteristics of thegiven ESI.Ethernet segment. 15.1.1 Active-Standby Redundancy Mode Forthea givenESIESI, if the remoteMESPE has importedaan Ethernet A-D route per Ethernet SegmentEthernet A-D route,from at least oneMES,PE, where the "Active-Standby" flag in the ESI MPLS Label Extended Community is set, then the remoteMESPE MUSTfirst usededuce that theproceduresEthernet segment is operating in Active- Standby redundancy mode. As such, thesection "Designated Forwarder Election"MAC address will be reachable only via the PE announcing the associated MAC Advertisement route - this is referred topick a Designated Forwarder.as the primary PE. Theeligibleset of other PE nodes advertising Ethernet A-D routesusedper Ethernet Segment for the same ESI serve as backup paths, in case theprocedures below must comprise thisactive PE encounters a failure. These are referred to as the backup PEs. If the primary PE encounters a failure, it MAY withdraw its Ethernet A-D route for the affected segment prior to withdrawing the entire set of MAC Advertisement routes. In the case where only a single other backup PE in the network had advertised an Ethernet A-D routefromfor theDF.same ESI, the remote PE can then use the Ethernet A-D route withdrawal as a trigger to update its forwarding entries, for the associated MAC addresses, to point towards the backup PE. As the backup PE starts learning the MAC addresses over its attached Ethernet segment, it will start sending MAC Advertisement routes while the failed PE withdraws its own. This mechanism minimizes the flooding of traffic during fail-over events. 15.1.2 All-Active Redundancy Mode If for the givenESIESI, none of the Ethernet A-D routes per Ethernet SegmentEthernet A-D routse,imported by the remoteMES,PE have the "Active-Standby" flag set in the ESI MPLS Label Extended Community, then theeligble setremote PE MUST treat the Ethernet segment as operating in all-active redundancy mode. The remote PE would then treat the MAC address as reachable via all of the PE nodes from which it has received both an Ethernet A-Droutes is set to the initialroute per Ethernet Segment as well as an Ethernet A-D routeset.per EVI for the ESI in question. The remoteMESPE MUST use the MAC advertisement and eligible Ethernet A-D routes toconstuctconstruct the set of next-hops that it can use to send the packet to the destination MAC. Eachnext-hopnext- hop comprises an MPLS labelstack,stack that is to be used by the egressMESPE to forward the packet. This label stack is determined asfollows. Iffollows: -If the next-hop is constructed as a result of a MAC routewhich has a valid MPLS label stack,then this label stack MUST be used.HoweverHowever, if the MAC route doesn'texist or if it doesn't have a valid MPLS label stackexist, then the next-hop and MPLS label stack is constructed as a result ofone or more correspondingthe Ethernet A-Droutes as follows.routes. Note that the following description applies to determining the label stack for a particular next-hop to reach a givenMES,PE, from which the remoteMESPE has received and importedone or moreEthernet A-D routes that have the matching ESI and Ethernet Tag as the one present in the MAC advertisement. The Ethernet A-D routes mentioned in the following description refer to the ones imported from this givenMES. If there is a corresponding Ethernet A-D route for that <ESI, Ethernet Tag> then that label stack MUST be used. If suchPE. -If an EthernetTagA-D routedoesn't exist but Ethernet A-D routes exist for <ESI, Ethernet Tag = 0> and <ESI = 0, Ethernet Tag> then the label stack must be constructed by using the labels from these two routes. If this is not the case but anper EthernetA-D route existsSegment for<ESI, Ethernet Tag = 0> then the label fromthatroute must be used. Finally if this is also not the case butESI exists, together with an Ethernet A-D routeexists for <ESI = 0, Ethernet Tag = 0>per EVI, then the label from that latter route must be used. The following example explains theabove when Ethernet A-D routes are advertised per <ESI, Ethernet Tag>.above. Consider aCE, CE1,CE (CE1) that isdual homeddual-homed to twoMESes, MES1PEs (PE1 andMES2PE2) on a LAGinterface, ES1,interface (ES1), and is sending packets with MAC address MAC1 on VLAN1.Based on E-VPN extensions described in sections "Determining Reachability of Unicast Addresses" and "Auto-Discovery of Ethernet Tags on Ethernet Segments", aA remoteMESPE, sayMES3PE3, is able to learn thataMAC1 is reachable viaMES1PE1 andMES2.PE2. BothMES1PE1 andMES2PE2 may advertise MAC1 in BGP if they receive packets with MAC1 from CE1. If this is not thecasecase, and if MAC1 is advertised only byMES1, MES3PE1, PE3 still considers MAC1 as reachable via bothMES1PE1 andMES2PE2 as bothMES1PE1 andMES2PE2 advertise a Ethernet A-D route per ESI for ESI1 as well as an Ethernet A-D route per EVI for <ESI1, VLAN1>. The MPLS label stack to send the packets toMES1PE1 is the MPLS LSP stack to get toMES1PE1 and the E-VPN label advertised byMES1PE1 for CE1's MAC. The MPLS label stack to send packets toMES2PE2 is the MPLS LSP stack to get toMES2PE2 and the MPLS label in the Ethernet A-D route advertised byMES2PE2 for <ES1, VLAN1>, ifMES2PE2 has not advertised MAC1 in BGP. We will refer to these label stacks as MPLS next-hops. The remoteMES, MES3,PE (PE3) can now load balance the traffic it receives from its CEs, destined for CE1, betweenMES1PE1 andMES2. MES3PE2. PE3 may usethe IPN-Tuple flow informationfor itto hash traffic into one of the MPLS next-hops for load balancingforof IP traffic.Or MES3Alternatively PE3 may rely on the sourceand destinationMAC addresses for load balancing. Note that onceMES3PE3 decides to send a particular packet toMES1PE1 orMES2PE2 it can pickfrom more than pathone out of multiple possible paths to reach the particular remoteMESPE using regular MPLS procedures. Forinstanceinstance, if the tunneling technology is based on RSVP-TE LSPs, andMES3PE3 decides to send a particular packet toMES1PE1, thenMES3PE3 can choose from multiple RSVP-TE LSPs that haveMES1PE1 as their destination. WhenMES1PE1 orMES2PE2 receive the packet destined for CE1 fromMES3,PE3, if the packet is a unicast MAC packet it is forwarded to CE1. If it is a multicast or broadcast MAC packet then only one ofMES1PE1 orMES2PE2 must forward the packet to the CE. Which ofMES1PE1 orMES2PE2 forward this packet to the CE is determinedby defaultbased on which of the two is the DF.An alternate procedure to load balance multicast packets will be described in the future.If the connectivity between the multi-homed CE and one of theMESesPEs that it ismulti-homedattached to fails, theMES MUST withdraw the MAC address from BGP. In addition the MESPE MUST withdraw the Ethernet Tag A-D routes, that had been previously advertised, for the Ethernet Segment to the CE. When the MAC entry on the PE ages out, the PE MUST withdraw the MAC address from BGP. Note that to aidconvergenceconvergence, the Ethernet Tag A-D routes MAY be withdrawn before the MAC routes. This enables the remoteMESesPEs to remove the MPLS next-hop to this particularMESPE from the set of MPLS next-hops that can be used to forward traffic to the CE. For further details and procedures on withdrawal of E-VPN route types in the event ofMESPE to CE failures please section"MES"PE to CE Network Failures".18.2.15.2. Load balancing of traffic between anMESPE and a local CE A CE may be configured with more than one interface connected to differentMESesPEs or the sameMESPE for load balancing, using a technology such as LAG. TheMES(s)PE(s) and the CE can load balance traffic onto these interfaces using one of the following mechanisms.18.2.1.15.2.1. Data plane learning Consider that theMESesPEs perform data plane learning for local MAC addresses learned from local CEs. This enables theMES(s)PE(s) to learn a particular MAC address and associate it with one or more interfaces, if the technology between theMESPE and the CE supports multi-pathing. TheMESesPEs can now load balance traffic destined to that MAC address on the multiple interfaces. Whether the CE can load balance traffic that it generates on the multiple interfaces is dependent on the CE implementation.18.2.2.15.2.2. Control plane learning The CE can be a host that advertises the same MAC address using a control protocol on both interfaces. This enables theMES(s)PE(s) to learn the host's MAC address and associate it with one or more interfaces. TheMESesPEs can now load balance traffic destined to the host on the multiple interfaces. The host can also load balance the traffic it generates onto these interfaces and theMESPE that receives the traffic employs E-VPN forwarding procedures to forward the traffic.19.16. MACMoves In the case where a CEMobility It is possible for a given host ora switched network connected to hosts, theend-station (as defined by its MACaddress that is reachable via a given MES on a particular ESI mayaddress) to movesuch that it becomes reachable via another MES on another ESI. Thisfrom one Ethernet segment to another; this is referred to asa "MAC Move". Remote MESes must be able to distinguish a MAC move'MAC Mobility' or 'MAC move' and it is different from thecase wheremulti-homing situation in which a given MAC addresson an ESIis reachable via multiple PEs for the same Ethernet segment. In a MAC move, there would be twodifferent MESessets of MAC Advertisement routes, one set with the new Ethernet segment andload balancing is performed as describedone set with the previous Ethernet segment, and the MAC address would appear to be reachable via each of these segments. In order to allow all of the PEs insection "Load Balancingthe E-VPN to correctly determine the current location ofUnicast Packets". This distinction can be made as follows. If athe MACis learnedaddress, all advertisements of it being reachable via the previous Ethernet segment MUST be withdrawn bya particular MES from multiple MESes, thentheMES performs load balancing only amongstPEs, for theset of MESesprevious Ethernet segment, that had advertised it. If local learning is performed using the data plane, these PEs will not be able to detect that the MAC address has moved to another Ethernet segment and the receipt of MAC Advertisement routes, with thesame ESI.MAC Mobility extended community attribute, from other PEs serves as the trigger for these PEs to withdraw their advertisements. Ifthislocal learning isnotperformed using thecase thencontrol or management planes, these interactions serve as theMES chooses only onetrigger for these PEs to withdraw their advertisements. In a situation where there are multiple moves of a given MAC, possibly between theadvertising MESessame two Ethernet segments, there may be multiple withdrawals and re-advertisements. In order toreachensure that all PEs in theMAC as perE-VPN receive all of these correctly through the intervening BGPpath selection. There can be traffic loss during a MAC move. Consider MAC1 thatinfrastructure, it isadvertised by MES1 and learned from CE1 on ESI1. If MAC1 now moves behind MES2, on ESI2, MES2 advertisesnecessary to introduce a sequence number into the MACin BGP. Until a remote MES, MES3, determines thatMobility extended community attribute. Since thebest pathsequence number isvia MES2, it will continue to send traffic destined for MAC1 to MES1.an unsigned 32 bit integer, all sequence number comparisons must be performed modulo 2**32. Thiswill not occur deterministially until MES1 withdrawsunsigned arithmetic preserves theadvertisement for MAC1. One recommended optimizationrelationship of sequence numbers as they cycle from 2**32 - 1 toreduce the traffic loss during0. Every MACmovesmobility event for a given MAC address will contain a sequence number that is set using the followingoption. When an MES seesrules: - A PE advertising a MACupdate fromaddress for the first time advertises it with no MAC Mobility extended community attribute. - A PE detecting a locally attachedCE on an ESI,MAC address for whichisit had previously received a MAC Advertisement route with a differentfromEthernet segment identifier advertises theESI on whichMAC address in a MAC Advertisement route tagged with a MAC Mobility extended community attribute with a sequence number one greater than theMES has currently learnedsequence number in theMAC,MAC mobility attribute of thecorresponding entryreceived MAC Advertisement route. In the case of the first mobility event for a given MAC address, where the received MAC Advertisement route does not carry a MAC Mobility attribute, the value of the sequence number in thelocal bridge forwarding table SHOULDreceived route is assumed to beimmediately purged causing0 for purpose of this processing. - A PE detecting a locally attached MAC address for which it had previously received a MAC Advertisement route with theMESsame Ethernet segment identifier advertises it with: i. no MAC Mobility extended community attribute, if the received route did not carry said attribute. ii. a MAC Mobility extended community attribute with the sequence number equal towithdraw its own E-VPNthe sequence number in the received MACadvertisementAdvertisement route, if the received route is tagged with a MAC Mobility extended community attribute. A PE receiving a MAC Advertisement route for a MAC address with a different Ethernet segment identifier andreplacea higher sequence number than that which itwithhad previously advertised, withdraws its MAC Advertisement route. If two (or more) PEs advertise theupdate. A future version of this specification will describe other optimized procedures to minimize traffic loss duringsame MACmoves. 20.address with same sequence number but different Ethernet segment identifiers, a PE that receives these routes selects the route advertised by the PE with lowest IP address as the best route. 17. Multicast TheMESesPEs in a particular E-VPN may use ingress replication or P2MP LSPs to send multicast traffic to otherMESes. 20.1.PEs. 17.1. Ingress Replication TheMESesPEs may use ingress replication for flooding unknown unicast, multicast or broadcast traffic as described in section "Handling of Multi-Destination Traffic". A given unknown unicast or broadcast packet must be sent to all the remoteMESes.PEs. However a given multicast packet for a multicast flow may be sent to only a subset of theMESes.PEs. Specifically a given multicast flow may be sent to only thoseMESesPEs that have receivers that are interested in the multicast flow. Determining which of theMESesPEs have receivers for a given multicast flow is done using explicit tracking described below.20.2.17.2. P2MP LSPsA MESAn PE may use an "Inclusive" tree for sending an unknown unicast, broadcast or multicast packet or a "Selective" tree. This terminology is borrowed from [VPLS-MCAST]. A variety of transport technologies may be used in the SP network. For inclusive P-Multicast trees, these transport technologies include point-to-multipoint LSPs created by RSVP-TE or mLDP. For selective P- Multicast trees, only unicastMES-MESPE-PE tunnels (using MPLS or IP/GRE encapsulation) and P2MP LSPs are supported, and the supported P2MP LSP signaling protocols are RSVP-TE, and mLDP.20.3.17.3. MP2MP LSPs The root of the MP2MP LDP LSP advertises the Inclusive Multicast Tag route with the PMSI Tunnel attribute set to the MP2MP Tunnel identifier. This advertisement is then sent to allMESesPEs in theE- VPN.E-VPN. Upon receiving the Inclusive Multicast Tag routes with a PMSI Tunnel attribute that contains the MP2MP Tunnel identifier, the receivingMESesPEs initiate the setup of the MP2MP tunnel towards the root using the procedures in [MLDP].20.3.1.17.3.1. Inclusive Trees An Inclusive Tree allows the use of a single multicast distribution tree, referred to as an Inclusive P-Multicast tree, in the SP network to carry all the multicast traffic from a specified set ofE-VPN instancesEVIs on a givenMES.PE. A particular P-Multicast tree can be set up to carry the traffic originated by sites belonging to a single E-VPN, or to carry the traffic originated by sites belonging to differentE- VPNs.E-VPNs. The ability to carry the traffic of more than one E-VPN on the same tree is termed 'Aggregation'. The tree needs to include everyMESPE that is a member of any of the E-VPNs that are using the tree. This implies that anMESPE may receive multicast traffic for a multicast stream even if it doesn't have any receivers that are interested in receiving traffic for that stream. An Inclusive P-Multicast tree as defined in this document is a P2MP tree. A P2MP tree is used to carry traffic only for E-VPN CEs that are connected to theMESPE that is the root of the tree. The procedures for signaling an Inclusive Tree are the same as those in [VPLS-MCAST] with the VPLS-AD route replaced with the Inclusive Multicast Ethernet Tag route. The P-Tunnel attribute [VPLS-MCAST] for an Inclusive tree is advertised in the InclusiveEthernet A-DMulticast route as described in section "Handling of Multi-Destination Traffic". Note that anMESPE can "aggregate" multiple inclusive trees for differentE- VPNsEVIs on the same P2MP LSP using upstream labels. The procedures for aggregation are the same as those described in [VPLS-MCAST], with VPLS A-D routes replaced by E-VPN Inclusive MulticastEthernet A-Droutes.20.3.2.17.3.2. Selective Trees A Selective P-Multicast tree is used by anMESPE to send IP multicast traffic for one or more specific IP multicast streams, originated by CEs connected to theMES,PE, that belong to the same or differentE- VPNs,E-VPNs, to a subset of theMESsPEs that belong to those E-VPNs. Each of theMESsPEs in the subset should be on the path to a receiver of one or more multicast streams that are mapped onto the tree. The ability to use the same tree for multicast streams that belong to differentE- VPNsE-VPNs is termed anMESPE the ability to create separate SP multicast trees for specific multicast streams, e.g. high bandwidth multicast streams. This allows traffic for these multicast streams to reach only thoseMESPE routers that have receivers in these streams. This avoids flooding otherMESPE routers in the E-VPN.AAn SP can use both Inclusive P-Multicast trees and Selective P- Multicast trees or either of them for a given E-VPN on anMES,PE, based on local configuration. The granularity of a selective tree is <RD,MES,PE, S, G> where S is an IP multicast source address and G is an IP multicast group address or G is a multicast MAC address. Wildcard sources and wildcard groups are supported. Selective trees require explicit tracking as described below. A E-VPNMESPE advertises a selective tree using a E-VPN selective A-D route. The procedures are the same as those in [VPLS-MCAST] with S- PMSI A-D routes in [VPLS-MCAST] replaced by E-VPN Selective A-D routes. The information elements of the E-VPN selective A-D route are similar to those of the VPLS S-PMSI A-D route with the following differences. A E-VPN Selective A-D route includes an optional Ethernet Tag field. Also an E-VPN selective A-D route may encode a MAC address in the Group field. The encoding details of the E-VPN selective A-D route will be described in the next revision. Selective trees can also be aggregated on the same P2MP LSP using aggregation as described in [VPLS-MCAST].20.4.17.4. Explicit Tracking [VPLS-MCAST] describes procedures for explicit tracking that rely on Leaf A-D routes. The same procedures are used for explicit tracking in this specification with VPLS Leaf A-D routes replaced with E-VPN Leaf A-D routes. These procedures allow a rootMESPE to request multicast membership information for a given (S, G), from leafMESs.PEs. LeafMESsPEs rely on IGMP snooping or PIM snooping between theMESPE and the CE to determine the multicast membership information. Note that the procedures in [VPLS-MCAST] do not describe how explicit tracking is performed if the CEs are enabled with join suppression. The procedures for this case will be described in a future version.21.18. Convergence This section describes failure recovery from different types of network failures.21.1.18.1. Transit Link and Node Failures betweenMESesPEs The use of existing MPLS Fast-Reroute mechanisms can provide failure recovery in the order of 50ms, in the event of transit link and node failures in the infrastructure that connects theMESes. 21.2. MESPEs. 18.2. PE Failures Consider a host host1 that is dual homed toMES1PE1 andMES2.PE2. IfMES1PE1 fails, a remoteMES, MES3,PE, PE3, can discover this based on the failure of the BGP session. This failure detection can be in the sub-second range if BFD is used to detect BGP session failure.MES3PE3 can update its forwarding state to start sending all traffic for host1 to onlyMES2.PE2. It is to be noted that this failure recovery is potentially faster than what would be possible if data plane learning were to be used. As in that caseMES3PE3 would have to rely on re-learning of MAC addresses viaMES2. 21.2.1.PE2. 18.2.1. Local Repair It is possible to perform local repair in the case ofMESPE failures. Details will be specified in the future.21.3. MES18.3. PE to CE Network Failures When an Ethernet segment connected to anMESPE fails or when a Ethernet Tag isdeconfigureddecommissioned on an Ethernet segment, then theMESPE MUST withdraw the Ethernet A-D route(s) announced for the <ESI, Ethernet Tags> that are impacted by the failure orde-configuration.decommissioning. Inadditionaddition, theMESPE MUST also withdraw the MAC advertisement routes that are impacted by the failure orde-configuration.decommissioning. The Ethernet A-D routes should be used by an implementation to optimize the withdrawal of MAC advertisement routes. When anMESPE receives a withdrawal of a particular Ethernet A-D route from anMESPE it SHOULD consider all the MAC advertisement routes, that are learned from the same <ESI, Ethernet Tag> as in the Ethernet A-D route, from the advertisingMES,PE, as having been withdrawn. This optimizes the network convergence times in the event ofMESPE to CE failures.22.19. LACP State Synchronization This section requires review and discussion amongst the authors and will be revised in the next version. To support CE multi-homing with multi-chassis Ethernet bundles, theMESesPEs connected to a given CE should synchronize [802.1AX] LACP state amongst each other. This ensures that theMESesPEs can present a single LACP bundle to the CE. This is required for initial system bring-up and upon any configuration change. This includes at least the following LACP specific configuration parameters: - System Identifier (MAC Address): uniquely identifies a LACP speaker. - System Priority: determines which LACP speaker's port priorities are used in the Selection logic. - Aggregator Identifier: uniquely identifies a bundle within a LACP speaker. - Aggregator MAC Address: identifies the MAC address of the bundle. - Aggregator Key: used to determine which ports can join an Aggregator. - Port Number: uniquely identifies an interface within a LACP speaker. - Port Key: determines the set of ports that can be bundled. - Port Priority: determines a port's precedence level to join a bundle in case the number of eligible ports exceeds the maximum number of links allowed in a bundle. Furthermore, theMESesPEs should also synchronize operational (run-time) data, in order for the LACP Selection logic state-machines to execute. This operational data includes the following LACP operational parameters, on a per port basis: - Partner System Identifier: this is the CE System MAC address. - Partner System Priority: the CE LACP System Priority - Partner Port Number: CE's AC port number. - Partner Port Priority: CE's AC Port Priority. - Partner Key: CE's key for this AC. - Partner State: CE's LACP State for the AC. - Actor State: PE's LACP State for the AC. - Port State: PE's AC port status. The above state needs to be communicated betweenMESesPEs forming amulti-chassismulti- chassis bundle during LACP initial bringup, upon any configuration change and upon the occurrence of a failure. It should be noted that the above configuration and operational state is localized in scope and is only relevant toMESesPEs which connect to the same multi-homed CE over a given Ethernet bundle. Furthermore, the communication of state changes, upon failures, must occur with minimal latency, in order to minimize the switchover time and consequent service disruption. The protocol details for synchronizing the LACP state will be described in the following version.23.20. Acknowledgements We would like to thank Yakov Rekhter, Pedro Marques, Kaushik Ghosh, Nischal Sheth, RobertRaszuk andRaszuk, Amit Shukla and Nadeem Mohammed for discussions that helped shape this document. We would also like to thank Han Nguyen for his comments and support of this work. We would also like to thank Steve Kensil for his review.24.21. References [E-VPN-REQ] A. Sajassi, R. Aggarwal et. al., "Requirements for Ethernet VPN", draft-sajassi-raggarwa-l2vpn-evpn-req- 00.txt [RFC4364] "BGP/MPLS IP VPNs", Rosen, Rekhter, et. al., February 2006 [VPLS-MCAST] "Multicast in VPLS". R. Aggarwal et.al., draft-ietf- l2vpn-vpls-mcast-04.txt [RFC4761] Kompella, K. and Y. Rekhter, "Virtual Private LAN Service (VPLS) Using BGP for Auto-Discovery and Signaling", RFC 4761, January 2007. [RFC4762] Lasserre, M. and V. Kompella, "Virtual Private LAN Service (VPLS) Using Label Distribution Protocol (LDP) Signaling", RFC 4762, January 2007. [VPLS-MULTIHOMING] "BGP based Multi-homing in Virtual Private LAN Service", K. Kompella et. al., draft-ietf-l2vpn-vpls- multihoming-00.txt [PIM-SNOOPING] "PIM Snooping over VPLS", V. Hemige et. al., draft- ietf-l2vpn-vpls-pim-snooping-01 [IGMP-SNOOPING] "Considerations for Internet Group Management Protocol (IGMP) and Multicast Listener Discovery (MLD) Snooping Switches", M. Christensen et. al., RFC4541, [RT-CONSTRAIN] P. Marques et. al., "Constrained Route Distribution for Border Gateway Protocol/MultiProtocol Label Switching (BGP/MPLS) Internet Protocol (IP) Virtual Private Networks (VPNs)", RFC 4684, November 200625.[EVPN-SEGMENT-ROUTE] A. Sajassi et. al., "E-VPN Ethernet Segment Route", draft-sajassi-l2vpn-evpn-segment-route-00.txt, work in progress. 21. Author's Address Rahul Aggarwal Email: raggarwa_1@yahoo.com Ali Sajassi Cisco 170 West Tasman Drive San Jose, CA 95134, US Email: sajassi@cisco.com Wim Henderickx Alcatel-Lucent e-mail: wim.henderickx@alcatel-lucent.com Aldrin Isaac Bloomberg Email: aisaac71@bloomberg.net James Uttaro AT&T 200 S. Laurel Avenue Middletown, NJ 07748 USA Email: uttaro@att.com Nabil Bitar Verizon Communications Email : nabil.n.bitar@verizon.com Ravi Shekhar Juniper Networks 1194 N. Mathilda Ave. Sunnyvale, CA 94089 US Email: rshekhar@juniper.netJohn Drake Juniper Networks 1194 N. Mathilda Ave. Sunnyvale, CA 94089 US Email: jdrake@juniper.netFlorin Balus Alcatel-Lucent e-mail: Florin.Balus@alcatel-lucent.com Keyur Patel Cisco 170 West Tasman Drive San Jose, CA 95134, US Email: keyupate@cisco.com Sami Boutros Cisco 170 West Tasman Drive San Jose, CA 95134, US Email: sboutros@cisco.com Samer Salam Cisco 595 Burrard Street, Suite 2123 Vancouver, BC V7X 1J1, Canada Email: ssalam@cisco.com