某运营商承载网某局点备平面丢包问题分析

发布时间:  2009-12-31 浏览次数:  93 下载次数:  0
问题描述
某运营商承载网每个季度都要做一次倒换测试,在某局点链路倒换测试中发现:
1、shutdown FZBR1和LYAR1之间的链路,LYCE1至XMCE3 ping丢包,LYCE2至XMCE4 ping不丢包。
2、恢复FZBR1和LYAR1之间的链路,LYCE1至XMCE3 ping丢包,LYCE2至XMCE4 ping丢包。
客户认为主平面链路恢复时备平面ping测丢包不合理。


处理过程
1、对于AR来说,总计私网路由3W左右。1000条左右公网LSP,且FZBR1至LYAR1的链路为主平面LSP的关键路径,所以shutdown该链路,势必要引起所有主平面LSP的收敛,而主平面LSP的收敛则会导致3w私网路由重新迭代,所以对于主平面来说,丢包属于正常现象。
2、再看恢复链路时,LYCE2至XMCE4丢包问题。
A、对于LYAR1来说,其到达XMCE3的路由始终优选XMAR1,这是因为从XM两个AR来的BGP私网路由不一样,XMAR1的MED值较小,所以会始终优选它的路由;
B、链路恢复时,因为ISIS、LDP不同步,且ISIS先Up,LDP后Up,LYAR1上目的为XMAR1 LSP也就会先删后建;
C、BGP私网路由就会先因旧LSP的删除事件而切换成无效状态(这个状态持续时间和当时CPU的繁忙度有关),新LSP Up后再迭代到新的LSP上;
D、因旧LSP删除导致私网路由无效时,由于OSPF配置了BGP引入和ASBR聚合,此时会删除LSA,更新 metric;
E、若删除的LSA metric较大,可能导致更新后的LSA小于之前稳定状态的最大值,也就是小于此时LYAR2上的聚合LSA的metric值,从而将LYCE2的流量引至LYAR1,而这时候LYAR1上私网路由、公网LSP等可能还没有收敛完成,导致丢包;
F、稳定后OSPF的聚合LSA的metric恢复成原先值,LYCE2就不会优选从LYAR1走,流量又恢复正常。因为私网路由达3w,公网LSP为1000,所以整个过程可能持续几秒钟,因此会导致LYCE2平面的流量也出现丢包现象。
3、为何shutdown的时候LYCE2平面的流量没有丢包现象呢?
因为shutdown AR、BR链路时,LDP LSP会先建后删,所以路由模块会先得到LSP建立事件,按照新的LSP进行迭代,直接更新路由,而不会像上面那种情况先删除路由再重新添加,这样OSPF就不会更新LSA,也就没有问题。
根因

主切换到被上丢包主要原因是路由迭代,导致丢包。
回切丢包原因见处理过程

解决方案
在AR上强制指定ASBR聚合路由的cost,使路由更新时汇聚路由的cost 值保持一个稳定状态。命令如下:
asbr-summary 10.0.0.0 255.0.0.0 cost xxx。
建议与总结
我司设备在PE上做ospf外部路由聚合时,最好为该聚合路由加上cost值,否则在链路回切时延时会比较大。

END