<?xml version="1.0" encoding="US-ASCII"?>
<!-- edited with XMLSPY v5 rel. 3 U (http://www.xmlspy.com)
     by Daniel M Kohn (private) -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY rfc2119 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
]>
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="3"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc category="std" docName="draft-xie-bess-evpn-extension-evn6-03"
     ipr="trust200902">
  <front>
    <title abbrev="EVPN for EVN6">EVPN Route Types and Procedures for EVN6</title>

    <author fullname="Chongfeng Xie" initials="C" surname="Xie">
      <organization>China Telecom</organization>

      <address>
        <postal>
          <street>Beiqijia Town, Changping District</street>

          <city>Beijing</city>

          <code>102209</code>

          <country>China</country>
        </postal>

        <email>xiechf@chinatelecom.cn</email>
      </address>
    </author>

    <author fullname="Jibin Sun" initials="J" surname="Sun">
      <organization>China Telecom</organization>

      <address>
        <postal>
          <street>Beiqijia Town, Changping District</street>

          <city>Beijing</city>

          <code>102209</code>

          <country>China</country>
        </postal>

        <email>sunjb@chinatelecom.cn</email>
      </address>
    </author>



    <author fullname="Xing Li" initials="X" surname="Li">
      <organization>CERNET Center/Tsinghua University</organization>

      <address>
        <postal>
          <street>Shuangqing Road No.30, Haidian District</street>

          <city>Beijing</city>

          <code>100084</code>

          <country>China</country>
        </postal>

        <email>xing@cernet.edu.cn</email>
      </address>
    </author>

    
      <author fullname="Guoliang Han" initials="G" surname="Han">
      <organization>Indirection Network Inc.</organization>

      <address>
        <email>guoliang.han@indirectionnet.com</email>
      </address>
    </author>

    <date day="1" month="March" year="2026"/>

    <workgroup>Network Working Group</workgroup>

    <keyword>RFC</keyword>

    <abstract>
      <t>EVN6 is a mechanism designed to provide Ethernet 
      connectivity to customer sites dispersed on public IPv6 networks. At the data layer, 
      EVN6 encapsulates Ethernet frames directly in the payload of IPv6 packets, and dynamically
      generates the IPv6 addresses of the IPv6 header using host MAC addresses and other information,
      then sends them into IPv6 network for transmission. This document proposes extensions to 
      EVPN for EVN6, including two new route types and related procedures.</t>
    </abstract>
  </front>

  <middle>
    <section title="Introduction">
     <t>EVN6 <xref target="I-D.xls-intarea-evn6"/>is a mechanism designed to 
      carry Ethernet virtual networks, providing Ethernet connectivity between 
      customer sites dispersed on public IPv6 networks. 
      When an ingress PE (Provider Edge) in the IPv6 network receives an Ethernet frame
      from a local host for transmission, it constructs the outer IPv6 header. 
      The source and destination IPv6 addresses are formed by mapping the host's MAC address,
      the Virtual Ethernet Identifier (VEI), and IPv6 mapping prefixes into their 
      respective positions within the IPv6 address.

      After the outer source and destination IPv6 addresses are ready, 
      the data frame is directly encapsulated in IPv6 packet and transmitted to the correct destination site 
      through the IPv6 network. Since the outer address contains the MAC address of the host, 
      tunnel in EVN6 is specifically for the communication between two hosts located at different sites, rather than 
      the same tunnel being shared by multiple host pairs, furthermore, tunnel generated in this way 
      is non-explicit since network managers do not need to pre configure tunnels between any customer sites.


      
      </t>
      <t>Dynamic generation of EVN6 virtual network instances over IPv6 network needs the support of control layer.
      
      To encapsulate the Ethernet frame, the ingress PE must have the necessary information in its MAC-VRF. 
      This allows the device to retrieve the mapping prefix and VEI associated with the host's source or 
      destination MAC address.
      In small-scale networks, exchanging MAC/Ref6 mapping of each host between PE nodes can be achieved through 
      manual configuration. But in large-scale networks, this procedure should be automatic, which requires support 
      from the control layer. For dynamic creation of EVN6 network instances, this document introduces the 
      extensions of EVPN <xref target="RFC7432"/>,  including two newly defined route types and the related 
      processes. This is a companion document of EVN6<xref target="I-D.xls-intarea-evn6"/>.</t>

    </section>

    <section title="Specification of Requirements">
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", 
      "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be 
      interpreted as described in <xref target="RFC2119"/>.</t>
    </section>

    <section title="Terminology">
      <t>Broadcast Domain:  In a bridged network, the broadcast domain corresponds to a Virtual LAN (VLAN), 
      where a VLAN is typically represented by a single VLAN ID (VID) but can be represented by several VIDs 
      where Shared VLAN Learning (SVL) is used per 802.1Q.</t>

      <t>EVN6: Ethernet Virtual Network over IPv6.</t>

      <t>MAC-VRF: A Virtual Routing and Forwarding table for Media Access Control (MAC) addresses on a PE.</t>

      <t>VEI: Virtual Ethernet Identifier, it is 32-bits in length to identify each EVN6 instance.</t>
    </section>
    
    <section title="Advantages of Using EVPN to Create EVN6">
      <t>The EVN6 tunnel can be dynamically created using BGP EVPN as the Control Plane. 
      EVPN is a universal Control Plane protocol that can be combined with various Data Plane technologies 
      (including MPLS, SRv6, VxLAN, etc.) to achieve a complete forwarding and control separation SDN solution. 
      So far EVPN has five route types based on MP-BGP NLRI extension, as follows:</t>

      <t indent="4">Type 1. Ethernet Auto-Discovery Route</t>

      <t indent="4">Type 2. MAC/IP Advertisement Route</t>

      <t indent="4">Type 3. Inclusive Multicast Ethernet Tag Route</t>

      <t indent="4">Type 4. Ethernet Segment Route</t>

      <t indent="4">Type 5. IP Prefix Route</t>

      <t>As the control layer of EVN6, EVPN has the following advantages:</t>

      <t indent="4">(1) EVPN can be used as a control plane to automatically 
      establish EVN6 tunnels, thereby reducing operational complexity and 
      improving network scalability.</t>

      <t indent="4">(2) EVPN can automatically announce IP, MAC, VEI, and host routing 
      information, effectively reducing BUM flooding traffic.</t>

      <t>To support the operation of EVN6, the following new route types, i.e. Type 12 route and Type 13 
      route are defined,</t>

      <t indent="4">(1) Type 12. EVN6 Auto-Discovery Route (tentative name)</t>

      <t indent="4">(2) Type 13. MAC/IPv6 Advertisement Route (tentative name)</t>
    </section>

    <section title="Route Types for EVN6">
      <section title="EVPN Type 12 Route">
        <t>EVPN Type 12 Route is used to advertise VEI and IPv6 mapping prefix allocated by PE for virtual network 
        between PEs, to establish a head end replication list, which is used for automatic discovery of PE and 
        dynamic establishment of EVN6 tunnel. If the peer PE is reachable by IPv6 Mapping prefix routing, 
        an EVN6 tunnel is established to the peer. Meanwhile, if the VEI of the other end is the same as that of 
        the local end, a head end replication table is created for subsequent BUM message forwarding.</t>

        <figure>
          <artwork><![CDATA[
          +--------+----------------------------------------------+---------+
          |        |                                              |  Value  | 
          |        |                  Field name                  |(Example)|
          +--------+----------------------------------------------+---------+
          |        | Route Type                                   |  12     |
          +        +----------------------------------------------+---------+
          |        | Route Distinguisher (8 Bytes)                |  1:10   |
          +  EVPN  +----------------------------------------------+---------+
          |  NLRI  | Virtual Ethernet Identification (4 Bytes)    |  100    |
          +        +----------------------------------------------+---------+
          |        | IPv6 Mapping Prefix length (1 Bytes)         |  64     |
          +        +----------------------------------------------+---------+
          |        | IPv6 Mapping Prefix (16 Bytes)               | 3010::  |
          +--------+----------------------------------------------+---------+
          
         Figure 1: Type 12 Route NLRI Format Definition]]></artwork>
        </figure>

        <t>The fields of Type 12 Route NLRI are illustrated as follows:</t>

        <t indent="4">Route Distinguisher: This field is the RD (Route Distinguisher) value 
        set under the EVPN instance.</t>

        <t indent="4">Virtual Ethernet Identification: This field represents the layer-2 VEI of 
        the EVN6 tunnel carried by this route, which is the identifier of the virtual Ethernet private network.</t>

        <t indent="4">IPv6 Mapping prefix length: This field represents the length of the IPv6 address mapping 
        prefix for the local Site carried by this route.</t>

        <t indent="4">IPv6 Mapping prefix: This field represents the IPv6 address mapping prefix of the local Site 
        carried by this route.</t>
      </section>

      <section title="EVPN Type 13 Route">
        <t>EVPN Type 13 route is used to advertise the MAC address and IPv6 address of the host between PE peers, and to 
        dynamically establish control plane entries at both ends of the tunnel.</t>

        <figure>
          <artwork><![CDATA[
          +-------+---------------------------------------------+---------+
          |       |                                             |  Value  | 
          |       |                  Field name                 |(Example)|
          +-------+---------------------------------------------+---------+
          |       | Route Type                                  |   13    |
          +       +---------------------------------------------+---------+
          |       | Route Distinguisher (8 Bytes)               |  1:10   |
          +       +---------------------------------------------+---------+
          |       | Ethernet Segment Identifier (10 Bytes)      |   0     |
          +       +---------------------------------------------+---------+
          |       | MAC Address Length (1 Bytes)                |   48    |
          +       +---------------------------------------------+---------+
          | EVPN  | MAC Address (6 Bytes)                       |  MAC1   |
          + NLRI  +---------------------------------------------+---------+
          |       | Host ID Length (1 Byte)                     |   20    |
          +       +---------------------------------------------+---------+
          |       | Host ID (3 Bytes)                           |   202   |   
          +       +---------------------------------------------+---------+
          |       | IPv6 Address Length (1 Bytes)               |   64    |
          +       +---------------------------------------------+---------+
          |       | IPv6 Address (16 Bytes)                     | 1::1:A  |
          +       +---------------------------------------------+---------+
          |       | Virtual Ethernet Identification (4 Bytes)   |   100   |
          +-------+---------------------------------------------+---------+
          
         Figure 2: Type 13 Route NLRI Format Definition]]></artwork>
        </figure>

        <t>The fields of Type 13 Route NLRI are illustrated as follows:</t>

        <t indent="4">Route Distinguisher: This field is the RD (Route Distinguisher) value set 
        under the EVPN instance.</t>

        <t indent="4">Ethernet Segment Identifier (field to be determined): This field is the unique identifier 
        defined for the connection between the PE and a certain CE. ESI manual configuration, two PE configurations
         with the same ESI in CE multi attribution scenarios. ESI of 0 indicates that CE to PE is a single return.</t>

        <t indent="4">MAC Address Length: This field represents the length of the host MAC address carried by this route.</t>

        <t indent="4">MAC Address: This field is the host MAC address carried by this route.</t>

        <t indent="4">Host ID Length: This field, in bits, represents the length of the Host ID 
        that follows. For example, a value of 24 indicates a 3-octet Host ID.</t>

        <t indent="4">Host ID : This field is the host ID carried by this route.</t>
        
        <t indent="4">IPv6 Address Length: This field represents the mask length of the host's IPv6 
        address carried by this route.</t>

        <t indent="4">IPv6 Address: This field is the host IPv6 address carried by this route.</t>

        <t indent="4">Virtual Ethernet Identification: This field represents the layer-2 VEI of the EVN6 tunnel 
        carried by this route, which is the identifier of the virtual Ethernet private network.</t>
      </section>
    </section>

    <section title="Procedures">
      <t>To dynamically create EVN6 instance, EVPN utilizes extended Type 12 and Type 13 routes to convey control 
      plane information. This approach requires configuring BGP EVPN neighbors on PE devices and associating 
      them with the configuration information of EVN6 instances.</t>

      <t>The following scenario is used to explain the procedure: H1 and H2 are located in different sites belonging
      to the same virtual network, with each site connected to PE1 and PE2 respectively. Communication between H1 and
      H2 is carried out through an EVN6 instance built over the IPv6 network. Creation of EVN6 instance using EVPN 
      involves the following three processes.</t>

      <section title="EVN6 Tunnel Setup for BUM Traffic">
        <t>Broadcast, unknown-unicast and multicast (BUM) traffic refers to that kind of network traffic that will 
        be forwarded to multiple destinations or that cannot be addressed to the intended destination only. 
        The MAC addresses of BUM traffic have the following characteristics:</t>

        <t indent="4">Broadcast traffic - MAC address all FF;</t>

        <t indent="4">Multicast traffic - the lowest bit of the first byte of the MAC address is 1;</t>

        <t indent="4">Unknown Unicast - Unicast MAC address.</t>

        <t indent="4">The EVN6 tunnel for BUM traffic is established by using Type 12 route.</t>

        <figure>
          <artwork><![CDATA[
          +-----------+   +---------+   +---------+     +-----------+
          |   Host1   |   |   PE1   |   |   PE2   |     |   Host2   |
          +-----------+   +---------+   +---------+     +-----------+
                |               |            |                |
                |               |     (1)    |                |
                |               |<---------->|                |
                |               |            |                |
                |               |--+         |--+             |
                |               |   |(2)     |  |(2)          |
                |               |<-+         |<-+             |
                |               |            |                |
                |               |     (3)    |                |
                |               |<---------->|                |
                |               |            |                |
                |               |--+         |--+             |
                |               |  |(4)      |  |(4)          |
                |               |<-+         |<-+             |
                |               |            |                |
                |               |EVN6 Tunnel |                |
                |               |only for BUM|                |
                |               |<==========>|                |
                |               |            |                |

         Figure 3:  Process of Exchanging Information for EVN6 BUM Tunnel Establishment]]></artwork>
        </figure>

        <t>The process is described as follows:</t>

        <t indent="4">(1) Firstly, BGP EVPN peer is established between PE1 and PE2.</t>

        <t indent="4">(2) L2 broadcast domain (i.e.BD)is created on PE1 and PE2 respectively, 
        and configure associated layer 2 VEIs under the broadcast domain. An EVPN instance is created in the L2 broadcast domain and configure the RD(Route Distinguisher), 
        Export Route Target (ERT), and import Route Target (IRT) of the local EVPN instance.</t>

        <t indent="4">(3) After configuring the local EVN6, PE1 and PE2 will generate BGP EVPN routes and send them to the other end, 
        which carry the Export Route Target of the local EVPN instance and the Type 12 route.</t>

        <t indent="4">(4) After receiving the BGP EVPN route from the other end, PE1 and PE2 first check the 
        Export Route Target of the EVPN instance carried by the route. If it is equal to the Import Route Target of the local EVPN instance, they receive the route. Otherwise, they discard the route. 
        After receiving the route, PE1 and PE2 will obtain the IPv6 Mapping Address and Layer 2 VEI carried in it. 
        If the IPv6 Mapping Address of the other end is reachable by the Layer 3 route, an EVN6 tunnel will be 
        established to the other end. Meanwhile, the local end will create a VEI based header replication table 
        entry (refer to the static EVN6 creation table) for subsequent BUM packet forwarding.</t>

        <t>BUM frames are forwarded using head end replication. When the BUM frame enters the EVN6 tunnel, 
        the ingress end will encapsulate the frame in EVN6 according to the head end replication list and send 
        the packet to all the egress ends in the head end replication list. This method ensures that the BUM 
        frame can be correctly forwarded to the destination device through IPv6 network.</t>
      </section>

      <section title="Host Entry Generation in MAC-VRF">
        <t>The general EVN6 tunnel is designed for unicast Ethernet frame forwarding. The prerequisite for 
        establishing a universal EVN6 tunnel is to generate Host MAC mapping entry in MAC-VRF table, 
        which is achieved by dynamically exchanging Type 13 route.</t>

        <figure>
          <artwork><![CDATA[
          +-----------+   +---------+   +---------+     +-----------+
          |   Host1   |   |   PE1   |   |   PE2   |     |   Host2   |
          +-----------+   +---------+   +---------+     +-----------+
                |               |            |                |
                |               |            |                |
                |     (1)       |            |                |
                |-------------->|            |                |
                |               |--+         |                |
                |               |  |(2)      |                |
                |               |<-+         |                |
                |               |    (3)     |                |
                |               |----------->|                |
                |               |            |--+             |
                |               |            |  |(4)          |
                |               |            |<-+             |
                |               | EVN6 Tunnel|                |
                |               |<==========>|                |
                |               |            |                |
                
         Figure 4:  Process of PE2 learning the host MAC address and Host ID of Host1]]></artwork>
        </figure>

        <t>The process of PE2 learning the host MAC address of Host1 is described as follows:</t>

        <t indent="4">(1) Host1 initiates communicates with PE1 for the first time.</t>

        <t indent="4">(2) PE1 learns the corresponding relationship between the MAC address, 
        BD (L2 Broadcast Domain) Identifier, and packet input interface of Host1 through the IPv6 ND protocol, 
        and generates a MAC entry for Host1 in the local MAC table.</t>

        <t indent="4">(3) Meanwhile, PE1 generates a BGP EVPN route based on Host1's IPv6 ND information and sends it to 
        peer PE2, which carries the outbound direction VPN Target of the local EVPN instance, the next hop 
        attribute of the route, and the newly defined Type 13 route.</t>

        <t indent="4">(4) After receiving the BGP EVPN route sent by PE1, PE2 first checks the outgoing direction 
        VPN Target of the EVPN instance carried by the route. If it is equal to the incoming direction VPN Target 
        of the local EVPN instance, it receives the route. Otherwise, it discards the route. After receiving the route,
         PE2 obtains the corresponding relationship between Host1's MAC address, Host ID, VEI, and IPv6 Mapping address on PE1, 
         and generates a MAC entry for Host1 in the local MAC-VRF table.</t>

        <t>The process of PE1 learning the host MAC of Host2 is the same as the above process, and will not be repeated here.</t>
      </section>

      <section title="Ethernet Frame Transmission">
        <t>This process is about hosts sending Ethernet frames to each other, EVN6 will be used when the frames pass though IPv6 network. When Host2 and Host1 are located at different 
        sites, they first need to learn each other's MAC addresses, and then they can transmit unicast Ethernet 
        frame to each other through the EVN6 virtual network.</t>

        <figure>
          <artwork><![CDATA[
          +-----------+   +---------+   +---------+     +-----------+
          |   Host1   |   |   PE1   |   |   PE2   |     |   Host2   |
          +-----------+   +---------+   +---------+     +-----------+
                |               |            |      (1)       |
                |               |            |<---------------|
                |               |            |                |
                |               |            |--+             |
                |               |            |  |(2)          |
                |               |            |<-+             |          
                |               |     (3)    |                |
                |      (4)      |<-----------|                |
                |<--------------|            |                |
                |--+            |            |                |
                |  |(5)         |            |                |
                |<-+            |            |                |
                |      (6)      |            |                |
                |-------------->|     (7)    |                |
                |               |----------->|       (8)      |
                |               |            |--------------->|
                |               |            |                |--+
                |               |            |                |  |(9)
                |               |            |                |<-+
                |               |    (10)    |                |
                |<--------------|============|--------------->|
                |               |            |                |
                
         Figure 5:  Process of Ethernet Frame Transmission]]></artwork>
        </figure>

        <t>The process is described as follows:</t>

        <t indent="4">(1) When Host2 communicates with Host1 for the first time, it needs to 
        request the MAC address of Host1. It first sends an IPv6 NS request message with the
        destination IP being Host1-IP, this packet is encapuslation into a framework with its
        destination MAC being a Solicited-Node multicast address.</t>

        <t indent="4">(2) By default, PE2 will broadcast on this network segment upon receiving the request. In order 
        to reduce broadcast packets, the IPv6 ND suppression function can be enabled on PE2 at this time. 
        In this way, when PE2 receives the IPv6 NS request packet, it first checks whether there is a local MAC 
        address of Host1 based on the destination IPv6 address. If there is one match, it replaces the destination 
        MAC with the MAC address of Host1, converts the multicast packet of the IPv6 NS request into a unicast 
        packet.</t>

        <t indent="4">(3) Then PE encapsulates it through the EVN6 tunnel and sends it to PE1.</t>

        <t indent="4">(4) After receiving the packet sent from PE2, PE1 removes the packet header 
        and forwards the frame to Host1.</t>

        <t indent="4">(5) After receiving the IPv6 NS request contained in the frame, Host1 learns 
        the MAC address of Host2 and responds with IPv6 NA in unicast form.</t>

        <t indent="4">(6-7-8-9) After receiving the response message, Host2 learned the MAC address of Host1.
        At this point, Host1 and Host2 learn each other's MAC addresses. </t>

        <t indent="4">(10) Host1 and Host2 use unicast communication within EVN6 instance. The process of 
        transmitting Ethernet frames is described in section 4.2 of <xref target="I-D.xls-intarea-evn6"/>.</t>
      </section>
    </section>

    <section title="Security Considerations">
      <t>TBD.</t>
    </section>

    <section title="IANA Considerations">
      <t>With this document IANA is requested to allocate codes for the "EVN6 Auto-Discovery Route" and "MAC/IPv6 Advertisement Route"
  in  "EVPN Route Types" registry.</t>
      <t>The two codes above use this document as the reference.</t>
    </section>
    
  </middle>

  <back>
    <references title="Normative References">
    
      <?rfc include="reference.RFC.2119"?>

      <?rfc include="reference.RFC.4760"?>

      <?rfc include="reference.RFC.7153"?>

      <?rfc include="reference.RFC.7432"?>

     </references>

    <references title="Informative References">
 
      <?rfc include='reference.I-D.xls-intarea-evn6'?>
      
      <reference anchor="IANA-EVPN-Route-Types"
                 derivedAnchor="IANA-EVPN-Route-Types" quoteTitle="true"
                 target="https://www.iana.org/assignments/evpn/evpn.xhtml">
        <front>
          <title>EVPN Route Types</title>

          <author>
            <organization showOnFrontPage="true">IANA</organization>
          </author>
        </front>
      </reference>
    </references>


  </back>
</rfc>