小言_互联网的博客

tcp首部 与 tcp报文传输的机制

284人阅读  评论(0)

tcp头分析

偏移:头部长度(包含选项和填充
保留区:6个0
URG-紧急指针有效
ACK-确认序号有效
PSH-接收方应尽快将这个报文交给应用层
RST-连接重置
SYN-同步序号用来发起一个连接
FIN-终止一个连接
窗口字段:窗口的字节容量
校验和:看数据有没有被改
紧急指针:是一个正偏移量,与序号字段中的值相加表示紧急数据最后一个字节的序号。TCP的紧急方式是发送端向另一端发送紧急数据的一种方式
选项与填充(必须为4字节整数倍,不够补0):
最常见的可选字段的最长报文大小MSS(Maximum Segment Size),每个连接方通常都在一个报文段中指明这个选项。它指明本端所能接收的最大长度的报文段。该选项如果不设置,默认为536(20+20+536=576字节的IP数据报)

MMS确认

最大消息长度在第三次握手时确定

窗口控制

收到一个再发一个太慢了,
一次发多个,用窗口报存

高速重发控制

一次没收到再等一等,说不定下一秒就到了,连续三次催了再重发

流控制

没处理的多了就把窗口调小,另一端就会发少一点。

拥塞控制

选min(接受端允许窗口大小,拥塞窗口大小)作为发包多少的标准。
拥塞窗口:建立连接初始为0,每收到ACK应答就快速变大。
一开始不允许发太多,防止一开始就卡死;
重复确认应答:窗口减半;(高速重发控制,遇到连续3次催)
超时:窗口设0;

nagle算法(内容及优缺点)

发的都有ack回 || 当前要发的积累到MSS了 才发
减少发包数,可能会产生延迟;

延迟确认应答机制

等窗口里的包处理一些了再回(应答包的窗口大小会大一点)

捎带应答机制

延迟确认应答机制的基础上,把确认应答塞到要回的数据包里;
减少发包数量。
缺:长时间没准备好数据包,会连应答也没发回去。


转载:https://blog.csdn.net/qq_42948022/article/details/102487940
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场