PSH标志位
单词PUSH,意思是“推”。
接收缓冲区和发送缓冲区
进程A发送数据时,并不是直接发送,而是先写到自己的发送缓冲区。接收进程B接收到TCP报文时,会先将数据放入接收缓冲区。
PSH作用
将发送缓冲区的数据发送出去,将数据从接收缓冲区读取的时间是不确定的。
- 发送端
TCP模块自行决定,什么时候将发送缓冲区中数据打包成TCP报文,但如果发送缓冲区满了TCP同样会将数据打包发送。由于有MSS(最大报文段长度)的限制,数据可能会被打包成一个或多个TCP报文段。最后一个报文段会标记为PSH。
- 接收端
如果接收方接收到的某个TCP报文段包含PSH标志,接收方就会立即将缓冲区的所有数据推给进程。同样的,接收缓冲区如果满了也会推。
总结
发送方发送数据进行打包时,会将最后一个打包的TCP报文加上PSH标志;
接收方收到含有PSH的报文,会立刻把接收缓冲区的数据推给进程。
(本文仅作个人学习使用)
参考博客:(13条消息) 22-TCP 协议(PSH 标志)_tcp的psh_--Allen--的博客-CSDN博客

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/67559.html