Cool
Cool
Published on 2024-08-22 / 39 Visits
0
0

TCP的序号单位是什么

TCP(传输控制协议)的序号(Sequence Number)单位是字节(byte)

详细说明

  1. 序号的作用

    • TCP 是一种面向字节流的协议,它通过序号来确保数据包按顺序到达并且不重复。每个字节在 TCP 连接中都有一个唯一的序号,序号标识数据流中的每个字节。
  2. 序号的初始值

    • TCP 序号并不是从 0 开始的。在建立连接时,双方会通过三次握手过程选择一个随机的初始序号(ISN,Initial Sequence Number),这个初始序号是一个 32 位的数字。
  3. 序号的单位

    • TCP 序号单位为字节,这意味着序号对应的是字节数而不是数据包数。例如,如果一个 TCP 报文段包含 100 个字节的数据,且序号是 1000,那么下一次传输数据时,序号将增加 100,即变为 1100
  4. 序号递增

    • 每发送一个字节的数据,序号都会增加 1。由于序号是 32 位的整数,当达到最大值(2^32 - 1,即 4,294,967,295)时,序号会回绕到 0 继续增长。

示例

假设一方发送了一个包含 500 个字节的数据包,起始序号为 1000,那么这个数据包覆盖的字节范围是 1000 到 1499,下一个数据包的起始序号将是 1500。

这种以字节为单位的序号设计,使得 TCP 能够对丢失和乱序的数据包进行精确控制和重传。


Comment