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

擁塞

鎖定
擁塞是指到達通信子網中某一部分的分組數量過多,使得該部分網絡來不及處理,以致引起這部分乃至整個網絡性能下降的現象,嚴重時甚至會導致網絡通信業務陷入停頓,即出現死鎖現象。這種現象跟公路網中經常所見的交通擁擠一樣,當節假日公路網中車輛大量增加時,各種走向的車流相互干擾,使每輛車到達目的地的時間都相對增加(即延遲增加),甚至有時在某段公路上車輛因堵塞而無法開動(即發生局部死鎖 [1]  )。
中文名
擁塞
應用科學
通信工程
危 害
影響網絡通信業務

擁塞基本概念

注意讀音:yōng sè
Congestion 擁塞: 每個通過網絡發送的包由於網絡中充塞着包而經歷極長延遲的情況。除非協議軟件能檢測擁塞和減少包的發送率,否則網絡就會因擁塞而癱瘓 [1] 
擁塞現象是指到達通信子網中某一部分的分組數量過多,使得該部分網絡來不及處理,以致引起這部分乃至整個網絡性能下降的現象,嚴重時甚至會導致網絡通信業務陷入停頓即出現死鎖 [1]  象。
擁塞是一種持續過載的網絡狀態,此時用户對網絡資源(包括鏈路帶寬、存儲空間和處理器處理能力等)的需求超過了固有的容量。就Internet的體系結構而言,擁塞的發生是其固有的屬性。因為在事先沒有任何協商和請求許可機制的資源共享網絡中,幾個IP分組同時到達路由器,並期望經同一個輸出端口轉發的可能性是存在的,顯然,不是所有分組可以同時接受處理,必須有一個服務順序,中間節點上的緩存為等候服務的分組提供一定保護。然而,如果此狀況具有一定的持續性,當緩存空間被耗盡時,路由器只有丟棄分組。在這種持續過載的狀態下,網絡性能會急劇下降 [1] 
路由器作為網絡中不同流量匯聚的節點,面對網絡流量的急劇增長,其承擔的壓力也越來越大;而傳統的盡力而為(Besteffort)的服務模式早已不能滿足用户對服務質量的要求,網絡擁塞的問題也越來越嚴重 [1] 

擁塞產生原因

網絡發生擁塞的根本原因 [2]  在於用户產生的網絡負載大於網絡資源容量和處理能力。導致擁塞產生的直接原因可以分為以下幾點。

擁塞存儲空間不足

當幾個數據流需要從同一個端口輸出時,該端口需要建立一個隊列來排隊處理。如果該端口沒有足夠的存儲空間,數據分組就會被丟棄,特別是針對突發數據流。增加數據存儲空間可從一定程度上緩解這一矛盾,但如果路由器有無限的存儲空間,反而只會使擁塞問題變得更嚴重,因為數據包在隊列中經過長時間的排隊才被轉發出去時,它們早已經超時,源端會認為它們已被丟棄,重新發送它們,但這些數據包實際上還會繼續沿下一個路由器轉發,從而導致網絡資源的浪費,加重網絡的擁塞 [2] 

擁塞帶寬容量不足

網絡中的低速鏈路是網絡中的“帶寬瓶頸”,當它不能滿足所有通過它的源端的帶寬要求時,網絡就會產生擁塞,影響網絡的性能。
處理器的能力不足也會造成網絡擁塞。
如果路由器處理器處理排隊,更新路由表等操作時,速度跟不上高速鏈路,就會發生網絡擁塞 [2] 

擁塞防止方法

(1)傳輸層可採用:重傳策略、亂序緩存策略、確認策略、流控制策略和確定超時策略。
(2)網絡層可採用:子網內部的虛電路與數據報策略、分組排隊和服務策略、分組丟棄策略、路由算法和分組生存管理。
(3)數據鏈路層可採用:重傳策略、亂序緩存策略、確認策略和流控制策略 [2] 

擁塞通信子網的擁塞控制策略

TCP基於窗口的端到到的擁塞控制策略對於Internet的魯棒性和穩定性具有關鍵作用。然而,由於Internet的迅速發展,其網絡規模越來越大,結構日趨複雜,緊緊依靠基於端主機的擁塞控制是不夠的。而且網絡的應用也越來越多,有些應用本身缺乏有效的擁塞控制策略。這就要求網絡也參與到資源的控制中。基於通信子網的擁塞控制
策略通常位於IP層,主要包括路由器的隊列調度算法和隊列管理策略,而隊列管理策略是主要的研究方向。隊列調度策略通過數據流如何排隊(但對列或多隊列)決定哪些包可以傳輸來分配帶寬;而隊列管理策略根據隊列長度來控制數據包丟棄率或標記率來分配緩存 [1] 

擁塞隊列調度算法

數據流的排隊可以分為單隊列方式和多隊列方式。單隊列排隊是指將所有到同一個輸出口的數據流無區別地排成一個隊列,採取先進先出(FIFO)的方式傳輸隊列中的數據包,其中涉及到如何對數據包丟棄或標記的問題,我們放在隊列緩存管理部分敍述。多隊列排隊根據一定的規則把輸入數據流對應到不同的隊列。隊列調度算法性能的評價指標主要包括隊列延時、公平性、複雜性等 [1] 

擁塞隊列管理策略

隊列管理通常是指用特定的分組丟棄策略來維護隊列長度的大小,實現網絡的控制。同時,丟包的信息可以反饋到端主機的上層進行擁塞控制 [1] 
參考資料