TCP是如何保证可靠传输的
1:确认和重传:接受方在收到报文就会确认,发送方发送一段时间后没收到确认就重传。
2:数据校验,
3:数据的合理分片和排序
4:流量控制:接收方来不及处理时,提示发送方降低发送速率,防止包丢失。
5:拥塞控制:网络拥塞时,减少数据的发送。
滑动窗口机制:
发送窗口(SWND)和接受窗口(RWND)
通过窗口机制能够提高信道利用率并且维护已经发送但未接收到确认的报文
重传和确认:
超时重传:选用一种自适应算法,报文段往返时间RTT,TCP记录一个RTT的加权平均值RTTs,
超时时间RTO略大于RTTs,在计算RTTs时不考虑报文重传时的报文往返时间。
选择确认:
TCP报文中的头部选项中设置SACK。
流量控制
数据处理不过来时,减小接收窗口的值并通知给发送方,发送窗口的值小于接收窗口的值,因此减小传输速率,
拥塞控制
慢开始和拥塞避免
快恢复和快重传