问题描述
随着网络应用的广泛部署,网络发生故障极大可能导致业务异常。为了减小链路、设备故障对业务的影响,提高网络的可靠性,网络设备需要尽快检测到与相邻设备间的通信故障,以便及时采取措施,保证业务正常进行。
在无法通过硬件信号检测故障的系统中:
1)应用通常采用上层协议本身的 Hello 报文机制检测网络故障。例如,常用路由协议的 Hello 报文机制检测时间较长,检测时间超过 1 秒钟。当应用在网络中传输的数据超过 GB/s 时,秒级的检测时间将会导致应用传输的数据大量丢失。
2)在三层网络中,静态路由本身没有故障检查机制。
解决方案
BFD(Bidirectional Forwarding Detection,双向转发检测)提供了一个通用的、标准化的、介质无关、协议无关的快速故障检测机制,用于快速检测、监控网络中链路或者IP路由的转发连通状态。
故障检测存在的意义是:为了及时发现问题以进行切换,而非单纯检测故障。所以,存在主备链路才更加有意义。
原理简述
BFD 是个简单的 Hello 协议:
1)两个系统间建立 BFD Session 通道,并周期性发送 BFD 检测报文;
2)如果某个系统在规定的时间内没有收到对端的检测报文,则认为该通道的某个部分发生故障;
特性说明
对相邻转发引擎之间的通道提供 轻负荷、快速 故障检测。
用单一的机制对任何介质、任何协议层进行实时检测。
应用场景