擁塞控制方法

擁塞控制方法

擁塞控制 鏈路方法 終端方法

基本介紹

  • 中文名:擁塞控制方法
簡介,鏈路方法,終端方法,

簡介

從擁塞控制方法施行的位置來看,可以分為基於終端的擁塞控制和基於鏈路(路由器)的擁塞控制。鏈路方法在網路設備(如路由器和交換機)中執行,作用是檢測網路擁塞的發生,產生擁塞反饋信息。終端方法在主機和網路邊緣設備中執行,作用是根據反饋信息調整傳送速率。擁塞控制算法設計的關鍵字是如何生成反饋信息和如何對反饋信息進行回響。

鏈路方法

擁塞控制的鏈路方法假定網路傳輸流的端設備對丟包和標記做出回響,並調整自身的吞吐量,這種假設是與TCP的擁塞控制相對應的。
傳統網路設備採用PQM(被動佇列管理)來管理網路中間節點數據包的排隊,它採用FIFO的Drop-tail丟包策略,僅在輸入溢出時進行丟包,這種方式容易產生Lock-out(鎖外),Full-queues(滿列)和Global synchronization(全局同步)等問題。雖然採用Random-drop和Drop-from丟包策略可以避免Lock-out問題,但是卻無法解決滿佇列和全局同步引起的震盪問題。
為了緩解上面提到的這些問題,出現了AQM(主動佇列管理)技術。AQM是路由器在佇列充滿之前丟包,這樣端節點便能在佇列溢出前對擁塞做出反應,從而達到避免擁塞的目的。以AQM技術為基礎又進一步提出了一些改進和最佳化方法。

終端方法

1)TCP擁塞控制
使用最廣泛的基於終端的擁塞控制方法是TCP協定的擁塞控制算法。TCP是目前在網際網路中使用最廣泛的傳輸協定。廣義的來講,TCP擁塞控制的概念是每個源端判斷當前網路中有多少可用容量,從而知道它可以安全完成傳送的分組數。一旦某個源端有這么多分組在傳送,它用確認(ACK)信號的到達表明它有一個分組已經離開網路,因而它不需要增加擁塞級別就可以安全地向網路中傳送一個新的分組,通過使用確認信息來協調分組的傳送,TCP稱為自同步(self-clocking)的。
TCP擁塞控制機制包括慢啟動(slow start)、擁塞避免、快速重傳(fast retransmit)、快速恢復(fast recovery)、選擇性應答(SACK)等。通過在終端上對網路的擁塞情況作出適當的調整,可以大大提高網路傳輸的性能,減少擁塞發生的可能性。
TCP中使用的擁塞控制算法已經成為保證目前網際網路穩定性的重要因素。
2)ECN(Explicit Congestion Notification)
由於目前TCP使用丟包作為隱式的擁塞指示信號,即傳送方檢測到重複的ACK或者重傳逾時的時候認為發生擁塞,這種機制在用於檢測擁塞時開銷較大,需要等待較長的周期才能發現擁塞,降低了擁塞控制的效率。為此,顯示擁塞通告算法ECN可以減少由於不比要的丟包產生的延時,其主要思想是通過路由器對擁塞的判斷,顯示的設定擁塞標記,傳送端主機通過網路中返回的帶擁塞反饋標記的包發現擁塞。
3)XCP和VCP
隨著網際網路的發展,端到端頻寬時延積逐漸增大,傳統的TCP算法逐漸暴露出它的問題。TCP的加式增加相對於網路頻寬顯得過於緩慢,往往不能充分地利用鏈路資源,因此,不少算法都針對大頻寬時延積網路提出MIMD(積式增加積式減少),提高慢啟動速度等方案,這些算法一方面針對大頻寬時延積網路做出了最佳化,但另一方面也是去了對小頻寬時延積網路的適應性。
針對這些問題,提出了一種新的網際網路擁塞控制機制XCP。XCP(eXplicit Control Protocol)事實上是對ECN機制的一種擴充,它的主要思想是充分利用網路中間節點對鏈路頻寬的認知,為端到端擁塞控制機制提供比是否發生擁塞更多和更有效的網路頻寬提示,從而使控制機制能夠更快的適應當前的網路狀況。
VCP(Variable-structure congestion Control Protocol)協定是一個新的傳輸協定。該算法可以認為是在ECN和XCP算法的基礎上發展而來,它繼承了ECN和XCP利用路由器提供擁塞指示的思想,但它試圖避免大幅度修改傳統TCP+AQM/ECN網路的主要結構,利用現有的ECNbit達到與XCP類似的性能。

相關詞條

熱門詞條

聯絡我們