BFD for PIM
为了减小设备故障对业务的影响,提高网络的可靠性,网络设备需要快速检测到与相邻设备间的通信故障,以便及时采取措施,保证业务继续进行。
硬件检测:例如通过SDH(Synchronous Digital Hierarchy,同步数字体系)告警检测链路故障。硬件检测的优点是可以很快发现链路故障,但此检测方法不适用于所有介质。
慢Hello机制:通常是指路由协议的Hello机制。这种机制检测到故障所需时间为秒级。对于高速数据传输,例如吉比特速率级,超过1秒的检测时间将导致大量数据丢失;对于时延敏感的业务,例如语音业务,超过1秒的延迟也是不能接受的。
其他检测机制:不同的协议或设备制造商有时会提供专用的检测机制,但在系统间互联互通时,这样的专用检测机制通常难以部署。
BFD(Bidirectional Forwarding Detection)检测机制可提供毫秒级的快速检测,并采用单一机制对所有类型的介质、协议层进行检测,实现全网统一的检测机制。其检测原理是在两个系统间建立BFD会话,并沿它们之间的路径周期性发送BFD检测报文,如果一方在检测周期内没有收到BFD检测报文,则认为该路径发生了故障。
在组播的应用中,如果共享网段上的当前DR(Designated Router)发生故障,其他PIM邻居会等到邻居关系超时才触发新一轮的DR竞选过程,导致组播数据传输中断,中断的时间将不小于邻居关系的超时时间,通常是秒级。
目前,BFD for PIM功能支持IPv4和IPv6 PIM-SM/SSM(Source-Specific Multicast)网络。
DeviceB的下游接口Port 2作为当前DR,负责接收端组播数据的转发。若接口Port 2发生故障,BFD快速把会话状态通告给RM(Routing Management),再由RM通告给PIM。PIM模块触发新一轮的DR竞选,DeviceC的下游接口Port 1作为新当选的DR,在短时间内向接收端转发组播数据,从而缩小组播数据传输的中断时间。