1. 70 BFD配置
1. 70.1 理解BFD
1. 70.1.1 BFD概述
大功告成BFD(Bidirectional Forwarding Detection,双向转发检测)协议提供一种轻负载、快速检测两台邻接路由器之间转发路径连通状态的方法。协议邻居通过该方式可以快速检测到转发路径的连通故障,加快启用备份转发路径,提升现有网络性能。
2. 70.1.2 BFD报文格式
BFD报文有两种类型分别是控制报文和回声报文。其中回声报文只有BFD会话本端系统关心远端不关心,因此协议没有规定其具体格式。协议只规定了控制报文的格式,目前控制报文格式有两个版本(版本0和版本1),BFD会话建立缺省采用版本1,但如果收到对端系统发送的是版本0的报文,将自动切换到版本0来建立会话,可以通过show bfd neighbors命令察看采用的版本。版本1的格式如图表1:
1. 图 1.列车调图 BFD控制报文格式执业资格证书
● Vers:BFD协议版本号,目前为1
● Diags:给出本地最后一次从UP状态转到其他状态的原因,包括:
0—没有诊断信息
1—控制超时检测
2—回声功能失效
3—邻居通告会话比亿大的单位Down
4—转发面复位
5—通道失效
6—连接通道失效
7—管理Down
● Sta:BFD本地状态,取值为:0代表AdminDown,1代表Down,2代表Init,3代表Up;
● P:参数发生改变时,发送方在BFD报文中置该标志,接收方必须立即响应该报文
● F:响应P标志置位的回应报文中必须将F标志置位
● C:转发/控制分离标志,一旦置位,控制平面的变化不影响BFD检测,如:控制平
面为OSPF,当OSPF重启/GR时,BFD可以继续检测链路状态
● A:认证标识,置位代表会话需要进行验证
● D:查询请求,置位代表发送方期望采用查询模式对链路进行检测
● M:用于将来应用点到多点时使用,目前必须设置0
● Detect Mult:检测超时倍数,用于检测方计算检测超时时间
● Length:报文长度
● 嫁给陌生人My Discreaminator:BFD会话连接本端标识符
● Your Discreaminator:BFD会话连接远端标识符
● Desired Min Tx Interval:本地支持的最小BFD报文发送间隔
● Required Min RX Interval:本地支持的最小BFD报文接收间隔
● Required Min Echo RX Interval:本地支持的最小Echo报文接收间隔(如果本地不支持Echo功能,则设置0)
● Auth Type:认证类型(可选),目前协议提供有:
Simple Password
Keyed MD5
Meticulous Keyed MD5
Keyed SHA1
Meticulous Keyed SHA1
● Auth Length:认证数据长度
● Authentication Data:认证数据区
| 注意 | | RGOS从10.3(4b3)版本开始,支持版本1和版本0的报文格式,缺省情况下会话发送报文采用版本1,如果收到对端发送的版本0的报文,将自动切换到版本0来建立会话 |
| | | |
3. 70.1.3 BFD工作原理
BFD 提供的检测机制与所应用的接口介质类型、封装格式、以及关联的上层协议如OSPF、BGP、RIP等无关。BFD在两台路由器之间建立会话,通过快速发送检测故障消息给正在运行的路由协议,以触发路由协议重新计算路由表,大大减少整个网络的收敛时间。BFD本身没有发现邻居的能力,需要上层协议通知与哪个邻居建立会话。
2.
3. 图 2. BFD会话建立过程
图2简单的拓扑图,两台路由器通过一台二层交换机相连,两台路由器同时运行OSPF和BFD。BFD会话建立过程:
第1步:OSPF发现邻居后并与邻居建立连接
第2步:OSPF通知BFD与该邻居建立会话
第3步:BFD与该邻居建立起会话
4. 图 3. BFD会话检测故障处理过程
图3显示BFD会话检测到故障后的处理过程:
第1步:Router1与Switch之间的链路通信发生故障
第2步:Router1和Router2之间的BFD会话检测到故障
第3步:BFD通知本地运行的OSPF到邻居的转发路径发生故障
第4步:OSPF进行邻居Down过程的处理,如果存在备份转发路径那么将进行协议收敛,从而启用备份转发路径
4. 70.1.4 协议规范
目前BFD相关的协议规范有:
● draft-ietf-bfd-ba-09:Bidirectional Forwarding Detection
● draft-ietf-bfd-generic-05:Generic Application of BFD
● draft-ietf-bfd-mib-06:Bidirectional Forwarding Detection Management Information Ba
● draft-ietf-bfd-v4v6-1hop-09:BFD for IPv4 and IPv6 (Single Hop)
● draft-ietf-bfd-multihop-07:BFD for IPv4 and IPv6 (Multihop)
● draft-ietf-bfd-mpls-07:BFD For MPLS LSPs
如同近义词 | 注意 | | RGOS10.4(1)、10.3(4b3)版本不支持draft-ietf-bfd-mpls-07草案标准 RGOS10.3(4b3)版本不支持draft-ietf-bfd-mib-06草案标准 |
| | | |
2. 70.2 BFD特性简介
以下章节描述了BFD的特性:
1. ⏹ < href="Cap1.htm#_BFD会话建立模式" target="b">BFD会话建立模式
2. ⏹ < href="Cap70.htm#_BFD检测模式" target="b">BFD检测模式
3. ⏹ < href="Cap70.htm#_BFD会话参数" target="b">BFD会话参数
4. ⏹ < href="Cap70.htm#_BFD认证方式" target="b">BFD认证方式
5. ⏹ < href="Cap1.htm#_BFD_支持与动态路由协议联动" target="b">BFD 支
持与动态路由协议联动
6. ⏹ < href="Cap1.htm#_BFD支持与静态路由联动" target="b">BFD支持与静态路由联动
7. ⏹ < href="Cap1.htm#_BFD支持与策略路由联动" target="b">BFD航海旅行支持与策略路由联动
8. ⏹ < href="Cap1.htm#_BFD支持与VRRP联动" target="b">BFD支持与VRRP联动
9. ⏹ < href="Cap70.htm#_BFD支持VRF" target="b">BFD支持VRF
10. ⏹ < href="Cap70.htm#_BFD支持的接口" target="b">BFD支持的接口
1. 70.2.1.1BFD会话建立模式
BFD会话建立包含如下几种模式
1. 主动模式
在建立会话前不管是否收到对端发来的建立BFD会话的控制报文,都会主动发送建立BFD会话的控制报文。
2. 被动模式
在建立对话前不会主动发送建立BFD会话的控制报文,直到收到对端发送来建立BFD会话的控制报文。
| 注意 | | RGOS10.4(1),10.3(4b3)版本不支持被动模式,且不可配置 |
| | | |
2. 70.2.1.2BFD检测模式
BFD可以包含如下几种检测模式:
1. 异步模式
在异步模式下,系统之间相互周期性地发送BFD控制报文,如果某个系统在检测时间内没有收到对端发来的BFD控制报文,就宣布会话为Down
2. 查询模式
在查询模式下,假定每个系统都有一个独立的方法用来确认它连接到其他系统。这样一旦一个BFD会话建立起来以后,系统停止发送BFD控制报文,除非某个系统需要显式地验证连接性,在需要显式验证连接性的情况下,系统发送一个短序列的BFD控制包,如果在检测时间内没有收到返回的报文就宣布会话为Down,如果收到对端的回应报文,表示转发路径正常。
虚心若愚3. 回声功能
本地系统周期性的发送BFD 回声报文,远端系统通过它的转发通道将它们环回回来。如果本地在检测周期内连续几个回声报文都没有接收到,会话就被宣布为Down。回声功能可以和上述两种检测模式一起使用。采用回声报文的检测功能,不需要远端系统的控制面参与,报文通过远端系统的转发面转回,减少了延迟,相对于发送控制报文可以更快的检测到故障。如果在异步模式下启用回声功能,可以大大减少了控制报文的发送,因为检测工作由回声功能完成;如果在查询模式下启用回声功能,在会话建立后可以完全取消发送控制报文。BFD会话两点必须同时启用回声功能,否则回声功能将不生效。
| 注意 | | RGOS10.4(1)、RGOS10.3(4b3)版本不支持查询模式 配置回声功能时,必须先通过no ip redirects命令关闭IP报文的重定向功能,以及通过no ip deny land命令关闭防止Land-bad DDOS攻击功能 BFD的回声功能只能在BFD会话工作在版本1时才能工作 交换机产品S5760系列不支持配置回声功能. |
| | | |
2. 70.2.2 BFD会话参数