<?xml version='1.0' encoding='utf-8'?>
<!-- This template is for creating an Internet Draft using xml2rfc,
    which is available here: http://xml.resource.org. -->
<!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent">
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<!-- used by XSLT processors -->
<!-- For a complete list and description of processing instructions (PIs), 
    please see http://xml.resource.org/authoring/README.html. -->
<rfc
      xmlns:xi="http://www.w3.org/2001/XInclude"
      category="exp"
      docName="draft-ietf-pim-jp-extensions-lisp-03"
      ipr="trust200902"
      obsoletes=""
      updates=""
      submissionType="IETF"
      xml:lang="en"
      tocInclude="true"
      tocDepth="4"
      symRefs="true"
      sortRefs="true"
      version="3">
  <!-- xml2rfc v2v3 conversion 2.38.1 -->
  <!-- category values: std, bcp, info, exp, and historic
    ipr values: trust200902, noModificationTrust200902, noDerivativesTrust200902,
       or pre5378Trust200902
    you can add the attributes updates="NNNN" and obsoletes="NNNN" 
    they will automatically be output with "(if approved)" -->

 <!-- ***** FRONT MATTER ***** -->

 <front>
    <!-- The abbreviated title is used in the page header - it is only necessary if the 
        full title is longer than 39 characters -->

	 <title abbrev="PIM Join Attributes for LISP Mcast"> PIM Join/ Prune Attributes for LISP Environments using Underlay Multicast  
   </title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-pim-jp-jp-extensions-lisp-03"/>
    <!-- add 'role="editor"' below for the editors if appropriate -->

   <!-- Another author who claims to be an editor -->

   <author fullname="Vengada Prasad Govindan" initials="V" surname="Govindan">
      <organization>Cisco</organization>
      <address>
        <email>venggovi@cisco.com</email>
     </address>
    </author>

   <author fullname="Stig Venaas" initials="S" surname="Venaas">
      <organization>Cisco</organization>
      <address>
        <email>svenaas@cisco.com</email>
     </address>
    </author>


    <date year="2023"/>
    <!-- If the month and year are both specified and are the current ones, xml2rfc will fill 
        in the current day for you. If only the current year is specified, xml2rfc will fill 
	 in the current day and month for you. If the year is not the current one, it is 
	 necessary to specify at least a month (xml2rfc assumes day="1" if not specified for the 
	 purpose of calculating the expiry date).  With drafts it is normally sufficient to 
	 specify just the year. -->

   <!-- Meta-data Declarations -->

   <area>Routing</area>
    <workgroup>Internet Engineering Task Force</workgroup>
    <!-- WG name at the upperleft corner of the doc,
        IETF is fine for individual submissions.  
	 If this element is not present, the default is "Network Working Group",
        which is used by the RFC Editor as a nod to the history of the IETF. -->

   <keyword>template</keyword>
    <!-- Keywords will be incorporated into HTML output
        files in a meta tag but they have no effect on text or nroff
        output. If you submit your draft to the RFC Editor, the
        keywords will be used for the search engine. -->

   <abstract>
	   <t>This document specifies an extension to PIM Receiver RLOC Join/ Prune attribute that supports the
   construction of multicast distribution trees where the root and
   receivers are located in different Locator/ID Separation Protocol
   (LISP) sites and are connected using underlay IP Multicast.  This attribute allows the receiver site to signal
   the underlay multicast group to the control plane of the root ITR (Ingress Tunnel Router).

     </t>
    </abstract>
  </front>
  <middle>
    <section numbered="true" toc="default">
      <name>Introduction</name>
      <t>
	      The construction of multicast distribution trees where the root and
   receivers are located in different LISP sites <xref target="RFC9300" format="default"/> is defined in
    <xref target="RFC6831" format="default"/>.</t>
	    <t>
	<xref target="RFC6831" format="default"/> specifies that (root-EID, G) data packets are to be LISP-
		encapsulated into (root-RLOC, G) multicast packets. <xref target="RFC8059" format="default"/> 
                defines PIM J/P attribute extensions to construct multicast distribution trees.
	This document extends the Receiver ETR RLOC PIM J/P attribute <xref target="RFC8059" format="default"/> 
                to facilitate the 
		construction of underlay multicast trees for (root-RLOC, G).
	    </t>
	    <t>
		    Specifically, the assignment of the underlay multicast group needs to be done in consonance with
		    the downstream xTR nodes and avoid unnecessary replication or traffic hairpinning.
	    </t>
	    <t> Since the Receiver RLOC Attribute defined in <xref target="RFC8059" format="default"/> only 
		    addresses the Ingress Replication case, an extension of the scope of that PIM J/P attribute is defined by this draft to include
		    scenarios where the underlay uses Multicast transport. The scope extension proposed here complies
		    with the base specification <xref target="RFC5384" format="default"/>.
           </t>
      <t>This document uses terminology defined in <xref target="RFC9300" format="default"/>, such as EID,
   RLOC, ITR, and ETR.  </t>

      <section numbered="true" toc="default">
        <name>Requirements Language</name>
        <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" format="default">RFC 2119</xref>.</t>
      </section>
    </section>


    <section title="The case for extending the Received ETR RLOC Attribute of RFC 8059">
	    <t>When LISP based Multicast trees can be built using IP Multicast in the underlay, the mapping between
		    the overlay group address and the underlay group address becomes a very crucial engineering decision:

    </t>
         <dl newline="true" spacing="normal" indent="1">
		 <dt> Flexible mapping of overlay to underlay group ranges:</dt>
		 <dd> Three different types of overlay to underlay group mappings are possible: Many to one mapping: Many (root-EID, G) flows originating from a RLOC can be mapped to the same underlay (root-RLOC, G-u) flow.  One to many mapping: Conversely the same overlay flow can be mapped to two or more flows e.g. (root-RLOC, G-u1) and (root-RLOC, G-u2) to cater to the requirements of downstream xTR nodes.  One to one mapping: Every (root-EID, G) flow is mapped to a different (root-RLOC, G-u) flow.
	              
		      The overlay can use ASM while the underlay can use SSM ranges.</dd>

		 <dt> Multicast Address Range constraints:</dt>
		 <dd>
		    It is possible that under certain circumstances, differnt subsets of xTRs subscribing to the same overlay 
		    multicast stream would be constrained to use different underlay multicast mapping ranges.
                    This definitely involves a trade-off between replication and the flexibility in 
		 assigning address ranges and could be required in certain situations further below. </dd>
		 <dt> Inter-site PxTR:</dt>
        <dd>
				    When multiple LISP sites are connected through a LISP based transit, the site border node
		    interconnects the site-facing interfaces and the external LISP based core. Under such circumstances,
		    there could be different ranges of multicast group addresses used for building the (S-RLOC, G) trees
		    inside the LISP site and the external LISP based core. This is desired for various reasons:
         </dd>
	 <dt> Hardware resource restrictions:</dt>
          <dd> Platform limitations could force engineering decisions to be made on restricting multicast address ranges in the underlay. </dd>

		 <dt> Other Use-cases:</dt>
          <dd> TBD </dd>
          </dl>

      <t>
Editorial Note: Comments from Stig:    There should be some text indicating that the group address used should ideally only be used for LISP encapsulation (if ASM), and perhaps that it is preferrable to use an SSM group. Also, that the group obviously must be a group that the underlay supports/allows. I think it is also worth noting that ideally, different ETRs should request the same group.     </t>
	</section>


   <!-- Possibly a 'Contributors' section ... -->

   <section anchor="Acknowledgements" numbered="true" toc="default">
      <name>Acknowledgements</name>
	   <t>
	   The authors would like to thank Dino Farinacci and Victor Moreno for their valuable comments.
	   </t>
   </section>

   <section anchor="Contributors" numbered="true" toc="default">
      <name>Contributors</name>
   <author fullname="Sankaralingam" initials="T" surname="T">
      <organization>Cisco</organization>
      <address>
        <email>sankt@cisco.com</email>
     </address>
    </author>
   <author fullname="Amit Kumar" initials="AK" surname="Kumar">
      <organization>Cisco</organization>
      <address>
        <email>kumaram3@cisco.com</email>
     </address>
    </author>

    </section>

   <section anchor="IANA" numbered="true" toc="default">
      <name>IANA Considerations</name>
      <t>No new requests to IANA </t>
    </section>
    <section anchor="Security" numbered="true" toc="default">
      <name>Security Considerations</name>
      <t>
	      There is perhaps a new attack vector where an attacker can send a bunch of joins with different group addresses. It may interfere with other multicast traffic if those group addresses overlap. Also, it may take up a lot of resources if replication for thousands of groups are requested. However PIM authentication (?) should come to the rescue here. TBD

	      Since explicit tracking would be done, perhaps it is worth enforcing that for each ETR RLOC (the RLOC used as the source of the overlay join), there could be a configurable number of maximum permissible group(s). TBD
     </t>
     <t>
     Ed Note: To be addressed - Comments from Stig: Regarding security considerations and PIM authentication. The only solution we have here is to use IP-Sec to sign the J/P messages. I dont know if anyone has tried to us IPSec between LISP RLOCs. Are there any LISP security mechanisms that would help here for authenticating LISP encapsulated messages between xTRs?
     </t>

    </section>
  </middle>
  <!--  *****BACK MATTER ***** -->

 <back>
    <!-- References split into informative and normative -->

   <!-- There are 2 ways to insert reference entries from the citation libraries:
    1. define an ENTITY at the top, and use "ampersand character"RFC2629; here (as shown)
    2. simply use a PI "less than character"?rfc include="reference.RFC.2119.xml"?> here
       (for I-Ds: include="reference.I-D.narten-iana-considerations-rfc2434bis.xml")

    Both are cited textually in the same manner: by using xref elements.
    If you use the PI option, xml2rfc will, by default, try to find included files in the same
    directory as the including file. You can also define the XML_LIBRARY environment variable
    with a value containing a set of directories to search.  These can be either in the local
    filing system or remote ones accessed by http (http://domain/dir/... ).-->

    <references title="Normative References">
      <?rfc include="reference.RFC.2119.xml" ?>
      <?rfc include="reference.RFC.5384.xml" ?>
      <?rfc include="reference.RFC.9300.xml" ?>
      <?rfc include="reference.RFC.6831.xml" ?>
      <?rfc include="reference.RFC.8059.xml" ?>
    </references>
    <!-- Change Log

v00 2020-12-10  GVP   Initial version

    -->
 </back>
</rfc>
