1 |
Source Port |
源端口号 |
16 |
发送端端口号。 |
2 |
Destination Port |
目标端口号 |
16 |
接收端端口号。 |
3 |
Sequence Number |
序列号 |
32 |
发送数据的位置。每发送一次数据,就累加一次该数据字节数的大小。 |
4 |
Acknowledgement Number |
确认应答号 |
32 |
下一次应该收到的数据序列号。 |
5 |
Data Offset |
数据偏移 |
4 |
所传输的数据部分应该从 TCP 包的哪个位开始计算,可以看成是 TCP 首部的长度。单位是 4 字节。 |
6 |
Reserved |
保留 |
4 |
为了将来扩展时使用。当前一般设置为 0。 |
7 |
Control Flag |
控制位 |
8 |
8 个比特位从左至右分别是:CWR、ECE、URG、ACK、PSH、RST、SYN、FIN。 |
8 |
Window Size |
窗口大小 |
16 |
用于通知从相同 TCP 首部的确认应答号所指位置开始能够接收的数据大小。TCP 不允许发送超过此处所示大小的数据。不过,如果窗口为 0,则表示可以发送窗口探测,以了解最新的窗口大小。 |
9 |
Checksum |
校验和 |
16 |
为提供可靠的 TCP 首部和数据而设计的。 |
10 |
Urgent Pointer |
紧急指针 |
16 |
只有在 URG 控制位为 1 时有效。表示本报文段中紧急数据的指针。正确来讲,从数据部分的首位到紧急指针所指示的位置为止为紧急数据。也可以说紧急指针指出了紧急数据的末尾在报文段中的位置。 |
11 |
Options |
选项 |
变长 |
用于提高 TCP 的传输性能。因为根据数据偏移(首部长度)进行控制,所以其长度最大为 40 字节。 |
12 |
Padding |
填充 |
变长 |
通过填充 0,保证首部长度是 32 比特的整数倍。 |