在我們對局域網進行管理的過程中,經常會碰到網絡傳輸不暢而導致上網時斷時續,或者網速非常緩慢,出現這種現象很多情況下都是由于網絡丟包引起的,網絡丟包是指數據包由于各種原因在信道中發生丟失的現象。
引起網絡丟包的原因
1、線路出現故障
當網管員發現網絡傳輸時常中斷時,要考慮兩種情況,第一種是線路出現了故障,第二種情況是用戶設置方面的原因。那么,我們如何分清是哪一種情況引起的網絡中斷呢?我們可以通過如下操作進行測試。
當網絡線路的實現是通過路由器時,我們首先登陸到路由器,然后通過擴展Ping大量數據包向對端路由器接口進行發送。當線路是通過三層交換機實現時,我們將兩臺計算機分別接在線兩端,并將IP地址分別設為本端三層路由交換機的廣域網接口地址,使用Ping對端計算機地址-t命令進行測試。
在測試中,如果沒有發現丟包現象,那么說明不是線路故障引起的網絡中斷,而是用戶自身的原因引起的,如果在測試中發生了丟包,則說明是由于線路故障所引起,我們要與線路的提供商聯系,找到解決方法。
除此之外,如光纖連接問題,跳線與設備接口沒有對準,雙絞線及RJ-45接頭出現故障,通信線路收到干擾和信號衰減,這些情況都有可能造成數據包丟失。
2、設備出現故障
這種情況主要是指設備硬件方面的故障,比如網卡出現問題,交換機端口出現了屋里故障,光纖收發器的電端口與網絡設備接口,或兩端設備接口的雙工模式不匹配。
一下舉一個實例進行說明:我遇到過一次丟包現象是由于一個交換機端口的光纖模塊故障而引起的,故障現象是此交換機每次運行一段時間就會發生司機,造成網絡通信中斷,必須要把交換機重新啟動后才能恢復正常工作。我在經過仔細查找后發現,原來有一個光纖模塊出現了問題,在替換了新的模塊后,交換機工作終于又恢復正常。這個故障背后的原因是,平時交換機在工作時,都要對所有數據表進行CRC錯誤檢測和長度校驗,在檢驗后丟棄被檢測出錯誤的包,然后轉發正確的數據包。這時候有錯誤的包未能在校驗中檢測出錯誤,這些包就會在動態緩存中堆積,無法發送,直至緩存中已經無法堆積,這時就會出現死機的現象。最終造成數據包無法到達目的主機。
3、這種情況也比較常見,造成這種情況的原因也很多,最主要的原因是由于路由器資源被大量占用。當發現網速變慢,并且丟包率上升時,我們可以使用命令show process cpu和show process mem,如果是IP input process占用了大量資源,再檢查fast switching是否禁用大流量外出端口,如果是的,則需要重新啟用。
然后檢查一下是否僅用了Fast switching on the same interface,如有多個網絡配一個接口并且這些網段間流量很大時,路由器工作方式為process-switches,可以在接口上執行enable ip route-cache same-interface。