TCP 报文详解

一、TCP报文格式

image.png

二、字段详解

  • 第一行:源端口和目的端口字段
    • TCP源端口(Source Port):源计算机上的应用程序的端口号,占16 位(bit)。
    • TCP目的端口(Destination Port):目标计算机的应用程序端口号,占16 位(bit)。
  • 第二行:序列号字段
    • CP序列号(Sequence Number):占(32bit)它表示本报文段所发送数据的第一个字节的编号。在 TCP 连接中,所传送的字节流的每一个字节都会按顺序编号。
    • 当SYN标记不为1时,这是当前数据分段第一个字母的序列号;
    • 如果SYN的值是1时,这个字段的值就是初始序列值(ISN),用于对序列号进行同步。这时,第一个字节的序列号比这个字段的值大1,也就是ISN加1。
  • 第三行:确认号字段
    • TCP 确认号:(Acknowledgment Number,ACK Number):占 32 位。它表示接收方期望收到发送方下一个报文段的第一个字节数据的编号。其值是接收计算机即将接收到的下一个序列号,也就是下一个接收
  • 15
    点赞
  • 93
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
TCP报文中,Control Bits字段(也称为标志位)用于传递各种控制信息,共有6个标志位,分别为URG、ACK、PSH、RST、SYN和FIN。下面对每个标志位进行详细解释: 1. URG(紧急指针):当该标志位被设置时,表示紧急指针字段有效。紧急指针用于指示报文中的紧急数据的位置。通常情况下,紧急数据是在普通数据之前发送的,用于传递一些重要且需要立即处理的信息。 2. ACK(确认号):当该标志位被设置时,表示确认号字段有效。ACK标志用于确认接收方已经成功接收到发送方的数据。TCP协议使用确认号字段来实现可靠传输机制。 3. PSH(推送):当该标志位被设置时,表示接收方应该立即将收到的数据交给应用程序处理,而不是等待缓冲区填满再交付。它用于告知接收方应该尽快将数据传递给应用层,以提高传输效率。 4. RST(复位):当该标志位被设置时,表示要求对方重新建立连接。RST标志用于中断连接或响应错误情况。当发生严重错误或非法操作时,可以发送RST报文来终止连接。 5. SYN(同步):当该标志位被设置时,表示发起连接请求或同意连接请求。SYN标志用于建立连接的握手过程中的同步信号。 6. FIN(结束):当该标志位被设置时,表示发送方已经完成数据的发送,希望关闭连接。FIN标志用于连接的关闭过程中,通知对方不再有数据发送。 这些控制位的组合和设置状态可以实现TCP协议的各种功能,如建立连接、可靠传输、数据推送和连接终止等。通过这些标志位的变化,TCP协议能够实现数据的可靠传输和连接的管理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值