根据RFC 2581,TCP协议实现了慢启动、拥塞避免以及快速重传/快速恢复。
本文重点讲tcp拥赛和恢复的可靠性机制。
一、tcp的拥塞控制机制算法
-
TCP Reno(默认)
根据RFC 2581,TCP堆栈实现了慢启动、拥塞避免以及快速重传/快速恢复。 -
TCP SACK(选择性确认)
此策略用于处理数据传输过程中多个丢失的段。通过选择性确认,数据接收者会告知发送者所有成功到达的段,因此发送者只需重新传输那些丢失的段。选择此选项以使TCP数据接收者能够接受带有SACK选项的TCP连接;同时使TCP数据发送者能够使用SACK丢失恢复算法,而不是非SACK TCP实现,如Reno。
注意:
-
有关更多信息,请参阅以下RFCs:
- RFC 2018 - TCP选择性确认选项
- RFC 2883 - 对TCP的选择性确认(SACK)选项的扩展
- RFC 6675 - 基于选择性确认(SACK)的TCP的保守丢失恢复算法
-
在启用SACK选项的测试配置中,Avalanche发送的每个TCP段中的净有效载荷大小是MSS值减去40字节(假设没有启用其他TCP选项)。这种Avalanche实现并不完全符合RFC 6691,TCP选项
-