BFD是Bidirectional Forwarding Dectection的缩写,它是一个用于检测两个转发点之间故障的网络协议。

BFD是一种双向转发检测机制,可以提供毫秒级的检测,可以实现链路的快速检测,BFD通过与上层路由协议联动,可以实现路由的快速收敛,确保业务的永续性。

BFD Echo保文采用UDP封装,目的端口号为3784,源端口号在49152到65535的范围内。目的IP地址为发送接口的地址,源IP地址由配置产生,(需要注意的是:配置的源IP地址要避免产生ICMP重定向)。

那么现实网络中为什么要有BFD? 1.网络感知故障时间过长。 2.网络无法检测到非直连网段的故障点。 3.BFD还有一些优点,那就是与协议无关,与截至无关。

我们在现实中故障检测的方法主要有哪些呢? 1.硬件检测
2.hello包检测 虽然 硬件检测 可以快速发现故障,但是通用性不强。hello包检测 虽然应用普遍,但是收敛慢。需要依赖协议,所有就有了通用性强,更快收敛的BFD。

BFD通用性这么强,那么它有什么特点呢? 1.BFD全网统一,检测迅速,监控网络中链路或IP路由协议双向转发的连通情况。检测时间是毫秒级。 2.BFD的检测方式主要是:以邻居会话形式检测通知相应层的协议模块。

BFD又是怎么工作的呢? 周期性的发送BFD控制报文,建立BFD邻居会话,当网络拓扑发生变化时,可以和协议模块进行联动,快速完成网络收敛。 BFD可以通过与上层路由协议联动,可以实现路由控制,具体是怎么实现联动的呢!我们通过几个例子来看一下:

第一种,我们先来看一下BFD与静态路由的联动: 步骤大致可以分为两步: 1.全局下开启BFD。 2.BFD与静态路由联动。 [AR1]bfd [AR1-bfd]q [AR1]bfd huawei bind peer-ip 12.1.1.1 source-ip 12.1.1.2 [AR1-bfd-session-huawei]discriminator local 2 [AR1-bfd-session-huawei]discriminator remote 3 [AR1-bfd-session-huawei]commit

       --------------------------------------------

[AR2]bfd [AR2-bfd]q [AR2]bfd huawei bind peer-ip 12.1.1.2 source-ip 12.1.1.1 [AR2-bfd-session-huawei]discriminator local 3 [AR2-bfd-session-huawei]discriminator remote 2 [AR2-bfd-session-huawei]commit [AR2-bfd-session-huawei]q [AR2]ip route-static 0.0.0.0 0 12.1.1.2 preference 59 track bfd-session huawei

         -----------------------------------------------

查看BFD状态

第二种,我们来看一下BFD与VRRP的联动: 步骤大致可以分为两步: 1.配置VRRP 2.接口下做BFD与VRRP联动。

在配置BFD与VRRP联动的时候需要注意的是: vrrp vrid 1 track bfd-session 3 increased 30 模拟器需要使用标志ID才会生效,如果跟bfd-name名称不生效,真实设备跟bfd-name名称和标志ID都会生效。