<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?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-duan-bess-simplified-mvpn-for-bier-and-ir-01"
     ipr="trust200902">
  <front>
    <title abbrev="Simplified MVPN for BIER and IR">Simplified MVPN for BIER and IR</title>

    <author fullname="Fanghong Duan" initials="F." surname="Duan">
      <organization>Huawei Technologies</organization>

      <address>
        <email>duanfanghong@huawei.com</email>
      </address>
    </author>

    <author fullname="Siyu Chen" initials="S." surname="Chen">
      <organization>Huawei Technologies</organization>

      <address>
        <email>chensiyu27@huawei.com</email>
      </address>
    </author>

    <date day="5" month="Nov" year="2023"/>

    <abstract>
      <t>Per RFC6513 and RFC6514, seven MCAST-VPN NLRIs and relevant procedures
      are defined to build multicast forwarding tree over the service provider backbone.
      RFC8556 introduces that MVPN can use BIER as PMSI tunnel
      to perform optimal multicast forwarding. However, the complicated NLRI
      exchange and the switching from I-PMSI to S-PMSI tunnel is not necessary
      for BIER and IR tunnel. The architectural advantages of BIER and IR cannot
      be fully utilized. Therefore, a new simplified MVPN for BIER and IR
      is proposed to substitute current NLRIs exchange and procedures. This
      document would like to discuss the value of the MVPN simplification and
      provide suggestive solution.</t>
    </abstract>

    <note title="Requirements Language">
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
      "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
      "OPTIONAL" in this document are to be interpreted as described in BCP 14
      <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when,
      they appear in all capitals, as shown here.</t>
    </note>
  </front>

  <middle>
    <section title="Introduction">
      <t>In <xref target="RFC4364"/>, IP Virtual Private Networks (VPNs) are
      proposed to forward unicast traffic from one VPN site to another.
      Afterwards, <xref target="RFC6037"/> firstly combined
      VPN with IP Multicast and multicast forwarding tree can be built over
      the provider backbone. PIM was the only protocol to build the PMSI tunnels.
      <xref target="RFC6513"/> and <xref target="RFC6514"/> then improved
      the MVPN procedure such as it introduced more flexible tunnel type
      such as P2MP and IR. Besides, seven MCAST-VPN NLRIs are defined to
      advertise the information of PEs, tunnels and join/prune. Both MVPN solutions
      started with instantiate inclusive PMSI as the first step to build the multicast
      distribution trees over the provider network. In order to optimize the bandwidth
      utilization of the provider backbone network, Type 3 NLRI is designed so that
      selective multicast can be performed when the traffic of (C-S,C-G) exceeds the
      preset threshold. The switching from I-PMSI to S-PMSI is an inevitable action
      for selective multicast when the tunnel type is mLDP or RSVP-TE. The switching
      results in the complicated NLRI exchanging procedures. <xref target="RFC8556"/>
      introduces that MVPN can use BIER to conduct optimal multicast forwarding.
      The complicated NLRI exchanging procedures are still maintained while those
      are unnecessary for BIER and Ingress Replication Tunnel. There are several problems
      in current MVPN procedures:
      </t>

      <t><list style="letters">
          <t>Even though per-flow multicast state is not maintained in the P routers,
          ingress root PE still follows the traditional process of building multicast tunnel.
          Root PE also needs to check whether the amount of multicast flow exceeds the
          preset threshold at any time so that it can initiate the switching from I-PMSI to
          S-PMSI. The exchange of control-plane and data-plane are still very complicated.
          </t>

          <t>There are three types of NLRIs involved in the process of customer's
          routes advertisement. Besides, four types of NLRIs are leveraged to collect
          tunnel informations. The exchange of NLRIs between each router is complicated.
          </t>
        </list></t>

      <t>The architectural advantages of BIER and IR are that they can intrinsically support
      explicit tracking at the ingress PE. Each leaf PE is unique from the perspective of ingress
      PE. S-PMSI tunnel can be constructed directly at first. The switching from I-PMSI to S-PMSI
      tunnel can be omitted. On the other hand, segment routing is widely discussed and implemented
      nowadays and it is regarded as a simplification of MPLS. SR-MPLS, SR-BIER and SR-IR are
      simplification of existing tunnel types in a sense. With SR, current MVPN architecture and
      NLRI exchanges seem to be too heavy. Under these circumstances, a light-weight architecture of MVPN
      needs to be considered. In that way, the feature of explicit tracking can also be fully utilized.
      </t>

      <t>One possible method is proposed in this document to simplify the MVPN procedure for BIER and IR.
      There would be no inclusive PMSI tunnel. Two new multicast routes and procedures are proposed
      to substitute the existing seven NLRIs.</t>
      
    </section>

    <section title="Terminology">
      <t>The terminology used in this document is the terminology defined
      in<xref target="RFC6513"/>, <xref target="RFC6514"/> and <xref
      target="RFC8556"/>.</t>

      <t>For convenience of description, the abbreviations used in this
      document is listed below.</t>

      <t><list style="empty">
          <t>NLRI: Network Layer Reachability Information</t>

          <t>UMH: Upstream Multicast Hop</t>

          <t>PMSI: P-Multicast Service Interface</t>

          <t>VPN: Virtual Private Network</t>

          <t>MVPN: Multicast VPN</t>

          <t>RD: Route Distinguisher</t>
          
          <t>IR: Ingress Replication</t>
        </list></t>
    </section>

    <section title="Specification">
      <t/>

      <section title="Simplification of Type 1 to Type 4 NLRI">
        <t>Type 1 to 4 NLRI may be replaced by a new eligible UMH Route. The
        eligible UMH route was initially introduced in [RFC6513]. It
        contains Source AS Extended Community and VRF Route Import Extended
        Community. In this document, MS-ID and underlay BIER attribute are
        added into the eligible UMH route so that type 1 to 4 NLRIs are no
        longer needed. When the leaf PE receives the eligible UMH routes,
        it will import the unicast route into its local instance. Simultaneously,
        the MS-ID will be used to generate the correspondence between the
        MS-id and local instance. When the leaf PE receives the join or prune
        messages, it will find the multicast source or RP in the unicast
        routing-table of corresponding instance. The underlay BIER attribute
        of the unicast route will be used. Leaf PE will check whether the
        sub-domain-id inside the BIER attribute is same as its sub-domain-id.
        If the two IDs are same, leaf PE will create a BGP multicast route
        and advertise it to root PE.</t>
        <t><figure align="left" title="New MVPN Eligible UMH Route">
            <artwork><![CDATA[ 
       +------------------------------------------------+
       |  MS-ID (4 or 16 octets)                        |
       +------------------------------------------------+
       |  Sub-domain ID (2 octets )                     |
       +------------------------------------------------+
       |  BFR-ID (2 octets )                            |
       +------------------------------------------------+

]]></artwork></figure></t>
      </section>

      <section title="Simplification of Type 6 to Type 7 NLRI">
        <t>The above-mentioned BGP multicast route is proposed to replace Type
        6 to 7 NLRI. Just like leaf A-D route, it contains RD, originator IP,
        source address and group address. Additionally, it includes one-octet
        field called Flag. Flag is used to distinguish (C-*,C-G) Join,
        (C-S,C-G) Join and (C-S,C-G,rpt) Prune. The route also includes BIER
        sub-domain-id and BFR-id of leaf PE. The conventional Join and Prune
        of c-multicast route are substituted by the update and withdraw of BGP
        multicast route. Moreover, Source AS Extended Community and VRF Route
        Import Extended Community are also carried by the BGP multicast route.</t>
<t><figure align="left" title="New BGP Multicast Route">
            <artwork><![CDATA[ 
       +------------------------------------------------+
       |  RD (8 octets)                                 |
       +------------------------------------------------+
       |  Source Address (4 or 16 octets, 0 to 32 / 128)|
       +------------------------------------------------+
       |  Group Address (4 or 16 octets, 0 to 32 / 128) |
       +------------------------------------------------+
       |  Flag  (1 octet)                               |
       +------------------------------------------------+
       |  Originating Router's IP Addr (4 / 16 octets)  |
       +------------------------------------------------+
       |  Sub-domain ID (2 octets )                     |
       +------------------------------------------------+
       |  BFR-ID (2 octets )                            |
       +------------------------------------------------+

]]></artwork></figure></t>
      </section>
    </section>

      <section title="Back compatibility">
        <t>Back compatibility is a significant issue and will be discussed
        in the future.</t>
      </section>

    <section title="Security Considerations">
      <t>//TODO</t>

      <t/>
    </section>

    <section title="IANA Considerations">
      <t>//TODO</t>
    </section>

    <section title="Acknowledgements">
      <t>//TODO</t>

      <t/>
    </section>
  </middle>

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

      <?rfc include='reference.RFC.6514'?>

      <?rfc include='reference.RFC.8556'?>
      
      <?rfc include='reference.RFC.2119'?>
      
      <?rfc include='reference.RFC.8174'?>
      
      <?rfc include='reference.RFC.4364'?>
    </references>
    
    <references title="Informative References">
      <?rfc include='reference.RFC.6037'?>
    </references>
  </back>
</rfc>
