一.我们先回顾一下网络层是我们网络基础七层原理的哪一层
是我们的第三层,这个数据包里面有IP头部,TC头部和上层数据
二.网络层的功能
网路层数据包里面的IP地址相当于我们的逻辑地址,全局地址,在全球当中我们的电脑会被分配到一个地址。
三.数据包格式详解
版本:我们现在有两个版本IPV4,IPV6,首先我们的IP地址的资源是有限的,我们暂时处于这两个的中间,全球60几亿人。
首部长度:就是我们头部格式的长度,不包含上层数据
优先级与服务类型:决定什么数据先发送,就比如我们QQ发消息给别人,同时我们还在下载东西,计算机会首先让你的QQ消息先发出去,要是没有这个优先级你只能等下载完东西,你才能发消息。
总长度:包头格式长度+数据的长度,我们为什么要有首部长度和总长度,这样计算机就知道数据的长度,就能去分片去传输数据。
我们来看第二层,这就是分片消息,每一段数据传输,比如游戏5个G不可能一个数据包传完,需要多个数据包传输
标识符:对每一段数据包打一个符号
标志:后续是否还要其他分段
段偏移量:在目的地数据重组
TTL:生命周期,每一个数据包经过一个路由器寿命都会减少1,不然的号一个数据包会永久存在。
协议号:描写上层数据的协议
首部校验和:对数据包完整性的校验
源地址:你自己的IP地址
目的地址:对方的IP地址
可选项:里面可以输入数据包的时间,根据实际情况变长
数据
四.ARP协议原理
我们的电脑如何才能知道对方的MAC地址,通过ARP来实现,我们的提供给数据链路层封装
我们来理解一下,为了给数据链路层封装给它提供源MAC和目的地址,不知道数据链路层是什么请看我之前的博客。
第一步我们的PC1主机会发送数据给PC2,查看自己的缓存有没有PC2的MAC地址。
第二步,没有的话我们的PC1就会通过广播的模式发送ARP请求消息
第三步,所有主机都能收到ARP请求消息,PC2一看有我的IP地址,立马给回复单播,其他主机丢弃。
第四步,我们的PC1就会把PC2的MAC地址保存到缓存中,下一次在这个缓存中就能立马使用。
原文地址:https://blog.51cto.com/14449524/2426870