BFD for RIP
产生原因
在RIP网络中,RIP协议通过周期性的路由刷新来维护邻居的状态,当网络中的链路发生故障时,RIP需要经过较长时间才可以感知到该故障。对于高速业务来说,在此期间可能会造成大量丢包,给运营商或用户带来损失。因此,加快链路的故障感知速度,缩短路由协议的收敛时间,是提高网络可靠性的重要途径。
BFD(Bidirectional Forwarding Detection,双向转发检测)和RIP相关联后,一旦链路发生故障,BFD在毫秒级时间内感知该故障并通知RIP协议,然后路由器在路由表中删除掉故障链路的路由并快速启用备份路径,提高了路由协议的收敛速度。
RIP协议在使用BFD前后的链路故障检测机制及收敛速度如表2-5所示:
相关概念
BFD是一种用于检测邻居路由器之间链路故障的检测机制,对两个系统间的、同一路径上的同一种数据协议的连通性进行检测,它通常与路由协议联动,通过快速感知链路故障并通告使得路由协议能够快速地重新收敛,从而减少由于拓扑变化导致的流量丢失。
静态BFD
静态BFD是指通过命令行手工配置BFD会话参数,包括了配置本地标识符和远端标识符等,手工下发BFD会话建立请求。
静态BFD适用于只有少数路径对可靠性要求较高的网络。
动态BFD
动态BFD是指由路由协议动态触发BFD会话建立。动态BFD中,本地标识符是动态分配的,远端标识符从对端的BFD报文中获取。
路由协议在建立了新的邻居关系时,将对应的参数及检测参数(包括目的地址、源地址等)通告给BFD,BFD根据收到的参数建立起会话。当发生链路故障时,联动了BFD的路由协议可以快速感知到BFD会话状态变为Down,从而实现将流量快速切换到备份路径,避免了数据大量丢失。
动态BFD具有较高的灵活性,适用于全网都对可靠性要求较高的网络。
实现过程
BFD的具体实现过程可参见《全业务路由器 特性描述-可靠性-BFD》,在RIP网络中的实现原理如图2-15所示。
动态BFD for RIP的实现过程:
DeviceA 、DeviceB及DeviceC三台设备两两之间以及DeviceB和DeviceD之间已经分别建立RIP邻居。
在DeviceA及DeviceB上使能动态RIP BFD检测机制。
经过路由计算,DeviceA到达DeviceD的路由下一跳为DeviceB。
当DeviceA和DeviceB之间的链路出现故障时,BFD快速感知并通知给DeviceA,DeviceA删除掉下一跳为DeviceB的路由。
DeviceA重新进行路由计算并选取新的路径,经过DeviceC、DeviceB到达DeviceD。
当DeviceA与DeviceB之间的链路恢复之后,二者之间的会话重新建立,DeviceA收到DeviceB的路由信息,重新选择最优路径进行报文转发。
静态BFD for RIP的实现过程:
DeviceA、DeviceB及DeviceC三台设备两两之间以及DeviceB和DeviceD之间已经分别建立RIP邻居。
在DeviceA与DeviceB相连的接口上使能静态BFD检测机制。
当DeviceA和DeviceB之间的链路出现故障时,BFD快速感知并通知给DeviceA,DeviceA删除掉下一跳为DeviceB的路由。
当DeviceA与DeviceB之间的链路恢复之后,二者之间的会话重新建立,DeviceA收到DeviceB的路由信息,重新选择最优路径进行报文转发。
适用场景
BFD for RIP特性用来提高RIP网络的可靠性,适用于对可靠性要求较高的网络。
使用价值
BFD for RIP可以快速感知链路故障,实现RIP网络的快速收敛,为运营商提供可靠的网络环境。