解答TCP在高時延和丟包的網路中傳輸效率差的原因

2021-08-18 20:29:37 字數 1028 閱讀 7856

在這個數字世界中,數字資料的快速和可靠移動,包括全球範圍內的大規模資料傳送,對於幾乎所有行業的業務成功都變得至關重要。

然而,傳統的tcp協議具有固有的效能瓶頸,特別是對於具有高往返時間(rtt)和丟包的高頻寬網路上最為顯著。

tcp固有的傳輸效能瓶頸主要是由tcp的加性增/乘性減(aimd)擁塞避免演算法引起的,tcp擁塞演算法緩慢地探測網路的可用頻寬,增加傳輸速率直到檢測到分組丟失,然後指數地降低傳輸速率。

tcp的這種擁塞演算法是為了避免internet整體擁塞而設計的,因為在網際網路的早期,資料傳送網路都是基於電纜固定網路,傳輸中出現丟包就可以100%的認為是傳輸通道出現了擁塞。然而在今天的網路情況下,wifi/移動蜂窩網路等無線傳輸網路本身就具有天然的丟包可能性,這些與網路擁塞無關的其它分組丟失同樣降低了傳輸速率。

事實上,tcp aimd演算法本身也會造成丟包,導致網路出現瓶頸。在提高傳輸速率直到發生丟失時,aimd過於激進地探測可用頻寬導致丟包。在某些情況下,這種由於激進探測頻寬引發的丟包損耗實際上超過了來自其它原因(例如物理介質或交叉業務突發)的損耗,並且以不可**的損耗比將"無損耗通訊通道"變為"不可靠的通道"。

tcp aimd中基於丟包的擁塞控制對網路端到端傳輸吞吐量具有致命的影響:當乙個分組丟失需要重傳時,tcp大幅降低傳送資料甚至停止傳送資料到接收應用,直到重傳確認。所有的網路應用傳輸效能都會受到tcp這種擁塞演算法的影響,但是對於大批量資料的傳輸而言,尤其致命。

tcp中可靠性(重傳)與擁塞控制的這種耦合對檔案傳輸造成嚴重的人為吞吐量損失,這從基於tcp的傳統檔案傳輸協議(如廣域網上的ftp、http、cifs、nfs )的效能較差可見一斑。

下面條形圖顯示了在使用tcp (黃色顯示)的檔案傳輸技術的oc-1 (51 mbps)鏈路上,在各種資料報丟失和網路延遲條件下可實現的最大吞吐量。tcp連線吞吐量有乙個嚴格的理論限制,它僅取決於網路rtt和資料報丟失。請注意,增加更多頻寬不會改變tcp有效吞吐量。檔案傳輸速度沒有提高,昂貴的頻寬也沒有得到充分利用。

分組交換網中的時延 丟包和吞吐量

目錄 二 排隊時延 三 丟包 四 端到端時延 五 計算機網路中的吞吐量 網際網路的存在,為執行在端系統上的分布式應用提供了很好的服務。希望能通過網際網路在任意兩個端系統之間移動資料且不丟失資料,理想很美好,可現實卻很難達到。因為,計算機網路中必然會限制端系統之間的吞吐量 每秒能夠傳送的資料量 在端系...

高時延頻寬的網路環境下使用Iperf測試網路效能

先梳理兩個概念 什麼是高時延頻寬乘積的網路環境 頻寬 byte s 時延 64k位元組 1 衛星傳輸 時延550ms 頻寬1mbps以上。1024 1024 8 0.6 72090位元組。2 跨國internet訪問或國際電路 時延200ms 頻寬超過2.6mbps以上。3 千兆網路已經很流行了,時...

ns3 統計乙個包所經歷的時延 網路時延的幾個概念

節點處理時延 主機或路由器在收到分組後要花費一定的時間進行處理,比如分析首部,提取資料,差錯檢驗,路由選擇等。一般高速路由器的處理時延通常是微秒或更低的數量級。排隊時延 排隊時延很好理解,就是路由器或者交換機處理資料報排隊所消耗的時間。乙個特定分組的排隊時延取決於先期到達的 正在排隊等待向鏈路傳輸分...