深入解析IP协议:从头部到地址分配
1. IP头部解析
IPv4头部包含十二个必需字段和可选的IP选项字段,这些字段位于要发送的数据或消息之前。了解IP头部有助于故障排除以及理解IP的功能和限制。下面是IP头部各字段的详细介绍:
| 字段 | 位数 | 描述 |
| ---- | ---- | ---- |
| 版本(Version) | 4位 | 表示正在使用的IP版本,目前常用的是RFC0791(1981年)描述的IP版本4(IPv4),将被RFC2460描述的IPv6取代。 |
| 头部长度(Header Length) | 4位 | 以4字节为单位表示数据报头部的长度。由于可选的IP选项字段,头部长度可能会有所不同。必需字段使用20字节(头部长度为5),IP选项最多可使用40个额外字节(头部长度为15)。 |
| 服务类型(Type of Service) | 8位 | 发送进程可以通过这些位建议路由器如何处理该段数据。选项包括最大化可靠性、最小化延迟、最大化吞吐量或最小化成本,但路由器可能会忽略这些位。 |
| 数据报总长度(Total Length of Datagram) | 16位 | 表示头部和数据负载的总长度(以字节为单位),最大值为65,535字节。 |
| 数据报标识(Datagram Identification) | 16位 | 发起数据报的主机为数据报分配一个唯一的标识值。如果路由器在数据报传输过程中对其进行分片,每个分片将具有相同的标识值。 |
| 标志(Flags) | 3位 | 其中两位与分片有关。第0位未使用;第1位为“不分片”(Don’t Fragment),如果该位为1,路由器不应分片数据报;第2位