1.技术作用
BFD(Bidirectional Forwarding Detection,双向转发检测)是一种快速故障检测机制,常用于IP/MPLS网络中用于链路的连通性检测,为各种上层协议静态路由、Track等)快速检测设备之间的路径故障,早期上层协议常用Hello报文机制来检测故障,所需时间是秒级,在没有路由协议的地方,"Hello"机制也是无效。
BFD为上述问题提出了一种解决方案,一方面它的检测速度达到毫秒级,能用于电信级50ms保护切换切换需求,另外一方面它能够在系统之间的任何类型通道上进行故障检测,这些通道包括直接的物理链路、虚电路、隧道、MPLS LSP、多跳路由通道,以及非直接的通道,正是由于BFD实现故障检测的简单、单一性,致使BFD能够专注于转发故障的快速检测 ,帮助网络以良好QoS实现语音、视频及其它点播业务的传输,从而帮助服务提供商基于IP网的实现,为客户提供所需的高可靠性、高适用性VoIP及其它实时业务。
2.技术原理
对于BFD而言,它本身是没有发现机制的,它是通过被服务的上层协议来建立会话,也就是邻居的参数及检测参数(包括目的地址和源地址等)是由上层协议通告给BFD。BFD得到邻居参数和检测参数之后,开始建立BFD会话,会话建立后会周期性地快速发送BFD报文,如果在检测时间内没有收到BFD报文则认为该双向转发路径发生了故障,通知被服务的上层应用进行相应的处理。
BFD的会话有有以下几种工作方式:
- 异步模式
在这种模式下,系统之间相互周期性地发送BFD控制包,如果某个系统在检测时间内没有收到对端发来的BFD控制报文,就宣布会话为Down。
- 按需模式
在按需模式下,每个系统都有一个独立的方法用来确认它连接到其他系统,一旦BFD会话建立起来以后,系统停止发送BFD控制报文,除非某个系统需要显式地验证连接性,在需要显式验证连接性的情况下,系统发送一个短系列的BFD控制包,如果在检测时间内没有收到返回的报