Tech-invite   3GPPspecs   RFCs   Search in Tech-invite

868584838281807978777675747372717069686766656463626160595857565554535251504948474645444342414039383736353433323130292827262524232221201918171615141312111009080706050403020100IETF‑orgGroupsStats
in Index   Prev   Next

RFC 8388

Usage and Applicability of BGP MPLS-Based Ethernet VPN

Pages: 31
Group: BESS
Informational
Part 1 of 2 – Pages 1 to 20
None   None   Next

Top   ToC   RFC8388 - Page 1
Internet Engineering Task Force (IETF)                   J. Rabadan, Ed.
Request for Comments: 8388                               S. Palislamovic
Category: Informational                                    W. Henderickx
ISSN: 2070-1721                                                    Nokia
                                                              A. Sajassi
                                                                   Cisco
                                                               J. Uttaro
                                                                    AT&T
                                                                May 2018


         Usage and Applicability of BGP MPLS-Based Ethernet VPN

Abstract

   This document discusses the usage and applicability of BGP MPLS-based
   Ethernet VPN (EVPN) in a simple and fairly common deployment
   scenario.  The different EVPN procedures are explained in the example
   scenario along with the benefits and trade-offs of each option.  This
   document is intended to provide a simplified guide for the deployment
   of EVPN networks.

Status of This Memo

   This document is not an Internet Standards Track specification; it is
   published for informational purposes.

   This document is a product of the Internet Engineering Task Force
   (IETF).  It represents the consensus of the IETF community.  It has
   received public review and has been approved for publication by the
   Internet Engineering Steering Group (IESG).  Not all documents
   approved by the IESG are candidates for any level of Internet
   Standard; see Section 2 of RFC 7841.

   Information about the current status of this document, any errata,
   and how to provide feedback on it may be obtained at
   https://www.rfc-editor.org/info/rfc8388.
Top   ToC   RFC8388 - Page 2
Copyright Notice

   Copyright (c) 2018 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://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.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   4
   3.  Use Case Scenario Description and Requirements  . . . . . . .   5
     3.1.  Service Requirements  . . . . . . . . . . . . . . . . . .   5
     3.2.  Why EVPN Is Chosen to Address This Use Case . . . . . . .   7
   4.  Provisioning Model  . . . . . . . . . . . . . . . . . . . . .   7
     4.1.  Common Provisioning Tasks . . . . . . . . . . . . . . . .   8
       4.1.1.  Non-Service-Specific Parameters . . . . . . . . . . .   8
       4.1.2.  Service-Specific Parameters . . . . . . . . . . . . .   9
     4.2.  Service-Interface-Dependent Provisioning Tasks  . . . . .   9
       4.2.1.  VLAN-Based Service Interface EVI  . . . . . . . . . .  10
       4.2.2.  VLAN Bundle Service Interface EVI . . . . . . . . . .  10
       4.2.3.  VLAN-Aware Bundling Service Interface EVI . . . . . .  10
   5.  BGP EVPN NLRI Usage . . . . . . . . . . . . . . . . . . . . .  11
   6.  MAC-Based Forwarding Model Use Case . . . . . . . . . . . . .  11
     6.1.  EVPN Network Startup Procedures . . . . . . . . . . . . .  12
     6.2.  VLAN-Based Service Procedures . . . . . . . . . . . . . .  12
       6.2.1.  Service Startup Procedures  . . . . . . . . . . . . .  13
       6.2.2.  Packet Walk-Through . . . . . . . . . . . . . . . . .  13
     6.3.  VLAN Bundle Service Procedures  . . . . . . . . . . . . .  17
       6.3.1.  Service Startup Procedures  . . . . . . . . . . . . .  17
       6.3.2.  Packet Walk-Through . . . . . . . . . . . . . . . . .  18
     6.4.  VLAN-Aware Bundling Service Procedures  . . . . . . . . .  18
       6.4.1.  Service Startup Procedures  . . . . . . . . . . . . .  18
       6.4.2.  Packet Walk-Through . . . . . . . . . . . . . . . . .  19
   7.  MPLS-Based Forwarding Model Use Case  . . . . . . . . . . . .  20
     7.1.  Impact of MPLS-Based Forwarding on the EVPN Network
           Startup . . . . . . . . . . . . . . . . . . . . . . . . .  21
     7.2.  Impact of MPLS-Based Forwarding on the VLAN-Based Service
           Procedures  . . . . . . . . . . . . . . . . . . . . . . .  21
Top   ToC   RFC8388 - Page 3
     7.3.  Impact of MPLS-Based Forwarding on the VLAN Bundle
           Service Procedures  . . . . . . . . . . . . . . . . . . .  22
     7.4.  Impact of MPLS-Based Forwarding on the VLAN-Aware Service
           Procedures  . . . . . . . . . . . . . . . . . . . . . . .  22
   8.  Comparison between MAC-Based and MPLS-Based Egress Forwarding
       Models  . . . . . . . . . . . . . . . . . . . . . . . . . . .  23
   9.  Traffic Flow Optimization . . . . . . . . . . . . . . . . . .  24
     9.1.  Control-Plane Procedures  . . . . . . . . . . . . . . . .  24
       9.1.1.  MAC Learning Options  . . . . . . . . . . . . . . . .  24
       9.1.2.  Proxy ARP/ND  . . . . . . . . . . . . . . . . . . . .  25
       9.1.3.  Unknown Unicast Flooding Suppression  . . . . . . . .  25
       9.1.4.  Optimization of Inter-Subnet Forwarding . . . . . . .  26
     9.2.  Packet Walk-Through Examples  . . . . . . . . . . . . . .  27
       9.2.1.  Proxy ARP Example for CE2-to-CE3 Traffic  . . . . . .  27
       9.2.2.  Flood Suppression Example for CE1-to-CE3 Traffic  . .  27
       9.2.3.  Optimization of Inter-subnet Forwarding Example for
               CE3-to-CE2 Traffic  . . . . . . . . . . . . . . . . .  28
   10. Security Considerations . . . . . . . . . . . . . . . . . . .  29
   11. IANA Considerations . . . . . . . . . . . . . . . . . . . . .  30
   12. References  . . . . . . . . . . . . . . . . . . . . . . . . .  30
     12.1.  Normative References . . . . . . . . . . . . . . . . . .  30
     12.2.  Informative References . . . . . . . . . . . . . . . . .  30
   Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . .  30
   Contributors  . . . . . . . . . . . . . . . . . . . . . . . . . .  31
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  31

1.  Introduction

   This document complements [RFC7432] by discussing the applicability
   of the technology in a simple and fairly common deployment scenario,
   which is described in Section 3.

   After describing the topology and requirements of the use case
   scenario, Section 4 will describe the provisioning model.

   Once the provisioning model is analyzed, Sections 5, 6, and 7 will
   describe the control-plane and data-plane procedures in the example
   scenario for the two potential disposition/forwarding models: MAC-
   based and MPLS-based models.  While both models can interoperate in
   the same network, each one has different trade-offs that are analyzed
   in Section 8.

   Finally, EVPN provides some potential traffic flow optimization tools
   that are also described in Section 9 in the context of the example
   scenario.
Top   ToC   RFC8388 - Page 4
2.  Terminology

   The following terminology is used:

   VID:  VLAN Identifier

   CE:   Customer Edge (device)

   EVI:  EVPN Instance

   MAC-VRF:  A Virtual Routing and Forwarding (VRF) table for Media
         Access Control (MAC) addresses on a Provider Edge (PE) router.

   ES:   An Ethernet Segment is a set of links through which a CE is
         connected to one or more PEs.  Each ES is identified by an
         Ethernet Segment Identifier (ESI) in the control plane.

   CE-VIDs:  The VLAN Identifier tags being used at CE1, CE2, and CE3 to
         tag customer traffic sent to the service provider EVPN network.

   CE1-MAC, CE2-MAC, and CE3-MAC:  The source MAC addresses "behind"
         each CE, respectively.  These MAC addresses can belong to the
         CEs themselves or to devices connected to the CEs.

   CE1-IP, CE2-IP, and CE3-IP:  The IP addresses associated with the
         above MAC addresses

   LACP: Link Aggregation Control Protocol

   RD:   Route Distinguisher

   RT:   Route Target

   PE:   Provider Edge (router)

   AS:   Autonomous System

   PE-IP:  The IP address of a given PE
Top   ToC   RFC8388 - Page 5
3.  Use Case Scenario Description and Requirements

   Figure 1 depicts the scenario that will be referenced throughout the
   rest of the document.

                            +--------------+
                            |              |
          +----+     +----+ |              | +----+   +----+
          | CE1|-----|    | |              | |    |---| CE3|
          +----+    /| PE1| |   IP/MPLS    | | PE3|   +----+
                   / +----+ |   Network    | +----+
                  /         |              |
                 /   +----+ |              |
          +----+/    |    | |              |
          | CE2|-----| PE2| |              |
          +----+     +----+ |              |
                            +--------------+

                     Figure 1: EVPN Use Case Scenario

   There are three PEs and three CEs considered in this example: PE1,
   PE2, and PE3, as well as CE1, CE2, and CE3.  Broadcast domains must
   be extended among the three CEs.

3.1.  Service Requirements

   The following service requirements are assumed in this scenario:

   o  Redundancy requirements:

      -  CE2 requires multihoming connectivity to PE1 and PE2, not only
         for redundancy purposes but also for adding more upstream/
         downstream connectivity bandwidth to/from the network.

      -  Fast convergence.  For example, if the link between CE2 and PE1
         goes down, a fast convergence mechanism must be supported so
         that PE3 can immediately send the traffic to PE2, irrespective
         of the number of affected services and MAC addresses.

   o  Service interface requirements:

      -  The service definition must be flexible in terms of CE-VID-to-
         broadcast-domain assignment in the core.
Top   ToC   RFC8388 - Page 6
      -  The following three EVI services are required in this example:

         EVI100 uses VLAN-based service interfaces in the three CEs with
         a 1:1 VLAN-to-EVI mapping.  The CE-VIDs at the three CEs can be
         the same (for example, VID 100) or different at each CE (for
         instance, VID 101 in CE1, VID 102 in CE2, and VID 103 in CE3).
         A single broadcast domain needs to be created for EVI100 in any
         case; therefore, CE-VIDs will require translation at the egress
         PEs if they are not consistent across the three CEs.  The case
         when the same CE-VID is used across the three CEs for EVI100 is
         referred to in [RFC7432] as the "Unique VLAN" EVPN case.  This
         term will be used throughout this document too.

         EVI200 uses VLAN bundle service interfaces in CE1, CE2, and CE3
         based on an N:1 VLAN-to-EVI mapping.  The operator needs to
         preconfigure a range of CE-VIDs and its mapping to the EVI, and
         this mapping should be consistent in all the PEs (no
         translation is supported).  A single broadcast domain is
         created for the customer.  The customer is responsible for
         keeping the separation between users in different CE-VIDs.

         EVI300 uses VLAN-aware bundling service interfaces in CE1, CE2,
         and CE3.  As in the EVI200 case, an N:1 VLAN-to-EVI mapping is
         created at the ingress PEs; however, in this case, a separate
         broadcast domain is required per CE-VID.  The CE-VIDs can be
         different (hence, CE-VID translation is required).

   Note that in Section 4.2.1, only EVI100 is used as an example of
   VLAN-based service provisioning.  In Sections 6.2 and 7.2, 4k VLAN-
   based EVIs (EVI1 to EVI4k) are used so that the impact of MAC versus
   MPLS disposition models in the control plane can be evaluated.  In
   the same way, EVI200 and EVI300 will be described with a 4k:1 mapping
   (CE-VIDs-to-EVI mapping) in Sections 6.3, 6.4, 7.3, and 7.4.

   o  Broadcast, Unknown Unicast, Multicast (BUM) optimization
      requirements:

      -  The solution must support ingress replication or P2MP MPLS LSPs
         on a per EVI service.  For example, we can use ingress
         replication for EVI100 and EVI200, assuming those EVIs will not
         carry much BUM traffic.  On the contrary, if EVI300 is
         presumably carrying a significant amount of multicast traffic,
         P2MP MPLS LSPs can be used for this service.

      -  The benefit of ingress replication compared to P2MP LSPs is
         that the core routers will not need to maintain any multicast
         states.
Top   ToC   RFC8388 - Page 7
3.2.  Why EVPN Is Chosen to Address This Use Case

   Virtual Private LAN Service (VPLS) solutions based on [RFC4761],
   [RFC4762], and [RFC6074] cannot meet the requirements in Section 3,
   whereas EVPN can.

   For example:

   o  If CE2 has a single CE-VID (or a few CE-VIDs), the current VPLS
      multihoming solutions (based on load-balancing per CE-VID or
      service) do not provide the optimized link utilization required in
      this example.  EVPN provides the flow-based, load-balancing,
      multihoming solution required in this scenario to optimize the
      upstream/downstream link utilization between CE2 and PE1-PE2.

   o  EVPN provides a fast convergence solution that is independent of
      the CE-VIDs in the multihomed PEs.  Upon failure on the link
      between CE2 and PE1, PE3 can immediately send the traffic to PE2
      based on a single notification message being sent by PE1.  This is
      not possible with VPLS solutions.

   o  With regard to service interfaces and mapping to broadcast
      domains, while VPLS might meet the requirements for EVI100 and
      EVI200, the VLAN-aware bundling service interfaces required by
      EVI300 are not supported by the current VPLS tools.

   The rest of the document will describe how EVPN can be used to meet
   the service requirements described in Section 3 and even optimize the
   network further by:

   o  providing the user with an option to reduce (and even suppress)
      ARP (Address Resolution Protocol) flooding; and

   o  supporting ARP termination and inter-subnet forwarding.

4.  Provisioning Model

   One of the requirements stated in [RFC7209] is the ease of
   provisioning.  BGP parameters and service context parameters should
   be auto-provisioned so that the addition of a new MAC-VRF to the EVI
   requires a minimum number of single-sided provisioning touches.
   However, this is possible only in a limited number of cases.  This
   section describes the provisioning tasks required for the services
   described in Section 3, i.e., EVI100 (VLAN-based service interfaces),
   EVI200 (VLAN bundle service interfaces), and EVI300 (VLAN-aware
   bundling service interfaces).
Top   ToC   RFC8388 - Page 8
4.1.  Common Provisioning Tasks

   Regardless of the service interface type (VLAN-based, VLAN bundle, or
   VLAN-aware), the following subsections describe the parameters to be
   provisioned in the three PEs.

4.1.1.  Non-Service-Specific Parameters

   The multihoming function in EVPN requires the provisioning of certain
   parameters that are not service specific and that are shared by all
   the MAC-VRFs in the node using the multihoming capabilities.  In our
   use case, these parameters are only provisioned or auto-derived in
   PE1 and PE2 and are listed below:

   o  Ethernet Segment Identifier (ESI): Only the ESI associated with
      CE2 needs to be considered in our example.  Single-homed CEs such
      as CE1 and CE3 do not require the provisioning of an ESI (the ESI
      will be coded as zero in the BGP Network Layer Reachability
      Information (NLRI)).  In our example, a Link Aggregation Group
      (LAG) is used between CE2 and PE1-PE2 (since all-active
      multihoming is a requirement); therefore, the ESI can be auto-
      derived from the LACP information as described in [RFC7432].  Note
      that the ESI must be unique across all the PEs in the network;
      therefore, the auto-provisioning of the ESI is recommended only in
      case the CEs are managed by the operator.  Otherwise, the ESI
      should be manually provisioned (Type 0, as in [RFC7432]) in order
      to avoid potential conflicts.

   o  ES-Import Route Target (ES-Import RT): This is the RT that will be
      sent by PE1 and PE2, along with the ES route.  Regardless of how
      the ESI is provisioned in PE1 and PE2, the ES-Import RT must
      always be auto-derived from the 6-byte MAC address portion of the
      ESI value.

   o  Ethernet Segment Route Distinguisher (ES RD): This is the RD to be
      encoded in the ES route, and it is the Ethernet Auto-Discovery
      (A-D) route to be sent by PE1 and PE2 for the CE2 ESI.  This RD
      should always be auto-derived from the PE-IP address, as described
      in [RFC7432].

   o  Multihoming type: The user must be able to provision the
      multihoming type to be used in the network.  In our use case, the
      multihoming type will be set to all-active for the CE2 ESI.  This
      piece of information is encoded in the ESI Label extended
      community flags and is sent by PE1 and PE2 along with the Ethernet
      A-D route for the CE2 ESI.
Top   ToC   RFC8388 - Page 9
   In addition, the same LACP parameters will be configured in PE1 and
   PE2 for the ES so that CE2 can send frames to PE1 and PE2 as though
   they were forming a single system.

4.1.2.  Service-Specific Parameters

   The following parameters must be provisioned in PE1, PE2, and PE3 per
   EVI service:

   o  EVI Identifier: The global identifier per EVI that is shared by
      all the PEs that are part of the EVI, i.e., PE1, PE2, and PE3 will
      be provisioned with EVI100, 200, and 300.  The EVI identifier can
      be associated with (or be the same value as) the EVI default
      Ethernet Tag (4-byte default broadcast domain identifier for the
      EVI).  The Ethernet Tag is different from zero in the EVPN BGP
      routes only if the service interface type (of the source PE) is a
      VLAN-aware bundle.

   o  EVI Route Distinguisher (EVI RD): This RD is a unique value across
      all the MAC-VRFs in a PE.  Auto-derivation of this RD might be
      possible depending on the service interface type being used in the
      EVI.  The next section discusses the specifics of each service
      interface type.

   o  EVI Route Target(s) (EVI RT): One or more RTs can be provisioned
      per MAC-VRF.  The RT(s) imported and exported can be equal or
      different, just as the RT(s) in IP-VPNs.  Auto-derivation of this
      RT(s) might be possible depending on the service interface type
      being used in the EVI.  The next section discusses the specifics
      of each service interface type.

   o  CE-VID and port/LAG binding to EVI identifier or Ethernet Tag: For
      more information, please see Section 4.2.

4.2.  Service-Interface-Dependent Provisioning Tasks

   Depending on the service interface type being used in the EVI, a
   given CE-VID binding provision must be specified.
Top   ToC   RFC8388 - Page 10
4.2.1.  VLAN-Based Service Interface EVI

   In our use case, EVI100 is a VLAN-based service interface EVI.

   EVI100 can be a "unique-VLAN" service if the CE-VID being used for
   this service in CE1, CE2, and CE3 is identical (for example, VID
   100).  In that case, the VID 100 binding must be provisioned in PE1,
   PE2, and PE3 for EVI100 and the associated port or LAG.  The MAC-VRF
   RD and RT can be auto-derived from the CE-VID:

   o  The auto-derived MAC-VRF RD will be a Type 1 RD, as recommended in
      [RFC7432], and it will be comprised of [PE-IP]:[zero-padded-VID];
      where [PE-IP] is the IP address of the PE (a loopback address) and
      [zero-padded-VID] is a 2-byte value where the low-order 12 bits
      are the VID (VID 100 in our example) and the high-order 4 bits are
      zero.

   o  The auto-derived MAC-VRF RT will be composed of [AS]:[zero-padded-
      VID]; where [AS] is the Autonomous System that the PE belongs to
      and [zero-padded-VID] is a 2- or 4-byte value where the low-order
      12 bits are the VID (VID 100 in our example) and the high-order
      bits are zero.  Note that auto-deriving the RT implies supporting
      a basic any-to-any topology in the EVI and using the same import
      and export RT in the EVI.

   If EVI100 is not a "unique-VLAN" instance, each individual CE-VID
   must be configured in each PE, and MAC-VRF RDs and RTs cannot be
   auto-derived; hence, they must be provisioned by the user.

4.2.2.  VLAN Bundle Service Interface EVI

   Assuming EVI200 is a VLAN bundle service interface EVI, and VIDs
   200-250 are assigned to EVI200, the CE-VID bundle 200-250 must be
   provisioned on PE1, PE2, and PE3.  Note that this model does not
   allow CE-VID translation and the CEs must use the same CE-VIDs for
   EVI200.  No auto-derived EVI RDs or EVI RTs are possible.

4.2.3.  VLAN-Aware Bundling Service Interface EVI

   If EVI300 is a VLAN-aware bundling service interface EVI, CE-VID
   binding to EVI300 does not have to match on the three PEs (only on
   PE1 and PE2, since they are part of the same ES).  For example, PE1
   and PE2 CE-VID binding to EVI300 can be set to the range 300-310 and
   PE3 to 321-330.  Note that each individual CE-VID will be assigned to
   a different broadcast domain, which will be represented by an
   Ethernet Tag in the control plane.
Top   ToC   RFC8388 - Page 11
   Therefore, besides the CE-VID bundle range bound to EVI300 in each
   PE, associations between each individual CE-VID and the corresponding
   EVPN Ethernet Tag must be provisioned by the user.  No auto-derived
   EVI RDs/RTs are possible.

5.  BGP EVPN NLRI Usage

   [RFC7432] defines four different route types and four different
   extended communities.  However, not all the PEs in an EVPN network
   must generate and process all the different routes and extended
   communities.  Table 1 shows the routes that must be exported and
   imported in the use case described in this document.  "Export", in
   this context, means that the PE must be capable of generating and
   exporting a given route, assuming there are no BGP policies to
   prevent it.  In the same way, "Import" means the PE must be capable
   of importing and processing a given route, assuming the right RTs and
   policies.  "N/A" means neither import nor export actions are
   required.

            +-----------------+---------------+---------------+
            | BGP EVPN Routes | PE1-PE2       | PE3           |
            +-----------------+---------------+---------------+
            | ES              | Export/Import | N/A           |
            | A-D per ESI     | Export/Import | Import        |
            | A-D per EVI     | Export/Import | Import        |
            | MAC             | Export/Import | Export/Import |
            | Inclusive Mcast | Export/Import | Export/Import |
            +-----------------+---------------+---------------+

            Table 1: Base EVPN Routes and Export/Import Actions

   PE3 is required to export only MAC and Inclusive Multicast (Mcast)
   routes and be able to import and process A-D routes as well as MAC
   and Inclusive Multicast routes.  If PE3 did not support importing and
   processing A-D routes per ESI and per EVI, fast convergence and
   aliasing functions (respectively) would not be possible in this use
   case.

6.  MAC-Based Forwarding Model Use Case

   This section describes how the BGP EVPN routes are exported and
   imported by the PEs in our use case as well as how traffic is
   forwarded assuming that PE1, PE2, and PE3 support a MAC-based
   forwarding model.  In order to compare the control- and data-plane
   impact in the two forwarding models (MAC-based and MPLS-based) and
   different service types, we will assume that CE1, CE2, and CE3 need
   to exchange traffic for up to 4k CE-VIDs.
Top   ToC   RFC8388 - Page 12
6.1.  EVPN Network Startup Procedures

   Before any EVI is provisioned in the network, the following
   procedures are required:

   o  Infrastructure setup: The proper MPLS infrastructure must be set
      up among PE1, PE2, and PE3 so that the EVPN services can make use
      of Point-to-Point (P2P) and P2MP LSPs.  In addition to the MPLS
      transport, PE1 and PE2 must be properly configured with the same
      LACP configuration to CE2.  Details are provided in [RFC7432].
      Once the LAG is properly set up, the ESI for the CE2 Ethernet
      Segment (for example, ESI12) can be auto-generated by PE1 and PE2
      from the LACP information exchanged with CE2 (ESI Type 1), as
      discussed in Section 4.1.  Alternatively, the ESI can also be
      manually provisioned on PE1 and PE2 (ESI Type 0).  PE1 and PE2
      will auto-configure a BGP policy that will import any ES route
      matching the auto-derived ES-Import RT for ESI12.

   o  Ethernet Segment route exchange and Designated Forwarder (DF)
      election: PE1 and PE2 will advertise a BGP Ethernet Segment route
      for ESI12, where the ESI RD and ES-Import RT will be auto-
      generated as discussed in Section 4.1.1.  PE1 and PE2 will import
      the ES routes of each other and will run the DF election algorithm
      for any existing EVI (if any, at this point).  PE3 will simply
      discard the route.  Note that the DF election algorithm can
      support service carving so that the downstream BUM traffic from
      the network to CE2 can be load-balanced across PE1 and PE2 on a
      per-service basis.

   At the end of this process, the network infrastructure is ready to
   start deploying EVPN services.  PE1 and PE2 are aware of the
   existence of a shared Ethernet Segment, i.e., ESI12.

6.2.  VLAN-Based Service Procedures

   Assuming that the EVPN network must carry traffic among CE1, CE2, and
   CE3 for up to 4k CE-VIDs, the service provider can decide to
   implement VLAN-based service interface EVIs to accomplish it.  In
   this case, each CE-VID will be individually mapped to a different
   EVI.  While this means a total number of 4k MAC-VRFs are required per
   PE, the advantages of this approach are the auto-provisioning of most
   of the service parameters if no VLAN translation is needed (see
   Section 4.2.1) and great control over each individual customer
   broadcast domain.  We assume in this section that the range of EVIs
   from 1 to 4k is provisioned in the network.
Top   ToC   RFC8388 - Page 13
6.2.1.  Service Startup Procedures

   As soon as the EVIs are created in PE1, PE2, and PE3, the following
   control-plane actions are carried out:

   o  Flooding tree setup per EVI (4k routes): Each PE will send one
      Inclusive Multicast Ethernet Tag route per EVI (up to 4k routes
      per PE) so that the flooding tree per EVI can be set up.  Note
      that ingress replication or P2MP LSPs can be optionally signaled
      in the Provider Multicast Service Interface (PMSI) Tunnel
      attribute and the corresponding tree can be created.

   o  Ethernet A-D routes per ESI (a set of routes for ESI12): A set of
      A-D routes with a total list of 4k RTs (one per EVI) for ESI12
      will be issued from PE1 and PE2 (it has to be a set of routes so
      that the total number of RTs can be conveyed).  As per [RFC7432],
      each Ethernet A-D route per ESI is differentiated from the other
      routes in the set by a different Route Distinguisher (ES RD).
      This set will also include ESI Label extended communities with the
      active-standby flag set to zero (all-active multihoming type) and
      an ESI Label different from zero (used for split-horizon
      functions).  These routes will be imported by the three PEs, since
      the RTs match the locally configured EVI RTs.  The A-D routes per
      ESI will be used for fast convergence and split-horizon functions,
      as discussed in [RFC7432].

   o  Ethernet A-D routes per EVI (4k routes): An A-D route per EVI will
      be sent by PE1 and PE2 for ESI12.  Each individual route includes
      the corresponding EVI RT and an MPLS Label to be used by PE3 for
      the aliasing function.  These routes will be imported by the three
      PEs.

6.2.2.  Packet Walk-Through

   Once the services are set up, the traffic can start flowing.
   Assuming there are no MAC addresses learned yet and that MAC learning
   at the access is performed in the data plane in our use case, this is
   the process followed upon receiving frames from each CE (for example,
   EVI1).

   BUM frame example from CE1:

   a.  An ARP request with CE-VID=1 is issued from source MAC CE1-MAC
       (MAC address coming from CE1 or from a device connected to CE1)
       to find the MAC address of CE3-IP.
Top   ToC   RFC8388 - Page 14
   b.  Based on the CE-VID, the frame is identified to be forwarded in
       the MAC-VRF-1 (EVI1) context.  A source MAC lookup is done in the
       MAC FIB, and the sender's CE1-IP is looked up in the proxy ARP
       table within the MAC-VRF-1 (EVI1) context.  If CE1-MAC/CE1-IP are
       unknown in both tables, three actions are carried out (assuming
       the source MAC is accepted by PE1):

       1.  the forwarding state is added for the CE1-MAC associated with
           the corresponding port and CE-VID;

       2.  the ARP request is snooped and the tuple CE1-MAC/CE1-IP is
           added to the proxy ARP table; and

       3.  a BGP MAC Advertisement route is triggered from PE1
           containing the EVI1 RD and RT, ESI=0, Ethernet-Tag=0, and
           CE1-MAC/CE1-IP, along with an MPLS Label assigned to MAC-
           VRF-1 from the PE1 Label space.  Note that depending on the
           implementation, the MAC FIB and proxy ARP learning processes
           can independently send two BGP MAC advertisements instead of
           one (one containing only the CE1-MAC and another one
           containing CE1-MAC/CE1-IP).

       Since we assume a MAC forwarding model, a label per MAC-VRF is
       normally allocated and signaled by the three PEs for MAC
       Advertisement routes.  Based on the RT, the route is imported by
       PE2 and PE3, and the forwarding state plus the ARP entry are
       added to their MAC-VRF-1 context.  From this moment on, any ARP
       request from CE2 or CE3 destined to CE1-IP can be directly
       replied to by PE1, PE2, or PE3, and ARP flooding for CE1-IP is
       not needed in the core.

   c.  Since the ARP frame is a broadcast frame, it is forwarded by PE1
       using the Inclusive Multicast Tree for EVI1 (CE-VID=1 tag should
       be kept if translation is required).  Depending on the type of
       tree, the label stack may vary.  For example, assuming ingress
       replication, the packet is replicated to PE2 and PE3 with the
       downstream allocated labels and the P2P LSP transport labels.  No
       other labels are added to the stack.

   d.  Assuming PE1 is the DF for EVI1 on ESI12, the frame is locally
       replicated to CE2.

   e.  The MPLS-encapsulated frame gets to PE2 and PE3.  Since PE2 is
       non-DF for EVI1 on ESI12, and there is no other CE connected to
       PE2, the frame is discarded.  At PE3, the frame is
       de-encapsulated and the CE-VID is translated, if needed, and
       forwarded to CE3.
Top   ToC   RFC8388 - Page 15
   Any other type of BUM frame from CE1 would follow the same
   procedures.  BUM frames from CE3 would follow the same procedures
   too.

   BUM frame example from CE2:

   a.  An ARP request with CE-VID=1 is issued from source MAC CE2-MAC to
       find the MAC address of CE3-IP.

   b.  CE2 will hash the frame and will forward it to, for example, PE2.
       Based on the CE-VID, the frame is identified to be forwarded in
       the EVI1 context.  A source MAC lookup is done in the MAC FIB and
       the sender's CE2-IP is looked up in the proxy ARP table within
       the MAC-VRF-1 context.  If both are unknown, three actions are
       carried out (assuming the source MAC is accepted by PE2):

       1.  the forwarding state is added for the CE2-MAC associated with
           the corresponding LAG/ESI and CE-VID;

       2.  the ARP request is snooped and the tuple CE2-MAC/CE2-IP is
           added to the proxy ARP table; and

       3.  a BGP MAC Advertisement route is triggered from PE2
           containing the EVI1 RD and RT, ESI=12, Ethernet-Tag=0, and
           CE2-MAC/CE2-IP, along with an MPLS Label assigned from the
           PE2 Label space (one label per MAC-VRF).  Again, depending on
           the implementation, the MAC FIB and proxy ARP learning
           processes can independently send two BGP MAC advertisements
           instead of one.

       Note that since PE3 is not part of ESI12, it will install the
       forwarding state for CE2-MAC as long as the A-D routes for ESI12
       are also active on PE3.  On the contrary, PE1 is part of ESI12,
       therefore PE1 will not modify the forwarding state for CE2-MAC if
       it has previously learned CE2-MAC locally attached to ESI12.
       Otherwise, it will add the forwarding state for CE2-MAC
       associated with the local ESI12 port.

   c.  Assuming PE2 does not have the ARP information for CE3-IP yet,
       and since the ARP is a broadcast frame and PE2 is the non-DF for
       EVI1 on ESI12, the frame is forwarded by PE2 in the Inclusive
       Multicast Tree for EVI1, thus adding the ESI Label for ESI12 at
       the bottom of the stack.  The ESI Label has been previously
       allocated and signaled by the A-D routes for ESI12.  Note that,
       as per [RFC7432], if the result of the CE2 hashing is different
       and the frame is sent to PE1, PE1 should add the ESI Label too
       (PE1 is the DF for EVI1 on ESI12).
Top   ToC   RFC8388 - Page 16
   d.  The MPLS-encapsulated frame gets to PE1 and PE3.  PE1
       de-encapsulates the Inclusive Multicast Tree Label(s) and, based
       on the ESI Label at the bottom of the stack, it decides to not
       forward the frame to the ESI12.  It will pop the ESI Label and
       will replicate it to CE1, since CE1 is not part of the ESI
       identified by the ESI Label.  At PE3, the Inclusive Multicast
       Tree Label is popped and the frame forwarded to CE3.  If a P2MP
       LSP is used as the Inclusive Multicast Tree for EVI1, PE3 will
       find an ESI Label after popping the P2MP LSP Label.  The ESI
       Label will simply be popped, since CE3 is not part of ESI12.

   Unicast frame example from CE3 to CE1:

   a.  A unicast frame with CE-VID=1 is issued from source MAC CE3-MAC
       and destination MAC CE1-MAC (we assume PE3 has previously
       resolved an ARP request from CE3 to find the MAC of CE1-IP and
       has added CE3-MAC/CE3-IP to its proxy ARP table).

   b.  Based on the CE-VID, the frame is identified to be forwarded in
       the EVI1 context.  A source MAC lookup is done in the MAC FIB
       within the MAC-VRF-1 context and this time, since we assume
       CE3-MAC is known, no further actions are carried out as a result
       of the source lookup.  A destination MAC lookup is performed next
       and the label stack associated with the MAC CE1-MAC is found
       (including the label associated with MAC-VRF-1 in PE1 and the P2P
       LSP Label to get to PE1).  The unicast frame is then encapsulated
       and forwarded to PE1.

   c.  At PE1, the packet is identified to be part of EVI1 and a
       destination MAC lookup is performed in the MAC-VRF-1 context.
       The labels are popped and the frame is forwarded to CE1 with
       CE-VID=1.

       Unicast frames from CE1 to CE3 or from CE2 to CE3 follow the same
       procedures described above.

   Unicast frame example from CE3 to CE2:

   a.  A unicast frame with CE-VID=1 is issued from source MAC CE3-MAC
       and destination MAC CE2-MAC (we assume PE3 has previously
       resolved an ARP request from CE3 to find the MAC of CE2-IP).

   b.  Based on the CE-VID, the frame is identified to be forwarded in
       the MAC-VRF-1 context.  We assume CE3-MAC is known.  A
       destination MAC lookup is performed next and PE3 finds CE2-MAC
       associated with PE2 on ESI12, an Ethernet Segment for which PE3
       has two active A-D routes per ESI (from PE1 and PE2) and two
       active A-D routes for EVI1 (from PE1 and PE2).  Based on a
Top   ToC   RFC8388 - Page 17
       hashing function for the frame, PE3 may decide to forward the
       frame using the label stack associated with PE2 (label received
       from the MAC Advertisement route) or the label stack associated
       with PE1 (label received from the A-D route per EVI for EVI1).
       Either way, the frame is encapsulated and sent to the remote PE.

   c.  At PE2 (or PE1), the packet is identified to be part of EVI1
       based on the bottom label, and a destination MAC lookup is
       performed.  At either PE (PE2 or PE1), the FIB lookup yields a
       local ESI12 port to which the frame is sent.

   Unicast frames from CE1 to CE2 follow the same procedures.

6.3.  VLAN Bundle Service Procedures

   Instead of using VLAN-based interfaces, the operator can choose to
   implement VLAN bundle interfaces to carry the traffic for the 4k
   CE-VIDs among CE1, CE2, and CE3.  If that is the case, the 4k CE-VIDs
   can be mapped to the same EVI (for example, EVI200) at each PE.  The
   main advantage of this approach is the low control-plane overhead
   (reduced number of routes and labels) and easiness of provisioning at
   the expense of no control over the customer broadcast domains, i.e.,
   a single Inclusive Multicast Tree for all the CE-VIDs and no CE-VID
   translation in the provider network.

6.3.1.  Service Startup Procedures

   As soon as the EVI200 is created in PE1, PE2, and PE3, the following
   control-plane actions are carried out:

   o  Flooding tree setup per EVI (one route): Each PE will send one
      Inclusive Multicast Ethernet Tag route per EVI (hence, only one
      route per PE) so that the flooding tree per EVI can be set up.
      Note that ingress replication or P2MP LSPs can optionally be
      signaled in the PMSI Tunnel attribute and the corresponding tree
      can be created.

   o  Ethernet A-D routes per ESI (one route for ESI12): A single A-D
      route for ESI12 will be issued from PE1 and PE2.  This route will
      include a single RT (RT for EVI200), an ESI Label extended
      community with the active-standby flag set to zero (all-active
      multihoming type), and an ESI Label different from zero (used by
      the non-DF for split-horizon functions).  This route will be
      imported by the three PEs, since the RT matches the locally
      configured EVI200 RT.  The A-D routes per ESI will be used for
      fast convergence and split-horizon functions, as described in
      [RFC7432].
Top   ToC   RFC8388 - Page 18
   o  Ethernet A-D routes per EVI (one route): An A-D route (EVI200)
      will be sent by PE1 and PE2 for ESI12.  This route includes the
      EVI200 RT and an MPLS Label to be used by PE3 for the aliasing
      function.  This route will be imported by the three PEs.

6.3.2.  Packet Walk-Through

   The packet walk-through for the VLAN bundle case is similar to the
   one described for EVI1 in the VLAN-based case except for the way the
   CE-VID is handled by the ingress PE and the egress PE:

   o  No VLAN translation is allowed and the CE-VIDs are kept untouched
      from CE to CE, i.e., the ingress CE-VID must be kept at the
      imposition PE and at the disposition PE.

   o  The frame is identified to be forwarded in the MAC-VRF-200 context
      as long as its CE-VID belongs to the VLAN bundle defined in the
      PE1/PE2/PE3 port to CE1/CE2/CE3.  Our example is a special VLAN
      bundle case since the entire CE-VID range is defined in the ports;
      therefore, any CE-VID would be part of EVI200.

   Please refer to Section 6.2.2 for more information about the control-
   plane and forwarding-plane interaction for BUM and unicast traffic
   from the different CEs.

6.4.  VLAN-Aware Bundling Service Procedures

   The last potential service type analyzed in this document is VLAN-
   aware bundling.  When this type of service interface is used to carry
   the 4k CE-VIDs among CE1, CE2, and CE3, all the CE-VIDs will be
   mapped to the same EVI (for example, EVI300).  The difference,
   compared to the VLAN bundle service type in the previous section, is
   that each incoming CE-VID will also be mapped to a different
   "normalized" Ethernet Tag in addition to EVI300.  If no translation
   is required, the Ethernet Tag will match the CE-VID.  Otherwise, a
   translation between CE-VID and Ethernet Tag will be needed at the
   imposition PE and at the disposition PE.  The main advantage of this
   approach is the ability to control customer broadcast domains while
   providing a single EVI to the customer.

6.4.1.  Service Startup Procedures

   As soon as the EVI300 is created in PE1, PE2, and PE3, the following
   control-plane actions are carried out:

   o  Flooding tree setup per EVI per Ethernet Tag (4k routes): Each PE
      will send one Inclusive Multicast Ethernet Tag route per EVI and
      per Ethernet Tag (hence, 4k routes per PE) so that the flooding
Top   ToC   RFC8388 - Page 19
      tree per customer broadcast domain can be set up.  Note that
      ingress replication or P2MP LSPs can optionally be signaled in the
      PMSI Tunnel attribute and the corresponding tree be created.  In
      the described use case, since all the CE-VIDs and Ethernet Tags
      are defined on the three PEs, multicast tree aggregation might
      make sense in order to save forwarding states.

   o  Ethernet A-D routes per ESI (one route for ESI12): A single A-D
      route for ESI12 will be issued from PE1 and PE2.  This route will
      include a single RT (RT for EVI300), an ESI Label extended
      community with the active-standby flag set to zero (all-active
      multihoming type), and an ESI Label different than zero (used by
      the non-DF for split-horizon functions).  This route will be
      imported by the three PEs, since the RT matches the locally
      configured EVI300 RT.  The A-D routes per ESI will be used for
      fast convergence and split-horizon functions, as described in
      [RFC7432].

   o  Ethernet A-D routes per EVI: A single A-D route (EVI300) may be
      sent by PE1 and PE2 for ESI12 in case no CE-VID translation is
      required.  This route includes the EVI300 RT and an MPLS Label to
      be used by PE3 for the aliasing function.  This route will be
      imported by the three PEs.  Note that if CE-VID translation is
      required, an A-D per EVI route is required per Ethernet Tag (4k).

6.4.2.  Packet Walk-Through

   The packet walk-through for the VLAN-aware case is similar to the one
   described before.  Compared to the other two cases, VLAN-aware
   services allow for CE-VID translation and for an N:1 CE-VID to EVI
   mapping.  Both things are not supported at once in either of the two
   other service interfaces.  Some differences compared to the packet
   walk-through described in Section 6.2.2 are as follows:

   o  At the ingress PE, the frames are identified to be forwarded in
      the EVI300 context as long as their CE-VID belong to the range
      defined in the PE port to the CE.  In addition to it, CE-VID=x is
      mapped to a "normalized" Ethernet-Tag=y at the MAC-VRF-300 (where
      x and y might be equal if no translation is needed).  Qualified
      learning is now required (a different bridge table is allocated
      within MAC-VRF-300 for each Ethernet Tag).  Potentially, the same
      MAC could be learned in two different Ethernet Tag bridge tables
      of the same MAC-VRF.

   o  Any new locally learned MAC on the MAC-VRF-300/Ethernet-Tag=y
      interface is advertised by the ingress PE in a MAC Advertisement
      route using the now Ethernet Tag field (Ethernet-Tag=y) so that
      the remote PE learns the MAC associated with the MAC-VRF-300/
Top   ToC   RFC8388 - Page 20
      Ethernet-Tag=y FIB.  Note that the Ethernet Tag field is not used
      in advertisements of MACs learned on VLAN-based or VLAN-bundle
      service interfaces.

   o  At the ingress PE, BUM frames are sent to the corresponding
      flooding tree for the particular Ethernet Tag they are mapped to.
      Each individual Ethernet Tag can have a different flooding tree
      within the same EVI300.  For instance, Ethernet-Tag=y can use
      ingress replication to get to the remote PEs, whereas Ethernet-
      Tag=z can use a P2MP LSP.

   o  At the egress PE, Ethernet-Tag=y (for a given broadcast domain
      within MAC-VRF-300) can be translated to egress CE-VID=x.  That is
      not possible for VLAN bundle interfaces.  It is possible for VLAN-
      based interfaces, but it requires a separate MAC-VRF per CE-VID.



(page 20 continued on part 2)

Next Section