卫星网络中使用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