rfc9465xml2.original.xml   rfc9465.xml 
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<rfc category="std" ipr="trust200902" docName="draft-ietf-pim-null-register-pack
ing-16">
<?rfc toc="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<?rfc symrefs="yes"?>
<front>
<title abbrev="PIM Null-Register packing">PIM Null-Register packi
ng</title>
<author initials="V." surname="Kamath" fullname="Vikas Ramesh Kam
ath">
<organization>VMware</organization>
<address>
<postal>
<street>3401 Hillview Ave</street>
<city>Palo Alto</city>
<code>CA 94304</code>
<country>USA</country>
</postal>
<email>vkamath@vmware.com</email>
</address>
</author>
<author initials="R." surname="Chokkanathapuram Sundaram" fullnam
e="Ramakrishnan Chokkanathapuram Sundaram">
<organization>Cisco Systems, Inc.</organization>
<address>
<postal>
<street>Tasman Drive</street>
<city>San Jose</city>
<code>CA 95134</code>
<country>USA</country>
</postal>
<email>ramaksun@cisco.com</email>
</address>
</author>
<author initials="R." surname="Banthia" fullname="Raunak Banthia"
>
<organization>Apstra</organization>
<address>
<postal>
<street>333 Middlefield Rd STE 200</stree
t>
<city>Menlo Park</city>
<code>CA 94025</code>
<country>USA</country>
</postal>
<email>rbanthia@apstra.com</email>
</address>
</author>
<author initials="A." surname="Gopal" fullname="Ananya Gopal">
<organization>Cisco Systems, Inc.</organization>
<address>
<postal>
<street>Tasman Drive</street>
<city>San Jose</city>
<code>CA 95134</code>
<country>USA</country>
</postal>
<email>ananygop@cisco.com</email>
</address>
</author>
<date />
<area>Routing</area>
<keyword>Multicast</keyword>
<abstract>
<t>In PIM-SM networks, PIM Null-Register messages are sen
t by the Designated Router (DR) to the Rendezvous Point (RP) to signal the prese
nce of Multicast sources in the network. There are periodic PIM Null-Registers s
ent from the DR to the RP to keep the state alive at the RP as long as the sourc
e is active. The PIM Null-Register message carries information about a single Mu
lticast source and group.</t>
<t>This document defines a standard to send multiple Mult
icast source and group information in a single PIM message. This document refers
to the new messages as the PIM Packed Null-Register message and PIM Packed Regi
ster-Stop message.</t>
</abstract>
</front>
<middle>
<section title="Introduction">
<t>The DR periodically sends PIM Null-Registers to keep t
he state of existing multicast sources active on the RP. As the number of multic
ast sources increases, the number of PIM Null-Register messages that are sent al
so increases. This results in more PIM packet processing at the RP and the DR.</
t>
<t> <!DOCTYPE rfc [
<!ENTITY nbsp "&#160;">
<!ENTITY zwsp "&#8203;">
<!ENTITY nbhy "&#8209;">
<!ENTITY wj "&#8288;">
]>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" category="
std" consensus="true" ipr="trust200902" docName="draft-ietf-pim-null-register-pa
cking-16" number="9465" tocInclude="true" sortRefs="true" symRefs="true" updates
="" obsoletes="" xml:lang="en" version="3">
<front>
<title abbrev="PIM Null-Register Packing">PIM Null-Register Packing</title>
<seriesInfo name="RFC" value="9465"/>
<author initials="V." surname="Kamath" fullname="Vikas Ramesh Kamath">
<organization>VMware</organization>
<address>
<postal>
<street>3401 Hillview Ave</street>
<city>Palo Alto</city>
<region>CA</region>
<code>94304</code>
<country>United States of America</country>
</postal>
<email>vkamath@vmware.com</email>
</address>
</author>
<author initials="R." surname="Chokkanathapuram Sundaram" fullname="Ramakris
hnan Chokkanathapuram Sundaram">
<organization>Cisco Systems, Inc.</organization>
<address>
<postal>
<street>Tasman Drive</street>
<city>San Jose</city>
<region>CA</region>
<code>95134</code>
<country>United States of America</country>
</postal>
<email>ramaksun@cisco.com</email>
</address>
</author>
<author initials="R." surname="Banthia" fullname="Raunak Banthia">
<organization>Apstra</organization>
<address>
<postal>
<extaddr>Suite 200</extaddr>
<street>333 Middlefield Rd</street>
<city>Menlo Park</city>
<region>CA</region>
<code>94025</code>
<country>United States of America</country>
</postal>
<email>rbanthia@apstra.com</email>
</address>
</author>
<author initials="A." surname="Gopal" fullname="Ananya Gopal">
<organization>Cisco Systems, Inc.</organization>
<address>
<postal>
<street>Tasman Drive</street>
<city>San Jose</city>
<region>CA</region>
<code>95134</code>
<country>United States of America</country>
</postal>
<email>ananygop@cisco.com</email>
</address>
</author>
<date year="2023" month="September" />
<area>rtg</area>
<workgroup>pim</workgroup>
<keyword>Multicast</keyword>
<abstract>
<t>In PIM Sparse Mode (PIM-SM) networks, PIM Null-Register messages are se
nt by the Designated Router (DR) to the Rendezvous Point (RP) to signal the pres
ence of multicast sources in the network. There are periodic PIM Null-Registers
sent from the DR to the RP to keep the state alive at the RP as long as the sour
ce is active. The PIM Null-Register message carries information about a single m
ulticast source and group.</t>
<t>This document defines a standard to send information about multiple multicast
sources and groups in a single PIM message. This document refers to the new mes
sages as the "PIM Packed Null-Register message" and "PIM Packed Register-Stop me
ssage".</t>
</abstract>
</front>
<middle>
<section anchor="sec1">
<name>Introduction</name>
<t>The DR periodically sends PIM Null-Registers to keep the state of exist
ing multicast sources active on the RP. As the number of multicast sources incre
ases, the number of PIM Null-Register messages that are sent also increases. Thi
s results in more PIM packet processing at the RP and the DR.</t>
<t>
This document specifies a method to efficiently pack the content This document specifies a method to efficiently pack the content
of multiple PIM Null-Register and Register-Stop messages <xref target="RFC776 1"/> of multiple PIM Null-Register and Register-Stop messages <xref target="RFC776 1"/>
into a single message. into a single message.
</t> </t>
<t>The document also discusses interoperability between PIM routers that s
<t>The document also discusses interoperability between P upport PIM Packed Null-Registers and PIM Packed Register-Stops and PIM routers t
IM routers that support PIM Packed Null-Registers and PIM Packed Register-Stops hat do not.</t>
and PIM routers that do not.</t> <section anchor="sec1.1">
<section title="Conventions used in this document"> <name>Conventions Used in This Document</name>
<t> <t> The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>",
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>",
"MAY", and "OPTIONAL" in this document are to be interpreted as "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document
, and only when, they are to be interpreted as described in BCP&nbsp;14 <xref
appear in all capitals, as shown here. target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
</t> appear in all capitals, as shown here.</t>
</section> </section>
<section title="Terminology"> <section anchor="sec1.2">
<t> <name>Terminology</name>
<list style="hanging"> <dl newline="false" spacing="normal">
<t hangText="RP:">Rendezvous Poin <dt>RP:</dt>
t</t> <dd>Rendezvous Point</dd>
<t hangText="DR:">Designated Rout <dt>DR:</dt>
er</t> <dd>Designated Router</dd>
</list> <dt>MSDP:</dt>
</t> <dd>Multicast Source Discovery Protocol</dd>
</section> <dt>PIM-SM:</dt>
</section> <dd>PIM Sparse Mode</dd>
<section title="Packed Null-Register Packing Capability"> </dl>
<t> </section>
The RP indicates its ability to receive PIM Packed Null-Register messages (Secti </section>
on 3) and send PIM Packed Register-Stop messages (Section 4) with a Packing Capa <section anchor="sec2">
bility bit (P-bit) in the PIM Register-Stop message. The P-bit is allocated in S <name>Packing Capability</name>
ection 9. <t>
</t> The RP indicates its ability to receive PIM Packed Null-Register messages (<xref
target="sec3"/>) and send PIM Packed Register-Stop messages (<xref target="sec4
"/>) with a Packing Capability bit (P-bit) in the PIM Register-Stop message. The
P-bit is allocated in <xref target="sec9"/>.
</t>
<figure> <figure>
<artwork> <name>PIM Register-Stop Message with Packing Capability Option</name>
<artwork><![CDATA[
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|PIM Ver| Type |P|6 5 4 3 2 1 0| Checksum | |PIM Ver| Type |7 6 5 4 3 2 1|P| Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Group Address (Encoded-Group format) | | Group Address (Encoded-Group format) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Address (Encoded-Unicast format) | | Source Address (Encoded-Unicast format) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: PIM Register-Stop message with Packing Capability option ]]></artwork>
</artwork> </figure>
</figure>
<t> The fields in the PIM Register-Stop message are defined in Section 4.9.4 of
<xref target="RFC7761" />, and the common header in <xref target='I-D.venaas-pi
m-rfc8736bis'/>. </t>
<t> Packing Capability bit (P-bit / Flag Bit TBD1): When set, it indicates the
ability of the RP to receive PIM Packed Null-Register messages, and send PIM Pac
ked Register-Stop messages. </t>
</section>
<section title="PIM Packed Null-Register message format"> <t> The Group Address and Source Address fields in the PIM Register-Stop message
<figure> are defined in <xref target="RFC7761" sectionFormat="of" section="4.9.4"/>. The
<artwork> common header is defined in <xref target="RFC9436"/>. </t>
<dl newline="false" spacing="normal">
<dt>Packing Capability bit (P-bit; flag bit 0):</dt>
<dd>When set, it indicates the ability of the RP to receive PIM
Packed Null-Register messages and send PIM Packed Register-Stop
messages.</dd>
</dl>
</section>
<section anchor="sec3">
<name>PIM Packed Null-Register Message Format</name>
<figure>
<name>PIM Packed Null-Register Message Format</name>
<artwork><![CDATA[
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|PIM Ver| Type |Subtype| FB | Checksum | |PIM Ver| Type |Subtype| FB | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Group Address[1] (Encoded-Group format) | | Group Address[1] (Encoded-Group format) |
| Source Address[1] (Encoded-Unicast format) | | Source Address[1] (Encoded-Unicast format) |
. . . .
. . . .
. . . .
. . . .
. Group Address[N] . . Group Address[N] .
| Source Address[N] | | Source Address[N] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: PIM Packed Null-Register message format ]]></artwork>
</artwork> </figure>
</figure>
<t> The fields in the PIM Packed Null-Reg <t> The Group Address and Source Address fields in the PIM Packed Null-Register
ister message are defined in Section message are defined in
4.9.4 of <xref target="RFC7761" />, and the common header in <xref target='I <xref target="RFC7761" sectionFormat="of" section="4.9.4"/>. The
-D.venaas-pim-rfc8736bis'/></t> common header is defined in <xref target="RFC9436"/>.</t>
<t> Type, Subtype: The PIM Packed Null-Re
gister Type value TBD2. <xref target='I-D.venaas-pim-rfc8736bis'/> </t>
<t>N: The total number of records; A reco
rd consists of a Group Address and Source Address pair.</t>
<t> After parsing the PIM common header, individual records are then pars <dl spacing="normal" newline="false">
ed one by one until the length of the PIM Packed Null-Register message. This len <dt>Type, Subtype:</dt>
gth is inferred from the IP layer. <dd>PIM Packed Null-Register (13.0).</dd>
</t> <dt>N:</dt>
<dd>The total number of records; a record consists of a Group
Address and Source Address pair.</dd>
</dl>
<t> Sending or receiving a PIM Packed Null-Register message is the e <t> After parsing the PIM common header, individual records are then
quivalent, for all parsed one by one until the end of the PIM Packed Null-Register
purposes, of sending or receiving an individual Null-Register message for eac message. This length is inferred from the IP layer.
h record </t>
<t> Sending or receiving a PIM Packed Null-Register message has the equiva
lent effect of sending or receiving an individual Null-Register message for each
record
represented in the PIM Packed Null-Register message.</t> represented in the PIM Packed Null-Register message.</t>
</section>
<section anchor="sec4">
<name>PIM Packed Register-Stop Message Format</name>
</section> <figure>
<section title="PIM Packed Register-Stop message format"> <name>PIM Packed Register-Stop Message Format</name>
<figure> <artwork><![CDATA[
<artwork>
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|PIM Ver| Type |Subtype| FB | Checksum | |PIM Ver| Type |Subtype| FB | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Group Address[1] (Encoded-Group format) | | Group Address[1] (Encoded-Group format) |
| Source Address[1] (Encoded-Unicast format) | | Source Address[1] (Encoded-Unicast format) |
. . . .
. . . .
. . . .
. . . .
. Group Address[N] . . Group Address[N] .
| Source Address[N] | | Source Address[N] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: PIM Packed Register-Stop message format ]]></artwork>
</figure>
</artwork> <t>The Group Address and Source Address fields in the PIM Packed
</figure> Register-Stop message are defined in <xref target="RFC7761"
<t>The fields in the PIM Packed Register-Stop message are defined in Section 4.9 sectionFormat="of" section="4.9.4"/>. The common header is defined in <xre
.4 of <xref target="RFC7761" />, and the common header in <xref target='I-D.ven f
aas-pim-rfc8736bis'/> </t> target="RFC9436"/>.</t>
<t>Type, Subtype: The PIM Packed Register-Stop Type TBD3</t>
<t>N: The total number of records; A record consists of a Group Address and Sour
ce Address pair.</t>
<t>
After parsing the PIM common header, individual records are then
parsed one by one until the length of the PIM Packed Register-Stop message. Thi
s length is inferred from the IP layer. </t>
<t> Sending or receiving a PIM Packed Register-Stop message is the equ <dl newline="false" spacing="normal">
ivalent, for all <dt>Type, Subtype:</dt>
purposes, of sending or receiving an individual Null-Register message for eac <dd>PIM Packed Register-Stop (13.1).</dd>
h record <dt>N:</dt>
<dd>The total number of records; a record consists of a Group Address
and Source Address pair.</dd>
</dl>
<t> After parsing the PIM common header, individual records are then
parsed one by one until the end of the PIM Packed Register-Stop
message. This length is inferred from the IP layer. </t>
<t> Sending or receiving a PIM Packed Register-Stop message has the equiva
lent effect of sending or receiving an individual Null-Register message for each
record
represented in the PIM Packed Register-Stop.</t> represented in the PIM Packed Register-Stop.</t>
</section>
<section title="Protocol operation">
<t>
<t>As specified in <xref
target="RFC7761"/>, the DR sends PIM Register messages towards the RP when a new
source is detected. </t>
<t>When this feature is e
nabled/configured, an RP supporting this specification MUST set the P-bit (Flag
bit TBD1) in all Register-Stop messages. </t>
<t>
When a Register-S
top message with the P-bit set is received, the DR SHOULD send PIM Packed Null-R
egister messages (Section 3) to the RP instead of multiple Register messages wit
h the N-bit set <xref target="RFC7761"/>.
The DR MAY use a mixture of PIM Packed Null-Regi
ster messages and Register messages. The decision is up to the implementation an
d out of the scope of this document. However, it is RECOMMENDED to stick to the
PIM Packed Null-Register and PIM Packed Register-Stop formats as long as the RP
and DR have the feature enabled.
</t>
<t> The RP, after receivi
ng a PIM Packed Null-Register message, SHOULD start sending PIM Packed Register-
Stop messages (Section 4) to the corresponding DR instead of individual Register
-Stop messages.
The RP MAY use a mixture of PIM Packed Register-Stop
messages and individual Register-Stop messages. The decision is up to the imple
mentation and out of the scope of this document. However, it is RECOMMENDED to s
tick to the PIM Packed Null-Register and PIM Packed Register-Stop formats as lon
g as the RP and DR have the feature enabled. </t>
</t>
</section>
<section title="Operational Considerations">
<section title="PIM Anycast RP Considerations">
<t>
The PIM Packed Null-Register packet format should
be enabled only if it is supported by all the routers in the Anycast-RP set <xr
ef target="RFC4610" />. This consideration applies to PIM Anycast RP with MSDP <
xref target="RFC3446" /> as well.
</t>
</section>
<section title="Interoperability between different versions" >
<t>
A router (DR) can decide to use the PIM Packed Null-Register
message format based on the Packing Capability received from the RP as part of
the PIM Register-Stop. This ensures compatibility with routers that do not suppo
rt processing of the new packet format. The Packing Capability information MUST
be indicated by the RP via the PIM Register-Stop message sent to the DR. Thus, a
DR will switch to the new packet format only when it learns that the RP is capa
ble of handling the PIM Packed Null-Register messages.
</t>
<t>
Conversely, a DR that does not support the packed
format can continue generating the PIM Null-Register as defined in
<xref target="RFC7761" /> (Section 4.4).
</t>
</section>
<section title="Disabling PIM Packed Message Support at RP and/or DR
" >
<t> Consider a PIM RP router that supports PIM Packed Null-Regis
ters and PIM Packed Register-Stops. In scenarios where this router now no longer
supports this feature, for example, in case of a software downgrade, it will no
t send a PIM Register-Stop message to the DR in response to a PIM Packed Null-Re
gister message.
</t>
<t> When the DR switches to Data Registers from Null-Registers,
it MUST start a Packed_Register_Probe_Time timer. If no PIM Packed Register-Stop
or Register-Stop with the P-bit set is received within Packed_Register_Probe_Ti
me seconds, the DR can decide that the RP no longer supports PIM Packed Null-Reg
isters. The Packed_Register_Probe_Time timer is configurable; its default value
is 60 seconds.
</t>
<t> When Packed_Register_Probe_Time expires, The DR MAY also sen
d an unpacked PIM Null-Register and check the PIM Register-Stop to see if the P-
bit is set or not. If it is not set then the DR will continue sending unpacked P
IM Null-Register messages.</t>
<t>In case the network manager disables the Packing Capab
ility at the RP, or in other words, disables the feature from the RP, the router
MUST NOT advertise the Packing Capability. However, an implementation MAY choos
e to still parse any packed registers if they are received. This may be particul
arly useful in the transitional period after the network manager disables it.</t
>
</section>
</section> </section>
<section title="Fragmentation Considerations"> <section anchor="sec5">
<t> <name>Protocol Operation</name>
<t>As specified in <xref target="RFC7761"/>, the DR sends PIM Register mes
sages towards the RP when a new source is detected. </t>
<t>When this feature is enabled/configured, an RP supporting this specific
ation <bcp14>MUST</bcp14> set the P-bit (flag bit 0) in all Register-Stop messag
es. </t>
<t>When a Register-Stop message with the P-bit set is received, the DR
<bcp14>SHOULD</bcp14> send PIM Packed Null-Register messages (<xref
target="sec3"/>) to the RP instead of multiple Register messages with
the N-bit set <xref target="RFC7761"/>. The DR <bcp14>MAY</bcp14> use a
mixture of PIM Packed Null-Register messages and Register messages. The
decision is up to the implementation and out of the scope of this
document. However, it is <bcp14>RECOMMENDED</bcp14> to stick to the PIM
Packed Null-Register and PIM Packed Register-Stop formats as long as the
RP and DR have the feature enabled. </t>
<t>After receiving a PIM Packed Null-Register message, the RP
<bcp14>SHOULD</bcp14> start sending PIM Packed Register-Stop messages
(<xref target="sec4"/>) to the corresponding DR instead of individual
Register-Stop messages. The RP <bcp14>MAY</bcp14> use a mixture of PIM
Packed Register-Stop messages and individual Register-Stop messages. The
decision is up to the implementation and out of the scope of this
document. However, it is <bcp14>RECOMMENDED</bcp14> to stick to the PIM
Packed Null-Register and PIM Packed Register-Stop formats as long as the
RP and DR have the feature enabled. </t>
</section>
<section anchor="sec6">
<name>Operational Considerations</name>
<section anchor="sec6.1">
<name>PIM Anycast RP Considerations</name>
<t>The PIM Packed Null-Register packet format should be enabled only
if it is supported by all the routers in the Anycast-RP set <xref
target="RFC4610"/>. This consideration applies to PIM Anycast RP with
Multicast Source Discovery Protocol (MSDP) <xref target="RFC3446"/> as
well.
</t>
</section>
<section anchor="sec6.2">
<name>Interoperability between Different Versions</name>
<t> A router (DR) can decide to use the PIM Packed Null-Register
message format based on the Packing Capability received from the RP as
part of the PIM Register-Stop. This ensures compatibility with routers
that do not support processing of the new packet format. The Packing
Capability information <bcp14>MUST</bcp14> be indicated by the RP via
the PIM Register-Stop message sent to the DR. Thus, a DR will switch
to the new packet format only when it learns that the RP is capable of
handling the PIM Packed Null-Register messages.
</t>
<t>Conversely, a DR that does not support the packed format can
continue generating the PIM Null-Register as defined in <xref
target="RFC7761" sectionFormat="of" section="4.4"/>.
</t>
</section>
<section anchor="sec6.3">
<name>Disabling PIM Packed Message Support at RP and/or DR</name>
<t> Consider a PIM RP router that supports PIM Packed Null-Registers and
PIM Packed Register-Stops. In scenarios where this router no longer supports th
is feature, for example, in case of a software downgrade, it will not send a PIM
Register-Stop message to the DR in response to a PIM Packed Null-Register messa
ge.
</t>
<t> When the DR switches to Data Registers from Null-Registers, it <bcp1
4>MUST</bcp14> start a Packed_Register_Probe_Time timer. If no PIM Packed Regist
er-Stop or Register-Stop with the P-bit set is received within Packed_Register_P
robe_Time seconds, the DR can decide that the RP no longer supports PIM Packed N
ull-Registers. The Packed_Register_Probe_Time timer is configurable; its default
value is 60 seconds.
As explained in Section 4.4.1 of <xref target="RFC7761" />, the DR may perfo </t>
rm Path <t> When Packed_Register_Probe_Time expires, the DR <bcp14>MAY</bcp14> a
MTU Discovery to the RP before sending PIM Packed Null-Register lso send an unpacked PIM Null-Register and check the PIM Register-Stop to see if
messages. Similarly, the RP may perform Path MTU Discovery to the the P-bit is set or not. If it is not set, then the DR will continue sending un
DR before sending PIM Packed Register-Stop messages. In both cases, packed PIM Null-Register messages.</t>
the number of records in a message should be limited such that it <t>In case the network manager disables the Packing Capability at the RP
can fit within the Path MTU. (or in other words, disables the feature from the RP), the router <bcp14>MUST N
</t> OT</bcp14> advertise the Packing Capability. However, an implementation <bcp14>M
AY</bcp14> choose to still parse any packed registers if they are received. This
may be particularly useful in the transitional period after the network manager
disables it.</t>
</section>
</section>
<section anchor="sec7">
<name>Fragmentation Considerations</name>
<t> As explained in <xref target="RFC7761" sectionFormat="of"
section="4.4.1"/>, the DR may perform Path MTU Discovery to the RP
before sending PIM Packed Null-Register messages. Similarly, the RP may
perform Path MTU Discovery to the DR before sending PIM Packed
Register-Stop messages. In both cases, the number of records in a
message should be limited such that it can fit within the Path MTU.
</t>
</section>
<section anchor="sec8">
<name>Security Considerations</name>
<t> The Security Considerations in <xref target="RFC7761"/> apply to
this document. In particular, the effect of forging a PIM Packed
Null-Register or Register-Stop message would be amplified to all the
records included instead of just one.</t>
<t> By forging a PIM Register-Stop message and setting the P-bit, an
attacker can trigger the use of PIM Packed Null-Register messages by a
DR, thus creating unnecessary churn in the network.</t>
</section>
<section anchor="sec9">
<name>IANA Considerations</name>
<t> IANA has assigned a Packing
Capability bit (0) in the PIM Register-Stop common header in the
"PIM Message Types" registry.</t>
<t> IANA has assigned a PIM
message type (13.0) for PIM Packed Null-Register in the "PIM
Message Types" registry. Flag bits 0-3 for this message type
are "Unassigned".</t>
<t> IANA has assigned a PIM
message type (13.1) for PIM Packed Register-Stop in the "PIM
Message Types" registry. The flag bits 0-3 for this message type
are "Unassigned". </t>
</section>
</middle>
<back>
<references anchor="norm-ref">
<name>Normative References</name>
</section> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.211
<section title="Security Considerations"> 9.xml"/>
<t> The Security Considerations from <xref target="RFC7 <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.817
761" /> apply to this document. In 4.xml"/>
particular, the effect of forging a PIM Packed Null-Register or <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.776
Register-Stop message would be amplified to all the records included instead 1.xml"/>
of just one. <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.461
</t> 0.xml"/>
<t> By forging a PIM Register-Stop message and setting th <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.943
e P-bit, 6.xml"/>
an attacker can trigger the use of PIM Packed Null-Register <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.344
messages by a DR thus creating unnecessary churn in the network. 6.xml"/>
</t> </references>
</section>
<section title="IANA Considerations">
<t> When this document is published, IANA is asked to ass <section anchor="ack" numbered="false" toc="default">
ign a Packing Capability bit (TBD1) in the PIM Register-Stop Common Header from <name>Acknowledgments</name>
the PIM Message Types registry. <t>The authors would like to thank <contact fullname="Stig Venaas"/>,
</t> <contact fullname="Alvaro Retana"/>, <contact fullname="Anish Peter"/>,
<t> When this document is published, IANA is asked to ass <contact fullname="Zheng Zhang"/>, and <contact fullname="Umesh Dudani"/>
ign a PIM message type (TBD2) for the PIM Packed Null-Register from the PIM Mess for their helpful comments on the document.</t>
age Types registry. The Flag Bits (0-3) for PIM message type (TBD2) are requeste </section>
d to be "Unassigned". </t>
<t> When this document is published, IANA is asked to ass
ign a PIM message type (TBD3) for the PIM Packed Register-Stop from the PIM Mess
age Types registry. The Flag Bits (0-3) for PIM message type (TBD3) are requeste
d to be "Unassigned". </t>
</section>
<section title="Acknowledgments">
<t>The authors would like to thank Stig Venaas, Alvaro Re
tana, Anish Peter, Zheng Zhang and Umesh Dudani for their helpful comments on th
e document.</t>
</section>
</middle>
<back>
<references title="Normative References">
<?rfc include='reference.RFC.2119' ?> </back>
<?rfc include='reference.RFC.8174' ?>
<?rfc include='reference.RFC.7761' ?>
<?rfc include='reference.RFC.4610' ?>
<?rfc include="reference.I-D.venaas-pim-rfc8736bis.xml"?>
<?rfc include='reference.RFC.3446' ?>
</references>
</back>
</rfc> </rfc>
 End of changes. 22 change blocks. 
325 lines changed or deleted 339 lines changed or added

This html diff was produced by rfcdiff 1.48.