近日,互聯(lián)網(wǎng)用戶反映上網(wǎng)特別慢,得知這一故障后,首先在機房進行測試,發(fā)現(xiàn)打開網(wǎng)頁的速度很慢,于是使用Ping命令對百度、網(wǎng)易等各大門戶網(wǎng)站進行測試,發(fā)現(xiàn)了一個共同的現(xiàn)象,Ping結果顯示包是通一個丟一個。

圖1 網(wǎng)絡拓撲結構
為了更好地排除故障,我們首先了解一下網(wǎng)絡拓撲結構(如圖1)。
通過圖1可以看到,互聯(lián)網(wǎng)核心網(wǎng)絡由兩臺流控設備、兩臺路由器和多臺BRAS組成,其中出現(xiàn)故障用戶位于BRAS-1上,四路互聯(lián)網(wǎng)出口分別連接到兩臺流控設備上。
首先對該互聯(lián)網(wǎng)出口的互聯(lián)地址進行了測試,結果不通。難道是互聯(lián)網(wǎng)出口出現(xiàn)了問題?登錄到流控設備-1上對互聯(lián)網(wǎng)出口的互聯(lián)地址192.168.92.9進行測試,發(fā)現(xiàn)沒有問題。就在登錄到流控設備-1上查看互聯(lián)網(wǎng)出口流量的同時,我們發(fā)現(xiàn)兩臺流控設備的互聯(lián)心跳線幾乎沒有任何流量,看到這個情況,我們意識到問題的嚴重性。
急忙來到機房對流控設備心跳線的端口指示燈進行查看,指示燈處于滅的狀態(tài),使用光功率計對心跳線的光功率進行測量,發(fā)現(xiàn)流控設備-2沒有收到流控設備-1的光功率。這有可能就是網(wǎng)絡故障發(fā)生的原因所在,即流控設備-1和流控設備-2互聯(lián)的端口出現(xiàn)故障。對流控設備-1上的光模塊進行更換后,發(fā)現(xiàn)光模塊依然不發(fā)光。難道是端口關閉了?登錄到設備后發(fā)現(xiàn)端口并沒有關閉,隨即使用打環(huán)的方式進行測試。所謂打環(huán),就是將網(wǎng)絡設備的發(fā)送端經(jīng)過一個環(huán)路環(huán)回到此設備的接收端,故障端口的指示燈依然是滅的。
為了盡快解決故障,我們決定使用更換端口的方法來解決問題。立即將流控設備-1設備上的互聯(lián)心跳線端口0/2更換到0/3上,同時將路由策略中的入接口也修改成了0/3口,這樣做完后,設備連接的心跳線接口瞬時閃爍起來,兩個端口的互聯(lián)地址也能Ping通,而且端口的流量也在不斷增加。再一次對百度、網(wǎng)易和搜狐等各大門戶網(wǎng)站進行了Ping測試,沒有再出現(xiàn)文章開頭通一個丟一個的現(xiàn)象,故障得到解決。
后期我們將流控設備端口故障的問題反饋給了設備廠家。在等待廠家查找原因的同時,我們也將對兩臺流控設備的心跳線進行調(diào)整和優(yōu)化,具體的措施是,使用鏈路聚合的方式將兩臺設備連接起來,這樣既能實現(xiàn)流量的負載分擔,又能達到鏈路備份的作用,達到了兩全其美的效果。
上面我們從得知故障現(xiàn)象后,一步一步分析問題,廣泛使用了Ping命令,從而最后將故障定位到端口上。在這里,我們還使用了打環(huán)的方法對光模塊或者端口進行了簡單測試,最后通過更換端口的方法解決了問題。
仔細分析出現(xiàn)該問題的因果關系,如圖1所示,BRAS-1上的互聯(lián)網(wǎng)用戶根據(jù)BGP協(xié)議的特性,它會根據(jù)路由的優(yōu)先級高低,發(fā)現(xiàn)BRAS-1到兩臺路由器的開銷是一致的,所以BRAS-1會將數(shù)據(jù)轉發(fā)給兩臺路由器,如果用戶從路由器-1上來,想訪問位于流控設備-2上的聯(lián)通出口,結果是失敗的,原因是兩臺流控設備間的心跳線出現(xiàn)故障,這樣就會造成丟包現(xiàn)象的發(fā)生。反過來,用戶如果從路由器-2上直接訪問位于流控設備-2上的聯(lián)通出口的話,數(shù)據(jù)就會正常轉發(fā)出去,這樣就完成了數(shù)據(jù)的正常轉發(fā)。
綜合以上兩點我們就可以解釋清楚文章開頭Ping各大門戶網(wǎng)站出現(xiàn)包通一個丟一個的現(xiàn)象,即兩臺流控設備間的心跳線出現(xiàn)故障,導致部分數(shù)據(jù)請求無法轉發(fā)出去,從而引發(fā)網(wǎng)絡故障。