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