複製鏈接
請複製以下鏈接發送給好友

網絡擁塞

鎖定
網絡擁塞(network congestion)是指在分組交換網絡中傳送分組的數目太多時,由於存儲轉發節點的資源有限而造成網絡傳輸性能下降的情況。
網絡擁塞是一種持續過載的網絡狀態,此時用户對網絡資源(包括鏈路帶寬存儲空間和處理器處理能力等)的需求超過了固有的處理能力和容量。在Internet的體系結構中,擁塞的發生是其固有的屬性。
中文名
網絡擁塞
外文名
network congestion

網絡擁塞定義

網絡擁塞(congestion)是指在分組交換網絡中傳送分組的數目太多時,由於存儲轉發節點的資源有限而造成網絡傳輸性能下降的情況。當網絡發生擁塞時,一般會出現數據丟失,時延增加,吞吐量下降,嚴重時甚至會導致“擁塞崩潰”(congestion collapse)。通常情況下,當網絡中負載過度增加致使網絡性能下降時,就會發生網絡擁塞。可由圖 2.1 形象描述網絡擁塞現象發生的過程 [1] 
圖 2.1 吞吐量、延時與負載的關係 圖 2.1 吞吐量、延時與負載的關係 [1]

網絡擁塞網絡擁塞形成的原因

因為在事先沒有任何協商和請求許可機制的資源共享網絡中,幾個IP分組同時到達路由器,並期望經同一個輸出端口轉發的可能性是存在的,顯然,不是所有分組可以同時接受處理,必須有一個服務順序,中間節點上的緩存為等候服務的分組提供一定保護。然而,如果此狀況具有一定的持續性,當緩存空間被耗盡時,路由器只有丟棄分組。在這種持續過載的狀態下,網絡性能會急劇下降。
存儲空間限制
在每個輸出端口有一定的存儲空間,若一個輸出端口被幾個輸入數據流共同使用,輸入流的數據包就會在該存儲空間內排隊等待輸出。當端口轉發數據的速率低於數據包的到達速率時,會造成存儲空間被佔滿的情形,後到達的數據包將被丟棄。突發數據流的此種現象更多。雖然從某種程度上來講,存儲空間的增加能夠緩解輸出端口的壓力。但是存儲空間無限制的增加,會導致數據包完成轉發時,它們早已超時,源端認為這些數據包在傳輸過程中被丟棄而要求重發,不僅降低網絡效率,而且使得網絡擁塞情況更加嚴重。另外在實際應用中,存儲容量不可能無限制的增加,不符合實際意義。
帶寬容量的限制
通過實踐證明低速鏈路難以應對高速數據流的輸入,從而發生網絡擁塞。依據香農理論,信源的發送速率必須小於或等於信道容量。因此,當源端帶寬遠大於鏈路帶寬形成帶寬瓶頸時,導致數據包在網絡節點排隊等待,造成網絡擁塞。
處理器性能限制
路由器中的 CPU 主要執行緩存區排隊、更新路由表、進行路由選擇等功能,如果其工作效率不能滿足高速鏈路的需求,就會造成網絡擁塞。
在實際應用中,複雜的網絡結構和不合理的路由原則也會造成網絡擁塞現象的發生 [1] 

網絡擁塞擁塞控制

解決網絡擁塞的方法是擁塞控制(congestion control)。擁塞控制需要確保網絡能夠承載用户提交的通信量,是一個全局性問題,涉及主機、路由器等很多因素。衡量網絡是否擁塞的參數主要有:缺乏緩衝區造成的分組丟失率、平均隊列長度、超時重傳的分組數目、平均分組延遲及分組延遲變化等。根據控制論,擁塞控制方法分為兩類:第一類是開環控制,即通過設計一個好的算法來避免擁塞發生。在進行擁塞控制時,不考慮網絡的當前狀態。常用算法有:
1.源端擁塞控制算法
2.鏈路擁塞控制算法 [1] 
第二類是閉環控制,即給予反饋機制,根據網絡的當前狀態來控制擁塞。反饋方法有以下幾種:
1、向信息源發送一個告警數據報。
2、在數據包的結構中保留一個比特或一個域,用來表示發生擁塞。一旦發生擁塞,路由器對所有輸出數據報中的相應比特進行設置,以此來向鄰居告警。
3、主機或濾油器主動地、週期地發送探測數據報(probe),查詢是否發生擁塞。
閉環擁塞控制的工作過程如下:
1、由監控系統來發現何時何地發生擁塞;
2、當發生擁塞時,將發生擁塞的消息傳給能採取動作的站點;
3、調整系統操作,解決擁塞問題。 [2] 
參考資料
  • 1.    基於IPv6網絡的優先級檢測RED算法的研究
  • 2.    黃永峯,李星.計算機網絡教程:清華大學出版社,2006