网工干货知识

超全学习笔记
当前位置:首页 > 干货知识

TCP标志位

更新时间:2026年03月27日   作者:spoto   标签(Tag):

在TCP连接中,各种标志被用来表示连接的特定状态,或者提供一些有用的信息,比如用于故障排除或控制某个连接。最常用的标志有:“SYN”、“ACK”和“FIN”每个旗帜对应1位信息。
旗帜的种类: 
 

  • 同步(SYN)它用于连接建立过程的第一个步骤,也就是两台主机之间的三次握手过程。只有发送方和接收方的第一个数据包上才应设置此标志。该标志的作用是为了同步序列号,即告诉对方应该接受哪个序列号。
  • 致谢/感谢 –它用于确认主机已成功接收了数据包。如果确认号字段中包含有效的确认号码,那么该标志就会被设置起来。
    在下面的图中,接收方在建立连接的第二步中发送ACK=1以及SYN=1的响应,以告知发送方其已成功接收到初始数据包。
     
  • 完成/结束 (FIN)它用于请求断开连接,即当发送方不再有数据要传输时,就会发出断开连接的请求。这是发送方发送的最后一个数据包。该数据包会释放所预留的资源,并优雅地终止连接。
     
  • 重置(RST)–当 RST 发送方认为 TCP 连接存在某种问题,或者认为该会话不应该继续下去时,就会使用这个命令来终止连接。此外,当数据包被发送到某个不期望接收的主机时,接收方也可能发送这个命令来终止连接。
  • 紧急状态(URG)该标志用于表明,数据包中包含的数据应该被接收方优先处理。这个标志需要与“紧急指针”字段一起使用,以明确数据包中紧急数据的位置。
  • 推送(PSH)它用于请求立即将数据传输到接收主机,而无需在发送方等待额外的数据被缓冲起来。这种标志通常用于实时音频或视频流等应用中。
  • 窗口(WND)它用于向发送方通报接收窗口的大小。接收窗口的大小指的是接收主机在任何给定时间能够接受的数据量。发送方应该根据接收方所通告的窗口大小来限制其发送的数据量。
  • 校验和(CHK)–它用于验证在传输过程中TCP段的数据完整性。校验和是对整个段进行计算的,包括头部和数据字段。在网络路径上的每个节点处,都会重新计算该校验和。
  • 序列号(SEQ)–这是一个独特的数字,由发送方为每个数据包分配。这个编号用于指示接收方应该按照什么顺序接收各个数据包。序列号与确认号一起使用,以确保数据的可靠传输,并避免重复发送相同的数据包。
  • 致谢编号(ACK) –它用于确认已收到一个TCP段,并向发送方传达下一个预期的序列号。确认号码字段中包含了下一个预期接收段的序列号,而不是最后一个已接收段的序列号。

完成操作 (FIN) 与重置操作 (RST) – 
 

  • 推送(PSH) –默认情况下,传输层会等待一段时间,直到应用层发送的数据量达到最大段大小为止。这样,网络中传输的数据包数量就会降到最低,而这对于某些应用程序来说并不理想,比如实时聊天类应用程序。同样地,在接收端,传输层也会将数据包缓冲起来,并在满足特定条件时将其传递给应用层。
    这个问题可以通过使用PSH来解决。传输层会设置PSH的值为1,一旦从应用层接收到信号,就会立即将该数据发送给网络层。接收方的传输层在看到PSH的值为1后,会立即将数据转发到应用层。
    一般来说,这种方式要求接收方在收到这些数据包时立即处理它们,而不是将它们缓存起来。
     
  • 紧急状态 (URG) –当某个段的URG值为1时,即使还有更多数据需要传递给应用层,这些紧急的数据也会立即被转发到应用层。这样做是为了让接收方能够在处理所有其他数据包之前,先处理这些紧急的数据包。当接收方接收到所有已知的紧急数据时,就会得到通知。


推送(PSH)与紧急状态(URG)的区别 
 

              马上抢免费试听资格
意向课程:*必选
姓名:*必填
联系方式:*必填
QQ:
思博SPOTO在线咨询

相关资讯

即刻预约

免费试听-咨询课程-获取免费资料