Showing results for 
Search instead for 
Did you mean: 

BFD Configuration & Troubleshooting on Cisco IOS and XR Routers

Cisco Employee

Hello Everyone, I'm Anilkumar Dantu (CCIE#22536) and I work for Cisco High Touch Technical support Team. HTTS provides premium service; providing break-fix support for Cisco's largest SP and Enterprise customers. In this video-blog me and my colleague Saurabh Shrivastava (CCIE#40947) will be talking about "BFD configuration and troubleshooting on cisco IOS and XR routers.


Today’s most important feature of networking equipment is the rapid detection of communication failures between adjacent routers, in order to converge quickly to establish alternate paths. Bidirectional Forwarding Detection (BFD) is a protocol used to detect failure between two forwarding engines connected by a link. It provides low-overhead detection of failure even on physical media that don't support failure detection of any kind, such as Ethernet, virtual circuits, tunnels and MPLS Label Switched Paths.

In this video we will  talk about following points:

1) BFD Protocol Overview

2) How BFD works

3) BFD configuration in IOS

4) BFD configuration in XR

5) BFD configuration between IOS & XR node

6) BFD Troubleshooting

To download Presentation Slides, Please click on below links:

Please share your valuable feedbacks and comments below



Interesting topic, thanks.

I have one question regarding where the BFD packets are proccesed. In the presentation slides you show that's it proccessed at the line cards when it comes to distributed routing platforms. Is this always true?  On the 7600 routers for example, is there no difference when you use line cards with a CFC or a DFC ( or the ES-series) ?

I think it's quite important do be aware of this differences, if there are any, when it comes to tuning the BFD timers.



Cisco Employee

Hi Jason,

             Many thnaks for the comment and viewing this video.  In purely distributed platforms like  example GSR , CRS BFD is handled  at LC level.

While on 7600 node based on Line  card/daughter card selection we have central CPU processing or  distributed processing of BFD packets.

When we have central CPU processing we need to take care that BFD  timers are liberal enough to take care of processing delays caused by  CPU level fluctuations. while incases where we can offload BFD process  to LC hardware (like in ES+ card) we can have BFD packet processing  independent of central CPU process level fluctuations.

Please refer a reference below from cisco document:

Probable Cause:

On the Cisco 7600 routers, the BFD is implemented on supervisors, and there are

instances of BFD flaps due to delay of th

e keepalive messages within the platform.


A high CPU utilization can dela

y the BFD keepalive messages. To prevent the CPU unavailability,

use the

process-max-time 50


hw-module rp process-max-time 50

commands. This prevents the

CPU unavailability for aggressive BFD timers. It also decreases the maximum duration of a process

run from the default 200ms to 50ms.

Do not configure very aggressive timers. The minimum recommended configuration is to use the

bfd interval 100 min_rx 100 multiplier 3


Offload the BFD sessions to a line card (only for ES+). This moves the processing from the

Supervisor to the line card. For more information see the following link:



Also, reduce the maximum processing time if the CPU utilizations of the line card is high. Use the

hw-module slot ‘x’ process-max-time 50


Please let me know your thoughts on the same. If possible I will share further details.



Great info, exactly what I was looking for.