Table of Contents
For networks, failure detection is very important. There are vairous mechanisms used for this purpose. One of them is BFD (Bidirectional Forwarding Detection). In this lesson, we will learn what is BFD? Why we use this mechanism between nodes.
BFD is basically another Hello protocol based on UDP that detects link failures on forwarding plane. It runs on top of Layer 2 protocols that is in use between two adjacent systems.
Bidirectional Forwarding Detection is independent from media, routing protocols and data protocols. By being independant from media, routing protocols and data protocols, BFD mechanism can be used with all routing protocols and data protocols.
Routing protocols has an hello mechanism by default to detect the link failures. But this mechanism is differenciate from router to router. With Bidirectional Forwarding Detection, a common link failure detection mechanism created. And this mechanism can be used with all routing protocols. So, using BFD mechanism provides a very fast convergence after a link failure if you compare with routing protocol hello mechanism.
Bidirectional Forwarding Detection is one way protocol. So tu use this mechanism, you need to configure both ends with this protocol.
As you know there are two planes in a network. One of them is control plane, in which, route processing is done. And the other is forwarding plane, in which, the data sending is done after the establishment of the session.
Bidirectional Forwarding Detection has two versions. These are Version 0 and Version 1.
You can Download Cisco Packet Tracer Labs!
After answering what is BFD question and learnign some general information about it, now, let’s learn BFD Session Establishment. Session establishment is done throught BFD messages. These messages sets the states of both ends as mentioned below:
Bidirectional Forwarding Detection has two different BFD Session Establishment modes. This is divided into two according to how is the discriminators that differ Bidirectional Forwarding Detection sessions are configured. What are these Session Establishement modes? These are :
In Static Session Establishment, local and remote discriminators in BFD messages are configured with commands. In Dynamic Session Establishment, this is done by system dynamically. Let’ s check these Session Establishment Steps one by one.
As you can below, BFD Session Establishment is done with a three-way handshake. There are three basic steps to establish BFD Session in other words.
Bidirectional Forwarding Detection mechanism uses packets to inform both ends that the protocol is configured. With these packets, it provides basic connectivity and the parameter negotiation.
The main role of Bidirectional Forwarding Detection is detecting the link failures by sending BFD packets in regular intervals. It sends the packet and wait. If there is no reply until a certain of time, it determines that the link is down. This is the same as Hello messages.
Let’s give an example to understand this mechanism better. Below, there is a topology, that BFD Sessions are also established in each ends. Think about that a traffic is coming from Router 1 to Router 2.
What if the connection between these two routers fails?
Bidirectional Forwarding Detection has different operation modes. These are :
In Asyncronous Mode, two end nodes send Conrol Packets each other periodically. If they do not get some of the Control Packets, they decide that there is a failure. In Async Mode, Conrol Packets flow in each direction.
AS we mentioned above, Bidirectional Forwarding Detection is used to detect link failure. But, there can be many types of link failures. BFD is generally used to check the below availabilities:
Bidirectional Forwarding Detection is used with many protocols for link failure detection. These protocols are:
Beside the advantages of BFD, it has also some disadvantages. First of all it can have more resource demands. This changes from platform to platform.
Secondly, Bidirectional Forwarding Detection is not aware of Layer 2 link bundelling. When you configure it on one link, it operetas for single link, rather than the other bunde member.