TCP报文段¶
来源:
计算机网络 / 运输层/TCP报文段.md
TCP报文格式¶
其中有20B是固定的首部
源端口和目的端口(同UDP)¶
序号(seq,32位)¶
占4B,范围为0~\(2^{32}-1\),共\(2^{32}\)个序号。TCP 连接中传送的字节流中的每个字节都要按顺序编号,==序号字段值指的是本报文段所发送的数据的第一个字节的序号。== 例如,一报文段的序号字段值是301,而携带的数据共有100B,表明本报文段的数据的最后一个字节的序号是400,因此下一个报文段的数据序号应从 401 开始。
确认号(ack,32位)¶
占4B,是==期望收到对方下一个报文段的第一个数据字节的序号==。若确认号为N,则表明到序号N-1为止的所有数据都已正确收到。
例如,B正确收到了 A发送过来的一个报文段,其序号字段是 501,而数据长度是200B(序号501~700),这表明B 正确收到了 A发送的到序号700为止的数据。因此B期望收到 A的下一个数据序号是701,于是B 在发送给A的确认报文段中把确认号置为701。
数据偏移¶
保留¶
- 控制位
- 窗口
- 检验和
- 选项