TCP协议头部一共有六个控制位:其中包括URG、ACK、PSH、RST、SYN、FIN.
       <1>紧急URG紧急指针,告诉接受TCP模块紧要指针域指着紧要数据;
       <2>推送PSH置1时请求的数据段在接收方得到后就可直接送达应用程序,而不必等到缓冲区满时才发送;
       <3>复位RST置1时重新连接。如果接收到RST位,通常发生了某些错误;
       <4>同步SYN置1时用来发送一个连接;
       <5>终止FIN置1时表示发送端完成发送任务。用来释放连接,表示发送方已经没有数据发送了;
       <6>确认ACK置1时表示确认号(为合法,为0的时候表示数据段不包含确认信息,确认号被忽略),ACK为确认标志位,如果ACK为1,表示数据包中的确认号有效。TCP规定,在连接建立后所有传送的报文段都必须把ACK置1;

URG和PSH的区别及联系

这里主要介绍URG与PSH的区别及联系。
       <1>URG为紧急数据标志,如果URG为1,表明紧急指针字段有效。它告诉系统此报文段中有紧急数据应尽快传送,而不是原来的排队顺序来传送。于是发送方TCP就将紧急数据插入到本报文段数据的最前面。
       <2>PSH位,表示强迫数据传输。告诉对方收到报文段后是否应该立即把数据推送给上层,如果为1,表示应该立即把数据提交给上层,而不是缓存起来。
       共同点: URG和PSH都是提高报文段的优先级,使报文段更先推送给上层。
       不同点:两者将报文段更先推送给上层的方法不一样。
       URG是通过置1,来让后面的紧急指针字段有效,从而让报文段更先发送;
       PSH是通过置1,把数据立即提交给上层,而不是等待缓存区满,才发送给上层。
       简言之,URG是针对发送方发送紧急数据的,PSH是针对接收方,接收方尽快将数据向上层交付。

相关文章:

  • 2021-07-25
  • 2021-12-03
  • 2021-12-07
  • 2021-11-26
  • 2021-10-12
  • 2022-02-14
  • 2021-11-25
猜你喜欢
  • 2021-07-10
  • 2021-09-25
  • 2021-09-09
  • 2021-08-05
  • 2021-12-27
  • 2021-06-14
相关资源
相似解决方案