关于边界网关协议BGP中同步问题浅析( 二 )


取消同步以后,满足下一跳可达的方法有很多,需要视具体网络拓扑情况而定 。就上面例子来说,可以由RTB将BGP路由引入IGP中,当然这样的做法一般不采用,应为BGP的路由信息量很大,对于IGP来说负担太重 。另外,我们可以在RTC、RTD、RTE上增加静态路由,同时在RTA上也增加静态路由 。这种办法看起来很笨,也不是最理想的办法 。最后,BGP可以通过命令来强制修改下一跳,在RTE上将去往10.1.1.1/24的下一跳强制修改为RTE自身的接口,同时,需要RTD、RTC的路由表中有去往10.1.1.1/24的路由 。这也不是最理想的解决方法 。因为可能还是需要借助于静态路由 。其实,对于上面例子的拓扑结构,主要是:IBGP邻居不是直接的连接关系,而是TCP连接 。BGP路由协议在这样的拓扑结构上的下一跳可达问题,一直没有理想的解决方案 。假如这种情况的网络不是很复杂,还是可以勉强解决的(上面已经介绍了几种解决方法) 。但是一旦网络复杂了,解决起来就很困难了 。所以,在网络设计时,一定要注重避开这种情况 。IBGP邻居尽量直接连接 。这个问题的彻底解决是在BGP和MPLS联手以后的事情 。以后有机会大家再学习!
4、小结
【关于边界网关协议BGP中同步问题浅析】BGP下一跳属性规定:BGP路由的下一跳是以自治系统为单位的 。这样就引出了BGP路由下一跳不可达的问题,为解决路由下一跳不可达的问题,BGP协议引入了同步概念 。同步也是可以通过命令取消的,只要能保证路由的下一跳可达,就可以了 。

推荐阅读