RFC 9186: Fast Failover in Protocol Independent Multicast - Sparse Mode (PIM-SM) Using Bidirectional Forwarding Detection (BFD) for Multipoint Networks
- G. Mirsky,
- X. Ji
Abstract
This document specifies how Bidirectional Forwarding Detection (BFD) for multipoint networks
can provide sub-second failover for routers that participate in Protocol Independent Multicast - Sparse Mode (PIM-SM).
An extension to the PIM Hello message used to
bootstrap a point
Status of This Memo
This is an Internet Standards Track document.¶
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 7841.¶
Information about the current status of this document, any
errata, and how to provide feedback on it may be obtained at
https://
Copyright Notice
Copyright (c) 2022 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(https://
1. Introduction
Faster convergence in the control plane minimizes the periods of traffic loss due to the use of stale routing information, transient routing loops, and other situations that may negatively affect service data flow. Faster convergence in the control plane is beneficial to unicast and multicast routing protocols.¶
[RFC7761] is the current specification of the Protocol Independent Multicast - Sparse Mode (PIM-SM) for IPv4 and IPv6 networks. A conforming implementation 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, the node elected as the DR acts on behalf of directly connected hosts in the context of the PIM-SM protocol. Failure of the DR impacts the quality of the multicast services it provides to directly connected hosts because the default failure detection interval for PIM-SM routers is 105 seconds.¶
Bidirectional Forwarding Detection (BFD) [RFC5880] was originally defined to detect
a failure of a point-to-point (P2P) path, single hop [RFC5881], or multihop [RFC5883].
In some PIM-SM deployments, a P2P BFD can be used to detect a failure and enable faster failover.
[RFC8562] extends the BFD base specification [RFC5880] for multipoint and multicast
networks, which matches the deployment scenarios for PIM-SM over a LAN segment.
A BFD system in a point
1.1. Conventions Used in This Document
1.1.1. Terminology
This document uses terminology defined in [RFC5880], [RFC8562], and [RFC7761]. Familiarity with these specifications and the terminology used is expected.¶
1.1.2. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
2. BFD Discriminator PIM Hello Option
Figure 1 displays the new optional BFD Discriminator PIM Hello Option to bootstrap a tail of the P2MP BFD session:¶
where new fields are interpreted as:¶
- OptionType:
- 39¶
- OptionLength:
- MUST be set to 4.¶
- Head
Discriminator : - the 4-octet field MUST be included in the BFD Discriminator PIM-SM Hello Option. The value MUST NOT be zero. It equals the value of My Discriminator [RFC5880] allocated by the head.¶
If the value of the OptionLength field is not equal to 4, the BFD Discriminator PIM Hello Option
is considered malformed, and the receiver MUST stop processing PIM Hello Options.
If the value of the Head
2.1. Using P2MP BFD in PIM Router Monitoring
If the head is no longer serving the function that prompted it to be monitored, then it MUST cease including the BFD Discriminator PIM Hello Option in its PIM Hello message, and it SHOULD shut down the BFD session following the procedures described in [RFC8562], Section 5.9.¶
The head MUST create a BFD session of type MultipointHead [RFC8562]. Note that any PIM-SM router, regardless of its role, MAY become a head of a P2MP BFD session. To control the volume of BFD Control traffic on a shared media segment, an operator should carefully 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 PIM Hello messages.¶
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 tail receives a PIM Hello packet with the BFD Discriminator PIM Hello Option, the tail MAY create a P2MP BFD session of type MultipointTail, as defined in [RFC8562].¶
The node that includes the BFD Discriminator PIM Hello Option
transmits BFD Control packets periodically. For the tail to correctly
demultiplex BFD [RFC8562], the source
address and My Discriminator of the BFD packets MUST be the same
as the source address and the Head
If the tail detects a MultipointHead failure [RFC8562], it MUST delete the corresponding neighbor state and follow procedures defined in [RFC7761] for the DR and additional neighbor state deletion after the neighbor timeout expires.¶
If the head ceases to include the BFD Discriminator PIM Hello Option in its PIM Hello message, the tail SHOULD close the corresponding MultipointTail BFD session without affecting the PIM state in any way. Thus, the tail stops using BFD to monitor the head and reverts to the procedures defined in [RFC7761].¶
2.2. P2MP BFD in PIM DR Load Balancing
[RFC8775] specifies the PIM Designated Router Load-Balancing (DRLB) functionality.
Any PIM router that advertises the DR Load-Balancing Capability (DRLB-Cap) Hello Option can become the head of a P2MP BFD session,
as specified in Section 2.1.
The head router administrativel
2.3. Multipoint BFD Encapsulation
The MultipointHead of a P2MP BFD session when transmitting BFD Control packets:¶
3. IANA Considerations
IANA has allocated a new OptionType value in the "PIM-Hello Options" registry according to Table 1:¶
4. Security Considerations
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.¶
The security considerations discussed in [RFC5880], [RFC5881], [RFC7761], [RFC8562], and [RFC8775] apply to this document.¶
5. References
5.1. Normative References
- [RFC2119]
-
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10
.17487 , , <https:///RFC2119 www >..rfc -editor .org /info /rfc2119 - [RFC5880]
-
Katz, D. and D. Ward, "Bidirectional Forwarding Detection (BFD)", RFC 5880, DOI 10
.17487 , , <https:///RFC5880 www >..rfc -editor .org /info /rfc5880 - [RFC5881]
-
Katz, D. and D. Ward, "Bidirectional Forwarding Detection (BFD) for IPv4 and IPv6 (Single Hop)", RFC 5881, DOI 10
.17487 , , <https:///RFC5881 www >..rfc -editor .org /info /rfc5881 - [RFC7761]
-
Fenner, B., Handley, M., Holbrook, H., Kouvelas, I., Parekh, R., Zhang, Z., and L. Zheng, "Protocol Independent Multicast - Sparse Mode (PIM-SM): Protocol Specification (Revised)", STD 83, RFC 7761, DOI 10
.17487 , , <https:///RFC7761 www >..rfc -editor .org /info /rfc7761 - [RFC8174]
-
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10
.17487 , , <https:///RFC8174 www >..rfc -editor .org /info /rfc8174 - [RFC8562]
-
Katz, D., Ward, D., Pallagatti, S., Ed., and G. Mirsky, Ed., "Bidirectional Forwarding Detection (BFD) for Multipoint Networks", RFC 8562, DOI 10
.17487 , , <https:///RFC8562 www >..rfc -editor .org /info /rfc8562 - [RFC8775]
-
Cai, Y., Ou, H., Vallepalli, S., Mishra, M., Venaas, S., and A. Green, "PIM Designated Router Load Balancing", RFC 8775, DOI 10
.17487 , , <https:///RFC8775 www >..rfc -editor .org /info /rfc8775
5.2. Informative References
- [RFC5883]
-
Katz, D. and D. Ward, "Bidirectional Forwarding Detection (BFD) for Multihop Paths", RFC 5883, DOI 10
.17487 , , <https:///RFC5883 www >..rfc -editor .org /info /rfc5883
Acknowledgments
The authors cannot say enough to express their appreciation of the comments and suggestions that were received from Stig Venaas. The authors also greatly appreciate the comments and suggestions by Alvaro Retana that improved the clarity of this document.¶