双向转发检测 (Bidirectional Forwarding Detection, BFD) 是一种简单的 Hello 协议,它类似于众所周知的路由协议的检测组件。一对系统定期在两个系统之间的每个路径上发送 BFD 数据包;如果一个系统在足够长的时间内停止接收 BFD 数据包,则假定相邻系统发生故障。
BFD 会话是根据将使用 BFD 的应用程序的需求建立的。用户必须明确配置 BFD 会话的地址和参数以及会话的订阅者/应用程序 (BGP/OSPF),因为在 BFD 中没有发现机制。
BGP 或 OSPF 等路由协议交换在 Edge 和路由器之间学习的路由。这些协议使用自己的机制交换路由和检测路由故障。通常,路由故障是根据保持活动状态机制检测的,其中一个实体按配置的固定间隔(即,保持活动状态时间)应答另一个实体。这些路由协议具有较高的保持活动状态定时器,这会导致留出更长的时间以检测路由故障。BFD 更快地检测两个连接的实体之间的路由故障,并且检测故障的开销较少。
以下是为路由协议实施 BFD 的优势。
- 快速检测路由故障,并且重新聚合时间较短。
- 路由故障检测的开销较少。
- 在不同路由协议之间提供统一的路由故障检测速率。
可以将 BFD 定义为一种简单服务。BFD 提供的服务原语是,在给定目标地址和其他参数的情况下创建、销毁和修改会话。反过来,BFD 向客户端提供信号,以指示 BFD 会话何时启动或关闭。
BFD 具有两种运行模式:异步模式和按需模式。
VMware 支持异步模式。在该模式下,系统定期将 BFD 控制数据包发送到其他系统;如果系统未收到几个连续的数据包,则将会话声明为关闭。
注: 不支持 BFD 回显模式。
VMware 支持将 BFD 用于以下路由协议:
- Edge 和合作伙伴网关上的 BGP
- Edge 上的 OSPF