TCP协议中的URG-PSH

来源:互联网 发布:mac怎么更新系统 编辑:程序博客网 时间:2024/05/22 13:23

Morning,guys~
今天Val要和大家分享有关TCP协议中的控制位,我们知道TCP协议有URG 、ACK、PSH、RST、SYN、FIN六个控制位,今天主要分享URG和PSH的有关概念及特点。

1.各自概念

URG 紧急位,设置为1时,首部中的紧急指针有效(表示分段中有紧急数据应当加速传送 );为0时,紧急指针没有意义

PSH 推位,推功能当PSH=1时,要求发送方马上发送该分段,而接收方尽快的将报文交给应用层,不做队列处理。

2.特点

通常的数据中都会带有PSH ,  但URG只在紧急数据时设置,也称”带外数据”。

URG标志设置为1时,紧急指针才有效,紧急方式是向对方发送紧急数据的一种方式,表示数据需要优先处理。它是一个正的偏移,表示紧急指针指向包内数据段的某个字节(数据从第一字节到指针所指字节就是紧急数据),不进入接收缓冲(一般不都是待发送的数据要先进入发送缓存吗?就直接交给上层进程,余下的数据都是要进入接收缓冲的)

3.URG和PSH区别

一般来说TCP是要等到整个缓存都填满了后再向上交付,但是如果PSH=1的话,就不用等到整个缓存都填满,直接交付,但是这里的交付仍然是从缓冲区中交付的;

URG是不要经过缓冲区的