1、URG紧急位

      URG=1,该tcp报文为紧急报文;其中的紧急数据需要直接交付给接收端的进程,而不进入缓存。

    紧急数据的长度=紧急指针;

    紧急数据的起始点=序号;

    紧急数据的终止点=序号+紧急指针;

 (综上,紧急指针就是记录紧急数据的字节数,紧急指针永远为正数)

    1)在紧急数据后面的数据为普通数据,需要按序缓存

    2)窗口为0也可以发送紧急数据

    3)紧急数据都处理完成后,tcp就告诉进程恢复到正常操作

2、PSH推送位

      PSH=1,该报文希望,到达对端时,将这个报文及缓存区之间缓存尚未交付的数据一并交付给进程。

      1)PSH的数据=本报文数据+缓存区数据

      2)PSH的方向--->单方向(接收PSH报文的一端)

     

3、区别

    URG交付给进程的数据:只有紧急数据

    PSH交付给进程的数据:缓冲区排好序的数据及当前报文中的数据