rfc9780v2.txt   rfc9780.txt 
skipping to change at line 100 skipping to change at line 100
[RFC8562] added two BFD session types: MultipointHead and [RFC8562] added two BFD session types: MultipointHead and
MultipointTail. Throughout this document, MultipointHead and MultipointTail. Throughout this document, MultipointHead and
MultipointTail refer to the value to which the bfd.SessionType is set MultipointTail refer to the value to which the bfd.SessionType is set
on a BFD endpoint. on a BFD endpoint.
This document describes procedures for using such modes of the BFD This document describes procedures for using such modes of the BFD
protocol to detect data plane failures in point-to-multipoint (P2MP) protocol to detect data plane failures in point-to-multipoint (P2MP)
MPLS Label Switched Paths (LSPs) and Segment Routing (SR) point-to- MPLS Label Switched Paths (LSPs) and Segment Routing (SR) point-to-
multipoint policies with an SR over MPLS (SR-MPLS) data plane. multipoint policies with an SR over MPLS (SR-MPLS) data plane.
The document also describes the applicability of LSP Ping and out-of- The document also describes the applicability of LSP Ping (an in-band
band solutions to bootstrap a BFD session in this environment. solution) and out-of-band solutions to bootstrap a BFD session in
this environment.
Historically, an address in the IPv6-mapped IPv4 loopback range Historically, an address in the IPv6-mapped IPv4 loopback range
::ffff:127.0.0.1/128 was mandated, although functionally, an IPv6 ::ffff:127.0.0.1/128 was mandated, although functionally, an IPv6
address from that range is not analogous to its IPv4 counterpart. address from that range is not analogous to its IPv4 counterpart.
Furthermore, using the loopback address as the destination address, Furthermore, using the loopback address as the destination address,
even for an inner IP encapsulation of a tunneled packet, violates even for an inner IP encapsulation of a tunneled packet, violates
Section 2.5.3 of [RFC4291]. Hence, IANA has allocated 100:0:0:1::/64 Section 2.5.3 of [RFC4291]. Hence, IANA has allocated 100:0:0:1::/64
as a new Dummy IPv6 Prefix (Section 7.1) for destination IPv6 as a new Dummy IPv6 Prefix (Section 7.1) for destination IPv6
addresses used for IP/UDP encapsulation of management, control, and addresses used for IP/UDP encapsulation of management, control, and
OAM (Operations, Administration, and Maintenance) packets. A source- OAM (Operations, Administration, and Maintenance) packets. A source-
skipping to change at line 174 skipping to change at line 175
multipoint (P2MP) BFD session. Because the head doesn't receive any multipoint (P2MP) BFD session. Because the head doesn't receive any
BFD Control packets from a tail, the head of the P2MP BFD session BFD Control packets from a tail, the head of the P2MP BFD session
transmits all BFD Control packets with the value of the Your transmits all BFD Control packets with the value of the Your
Discriminator field set to zero. As a result, a tail cannot Discriminator field set to zero. As a result, a tail cannot
demultiplex BFD sessions using Your Discriminator, as defined in demultiplex BFD sessions using Your Discriminator, as defined in
[RFC5880]. To demultiplex BFD sessions, [RFC8562] requires that the [RFC5880]. To demultiplex BFD sessions, [RFC8562] requires that the
tail use the source IP address, My Discriminator, and the identity of tail use the source IP address, My Discriminator, and the identity of
the multipoint tree from which the BFD Control packet was received. the multipoint tree from which the BFD Control packet was received.
If the BFD Control packet is encapsulated in IP/UDP, then the source If the BFD Control packet is encapsulated in IP/UDP, then the source
IP address MUST be used to demultiplex the received BFD Control IP address MUST be used to demultiplex the received BFD Control
packet as described in Section 3.1. The non-IP encapsulation case is packet as described in Section 5.7 of [RFC8562]. The non-IP
described in Section 3.2. encapsulation case is described in Section 3.2.
3.1. IP Encapsulation of Multipoint BFD 3.1. IP Encapsulation of Multipoint BFD
[RFC8562] defines IP/UDP encapsulation for multipoint BFD over P2MP [RFC8562] defines IP/UDP encapsulation for multipoint BFD over P2MP
MPLS LSP. This document updates Section 5.8 of [RFC8562] regarding MPLS LSP. This document updates Section 5.8 of [RFC8562] regarding
the selection of the IPv6 destination address as follows: the selection of the IPv6 destination address as follows:
* The sender of an MPLS echo request SHOULD use an address from the * The sender of an MPLS echo request SHOULD use an address from the
Dummy IPv6 Prefix address block 100:0:0:1::/64 (see Section 7.1). Dummy IPv6 Prefix address block 100:0:0:1::/64 (see Section 7.1).
* The sender of an MPLS echo request MAY select the IPv6 destination * The sender of an MPLS echo request MAY select the IPv6 destination
address from the ::ffff:7f00/104 range. address from the ::ffff:7f00/104 range.
Section 1.2 of [RFC6790] lists several advantages of generating the Section 1.2 of [RFC6790] lists several advantages of generating the
entropy value by an ingress Label Switching Router (LSR) compared to entropy value by an ingress Label Switching Router (LSR) compared to
when a transit LSR infers entropy using the information in the MPLS when a transit LSR infers entropy using the information in the MPLS
label stack or payload. This specification further clarifies that: label stack or payload. This specification further clarifies the
following if multiple alternative paths for the given P2MP LSP
Forwarding Equivalence Class (FEC) exist:
* if multiple alternative paths for the given P2MP LSP Forwarding * The MultipointHead SHOULD use the Entropy Label [RFC6790] used for
Equivalence Class (FEC) exist, the MultipointHead SHOULD use the LSP Ping [RFC8029] to exercise those particular alternative paths;
Entropy Label [RFC6790] used for LSP Ping [RFC8029] to exercise or
those particular alternative paths;
* or the MultipointHead MAY use the UDP port number to possibly * The MultipointHead MAY use the UDP port number to possibly
exercise those particular alternate paths. exercise those particular alternate paths.
3.2. Non-IP Encapsulation of Multipoint BFD 3.2. Non-IP Encapsulation of Multipoint BFD
In some environments, the overhead of extra IP/UDP encapsulations may In some environments, the overhead of extra IP/UDP encapsulations may
be considered burdensome, which makes the use of more compact Generic be considered burdensome, which makes the use of more compact Generic
Associated Channel (G-ACh) [RFC5586] encapsulation attractive. Also, Associated Channel (G-ACh) [RFC5586] encapsulation attractive. Also,
the validation of the IP/UDP encapsulation of a BFD Control packet in the validation of the IP/UDP encapsulation of a BFD Control packet in
a P2MP BFD session may fail because of a problem related to neither a P2MP BFD session may fail because of a problem related to neither
the MPLS label stack nor BFD. Avoiding unnecessary encapsulation of the MPLS label stack nor BFD. Avoiding unnecessary encapsulation of
skipping to change at line 224 skipping to change at line 226
Figure 1) MUST use the G-ACh Label (GAL) [RFC5586] at the bottom of Figure 1) MUST use the G-ACh Label (GAL) [RFC5586] at the bottom of
the label stack followed by an Associated Channel Header (ACH). If a the label stack followed by an Associated Channel Header (ACH). If a
BFD Control packet in PW-ACH encapsulation (without IP/UDP Headers) BFD Control packet in PW-ACH encapsulation (without IP/UDP Headers)
is to be used in ACH, an implementation would not be able to verify is to be used in ACH, an implementation would not be able to verify
the identity of the MultipointHead and, as a result, will not the identity of the MultipointHead and, as a result, will not
properly demultiplex BFD packets. Hence, a new channel type value is properly demultiplex BFD packets. Hence, a new channel type value is
needed. The Channel Type field in ACH MUST be set to Multipoint BFD needed. The Channel Type field in ACH MUST be set to Multipoint BFD
Session (0x0013) (see Section 7.2). To provide the identity of the Session (0x0013) (see Section 7.2). To provide the identity of the
MultipointHead for the particular multipoint BFD session, a Source MultipointHead for the particular multipoint BFD session, a Source
Address TLV, as defined in Section 4.1 of [RFC7212], MUST immediately Address TLV, as defined in Section 4.1 of [RFC7212], MUST immediately
follow a BFD Control message. The use of other TLVs is outside the follow a BFD Control packet. The use of other TLVs is outside the
scope of this document. scope of this document.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LSP Label | TC |S| TTL | | LSP Label | TC |S| TTL |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| GAL | TC |1| TTL | | GAL | TC |1| TTL |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 0 0 1|Version| Flags | Channel Type = 0x0013 | |0 0 0 1|Version| Flags | Channel Type = 0x0013 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ BFD Control Message ~ ~ BFD Control Packet ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=0 | Reserved | Length | | Type=0 | Reserved | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Address Family | | Reserved | Address Family |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Address ~ ~ Address ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: Non-IP Encapsulation for Multipoint BFD over a Figure 1: Non-IP Encapsulation for Multipoint BFD over a
Multicast MPLS LSP Multicast MPLS LSP
The fields in Figure 1 are interpreted as follows: The fields in Figure 1 are interpreted as follows:
* The top three four-octet words are defined in [RFC5586]. * The top three four-octet words are defined in [RFC5586].
* The BFD Control Message field is defined in [RFC5880], where it is * The BFD Control Packet field is defined in [RFC5880].
referred to as the "BFD Control Packet".
* All the remaining fields are defined in Section 4.1 of [RFC7212]. * All the remaining fields are defined in Section 4.1 of [RFC7212].
4. Bootstrapping Multipoint BFD 4. Bootstrapping Multipoint BFD
4.1. LSP Ping 4.1. LSP Ping
LSP Ping is the part of the on-demand OAM toolset used to detect and LSP Ping is the part of the on-demand OAM toolset used to detect and
localize defects in the data plane and verify the control plane localize defects in the data plane and verify the control plane
against the data plane by ensuring that the LSP is mapped to the same against the data plane by ensuring that the LSP is mapped to the same
skipping to change at line 376 skipping to change at line 377
encapsulation (without IP/UDP Headers) with Channel Type 0x0007 encapsulation (without IP/UDP Headers) with Channel Type 0x0007
[RFC5885]. [RFC5885].
The BFD Control packets are transmitted at the rate of one per second The BFD Control packets are transmitted at the rate of one per second
until either 1) the egress LSA receives a control packet from the until either 1) the egress LSA receives a control packet from the
ingress LSR that is valid for this BFD session and has the Final (F) ingress LSR that is valid for this BFD session and has the Final (F)
bit set or 2) the defect condition clears. However, to improve the bit set or 2) the defect condition clears. However, to improve the
likelihood of notifying the ingress LSR of the failure of the P2MP likelihood of notifying the ingress LSR of the failure of the P2MP
MPLS LSP, the egress LSR SHOULD initially transmit three BFD Control MPLS LSP, the egress LSR SHOULD initially transmit three BFD Control
packets (as defined above) in short succession. The actual packets (as defined above) in short succession. The actual
transmission of the periodic BFD Control message MUST be jittered by transmission of the periodic BFD Control packet MUST be jittered by
up to 25% within one-second intervals. Thus, the interval MUST be up to 25% within one-second intervals. Thus, the interval MUST be
reduced by a random value of 0 to 25%, to reduce the possibility of reduced by a random value of 0 to 25%, to reduce the possibility of
congestion on the ingress LSR's data and control planes. congestion on the ingress LSR's data and control planes.
As described above, an ingress LSR that has received the BFD Control As described above, an ingress LSR that has received the BFD Control
packet sends the unicast IP/UDP encapsulated BFD Control packet with packet sends the unicast IP/UDP encapsulated BFD Control packet with
the Final (F) bit set to the egress LSR. In some scenarios (e.g., the Final (F) bit set to the egress LSR. In some scenarios (e.g.,
when a P2MP LSP is broken close to its root and the number of egress when a P2MP LSP is broken close to its root and the number of egress
LSRs is significantly large), the root might receive a large number LSRs is significantly large), the root might receive a large number
of notifications. The notifications from leaves to the root will not of notifications. The notifications from leaves to the root will not
 End of changes. 9 change blocks. 
15 lines changed or deleted 16 lines changed or added

This html diff was produced by rfcdiff 1.48.