千家信息网

TCP协议中URG与PSH的区别

发表于:2024-09-21 作者:千家信息网编辑
千家信息网最后更新 2024年09月21日,URG和PSH都属于TCP包头中的标志位,URG和PSH为 1 时,都表示当前有紧急数据。不同的是对紧急数据的处理方式不同。URG:为1时,表明紧急指针字段有效,它告诉系统此报文段中有紧急数据,应尽快
千家信息网最后更新 2024年09月21日TCP协议中URG与PSH的区别



URG和PSH都属于TCP包头中的标志位,URG和PSH为 1 时,都表示当前有紧急数据。不同的是对紧急数据的处理方式不同。


URG:为1时,表明紧急指针字段有效,它告诉系统此报文段中有紧急数据,应尽快传递,相当于高优先级,不再需要在接收队列中排队。例如,当我们想使用Ctrl+C终止一个远程进程时,会将URG置1,发送应用进程就告诉发送方的TCP有紧急数据要传送,于是发送方将紧急数据插入到本报文段数据的最前面,在紧急数据后面的数据仍是普通数据。urg为1的报文段不进入接收缓冲区而直接向上交付

TCP首部中只有紧急指针指出紧急数据的位置,它所指的字节为紧急数据,但没有办法指定紧急数据的长度


PSH:为1时,表示该报文段需要尽快发送到接收端的应用进程,有紧急事件需要应用程序去处理(例如希望得到接收方的立刻应答),这时就会把接收缓冲中排好序的那一段数据交给上层,而不用等待整个缓存都填满之后再向上交付。


因此,我们通常这样说,URG是紧急位,PSH是急迫位。


------muhuizz整理


0