网络编程
1. TCP头部结构
TCP固定头部结构
每个TCP报文段都包含着此报文段的TCP头部信息,用于指定源端端口、目的端端口以及管理TCP连接等。完整的TCP头部结构可分为固定头部结构和头部选项两个部分。
- 32位端口号:包括了16位源端口号和16位目的端口号。
- 32位序号:假设第一次主机A发送给主机B的TCP报文段序号为随机的ISN(初始序号值),则下一次A到B方向上报文段的序号值为ISN+此次报文段所携带数据在整个字节流中的偏移量
- 32位确认号:收到对方的报文段的序号值加1
- 4位头部长度+6位标志位+16位窗口大小:
4位头部长度标识该TCP头部有多少个4字节(最大15×4=60字节)。
6位标志位包含如下几项:
URG紧急标志位 表示紧急指针是否有效
ACK确认标记位 表示确认号是否有效。携带ACK的称为确认报文段
PSH优先标记位 表示接收端立即从接收缓冲区读走数据
RST断开连接标记位 表示要求重建连接。携带RST标志的称为复位报文段
SYN请求标记位 表示请求建立一个连接。携带SYN标志的称为同步报文段
<