rfc9798.original.xml   rfc9798.xml 
<?xml version='1.0' encoding='utf-8'?> <?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE rfc [ <!DOCTYPE rfc [
<!ENTITY nbsp "&#160;"> <!ENTITY nbsp "&#160;">
<!ENTITY zwsp "&#8203;"> <!ENTITY zwsp "&#8203;">
<!ENTITY nbhy "&#8209;"> <!ENTITY nbhy "&#8209;">
<!ENTITY wj "&#8288;"> <!ENTITY wj "&#8288;">
]> ]>
<rfc <rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="exp" docName="draft-ie
xmlns:xi="http://www.w3.org/2001/XInclude" tf-pim-jp-extensions-lisp-09" number="9798" consensus="true" ipr="trust200902" o
category="exp" bsoletes="" updates="8059" submissionType="IETF" xml:lang="en" tocInclude="true"
docName="draft-ietf-pim-jp-extensions-lisp-09" tocDepth="4" symRefs="true" sortRefs="true" version="3">
ipr="trust200902"
obsoletes=""
updates="8059"
submissionType="IETF"
xml:lang="en"
tocInclude="true"
tocDepth="4"
symRefs="true"
sortRefs="true"
version="3">
<front> <front>
<title abbrev="PIM Join Attributes for LISP Multicast">PIM Join/Prune Attribu
<title abbrev="PIM Join Attributes for LISP Mcast"> PIM Join/Prune Attributes tes for Locator/ID Separation Protocol (LISP) Environments Using Underlay Multic
for LISP Environments using Underlay Multicast ast</title>
</title> <seriesInfo name="RFC" value="9798"/>
<seriesInfo name="Internet-Draft" value="draft-ietf-pim-jp-extensions-lisp-0
9"/>
<author fullname="Vengada Prasad Govindan" initials="V" surname="Govindan"> <author fullname="Vengada Prasad Govindan" initials="V" surname="Govindan">
<organization>Cisco</organization> <organization>Cisco</organization>
<address> <address>
<email>venggovi@cisco.com</email> <email>venggovi@cisco.com</email>
</address> </address>
</author> </author>
<author fullname="Stig Venaas" initials="S" surname="Venaas"> <author fullname="Stig Venaas" initials="S" surname="Venaas">
<organization>Cisco</organization> <organization>Cisco Systems, Inc.</organization>
<address> <address>
<postal>
<street>Tasman Drive</street>
<city>San Jose</city>
<region>CA</region>
<code>95134</code>
<country>United States of America</country>
</postal>
<email>svenaas@cisco.com</email> <email>svenaas@cisco.com</email>
</address> </address>
</author> </author>
<date year="2025"/> <date year="2025" month="June"/>
<!-- If the month and year are both specified and are the current ones, xml2
rfc will fill
in the current day for you. If only the current year is specified, xml2r
fc 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 sp
ecified for the
purpose of calculating the expiry date). With drafts it is normally suf
ficient 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> <area>RTG</area>
<!-- Keywords will be incorporated into HTML output <workgroup>pim</workgroup>
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> <abstract>
<t>This document specifies an update to the PIM Receiver RLOC Join/Pru ne attribute that supports the <t>This document specifies an update to the Receiver RLOC field (Routi ng Locator) of the PIM Join/Prune attribute that supports the
construction of multicast distribution trees where the source and construction of multicast distribution trees where the source and
receivers are located in different Locator/ID Separation Protocol receivers are located in different Locator/ID Separation Protocol
(LISP) sites and are connected using underlay IP Multicast. This attribute a llows the receiver site to signal (LISP) sites and are connected using underlay IP multicast. This attribute a llows the receiver site to signal
the underlay multicast group to the control plane of the root Ingress Tunnel Router (ITR). This document updates RFC 8059. the underlay multicast group to the control plane of the root Ingress Tunnel Router (ITR). This document updates RFC 8059.
</t> </t>
</abstract> </abstract>
</front> </front>
<middle> <middle>
<section numbered="true" toc="default"> <section numbered="true" toc="default">
<name>Introduction</name> <name>Introduction</name>
<t> <t>
The construction of multicast distribution trees where the root and 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 receivers are located in different LISP sites <xref target="RFC9300" format=" default"/> is defined in
<xref target="RFC6831" format="default"/>.</t> <xref target="RFC6831" format="default"/>.</t>
<t> <t>
<xref target="RFC6831" format="default"/> specifies that (root-EID, G) da
ta packets are to be LISP- <!-- [rfced] Seemingly, the text points readers to RFCs 6831 and 9300 for defini
encapsulated into (root-RLOC, G) multicast packets. <xref target= tions of EID and RLOC. Please review.
"RFC8059" format="default"/>
Original (both from the Introduction):
Please refer to Section 3 of [RFC6831] for the
definition of the terms EID and RLOC.
...
This document uses terminology defined in [RFC9300], such as EID,
RLOC, ITR, and ETR.
-->
<xref target="RFC6831" format="default"/> specifies that (EID, G) data pa
ckets are to be LISP-
encapsulated into (RLOC, G) multicast packets. In this document,
we use the term root-EID or root-RLOC to refer to the source
of the multicast tree rooted at the EID or RLOC.
<xref target="RFC8059" format="default"/>
defines PIM Join/Prune attribute extensions to construct multica st distribution trees. defines PIM Join/Prune attribute extensions to construct multica st distribution trees.
Please refer to Section 3 of <xref target="RFC6831" format="defau lt"/> for the definition of the terms EID and RLOC. We use the term root-EID or root-RLOC to refer to the source of the multicast tree rooted at the EID or RLOC . Please refer to <xref target="RFC6831" sectionFormat="of" section ="3"/> for the definition of the terms Endpoint ID (EID) and Routing Locator (RL OC).
This document extends the Receiver ETR RLOC PIM Join/Prune attribute <xre f target="RFC8059" format="default"/> This document extends the Receiver ETR RLOC PIM Join/Prune attribute <xre f target="RFC8059" format="default"/>
to facilitate the to facilitate the
construction of underlay multicast trees for (root-RLOC, G). construction of underlay multicast trees for (root-RLOC, G).
</t> </t>
<t> <t>
Specifically, the assignment of the underlay multicast group needs to be done in consonance with Specifically, the assignment of the underlay multicast group needs to be done in consonance with
the downstream xTR nodes needed to avoid unnecessary replicat ion or traffic hairpinning. the downstream Tunnel Router (xTR) nodes needed to avoid unne cessary replication or traffic hairpinning.
</t> </t>
<t> Since the Receiver RLOC Attribute defined in <xref target="RFC805 9" format="default"/> only <t> Since the Receiver RLOC Attribute defined in <xref target="RFC805 9" format="default"/> only
addresses the Ingress Replication case, an extension of the s addresses the Ingress Replication case, this document extends
cope of that PIM Join/Prune attribute is defined by this draft to include the scope of that PIM Join/Prune attribute to include
scenarios where the underlay uses Multicast transport. The sc scenarios where the underlay uses multicast transport. The sc
ope extension proposed here complies ope extension complies
with the base specification <xref target="RFC5384" format="de fault"/>. with the base specification <xref target="RFC5384" format="de fault"/>.
</t> </t>
<t>This document uses terminology defined in <xref target="RFC9300" format ="default"/>, such as EID, <t>This document uses terminology defined in <xref target="RFC9300" format ="default"/>, such as EID,
RLOC, ITR, and ETR. </t> RLOC, ITR, and ETR. </t>
<section> <section>
<name>Requirements Language</name> <name>Requirements Language</name>
<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", " <t>
SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" i The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>",
n this document are to be interpreted as described in BCP 14 <xref target="RFC21 "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>
19"/> <xref target="RFC8174"/> when, and only when, they appear in all capitals, ",
as shown here.</t> "<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&nbsp;14 <xref target="RFC2119"/> <xref
target="RFC8174"/> when, and only when, they appear in all capitals, as
shown here.
</t>
</section> </section>
</section> </section>
<section title="The case for extending the Received ETR RLOC Attribute of RF <section>
C 8059"> <name>The Case for Extending the Received ETR RLOC Attribute of RFC 8059</
<t>When LISP based Multicast trees are constructed using IP Multicast name>
in the underlay, the mapping between <t>When LISP-based multicast trees are constructed using IP multicast
the overlay group address and the underlay group address beco in the underlay, the mapping between
mes a crucial engineering decision: the overlay group address and the underlay group address beco
mes a crucial engineering decision.
</t> </t>
<section title="Flexible mapping of overlay to underlay group ranges:"> <section>
<t> Three distinct types of overlay to underlay group mappings a <name>Flexible Mapping of Overlay to Underlay Group Ranges</name>
re possible: Many to one mapping: Many (root-EID, G) flows originating from an R <t> Three distinct types of overlay to underlay group mappings a
LOC can be mapped to a single underlay multicast (root-RLOC, G-u) flow. One to re possible: </t>
many mapping: Conversely a single same overlay flow can be mapped to two or mor <ul>
e flows, e.g., (root-RLOC, G-u1) and (root-RLOC, G-u2) to cater to the requireme <li>Many-to-one mapping: Many (root-EID, G) flows originating from an RLOC can b
nts of downstream xTR nodes. One to one mapping: Every (root-EID, G) flow is ma e mapped to a single underlay multicast (root-RLOC, G-u) flow. </li>
pped to a unique (root-RLOC, G-u) flow. </t> <li>One-to-many mapping: Conversely a single 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.</li>
<li>One-to-one mapping: Every (root-EID, G) flow is mapped to a unique (root-RLO
C, G-u) flow. </li>
</ul>
</section> </section>
<section title="Multicast Address Range constraints:"> <section>
<name>Multicast Address Range Constraints</name>
<t> Under certain conditions, different subsets o f xTRs subscribing to the same overlay <t> Under certain conditions, different subsets o f xTRs subscribing to the same overlay
multicast stream may be constrained to use disti nct underlay multicast mapping ranges. </t> multicast stream may be constrained to use disti nct underlay multicast mapping ranges. </t>
<t> <t>
This introduces a trade-off between replication overhead and the flexibility of This introduces a trade-off between replication overhead and the flexibility of
address range assignment, which may be necessary in specific use-cases like Proxy Tunnel Routers or when using nodes with limite d hardware resources as explained below: </t> address range assignment, which may be necessary in specific use cases like Proxy Tunnel Routers or when using nodes with limite d hardware resources as explained below. </t>
<dl newline="true" spacing="normal" indent="2"> <dl newline="true" spacing="normal" indent="2">
<dt> Inter-site Proxy Tunnel Routers (PxTR):</dt> <dt>Inter-site Proxy Tunnel Routers (PxTR):</dt>
<dd> <dd>When multiple LISP sites are interconnected through a
When multiple LISP sites are interconnected through a LISP-based LISP-based transit, the site border node (i.e., PxTR) connects the
transit, the site border node (PxTR) connects the site-facing interfaces with th site-facing interfaces with the external LISP core. In such cases,
e external LISP core. In such cases, different ranges of multicast group address different ranges of multicast group addresses may be used for
es may be used for constructing (S-RLOC, G) trees within the LISP site and in th constructing (S-RLOC, G) trees within the LISP site and in the
e external LISP core. This distinction is desirable for various operational reas external LISP core. This distinction is desirable for various
ons operational reasons.
</dd> </dd>
<dt> Hardware resource restrictions:</dt> <dt>Hardware resource restrictions:</dt>
<dd> Platform limitations may necessitate engineering decisions to res <dd>Platform limitations may necessitate engineering decisions to
trict multicast address ranges in the underlay due to hardware resource constrai restrict multicast address ranges in the underlay due to hardware
nts. </dd> resource constraints. </dd>
</dl> </dl>
</section>
</section> </section>
</section>
<section title="Updates to RFC 8059"> <section>
<section title="Scope"> <name>Updates to RFC 8059</name>
<t>No changes are proposed to the syntax or semantics of the Transpor <section>
t Attribute defined in <xref target="RFC8059" format="default">RFC 8059</xref>.< <name>Scope</name>
/t> <t>No changes are proposed to the syntax or semantics of the Transport
<t> The scope of the updates to <xref target="RFC8059" format="default">R Attribute defined in <xref target="RFC8059" format="default"/>.</t>
FC 8059</xref> is limited to the case where the "Transport" field of the Transpo <t> The scope of the updates to <xref target="RFC8059"
rt Attribute is set to zero (Multicast) only. </t> format="default"/> is limited to the case where the "Transport" field of
the Transport Attribute is set to zero (multicast) only. </t>
</section> </section>
<section title="Receiver ETR RLOC Attribute"> <section>
<t>The definition of the "Receiver RLOC" field of the Receiver ETR RL <name>Receiver ETR RLOC Attribute</name>
OC attribute <xref target="RFC8059" format="default">RFC 8059</xref> is updated
as follows:</t> <t>The definition of the "Receiver RLOC" field of the Receiver ETR RLOC
<dl newline="true" spacing="normal" indent="1"> attribute (see <xref target="RFC8059" sectionFormat="of" section="5.1"/>)
is
updated as follows:</t>
<t>OLD:</t>
<blockquote>
<dl>
<dt>Receiver RLOC:</dt>
<dd>The RLOC address on which the receiver ETR wishes to
receive the unicast-encapsulated flow.</dd>
</dl>
</blockquote>
<t>NEW:</t>
<blockquote>
<dl spacing="normal">
<dt> Receiver RLOC:</dt> <dt> Receiver RLOC:</dt>
<dd> The RLOC address on which the receiver ETR wishes to receive the <dd> The RLOC address on which the receiver ETR wishes to receive the
encapsulated flow. A unicast IP Receiver RLOC address is used for uni cast-encapsulated flows. encapsulated flow. A unicast IP Receiver RLOC address is used for uni cast-encapsulated flows.
Alternately, a multicast IP Receiver RLOC address is used for for mul ticast-encapsulated flows. Alternately, a multicast IP Receiver RLOC address is used for for mul ticast-encapsulated flows.
A multicast IP address MUST be used only when the underlay network of A multicast IP address <bcp14>MUST</bcp14> be used only when the unde
the LISP core supports rlay network of the LISP core supports
IP Multicast transport.</dd> IP multicast transport.</dd>
</dl> </dl>
</blockquote>
<t> The definitions of the other fields of the Receiver ETR RLOC Attribu te remain unchanged. </t> <t> The definitions of the other fields of the Receiver ETR RLOC Attribu te remain unchanged. </t>
<t> When the ITR needs to track the list of ETRs from which the PIM join s are received, the ITR MUST use the source IP address field of the incoming PIM Join/Prune message. The source IP address of the PIM Join/Prune MUST be an ETR RLOC IP address.</t> <t> When the ITR needs to track the list of ETRs from which the PIM join s are received, the ITR <bcp14>MUST</bcp14> use the source IP address field of t he incoming PIM Join/Prune message. The source IP address of the PIM Join/Prune <bcp14>MUST</bcp14> be an ETR RLOC IP address.</t>
<!-- <!--
%<t>The root ITR MUST also discard all affected Join/Prune sources if the Transport Attribute value is set to any value other than zero and the Address f ield of the Receiver RLOC contains a multicast IP address. </t> --> %<t>The root ITR MUST also discard all affected Join/Prune sources if the Transport Attribute value is set to any value other than zero and the Address f ield of the Receiver RLOC contains a multicast IP address. </t> -->
</section> </section>
<section title="Using the Receiver RLOC Attribute"> <section>
<name>Using the Receiver RLOC Attribute</name>
<t>When the ETR determines to use the multicast underlay:</t> <t>When the ETR determines to use the multicast underlay:</t>
<ul> <ul>
<li>It chooses an underlay multicast group that it can join. This is a matter of local decision, beyond the scope of this document.</li> <li>It chooses an underlay multicast group that it can join. This is a matter of local decision, which is beyond the scope of this document.</li>
<li>It identifies the upstream LISP site where the underlay multi cast tree needs to be rooted.</li> <li>It identifies the upstream LISP site where the underlay multi cast tree needs to be rooted.</li>
<li>It constructs the PIM Join/Prune message as specified in <xre f target="RFC8059" format="default">RFC 8059</xref>. Only the Receiver RLOC attr ibute is encoded as above. </li> <li>It constructs the PIM Join/Prune message as specified in <xre f target="RFC8059" format="default"/>. Only the Receiver RLOC attribute is encod ed as above. </li>
</ul><t></t> </ul><t></t>
<t>When the ITR receives a PIM Join/Prune message: </t> <t>When the ITR receives a PIM Join/Prune message: </t>
<ul> <ul>
<li>It allocates a new entry in the OutgoingInterfaceList <xref t <li>It allocates a new entry in the outgoing interface list <xre
arget="RFC6831" format="default">RFC 6831</xref> for every unique underlay mult f target="RFC6831" format="default"/> for every unique underlay multicast mappi
icast mapping. </li> ng. </li>
<li>The ITR MAY apply local policy to perform any kind of rate-li <li>The ITR <bcp14>MAY</bcp14> apply local policy to perform any
miting on the number of copies it needs to make in the underlay. Such actions ar kind of rate-limiting on the number of copies it needs to make in the underlay.
e beyond the scope of this document.</li> Such actions are beyond the scope of this document.</li>
</ul><t></t> </ul><t></t>
</section> </section>
</section> </section>
<!-- Possibly a 'Contributors' section ... -->
<section anchor="Acknowledgements" numbered="true" toc="default">
<name>Acknowledgements</name>
<t>
The authors would like to thank Dino Farinacci, Victor Moreno, Alvaro
Retana, Aswin Kuppusami, Joe Clarke and Peter Yee for their valuable comments. T
he authors also thank Sankaralingam T and Amit Kumar for their contributions to
the document. The authors thank Gunter van de Velde for his valuable comments.
</t>
</section>
<section anchor="IANA" numbered="true" toc="default"> <section anchor="IANA" numbered="true" toc="default">
<name>IANA Considerations</name> <name>IANA Considerations</name>
<t>No new requests to IANA.</t> <t>This document has no IANA actions.</t>
</section> </section>
<section anchor="Security" numbered="true" toc="default"> <section anchor="Security" numbered="true" toc="default">
<name>Security Considerations</name> <name>Security Considerations</name>
<t> <t>
An attack vector arises where an attacker sends numerous PIM Join m essages with different group addresses. This could interfere with legitimate mul ticast traffic if the group addresses overlap. Additionally, resource exhaustion may occur if replication is requested for a large number of groups, potentially resulting in significant resource consumption. An attack vector arises where an attacker sends numerous PIM Join m essages with different group addresses. This could interfere with legitimate mul ticast traffic if the group addresses overlap. Additionally, resource exhaustion may occur if replication is requested for a large number of groups, potentially resulting in significant resource consumption.
To mitigate these risks, PIM authentication mechanisms <xref target="RFC5796" fo rmat="default">RFC 5796</xref> could be employed to validate join requests. Furt hermore, implementations may consider explicit tracking mechanisms to manage joi ns more effectively. Configurable controls could be introduced, allowing for a m aximum permissible number of groups for each ETR RLOC used as the source of over lay joins. These controls would limit the impact of such attacks and ensure that resource allocation is managed appropriately. To mitigate these risks, PIM authentication mechanisms <xref target="RFC5796" fo rmat="default"/> could be employed to validate join requests. Furthermore, imple mentations may consider explicit tracking mechanisms to manage joins more effect ively. Configurable controls could be introduced, allowing for a maximum permiss ible number of groups for each ETR RLOC used as the source of overlay joins. The se controls would limit the impact of such attacks and ensure that resource allo cation is managed appropriately.
</t> </t>
</section> </section>
</middle> </middle>
<!-- *****BACK MATTER ***** -->
<back> <back>
<!-- References split into informative and normative --> <references>
<name>Normative References</name>
<!-- There are 2 ways to insert reference entries from the citation libraries <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.211
: 9.xml"/>
1. define an ENTITY at the top, and use "ampersand character"RFC2629; here ( <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.538
as shown) 4.xml"/>
2. simply use a PI "less than character"?rfc include="reference.RFC.2119.xml <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.930
"?> here 0.xml"/>
(for I-Ds: include="reference.I-D.narten-iana-considerations-rfc2434bis.x <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.579
ml") 6.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.683
Both are cited textually in the same manner: by using xref elements. 1.xml"/>
If you use the PI option, xml2rfc will, by default, try to find included fil <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.805
es in the same 9.xml"/>
directory as the including file. You can also define the XML_LIBRARY environ <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.817
ment variable 4.xml"/>
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.5796.xml" ?>
<?rfc include="reference.RFC.6831.xml" ?>
<?rfc include="reference.RFC.8059.xml" ?>
<?rfc include="reference.RFC.8174.xml" ?>
</references> </references>
<!-- Change Log
v00 2020-12-10 GVP Initial version
--> <section anchor="Acknowledgements" numbered="false" toc="default">
<name>Acknowledgements</name>
<t>The authors would like to thank <contact fullname="Dino Farinacci"/>,
<contact fullname="Victor Moreno"/>, <contact fullname="Alvaro
Retana"/>, <contact fullname="Aswin Kuppusami"/>, <contact fullname="Joe
Clarke"/>, and <contact fullname="Peter Yee"/> for their valuable
comments. The authors also thank <contact fullname="Sankaralingam T"/>
and <contact fullname="Amit Kumar"/> for their contributions to the
document. The authors thank <contact fullname="Gunter Van de Velde"/>
for his valuable comments.</t>
</section>
</back> </back>
</rfc> </rfc>
 End of changes. 37 change blocks. 
170 lines changed or deleted 171 lines changed or added

This html diff was produced by rfcdiff 1.48.