UDP 与 TCP 首部

UDP 首部

索引 字段 中文 比特 说明
1 Source Port 源端口号 16 发送端端口号,可选。没有源端口号的时候值为 0。可用于不需要返回的通信中。
2 Destination Port 目标端口号 16 接收端端口号。
3 Length 包长度 16 UDP 首部的长度跟数据长度之和。单位为字节。
4 Checksum 校验和 16 为提供可靠的 UDP 首部和数据而设计的。

TCP 首部

索引 字段 中文 比特 说明
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 比特的整数倍。

留下评论