Intro
BFD
常用于多线静态路由的检测和自动切换,在没有使用其他动态协议的情况下,若网络出现故障,可以使用BFD达到故障线路和正常线路的路由切换效果。当然,BFD
依然可以和其他协议配合使用(MPLS也可以),这里只介绍BFD
和静态路由的配合使用,在不同的应用场景内把握好BFD本身的作用机制,从而达到使用者想要达到的效果即可。
另外,一般的动态协议收敛速度比较慢,为秒级,BFD
可以将收敛时间降低到毫秒级。
BFD Brief Description
一般而言,BFD
需要设置的参数不多,大致包含:source ip
、destination ip
、multiplier
、min_rx
、interval
,各个参数只要设置好了,设备之间的BFD
连接都配置OK,那么BFD
连接就可以UP了。不同设备可能对这些名词的叫法不一致,但是差不多都是这些“词”。
Source IP
BFD
的源IP,本端设备设置本端IP即可。
Destination IP
BFD
的目的IP,本端设备设置对端IP即可。
Multiplier
允许BFD
连接报文失效的最大个数,例如设置为5,那么用于这个BFD
连接的Control packet
一旦失效超过5个,这条BFD
路径连接就会down
,类似ping
测试丢包超过5个。
Min_rx
BFD
检测报文的接收周期。
interval
BFD
检测报文的发送周期。
Tips
BFD
检测的时间周期设置,是一个很有意思的东西。假设总体性能的指标是要求链路检测上的时间不要超过150ms,这样可以设置BFD
的hello
报文周期为50ms,连续丢失3个报文即认为链路失效。如果换个思路,我们设置BFD
的hello
报文周期为30ms,连续丢失5个报文即认为链路失效,这样准确度会更高些且依然可以达到指标。但是需要路由器支持设置30ms这个时间。
BFD Connectiong
下面开始配置。
注:R1为博科设备,R2为华为设备
Basic Connection
底层互联采用静态的方式,直接给出R1和R2互联的三层接口配置。1
2
3
4!
interface ve 925
ip address 10.0.254.1/30
!
1 | # |
BFD Config
接下来开始配置BFD
。1
2
3
4
5
6R1#configure terminal
R1(config)#interface ve 925
R1(config-vif-ve-925)#bfd interval 500 min-rx 500 multiplier 5 //设置参数
R1(config-vif-ve-925)#exit
R1(config)#ip route static-bfd 10.0.254.2 10.0.254.1 //开启bfd
R1(config)#ip route 192.168.1.0/24 10.0.254.2 bfd //为静态路由绑定bfd
1 | <R2>system-view |
配置好了之后,BFD
就正式启动了,并且此时R1访问192.168.1.0/24网段的路由是与R1和R2之间的BFD
绑定在一起的,R2访问192.168.2.0/24网段的路由也是与R1和R2之间的BFD
绑定在一起的。
Management
R1可以使用show bfd neighbors
命令来检查BFD
连接是否正常;R2可以使用display bfd session all
来检查BFD
连接是否正常;当然了,不同设备还有很多其他的简捷命令来方便管理。
配合使用需要查设备的手册,但是需要设置的参数是一样的,这就很NICE了。所以,不管动态协议是啥,使用BFD
实现的功能是与其他不相关的。