Seamless Bidirectional Forwarding Detection (BFD) for IP
Cisco Systems
nobo@cisco.com
Cisco Systems
cpignata@cisco.com
Cisco Systems
wardd@cisco.com
BFD Working Group
Internet Engineering Task Force
BFD
seamless BFD
negotiation free
label verification
segment routing
IP
This specification defines procedures to use Seamless Bidirectional Forwarding Detection (S-BFD) in IP and IP signalled MPLS environments.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.
One application for Seamless Bidirectional Forwarding Detection (S-BFD) is to perform full and partial reachability validations on IP and IP signalled MPLS environments.
This specification defines procedures to use Seamless BFD in IP and IP signalled MPLS environments.
BFD target identifier type of value 1 is used for IPv4 addresses and router IDs. This identifier type will cover Seamless BFD in following scenarios:
BFD control packets IPv4 routed.
BFD control packets IPv6 routed.
BFD control packets label switched in IPv4 signaled LSP.
BFD control packets label switched in IPv6 signaled LSP.
Not all IPv6 aspects are covered by this specification, and details are clarified in .
With IPv4 based BFD, BFD target identifier type 1 is used. IPv4 addresses are used as BFD discriminators. BFD discriminator values corresponding to all or subset of local IPv4 addresses are to be allocated from the discriminator pool for Seamless BFD.
Example:
BFD Target Identifier Type 1: IPv4 address 3.3.2.1 maps to BFD discriminator 0x03030201.
With IPv6 based BFD, BFD target identifier type 1 is used. Router IDs are used as BFD discriminators. BFD discriminator values corresponding to all or subset of local router IDs are to be allocated from the discriminator pool for Seamless BFD. IDs which are larger than 32 bits (ex: ISIS system ID) are not included as part of this identifier type, and is outside the scope of this document.
Example:
BFD Target Identifier Type 1: Router-ID 3.3.4.5 maps to BFD discriminator 0x03030405.
Note that it is acceptable for an IPv4 address and a router-ID to collide, mapping into a same BFD discriminator value. There will not be an issue as long as colliding BFD discriminator value is reserved for the Seamless BFD purpose.
With IP identifier type, only locally reserved BFD discriminators and corresponding information are to be in this table. No inter-node communications are needed to exchange BFD discriminator and BFD target identifier mappings.
Any IP network node can attempt to perform a full reachability validation to any BFD target identifier of type 1 (IPv4 address or router-ID) on other network nodes, as long as destination BFD target identifier is provisioned to use this mechanism. Transmitted BFD control packet by the initiator is to have "your discriminator" corresponding to destination IPv4 address or router ID.
Initiator is to use following procedures to construct BFD control packets to perform IP full reachability validations on BFD packets that are IP routed:
MUST set "your discriminator" to target IPv4 address or target router-ID.
If packet is to be explicitly label switched, then explicit label switching packet format described in MUST be used. Otherwise IP routing packet format described in MUST be used.
To respond to received BFD control packet which was targeted to local BFD target identifier of type 1 (IP address or router-ID), response BFD control packet is targeted to IP address taken from received "source IP address". Responder MUST validate obtained IP address is in valid format (ex: not Martian address). Responder MUST consult local routing table to ensure obtained IP address is reachable.
Procedures described in applies.
MPLS label verification mechanism is applicable to those IP based BFD which use explicit label switching techniques. However, details of what responder embeds in the lower 23 bits of localhost address, and how initiator determines correctness of label programming is outside the scope of this document.
Active IP BFD sessions, single-hop, multi-hop or MPLS can be instantiated on any network node to any IPv4 target addresses and OSPFv3 router IDs using this mechanism. This style of usage is particularly useful only if one side is required to perform full reachability validations (ex: static route, uni-directional tunnel). This style of usage is also particularly useful to perform validations and verifications on just subset of LSPs (ex: inter-AS, injection of partial BFD reachability validation packet on IPv4 RSVP LSP nodes).
Security considerations for BFD are discussed in and security considerations for S-BFD are discussed in .
Authors would like to thank Marc Binderberger from Cisco Systems for providing valuable comments.
Tarek Saad
Cisco Systems
Email: tsaad@cisco.com
Siva Sivabalan
Cisco Systems
Email: msiva@cisco.com
Nagendra Kumar
Cisco Systems
Email: naikumar@cisco.com