Internet Engineering Task Force (IETF)                   J. Rabadan, Ed.
Request for Comments: 9574                                  S. Sathappan
Category: Standards Track                                          Nokia
ISSN: 2070-1721                                                   W. Lin
                                                        Juniper Networks
                                                              M. Katiyar
                                                          Versa Networks
                                                              A. Sajassi
                                                           Cisco Systems
                                                              April
                                                                May 2024

    Optimized Ingress Replication Solution for Ethernet VPNs (EVPNs)

Abstract

   Network Virtualization Overlay (NVO) networks using Ethernet VPNs
   (EVPNs) as their control plane may use trees based on ingress
   replication or Protocol Independent Multicast (PIM) to convey the
   overlay Broadcast, Unknown Unicast, or Multicast (BUM) traffic.  PIM
   provides an efficient solution that prevents sending multiple copies
   of the same packet over the same physical link; however, it may not
   always be deployed in the NVO network core.  Ingress replication
   avoids the dependency on PIM in the NVO network core.  While ingress
   replication provides a simple multicast transport, some NVO networks
   with demanding multicast applications require a more efficient
   solution without PIM in the core.  This document describes a solution
   to optimize the efficiency of ingress replication trees.

Status of This Memo

   This is an Internet Standards Track document.

   This document is a product of the Internet Engineering Task Force
   (IETF).  It represents the consensus of the IETF community.  It has
   received public review and has been approved for publication by the
   Internet Engineering Steering Group (IESG).  Further information on
   Internet Standards is available in Section 2 of RFC 7841.

   Information about the current status of this document, any errata,
   and how to provide feedback on it may be obtained at
   https://www.rfc-editor.org/info/rfc9574.

Copyright Notice

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

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://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 Revised BSD License text as described in Section 4.e of the
   Trust Legal Provisions and are provided without warranty as described
   in the Revised BSD License.

Table of Contents

   1.  Introduction
   2.  Terminology and Conventions
   3.  Solution Requirements
   4.  EVPN BGP Attributes for Optimized Ingress Replication
   5.  Non-selective Assisted Replication (AR) Solution Description
     5.1.  Non-selective AR-REPLICATOR Procedures
     5.2.  Non-selective AR-LEAF Procedures
     5.3.  RNVE Procedures
   6.  Selective Assisted Replication (AR) Solution Description
     6.1.  Selective AR-REPLICATOR Procedures
     6.2.  Selective AR-LEAF Procedures
   7.  Pruned Flooding Lists (PFLs)
     7.1.  Example of a Pruned Flooding List
   8.  AR Procedures for Single-IP AR-REPLICATORS
   9.  AR Procedures and EVPN All-Active Multihoming Split-Horizon
     9.1.  Ethernet Segments on AR-LEAF Nodes
     9.2.  Ethernet Segments on AR-REPLICATOR Nodes
   10. Security Considerations
   11. IANA Considerations
   12. References
     12.1.  Normative References
     12.2.  Informative References
   Acknowledgements
   Contributors
   Authors' Addresses

1.  Introduction

   Ethernet Virtual Private Networks (EVPNs) may be used as the control
   plane for a Network Virtualization Overlay (NVO) network [RFC8365].
   Network Virtualization Edge (NVE) and Provider Edge (PE) devices that
   are part of the same EVPN Broadcast Domain (BD) use Ingress
   Replication (IR) or PIM-based trees to transport the tenant's
   Broadcast, Unknown Unicast, or Multicast (BUM) traffic.

   In the ingress replication approach, the ingress NVE receiving a BUM
   frame from the Tenant System (TS) will create as many copies of the
   frame as the number of remote NVEs/PEs that are attached to the BD.
   Each of those copies will be encapsulated into an IP packet where the
   outer IP Destination Address (IP DA) identifies the loopback of the
   egress NVE/PE.  The IP fabric core nodes (also known as spines) will
   simply route the IP-encapsulated BUM frames based on the outer IP DA.
   If PIM-based trees are used instead of ingress replication, the NVEs/
   PEs attached to the same BD will join a PIM-based tree.  The ingress
   NVE receiving a BUM frame will send a single copy of the frame,
   encapsulated into an IP packet where the outer IP DA is the multicast
   address that represents the PIM-based tree.  The IP fabric core nodes
   are part of the PIM tree and keep multicast state for the multicast
   group, so that IP-encapsulated BUM frames can be routed to all the
   NVEs/PEs that joined the tree.

   The two approaches are illustrated in Figure 1.  On the left-hand
   side of the diagram, NVE1 uses ingress replication to send a BUM
   frame (originated from Tenant System TS1) to the remote nodes
   attached to the BD, i.e., NVE2, NVE3, and PE1.  On the right-hand
   side, the same example is depicted but using a PIM-based tree, i.e.,
   (S1,G1), instead of ingress replication.  While a single copy of the
   tunneled BUM frame is generated in the latter approach, all the
   routers in the fabric need to keep multicast state, e.g., the spine
   keeps a PIM routing entry for (S1,G1) with an Incoming Interface
   (IIF) and three Outgoing Interfaces (OIFs).

              To WAN                           To WAN
                 ^                                ^
                 |                                |
              +-----+                          +-----+
   +----------| PE1 |-----------+   +----------| PE1 |-----------+
   |          +--^--+           |   |          +--^--+           |
   |             |    IP Fabric |   |             |    IP Fabric |
   |             PE             |   |    (S1,G1)  |OIF to G G1     |
   | +----PE->+-----+ No State  |   |      IIF +-----+ OIF to G G1 |
   | | +---2->|Spine|------+    |   |   +------>Spine|------+    |
   | | | +-3->+-----+      |    |   |   |      +-----+      |    |
   | | | |       2         3    |   |   |PIM      |OIF to G | G1|    |
   | | | |IR     |         |    |   |   |tree     |         |    |
   |+-----+   +--v--+   +--v--+ |   |+-----+   +--v--+   +--v--+ |
   +| NVE1|---| NVE2|---| NVE3|-+   +| NVE1|---| NVE2|---| NVE3|-+
    +--^--+   +-----+   +-----+      +--^--+   +-----+   +-----+
       |         |         |            |         |         |
       |         v         v            |         v         v
      TS1       TS2       TS3          TS1       TS2       TS3

     Figure 1: Ingress Replication vs. PIM-Based Trees in NVO Networks

   In NVO networks where PIM-based trees cannot be used, ingress
   replication is the only option.  Examples of these situations are NVO
   networks where the core nodes do not support PIM or the network
   operator does not want to run PIM in the core.

   In some use cases, the amount of replication for BUM traffic is kept
   under control on the NVEs due to the following fairly common
   assumptions:

   a.  Broadcast traffic is greatly reduced due to the proxy Address
       Resolution Protocol (ARP) and proxy Neighbor Discovery (ND)
       capabilities supported by EVPNs [RFC9161] on the NVEs.  Some NVEs
       can even provide Dynamic Host Configuration Protocol (DHCP)
       server functions for the attached TSs, reducing the broadcast
       traffic even further.

   b.  Unknown unicast traffic is greatly reduced in NVO networks where
       all the Media Access Control (MAC) and IP addresses from the TSs
       are learned in the control plane.

   c.  Multicast applications are not used.

   If the above assumptions are true for a given NVO network, then
   ingress replication provides a simple solution for multi-destination
   traffic.  However, statement c. above is not always true, and
   multicast applications are required in many use cases.

   When the multicast sources are attached to NVEs residing in
   hypervisors or low-performance-replication Top-of-Rack (ToR)
   switches, the ingress replication of a large amount of multicast
   traffic to a significant number of remote NVEs/PEs can seriously
   degrade the performance of the NVE and impact the application.

   This document describes a solution that makes use of two ingress
   replication optimizations:

   1.  Assisted Replication (AR)

   2.  Pruned Flooding Lists (PFLs)

   Assisted Replication consists of a set of procedures that allows the
   ingress NVE/PE to send a single copy of a broadcast or multicast
   frame received from a TS to the BD without the need for PIM in the
   underlay.  Assisted Replication defines the roles of AR-REPLICATOR
   and AR-LEAF routers.  The AR-LEAF is the ingress NVE/PE attached to
   the TS.  The AR-LEAF sends a single copy of a broadcast or multicast
   packet to a selected AR-REPLICATOR that replicates the packet
   multiple times to remote AR-LEAF or AR-REPLICATOR routers and is
   therefore "assisting" the ingress AR-LEAF in delivering the broadcast
   or multicast traffic to the remote NVEs/PEs attached to the same BD.
   Assisted Replication can use a single AR-REPLICATOR or two AR-
   REPLICATOR routers in the path between the ingress AR-LEAF and the
   remote destination NVEs/PEs.  The procedures that use a single AR-
   REPLICATOR (the non-selective Assisted Replication solution) are
   specified in Section 5, whereas Section 6 describes how multi-stage
   replication, i.e., two AR-REPLICATOR routers in the path between the
   ingress AR-LEAF and destination NVEs/PEs, is accomplished (the
   selective Assisted Replication solution).  The procedures for
   Assisted Replication do not impact unknown unicast traffic, which
   follows the same forwarding procedures as known unicast traffic so
   that packet reordering does not occur.

   PFLs provide a method for the ingress NVE/PE to prune or remove
   certain destination NVEs/PEs from a flooding list, depending on the
   interest of those NVEs/PEs in receiving BUM traffic.  As specified in
   [RFC8365], an NVE/PE builds a flooding list for BUM traffic based on
   the next hops of the received EVPN Inclusive Multicast Ethernet Tag
   routes for the BD.  While [RFC8365] states that the flooding list is
   used for all BUM traffic, this document allows pruning certain next
   hops from the list.  As an example, suppose an ingress NVE creates a
   flooding list with next hops PE1, PE2, and PE3.  If PE2 and PE3 did
   not signal any interest in receiving unknown unicast traffic in their
   Inclusive Multicast Ethernet Tag routes, when the ingress NVE
   receives an unknown unicast frame from a TS, it will replicate it
   only to PE1.  That is, PE2 and PE3 are "pruned" from the NVE's
   flooding list for unknown unicast traffic.  PFLs can be used with
   ingress replication or Assisted Replication and are described in
   Section 7.

   Both optimizations -- Assisted Replication and PFLs -- may be used
   together or independently so that the performance and efficiency of
   the network to transport multicast can be improved.  Both solutions
   require some extensions to the BGP attributes used in [RFC7432]; see
   Section 4 for details.

   The Assisted Replication solution described in this document is
   focused on NVO networks (hence its use of IP tunnels).  MPLS
   transport networks are out of scope for this document.  The PFLs
   solution MAY be used in NVO and MPLS transport networks.

   Section 3 lists the requirements of the combined optimized ingress
   replication solution, whereas Sections 5 and 6 describe the Assisted
   Replication solution for non-selective and selective procedures,
   respectively.  Section 7 provides the PFLs solution.

2.  Terminology and Conventions

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in
   BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

   The following terminology is used throughout this document:

   AR-IP:  Assisted Replication - IP.  Refers to an IP address owned by
      the AR-REPLICATOR and used to differentiate the incoming traffic
      that must follow the AR procedures.  The AR-IP is also used in the
      Tunnel Identifier and Next Hop fields of the Replicator-AR route.

   AR-LEAF:  Assisted Replication - LEAF.  Refers to an NVE/PE that
      sends all the BM traffic to an AR-REPLICATOR that can replicate
      the traffic further on its behalf.  An AR-LEAF is typically an
      NVE/PE with poor replication performance capabilities.

   AR-REPLICATOR:  Assisted Replication - REPLICATOR.  Refers to an NVE/
      PE that can replicate broadcast or multicast traffic received on
      overlay tunnels to other overlay tunnels and local ACs. Attachment
      Circuits (ACs).  This document defines the control and data plane
      procedures that an AR-
      REPLICATOR AR-REPLICATOR needs to follow.

   AR-VNI:  Assisted Replication - VNI.  Refers to a Virtual eXtensible
      Local Area Network (VXLAN) Network Identifier (VNI) advertised by
      the AR-REPLICATOR along with the Replicator-AR route.  It is used
      to identify the incoming packets that must follow the AR
      procedures ONLY in the single-IP AR-REPLICATOR case (see
      Section 8).

   Assisted Replication forwarding mode:  In the case of an AR-LEAF,
      sending an Attachment Circuit (AC) AC Broadcast and Multicast (BM) packet to a single AR-REPLICATOR AR-
      REPLICATOR with a tunnel destination address AR-IP.  In the case
      of an AR-REPLICATOR, this means sending a BM packet to a selected
      number of, or all of, the overlay tunnels when the packet was
      previously received from an overlay tunnel.

   BD:  Broadcast Domain, as defined in [RFC7432].

   BD label:  Defined as the MPLS label that identifies the BD and is
      advertised in Regular-IR or Replicator-AR routes, when the
      encapsulation is MPLS over GRE (MPLSoGRE) or MPLS over UDP
      (MPLSoUDP).

   BM traffic:  Refers to broadcast and multicast frames (excluding
      unknown unicast frames).

   DF and NDF:  Designated Forwarder and Non-Designated Forwarder.
      These are roles defined in NVEs/PEs attached to multihomed TSs, as
      per [RFC7432] and [RFC8365].

   ES and ESI:  Ethernet Segment and Ethernet Segment Identifier.  EVPN
      multihoming concepts as specified in [RFC7432].

   EVI:  EVPN Instance.  A group of Provider Edge (PE) devices
      participating in the same EVPN service, as specified in [RFC7432].

   GRE:  Generic Routing Encapsulation [RFC4023].

   Ingress Replication forwarding mode:  Refers to the ingress
      replication behavior explained in [RFC7432].  In this mode, an AC
      BM packet copy is sent to each remote PE/NVE in the BD, and an
      overlay BM packet is sent only to the ACs and not to other overlay
      tunnels.

   IR-IP:  Ingress Replication - IP.  Refers to the local IP address of
      an NVE/PE that is used for the ingress replication signaling and
      procedures provided in [RFC7432].  Encapsulated incoming traffic
      with an outer destination IP address matching the IR-IP will
      follow the procedures for ingress replication and not the
      procedures for Assisted Replication.  The IR-IP is also used in
      the Tunnel Identifier and Next Hop fields of the Regular-IR route.

   IR-VNI:  Ingress Replication - VNI.  Refers to a VNI advertised along
      with the Inclusive Multicast Ethernet Tag route for the ingress
      replication tunnel type.

   MPLS:  Multi-Protocol Label Switching.

   NVE:  Network Virtualization Edge [RFC8365].

   NVGRE:  Network virtualization using Generic Routing Encapsulation
      [RFC7637].

   PE:  Provider Edge.

   PMSI:  P-Multicast Service Interface.  A conceptual interface for a
      PE to send customer multicast traffic to all or some PEs in the
      same VPN [RFC6513].

   RD:  Route Distinguisher.

   Regular-IR route:  An EVPN Inclusive Multicast Ethernet Tag route
      [RFC7432] that uses the ingress replication tunnel type.

   Replicator-AR route:  An EVPN Inclusive Multicast Ethernet Tag route
      that is advertised by an AR-REPLICATOR to signal its capabilities,
      as described in Section 4.

   RNVE:  Regular NVE.  Refers to an NVE that supports the procedures
      provided in [RFC8365] and does not support the procedures provided
      in this document.  However, this document defines procedures to
      interoperate with RNVEs.

   ToR switch:  Top-of-Rack switch.

   TS and VM:  Tenant System and Virtual Machine.  In this document, TSs
      and VMs are the devices connected to the ACs of the PEs and NVEs.

   VNI:  VXLAN Network Identifier.  Used in VXLAN tunnels.

   VSID:  Virtual Segment Identifier.  Used in NVGRE tunnels.

   VXLAN:  Virtual eXtensible Local Area Network [RFC7348].

3.  Solution Requirements

   The ingress replication optimization solution specified in this
   document meets the following requirements:

   a.  The solution provides an ingress replication optimization for BM
       traffic without the need for PIM while preserving the packet
       order for unicast applications, i.e., unknown unicast traffic
       should follow the same path as known unicast traffic.  This
       optimization is required in low-performance NVEs.

   b.  The solution reduces the flooded traffic in NVO networks where
       some NVEs do not need broadcast/multicast and/or unknown unicast
       traffic.

   c.  The solution is compatible with [RFC7432] and [RFC8365] and has
       no impact on the Customer Edge (CE) procedures for BM traffic.
       In particular, the solution supports the following EVPN
       functions:

       *  All-active multihoming, including the split-horizon and DF
          functions.

       *  Single-active multihoming, including the DF function.

       *  Handling of multi-destination traffic and processing of BM
          traffic as per [RFC7432].

   d.  The solution is backward compatible with existing NVEs using a
       non-optimized version of ingress replication.  A given BD can
       have NVEs/PEs supporting regular ingress replication and
       optimized ingress replication.

   e.  The solution is independent of the NVO-specific data plane
       encapsulation and the virtual identifiers being used, e.g., VXLAN
       VNIs, NVGRE VSIDs, or MPLS labels, as long as the tunnel is IP
       based.

4.  EVPN BGP Attributes for Optimized Ingress Replication

   The ingress replication optimization solution specified in this
   document extends the Inclusive Multicast Ethernet Tag routes and
   attributes described in [RFC7432] so that an NVE/PE can signal its
   optimized ingress replication capabilities.

   The Network Layer Reachability Information (NLRI) of the Inclusive
   Multicast Ethernet Tag route [RFC7432] is shown in Figure 2 and is
   used in this document without any modifications to its format.  The
   PMSI Tunnel Attribute's general format as provided in [RFC7432]
   (which takes it from [RFC6514]) is used in this document; only a new
   tunnel type and new flags are specified, as shown in Figure 3.

                    +------------------------------------+
                    |      RD (8 octets)                 |
                    +------------------------------------+
                    |  Ethernet Tag ID (4 octets)        |
                    +------------------------------------+
                    |  IP Address Length (1 octet)       |
                    +------------------------------------+
                    |  Originating Router's IP Address   |
                    |        (4 or 16 octets)            |
                    +------------------------------------+

        Figure 2: EVPN Inclusive Multicast Ethernet Tag Route's NLRI

                                           0  1  2  3  4  5  6  7
   +---------------------------------+    +--+--+--+--+--+--+--+--+
   |  Flags (1 octet)                | -> |x |E |x |  T  |BM|U |L |
   +---------------------------------+    +--+--+--+--+--+--+--+--+
   |  Tunnel Type (1 octet)          |    T = Assisted Replication Type
   +---------------------------------+    BM = Broadcast and Multicast
   |  MPLS Label (3 octets)          |    U = Unknown (unknown unicast)
   +---------------------------------+    x = unassigned
   |  Tunnel Identifier (variable)   |
   +---------------------------------+

                      Figure 3: PMSI Tunnel Attribute

   The Flags field in Figure 3 is 8 bits long as per [RFC7902].  The
   Extension (E) flag was allocated by [RFC7902], and the Leaf
   Information Required (L) flag was allocated by [RFC6514].  This
   document defines the use of 4 bits of this Flags field:

   *  Bits 3 and 4, which together form the Assisted Replication Type
      (T) field

   *  Bit 5, called the Broadcast and Multicast (BM) flag

   *  Bit 6, called the Unknown (U) flag

   Bits 5 and 6 are collectively referred to as the Pruned Flooding
   Lists (PFLs) flags.

   The T field and PFLs flags are defined as follows:

   *  T is the Assisted Replication Type field (2 bits), which defines
      the AR role of the advertising router:

      -  00 (decimal 0) = RNVE (non-AR support)

      -  01 (decimal 1) = AR-REPLICATOR

      -  10 (decimal 2) = AR-LEAF

      -  11 (decimal 3) = RESERVED

   *  The PFLs flags define the desired behavior of the advertising
      router for the different types of traffic:

      -  Broadcast and Multicast (BM) flag.  BM = 1 means "prune me from
         the BM flooding list".  BM = 0 indicates regular behavior.

      -  Unknown (U) flag.  U = 1 means "prune me from the Unknown
         flooding list".  U = 0 indicates regular behavior.

   *  The L flag (bit 7) is defined in [RFC6514] and will be used only
      in the selective AR solution.

   Please refer to Section 11 for the IANA considerations related to the
   PMSI Tunnel Attribute flags.

   In this document, the above Inclusive Multicast Ethernet Tag route
   (Figure 2) and PMSI Tunnel Attribute (Figure 3) can be used in two
   different modes for the same BD:

   Regular-IR route:  In this route, Originating Router's IP Address,
      Tunnel Type (0x06), MPLS Label, and Tunnel Identifier MUST be used
      as described in [RFC7432] when ingress replication is in use.  The
      NVE/PE that advertises the route will set the Next Hop to an IP
      address that we denominate IR-IP in this document.  When
      advertised by an AR-LEAF node, the Regular-IR route MUST be
      advertised with the T field set to 10 (AR-LEAF).

   Replicator-AR route:  This route is used by the AR-REPLICATOR to
      advertise its AR capabilities, with the fields set as follows:

      *  Originating Router's IP Address MUST be set to an IP address of
         the advertising router that is common to all the EVIs on the PE
         (usually this is a loopback address of the PE).

         -  The Tunnel Identifier and Next Hop fields SHOULD be set to
            the same IP address as the Originating Router's IP Address
            field when the NVE/PE originates the route -- that is, when
            the NVE/PE is not an ASBR; see Section 10.2 of [RFC8365].
            Irrespective of the values in the Tunnel Identifier and
            Originating Router's IP Address fields, the ingress NVE/PE
            will process the received Replicator-AR route and will use
            the IP address setting in the Next Hop field to create IP
            tunnels to the AR-REPLICATOR.

         -  The Next Hop address is referred to as the AR-IP and MUST be
            different from the IR-IP for a given PE/NVE, unless the
            procedures provided in Section 8 are followed.

      *  Tunnel Type MUST be set to Assisted Replication Tunnel.
         Section 11 provides the allocated type value.

      *  T (Assisted Replication type) MUST be set to 01 (AR-
         REPLICATOR).

      *  L (Leaf Information Required) MUST be set to 0 for non-
         selective AR and MUST be set to 1 for selective AR.

   An NVE/PE configured as an AR-REPLICATOR for a BD MUST advertise a
   Replicator-AR route for the BD and MAY advertise a Regular-IR route.
   The advertisement of the Replicator-AR route will indicate to the AR-
   LEAFs which outer IP DA, i.e., which AR-IP, they need to use for IP-
   encapsulated BM frames that use Assisted Replication forwarding mode.
   The AR-REPLICATOR will forward an IP-encapsulated BM frame in
   Assisted Replication forwarding mode if the outer IP DA matches its
   AR-IP but will forward in Ingress Replication forwarding mode if the
   outer IP DA matches its IR-IP.

   In addition, this document also uses the Leaf Auto-Discovery (Leaf
   A-D) route defined in [RFC9572] in cases where the selective AR mode
   is used.  An AR-LEAF MAY send a Leaf A-D route in response to
   reception of a Replicator-AR route whose L flag is set.  The Leaf A-D
   route is only used for selective AR, and the fields of such a route
   are set as follows:

   *  Originating Router's IP Address is set to the advertising router's
      IP address (the same IP address used by the AR-LEAF in Regular-IR
      routes).  The Next Hop address is set to the IR-IP, which SHOULD
      be the same IP address as the advertising router's IP address,
      when the NVE/PE originates the route, i.e., when the NVE/PE is not
      an ASBR; see Section 10.2 of [RFC8365].

   *  Route Key [RFC9572] is the "Route Type Specific" NLRI of the
      Replicator-AR route for which this Leaf A-D route is generated.

   *  The AR-LEAF constructs an IP-address-specific Route Target,
      analogously to [RFC9572], by placing the IP address carried in the
      Next Hop field of the received Replicator-AR route in the Global
      Administrator field of the extended community, with the Local
      Administrator field of this extended community set to 0, and
      setting the Extended Communities attribute of the Leaf A-D route
      to that extended community.  The same IP-address-specific import
      Route Target is auto-configured by the AR-REPLICATOR that sent the
      Replicator-AR route, in order to control the acceptance of the
      Leaf A-D routes.

   *  The Leaf A-D route MUST include the PMSI Tunnel Attribute with
      Tunnel Type set to Assisted Replication Tunnel (Section 11), T
      (Assisted Replication type) set to AR-LEAF, and Tunnel Identifier
      set to the IP address of the advertising AR-LEAF.  The PMSI Tunnel
      Attribute MUST carry a downstream-assigned MPLS label or VNI that
      is used by the AR-REPLICATOR to send traffic to the AR-LEAF.

   Each AR-enabled node understands and processes the T (Assisted
   Replication type) field in the PMSI Tunnel Attribute (Flags field) of
   the routes and MUST signal the corresponding type (AR-REPLICATOR or
   AR-LEAF type) according to its administrative choice.  An NVE/PE
   following this specification is not expected to set the Assisted
   Replication Type field to decimal 3 (which is a RESERVED value).  If
   a route with the Assisted Replication Type field set to decimal 3 is
   received by an AR-REPLICATOR or AR-LEAF, the router will process the
   route as a Regular-IR route advertised by an RNVE.

   Each node attached to the BD may understand and process the BM/U
   flags (PFLs flags).  Note that these BM/U flags may be used to
   optimize the delivery of multi-destination traffic; their use SHOULD
   be an administrative choice and independent of the AR role.  When the
   PFL capability is enabled, the BM/U flags can be used with the
   Regular-IR, Replicator-AR, and Leaf A-D routes.

   Non-optimized ingress replication NVEs/PEs will be unaware of the new
   PMSI Tunnel Attribute flag definition as well as the new tunnel type
   (AR), i.e., non-upgraded NVEs/PEs will ignore the information
   contained in the Flags field or an unknown tunnel type (type AR in
   this case) for any Inclusive Multicast Ethernet Tag route.

5.  Non-selective Assisted Replication (AR) Solution Description

   Figure 4 illustrates an example NVO network where the non-selective
   AR function is enabled.  Three different roles are defined for a
   given BD: AR-REPLICATOR, AR-LEAF, and RNVE.  The solution is called
   "non-selective" because the chosen AR-REPLICATOR for a given flow
   MUST replicate the BM traffic to all the NVEs/PEs in the BD except
   for the source NVE/PE.  NVO tunnels, i.e., IP tunnels, exist among
   all the PEs and NVEs in the diagram.  The PEs and NVEs in the diagram
   have TSs or VMs connected to their ACs.

                           (           )
                          (_    WAN    _)
                       +---(_         _)----+
                       |     (_      _)     |
                 PE1   |                PE2 |
                +------+----+          +----+------+
           TS1--+  (BD-1)   |          |  (BD-1)   +--TS2
                |REPLICATOR |          |REPLICATOR |
                +--------+--+          +--+--------+
                         |                |
                      +--+----------------+--+
                      |                      |
                      |                      |
                 +----+ VXLAN/NVGRE/MPLSoGRE +----+
                 |    |      IP Fabric       |    |
                 |    |                      |    |
       NVE1      |    +-----------+----------+    |      NVE3
       Hypervisor|          ToR   |  NVE2         |Hypervisor
       +---------+-+        +-----+-----+       +-+---------+
       |  (BD-1)   |        |  (BD-1)   |       |  (BD-1)   |
       |    LEAF   |        |   RNVE    |       |    LEAF   |
       +--+-----+--+        +--+-----+--+       +--+-----+--+
          |     |              |     |             |     |
         VM11  VM12           TS3   TS4           VM31  VM32

                    Figure 4: Non-selective AR Scenario

   In AR BDs, such as BD-1 in Figure 4, BM traffic between two NVEs may
   follow a different path than unicast traffic.  This solution
   recommends the replication of BM traffic through the AR-REPLICATOR
   node, whereas unknown/known unicast traffic will be delivered
   directly from the source node to the destination node without being
   replicated by any intermediate node.

   Note that known unicast forwarding is not impacted by this solution,
   i.e., unknown unicast traffic SHALL follow the same path as known
   unicast traffic.

5.1.  Non-selective AR-REPLICATOR Procedures

   An AR-REPLICATOR is defined as an NVE/PE capable of replicating
   incoming BM traffic received on an overlay tunnel to other overlay
   tunnels and local ACs.  The AR-REPLICATOR signals its role in the
   control plane and understands where the other roles (AR-LEAF nodes,
   RNVEs, and other AR-REPLICATORs) are located.  A given AR-enabled BD
   service may have zero, one, or more AR-REPLICATORs.  In our example
   in Figure 4, PE1 and PE2 are defined as AR-REPLICATORs.  The
   following considerations apply to the AR-REPLICATOR role:

   a.  The AR-REPLICATOR role SHOULD be an administrative choice in any
       NVE/PE that is part of an AR-enabled BD.  This administrative
       option to enable AR-REPLICATOR capabilities MAY be implemented as
       a system-level option as opposed to a per-BD option.

   b.  An AR-REPLICATOR MUST advertise a Replicator-AR route and MAY
       advertise a Regular-IR route.  The AR-REPLICATOR MUST NOT
       generate a Regular-IR route if it does not have local ACs.  If
       the Regular-IR route is advertised, the Assisted Replication Type
       field of the Regular-IR route MUST be set to 0.

   c.  The Replicator-AR and Regular-IR routes are generated according
       to Section 4.  The AR-IP and IR-IP are different IP addresses
       owned by the AR-REPLICATOR.

   d.  When a node defined as an AR-REPLICATOR receives a BM packet on
       an overlay tunnel, it will do a tunnel destination IP address
       lookup and apply the following procedures:

       *  If the destination IP address is the AR-REPLICATOR IR-IP
          address, the node will process the packet normally as
          discussed in [RFC7432].

       *  If the destination IP address is the AR-REPLICATOR AR-IP
          address, the node MUST replicate the packet to local ACs and
          overlay tunnels (excluding the overlay tunnel to the source of
          the packet).  When replicating to remote AR-REPLICATORs, the
          tunnel destination IP address will be an IR-IP.  This will
          indicate to the remote AR-REPLICATOR that it MUST NOT
          replicate to overlay tunnels.  The tunnel source IP address
          used by the AR-REPLICATOR MUST be its IR-IP when replicating
          to AR-REPLICATOR or AR-LEAF nodes.

   An AR-REPLICATOR MUST follow a data path implementation compatible
   with the following rules:

   *  The AR-REPLICATORs will build a flooding list composed of ACs and
      overlay tunnels to remote nodes in the BD.  Some of those overlay
      tunnels MAY be flagged as non-BM receivers based on the BM flag
      received from the remote nodes in the BD.

   *  When an AR-REPLICATOR receives a BM packet on an AC, it will
      forward the BM packet to its flooding list (including local ACs
      and remote NVEs/PEs), skipping the non-BM overlay tunnels.

   *  When an AR-REPLICATOR receives a BM packet on an overlay tunnel,
      it will check the destination IP address of the underlay IP header
      and:

      -  If the destination IP address matches its IR-IP, the AR-
         REPLICATOR will skip all the overlay tunnels from the flooding
         list, i.e., it will only replicate to local ACs.  This is the
         regular ingress replication behavior described in [RFC7432].

      -  If the destination IP address matches its AR-IP, the AR-
         REPLICATOR MUST forward the BM packet to its flooding list (ACs
         and overlay tunnels), excluding the non-BM overlay tunnels.
         The AR-REPLICATOR will ensure that the traffic is not sent back
         to the originating AR-LEAF.

      -  If the encapsulation is MPLSoGRE or MPLSoUDP and the received
         BD label that the AR-REPLICATOR advertised in the Replicator-AR
         route is not at the bottom of the stack, the AR-REPLICATOR MUST
         copy all the labels below the BD label and propagate them when
         forwarding the packet to the egress overlay tunnels.

   *  The AR-REPLICATOR/LEAF nodes will build an unknown unicast
      flooding list composed of ACs and overlay tunnels to the IR-IP
      addresses of the remote nodes in the BD.  Some of those overlay
      tunnels MAY be flagged as non-U (unknown unicast) receivers based
      on the U flag received from the remote nodes in the BD.

      -  When an AR-REPLICATOR/LEAF receives an unknown unicast packet
         on an AC, it will forward the unknown unicast packet to its
         flooding list, skipping the non-U overlay tunnels.

      -  When an AR-REPLICATOR/LEAF receives an unknown unicast packet
         on an overlay tunnel, it will forward the unknown unicast
         packet to its local ACs and never to an overlay tunnel.  This
         is the regular ingress replication behavior described in
         [RFC7432].

5.2.  Non-selective AR-LEAF Procedures

   An AR-LEAF is defined as an NVE/PE that, given its poor replication
   performance, sends all the BM traffic to an AR-REPLICATOR that can
   replicate the traffic further on its behalf.  It MAY signal its AR-
   LEAF capability in the control plane and understands where the other
   roles are located (AR-REPLICATORs and RNVEs).  A given service can
   have zero, one, or more AR-LEAF nodes.  In Figure 4, NVE1 and NVE3
   (both residing in hypervisors) act as AR-LEAF nodes.  The following
   considerations apply to the AR-LEAF role:

   a.  The AR-LEAF role SHOULD be an administrative choice in any NVE/PE
       that is part of an AR-enabled BD.  This administrative option to
       enable AR-LEAF capabilities MAY be implemented as a system-level
       option as opposed to a per-BD option.

   b.  In this non-selective AR solution, the AR-LEAF MUST advertise a
       single Regular-IR Inclusive Multicast Ethernet Tag route as
       described in [RFC7432].  The AR-LEAF SHOULD set the Assisted
       Replication Type field to AR-LEAF.  Note that although this field
       does not affect the remote nodes when creating an EVPN
       destination to the AR-LEAF, this field is useful from the
       standpoint of ease of operation and troubleshooting of the BD.

   c.  In a BD where there are no AR-REPLICATORs due to the AR-
       REPLICATORs being down or reconfigured, the AR-LEAF MUST use
       regular ingress replication based on the remote Regular-IR
       Inclusive Multicast Ethernet Tag routes as described in
       [RFC7432].  This may happen in the following cases:

       *  The AR-LEAF has a list of AR-REPLICATORs for the BD, but it
          detects that all the AR-REPLICATORs for the BD are down (via
          next-hop tracking in the IGP or some other detection
          mechanism).

       *  The AR-LEAF receives updates from all the former AR-
          REPLICATORs containing a non-REPLICATOR AR type in the
          Inclusive Multicast Ethernet Tag routes.

       *  The AR-LEAF never discovered an AR-REPLICATOR for the BD.

   d.  In a service where there are one or more AR-REPLICATORs (based on
       the received Replicator-AR routes for the BD), the AR-LEAF can
       locally select which AR-REPLICATOR it sends the BM traffic to:

       *  A single AR-REPLICATOR MAY be selected for all the BM packets
          received on the AR-LEAF ACs for a given BD.  This selection is
          a local decision and does not have to match other AR-LEAFs'
          selections within the same BD.

       *  An AR-LEAF MAY select more than one AR-REPLICATOR and do
          either per-flow or per-BD load balancing.

       *  In the case of failure of the selected AR-REPLICATOR, another
          AR-REPLICATOR SHOULD be selected by the AR-LEAF.

       *  When an AR-REPLICATOR is selected for a given flow or BD, the
          AR-LEAF MUST send all the BM packets targeted to that AR-
          REPLICATOR using the forwarding information given by the
          Replicator-AR route for the chosen AR-REPLICATOR, with Tunnel
          Type = 0x0A (AR tunnel).  The underlay destination IP address
          MUST be the AR-IP advertised by the AR-REPLICATOR in the
          Replicator-AR route.

       *  An AR-LEAF MAY change the selection of AR-REPLICATOR(s)
          dynamically due to an administrative or policy configuration
          change.

       *  AR-LEAF nodes SHALL send service-level BM control plane
          packets, following the procedures for regular ingress
          replication.  An example would be IGMP, Multicast Listener
          Discovery (MLD), or PIM packets, and, in general, any packets
          using link-local scope multicast IPv4 or IPv6 packets.  The
          AR-REPLICATORs MUST NOT replicate these control plane packets
          to other overlay tunnels, since they will use the IR-IP
          address.

   e.  The use of an AR-REPLICATOR-activation-timer (in seconds, with a
       default value of 3) on the AR-LEAF nodes is RECOMMENDED.  Upon
       receiving a new Replicator-AR route where the AR-REPLICATOR is
       selected, the AR-LEAF will run a timer before programming the new
       AR-REPLICATOR.  In the case of a newly added AR-REPLICATOR or if
       an AR-REPLICATOR reboots, this timer will give the AR-REPLICATOR
       some time to program the AR-LEAF nodes before the AR-LEAF sends
       BM traffic.  The AR-REPLICATOR-activation-timer SHOULD be
       configurable in seconds, and its value needs to account for the
       time it takes for the AR-LEAF Regular-IR Inclusive Multicast
       Ethernet Tag route to get to the AR-REPLICATOR and be programmed.
       While the AR-REPLICATOR-activation-timer is running, the AR-LEAF
       node will use regular ingress replication.

   f.  If the AR-LEAF has selected an AR-REPLICATOR, whether or not to
       change to a new preferred AR-REPLICATOR for the existing BM
       traffic flows is a matter of local policy.

   An AR-LEAF MUST follow a data path implementation compatible with the
   following rules:

   *  The AR-LEAF nodes will build two flooding lists:

      Flooding list #1:  Composed of ACs and an AR-REPLICATOR-set of
         overlay tunnels.  The AR-REPLICATOR-set is defined as one or
         more overlay tunnels to the AR-IP addresses of the remote AR-
         REPLICATOR(s) in the BD.  The selection of more than one AR-
         REPLICATOR is described in item d. above and is a local AR-LEAF
         decision.

      Flooding list #2:  Composed of ACs and overlay tunnels to the
         remote IR-IP addresses.

   *  When an AR-LEAF receives a BM packet on an AC, it will check the
      AR-REPLICATOR-set:

      -  If the AR-REPLICATOR-set is empty, the AR-LEAF MUST send the
         packet to flooding list #2.

      -  If the AR-REPLICATOR-set is NOT empty, the AR-LEAF MUST send
         the packet to flooding list #1, where only one of the overlay
         tunnels of the AR-REPLICATOR-set is used.

   *  When an AR-LEAF receives a BM packet on an overlay tunnel, it will
      forward the BM packet to its local ACs and never to an overlay
      tunnel.  This is the regular ingress replication behavior
      described in [RFC7432].

   *  AR-LEAF nodes process unknown unicast traffic in the same way AR-
      REPLICATORS do, as described in Section 5.1.

5.3.  RNVE Procedures

   An RNVE is defined as an NVE/PE without AR-REPLICATOR or AR-LEAF
   capabilities that does ingress replication as described in [RFC7432].
   The RNVE does not signal any AR role and is unaware of the AR-
   REPLICATOR/LEAF roles in the BD.  The RNVE will ignore the flags in
   the Regular-IR routes and will ignore the Replicator-AR routes (due
   to an unknown tunnel type in the PMSI Tunnel Attribute) and the Leaf
   A-D routes (due to the IP-address-specific Route Target).

   This role provides EVPNs with the backward compatibility required in
   optimized ingress replication BDs.  In Figure 4, NVE2 acts as an
   RNVE.

6.  Selective Assisted Replication (AR) Solution Description

   Figure 5 is used to describe the selective AR solution.

                           (           )
                          (_    WAN    _)
                       +---(_         _)----+
                       |     (_      _)     |
                 PE1   |                PE2 |
                +------+----+          +----+------+
           TS1--+  (BD-1)   |          |  (BD-1)   +--TS2
                |REPLICATOR |          |REPLICATOR |
                +--------+--+          +--+--------+
                         |                |
                      +--+----------------+--+
                      |                      |
                      |                      |
                 +----+ VXLAN/NVGRE/MPLSoGRE +----+
                 |    |      IP Fabric       |    |
                 |    |                      |    |
       NVE1      |    +-----------+----------+    |      NVE3
       Hypervisor|          ToR   |  NVE2         |Hypervisor
       +---------+-+        +-----+-----+       +-+---------+
       |  (BD-1)   |        |  (BD-1)   |       |  (BD-1)   |
       |LEAF-set-1 |        |LEAF-set-1 |       |LEAF-set-2 |
       +--+-----+--+        +--+-----+--+       +--+-----+--+
          |     |              |     |             |     |
         VM11  VM12           TS3   TS4           VM31  VM32

                      Figure 5: Selective AR Scenario

   The solution is called "selective" because a given AR-REPLICATOR MUST
   replicate the BM traffic to only the AR-LEAFs that requested the
   replication (as opposed to all the AR-LEAF nodes) and MUST replicate
   the BM traffic to the RNVEs (if there are any).  The same AR roles as
   those defined in Sections 4 and 5 are used here; however, the
   procedures are different.

   The selective AR procedures create multiple AR-LEAF-sets in the EVPN
   BD and build single-hop trees among AR-LEAFs of the same set (AR-
   LEAF->AR-REPLICATOR->AR-LEAF) and two-hop trees among AR-LEAFs of
   different sets (AR-LEAF->AR-REPLICATOR->AR-REPLICATOR->AR-LEAF).
   Compared to the selective solution, the non-selective AR method
   assumes that all the AR-LEAFs of the BD are in the same set and
   always creates single-hop trees among AR-LEAFs.  While the selective
   solution is more efficient than the non-selective solution in multi-
   stage IP fabrics, the trade-off is additional signaling and an
   additional outer source IP address lookup.

   The following subsections describe the differences in the procedures
   for AR-REPLICATORs/LEAFs compared to the non-selective AR solution.
   There are no changes applicable to RNVEs.

6.1.  Selective AR-REPLICATOR Procedures

   In our example in Figure 5, PE1 and PE2 are defined as selective AR-
   REPLICATORs.  The following considerations apply to the selective AR-
   REPLICATOR role:

   a.  The selective AR-REPLICATOR role SHOULD be an administrative
       choice in any NVE/PE that is part of an AR-enabled BD.  This
       administrative option MAY be implemented as a system-level option
       as opposed to a per-BD option.

   b.  Each AR-REPLICATOR will build a list of AR-REPLICATOR, AR-LEAF,
       and RNVE nodes.  In spite of the "selective" administrative
       option, an AR-REPLICATOR MUST NOT behave as a selective AR-
       REPLICATOR if at least one of the AR-REPLICATORs has the L flag
       NOT set.  If at least one AR-REPLICATOR sends a Replicator-AR
       route with L = 0 (in the BD context), the rest of the AR-
       REPLICATORs will fall back to non-selective AR mode.

   c.  The selective AR-REPLICATOR MUST follow the procedures described
       in Section 5.1, except for the following differences:

       *  The AR-REPLICATOR MUST have the L flag set to 1 when
          advertising the Replicator-AR route.  This flag is used by the
          AR-REPLICATORs to advertise their "selective" AR-REPLICATOR
          capabilities.  In addition, the AR-REPLICATOR auto-configures
          its IP-address-specific import Route Target as described in
          the third bullet of the procedures for Leaf A-D routes in
          Section 4.

       *  The AR-REPLICATOR will build a "selective" AR-LEAF-set with
          the list of nodes that requested replication to its own AR-IP.
          For instance, assuming that NVE1 and NVE2 advertise a Leaf A-D
          route with PE1's IP-address-specific Route Target and NVE3
          advertises a Leaf A-D route with PE2's IP-address-specific
          Route Target, PE1 will only add NVE1/NVE2 to its selective AR-
          LEAF-set for BD-1 and exclude NVE3.  Likewise, PE2 will only
          add NVE3 to its selective AR-LEAF-set for BD-1 and exclude
          NVE1/NVE2.

       *  When a node defined and operating as a selective AR-REPLICATOR
          receives a packet on an overlay tunnel, it will do a tunnel
          destination IP lookup, and if the destination IP address is
          the AR-REPLICATOR AR-IP address, the node MUST replicate the
          packet to:

          -  Local ACs.

          -  Overlay tunnels in the selective AR-LEAF-set, excluding the
             overlay tunnel to the source AR-LEAF.

          -  Overlay tunnels to the RNVEs if the tunnel source IP
             address is the IR-IP of an AR-LEAF.  In any other case, the
             AR-REPLICATOR MUST NOT replicate the BM traffic to remote
             RNVEs.  In other words, only the first-hop selective AR-
             REPLICATOR will replicate to all the RNVEs.

          -  Overlay tunnels to the remote selective AR-REPLICATORs if
             the tunnel source IP address (of the encapsulated packet
             that arrived on the overlay tunnel) is an IR-IP of its own
             AR-LEAF-set.  In any other case, the AR-REPLICATOR MUST NOT
             replicate the BM traffic to remote AR-REPLICATORs.  When
             doing this replication, the tunnel destination IP address
             is the AR-IP of the remote selective AR-REPLICATOR.  The
             tunnel destination address AR-IP will indicate to the
             remote selective AR-REPLICATOR that the packet needs
             further replication to its AR-LEAFs.

   A selective AR-REPLICATOR data path implementation MUST be compatible
   with the following rules:

   *  The selective AR-REPLICATORs will build two flooding lists:

      Flooding list #1:  Composed of ACs and overlay tunnels to the
         remote nodes in the BD, always using the IR-IPs in the tunnel
         destination IP addresses.

      Flooding list #2:  Composed of ACs, a selective AR-LEAF-set, and a
         selective AR-REPLICATOR-set, where:

         -  The selective AR-LEAF-set is composed of the overlay tunnels
            to the AR-LEAFs that advertise a Leaf A-D route for the
            local AR-REPLICATOR.  This set is updated with every Leaf
            A-D route received/withdrawn from a new AR-LEAF.

         -  The selective AR-REPLICATOR-set is composed of the overlay
            tunnels to all the AR-REPLICATORs that send a Replicator-AR
            route with L = 1.  The AR-IP addresses are used as tunnel
            destination IP addresses.

   *  Some of the overlay tunnels in the flooding lists MAY be flagged
      as non-BM receivers based on the BM flag received from the remote
      nodes in the routes.

   *  When a selective AR-REPLICATOR receives a BM packet on an AC, it
      MUST forward the BM packet to its flooding list #1, skipping the
      non-BM overlay tunnels.

   *  When a selective AR-REPLICATOR receives a BM packet on an overlay
      tunnel, it will check the destination and source IPs of the
      underlay IP header and:

      -  If the destination IP address matches its AR-IP and the source
         IP address matches an IP of its own selective AR-LEAF-set, the
         AR-REPLICATOR MUST forward the BM packet to its flooding list
         #2, unless some AR-REPLICATOR within the BD has advertised L =
         0.  In the latter case, the node reverts to Non-selective mode,
         and flooding list #1 MUST be used.  Non-BM overlay tunnels are
         skipped when sending BM packets.

      -  If the destination IP address matches its AR-IP and the source
         IP address does not match any IP address of its selective AR-
         LEAF-set, the AR-REPLICATOR MUST forward the BM packet to
         flooding list #2, skipping the AR-REPLICATOR-set.  Non-BM
         overlay tunnels are skipped when sending BM packets.

      -  If the destination IP address matches its IR-IP, the AR-
         REPLICATOR MUST use flooding list #1 but MUST skip all the
         overlay tunnels from the flooding list, i.e., it will only
         replicate to local ACs.  This is the regular ingress
         replication behavior described in [RFC7432].  Non-BM overlay
         tunnels are skipped when sending BM packets.

   *  In any case, the AR-REPLICATOR ensures that the traffic is not
      sent back to the originating source.  If the encapsulation is
      MPLSoGRE or MPLSoUDP and the received BD label (the label that the
      AR-REPLICATOR advertised in the Replicator-AR route) is not at the
      bottom of the stack, the AR-REPLICATOR MUST copy the rest of the
      labels when forwarding them to the egress overlay tunnels.

6.2.  Selective AR-LEAF Procedures

   A selective AR-LEAF chooses a single selective AR-REPLICATOR per BD
   and:

   *  Sends all the BD's BM traffic to that AR-REPLICATOR and

   *  Expects to receive all the BM traffic for a given BD from the same
      AR-REPLICATOR (except for the BM traffic from the RNVEs, which
      comes directly from the RNVEs)

   In the example in Figure 5, we consider NVE1/NVE2/NVE3 as selective
   AR-LEAFs.  NVE1 selects PE1 as its selective AR-REPLICATOR.  If that
   is so, NVE1 will send all its BM traffic for BD-1 to PE1.  If other
   AR-LEAFs/REPLICATORs send BM traffic, NVE1 will receive that traffic
   from PE1.  A selective AR-LEAF and a non-selective AR-LEAF behave
   differently, as follows:

   a.  The selective AR-LEAF role SHOULD be an administrative choice in
       any NVE/PE that is part of an AR-enabled BD.  This administrative
       option to enable AR-LEAF capabilities MAY be implemented as a
       system-level option as opposed to a per-BD option.

   b.  The AR-LEAF MAY advertise a Regular-IR route if there are RNVEs
       in the BD.  The selective AR-LEAF MUST advertise a Leaf A-D route
       after receiving a Replicator-AR route with L = 1.  It is
       RECOMMENDED that the selective AR-LEAF wait for a period
       specified by an AR-LEAF-join-wait-timer (in seconds, with a
       default value of 3) before sending the Leaf A-D route, so that
       the AR-LEAF can collect all the Replicator-AR routes for the BD
       before advertising the Leaf A-D route.  If the Replicator-AR
       route with L = 1 is withdrawn, the corresponding Leaf A-D route
       is withdrawn too.

   c.  In a service where there is more than one selective AR-
       REPLICATOR, the selective AR-LEAF MUST locally select a single
       selective AR-REPLICATOR for the BD.  Once selected:

       *  The selective AR-LEAF MUST send a Leaf A-D route, including
          the route key and IP-address-specific Route Target of the
          selected AR-REPLICATOR.

       *  The selective AR-LEAF MUST send all the BM packets received on
          the ACs for a given BD to that AR-REPLICATOR.

       *  In the case of failure of the selected AR-REPLICATOR (detected
          when the Replicator-AR route becomes infeasible as a result of
          any of the underlying BGP mechanisms), another AR-REPLICATOR
          will be selected and a new Leaf A-D update will be issued for
          the new AR-REPLICATOR.  This new route will update the
          selective list in the new selective AR-REPLICATOR.  In the
          case of failure of the active selective AR-REPLICATOR, it is
          RECOMMENDED that the selective AR-LEAF revert to ingress
          replication behavior for an AR-REPLICATOR-activation-timer (in
          seconds, with a default value of 3) to mitigate the traffic
          impact.  When the timer expires, the selective AR-LEAF will
          resume its AR mode with the new selective AR-REPLICATOR.  The
          AR-REPLICATOR-activation-timer MAY be the same configurable
          parameter as the parameter discussed in Section 5.2.

       *  A selective AR-LEAF MAY change the selection of AR-
          REPLICATOR(s) dynamically due to an administrative or policy
          configuration change.

   All the AR-LEAFs in a BD are expected to be configured as either
   selective or non-selective.  A mix of selective and non-selective AR-
   LEAFs SHOULD NOT coexist in the same BD.  If a non-selective AR-LEAF
   is present, its BM traffic sent to a selective AR-REPLICATOR will not
   be replicated to other AR-LEAFs that are not in its selective AR-
   LEAF-set.

   A selective AR-LEAF MUST follow a data path implementation compatible
   with the following rules:

   *  The selective AR-LEAF nodes will build two flooding lists:

      Flooding list #1:  Composed of ACs and the overlay tunnel to the
         selected AR-REPLICATOR (using the AR-IP as the tunnel
         destination IP address).

      Flooding list #2:  Composed of ACs and overlay tunnels to the
         remote IR-IP addresses.

   *  Some of the overlay tunnels in the flooding lists MAY be flagged
      as non-BM receivers based on the BM flag received from the remote
      nodes in the routes.

   *  When an AR-LEAF receives a BM packet on an AC, it will check to
      see if an AR-REPLICATOR was selected; if one is found, flooding
      list #1 MUST be used.  Otherwise, flooding list #2 MUST be used.
      Non-BM overlay tunnels are skipped when sending BM packets.

   *  When an AR-LEAF receives a BM packet on an overlay tunnel, it MUST
      forward the BM packet to its local ACs and never to an overlay
      tunnel.  This is the regular ingress replication behavior
      described in [RFC7432].

7.  Pruned Flooding Lists (PFLs)

   In addition to AR, the second optimization supported by the ingress
   replication optimization solution specified in this document is the
   ability of all the BD nodes to signal PFLs.  As described in
   Section 4, an EVPN node can signal a given value for the BM and U
   PFLs flags in the Regular-IR, Replicator-AR, or Leaf A-D routes,
   where:

   *  BM is the Broadcast and Multicast flag.  BM = 1 means "prune me
      from the BM flooding list".  BM = 0 indicates regular behavior.

   *  U is the Unknown flag.  U = 1 means "prune me from the Unknown
      flooding list".  U = 0 indicates regular behavior.

   The ability to signal and process these PFLs flags SHOULD be an
   administrative choice.  If a node is configured to process the PFLs
   flags, upon receiving a non-zero PFLs flag for a route, an NVE/PE
   will add the corresponding flag to the created overlay tunnel in the
   flooding list.  When replicating a BM packet in the context of a
   flooding list, the NVE/PE will skip the overlay tunnels marked with
   the flag BM = 1, since the NVEs/PEs at the end of those tunnels are
   not expecting BM packets.  Similarly, when replicating unknown
   unicast packets, the NVE/PE will skip the overlay tunnels marked with
   U = 1.

   An NVE/PE not following this document or not configured for this
   optimization will ignore any of the received PFLs flags.  An AR-LEAF
   or RNVE receiving BUM traffic on an overlay tunnel MUST replicate the
   traffic to its local ACs, regardless of the BM/U flags on the overlay
   tunnels.

   This optimization MAY be used along with the Assisted Replication
   solution.

7.1.  Example of a Pruned Flooding List

   In order to illustrate the use of the PFLs solution, we will assume
   that BD-1 in Figure 4 is optimized ingress replication enabled and:

   *  PE1 and PE2 are administratively configured as AR-REPLICATORs due
      to their high-performance replication capabilities.  PE1 and PE2
      will send a Replicator-AR route with BM/U flags = 00.

   *  NVE1 and NVE3 are administratively configured as AR-LEAF nodes due
      to their low-performance software-based replication capabilities.
      They will advertise a Regular-IR route with type AR-LEAF.
      Assuming that both NVEs advertise all of the attached VMs' MAC and
      IP addresses in EVPNs as soon as they come up and these NVEs do
      not have any VMs interested in multicast applications, they will
      be configured to signal BM/U flags = 11 for BD-1.  That is,
      neither NVE1 nor NVE3 is interested in receiving BM or unknown
      unicast traffic, since:

      -  Their attached VMs (VM11, VM12, VM31, VM32) do not support
         multicast applications.

      -  Their attached VMs will not receive ARP Requests.  Proxy ARP
         [RFC9161] on the remote NVEs/PEs will reply to ARP Requests
         locally, and no other broadcast traffic is expected.

      -  Their attached VMs will not receive unknown unicast traffic,
         since the VMs' MAC and IP addresses are always advertised by
         EVPNs as long as the VMs are active.

   *  NVE2 is optimized ingress replication unaware; therefore, it takes
      on the RNVE role in BD-1.

   Based on the above assumptions, the following forwarding behavior
   will take place:

   1.  Any BM packets sent from VM11 will be sent to VM12 and PE1.  PE1
       will then forward the BM packets on to TS1, the WAN link, PE2,
       and NVE2 but not to NVE3.  PE2 and NVE2 will replicate the BM
       packets to their local ACs, but NVE3 will be prevented from
       having to replicate those BM packets to VM31 and VM32
       unnecessarily.

   2.  Any BM packets received on PE2 from the WAN will be sent to PE1
       and NVE2 but not to NVE1 and NVE3, sparing the two hypervisors
       from replicating unnecessarily to their local VMs.  PE1 and NVE2
       will replicate to their local ACs only.

   3.  Any unknown unicast packet sent from VM31 will be forwarded by
       NVE3 to NVE2, PE1, and PE2 but not to NVE1.  The solution
       prevents unnecessary replication to NVE1, since the destination
       of the unknown traffic cannot be NVE1.

   4.  Any unknown unicast packet sent from TS1 will be forwarded by PE1
       to the WAN link, PE2, and NVE2 but not to NVE1 and NVE3, since
       the target of the unknown traffic cannot be NVE1 or NVE3.

8.  AR Procedures for Single-IP AR-REPLICATORS

   The procedures explained in Sections 5 and 6 assume that the AR-
   REPLICATOR can use two local routable IP addresses to terminate and
   originate NVO tunnels, i.e., IR-IP and AR-IP addresses.  This is
   usually the case for PE-based AR-REPLICATOR nodes.

   In some cases, the AR-REPLICATOR node does not support more than one
   IP address to terminate and originate NVO tunnels, i.e., the IR-IP
   and AR-IP are the same IP addresses.  This may be the case in some
   software-based or low-end AR-REPLICATOR nodes.  If this is the case,
   the procedures provided in Sections 5 and 6 MUST be modified in the
   following way:

   *  The Replicator-AR routes generated by the AR-REPLICATOR use an AR-
      IP that will match its IR-IP.  In order to differentiate the data
      plane packets that need to use ingress replication from the
      packets that must use Assisted Replication forwarding mode, the
      Replicator-AR route MUST advertise a different VNI/VSID than the
      one used by the Regular-IR route.  For instance, the AR-REPLICATOR
      will advertise an AR-VNI along with the Replicator-AR route and an
      IR-VNI along with the Regular-IR route.  Since both routes have
      the same key, different Route Distinguishers are needed in each
      route.

   *  An AR-REPLICATOR will perform Ingress Replication forwarding mode
      or Assisted Replication forwarding mode for the incoming overlay
      packets based on an ingress VNI lookup as opposed to the tunnel IP
      DA lookup.  Note that when replicating to remote AR-REPLICATOR
      nodes, the use of the IR-VNI or AR-VNI advertised by the egress
      node will determine whether Ingress Replication forwarding mode or
      Assisted Replication forwarding mode is used at the subsequent AR-
      REPLICATOR.

   The rest of the procedures will follow those described in Sections 5
   and 6.

9.  AR Procedures and EVPN All-Active Multihoming Split-Horizon

   This section extends the procedures for the cases where two or more
   AR-LEAF nodes are attached to the same ES and two or more AR-
   REPLICATOR nodes are attached to the same ES in the BD.  The mixed
   case -- where an AR-LEAF node and an AR-REPLICATOR node are attached
   to the same ES -- would require extended procedures that are out of
   scope for this document.

9.1.  Ethernet Segments on AR-LEAF Nodes

   If a VXLAN or NVGRE is used and if the split-horizon is based on the
   tunnel source IP address and "local bias" as described in [RFC8365],
   the split-horizon check will not work if an ES is shared between two
   AR-LEAF nodes, and the AR-REPLICATOR replaces the tunnel source IP
   address of the packets with its own AR-IP.

   In order to be compatible with the source IP address split-horizon
   check, the AR-REPLICATOR MAY keep the original received tunnel source
   IP address when replicating packets to a remote AR-LEAF or RNVE.
   This will allow AR-LEAF nodes to apply split-horizon check procedures
   for BM packets before sending them to the local ES.  Even if the AR-
   LEAF's source IP address is preserved when replicating to AR-LEAFs or
   RNVEs, the AR-REPLICATOR MUST always use its IR-IP as the source IP
   address when replicating to other AR-REPLICATORs.

   When EVPNs are used for MPLSoGRE or MPLSoUDP, the ESI-label-based
   split-horizon procedure provided in [RFC7432] will not work for
   multihomed ESs defined on AR-LEAF nodes.  Local bias is recommended
   in this case, as it is in the case of a VXLAN or NVGRE as explained
   above.  The local-bias and tunnel source IP address preservation
   mechanisms provide the required split-horizon behavior in non-
   selective or selective AR.

   Note that if the AR-REPLICATOR implementation keeps the received
   tunnel source IP address, the use of unicast Reverse Path Forwarding
   (uRPF) checks in the IP fabric based on the tunnel source IP address
   MUST be disabled.

9.2.  Ethernet Segments on AR-REPLICATOR Nodes

   AR-REPLICATOR nodes attached to the same all-active ES will follow
   local-bias procedures [RFC8365] as follows:

   a.  For BUM traffic received on a local AR-REPLICATOR's AC, local-
       bias procedures as provided in [RFC8365] MUST be followed.

   b.  For BUM traffic received on an AR-REPLICATOR overlay tunnel with
       AR-IP as the IP DA, local bias MUST also be followed.  That is,
       traffic received with AR-IP as the IP DA will be treated as
       though it had been received on a local AC that is part of the ES
       and will be forwarded to all local ESs, irrespective of their DF
       or NDF state.

   c.  BUM traffic received on an AR-REPLICATOR overlay tunnel with IR-
       IP as the IP DA will follow regular local-bias rules [RFC8365]
       and will not be forwarded to local ESs that are shared with the
       AR-LEAF or AR-REPLICATOR originating the traffic.

   d.  In cases where the AR-REPLICATOR supports a single IP address,
       the IR-IP and the AR-IP are the same IP address, as discussed in
       Section 8.  The received BUM traffic will be treated as specified
       in item b above if the received VNI is the AR-VNI and as
       specified in item c if the VNI is the IR-VNI.

10.  Security Considerations

   The security considerations in [RFC7432] and [RFC8365] apply to this
   document.  The security considerations related to the Leaf A-D route
   in [RFC9572] apply too.

   In addition, the Assisted Replication method introduced by this
   document may introduce some new risks that could affect the
   successful delivery of BM traffic.  Unicast traffic is not affected
   by Assisted Replication (although unknown unicast traffic is affected
   by the procedures for PFLs).  The forwarding of BM traffic is
   modified, and BM traffic from the AR-LEAF nodes will be drawn toward
   AR-REPLICATORs in the BD.  An AR-LEAF will forward BM traffic to its
   selected AR-REPLICATOR; therefore, an attack on the AR-REPLICATOR
   could impact the delivery of the BM traffic using that node.  Also,
   an attack on the AR-REPLICATOR and any change to the advertised AR
   type will modify the selections made by the AR-LEAF nodes.  If no
   other AR-REPLICATOR is selected, the AR-LEAF nodes will be forced to
   use Ingress Replication forwarding mode, which will impact their
   performance, since the AR-LEAF nodes are usually NVEs/PEs with poor
   replication performance.

   This document introduces the ability of the AR-REPLICATOR to forward
   traffic received on an overlay tunnel to another overlay tunnel.  The
   reader may determine that this introduces the risk of BM loops --
   that is, an AR-LEAF receiving a BM-encapsulated packet that the AR-
   LEAF originated in the first place due to one or two AR-REPLICATORs
   "looping" the BM traffic back to the AR-LEAF.  Following the
   procedures provided in this document will prevent these BM loops,
   since the AR-REPLICATOR will always forward the BM traffic using the
   correct tunnel IP DA (or the correct VNI in the case of single-IP AR-
   REPLICATORs), which instructs the remote nodes regarding how to
   forward the traffic.  This is true for both the Non-selective and
   Selective modes defined in this document.  However, incorrect
   implementation of the procedures provided in this document may lead
   to those unexpected BM loops.

   The Selective mode provides a multi-stage replication solution, where
   proper configuration of all the AR-REPLICATORs will prevent any
   issues.  A mix of mistakenly configured selective and non-selective
   AR-REPLICATORs in the same BD could theoretically create packet
   duplication in some AR-LEAFs; however, this document specifies a
   fallback solution -- falling back to Non-selective mode in cases
   where the AR-REPLICATORs advertised an inconsistent AR mode.

   This document allows the AR-REPLICATOR to preserve the tunnel source
   IP address of the AR-LEAF (as an option) when forwarding BM packets
   from an overlay tunnel to another overlay tunnel.  Preserving the AR-
   LEAF source IP address makes the local-bias filtering procedures
   possible for AR-LEAF nodes that are attached to the same ES.  If the
   AR-REPLICATOR does not preserve the AR-LEAF source IP address, AR-
   LEAF nodes attached to all-active ESs will cause packet duplication
   on the multihomed CE.

   The AR-REPLICATOR nodes are, by design, using more bandwidth than PEs
   [RFC7432] or NVEs [RFC8365] would use.  Certain network events or
   unexpected low performance may exceed the AR-REPLICATOR's local
   bandwidth and cause service disruption.

   Finally, PFLs (Section 7) should be used with care.  Intentional or
   unintentional misconfiguration of the BDs on a given leaf node may
   result in the leaf not receiving the required BM or unknown unicast
   traffic.

11.  IANA Considerations

   IANA has allocated the following Border Gateway Protocol (BGP)
   parameters:

   *  Allocation in the "P-Multicast Service Interface Tunnel (PMSI
      Tunnel) Tunnel Types" registry:

            +=======+=============================+===========+
            | Value | Meaning                     | Reference |
            +=======+=============================+===========+
            | 0x0A  | Assisted Replication Tunnel | RFC 9574  |
            +-------+-----------------------------+-----------+

                                  Table 1

   *  Allocations in the "P-Multicast Service Interface (PMSI) Tunnel
      Attribute Flags" registry:

           +=======+===============================+===========+
           | Value | Name                          | Reference |
           +=======+===============================+===========+
           | 3-4   | Assisted Replication Type (T) | RFC 9574  |
           +-------+-------------------------------+-----------+
           | 5     | Broadcast and Multicast (BM)  | RFC 9574  |
           +-------+-------------------------------+-----------+
           | 6     | Unknown (U)                   | RFC 9574  |
           +-------+-------------------------------+-----------+

                                  Table 2

12.  References

12.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC6513]  Rosen, E., Ed. and R. Aggarwal, Ed., "Multicast in MPLS/
              BGP IP VPNs", RFC 6513, DOI 10.17487/RFC6513, February
              2012, <https://www.rfc-editor.org/info/rfc6513>.

   [RFC6514]  Aggarwal, R., Rosen, E., Morin, T., and Y. Rekhter, "BGP
              Encodings and Procedures for Multicast in MPLS/BGP IP
              VPNs", RFC 6514, DOI 10.17487/RFC6514, February 2012,
              <https://www.rfc-editor.org/info/rfc6514>.

   [RFC7432]  Sajassi, A., Ed., Aggarwal, R., Bitar, N., Isaac, A.,
              Uttaro, J., Drake, J., and W. Henderickx, "BGP MPLS-Based
              Ethernet VPN", RFC 7432, DOI 10.17487/RFC7432, February
              2015, <https://www.rfc-editor.org/info/rfc7432>.

   [RFC7902]  Rosen, E. and T. Morin, "Registry and Extensions for
              P-Multicast Service Interface Tunnel Attribute Flags",
              RFC 7902, DOI 10.17487/RFC7902, June 2016,
              <https://www.rfc-editor.org/info/rfc7902>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

   [RFC8365]  Sajassi, A., Ed., Drake, J., Ed., Bitar, N., Shekhar, R.,
              Uttaro, J., and W. Henderickx, "A Network Virtualization
              Overlay Solution Using Ethernet VPN (EVPN)", RFC 8365,
              DOI 10.17487/RFC8365, March 2018,
              <https://www.rfc-editor.org/info/rfc8365>.

   [RFC9572]  Zhang, Z., Lin, W., Rabadan, J., Patel, K., and A.
              Sajassi, "Updates to EVPN Broadcast, Unknown Unicast, or
              Multicast (BUM) Procedures", RFC 9572,
              DOI 10.17487/RFC9572, April May 2024,
              <https://www.rfc-editor.org/info/rfc9572>.

12.2.  Informative References

   [RFC4023]  Worster, T., Rekhter, Y., and E. Rosen, Ed.,
              "Encapsulating MPLS in IP or Generic Routing Encapsulation
              (GRE)", RFC 4023, DOI 10.17487/RFC4023, March 2005,
              <https://www.rfc-editor.org/info/rfc4023>.

   [RFC7348]  Mahalingam, M., Dutt, D., Duda, K., Agarwal, P., Kreeger,
              L., Sridhar, T., Bursell, M., and C. Wright, "Virtual
              eXtensible Local Area Network (VXLAN): A Framework for
              Overlaying Virtualized Layer 2 Networks over Layer 3
              Networks", RFC 7348, DOI 10.17487/RFC7348, August 2014,
              <https://www.rfc-editor.org/info/rfc7348>.

   [RFC7637]  Garg, P., Ed. and Y. Wang, Ed., "NVGRE: Network
              Virtualization Using Generic Routing Encapsulation",
              RFC 7637, DOI 10.17487/RFC7637, September 2015,
              <https://www.rfc-editor.org/info/rfc7637>.

   [RFC9161]  Rabadan, J., Ed., Sathappan, S., Nagaraj, K., Hankins, G.,
              and T. King, "Operational Aspects of Proxy ARP/ND in
              Ethernet Virtual Private Networks", RFC 9161,
              DOI 10.17487/RFC9161, January 2022,
              <https://www.rfc-editor.org/info/rfc9161>.

Acknowledgements

   The authors would like to thank Neil Hart, David Motz, Dai Truong,
   Thomas Morin, Jeffrey Zhang, Shankar Murthy, and Krzysztof Szarkowicz
   for their valuable feedback and contributions.  Also, thanks to John
   Scudder for his thorough review, which improved the quality of the
   document significantly.

Contributors

   In addition to the authors listed on the front page, the following
   people also contributed to this document and should be considered
   coauthors:

   Wim Henderickx
   Nokia

   Kiran Nagaraj
   Nokia

   Ravi Shekhar
   Juniper Networks

   Nischal Sheth
   Juniper Networks

   Aldrin Isaac
   Juniper

   Mudassir Tufail
   Citibank

Authors' Addresses

   Jorge Rabadan (editor)
   Nokia
   777 Middlefield Road
   Mountain View, CA 94043
   United States of America
   Email: jorge.rabadan@nokia.com

   Senthil Sathappan
   Nokia
   Email: senthil.sathappan@nokia.com

   Wen Lin
   Juniper Networks
   Email: wlin@juniper.net

   Mukul Katiyar
   Versa Networks
   Email: mukul@versa-networks.com

   Ali Sajassi
   Cisco Systems
   Email: sajassi@cisco.com