1 網(wǎng)絡(luò )丟包-煩惱
網(wǎng)絡(luò )是多種設備的集合體,一個(gè)較為完善的網(wǎng)絡(luò )除去網(wǎng)絡(luò )終端大量的客戶(hù)機以外,有眾多的設備穿插集中,包括二層交換機、三層交換機、DSLAM、BAS、路由器、服務(wù)器、存儲設備等。而涉及到的網(wǎng)絡(luò )協(xié)議、技術(shù)更為繁雜,要維護這么龐大以及技術(shù)復雜的網(wǎng)絡(luò ),很多時(shí)候是霧里看花,總是看不清楚問(wèn)題的實(shí)質(zhì),尤其是網(wǎng)絡(luò )丟包問(wèn)題,讓多少網(wǎng)絡(luò )專(zhuān)家為之徹夜難眠卻又束手無(wú)策。本案例匯集了經(jīng)常遇到的網(wǎng)絡(luò )丟包案例,希望這些小的案例能夠為我們的日常網(wǎng)絡(luò )維護提供一些啟發(fā)。
某客戶(hù)的服務(wù)器端局部網(wǎng)絡(luò )連接圖(圖中略去了交換機上行連接設備)如下:
兩臺服務(wù)器連在分別連接在S5100交換機的g1/0/3和g1/0/4端口。服務(wù)器是第三方網(wǎng)管服務(wù)器,兩臺服務(wù)器之間有數據調用?蛻(hù)反饋訪(fǎng)問(wèn)網(wǎng)管服務(wù)器速度很慢,兩臺服務(wù)器之間ping大包時(shí)有大量丟包。
網(wǎng)絡(luò )故障范圍已經(jīng)縮小至兩臺服務(wù)器之間的丟包,問(wèn)題就變得比較簡(jiǎn)單,這種情況下,首先確認是故障點(diǎn),那么我們看兩臺服務(wù)器PING報文的轉發(fā)流程,總體上可以分為三部分:有兩部分是服務(wù)器與交換機之間的轉發(fā)、另外一部分是交換機之間的數據轉發(fā)。那么要排除該問(wèn)題我們采取逐段分析排查的方法:
1:首先在兩臺交換機之間互相Ping各自的管理IP地址,測驗結果為不丟包,因此這兩臺交換機之間的問(wèn)題可以排除在外;
2:排查服務(wù)器與交換機之間問(wèn)題:這部分的問(wèn)題又可以細分為三個(gè)點(diǎn):服務(wù)器、網(wǎng)線(xiàn)、交換機端口。而這三個(gè)點(diǎn)的排查難度是由難到易,因此我們先排查交換機端口的問(wèn)題;
3:首先更換左端服務(wù)器與交換機連接的端口,更換后,丟包問(wèn)題依然存在,可以排除左端交換機端口的問(wèn)題,用同樣的辦法測試右端服務(wù)器與交換機端口,依然可以排除交換機端口的問(wèn)題;
4:那么接下來(lái)排查網(wǎng)線(xiàn)的問(wèn)題,如果是線(xiàn)路的問(wèn)題,那么在交換機的端口一定會(huì )產(chǎn)生大量的CRC錯誤,那么首先登錄到左邊交換機上查看端口G1/0/3的狀態(tài),沒(méi)有發(fā)現有CRC錯誤,然后等到右邊交換機上查看端口G1/0/4的狀態(tài),發(fā)現端口有大量CRC錯誤,而且CRC錯誤包的數量還在增長(cháng),因此初步懷疑該接口下的網(wǎng)線(xiàn)有問(wèn)題,于是更換一條生產(chǎn)發(fā)貨的網(wǎng)線(xiàn)更換后,丟包問(wèn)題解決。
TIPS:做網(wǎng)線(xiàn)是網(wǎng)絡(luò )工程師的基本技能,甚至任何一個(gè)IT賣(mài)場(chǎng)的售貨人員都會(huì )做網(wǎng)線(xiàn),但是網(wǎng)線(xiàn)的質(zhì)量卻千差萬(wàn)別,由網(wǎng)線(xiàn)引發(fā)的網(wǎng)絡(luò )丟包無(wú)計其數,千里之堤毀于蟻穴,日常網(wǎng)絡(luò )維護中不可忽視小小的網(wǎng)線(xiàn)。而對于線(xiàn)路引發(fā)的丟包,如果交換機或者路由器接口上收到runts,giants,throttles,CRC,frame等錯幀而且錯幀的數量在不斷的增長(cháng),那么需要檢查對端設備或者中間的傳輸鏈路是否存在問(wèn)題;如果收到overruns等錯幀,需要確定本端的鏈路帶寬是否足夠。
某客戶(hù)全國網(wǎng)項目在在北京中心通過(guò)配置CPOS板卡通過(guò)拆分E1連接下面31個(gè)省中心實(shí)現省節點(diǎn)與中心節點(diǎn)的互聯(lián),某局點(diǎn)與中心節點(diǎn)連接示意圖如下:
在S省節點(diǎn),客戶(hù)反饋訪(fǎng)問(wèn)總部的業(yè)務(wù)很慢,通過(guò)Ping檢測發(fā)現網(wǎng)絡(luò )有不規律丟包,工程師查看S省節點(diǎn)路由器E1接口上有大量的CRC錯誤,如下:
<RT_3016_1>disp int ser 5/1
。。。。。。
Last clearing of counters: Never
Last 300 seconds input rate 0.00 bytes/sec, 0 bits/sec, 0.00 packets/sec
Last 300 seconds output rate 0.00 bytes/sec, 0 bits/sec, 0.00 packets/sec
Input: 57433 packets, 2314250 bytes
0 broadcasts, 0 multicasts
57338 errors, 0 runts, 0 giants
46901 CRC, 23 align errors, 0 overruns
0 dribbles, 0 aborts, 0 no buffers
10414 frame errors
Output:211 packets, 49547 bytes
0 errors, 0 underruns, 0 collisions
0 deferre
根據如上的輸出信息,工程師認定是線(xiàn)路問(wèn)題,于是客戶(hù)協(xié)調運營(yíng)商排查線(xiàn)路,但是運營(yíng)商經(jīng)過(guò)一個(gè)星期的艱苦卓絕的辛苦工作,非常確認線(xiàn)路沒(méi)有問(wèn)題。運營(yíng)商為了證實(shí)自己的線(xiàn)路沒(méi)有問(wèn)題,自己攜帶了一臺新的路由器替換S省節點(diǎn)客戶(hù)的MSR路由器,替換的結果讓所有的人意外,替換后,網(wǎng)絡(luò )不再有丟包!看起來(lái)CRC錯誤并不一定是線(xiàn)路的問(wèn)題?難道問(wèn)題是MSR路由器引發(fā)的?工程師仔細檢查了兩臺設備環(huán)境的不同之處,發(fā)現最大的區別是MSR路由器接地了,而新替換的路由器沒(méi)有接地而且客戶(hù)機房中的光端機以及其他傳輸設備都沒(méi)有接地,那么意味著(zhù)MSR與網(wǎng)絡(luò )中的其他設備不共地,由于電磁干擾對E1線(xiàn)路影響較大,因此工程師確認是接地因此的丟包問(wèn)題,于是在現場(chǎng)將MSR路由器上的接地取消后,網(wǎng)絡(luò )不再丟包。
TIPS:對于網(wǎng)絡(luò )設備,最好全部共地,避免由于不共地而引起的丟包,而在雷雨較多的南方城市,接地更是強制的,而在北方地區由于氣候干燥,那么靜電引起的丟包或者其他問(wèn)題對網(wǎng)擴設備影響較大;對于E1線(xiàn)路引發(fā)的丟包問(wèn)題,一般可以從三方面著(zhù)手,一是可以通過(guò)打環(huán),二是確認E1或者CPOS的時(shí)鐘設置、三是接口CRC或者是其他字段的參數設置是否一致;而如果是POS鏈路問(wèn)題,那么要查看Pos接口的字段C2、j0以及加擾設置是否一致。
某客戶(hù)的對外服務(wù)辦公網(wǎng)絡(luò )通過(guò)大量二層交換機連接終端,這些終端對外提供實(shí)時(shí)服務(wù),而所有的二層交換機都通過(guò)雙上行的方式連接到核心交換機上,客戶(hù)網(wǎng)絡(luò )示意圖如下:
客戶(hù)的網(wǎng)絡(luò )是局域網(wǎng)典型網(wǎng)絡(luò )結構,整個(gè)網(wǎng)絡(luò )通過(guò)STP來(lái)避免環(huán)路并實(shí)現雙上行鏈路備份,整個(gè)網(wǎng)絡(luò )設計合理規范,但是突然有段時(shí)間客戶(hù)反饋下面的終端業(yè)務(wù)辦理很慢,而且有時(shí)斷時(shí)續的現象。工程師首先明確網(wǎng)絡(luò )現象,確認網(wǎng)絡(luò )中所有的終端業(yè)務(wù)都受到影響,因此工程師懷疑網(wǎng)絡(luò )中有環(huán)路導致引發(fā)廣播風(fēng)暴從而影響網(wǎng)絡(luò )的正常轉發(fā)。因此工程師將處于備份狀態(tài)的一臺S7500下行連接業(yè)務(wù)的端口都斷開(kāi),斷開(kāi)后,終端業(yè)務(wù)恢復,因此可以確認為網(wǎng)絡(luò )環(huán)路導致了業(yè)務(wù)丟包,但是依然不能具體的問(wèn)題點(diǎn)在那里。接下來(lái)工程師在晚上網(wǎng)絡(luò )沒(méi)業(yè)務(wù)流量的情況下,對S7500下行連接的L2交換機進(jìn)行逐個(gè)排查,也即逐個(gè)將下行的L2交換機上行恢復到雙上行結構同時(shí)開(kāi)通過(guò)個(gè)Ping窗口對業(yè)務(wù)進(jìn)行監測。果不其然,再將某臺L2交換局恢復到雙上行結構時(shí),Ping業(yè)務(wù)出現丟包現象。工程師對該接入L2交換機的接口狀態(tài)進(jìn)行查看,發(fā)現兩個(gè)上行端口都處于STP Forwarding狀態(tài)。這種情況下必然導致網(wǎng)絡(luò )環(huán)路。最后工程師確認是光模塊硬件問(wèn)題導致?tīng)顟B(tài)錯誤而引起STP計算錯誤。
TIPS:對于局域網(wǎng)的問(wèn)題,由于局域網(wǎng)有大量的L2交換局、HUB以及接入很多終端,因此局域網(wǎng)的問(wèn)題要特別注意廣播風(fēng)暴引發(fā)的全網(wǎng)振蕩,而廣播風(fēng)暴的引發(fā)的局域網(wǎng)問(wèn)題,可能是由于環(huán)路產(chǎn)生,而ARP Flooding、病毒、非法軟件也都有可能引發(fā)局域網(wǎng)振蕩,對于局域網(wǎng)網(wǎng)絡(luò )問(wèn)題建議如下;
à 盡可能將L3網(wǎng)關(guān)下移,增加路由L3層次的報文處理,減少L2交換層次的連接;
à 避免網(wǎng)絡(luò )中單個(gè)VLAN下交換機或者HUB級聯(lián)層次太多,減少廣播風(fēng)暴以及網(wǎng)絡(luò )環(huán)路的影響;
à 在接入終端服務(wù)器或者PC的交換機端口上配置STP 邊緣端口、BPDU保護;
à 全網(wǎng)部署EAD,對接入網(wǎng)絡(luò )的用戶(hù)終端強制實(shí)施企業(yè)安全策略,嚴格控制終端用戶(hù)的網(wǎng)絡(luò )使用行為,有效地加強用戶(hù)終端的主動(dòng)防御能力
丟包的問(wèn)題是網(wǎng)絡(luò )中最常見(jiàn)的問(wèn)題也是耗費時(shí)間最久定位時(shí)間較長(cháng)的問(wèn)題,以上三個(gè)案例基本上涵蓋了常見(jiàn)的丟包問(wèn)題的處理思路,我們在日常的網(wǎng)絡(luò )維護過(guò)程中需要慢慢積累經(jīng)驗,也許丟包也并不那么惹人煩!