衛星網絡中使用TCP協議的劣勢
為了避免產生網絡擁塞,原TCP協議綜合采用了慢啟動、擁塞避免、快速重傳以及快速恢復等算法。但這些算法應用的前提是網絡發生擁塞造成丟包,然而在誤碼率相對較高的衛星通信系統中,部分丟包是由誤碼造成的,tcp協議對此不能區分,從而造成TCP傳輸性能的惡化。
1、 大傳播延時
(1)帶寬時延積帶寬x時延BDP決定了一條TCP連接所能在“空中傳輸”的報文總量,其中時延是RTT(發送方發送書包的往返時延)。然而在大BDP的衛星通信系統中,TCP吞吐量受滑動窗口大小的限制,在不考慮丟包的情況下,TCP的吞吐量可大致由下式得出:
最大吞吐量 = 滑動窗口的大小 / RTT
Tcp中最大滑動窗口大小為 64kbytes, GEO衛星(地球靜止軌道衛星)的RTT為550ms左右,從而TCP在GEO衛星通信系統中的最大吞吐量為 128kbytes/s = 1.024Mbit/s
(2)慢啟動和擁塞避免機制在大延時衛星網絡中性能也很差(實驗結果)
(3)快速重傳和快速恢復在衛星鏈路中受長延時的影響,重復確認信息的多次傳輸會造成衛星資源的浪費
2、誤碼率
信道誤碼率高造成丟包 會干擾TCP的擁塞控制(主要針對網絡擁塞丟包),從而大大降低傳輸速率
3、 信道不對稱
衛星通信系統前向鏈路和反向鏈路不對稱,反向鏈路受限造成應答延時或丟包,進而造成前向鏈路發送阻塞、慢啟動緩慢,避免重傳的快速重傳機制的有效性下降。
https://blog.csdn.net/skc361/article/details/25895393