TCP的几个要点
可靠传输
TCP-可靠传输-停止等待AQR协议
AQR(Automatic Repeat-reQuest) 自动重传请求
1.一个一个包传过来,没有应答的情况下,重新传包
2.一个一个包传过来,应答延迟没收到的情况下,重新传包
丢弃重复的包,重新应答
3.超过一定次数,会发送reset报文,RST,断开连接
TCP-可靠传输-连续ARQ协议+滑动窗口协议
发送多个数据包,发送完后,等待确认
接收方,回复ACK和最后收到的字节编号
TCP-可靠传输-SACK(选择性确认)
SACK(Selective acknowledgment)
告诉发送方哪些数据收到,哪些数据丢失
SACK信息放在TCP首部
Kind:1字节,5表示SACK
Length:1字节,表示SACK占多少字节
Left Edge:4字节,左边界
RIght Edge:4字节,右边界
TCP首部选项最多40字节
SACK选项最大占用字节=4*8+2 = 34
为什么在传输层分割
可以提高重传的性能
可靠传输是在传输层进行控制
传输层不分段,一旦数据丢失,整个数据都需要重传
传输层分了段,一旦数据丢失,只需要传输丢掉的数据
网友评论