Bidirectional Forwarding Detection (BFD) is a hello protocol that provides the rapid detection of failures in the path and informs the clients (routing protocols) to initiate the route convergence.
It is independent of media, routing protocols, and data protocols. BFD helps in the separation of forwarding plane connectivity and control plane connectivity.
Different routing protocol hello mechanisms operate in variable rates of detection, but BFD detects the forwarding path failures at a uniform rate, thus allowing for easier network profiling and planning, and consistent and predictable re-convergence time.
BFD Topology shows a BFD topology.
The routing protocols first learn the neighbor and make entries in the forwarding table. Then protocols can register the neighbor address with BFD and ask to monitor the status of the path. BFD establishes the session with a remote BFD and monitors the path status.
For example, when two nodes, A and B, initiate a BFD session between them, a negotiation about the receive and transmit intervals occurs.
The receive interval of node A is calculated as the maximum of the configured receive interval of node A and the configured transmit interval of node B. The same applies to node B.
If multiple clients ask for the same neighbor on the same interface, then a single BFD session is established between the peers.
BFD Failure Detection shows the behavior when a failure occurs.
BFD detects the failure first, and then informs the registered clients about the neighbors.
BFD operates in an asynchronous mode in which systems periodically send BFD control packets to one another. If a number of those packets in a row are not received by the other system, the session is declared to be down.
Simple password authentication can be included in the control packet to avoid spoofing.
BFD for OTM, BGP, and hitless failover are supported.
This feature is available on all platforms.