<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent">

<rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" category="std" consensus="true" docName="draft-ietf-bess-evpn-prefix-advertisement-11" number="9136" ipr="trust200902" obsoletes="" updates="" xml:lang="en" symRefs="true" sortRefs="true" tocInclude="true" version="3">

  <front>
    <title abbrev="EVPN Prefix Advertisement">IP Prefix Advertisement in
    Ethernet VPN (EVPN)</title>
    <seriesInfo name="RFC" value="9136"/>
    <author initials="J." surname="Rabadan" fullname="Jorge Rabadan" role="editor">
      <organization>Nokia</organization>
      <address>
        <postal>
          <street>777 E. Middlefield Road</street>
          <city>Mountain View</city>
          <region>CA</region>
          <code>94043</code>
          <country>United States of America</country>
        </postal>
        <phone/>
        <email>jorge.rabadan@nokia.com</email>
      </address>
    </author>
    <author initials="W." surname="Henderickx" fullname="Wim Henderickx">
      <organization>Nokia</organization>
      <address>
        <email>wim.henderickx@nokia.com</email>
      </address>
    </author>
    <author initials="J." surname="Drake" fullname="John Drake">
      <organization>Juniper</organization>
      <address>
        <email>jdrake@juniper.net</email>
      </address>
    </author>
    <author initials="W." surname="Lin" fullname="Wen Lin">
      <organization>Juniper</organization>
      <address>
        <email>wlin@juniper.net</email>
      </address>
    </author>
    <author initials="A." surname="Sajassi" fullname="Ali Sajassi">
      <organization>Cisco</organization>
      <address>
        <email>sajassi@cisco.com</email>
      </address>
    </author>
    <date year="2021" month="October"/>
    <workgroup>BESS Workgroup</workgroup>

<keyword>RT5</keyword>
<keyword>RT-5</keyword>
<keyword>Type-5</keyword>
<keyword>Interface-less</keyword>
<keyword>Interface-ful</keyword>

    <abstract>
      <t>
   The BGP MPLS-based Ethernet VPN (EVPN) (RFC 7432) mechanism provides a
   flexible control plane that allows intra-subnet connectivity in an
   MPLS and/or Network Virtualization Overlay (NVO) (RFC 7365) network.
   In some networks, there is also a need for dynamic and efficient
   inter-subnet connectivity across Tenant Systems and end devices that
   can be physical or virtual and do not necessarily participate in
   dynamic routing protocols. This document defines a new EVPN route
   type for the advertisement of IP prefixes and explains some use-case
   examples where this new route type is used.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="sect-1" numbered="true" toc="default">
      <name>Introduction</name>
      <t><xref target="RFC7365" format="default"/> provides a framework for Data Center (DC) Network Virtualization
   over Layer 3 and specifies that the Network Virtualization Edge (NVE) devices must provide Layer 2 and Layer 3 virtualized network services in
   multi-tenant DCs. <xref target="RFC8365" format="default"/> discusses the use of EVPN as the technology of
   choice to provide Layer 2 or intra-subnet services in these DCs.  This
   document, along with <xref target="RFC9135" format="default"/>, specifies the use of EVPN for Layer 3 or inter-subnet connectivity services.</t>
      <t>
   <xref target="RFC9135" format="default"/> defines some
   fairly common inter-subnet forwarding scenarios where Tenant Systems (TSs) can exchange
   packets with TSs located in remote subnets. In order to achieve this,
   <xref target="RFC9135" format="default"/> describes how Media Access
   Control (MAC) and IPs encoded in TS RT-2 routes are not only used to populate MAC Virtual Routing and Forwarding (MAC-VRF) and
   overlay Address Resolution Protocol (ARP) tables but also IP-VRF tables with the encoded TS host routes
   (/32 or /128). In some cases, EVPN may advertise IP prefixes and therefore
   provide aggregation in the IP-VRF tables, as opposed to propagating
   individual host routes. This document complements the scenarios described
   in <xref target="RFC9135" format="default"/> and defines
   how EVPN may be used to advertise IP prefixes. Interoperability between
   EVPN and Layer 3 Virtual Private Network (VPN) <xref target="RFC4364" format="default"/> IP Prefix routes is out of the
   scope of this document.</t>
      <t>
   <xref target="sect-2.1" format="default"/> describes the
   inter-subnet connectivity requirements in DCs. <xref
   target="sect-2.2" format="default"/> explains why a new EVPN route
   type is required for IP prefix advertisements. Sections <xref
   target="sect-3" format="counter"/>, <xref target="sect-4"
   format="counter"/>, and <xref target="sect-5" format="counter"/> will
   describe this route type and how it is used in some specific use
   cases.</t>
      <section anchor="sect-1.1" numbered="true" toc="default">
        <name>Terminology</name>
        <t>
   The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>",
   "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", "<bcp14>MAY</bcp14>", and
   "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as described in BCP
   14 <xref target="RFC2119" format="default"/> <xref target="RFC8174" format="default"/> when, and only when, they appear in all
   capitals, as shown here.

        </t>

        <dl indent="10">
          <dt>AC:</dt>
          <dd>Attachment Circuit</dd>
          <dt>ARP:</dt>
          <dd>Address Resolution Protocol</dd>
          <dt>BD:</dt>
          <dd>Broadcast Domain. As per <xref target="RFC7432"/>, an EVI consists
	of a single BD or multiple BDs. In case of VLAN-bundle and VLAN-based
	service models (see <xref target="RFC7432" format="default"/>), a BD is equivalent to
	an EVI. In case of a VLAN-aware bundle service model, an EVI contains
	multiple BDs.  Also, in this document, "BD" and "subnet" are equivalent
	terms.</dd>
          <dt>BD Route Target:</dt>
          <dd>Refers to the broadcast-domain-assigned Route Target <xref
	  target="RFC4364" format="default"/>. In case of a VLAN-aware
	bundle service model, all the BD instances in the MAC-VRF share the
	same Route Target.</dd>
          <dt>BT:</dt>
          <dd>Bridge Table. The instantiation of a BD in a
	  MAC-VRF, as per <xref target="RFC7432" format="default"/>.</dd>
	  <dt>CE:</dt><dd>Customer Edge</dd>
          <dt>DA:</dt><dd>Destination Address</dd>
          <dt>DGW:</dt>
          <dd>Data Center Gateway</dd>
          <dt>Ethernet A-D Route:</dt>
          <dd>Ethernet Auto-Discovery (A-D)
	route, as per <xref target="RFC7432" format="default"/>.</dd>
          <dt>Ethernet NVO Tunnel:</dt>
          <dd>Refers to Network Virtualization
	Overlay tunnels with Ethernet payload. Examples of this type of
	tunnel are VXLAN or GENEVE.</dd>
          <dt>EVI:</dt>
          <dd>EVPN Instance spanning the NVE/PE devices that are
	participating on that EVPN, as per <xref target="RFC7432" format="default"/>.</dd>
          <dt>EVPN:</dt>
          <dd>Ethernet VPN, as per <xref target="RFC7432" format="default"/>.</dd>
          <dt>GENEVE:</dt>
          <dd>Generic Network Virtualization Encapsulation, as per <xref target="RFC8926" format="default"/>.</dd>
          <dt>GRE:</dt>
          <dd>Generic Routing Encapsulation</dd>
          <dt>GW IP:</dt>
          <dd>Gateway IP address</dd>
          <dt>IPL:</dt>
          <dd>IP Prefix Length</dd>
          <dt>IP NVO Tunnel:</dt>
          <dd>Refers to Network Virtualization
	Overlay tunnels with IP payload (no MAC header in the payload).</dd>
          <dt>IP-VRF:</dt>
          <dd>A Virtual Routing and Forwarding table for IP
	routes on an NVE/PE. The IP routes could be populated by EVPN and
	IP-VPN address families. An IP-VRF is also an instantiation of a Layer
	3 VPN in an NVE/PE.</dd>
        <dt>IRB:</dt>
          <dd>Integrated Routing and Bridging interface. It
	  connects an IP-VRF to a BD (or subnet).</dd>
          <dt>MAC:</dt>
          <dd>Media Access Control</dd>
          <dt>MAC-VRF:</dt>
          <dd>A Virtual Routing and Forwarding table for
	MAC addresses on an NVE/PE, as per <xref target="RFC7432" format="default"/>. A MAC-VRF is also an instantiation of an EVI in an
	NVE/PE.</dd>
          <dt>ML:</dt>
          <dd>MAC Address Length</dd>
          <dt>ND:</dt>
          <dd>Neighbor Discovery</dd>
          <dt>NVE:</dt>
          <dd>Network Virtualization Edge</dd>
          <dt>NVO:</dt>
          <dd>Network Virtualization Overlay</dd>
	  <dt>PE:</dt>
          <dd>Provider Edge</dd>
          <dt>RT-2:</dt>
          <dd>EVPN Route Type 2, i.e., MAC/IP Advertisement
	  route, as defined in <xref target="RFC7432" format="default"/>.</dd>
          <dt>RT-5:</dt>
          <dd>EVPN Route Type 5, i.e., IP Prefix route, as
	defined in <xref target="sect-3"/>.</dd>
          <dt>SBD:</dt>
          <dd>Supplementary Broadcast Domain. A BD that does not
	have any ACs, only IRB interfaces, and is used to provide
	connectivity among all the IP-VRFs of the tenant. The SBD is only
	required in IP-VRF-to-IP-VRF use cases (see <xref target="sect-4.4" format="default"/>).</dd>
          <dt>SN:</dt>
          <dd>Subnet</dd>
          <dt>TS:</dt>
          <dd>Tenant System</dd>
          <dt>VA:</dt>
          <dd>Virtual Appliance</dd>
	   <dt>VM:</dt>
          <dd>Virtual Machine</dd>
          <dt>VNI:</dt>
          <dd>Virtual Network Identifier. As in <xref target="RFC8365"/>, the
	term is used as a representation of a 24-bit NVO instance identifier,
	with the understanding that "VNI" will refer to a VXLAN Network
	Identifier in VXLAN, or a Virtual Network Identifier in GENEVE,
	  etc., unless it is stated otherwise.</dd>
          <dt>VSID:</dt>
          <dd>Virtual Subnet Identifier</dd>
          <dt>VTEP:</dt>
          <dd>VXLAN Termination End Point, as per <xref target="RFC7348" format="default"/>.</dd>
          <dt>VXLAN:</dt>
          <dd>Virtual eXtensible Local Area Network, as per <xref target="RFC7348" format="default"/>.</dd>
        </dl>
        <t>This document also assumes familiarity with the terminology of
	<xref target="RFC7365" format="default"/>, <xref target="RFC7432" format="default"/>, and <xref target="RFC8365"/>.</t>
      </section>
    </section>
    <section anchor="sect-2" numbered="true" toc="default">
      <name>Problem Statement</name>
      <t>
   This section describes the inter-subnet connectivity requirements in
   DCs and why a specific route type to advertise IP prefixes
   is needed.</t>
      <section anchor="sect-2.1" numbered="true" toc="default">
        <name>Inter-Subnet Connectivity Requirements in Data Centers</name>
        <t>

 <xref target="RFC7432" format="default"/> is used as the control plane for an NVO solution in DCs, where NVE devices can be located in hypervisors or
   Top-of-Rack (ToR) switches, as described in <xref target="RFC8365" format="default"/>.</t>
        <t>
   The following considerations apply to TSs that are
   physical or virtual systems identified by MAC (and possibly IP addresses)
   and are connected to BDs by Attachment Circuits:

        </t>
        <ul spacing="normal">
          <li>The Tenant Systems may be VMs that generate
        traffic from their own MAC and IP.</li>
          <li>
            <t>The Tenant Systems may be VA entities that
	forward traffic to/from IP addresses of different end devices sitting
	behind them.

            </t>
            <ul spacing="normal">
              <li>These VAs can be firewalls, load balancers, NAT devices, other
	appliances, or virtual gateways with virtual routing instances.</li>
              <li>These VAs do not necessarily participate in dynamic routing
	protocols and hence rely on the EVPN NVEs to advertise the routes on
	their behalf.</li>

              <li>In all these cases, the VA will forward traffic to other TSs using
	its own source MAC, but the source IP will be the one associated with the
	end device sitting behind the VA or a translated IP address (part of a public
	      NAT pool) if the VA is performing NAT.</li>
	      
              <li>Note that the same IP address and endpoint could exist behind two
	of these TSs. One example of this would be certain appliance
	resiliency mechanisms, where a virtual IP or floating IP can be owned
	by one of the two VAs running the resiliency protocol (the Master
	VA). The Virtual Router Redundancy Protocol (VRRP) <xref target="RFC5798"/> is one
	particular example of this.  Another example is multihomed subnets,
	i.e., the same subnet is connected to two VAs.</li>
              <li>Although these VAs provide IP connectivity to VMs and the subnets
	behind them, they do not always have their own IP interface connected
	to the EVPN NVE; Layer 2 firewalls are examples of VAs not
	supporting IP interfaces. </li>
            </ul>
          </li>
        </ul>
        <t><xref target="fig-1"/> illustrates some of the examples described above.</t>
        <figure anchor="fig-1">
          <name>DC Inter-subnet Use Cases</name>
          <artwork name="" type="" align="left" alt=""><![CDATA[
                    NVE1
                 +-----------+
        TS1(VM)--|  (BD-10)  |-----+
          M1/IP1 +-----------+     |               DGW1
                               +---------+    +-------------+
                               |         |----|  (BD-10)    |
  SN1---+           NVE2       |         |    |    IRB1\    |
        |        +-----------+ |         |    |     (IP-VRF)|---+
  SN2---TS2(VA)--|  (BD-10)  |-|         |    +-------------+  _|_
        | M2/IP2 +-----------+ |  VXLAN/ |                    (   )
  IP4---+  <-+                 |  GENEVE |         DGW2      ( WAN )
             |                 |         |    +-------------+ (___)
          vIP23 (floating)     |         |----|  (BD-10)    |   |
             |                 +---------+    |    IRB2\    |   |
  SN1---+  <-+      NVE3         |  |  |      |     (IP-VRF)|---+
        | M3/IP3 +-----------+   |  |  |      +-------------+
  SN3---TS3(VA)--|  (BD-10)  |---+  |  |
        |        +-----------+      |  |
  IP5---+                           |  |
                                    |  |
                 NVE4               |  |      NVE5            +--SN5
           +---------------------+  |  | +-----------+        |
  IP6------|  (BD-1)             |  |  +-|  (BD-10)  |--TS4(VA)--SN6
           |       \             |  |    +-----------+        |
           |    (IP-VRF)         |--+                ESI4     +--SN7
           |       /  \IRB3      |
       |---|  (BD-2)  (BD-10)    |
    SN4|   +---------------------+


  Note: 
  ESI4 = Ethernet Segment Identifier 4
]]></artwork>
        </figure>
        <t>Where:</t>
        <t>NVE1, NVE2, NVE3, NVE4, NVE5, DGW1, and DGW2 share the same BD for a
   particular tenant. BD-10 is comprised of the collection of BD
   instances defined in all the NVEs. All the hosts connected to BD-10
   belong to the same IP subnet. The hosts connected to BD-10 are listed
   below:

        </t>


        <ul spacing="normal">
          <li>TS1 is a VM that generates/receives traffic to/from IP1, where IP1
   belongs to the BD-10 subnet.</li>
          <li>TS2 and TS3 are VAs that send/receive traffic
   to/from the subnets and hosts sitting behind them (SN1, SN2, SN3, IP4, and
   IP5). Their IP addresses (IP2 and IP3) belong to the BD-10 subnet, and they
   can also generate/receive traffic. When these VAs receive packets destined
   to their own MAC addresses (M2 and M3), they will route the packets to the
   proper subnet or host. These VAs do not support routing protocols to
   advertise the subnets connected to them and can move to a different server
   and NVE when the cloud management system decides to do so. These VAs may
   also support redundancy mechanisms for some subnets, similar to VRRP, where
   a floating IP is owned by the Master VA and only the Master VA forwards
   traffic to a given subnet. For example, vIP23 in <xref target="fig-1"/> is a floating IP that
   can be owned by TS2 or TS3 depending on which system is the Master. Only
   the Master will forward traffic to SN1.</li>
          <li>Integrated Routing and Bridging interfaces IRB1, IRB2, and IRB3 have
   their own IP addresses that belong to the BD-10 subnet too. These IRB
   interfaces connect the BD-10 subnet to Virtual Routing and Forwarding
   (IP-VRF) instances that can route the traffic to other subnets for the same
   tenant (within the DC or at the other end of the WAN).</li>
          <li>TS4 is a Layer 2 VA that provides connectivity to subnets SN5, SN6, and
   SN7 but does not have an IP address itself in the BD-10. TS4 is connected
   to a port on NVE5 that is assigned to Ethernet Segment Identifier 4 (ESI4).</li>
        </ul>
        <t>
   For a BD to which an ingress NVE is attached, "Overlay Index" is
   defined as an identifier that the ingress EVPN NVE requires in order
   to forward packets to a subnet or host in a remote subnet. As an
   example, vIP23 (<xref target="fig-1"/>) is an Overlay Index that any NVE attached
   to BD-10 needs to know in order to forward packets to SN1. The IRB3 IP
   address is an Overlay Index required to get to SN4, and ESI4 is an Overlay Index needed to forward
   traffic to SN5. In other words, the Overlay Index is a next hop in
   the overlay address space that can be an IP address, a MAC address, or
   an ESI. When advertised along with an IP prefix, the Overlay Index
   requires a recursive resolution to find out the egress NVE to which the
   EVPN packets need to be sent.</t>
        <t>
   All the DC use cases in <xref target="fig-1"/> require inter-subnet
   forwarding; therefore, the individual host routes and subnets:

        </t>
        <ol spacing="normal" type="%c)">
          <li>must be advertised from the NVEs (since VAs and VMs do not
	participate in dynamic routing protocols) and</li>
          <li>may be associated with an Overlay Index that can be a VA IP address,
	a floating IP address, a MAC address, or an ESI. The Overlay Index is
	further discussed in <xref target="sect-3.2" format="default"/>.</li>
        </ol>
      </section>
      <section anchor="sect-2.2" numbered="true" toc="default">
        <name>The Need for the EVPN IP Prefix Route</name>
        <t>
   <xref target="RFC7432" format="default"/> defines a MAC/IP Advertisement route (also
   referred to as "RT-2") where a MAC
   address can be advertised together with an IP address length and IP
   address (IP). While a variable IP address length might have been used
   to indicate the presence of an IP prefix in a route type 2, there are
   several specific use cases in which using this route type to deliver
   IP prefixes is not suitable.</t>
        <t>
   One example of such use cases is the "floating IP" example described
   in <xref target="sect-2.1" format="default"/>. In this example, it is
   necessary to decouple the advertisement of the prefixes from the advertisement of a MAC address
   of either M2 or M3; otherwise, the solution gets highly inefficient
   and does not scale.</t>
        <t>
   For example, if 1,000 prefixes are advertised from M2 (using RT-2)
   and the floating IP owner changes from M2 to M3, 1,000 routes would
   be withdrawn by M2 and readvertised by M3. However, if a
   separate route type is used, 1,000 routes can be advertised as
   associated with the floating IP address (vIP23), and only one RT-2 can be used for
   advertising the ownership of the floating IP, i.e., vIP23 and M2 in
   the route type 2. When the floating IP owner changes from M2 to M3, a
   single RT-2 withdrawal/update is required to indicate the change. The
   remote DGW will not change any of the 1,000 prefixes associated with
   vIP23 but will only update the ARP resolution entry for vIP23 (now
	pointing at M3).</t>
        <t>
   An EVPN route (type 5) for the advertisement of IP prefixes is
   described in this document. This new route type has a differentiated
   role from the RT-2 route and addresses the inter-subnet connectivity
   scenarios for DCs (or NVO-based
   networks in general) described in
   this document. Using this new RT-5, an IP prefix may be advertised
   along with an Overlay Index, which can be a GW IP address, a MAC, or an
   ESI. The IP prefix may also be advertised without an Overlay Index, in which case the BGP next hop will
   point at the egress NVE, Area Border Router (ABR), or ASBR, and the MAC in the EVPN Router's MAC
   Extended Community will provide the inner MAC destination address to
   be used. As discussed throughout the document, the EVPN RT-2 does not
   meet the requirements for all the DC use cases; therefore, this EVPN
   route type 5 is required.</t>

        <t>
   The EVPN route type 5 decouples the IP prefix advertisements from the
   MAC/IP Advertisement routes in EVPN. Hence:

        </t>
        <ol spacing="normal" type="%c)">
          <li>The clean and clear advertisements of IPv4 or IPv6 prefixes
        in a Network Layer Reachability Information (NLRI) message without
        MAC addresses are allowed.</li>
          <li>Since the route type is different from the MAC/IP Advertisement
	route, the current procedures described in <xref target="RFC7432" format="default"/> do not need to
	be modified.</li>
          <li>A flexible implementation is allowed where the prefix can be linked to
	different types of Overlay/Underlay Indexes: overlay IP addresses,
	overlay MAC addresses, overlay ESIs, underlay BGP next hops, etc.
	</li>
          <li>An EVPN implementation not requiring IP prefixes can simply discard
	them by looking at the route type value.
	</li>
        </ol>
        <t>
   The following sections describe how EVPN is extended with a route
   type for the advertisement of IP prefixes and how this route is used
   to address the inter-subnet connectivity requirements existing in the
   DC.</t>
      </section>
    </section>
    <section anchor="sect-3" numbered="true" toc="default">
      <name>The BGP EVPN IP Prefix Route</name>
      <t> The BGP EVPN NLRI as defined in <xref target="RFC7432"/> is shown below:</t>

<figure>
	<name>BGP EVPN NLRI</name>
<artwork>
    +-----------------------------------+
    |    Route Type (1 octet)           |
    +-----------------------------------+
    |     Length (1 octet)              |
    +-----------------------------------+
    | Route Type specific (variable)    |
    +-----------------------------------+
</artwork>
</figure>

<!--      <t keepWithPrevious="true">               </t> -->
      <t>
   This document defines an additional route type (RT-5) in the IANA
   "EVPN Route Types" registry <xref target="EVPNRouteTypes" format="default"/> to be used for the
      advertisement of EVPN routes using IP prefixes:</t>
      
<ul empty="true"><li>
      <dl spacing="compact">
      <dt>Value:</dt><dd>5</dd>
      <dt>Description:</dt><dd>IP Prefix</dd>
      </dl>
    </li></ul>
      <t>
   According to <xref target="RFC7606" section="5.4" format="default"/>, a node that doesn't recognize the
   route type 5 (RT-5) will ignore it. Therefore, an NVE following this
   document can still be attached to a BD where an NVE ignoring RT-5s is
   attached. Regular procedures described in <xref target="RFC7432" format="default"/> would apply in that case for both
   NVEs. In case two or more NVEs are attached to different BDs of the same
   tenant, they <bcp14>MUST</bcp14> support the RT-5 for the proper inter-subnet forwarding
   operation of the tenant.</t>
      <t>
   The detailed encoding of this route and associated procedures are
   described in the following sections.</t>
      <section anchor="sect-3.1" numbered="true" toc="default">
        <name>IP Prefix Route Encoding</name>
        <t>
   An IP Prefix route type for IPv4 has the Length field set to 34 and
   consists of the following fields:</t>

<figure>
<name>EVPN IP Prefix Route NLRI for IPv4</name>
<artwork>
    +---------------------------------------+
    |      RD (8 octets)                    |
    +---------------------------------------+
    |Ethernet Segment Identifier (10 octets)|
    +---------------------------------------+
    |  Ethernet Tag ID (4 octets)           |
    +---------------------------------------+
    |  IP Prefix Length (1 octet, 0 to 32)  |
    +---------------------------------------+
    |  IP Prefix (4 octets)                 |
    +---------------------------------------+
    |  GW IP Address (4 octets)             |
    +---------------------------------------+
    |  MPLS Label (3 octets)                |
    +---------------------------------------+
</artwork>
</figure>
<!--        <t keepWithPrevious="true">        </t> -->
        <t>
   An IP Prefix route type for IPv6 has the Length field set to 58 and
   consists of the following fields:</t>

<figure>
<name>EVPN IP Prefix Route NLRI for IPv6</name>
<artwork>
    +---------------------------------------+
    |      RD (8 octets)                    |
    +---------------------------------------+
    |Ethernet Segment Identifier (10 octets)|
    +---------------------------------------+
    |  Ethernet Tag ID (4 octets)           |
    +---------------------------------------+
    |  IP Prefix Length (1 octet, 0 to 128) |
    +---------------------------------------+
    |  IP Prefix (16 octets)                |
    +---------------------------------------+
    |  GW IP Address (16 octets)            |
    +---------------------------------------+
    |  MPLS Label (3 octets)                |
    +---------------------------------------+
</artwork>
</figure>
<!--        <t keepWithPrevious="true">       </t> -->
        <t>
   Where:</t>
        <ul spacing="normal">
          <li>The Length field of the BGP EVPN NLRI for an EVPN IP Prefix route
     <bcp14>MUST</bcp14> be either 34 (if IPv4 addresses are carried) or 58 (if IPv6
     addresses are carried). The IP prefix and gateway IP address <bcp14>MUST</bcp14>
     be from the same IP address family.</li>
          <li>The Route Distinguisher (RD) and Ethernet Tag ID <bcp14>MUST</bcp14> be used as
     defined in <xref target="RFC7432" format="default"/> and <xref target="RFC8365" format="default"/>. In particular, the RD is unique
     per MAC-VRF (or IP-VRF). The MPLS Label field is set to either an
     MPLS label or a VNI, as described in <xref target="RFC8365" format="default"/> for other EVPN route
     types.</li>
          <li>The Ethernet Segment Identifier <bcp14>MUST</bcp14> be a non-zero 10-octet
     identifier if the ESI is used as an Overlay Index (see the
     definition of "Overlay Index" in <xref target="sect-3.2" format="default"/>). It <bcp14>MUST</bcp14> be all bytes zero otherwise. The ESI format is described in <xref target="RFC7432" format="default"/>.</li>
          <li>The IP prefix length can be set to a value between 0 and 32 (bits)
     for IPv4 and between 0 and 128 for IPv6, and it specifies the number
     of bits in the prefix. The value <bcp14>MUST NOT</bcp14> be greater than 128.</li>
          <li>The IP prefix is a 4- or 16-octet field (IPv4 or IPv6).</li>
          <li>The GW IP Address field is a 4- or 16-octet field (IPv4 or
     IPv6) and will encode a valid IP address as an Overlay Index for
     the IP prefixes. The GW IP field <bcp14>MUST</bcp14> be all bytes zero if it is
     not used as an Overlay Index. Refer to <xref target="sect-3.2" format="default"/> for the
     definition and use of the Overlay Index.</li>

          <li>The MPLS Label field is encoded as 3 octets, where the high-order
     20 bits contain the label value, as per <xref target="RFC7432" format="default"/>. When sending,
     the label value <bcp14>SHOULD</bcp14> be zero if a recursive resolution based on
     an Overlay Index is used. If the received MPLS label value is zero,
     the route <bcp14>MUST</bcp14> contain an Overlay Index, and the ingress NVE/PE <bcp14>MUST</bcp14>
     perform a recursive resolution to find the egress NVE/PE. If the received
     label is zero and the route does not contain an Overlay Index, it
     <bcp14>MUST</bcp14> be "treat as withdraw" <xref target="RFC7606" format="default"/>.</li>
        </ul>
        <t>
   The RD, Ethernet Tag ID, IP prefix length, and IP prefix are part of
   the route key used by BGP to compare routes. The rest of the fields
   are not part of the route key.</t>
        <t>
   An IP Prefix route <bcp14>MAY</bcp14> be sent along with an EVPN Router's MAC Extended Community
   (defined in <xref target="RFC9135" format="default"/>) to
   carry the MAC address that is used as the Overlay Index. Note that the MAC
   address may be that of a TS.</t>
        <t>
   As described in <xref target="sect-3.2" format="default"/>, certain data combinations in a received
   route would imply a treat-as-withdraw handling of the route
   <xref target="RFC7606" format="default"/>.</t>
      </section>
      <section anchor="sect-3.2" numbered="true" toc="default">
        <name>Overlay Indexes and Recursive Lookup Resolution</name>
        <t>
   RT-5 routes support recursive lookup resolution through the use of
   Overlay Indexes as follows:</t>
   
          <ul spacing="normal">
          <li>An Overlay Index can be an ESI or IP address in the address space
	  of the tenant or MAC address, and it is used by an NVE as the
	  next hop for a given IP prefix. An Overlay Index always needs a
	  recursive route resolution on the NVE/PE that installs the RT-5 into
	  one of its IP-VRFs so that the NVE knows to which egress NVE/PE it
	  needs to forward the packets. It is important to note that recursive
	  resolution of the Overlay Index applies upon installation into an
	  IP-VRF and not upon BGP propagation (for instance, on an ASBR).
	  Also, as a result of the recursive resolution, the egress NVE/PE is
	  not necessarily the same NVE that originated the RT-5.</li>
	  
          <li>The Overlay Index is indicated along with the RT-5 in the ESI
	  field, GW IP field, or EVPN Router's MAC Extended Community, depending on
	  whether the IP prefix next hop is an ESI, an IP address, or a MAC address
	  in the tenant space. The Overlay Index for a given IP prefix is set
	  by local policy at the NVE that originates an RT-5 for that IP
	  prefix (typically managed by the cloud management system).</li>
	  
          <li>
            <t>In order to enable the recursive lookup resolution at the ingress
	  NVE, an NVE that is a possible egress NVE for a given Overlay Index
	  must originate a route advertising itself as the BGP next hop on the
	  path to the system denoted by the Overlay Index. For instance:

            </t>
            <ul spacing="normal">
              <li>If an NVE receives an RT-5 that specifies an Overlay Index, the
          NVE cannot use the RT-5 in its IP-VRF unless (or until) it can
          recursively resolve the Overlay Index.</li>
              <li>If the RT-5 specifies an ESI as the Overlay Index, a recursive
	  resolution can only be done if the NVE has received and installed an
	  RT-1 (auto-discovery per EVI) route specifying that ESI.</li>
              <li>If the RT-5 specifies a GW IP address as the Overlay Index,
	  a recursive resolution can only be done if the NVE has received and
	  installed an RT-2 (MAC/IP Advertisement route) specifying that IP address in the
	  IP Address field of its NLRI.</li>
              <li>If the RT-5 specifies a MAC address as the Overlay Index,
	  a recursive resolution can only be done if the NVE has received and
	  installed an RT-2 (MAC/IP Advertisement route) specifying that MAC address in the
	  MAC Address field of its NLRI.</li>
            </ul>
          
        
        <t>Note that the RT-1 or RT-2 routes needed for the
	recursive resolution may arrive before or after the given RT-5
	route.</t>
      </li>
  
     
          <li>Irrespective of the recursive resolution, if there is no IGP or BGP
	route to the BGP next hop of an RT-5, BGP <bcp14>MUST NOT</bcp14> install the RT-5
	even if the Overlay Index can be resolved.</li>
          <li>The ESI and GW IP fields may both be zero at the same time.
	However, they <bcp14>MUST NOT</bcp14> both be non-zero at the same time. A route
	containing a non-zero GW IP and a non-zero ESI (at the same time)
	<bcp14>SHOULD</bcp14> be treat as withdraw <xref target="RFC7606" format="default"/>.</li>
          <li>If either the ESI or the GW IP are non-zero, then the non-zero one is
	the Overlay Index, regardless of whether the EVPN Router's MAC Extended
	Community is present or the value of the label. In case the GW IP is
	the Overlay Index (hence, ESI is zero), the EVPN Router's MAC Extended
	Community is ignored if present.</li>
          <li>A route where ESI, GW IP, MAC, and Label are all zero at the same
	time <bcp14>SHOULD</bcp14> be treat as withdraw.</li>
        </ul>
        <t>
   The indirection provided by the Overlay Index and its recursive
   lookup resolution is required to achieve fast convergence in case of
   a failure of the object represented by the Overlay Index (see the
   example described in <xref target="sect-2.2" format="default"/>).</t>
        <t>
   <xref target="fields_overlay_table"/> shows the different RT-5 field combinations allowed by this
   specification and what Overlay Index must be used by the receiving
   NVE/PE in each case. Cases where there is no Overlay Index are
   indicated as "None" in <xref target="fields_overlay_table"/>. If there is no Overlay Index, the
   receiving NVE/PE will not perform any recursive resolution, and the
   actual next hop is given by the RT-5's BGP next hop.</t>
       
	<table anchor="fields_overlay_table">
	  <name>RT-5 Fields and Indicated Overlay Index</name>
	  <thead>
	    <tr>
	      <th>ESI</th>
	      <th>GW IP</th>
	      <th>MAC*</th>
	      <th>Label</th>
	      <th>Overlay Index</th>
	    </tr>
	  </thead>
	  <tbody>
	    <tr>
		<td>Non-Zero</td>
		<td>Zero</td>
		<td>Zero</td>
		<td>Don't Care</td>
		<td>ESI</td>
	      </tr>
	      <tr>
		<td>Non-Zero</td>
		<td>Zero</td>
	 	<td>Non-Zero</td>
		<td>Don't Care</td>
		<td>ESI</td>
	      </tr>
	      <tr>
		
		 <td>Zero</td>
		 <td>Non-Zero</td>
		 <td>Zero</td>
		 <td>Don't Care</td>
		 <td>GW IP</td>
	      </tr>
	      <tr>
		<td>Zero</td>
		<td>Zero</td>
		<td>Non-Zero</td>
		<td>Zero</td>
		<td>MAC</td>
	      </tr>
	      <tr>
		<td>Zero</td>
		<td>Zero</td>
		<td>Non-Zero</td>
		  <td>Non-Zero</td>
		  <td>MAC or None**</td>
	      </tr>
	      <tr>
		<td>Zero</td>
		<td>Zero</td>
		<td>Zero</td>
		<td>Non-Zero</td>
		<td>None***</td>
	      </tr>
	    </tbody>
	</table>	
	       
        <t>Table Notes: </t>
        <dl spacing="normal" indent="6">
          <dt>*</dt><dd> MAC with "Zero" value means no EVPN Router's MAC Extended Community is
	 present along with the RT-5. "Non-Zero" indicates that the extended
	 community is present and carries a valid MAC address. The encoding of
	 a MAC address <bcp14>MUST</bcp14> be the 6-octet MAC address specified by <xref target="IEEE-802.1Q" format="default"/>. Examples
	 of invalid MAC addresses are broadcast or multicast MAC
	 addresses. The route <bcp14>MUST</bcp14> be treat as withdraw in case of an invalid
	 MAC address. The presence of the EVPN Router's MAC Extended Community
	 alone is not enough to indicate the use of the MAC address as the
	 Overlay Index since the extended community can be used for other
	 purposes.</dd>
	 
          <dt>**</dt><dd>In this case, the Overlay Index may be the RT-5's MAC address or
	 "None", depending on the local policy of the receiving NVE/PE. Note
	 that the advertising NVE/PE that sets the Overlay Index <bcp14>SHOULD</bcp14>
	 advertise an RT-2 for the MAC Overlay Index if there are receiving
	 NVE/PEs configured to use the MAC as the Overlay Index.  This case in
	 <xref target="fields_overlay_table"/> is used in the IP-VRF-to-IP-VRF
	 implementations described in Sections <xref target="sect-4.4.1" format="counter"/> and <xref target="sect-4.4.3" format="counter"/>. The support of a MAC Overlay Index in this model is
	 <bcp14>OPTIONAL</bcp14>.</dd>
          <dt>***</dt><dd>The Overlay Index is "None". This is a special case used for
	 IP-VRF-to-IP-VRF where the NVE/PEs are connected by IP NVO tunnels as
	 opposed to Ethernet NVO tunnels.</dd>
        </dl>
        <t>
   If the combination of ESI, GW IP, MAC, and Label in the receiving RT-5
   is different than the combinations shown in <xref target="fields_overlay_table"/>, the router will
   process the route as per the rules described at the beginning of this
	section (<xref target="sect-3.2" format="default"/>).</t>
        <t>
   <xref target="use_overlay_table"/> shows the different inter-subnet use cases described in this
   document and the corresponding coding of the Overlay Index in the
   route type 5 (RT-5).</t>
       
	<table anchor="use_overlay_table">
	  <name>Use Cases and Overlay Indexes for Recursive Resolution</name>
	  <thead>
	    <tr>
	      <th>Section</th>
	      <th>Use Case</th>
	      <th>Overlay Index in the RT-5</th>
	    </tr>
	  </thead>
	<tbody>
	  <tr>
	    <td><xref target="sect-4.1" format="counter"/></td>
	      <td>TS IP address</td>
	      <td>GW IP</td>
	    </tr>
	    <tr>
	      <td><xref target="sect-4.2" format="counter"/></td>
	      <td>Floating IP address</td>
	      <td>GW IP</td>
	    </tr>
	    <tr>
	      <td><xref target="sect-4.3" format="counter"/></td>
	      <td>"Bump-in-the-wire"</td>
	      <td>ESI or MAC</td>
	    </tr>
	    <tr>
	      <td><xref target="sect-4.4" format="counter"/></td>
	      <td>IP-VRF-to-IP-VRF</td>
	      <td>GW IP, MAC, or None</td>
	    </tr>
	  </tbody>
	</table>
	
        <t>
   The above use cases are representative of the different Overlay
   Indexes supported by the RT-5 (GW IP, ESI, MAC, or None).</t>
      </section>
    </section>
    <section anchor="sect-4" numbered="true" toc="default">
      <name>Overlay Index Use Cases</name>
      <t> This
	section describes some use cases for the Overlay Index types used with
	the IP Prefix route.

	Although the examples use IPv4 prefixes and
	subnets, the descriptions of the RT-5 are valid for the same cases
	with IPv6, except that IP Prefixes, IPL, and GW IP are replaced by the
	corresponding IPv6 values.</t>
      <section anchor="sect-4.1" numbered="true" toc="default">
        <name>TS IP Address Overlay Index Use Case</name>
        <t><xref target="fig-2"/> illustrates an example of inter-subnet forwarding for
   subnets sitting behind VAs (on TS2 and TS3).</t>
        <figure anchor="fig-2">
          <name>TS IP Address Use Case</name>
          <artwork name="" type="" align="left" alt=""><![CDATA[
IP4---+           NVE2                            DGW1
      |        +-----------+ +---------+    +-------------+
SN2---TS2(VA)--|  (BD-10)  |-|         |----|  (BD-10)    |
      | M2/IP2 +-----------+ |         |    |    IRB1\    |
 -+---+                      |         |    |     (IP-VRF)|---+
  |                          |         |    +-------------+  _|_
 SN1                         |  VXLAN/ |                    (   )
  |                          |  GENEVE |         DGW2      ( WAN )
 -+---+           NVE3       |         |    +-------------+ (___)
      | M3/IP3 +-----------+ |         |----|  (BD-10)    |   |
SN3---TS3(VA)--|  (BD-10)  |-|         |    |    IRB2\    |   |
      |        +-----------+ +---------+    |     (IP-VRF)|---+
IP5---+                                     +-------------+
]]></artwork>
        </figure>
        <t>
   An example of inter-subnet forwarding between subnet SN1, which uses
   a 24-bit IP prefix (written as SN1/24 in the future), and a subnet
   sitting in the WAN is described below. NVE2, NVE3, DGW1, and DGW2 are
   running BGP EVPN. TS2 and TS3 do not participate in dynamic routing
   protocols, and they only have a static route to forward the traffic
   to the WAN. SN1/24 is dual-homed to NVE2 and NVE3.</t>
        <t>
   In this case, a GW IP is used as an Overlay Index. Although a
   different Overlay Index type could have been used, this use case
   assumes that the operator knows the VA's IP addresses beforehand,
   whereas the VA's MAC address is unknown and the VA's ESI is zero.
   Because of this, the GW IP is the suitable Overlay Index to be used
   with the RT-5s. The NVEs know the GW IP to be used for a given prefix
   by policy.

</t>
        <ol spacing="normal" type="(%d)">
          <li>
            <t>NVE2 advertises the following BGP routes on behalf of TS2:

            </t>
            <ul spacing="normal">
	      
              <li>Route type 2 (MAC/IP Advertisement route) containing: ML = 48 (MAC address length),
      M = M2 (MAC address), IPL = 32 (IP prefix length), IP = IP2, and BGP
      Encapsulation Extended Community <xref target="RFC9012"/> with the corresponding tunnel type. The
      MAC and IP addresses may be learned via ARP snooping.</li>
              <li>Route type 5 (IP Prefix route) containing: IPL = 24, IP = SN1,
	      ESI = 0, and GW
      IP address = IP2. The prefix and GW IP are learned by policy.</li>
            </ul>
          </li>
          <li>
            <t>Similarly, NVE3 advertises the following BGP routes on behalf of TS3:

            </t>
            <ul spacing="normal">
              <li>Route type 2 (MAC/IP Advertisement route) containing: ML = 48, M = M3, IPL = 32, IP = IP3
       (and BGP Encapsulation Extended Community).</li>
              <li>Route type 5 (IP Prefix route) containing: IPL = 24, IP = SN1,
       ESI = 0, and GW IP address = IP3.</li>
            </ul>
          </li>
          <li>
            <t>DGW1 and DGW2 import both received routes based on the Route Targets:

            </t>
            <ul spacing="normal">
              <li>Based on the BD-10 Route Target in DGW1 and DGW2, the MAC/IP Advertisement route
       is imported, and M2 is added to the BD-10 along with its corresponding
       tunnel information. For instance, if VXLAN is used, the VTEP will be
       derived from the MAC/IP Advertisement route BGP next hop and VNI from the MPLS Label1
       field. M2/IP2 is added to the ARP table. Similarly, M3 is added to
       BD-10, and M3/IP3 is added to the ARP table.</li>
              <li>Based on the BD-10 Route Target in DGW1 and DGW2, the IP Prefix
       route is also imported, and SN1/24 is added to the IP-VRF with Overlay
       Index IP2 pointing at the local BD-10. In this example, it is assumed
       that the RT-5 from NVE2 is preferred over the RT-5 from NVE3. If both
       routes were equally preferable and ECMP enabled, SN1/24 would also be
       added to the routing table with Overlay Index IP3.</li>
            </ul>
          </li>
          <li>
            <t> When DGW1 receives a packet from the WAN with destination IPx,
	    where IPx belongs to SN1/24:

            </t>
	    
            <ul spacing="normal">
              <li>A destination IP lookup is performed on the DGW1 IP-VRF table, and Overlay Index = IP2 is found. Since IP2 is an Overlay Index, a
       recursive route resolution is required for IP2.</li>
              <li>IP2 is resolved to M2 in the ARP table, and M2 is resolved to the
       tunnel information given by the BD FIB (e.g., remote VTEP and VNI for
       the VXLAN case).</li>
              <li>
                <t>The IP packet destined to IPx is encapsulated with:

                </t>
                <ul spacing="normal">
                  <li>Inner source MAC = IRB1 MAC.</li>
                  <li>Inner destination MAC = M2.</li>
                  <li>Tunnel information provided by the BD (VNI, VTEP IPs, and MACs for
       the VXLAN case).</li>
                </ul>
              </li>
            </ul>
          </li>
          <li>
            <t>When the packet arrives at NVE2:

            </t>
            <ul spacing="normal">
              <li>Based on the tunnel information (VNI for the VXLAN case), the BD-10
	      context is identified for a MAC lookup.</li>
	      
              <li>Encapsulation is stripped off and, based on a MAC lookup
       (assuming MAC forwarding on the egress NVE), the packet is
       forwarded to TS2, where it will be properly routed.</li>
            </ul>
          </li>
          <li>Should TS2 move from NVE2 to NVE3, MAC Mobility procedures will be applied
to the MAC route M2/IP2, as defined in <xref target="RFC7432"/>.  Route type 5
prefixes are not subject to MAC Mobility procedures; hence, no changes in the
DGW IP-VRF table will occur for TS2 mobility -- i.e., all the prefixes will still
be pointing at IP2 as the Overlay Index. There is an indirection for, e.g., SN1/24,
which still points at Overlay Index IP2 in the routing table, but IP2 will be
simply resolved to a different tunnel based on the outcome of the MAC
Mobility procedures for the MAC/IP Advertisement route M2/IP2.</li>
        </ol>
        <t>
   Note that in the opposite direction, TS2 will send traffic based on
   its static-route next-hop information (IRB1 and/or IRB2), and regular
   EVPN procedures will be applied.</t>
      </section>
      <section anchor="sect-4.2" numbered="true" toc="default">
        <name>Floating IP Overlay Index Use Case</name>

        <t>
   Sometimes TSs work in active/standby mode where an
   upstream floating IP owned by the active TS is used as the
   Overlay Index to get to some subnets behind the TS. This redundancy mode,
   already introduced in Sections <xref target="sect-2.1" format="counter"/> and <xref target="sect-2.2" format="counter"/>, is illustrated in <xref target="fig-3"/>.</t>
        <figure anchor="fig-3">
          <name>Floating IP Overlay Index for Redundant TS</name>
          <artwork name="" type="" align="left" alt=""><![CDATA[
                 NVE2                           DGW1
              +-----------+ +---------+    +-------------+
 +---TS2(VA)--|  (BD-10)  |-|         |----|  (BD-10)    |
 |     M2/IP2 +-----------+ |         |    |    IRB1\    |
 |      <-+                 |         |    |     (IP-VRF)|---+
 |        |                 |         |    +-------------+  _|_
SN1    vIP23 (floating)     |  VXLAN/ |                    (   )
 |        |                 |  GENEVE |         DGW2      ( WAN )
 |      <-+      NVE3       |         |    +-------------+ (___)
 |     M3/IP3 +-----------+ |         |----|  (BD-10)    |   |
 +---TS3(VA)--|  (BD-10)  |-|         |    |    IRB2\    |   |
              +-----------+ +---------+    |     (IP-VRF)|---+
                                           +-------------+
]]></artwork>
        </figure>
        <t>
   In this use case, a GW IP is used as an Overlay Index for the same
   reasons as in <xref target="sect-4.1" format="default"/>. However, this GW IP is a floating IP that belongs
   to the active TS. Assuming TS2 is the active TS and owns vIP23:

</t>
        <ol spacing="normal" type="(%d)">
          <li>
            <t>NVE2 advertises the following BGP routes for TS2:

            </t>
            <ul spacing="normal">
              <li>Route type 2 (MAC/IP Advertisement route) containing: ML = 48, M = M2, IPL = 32, and
       IP = vIP23 (as well as BGP Encapsulation Extended Community). The MAC and IP
       addresses may be learned via ARP snooping.</li>
              <li>Route type 5 (IP Prefix route) containing: IPL = 24, IP = SN1,
	      ESI = 0, and GW
       IP address = vIP23. The prefix and GW IP are learned by policy.</li>
            </ul>
          </li>
          <li>
            <t>NVE3 advertises the following BGP route for TS3 (it does not advertise an
RT-2 for M3/vIP23):

            </t>
            <ul spacing="normal">
              <li>Route type 5 (IP Prefix route) containing: IPL = 24, IP = SN1,
	      ESI = 0, and GW
     IP address = vIP23. The prefix and GW IP are learned by policy.</li>
            </ul>
          </li>
          <li>
            <t>DGW1 and DGW2 import both received routes based on the Route Target:

            </t>
            <ul spacing="normal">
              <li>M2 is added to the BD-10 FIB along with its corresponding tunnel
     information. For the VXLAN use case, the VTEP will be derived from the
     MAC/IP Advertisement route BGP next hop and VNI from the VNI field. M2/vIP23 is added
     to the ARP table.</li>
              <li>SN1/24 is added to the IP-VRF in DGW1 and DGW2 with Overlay Index
     vIP23 pointing at M2 in the local BD-10.</li>
            </ul>
          </li>
          <li>
            <t>When DGW1 receives a packet from the WAN with destination IPx, where IPx
belongs to SN1/24:

            </t>
            <ul spacing="normal">
              <li>A destination IP lookup is performed on the DGW1 IP-VRF table,
     and Overlay Index = vIP23 is found. Since vIP23 is an Overlay Index, a
     recursive route resolution for vIP23 is required.</li>
              <li>vIP23 is resolved to M2 in the ARP table, and M2 is resolved to the
     tunnel information given by the BD (remote VTEP and VNI for the VXLAN
     case).</li>
              <li>
                <t>The IP packet destined to IPx is encapsulated with:

                </t>
                <ul spacing="normal">
                  <li>Inner source MAC = IRB1 MAC.</li>
                  <li>Inner destination MAC = M2.</li>
                  <li>Tunnel information provided by the BD FIB (VNI, VTEP IPs, and MACs
          for the VXLAN case).</li>
                </ul>
              </li>
            </ul>
          </li>
          <li>
            <t>When the packet arrives at NVE2:

            </t>
            <ul spacing="normal">
              <li>Based on the tunnel information (VNI for the VXLAN case), the BD-10
       context is identified for a MAC lookup.</li>
              <li>Encapsulation is stripped off and, based on a MAC lookup (assuming
       MAC forwarding on the egress NVE), the packet is forwarded to TS2,
       where it will be properly routed.</li>
            </ul>
          </li>
          <li>When the redundancy protocol running between TS2 and TS3 appoints TS3 as
the new active TS for SN1, TS3 will now own the floating vIP23 and will signal
this new ownership using a gratuitous ARP REPLY message (explained in <xref target="RFC5227" format="default"/>) or similar. Upon receiving the new owner's notification,
NVE3 will issue a route type 2 for M3/vIP23, and NVE2 will withdraw the RT-2
for M2/vIP23. DGW1 and DGW2 will update their ARP tables with the new MAC
resolving the floating IP. No changes are made in the IP-VRF table.</li>
        </ol>
      </section>
      <section anchor="sect-4.3" numbered="true" toc="default">
        <name>Bump-in-the-Wire Use Case</name>
        <t>
 <xref target="fig-4"/> illustrates an example of inter-subnet forwarding for an IP
   Prefix route that carries subnet SN1. In this use case, TS2 and TS3
   are Layer 2 VA devices without any IP addresses that can be included as
   an Overlay Index in the GW IP field of the IP Prefix route. Their MAC
   addresses are M2 and M3, respectively, and are connected to BD-10. Note
   that IRB1 and IRB2 (in DGW1 and DGW2, respectively) have IP addresses
   in a subnet different than SN1.</t>
        <figure anchor="fig-4">
          <name>Bump-in-the-Wire Use Case</name>
          <artwork name="" type="" align="left" alt=""><![CDATA[
                   NVE2                           DGW1
            M2 +-----------+ +---------+    +-------------+
  +---TS2(VA)--|  (BD-10)  |-|         |----|  (BD-10)    |
  |      ESI23 +-----------+ |         |    |    IRB1\    |
  |        +                 |         |    |     (IP-VRF)|---+
  |        |                 |         |    +-------------+  _|_
 SN1       |                 |  VXLAN/ |                    (   )
  |        |                 |  GENEVE |         DGW2      ( WAN )
  |        +      NVE3       |         |    +-------------+ (___)
  |      ESI23 +-----------+ |         |----|  (BD-10)    |   |
  +---TS3(VA)--|  (BD-10)  |-|         |    |    IRB2\    |   |
            M3 +-----------+ +---------+    |     (IP-VRF)|---+
                                            +-------------+
]]></artwork>
        </figure>

        <t>
   Since TS2 and TS3 cannot participate in any dynamic routing
   protocol and neither has an IP address assigned, there are two potential
   Overlay Index types that can be used when advertising SN1:

        </t>
        <ol spacing="normal" type="%c)">
          <li>an ESI, i.e., ESI23, that can be provisioned on the attachment
	  ports of NVE2 and NVE3, as shown in <xref target="fig-4"/> or</li>
          <li>the VA's MAC address, which can be added to NVE2 and NVE3 by
	  policy.</li>
        </ol>
        <t>
   The advantage of using an ESI as the Overlay Index as opposed to the VA's MAC
   address is that the forwarding to the egress NVE can be done purely based
   on the state of the AC in the Ethernet segment (notified by the Ethernet A-D per EVI
   route), and all the EVPN multihoming redundancy mechanisms can be
   reused. For instance, the mass withdrawal mechanism described in <xref target="RFC7432" format="default"/> for fast
   failure detection and propagation can be used.  It is assumed per this section that
   an ESI Overlay Index is used in this use case, but this use case does not preclude the
   use of the VA's MAC address as an Overlay Index. If a MAC is used as
   the Overlay Index, the control plane must follow the procedures described in
   <xref target="sect-4.4.3" format="default"/>.</t>
        <t>
   The model supports VA redundancy in a similar way to the one
   described in <xref target="sect-4.2" format="default"/> for the floating IP Overlay Index use case,
   except that it uses the EVPN Ethernet A-D per EVI route instead of
   the MAC advertisement route to advertise the location of the Overlay
   Index. The procedure is explained below:

</t>
        <ol spacing="normal" type="(%d)">
          <li>
            <t> Assuming TS2 is the active TS in ESI23, NVE2 advertises the
   following BGP routes:

            </t>
            <ul spacing="normal">
              <li>Route type 1 (Ethernet A-D route for BD-10) containing: ESI = ESI23 and
     the corresponding tunnel information (VNI field), as well as the BGP
     Encapsulation Extended Community as per <xref target="RFC8365"/>.</li>
              <li>Route type 5 (IP Prefix route) containing: IPL = 24, IP = SN1,
	      ESI = ESI23, and GW IP address = 0. The EVPN Router's MAC Extended Community defined in
     <xref target="RFC9135"/> is added and carries the MAC address (M2)
     associated with the TS behind which SN1 sits. M2 may be learned by policy; however, the
     MAC in the Extended Community is preferred if sent with the route.</li>
            </ul>
          </li>
          <li>
            <t>NVE3 advertises the following BGP route for TS3 (no AD per EVI route is
advertised):

            </t>
            <ul spacing="normal">
              <li>Route type 5 (IP Prefix route) containing: IPL = 24, IP = SN1,
	      ESI = 23, and GW IP address = 0. The EVPN Router's MAC Extended Community is added and
       carries the MAC address (M3) associated with the TS behind which SN1
       sits. M3 may be learned by policy; however, the MAC in the Extended
       Community is preferred if sent with the route.</li>
            </ul>
          </li>
          <li>
            <t>DGW1 and DGW2 import the received routes based on the Route Target:

            </t>
            <ul spacing="normal">

	      
              <li>The tunnel information to get to ESI23 is installed in DGW1 and
       DGW2. For the VXLAN use case, the VTEP will be derived from the
       Ethernet A-D route BGP next hop and VNI from the VNI/VSID field (see
       <xref target="RFC8365"/>).</li>
              <li>The RT-5 coming from the NVE that advertised the RT-1 is
	      selected, and SN1/24 is added to the IP-VRF in DGW1 and DGW2 with Overlay Index
       ESI23 and MAC = M2.</li>
            </ul>
          </li>
          <li>
            <t>When DGW1 receives a packet from the WAN with destination IPx, where IPx
belongs to SN1/24:

            </t>
            <ul spacing="normal">
              <li>A destination IP lookup is performed on the DGW1 IP-VRF table, and Overlay Index = ESI23 is found. Since ESI23 is an Overlay
       Index, a recursive route resolution is required to find the egress NVE
       where ESI23 resides.</li>
              <li>
                <t>The IP packet destined to IPx is encapsulated with:

                </t>
                <ul spacing="normal">
                  <li>Inner source MAC = IRB1 MAC.</li>
                  <li>Inner destination MAC = M2 (this MAC will be obtained from the
          EVPN Router's MAC Extended Community received along with the RT-5 for
          SN1). Note that the EVPN Router's MAC Extended Community is used in this
          case to carry the TS's MAC address, as opposed to the MAC
          address of the NVE/PE.</li>
                  <li>Tunnel information for the NVO tunnel is provided by the Ethernet
          A-D route per EVI for ESI23 (VNI and VTEP IP for the VXLAN
	  case).</li>
                </ul>
              </li>
            </ul>
          </li>
          <li>
            <t>When the packet arrives at NVE2:

            </t>
            <ul spacing="normal">
              <li>Based on the tunnel demultiplexer information (VNI for the VXLAN
     case), the BD-10 context is identified for a MAC lookup (assuming a MAC-based disposition model <xref target="RFC7432"/>), or the VNI may directly identify
     the egress interface (for an MPLS-based disposition model, which in this
     context is a VNI-based disposition model).</li>
              <li>Encapsulation is stripped off and, based on a MAC lookup (assuming MAC
     forwarding on the egress NVE) or a VNI lookup (in case of VNI
     forwarding), the packet is forwarded to TS2, where it will be forwarded
     to SN1.</li>
            </ul>
          </li>

          <li>If the redundancy protocol running between TS2 and TS3 follows an
active/standby model and there is a failure, TS3 is appointed as the new active
TS for SN1. TS3 will now own the connectivity to SN1 and will signal this new
ownership. Upon receiving the new owner's notification, NVE3's AC will become
active and issue a route type 1 for ESI23, whereas NVE2 will withdraw its
Ethernet A-D route for ESI23. DGW1 and DGW2 will update their tunnel
information to resolve ESI23. The inner destination MAC will be changed to
M3.</li>
        </ol>
      </section>
      <section anchor="sect-4.4" numbered="true" toc="default">
        <name>IP-VRF-to-IP-VRF Model</name>
        <t>
   This use case is similar to the scenario described in <xref target="RFC9135" sectionFormat="of" section="9.1"/>; however, the new
   requirement here is the advertisement of IP prefixes as opposed to
   only host routes.</t>
        <t>
   In the examples described in Sections <xref target="sect-4.1" format="counter"/>, <xref target="sect-4.2" format="counter"/>, and <xref target="sect-4.3" format="counter"/>, the BD
   instance can connect IRB interfaces and any other Tenant Systems
   connected to it. EVPN provides connectivity for:</t>
        <ol spacing="normal" type="1">
          <li anchor="step1">Traffic destined to the IRB or TS IP interfaces, as well as</li>
          <li anchor="step2">Traffic destined to IP subnets sitting behind the TS, e.g., SN1
	  or SN2.</li>
        </ol>
        <t>
   In order to provide connectivity for <xref target="step1" format="none">(1)</xref>, MAC/IP Advertisement routes (RT-2) are
   needed so that IRB or TS MACs and IPs can be distributed.
   Connectivity type <xref target="step2" format="none">(2)</xref> is accomplished by the exchange of IP Prefix
   routes (RT-5) for IPs and subnets sitting behind certain Overlay
   Indexes, e.g., GW IP, ESI, or TS MAC.</t>
        <t>
   In some cases, IP Prefix routes may be advertised for subnets and IPs
   sitting behind an IRB. This use case is referred to as the
   "IP-VRF-to-IP-VRF" model.</t>
        <t>
   <xref target="RFC9135" format="default"/> defines an asymmetric IRB model and a symmetric
   IRB model based on the required lookups at the ingress and egress
   NVE. The asymmetric model requires an IP lookup and a MAC lookup at
   the ingress NVE, whereas only a MAC lookup is needed at the egress
   NVE; the symmetric model requires IP and MAC lookups at both the ingress
   and egress NVE. From that perspective, the IP-VRF-to-IP-VRF use case
   described in this section is a symmetric IRB model.</t>
        <t>
   Note that in an IP-VRF-to-IP-VRF scenario, out of the many subnets that a
   tenant may have, it may be the case that only a few are attached to a given
   IP-VRF of the NVE/PE. In order to provide inter-subnet connectivity among the
   set of NVE/PEs where the tenant is connected, a new SBD is created on all
   of them if a recursive resolution is needed. This SBD is instantiated as a
   regular BD (with no ACs) in each NVE/PE and has an IRB interface that
   connects the SBD to the IP-VRF. The IRB interface's IP or MAC address is
   used as the Overlay Index for a recursive resolution.</t>
        <t>
   Depending on the existence and characteristics of the SBD and IRB
   interfaces for the IP-VRFs, there are three different IP-VRF-to-IP-VRF
   scenarios identified and described in this document:

        </t>
<ol>
<li>Interface-less model: no SBD and no Overlay Indexes required.</li>
<li>Interface-ful with an SBD IRB model: requires SBD as well as GW IP addresses as Overlay Indexes.</li>
<li>Interface-ful with an unnumbered SBD IRB model: requires SBD as well as MAC addresses as Overlay Indexes.</li>
</ol>
        <t>
   Inter-subnet IP multicast is outside the scope of this document.</t>
        <section anchor="sect-4.4.1" numbered="true" toc="default">
          <name>Interface-less IP-VRF-to-IP-VRF Model</name>

          <t><xref target="fig-5"/> depicts the Interface-less IP-VRF-to-IP-VRF model.</t>
          <figure anchor="fig-5">
            <name>Interface-less IP-VRF-to-IP-VRF Model</name>
            <artwork name="" type="" align="left" alt=""><![CDATA[
                   NVE1(M1)
          +------------+
  IP1+----|  (BD-1)    |                DGW1(M3)
          |      \     |    +---------+ +--------+
          |    (IP-VRF)|----|         |-|(IP-VRF)|----+
          |      /     |    |         | +--------+    |
      +---|  (BD-2)    |    |         |              _+_
      |   +------------+    |         |             (   )
   SN1|                     |  VXLAN/ |            ( WAN )--H1
      |            NVE2(M2) |  GENEVE/|             (___)
      |   +------------+    |  MPLS   |               +
      +---|  (BD-2)    |    |         | DGW2(M4)      |
          |       \    |    |         | +--------+    |
          |    (IP-VRF)|----|         |-|(IP-VRF)|----+
          |       /    |    +---------+ +--------+
  SN2+----|  (BD-3)    |
          +------------+
]]></artwork>
          </figure>
          <t>In this case:

          </t>
          <ol spacing="normal" type="%c)">
            <li>The NVEs and DGWs must provide connectivity between hosts in SN1,
	SN2, and IP1 and hosts sitting at the other end of the WAN -- for example,
	H1. It is assumed that the DGWs import/export IP and/or VPN-IP routes
	to/from the WAN.</li>
            <li>The IP-VRF instances in the NVE/DGWs are directly connected through
	NVO tunnels, and no IRBs and/or BD instances are instantiated to
	connect the IP-VRFs.</li>
            <li>The solution must provide Layer 3 connectivity among the IP-VRFs
	for Ethernet NVO tunnels -- for instance, VXLAN or GENEVE.</li>
            <li>The solution may provide Layer 3 connectivity among the IP-VRFs for
	IP NVO tunnels -- for example, GENEVE (with IP payload).</li>
          </ol>
          <t>
   In order to meet the above requirements, the EVPN route type 5 will be used
   to advertise the IP prefixes, along with the EVPN Router's MAC Extended
   Community as defined in <xref target="RFC9135" format="default"/> if the advertising
   NVE/DGW uses Ethernet NVO tunnels. Each NVE/DGW will advertise an RT-5 for
   each of its prefixes with the following fields:

          </t>
          <ul spacing="normal">
            <li>RD as per <xref target="RFC7432" format="default"/>.</li>
            <li>Ethernet Tag ID = 0.</li>
            <li>IP prefix length and IP address, as explained in the previous
	  sections.</li>
            <li>GW IP address = 0.</li>
            <li>ESI = 0.</li>
            <li>MPLS label or VNI corresponding to the IP-VRF.</li>
          </ul>
          <t>
   Each RT-5 will be sent with a Route Target identifying the tenant
   (IP-VRF) and may be sent with two BGP extended communities:

          </t>
          <ul spacing="normal">
            <li>The first one is the BGP Encapsulation Extended Community, as per
	  <xref target="RFC9012" format="default"/>, identifying the tunnel type.</li>
            <li>The second one is the EVPN Router's MAC Extended Community, as per
	  <xref target="RFC9135" format="default"/>, containing the MAC address associated with the NVE advertising the
	  route. This MAC address identifies the NVE/DGW and <bcp14>MAY</bcp14> be reused for
	  all the IP-VRFs in the NVE. The EVPN Router's MAC Extended Community must
	  be sent if the route is associated with an Ethernet NVO tunnel -- for
	  instance, VXLAN. If the route is associated with an IP NVO tunnel -- for
	  instance, GENEVE with an IP payload -- the EVPN Router's MAC Extended Community
	  should not be sent.</li>
          </ul>
          <t>
   The following example illustrates the procedure to advertise and
   forward packets to SN1/24 (IPv4 prefix advertised from NVE1):

          </t>
          <ol spacing="normal" type="(%d)">
            <li>
              <t>NVE1 advertises the following BGP route:

              </t>
              <ul spacing="normal">
                <li>
                  <t>Route type 5 (IP Prefix route) containing:

                  </t>
                  <ul spacing="normal">
                    <li>IPL = 24, IP = SN1, Label = 10.</li>
                    <li>GW IP =  set to 0.</li>
                    <li> BGP Encapsulation Extended
		   Community <xref target="RFC9012" format="default"/>.</li>
                    <li>EVPN Router's MAC Extended Community that contains M1.</li>
                    <li>Route Target identifying the tenant (IP-VRF).</li>
                  </ul>
                </li>
              </ul>
            </li>
            <li>
              <t>DGW1 imports the received routes from NVE1:

              </t>
              <ul spacing="normal">
                <li>DGW1 installs SN1/24 in the IP-VRF identified by the RT-5
	      Route Target.</li>
                <li>Since GW IP = ESI = 0, the label is a non-zero value, and the
	      local policy indicates this interface-less model, DGW1, will use
	      the label and next hop of the RT-5, as well as the MAC address
	      conveyed in the EVPN Router's MAC Extended Community (as the inner
	      destination MAC address) to set up the forwarding state and
	      later encapsulate the routed IP packets.</li>
              </ul>
            </li>
            <li>
              <t>When DGW1 receives a packet from the WAN with destination IPx,
	where IPx belongs to SN1/24:

              </t>
              <ul spacing="normal">
                <li>A destination IP lookup is performed on the DGW1 IP-VRF
	       table. The lookup yields SN1/24.</li>
                <li>Since the RT-5 for SN1/24 had a GW IP = ESI = 0, a non-zero
	       label, and a next hop, and since the model is interface-less, DGW1 will
	       not need a recursive lookup to resolve the route.</li>
                <li>The IP packet destined to IPx is encapsulated with: inner source MAC = DGW1 MAC, inner destination MAC = M1, outer source
	       IP (tunnel source IP) = DGW1 IP, and outer destination IP (tunnel
	       destination IP) = NVE1 IP. The source and inner destination MAC
	       addresses are not needed if IP NVO tunnels are used.</li>
              </ul>
            </li>
            <li>
              <t>When the packet arrives at NVE1:

              </t>
              <ul spacing="normal">
                <li>NVE1 will identify the IP-VRF for an IP lookup based on the
	       label (the inner destination MAC is not needed to identify the
	       IP-VRF).</li>
                <li>An IP lookup is performed in the routing context, where SN1
	       turns out to be a local subnet associated with BD-2. A subsequent
	       lookup in the ARP table and the BD FIB will provide the
	       forwarding information for the packet in BD-2.</li>
              </ul>
            </li>
          </ol>
          <t>
   The model described above is called an "interface-less" model since the
   IP-VRFs are connected directly through tunnels, and they don't require
   those tunnels to be terminated in SBDs instead, as in Sections <xref target="sect-4.4.2" format="counter"/> or <xref target="sect-4.4.3" format="counter"/>.</t>
        </section>
        <section anchor="sect-4.4.2" numbered="true" toc="default">
          <name>Interface-ful IP-VRF-to-IP-VRF with SBD IRB</name>
          <t><xref target="fig-6"/> depicts the Interface-ful IP-VRF-to-IP-VRF with SBD IRB model.</t>
          <figure anchor="fig-6">
            <name>Interface-ful with SBD IRB Model</name>
            <artwork name="" type="" align="left" alt=""><![CDATA[
                 NVE1
        +------------+                       DGW1
IP10+---+(BD-1)      | +---------------+ +------------+
        |  \         | |               | |            |
        |(IP-VRF)-(SBD)|               |(SBD)-(IP-VRF)|-----+
        |  /    IRB(M1/IP1)           IRB(M3/IP3)     |     |
    +---+(BD-2)      | |               | +------------+    _+_
    |   +------------+ |               |                  (   )
 SN1|                  |     VXLAN/    |                 ( WAN )--H1
    |            NVE2  |     GENEVE/   |                  (___)
    |   +------------+ |     MPLS      |     DGW2           +
    +---+(BD-2)      | |               | +------------+     |
        |  \         | |               | |            |     |
        |(IP-VRF)-(SBD)|               |(SBD)-(IP-VRF)|-----+
        |  /    IRB(M2/IP2)           IRB(M4/IP4)     |
SN2+----+(BD-3)      | +---------------+ +------------+
        +------------+
]]></artwork>
          </figure>
          <t>In this model:

          </t>
          <ol spacing="normal" type="%c)">
            <li>As in <xref target="sect-4.4.1"/>, the NVEs and DGWs must provide connectivity
	  between hosts in SN1, SN2, and IP10 and in hosts sitting at the other end
	  of the WAN.</li>
            <li>However, the NVE/DGWs are now connected through Ethernet NVO
	  tunnels terminated in the SBD instance. The IP-VRFs use IRB
	  interfaces for their connectivity to the SBD.</li>
            <li>Each SBD IRB has an IP and a MAC address, where the IP address
	  must be reachable from other NVEs or DGWs.</li>
            <li>The SBD is attached to all the NVE/DGWs in the tenant domain BDs.</li>
            <li>The solution must provide Layer 3 connectivity for Ethernet NVO
	  tunnels -- for instance, VXLAN or GENEVE (with Ethernet payload).</li>
          </ol>
          <t>
   EVPN type 5 routes will be used to advertise the IP prefixes, whereas
   EVPN RT-2 routes will advertise the MAC/IP addresses of each SBD IRB
   interface. Each NVE/DGW will advertise an RT-5 for each of its
   prefixes with the following fields:

          </t>
          <ul spacing="normal">
            <li>RD as per <xref target="RFC7432" format="default"/>.</li>
            <li>Ethernet Tag ID = 0.</li>
            <li>IP prefix length and IP address, as explained in the previous
	  sections.</li>
            <li>GW IP address = IRB-IP of the SBD (this is the Overlay Index that
	  will be used for the recursive route resolution).</li>
            <li>ESI = 0.</li>
            <li>Label value should be zero since the RT-5 route requires a
	  recursive lookup resolution to an RT-2 route. It is ignored on
	  reception, and the MPLS label or VNI from
	  the RT-2's MPLS Label1 field is used when forwarding packets.</li>
          </ul>
          <t>
   Each RT-5 will be sent with a Route Target identifying the tenant
   (IP-VRF). The EVPN Router's MAC Extended Community should not be sent in
   this case.</t>
          <t>
   The following example illustrates the procedure to advertise and
   forward packets to SN1/24 (IPv4 prefix advertised from NVE1):

          </t>
          <ol spacing="normal" type="(%d)">
            <li>
              <t>NVE1 advertises the following BGP routes:

              </t>
              <ul spacing="normal">
                <li>
                  <t>Route type 5 (IP Prefix route) containing:

                  </t>
                  <ul spacing="normal">
                    <li>IPL = 24, IP = SN1, Label = <bcp14>SHOULD</bcp14> be set to 0.</li>
                    <li>GW IP = IP1 (SBD IRB's IP).</li>
                    <li>Route Target identifying the tenant (IP-VRF).</li>
                  </ul>
                </li>
                <li>
                  <t>Route type 2 (MAC/IP Advertisement route for the SBD IRB) containing:

                  </t>
                  <ul spacing="normal">
                    <li>ML = 48, M = M1, IPL = 32, IP = IP1, Label = 10.</li>
                    <li>A BGP Encapsulation Extended Community <xref target="RFC9012" format="default"/>.</li>
                    <li>Route Target identifying the SBD. This Route Target may be the
	  same as the one used with the RT-5.</li>
                  </ul>
                </li>
              </ul>
            </li>
            <li>
              <t>DGW1 imports the received routes from NVE1:

              </t>
              <ul spacing="normal">
                <li>
                  <t>DGW1 installs SN1/24 in the IP-VRF identified by the RT-5 Route
	  Target.

                  </t>
                  <ul spacing="normal">
                    <li>Since GW IP is different from zero, the GW IP (IP1) will be
	    used as the Overlay Index for the recursive route resolution to
	    the RT-2 carrying IP1.</li>
                  </ul>
                </li>
              </ul>
            </li>
            <li>
              <t>When DGW1 receives a packet from the WAN with destination IPx,
	where IPx belongs to SN1/24: 

              </t>
              <ul spacing="normal">
                <li>A destination IP lookup is performed on the DGW1 IP-VRF
	     table. The lookup yields SN1/24, which is associated with
	     the Overlay Index IP1. The forwarding information is derived from
	     the RT-2 received for IP1.</li>
                <li>The IP packet destined to IPx is encapsulated with: inner source MAC = M3, inner destination MAC = M1, outer source IP
	     (source VTEP) = DGW1 IP, and outer destination IP (destination VTEP)
	     = NVE1 IP.</li>
              </ul>
            </li>
            <li>
              <t>When the packet arrives at NVE1:

              </t>
              <ul spacing="normal">
                <li>NVE1 will identify the IP-VRF for an IP lookup based on the
	     label and the inner MAC DA.</li>
                <li>An IP lookup is performed in the routing context, where SN1
	     turns out to be a local subnet associated with BD-2. A subsequent
	     lookup in the ARP table and the BD FIB will provide the
	     forwarding information for the packet in BD-2.</li>
              </ul>
            </li>
          </ol>
          <t>
   The model described above is called an "interface-ful with SBD IRB" model because the tunnels connecting the DGWs and NVEs need to be
   terminated into the SBD. The SBD is connected to the IP-VRFs via SBD
   IRB interfaces, and that allows the recursive resolution of RT-5s to
   GW IP addresses.</t>
        </section>
        <section anchor="sect-4.4.3" numbered="true" toc="default">
          <name>Interface-ful IP-VRF-to-IP-VRF with Unnumbered SBD IRB</name>
          <t>
<xref target="fig-7"/> depicts the Interface-ful IP-VRF-to-IP-VRF with unnumbered SBD IRB model. Note that this model is similar to the one described in <xref target="sect-4.4.2" format="default"/>, only
   without IP addresses on the SBD IRB interfaces.</t>
          <figure anchor="fig-7">
            <name>Interface-ful with Unnumbered SBD IRB Model</name>
            <artwork name="" type="" align="left" alt=""><![CDATA[
                 NVE1
        +------------+                       DGW1
IP1+----+(BD-1)      | +---------------+ +------------+
        |  \         | |               | |            |
        |(IP-VRF)-(SBD)|               (SBD)-(IP-VRF) |-----+
        |  /    IRB(M1)|               | IRB(M3)      |     |
    +---+(BD-2)      | |               | +------------+    _+_
    |   +------------+ |               |                  (   )
 SN1|                  |     VXLAN/    |                 ( WAN )--H1
    |            NVE2  |     GENEVE/   |                  (___)
    |   +------------+ |     MPLS      |     DGW2           +
    +---+(BD-2)      | |               | +------------+     |
        |  \         | |               | |            |     |
        |(IP-VRF)-(SBD)|               (SBD)-(IP-VRF) |-----+
        |  /    IRB(M2)|               | IRB(M4)      |
SN2+----+(BD-3)      | +---------------+ +------------+
        +------------+
]]></artwork>
          </figure>
          <t>In this model:

          </t>
          <ol spacing="normal" type="%c)">
            <li>As in Sections <xref target="sect-4.4.1" format="counter"/> and <xref target="sect-4.4.2" format="counter"/>, the NVEs and DGWs must provide
	connectivity between hosts in SN1, SN2, and IP1 and in hosts sitting at the
	other end of the WAN.</li>
            <li>As in <xref target="sect-4.4.2"/>, the NVE/DGWs are connected through Ethernet
	NVO tunnels terminated in the SBD instance. The IP-VRFs use IRB
	interfaces for their connectivity to the SBD.</li>
            <li>However, each SBD IRB has a MAC address only and no IP address
	(which is why the model refers to an "unnumbered" SBD IRB). In this
	model, there is no need to have IP reachability to the SBD IRB
	interfaces themselves, and there is a requirement to limit the number
	of IP addresses used.</li>
            <li>As in <xref target="sect-4.4.2"/>, the SBD is composed of all the NVE/DGW BDs of
	the tenant that need inter-subnet forwarding.</li>
            <li>As in <xref target="sect-4.4.2"/>, the solution must provide Layer 3 connectivity
	for Ethernet NVO tunnels -- for instance, VXLAN or GENEVE (with Ethernet
	payload).</li>
          </ol>
          <t>
   This model will also make use of the RT-5 recursive resolution. EVPN
   type 5 routes will advertise the IP prefixes along with the EVPN Router's
   MAC Extended Community used for the recursive lookup, whereas EVPN
   RT-2 routes will advertise the MAC addresses of each SBD IRB
   interface (this time without an IP).</t>
          <t>
   Each NVE/DGW will advertise an RT-5 for each of its prefixes with the
   same fields as described in <xref target="sect-4.4.2"/>, except:

          </t>
          <ul spacing="normal">
            <li>GW IP address = set to 0.</li>
          </ul>
          <t>
   Each RT-5 will be sent with a Route Target identifying the tenant
   (IP-VRF) and the EVPN Router's MAC Extended Community containing the MAC
   address associated with the SBD IRB interface. This MAC address may be
   reused for all the IP-VRFs in the NVE.</t>
          <t>
   The example is similar to the one in <xref target="sect-4.4.2"/>:

          </t>
          <ol spacing="normal" type="(%d)">
            <li>
              <t>NVE1 advertises the following BGP routes:

              </t>
              <ul spacing="normal">
                <li>
                  <t>Route type 5 (IP Prefix route) containing the same values as
          in the example in <xref target="sect-4.4.2" format="default"/>, except:

                  </t>
                  <ul spacing="normal">
                    <li>GW IP =  <bcp14>SHOULD</bcp14> be set to 0.</li>
                    <li>EVPN Router's MAC Extended Community containing M1 (this will be used
	  for the recursive lookup to an RT-2).</li>
                  </ul>
                </li>
                <li>
                  <t>Route type 2 (MAC route for the SBD IRB) with the same values
          as in <xref target="sect-4.4.2" format="default"/>, except:

                  </t>
                  <ul spacing="normal">
                    <li>ML = 48, M = M1, IPL = 0, Label = 10.</li>
                  </ul>
                </li>
              </ul>
            </li>
            <li>
              <t>DGW1 imports the received routes from NVE1:

              </t>
              <ul spacing="normal">
                <li>
                  <t>DGW1 installs SN1/24 in the IP-VRF identified by the RT-5
          Route Target.

                  </t>
                  <ul spacing="normal">
                    <li>The MAC contained in the EVPN Router's MAC Extended Community sent
	    along with the RT-5 (M1) will be used as the Overlay Index for the
	    recursive route resolution to the RT-2 carrying M1.</li>
                  </ul>
                </li>
              </ul>
            </li>
            <li>
              <t>When DGW1 receives a packet from the WAN with destination IPx,
	where IPx belongs to SN1/24: 

              </t>
              <ul spacing="normal">
                <li>A destination IP lookup is performed on the DGW1 IP-VRF
	      table. The lookup yields SN1/24, which is associated with
	      the Overlay Index M1. The forwarding information is derived from
	      the RT-2 received for M1.</li>
                <li>The IP packet destined to IPx is encapsulated with: inner source MAC = M3, inner destination MAC = M1, outer source IP
	      (source VTEP) = DGW1 IP, and outer destination IP (destination VTEP)
	      = NVE1 IP.</li>
              </ul>
            </li>
            <li>
              <t>When the packet arrives at NVE1:

              </t>
              <ul spacing="normal">
                <li>NVE1 will identify the IP-VRF for an IP lookup based on the
	       label and the inner MAC DA.</li>
                <li>An IP lookup is performed in the routing context, where SN1
	       turns out to be a local subnet associated with BD-2. A subsequent
	       lookup in the ARP table and the BD FIB will provide the
	       forwarding information for the packet in BD-2.</li>
              </ul>
            </li>
          </ol>
          <t>
   The model described above is called an "interface-ful with unnumbered SBD
   IRB" model (as in <xref target="sect-4.4.2" format="default"/>) but without the SBD IRB having an IP address.</t>
        </section>
      </section>
    </section>
    <section anchor="sect-5" numbered="true" toc="default">
      <name>Security Considerations</name>
      <t>
   This document provides a set of procedures to achieve inter-subnet
   forwarding across NVEs or PEs attached to a group of BDs that belong
   to the same tenant (or VPN). The security considerations discussed in
   <xref target="RFC7432" format="default"/> apply to the intra-subnet forwarding or communication
   within each of those BDs. In addition, the security considerations in
   <xref target="RFC4364" format="default"/> should also be understood, since this document and
   <xref target="RFC4364" format="default"/> may be used in similar applications.</t>
      <t>
   Contrary to <xref target="RFC4364" format="default"/>, this document does not describe PE/CE route
   distribution techniques but rather considers the CEs as TSs or VAs
   that do not run dynamic routing protocols. This can be considered a
   security advantage, since dynamic routing protocols can be blocked on
   the NVE/PE ACs, not allowing the tenant to interact with the
   infrastructure's dynamic routing protocols.</t>
      <t>
   In this document, the RT-5 may use a regular BGP next hop for its
   resolution or an Overlay Index that requires a recursive resolution
   to a different EVPN route (an RT-2 or an RT-1). In the latter case,
   it is worth noting that any action that ends up filtering or
   modifying the RT-2 or RT-1 routes used to convey the Overlay Indexes
   will modify the resolution of the RT-5 and therefore the forwarding
   of packets to the remote subnet.</t>
    </section>
    <section anchor="sect-6" numbered="true" toc="default">
      <name>IANA Considerations</name>
      <t>
   IANA has registered value 5 in the "EVPN Route Types" registry <xref target="EVPNRouteTypes" format="default"/>
      defined by <xref target="RFC7432" format="default"/> as follows:</t>
      
   <table>
     <thead>
       <tr>
       <th>Value</th>
       <th>Description</th>
       <th>Reference</th>
     </tr>
     </thead>
     <tbody>
       <tr>
	 <td>5</td>
	 <td>IP Prefix</td>
	 <td>RFC 9136</td>
       </tr>
     </tbody>
   </table>

    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>

	
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7432.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.9012.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8365.xml"/>

	
<reference anchor='RFC9135' target='https://www.rfc-editor.org/info/rfc9135'>
<front>
<title>Integrated Routing and Bridging in Ethernet VPN (EVPN)</title>
<author initials='A' surname='Sajassi' fullname='Ali Sajassi'>
    <organization />
</author>

<author initials='S' surname='Salam' fullname='Samer Salam'>
    <organization />
</author>

<author initials='S' surname='Thoria' fullname='Samir Thoria'>
    <organization />
</author>

<author initials='J' surname='Drake' fullname='John Drake'>
    <organization />
</author>

<author initials='J' surname='Rabadan' fullname='Jorge Rabadan'>
    <organization />
</author>
<date month='October' year='2021' />
</front>
<seriesInfo name="RFC" value="9135"/>
<seriesInfo name="DOI" value="10.17487/RFC9135"/>
</reference>


        <reference anchor="EVPNRouteTypes" target="https://www.iana.org/assignments/evpn">
          <front>
            <title>EVPN Route Types</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date/>
          </front>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.4364.xml"/>
        <xi:include
	    href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7606.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.5798.xml"/>
        <reference anchor="IEEE-802.1Q" target="https://standards.ieee.org/standard/802_1Q-2018.html">
          <front>
            <title>IEEE Standard for Local and Metropolitan Area Networks -- Bridges and Bridged Networks</title>
            <seriesInfo name="IEEE Std" value="802.1Q"/>
	    <seriesInfo name="DOI" value="10.1109/IEEESTD.2018.8403927"/>
            <author><organization>IEEE</organization>
       </author>
            <date month="July" year="2018"/>
          </front>
        </reference>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7365.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.5227.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7348.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8926.xml"/>


      </references>
    </references>
    <section anchor="sect-8" numbered="false" toc="default">
      <name>Acknowledgments</name>
      <t>
   The authors would like to thank <contact fullname="Mukul Katiyar"/>, <contact fullname="Jeffrey Zhang"/>, and <contact fullname="Alex Nichol"/> for
   their valuable feedback and contributions. <contact fullname="Tony Przygienda"/>
   and <contact fullname="Thomas Morin"/> also helped improve this document with their feedback. Special thanks to <contact fullname="Eric Rosen"/> for his detailed
   review, which really helped improve the readability and clarify the
   concepts. We also thank <contact fullname="Alvaro Retana"/> for his thorough review.</t>
    </section>
    <section anchor="sect-9" numbered="false" toc="default">
      <name>Contributors</name>
      <t>
   In addition to the authors listed on the front page, the following
      coauthors have also contributed to this document:</t>

      <ul empty="true" spacing="compact">    
<li><t><contact fullname="Senthil Sathappan"/></t></li>
<li><t><contact fullname="Florin Balus"/></t></li>
<li><t> <contact fullname="Aldrin Isaac"/></t></li>
<li><t> <contact fullname="Senad Palislamovic"/></t></li>
<li><t> <contact fullname="Samir Thoria"/></t></li>
  </ul>
    </section>

    
   </back>
</rfc>
