Vegas A (改進的 TCP-Vegas)


TCP Vegas是一種改進的TCP Vegas演算法。它依賴於往返時間(RTT)值的精確計算來確定基礎RTT。TCP根據往返時間(RTT)在不同階段檢測並避免擁塞。這裡的A代表自適應(Adaptive)。TCP Vegas更注重資料包延遲而不是資料包丟失。TCP Vegas演算法最初由Larry L Peterson和Lawrence Brakmo於1994年提出。透過在傳輸過程中保持擁塞視窗較小,TCP Vegas能夠在減少資料包丟失的同時獲得更高的吞吐量。

定義

TCP Vegas是一種避免在不同初始階段發生擁塞的演算法,即TCP擁塞避免演算法。TCP根據往返時間(RTT)在不同階段檢測並避免擁塞。

TCP Vegas能夠檢測網路擁塞,並能識別端到端測量往返時間(RTT)的問題。

擁塞避免機制

為了提高網路效率,需要估計可用的網路頻寬。TCP利用網路反饋來控制網路流量速率。

TCP負責使用頻寬估計方案檢查頻寬的可用性和最大使用量。

TCP擁塞避免演算法是TCP Vegas,它更關注資料包延遲而不是資料包丟失。它決定資料包傳送速率。

在當今世界,現代技術中湧現出更高效的擁塞控制技術,例如5G、物聯網等,這些技術都使用了能夠適應其效能的TCP Vegas。因此,TCP Vegas主要可見於最新的網際網路中,而不是路由器或任何作業系統中。TCP Vegas比其他現有網路更穩定和公平。

TCP Vegas演算法

TCP Vegas包含兩個引數α和β。根據佇列中資料差異的值,存在三種情況。

演算法中使用的術語如下:

t時刻的實際吞吐率 = 在沒有擁塞的情況下達到的資料速率。

t時刻的預期吞吐率 = 發生擁塞時的速率。

RTT = 往返時間。

差值(Diff) = 預期速率 – 實際速率

如果Diff值恆定,即位於α和β之間,則會出現兩種情況:

  • 情況一) − 如果Diff小於α,則視窗大小(cw)增加1。

  • 情況二) − 如果Diff大於β,則視窗大小(cw)減少1。

這裡α和β是閾值。

此外,如果RTT值很大,則視窗大小(cw)減小,這是由β閾值觸發的,導致視窗大小減小。我們還可以看到由於佇列中資料包負載過重而導致的擁塞。

如果RTT值較小,則視窗大小(cw)避免風險,這是由α閾值觸發的。我們還可以看到佇列為空。但是,需要避免不利用全部可用頻寬的風險。因此,增加視窗大小(cw)。

由於TCP Vegas依賴於BaseRTT的精確值,如果BaseRTT值過小,則協議吞吐量將保持在可用頻寬以下。

簡單來說,如果資料佇列過長,則網路中會發生擁塞。

而如果資料佇列為空,則會存在不利用頻寬的風險。閾值觸發根據實際值和預期值的變化來避免擁塞。

與TCP Vegas相關的問題是重新路由

重新路由可能導致吞吐量大幅下降。如果交換機更改了路由,則在沒有明確訊號的情況下,它無法檢測到終端主機。如果新路由的傳播延遲較長,則TCP Vegas無法判斷這是由於路由更改還是網路擁塞導致的往返延遲。但是,如果大部分資料包經歷較短的往返延遲,則Base RTT將被更新。

由於積壓,延遲會變短,但在恢復穩定後會再次變長。

TCP Vegas的優點

  • 在TCP Vegas中,即使資料包丟失率為1/2到1/5,也能實現40%到70%的吞吐量。

  • 它還有助於保持高吞吐量並避免不必要的資料包丟失。但是,我們需要注意在某些情況下保持引數最佳化效能和修改。

TCP Vegas的缺點

  • 隨著負載增加或路由器緩衝區數量減少,Vegas擁塞避免機制的效果不佳。

  • Vegas限制其對路由器緩衝區的利用,如閾值所指定,因此TCP Vegas在使用路由器緩衝區方面不夠積極。

結論

TCP Vegas有助於提高網路效能。它減少了延遲並增加了吞吐量。透過有效地利用可用頻寬,而不是積極地重傳以實現吞吐量。吞吐量最小化,而傳輸最大化。

如果收到重複的ACK,則會發生重傳過程。這有助於將視窗大小減小到一半。當我們將TCP Vegas與TCP Reno進行比較時,TCP Vegas的效能要好得多。

更新於:2023年4月12日

瀏覽量:218

啟動你的職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.