TCP首部中的URG和PSH概念以及区别

xiaoxiao2021-02-28  285

1 紧急URG

         当URG=1时,表明紧急指针字段有效。它告诉此系统此报文段中有紧急数据,应尽快传送,而不要按原来的排队顺序传送。URG设置为一时,发送方TCP就把紧急数据插入到本报文数据的最前面,在紧急数据后面的数据仍然是普通数据。

              

    紧急数据起点: 序号

    紧急数据终点:序号+紧急指针         

2  推送PSH 

         当两个应用进程进行交互式通信时,有时一端的应用进程希望在键入一个命令后立即得到对方的响应。这时,发送方TCP把PSH置为1,并立即创建一个报文段发出。接收方TCP收到PSH=1的报文段后,就尽快的交付给接受应用进程,而不是等到整个缓存都填满后再交付。(这个报文和之前缓存区中的没有交付的数据一起交付

        PSH数据: 缓存区数据+本报文数据

        PSH方向:单方向(接收PSH报文的一端)

3 联系:

    两者都是想要发送紧急数据,而对数据的一种处理方式。

4 区别:

          (TCP/IP协议中默认是数据缓冲区到达一定上限再交付)

         (1)URG交付的只有紧急数。PSH交付的是缓存区中的数据和紧急数据

         (2)URG是把紧急数据不进入接收缓冲区,直接交付(紧急指针后的普通数据仍然先存到缓冲区中)。

                  PSH是紧急数据先进入缓冲区,在和紧急数据之前的缓存区中的数据一并交付。

          (URG是处理在前端(收到数据后立马对真正意义上"数据"进行操作,所以说"紧急.而PSH是在处理的后端,告诉内核,不用等待"满了"再递交数据递交到上层.)

           

     

     

           

转载请注明原文地址: https://www.6miu.com/read-51317.html

最新回复(0)