互联网协议版本 4 (IPv4)

互联网协议是TCP / IP协议套件中的主要协议之一。此协议适用于 OSI 模型的网络层和 TCP/IP 模型的互联网层。因此,该协议负责根据主机的逻辑地址识别主机,并通过底层网络在它们之间路由数据。

IP 提供了一种通过 IP 寻址方案唯一标识主机的机制。IP 使用尽力而为的传递,即它不保证数据包将传递到目标主机,但它将尽最大努力到达目的地。互联网协议版本 4 使用 32 位逻辑地址。

IPv4 数据包结构

ios数据结构及算法 ip数据结构_寻址


Network协议是第三层,第四层transport开始获取数据段并划分数据包,IP数据包封装从上层接收的数据单元,并添加到其自己的标头信息中。

ios数据结构及算法 ip数据结构_互联网协议_02


封装的数据为“IP有效负载”,IP 报头(IP Hearder)包含在另一端传递数据包所需的所有信息。

ios数据结构及算法 ip数据结构_寻址_03


Version:使用互联网协议(例如IPv4)。

IHL :互联网头长度; 整个IP报头的长度。

DSCP :差异化服务代码点; 这是类型的服务。

ECN :显式拥塞通知; 它携带的信息拥堵的路线。

Total Length:总长度 −整个IP包的长度(包括IP报头和IP负载)。

Identification :如果分散在传输IP包,所有的片段包含相同的身份证号码。 确定他们属于原始IP包。

Flags:所需的网络资源,如果IP包太大处理,这些“旗帜”告诉是否可以支离破碎。 在这个3-bit Flags,MSB总是设置为’ 0 '。

Fragment : 分段偏移 −这个抵消告诉确切的片段在原来的IP包的位置。

Time to live : 生存时间 −避免循环网络中,每一个数据包发送一些TTL值集,它告诉网络多少路由器(跳)这个包可以交叉。 在每一跳,它的值是递减,当价值达到零,数据包就会被丢弃。

Protocol : 协议 −告诉目的地主机的网络层协议这包所属,即下一个级别的协议。 例如协议数量的ICMP是1,TCP是6和UDP是17。

Header Checksum : 头校验和 这个字段是用来防止整个头的校验和值然后用来检查数据包是否收到无误。

Source : 源地址 −32位地址,数据包的发送方(或源)。

Destination : 目的地址 −接收器(或目标)的32位地址的数据包。

Options : 选项 −这是可选的字段,用于如果IHL的价值大于5。 这些选项可能包含值选项如安全性、记录路线,时间戳等。

IPv4 寻址

单播寻址模式:只将数据发送给一个确定的主机

广播寻址模式:所有主机的数据包在一个网段,目的地址字段包含一个特殊的广播地址,即255.255.255.255 。 当主机看到这个网络上的数据包,它一定会处理它。

多播寻址模式:这种模式是前两种模式的混合,即发送的数据包是注定要一个主机和所有主机部分。 这包的目的地址包含一个特殊的地址从224. x.x开始。

分层解决方案

ios数据结构及算法 ip数据结构_ios数据结构及算法_04

一个IP地址长度为32bit。

子网掩码

ios数据结构及算法 ip数据结构_寻址_05

这个子网掩码的方式帮助提取网络ID和主机的IP地址。 现在可以确定,192.168.1.0网络数量和192.168.1.152主机网络。

ios数据结构及算法 ip数据结构_ios数据结构及算法_06

LSB到MSB 从最低位开始,到最高2的7次方 。

ios数据结构及算法 ip数据结构_寻址_07


ios数据结构及算法 ip数据结构_IP_08