set-overload-bit命令的疑问?
随着全国各运营商网络规模的不断扩大,以及各地城域网的建设,运营商的网络架构呈现国干-省干-地市的层次,在igp的路由协议的选择上在省干的层次上越来越多的采用is-is路由协议,主要是考虑其作为L2可以支持更多的网络层协议(这点在中国不明显),在网络规模很大的情况下,is-is的开销相对ospf要小,另外对ipv6的支持先天性也要好于ospf,当然了由于一些中底端设备不支持isis,也决定了isis只能到省干这一层次了。
目前在部分运营商各省干采用独立的自治系统,通过bgp承载用户的路由,isis承载网络拓扑的信息,通常省干出口到国干采用主备的方式,通过主备设备isis分别下发缺省路由提供各地市业务流量访问外省的驱动,随着业务的发展,有时候也要对省干出口的设备作些改动,当然也包括升级,割接等等,通常这个时候都会对网络又很大的影响。
我们知道通常设备重启时或重启bgp进程,bgp 的收敛肯定要远大于igp路由收敛,这就导致可能对其中一台网关设备升级时,尽管设备重启完毕,isis路由收敛也完成,同时开始发布igp缺省路由,但由于bgp这时可能还没有完成 路由收敛,导致按照igp选路转发到此设备的流量因没有下一跳而被丢弃,尽管此时另一台备份的网关出口的设备正常。避免这种短期的“黑洞”,方法一你可以事先删除isis下发的缺省路由,强制牵引流量都到另一台设备上,待一切正常后再添加回发布缺省路由的命令;这里介绍一个另外的方法,就是利用set-overload-bit [on-startup [<timeout> | wait-for-bgp] ]命令,我们知道overload被置位后,其他收到此lsp路由器就会知道避免将发布此lsp的router作为转发路由器,因为overload被置位表示其lsdb可能因为资源不够而可能保存了不完整的lsdb。而set-overload-bit [on-startup [<timeout> | wait-for-bgp] ]则是监控bgp状态,利用bgp收敛的期间,自动发布带用overload置位的lsp通告,防止其他路由器将自身作为转发路由器,其依据是bgp路由收敛时不会发布keepalive报文的,当正常发布keepalive报文时自然可以判断bgp已经完成路由更新,这时就会在isis发布的lsp中去掉overload置位,从而保证了正常的业务转发,避免了“黑洞”的出现。因此在对这种组网情况下,进行网络割接或升级时,建议可临时配置此命令。
上面说的倒是没有问题,但是现在实际操作中遇到一个问题:
省干到地市核心上IGP为ISIS,之间起IBGP。
我在省干上一台核心上的ISIS进程下敲了这个命令,但是发现我这台核心设备下联华为的NE80的进出流量都没有了,但是下联CISCO的设备确流量没有增减。不知道是什么问题?