rfc9186xml2.original.xml | rfc9186.xml | |||
---|---|---|---|---|
<?xml version="1.0" encoding="US-ASCII"?> | <?xml version="1.0" encoding="UTF-8"?> | |||
<!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" ipr="trust200902" docName="draft-ietf-pim-bfd-p2mp-use-case- | ||||
10"> | ||||
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?> | ||||
<front> | <!DOCTYPE rfc [ | |||
<title abbrev="BFD P2MP Use in PIM-SM">Fast Failover in Protocol Independ | <!ENTITY nbsp " "> | |||
ent Multicast - Sparse Mode (PIM-SM) Using Bidirectional Forwarding Detection (B | <!ENTITY zwsp "​"> | |||
FD) for Multipoint Networks</title> | <!ENTITY nbhy "‑"> | |||
<!ENTITY wj "⁠"> | ||||
]> | ||||
<author initials="G." surname="Mirsky" fullname="Greg Mirsky"> | <rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft | |||
<organization>Ericsson</organization> | -ietf-pim-bfd-p2mp-use-case-10" number="9186" obsoletes="" updates="" submission | |||
<address> | Type="IETF" category="std" consensus="true" xml:lang="en" tocInclude="true" tocD | |||
<email>gregimirsky@gmail.com</email> | epth="3" symRefs="true" sortRefs="true" version="3"> | |||
</address> | ||||
</author> | ||||
<author initials="J" surname="Xiaoli" fullname="Ji Xiaoli"> | <front> | |||
<title abbrev="BFD P2MP Use in PIM-SM">Fast Failover in Protocol Independent | ||||
Multicast - Sparse Mode (PIM-SM) Using Bidirectional Forwarding Detection (BFD) | ||||
for Multipoint Networks</title> | ||||
<seriesInfo name="RFC" value="9186"/> | ||||
<author initials="G." surname="Mirsky" fullname="Greg Mirsky"> | ||||
<organization>Ericsson</organization> | ||||
<address> | ||||
<email>gregimirsky@gmail.com</email> | ||||
</address> | ||||
</author> | ||||
<author initials="X." surname="Ji" fullname="Xiaoli Ji"> | ||||
<organization>ZTE Corporation</organization> | <organization>ZTE Corporation</organization> | |||
<address> | <address> | |||
<postal> | <postal> | |||
<street>No.50 Software Avenue, Yuhuatai District</street> | <extaddr>Yuhuatai District</extaddr> | |||
<region>Nanjing</region> | <street>No. 50 Software Avenue</street> | |||
<country>China</country> | <city>Nanjing</city> | |||
</postal> | <country>China</country> | |||
<email>ji.xiaoli@zte.com.cn</email> | </postal> | |||
<email>ji.xiaoli@zte.com.cn</email> | ||||
</address> | </address> | |||
</author> | </author> | |||
<date year="2022" month="January" /> | ||||
<date year="2021"/> | ||||
<area>Routing</area> | <area>Routing</area> | |||
<workgroup>PIM Working Group</workgroup> | <workgroup>PIM Working Group</workgroup> | |||
<keyword>PIM-SM</keyword> | ||||
<keyword>Internet-Draft</keyword> | <keyword>BFD</keyword> | |||
<abstract> | ||||
<keyword>PIM-SM</keyword> | <t> | |||
This document specifies how Bidirectional Forwarding Detection (BFD) for | ||||
<keyword>BFD </keyword> | multipoint networks | |||
<abstract> | ||||
<t> | ||||
This document specifies how Bidirectional Forwarding Detection for multip | ||||
oint networks | ||||
can provide sub-second failover for routers that participate in Protocol Independent Multicast - Sparse Mode (PIM-SM). | can provide sub-second failover for routers that participate in Protocol Independent Multicast - Sparse Mode (PIM-SM). | |||
<!-- | ||||
over shared-media segment with the sub-second convergence of the Designat | ||||
ed Router and defines the extension to bootstrap point-to-multipoint BFD se | ||||
ssion. | ||||
--> | ||||
An extension to the PIM Hello message used to | An extension to the PIM Hello message used to | |||
bootstrap a point-to-multipoint BFD session is also defined in this | bootstrap a point-to-multipoint BFD session is also defined in this | |||
document. | document. | |||
</t> | </t> | |||
</abstract> | </abstract> | |||
</front> | </front> | |||
<middle> | ||||
<middle> | <section anchor="intro" numbered="true" toc="default"> | |||
<section anchor="intro" title="Introduction"> | <name>Introduction</name> | |||
<t> | <t> | |||
Faster convergence in the control plane minimizes the periods of | Faster convergence in the control plane minimizes the periods of | |||
traffic blackholing, transient routing loops, and other situations | traffic loss due to the use of stale routing information, transient routing loop s, and other situations | |||
that may negatively affect service data flow. Faster convergence | that may negatively affect service data flow. Faster convergence | |||
in the control plane is beneficial to unicast and multicast routing | in the control plane is beneficial to unicast and multicast routing | |||
protocols. | protocols. | |||
</t> | </t> | |||
<t> | <t> | |||
<xref target="RFC7761"/> is the current specification of the Protocol Independe | <xref target="RFC7761" format="default"/> is the current specification of the P | |||
nt Multicast - Sparse Mode (PIM-SM) | rotocol Independent | |||
for IPv4 and IPv6 networks. A conforming implementation of PIM-SM elects a Desi | Multicast - Sparse Mode (PIM-SM) for IPv4 and IPv6 networks. A conforming imp | |||
gnated Router (DR) | lementation of PIM-SM elects a Designated Router (DR) | |||
on each PIM-SM interface. When a group of PIM-SM nodes is connected to a shared media segment, e.g., Ethernet, | on each PIM-SM interface. When a group of PIM-SM nodes is connected to a shared media segment, e.g., Ethernet, | |||
the node elected as DR acts on behalf of directly connected hosts in the contex t of the PIM-SM protocol. | the node elected as the DR acts on behalf of directly connected hosts in the co ntext of the PIM-SM protocol. | |||
Failure of the DR impacts the quality of the multicast services it | Failure of the DR impacts the quality of the multicast services it | |||
provides to directly connected hosts because the default failure detection inter val | provides to directly connected hosts because the default failure detection inter val | |||
for PIM-SM routers is 105 seconds. | for PIM-SM routers is 105 seconds. | |||
</t> | </t> | |||
<t> | <t> | |||
Bidirectional Forwarding Detection (BFD) <xref target="RFC5880"/> was originall | Bidirectional Forwarding Detection (BFD) <xref target="RFC5880" format="default | |||
y defined to detect | "/> was originally defined to detect | |||
a failure of a point-to-point (p2p) path, single-hop <xref target="RFC5881"/> o | a failure of a point-to-point (P2P) path, single hop <xref target="RFC5881" for | |||
r multihop <xref target="RFC5883"/>. | mat="default"/>, or multihop <xref target="RFC5883" format="default"/>. | |||
In some PIM-SM deployments, a p2p BFD can be used to detect a failure and enabl | In some PIM-SM deployments, a P2P BFD can be used to detect a failure and enabl | |||
e faster failover. | e faster failover. | |||
<xref target="RFC8562"/> extends the BFD base specification <xref target="RFC58 | ||||
80"/> for multipoint and multicast | <xref target="RFC8562" format="default"/> extends the BFD base specification <x | |||
ref target="RFC5880" format="default"/> for multipoint and multicast | ||||
networks, which matches the deployment scenarios for PIM-SM over a LAN segment. | networks, which matches the deployment scenarios for PIM-SM over a LAN segment. | |||
<!-- Among specific characteristics of p2mp BFD that particularly benefit PIM-S | A BFD system in a point-to-multipoint (P2MP) environment that transmits BFD Con | |||
M over a LAN segment is | trol messages using the BFD Demand mode <xref target="RFC5880" format="default"/ | |||
a faster transition to the Up state of the p2mp BFD session due to avoidance of | > creates less BFD state | |||
the three-way handshake required in p2p BFD <xref target="RFC5880"/>. --> | than the Asynchronous mode. P2MP BFD can enable | |||
A BFD system in p2mp environment that transmits BFD Control messages using the | ||||
BFD Demand mode <xref target="RFC5880"/> creates less BFD state | ||||
than the Asynchronous mode. Point-to-multipoint (p2mp) BFD can enable | ||||
faster detection of PIM-SM router failure compared to PIM-SM without BFD and | faster detection of PIM-SM router failure compared to PIM-SM without BFD and | |||
thus minimize multicast service disruption. The monitored PIM-SM router acts as | thus minimizes multicast service disruption. The monitored PIM-SM router acts a | |||
the head and other routers as tails of a p2mp BFD | s the head and other routers act as tails of a P2MP BFD | |||
session. This document defines the monitoring of a PIM-SM router using p2mp BFD. | session. This document defines the monitoring of a PIM-SM router using P2MP BFD. | |||
This document also defines the extension to PIM-SM <xref target="RFC7761"/> | This document also defines the extension to PIM-SM <xref target="RFC7761" format | |||
to bootstrap a PIM-SM router to join in p2mp BFD session over shared media segm | ="default"/> | |||
ent. | to bootstrap a PIM-SM router to join in the P2MP BFD session over a shared medi | |||
</t> | a segment. | |||
</t> | ||||
<section title="Conventions used in this document"> | <section numbered="true" toc="default"> | |||
<section title="Terminology"> | <name>Conventions Used in This Document</name> | |||
<t> | <section numbered="true" toc="default"> | |||
This document uses terminology defined in <xref target="RFC5880"/>, <xref target | <name>Terminology</name> | |||
="RFC8562"/>, | <t> | |||
and <xref target="RFC7761"/>. Familiarity with these specifications and the term | This document uses terminology defined in <xref target="RFC5880" format="default | |||
inology used | "/>, <xref target="RFC8562" format="default"/>, | |||
and <xref target="RFC7761" format="default"/>. Familiarity with these specificat | ||||
ions and the terminology used | ||||
is expected. | is expected. | |||
</t> | </t> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | ||||
<section title="Requirements Language"> | <name>Requirements Language</name> | |||
<t> | <t> | |||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL | The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQU | |||
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", | IRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL | |||
"MAY", and "OPTIONAL" in this document are to be interpreted as | NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14> | |||
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> | RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", | |||
when, and only when, they appear in all capitals, as shown here. | "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to | |||
</t> | be interpreted as | |||
</section> | described in BCP 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> | |||
<section anchor="bfd-discriminatorpim-hello-sec" numbered="true" toc="default"> | ||||
<!-- | <name>BFD Discriminator PIM Hello Option</name> | |||
<section anchor="problem-statement" title="Problem Statement"> | <t> | |||
<t> | <xref target="tlv-p2mp-bfd-boot-fig" format="default"/> displays the new option | |||
<xref target="RFC7761"/> does not provide a method for fast, e.g., sub-second, f | al | |||
ailure detection of a neighbor PIM-SM router. | BFD Discriminator PIM Hello Option | |||
BFD already has many implementations based on HW that are capable | to bootstrap a tail of the P2MP BFD session: | |||
of supporting multiple sub-second sessions concurrently. | </t> | |||
</t> | <figure anchor="tlv-p2mp-bfd-boot-fig"> | |||
</section> | <name>BFD Discriminator PIM Hello Option</name> | |||
<section anchor="bfd-discriminatorpim-hello-sec" title="BFD Discriminator PIM He | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
llo Option"> | ||||
<t> | ||||
<xref target="tlv-p2mp-bfd-boot-fig"/> displays the new optional | ||||
BFD Discriminator PIM Hello option | ||||
to bootstrap a tail of the p2mp BFD session. | ||||
</t> | ||||
<t> | ||||
<figure align="left" anchor="tlv-p2mp-bfd-boot-fig" title="BFD Discrim | ||||
inator PIM Hello Option"> | ||||
<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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| OptionType | OptionLength | | | OptionType | OptionLength | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| HeadDiscriminator | | | HeadDiscriminator | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
]]></artwork> | ]]></artwork> | |||
</figure> | </figure> | |||
<t> | ||||
</t> | ||||
<t> | ||||
where new fields are interpreted as: | where new fields are interpreted as: | |||
<list> | </t> | |||
<t>OptionType: TBA.</t> | <dl> | |||
<t>OptionLength: MUST be set to 4.</t> | <dt>OptionType:</dt><dd>39</dd> | |||
<t>HeadDiscriminator: the four-octet field MUST be included in the BFD Discrimin | <dt>OptionLength:</dt><dd><bcp14>MUST</bcp14> be set to 4.</dd> | |||
ator PIM-SM Hello option. | <dt>HeadDiscriminator:</dt><dd> the 4-octet field <bcp14>MUST</bcp14> be | |||
The value MUST NOT be zero. It equals the value of My Discriminator | included in the BFD Discriminator PIM-SM Hello Option. | |||
(<xref target="RFC5880"/>) allocated by the head. </t> | The value <bcp14>MUST NOT</bcp14> be zero. It equals the value of My Discriminat | |||
</list> | or | |||
If the value of the OptionLength field is not equal to 4, the BFD Discriminator | <xref target="RFC5880" format="default"/> allocated by the head. </dd> | |||
PIM Hello option | </dl> | |||
is considered malformed, and the receiver MUST stop processing PIM Hello options | <t> | |||
. | If the value of the OptionLength field is not equal to 4, the BFD Discriminator | |||
If the value of the HeadDiscriminator field equals zero, then the BFD Discrimina | PIM Hello Option | |||
tor PIM Hello option | is considered malformed, and the receiver <bcp14>MUST</bcp14> stop processing PI | |||
MUST be considered invalid, and the receiver MUST ignore it. | M Hello Options. | |||
The receiver SHOULD log a notification regarding the malformed or invalid BFD Di | If the value of the HeadDiscriminator field equals zero, then the BFD Discrimina | |||
scriminator Hello option | tor PIM Hello Option | |||
<bcp14>MUST</bcp14> be considered invalid, and the receiver <bcp14>MUST</bcp14> | ||||
ignore it. | ||||
The receiver <bcp14>SHOULD</bcp14> log a notification regarding the malformed or | ||||
invalid BFD Discriminator Hello Option | ||||
under the control of a throttling logging mechanism. | under the control of a throttling logging mechanism. | |||
</t> | </t> | |||
<section anchor="pim-dr-p2mp-bfd-sec" numbered="true" toc="default"> | ||||
<section anchor="pim-dr-p2mp-bfd-sec" title="Using P2MP BFD in PIM Router Monito | <name>Using P2MP BFD in PIM Router Monitoring</name> | |||
ring"> | <t> | |||
<t> | ||||
If the head is no longer serving the function that prompted it | If the head is no longer serving the function that prompted it | |||
to be monitored, then it MUST cease including the BFD Discriminator | to be monitored, then it <bcp14>MUST</bcp14> cease including the BFD Discriminat | |||
PIM Hello option in its PIM-Hello message, and it SHOULD shut down | or | |||
the BFD session following the procedures described in Section 5.9 <xref target=" | PIM Hello Option in its PIM Hello message, and it <bcp14>SHOULD</bcp14> shut dow | |||
RFC8562"/>. | n | |||
the BFD session following the procedures described in <xref target="RFC8562" sec | ||||
tionFormat="comma" section="5.9"/>. | ||||
</t> | </t> | |||
<t> | <t> | |||
The head MUST create a BFD session of type MultipointHead <xref target="RFC8562 | The head <bcp14>MUST</bcp14> create a BFD session of type MultipointHead <xref | |||
"/>. | target="RFC8562" format="default"/>. | |||
Note that any PIM-SM router, regardless of its role, MAY become a head of a p2m | Note that any PIM-SM router, regardless of its role, <bcp14>MAY</bcp14> become | |||
p BFD session. | a head of a P2MP BFD session. | |||
To control the volume of BFD control traffic on a shared media segment, an oper | To control the volume of BFD Control traffic on a shared media segment, an oper | |||
ator should carefully | ator should carefully | |||
select PIM-SM routers configured as a head of a p2mp BFD session. | select PIM-SM routers configured as a head of a P2MP BFD session. | |||
The head MUST include the BFD Discriminator PIM Hello option in its | The head <bcp14>MUST</bcp14> include the BFD Discriminator PIM Hello Option in i | |||
ts | ||||
PIM Hello messages. | PIM Hello messages. | |||
</t> | </t> | |||
<t> | <t> | |||
A PIM-SM router that is configured to monitor the head by | A PIM-SM router that is configured to monitor the head by | |||
using p2mp BFD is referred to throughout this document as a "tail". When such a | using P2MP BFD is referred to throughout this document as a "tail". When such a | |||
tail receives a PIM-Hello packet with the BFD Discriminator PIM Hello option, th | tail receives a PIM Hello packet with the BFD Discriminator PIM Hello Option, th | |||
e tail | e tail | |||
MAY create a p2mp BFD session of type MultipointTail, as defined in <xref target | <bcp14>MAY</bcp14> create a P2MP BFD session of type MultipointTail, as defined | |||
="RFC8562"/>. | in <xref target="RFC8562" format="default"/>. | |||
</t> | </t> | |||
<t> | <t> | |||
The node that includes the BFD Discriminator PIM Hello option | The node that includes the BFD Discriminator PIM Hello Option | |||
transmits BFD Control packets periodically. For the tail to correctly | transmits BFD Control packets periodically. For the tail to correctly | |||
demultiplex BFD <xref target="RFC8562"/>, the source | demultiplex BFD <xref target="RFC8562" format="default"/>, the source | |||
address and My Discriminator of the BFD packets MUST be the same | address and My Discriminator of the BFD packets <bcp14>MUST</bcp14> be the same | |||
as the source address and the HeadDiscriminator, respectively, of the PIM Hello | as the source address and the HeadDiscriminator, respectively, of the PIM Hello | |||
message. If that is not the case, | message. If that is not the case, | |||
the tail BFD node would not be able to monitor the state of the PIM-SM node, | the tail BFD node would not be able to monitor the state of the PIM-SM node -- | |||
that is, the head of the p2mp BFD session, | that is, the head of the P2MP BFD session -- though the regular PIM-SM mechanism | |||
though the regular PIM-SM mechanisms remain fully operational. | s remain fully operational. | |||
</t> | </t> | |||
<t> | <t> | |||
If the tail detects a MultipointHead failure <xref target="RFC8562"/>, | If the tail detects a MultipointHead failure <xref target="RFC8562" format="defa | |||
it MUST delete the corresponding neighbor state and follow procedures defined i | ult"/>, | |||
n <xref target="RFC7761"/> | it <bcp14>MUST</bcp14> delete the corresponding neighbor state and follow proce | |||
dures defined in <xref target="RFC7761" format="default"/> | ||||
for the DR and additional neighbor state deletion after the neighbor timeout ex pires. | for the DR and additional neighbor state deletion after the neighbor timeout ex pires. | |||
</t> | </t> | |||
<t> | <t> | |||
If the head ceases to include the BFD Discriminator PIM Hello option in its PIM | If the head ceases to include the BFD Discriminator PIM Hello Option in its PIM | |||
-Hello message, | Hello message, | |||
tails SHOULD close the corresponding MultipointTail BFD session without affecti | the tail <bcp14>SHOULD</bcp14> close the corresponding MultipointTail BFD sessi | |||
ng the PIM state in any way. | on without affecting the PIM state in any way. | |||
Thus, the tail stops using BFD to monitor | Thus, the tail stops using BFD to monitor | |||
the head and reverts to the procedures defined in <xref target="RFC7761"/>. | the head and reverts to the procedures defined in <xref target="RFC7761" format | |||
</t> | ="default"/>. | |||
</section> | </t> | |||
</section> | ||||
<section anchor="p2mp-bfd-pim-drlb-sec" title="P2MP BFD in PIM DR Load Balancin | <section anchor="p2mp-bfd-pim-drlb-sec" numbered="true" toc="default"> | |||
g"> | <name>P2MP BFD in PIM DR Load Balancing</name> | |||
<t> | <t> | |||
<xref target="RFC8775"/> specifies the PIM Designated Router Load Balancing (DRL | <xref target="RFC8775" format="default"/> specifies the PIM Designated Router Lo | |||
B) functionality. | ad-Balancing (DRLB) functionality. | |||
Any PIM router that advertises the DRLB-Cap Hello Option can become the head of | Any PIM router that advertises the DR Load-Balancing Capability (DRLB-Cap) Hello | |||
a p2mp BFD session, | Option can become the head of a P2MP BFD session, | |||
as specified in <xref target="pim-dr-p2mp-bfd-sec"/>. | as specified in <xref target="pim-dr-p2mp-bfd-sec" format="default"/>. | |||
The head router administratively sets the bfd.SessionState to Up in | The head router administratively sets the bfd.SessionState to Up in | |||
the MultipointHead session <xref target="RFC8562"/> only if it is a Group Design | the MultipointHead session <xref target="RFC8562" format="default"/> only if it | |||
ated | is a Group Designated | |||
Router (GDR) Candidate, as specified in Sections 5.5 and 5.6 of | Router (GDR) Candidate, as specified in Sections <xref target="RFC8775" section= | |||
<xref target="RFC8775"/>. If the router is no longer the GDR, then it MUST shut | "5.5" sectionFormat="bare" /> and | |||
down | <xref target="RFC8775" section="5.6" sectionFormat="bare" /> of | |||
following the procedures described in Section 5.9 <xref target="RFC8562"/>. | <xref target="RFC8775"/>. If the router is no longer the GDR, then it <bcp14>MUS | |||
For each GDR Candidate that includes | T</bcp14> shut down | |||
BFD Discriminator option in its PIM Hello, the PIM DR MUST create a MultipointT | following the procedures described in <xref target="RFC8562" sectionFormat="comm | |||
ail session <xref target="RFC8562"/>. PIM DR | a" section="5.9"/>. | |||
For each GDR Candidate that includes the | ||||
BFD Discriminator Option in its PIM Hello, the PIM DR <bcp14>MUST</bcp14> creat | ||||
e a MultipointTail session <xref target="RFC8562" format="default"/>. PIM DR | ||||
demultiplexes BFD sessions based on the value of the My Discriminator field and the source IP address. | demultiplexes BFD sessions based on the value of the My Discriminator field and the source IP address. | |||
If PIM DR detects a failure of one of the sessions, it MUST remove that router from | If PIM DR detects a failure of one of the sessions, it <bcp14>MUST</bcp14> remo ve that router from | |||
the GDR Candidate list and immediately transmit a new DRLB-List option. | the GDR Candidate list and immediately transmit a new DRLB-List option. | |||
</t> | </t> | |||
</section> | </section> | |||
<section anchor="p2mp-bfd-encap" numbered="true" toc="default"> | ||||
<section anchor="p2mp-bfd-encap" title="Multipoint BFD Encapsulation"> | <name>Multipoint BFD Encapsulation</name> | |||
<t> | <t> | |||
The MultipointHead of a p2mp BFD session when transmitting BFD Control packets: | The MultipointHead of a P2MP BFD session when transmitting BFD Control packets: | |||
<list> | ||||
<t>MUST set TTL or Hop Limit value to 255 (Section 5 <xref target="RFC5881"/>). | ||||
Similarly, all received BFD Control packets that are | ||||
demultiplexed to the session MUST be discarded if the received TTL or | ||||
Hop Limit is not equal to 255;</t> | ||||
<t>MUST use the group address ALL-PIM-ROUTERS ('224.0.0.13' for IPv4 and 'ff02:: | ||||
d' for IPv6) as destination IP address</t> | ||||
</list> | ||||
</t> | </t> | |||
</section> | <ul empty="false" spacing="normal"> | |||
<li><bcp14>MUST</bcp14> set the TTL or Hop Limit value to 255 (<xref t | ||||
</section> | arget="RFC5881" sectionFormat="comma" section="5"/>). Similarly, all received BF | |||
D Control packets that are | ||||
<section anchor="iana-consider" title="IANA Considerations"> | demultiplexed to the session <bcp14>MUST</bcp14> be discarded if the received | |||
<t> | TTL or | |||
IANA is requested to allocate a new OptionType value from PIM-Hello Options regi | Hop Limit is not equal to 255, and</li> | |||
stry according to: | <li><bcp14>MUST</bcp14> use the group address ALL-PIM-ROUTERS ("224.0. | |||
</t> | 0.13" for IPv4 and "ff02::d" for IPv6) as the destination IP address.</li> | |||
<texttable anchor="bfd-disc-pim-alloc" title="BFD Discriminator option typ | </ul> | |||
e"> | </section> | |||
<ttcol align="left">Value</ttcol> | ||||
<ttcol align="left">Length</ttcol> | ||||
<ttcol align="left">Name</ttcol> | ||||
<ttcol align="left">Reference</ttcol> | ||||
<c>TBA</c> | ||||
<c>4</c> | ||||
<c>BFD Discriminator Option</c> | ||||
<c>This document</c> | ||||
</texttable> | ||||
</section> | </section> | |||
<section anchor="iana-consider" numbered="true" toc="default"> | ||||
<section anchor="security" title="Security Considerations"> | <name>IANA Considerations</name> | |||
<t> | <t> | |||
This document defines a way to accelerate detecting a failure that affects PIM | IANA has allocated a new OptionType value in the "PIM-Hello Options" registry ac | |||
functionality by using BFD. The operation of either protocol is not changed. | cording to <xref target="bfd-disc-pim-alloc"/>: | |||
</t> | </t> | |||
<t> | <table anchor="bfd-disc-pim-alloc" align="center"> | |||
The security considerations discussed in <xref target="RFC7761"/>, <xref target | <name>BFD Discriminator Option Type</name> | |||
="RFC5880"/>, <xref target="RFC5881"/>, | <thead> | |||
<xref target="RFC8562"/>, and <xref target="RFC8775"/> apply to this document. | <tr> | |||
</t> | <th align="left">Value</th> | |||
<!-- | <th align="left">Length</th> | |||
<t> | <th align="left">Name</th> | |||
PIM-SM link-local messages can be authenticated using various mechanisms, a | <th align="left">Reference</th> | |||
s described in Section 6.3 <xref target="RFC7761"/>. | </tr> | |||
Authentication of BFD Control messages defined in Section 6.7 <xref target= | </thead> | |||
"RFC5880"/>. Each protocol may use authentication of its messages | <tbody> | |||
independently of the mode used by the other protocol. | <tr> | |||
</t> | <td align="left">39</td> | |||
--> | <td align="left">4</td> | |||
<!-- | <td align="left">BFD Discriminator Option</td> | |||
<t> | <td align="left">RFC 9186</td> | |||
An implementation that supports this specification SHOULD use a mechanism | </tr> | |||
to | </tbody> | |||
control the maximum number of BFD sessions that can be active at the | </table> | |||
same time. | </section> | |||
</t> | <section anchor="security" numbered="true" toc="default"> | |||
--> | <name>Security Considerations</name> | |||
<t> | ||||
This document defines a way to accelerate detection of a failure that affects | ||||
PIM functionality by using BFD. The operation of either protocol is not changed. | ||||
</t> | ||||
<t> | ||||
The security considerations discussed in <xref target="RFC5880" format="default | ||||
"/>, <xref target="RFC5881" format="default"/>, <xref target="RFC7761" format="d | ||||
efault"/>, <xref target="RFC8562" format="default"/>, and <xref target="RFC8775" | ||||
format="default"/> apply to this document. | ||||
</t> | ||||
</section> | </section> | |||
<section title="Acknowledgments"> | ||||
<t> | ||||
The authors cannot say enough to express their appreciation of the comm | ||||
ents and suggestions we received from Stig Venaas. | ||||
The authors greatly appreciate the comments and suggestions by Alvaro R | ||||
etana that improved the clarity of this document. | ||||
</t> | ||||
</section> | ||||
</middle> | </middle> | |||
<back> | ||||
<back> | <references> | |||
<name>References</name> | ||||
<references title="Normative References"> | <references> | |||
<name>Normative References</name> | ||||
<?rfc include="reference.RFC.2119"?> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<?rfc include="reference.RFC.8174"?> | FC.2119.xml"/> | |||
<?rfc include="reference.RFC.5880"?> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<?rfc include="reference.RFC.5881"?> | FC.8174.xml"/> | |||
<?rfc include="reference.RFC.7761"?> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
FC.5880.xml"/> | ||||
<?rfc include="reference.RFC.8562"?> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<!-- | FC.5881.xml"/> | |||
<?rfc include="reference.I-D.ietf-pim-dr-improvement"?> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<?rfc include="reference.RFC.8775"?> | FC.7761.xml"/> | |||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.8562.xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.87 | ||||
75.xml"/> | ||||
</references> | ||||
<references> | ||||
<name>Informative References</name> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.5883.xml"/> | ||||
</references> | </references> | |||
<references title="Informative References"> | ||||
<?rfc include="reference.RFC.5883"?> | ||||
<!-- | ||||
<?rfc include="reference.I-D.mankamana-pim-bdr"?> | ||||
--> | ||||
</references> | </references> | |||
<section numbered="false" toc="default"> | ||||
</back> | <name>Acknowledgments</name> | |||
</rfc> | <t> | |||
The authors cannot say enough to express their appreciation of the comm | ||||
ents and suggestions that were received from <contact fullname="Stig Venaas"/>. | ||||
The authors also greatly appreciate the comments and suggestions by <co | ||||
ntact fullname="Alvaro Retana"/> that improved the clarity of this document. | ||||
</t> | ||||
</section> | ||||
</back> | ||||
</rfc> | ||||
End of changes. 38 change blocks. | ||||
314 lines changed or deleted | 281 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |