一、OSPF与BGP协议联动分析
免责声明:上图来源于网络,如有版权问题请联系作者删除!
-
实验环境:4台路由器底层运行ospf并建立IBGP邻居;RouterB、RouterC配置为RR路由反射器
-
在有备份链路的情况下,BGP在链路回切时,由于BGP路由收敛速度滞后于ospf路由收敛速度,从而造成流量丢失
-
如上图所示,四台设备RouterA、RouterB、RouterC、RouterD之间运行ospf协议,并建立IBGP连接。RouterC为RouterB的备份设备,当网络环境稳定时,BGP与ospf在设备上是完全收敛的,默认RouterA访问10.3.1.0/30优先从B转发(A→B→D→E),且RouterA收到10.3.1.0/30的下一跳为RouterD的环回接口(RR路由反射器不修改下一跳)
1、问题
-
正常情况下,从RouterA到10.3.1.0/30的流量会优先从RouterB转发。当RouterB发生故障后(比如关机重启了),流量切换到RouterC转发,注意不是立刻切回到C,因为ospf hello包的死亡超时时间为40s,40s之后RouterA才会感知到与RouterB的邻居关系中断了,流量转而从RouterC转发。RouterB故障恢复以后,重新与RouterA建立起ospf邻居关系,流量回切到RouterB,此时会有流量丢失
2、原因分析
-
RouterB故障恢复以后,RouterB与RouterA、RouterD的ospf邻居立刻建立,RouterA访问 RouterD环回接口的路由可能从RouterB转发
-
在流量回切到RouterB的过程中,IGP收敛速度比BGP快。RouterA去往10.3.1.0/30的下一跳为RouterD的环回接口(RR路由反射器),RouterA去往RouterD环回接口优先从RouterB转发,但RouterB的BGP路由还没有完成收敛(RouterB还没有学