IPv4 - 数据包结构
互联网协议是第 3 层协议 (OSI),它从第 4 层(传输)获取数据段并将其划分为数据包。IP数据包封装从上层接收到的数据单元并添加到其自己的标头信息中。
封装的数据称为IP Payload。IP 标头包含在另一端传送数据包所需的所有信息。
IP 标头包含许多相关信息,包括版本号,在本上下文中为 4。其他详细信息如下 -
版本- 版本号 使用的互联网协议(例如 IPv4)。
IHL – 互联网标头长度;整个 IP 标头的长度。
DSCP——差异化服务代码点;这是服务类型。
ECN - 显式拥塞通知;它携带有关路线中所见拥塞的信息。
总长度- 整个 IP 数据包的长度(包括 IP 标头和 IP 有效负载)。
标识- 如果 IP 数据包在传输过程中被分段,则所有分段都包含相同的标识号。来识别它们所属的原始IP数据包。
标志- 根据网络资源的要求,如果 IP 数据包太大而无法处理,这些“标志”会告诉它们是否可以分段。在这个 3 位标志中,MSB 始终设置为“0”。
片段偏移量- 此偏移量告诉原始 IP 数据包中片段的确切位置。
生存时间- 为了避免网络中出现循环,每个数据包都会发送一些设置的 TTL 值,该值告诉网络该数据包可以穿过多少个路由器(跳)。在每一跳,其值都会减一,当该值达到零时,数据包将被丢弃。
协议- 告诉目标主机的网络层该数据包属于哪个协议,即下一级协议。例如ICMP协议号为1,TCP协议号为6,UDP协议号为17。
标头校验和- 该字段用于保存整个标头的校验和值,然后用于检查数据包是否无错误接收。
源地址- 数据包发送者(或源)的 32 位地址。
目标地址- 数据包接收方(或目标)的 32 位地址。
选项- 这是可选字段,如果 IHL 的值大于 5,则使用该字段。这些选项可能包含安全、记录路由、时间戳等选项的值。