(3)arp协议

arp协议:通过ip找mac(交换机不能识别ip)

arp解析表: mac 和 ip 的映射关系

arp协议: 通过ip找到mac,可以减少广播的频率,减少主机的损耗.

arp协议: 能够完成,依靠交换机一次广播,一次单播放完成的;

传输层: 端口 + 数据信息

网络层: ip + 端口 + 数据信息

链路层: mac + ip + 端口 + 数据信息

物理层: 二进制的字节流

第一步,把这个数据包发送给交换机,交换机自己只识别mac,不识别ip

第二步,交换机开始拆包,最多拆二层,找到mac,如果找不到,重新打包,开始全FF广播

第三步,每一台主机都会收到数据包,每一台主机开始拆解,直接走到网络层

网络层拆开ip头,发现自己不是该ip,自动放弃,没有响应.一台满足条件.把自己的mac

和自己的ip进行返回,响应给交换机

第四步,交换机把mac和ip [单播]给原主机,交换机更新自己的mac表[接口和mac的对应关系]

源主机 和 其他分主机都去更新arp解析表

下一次源主机如果在需要找该ip,不需要交换机广播,直接通过交换机单播给目标主机即可

 

 

广域网执行过程(路由器): 根据ip找Mac地址

如果要发送这个数据信息

需要通过osi七层模型进行打包(封装)

第一步,通过传输层,基于原数据 前面加上tcp头部(原端口,目标端口)

第二步,通过网络层,基于上一层数据,前面加上ip头(原ip,目标ip)

第三步,通过链路层,基于上一层数据,前面加上mac头(原mac,网关mac)

第四步,把这个数据包变成二进制字节流,通过电信号把字节流发送出去

第五步.网关eth0接受之后,开始拆包,(与交换机最大区别,是交换机拆2层,路由器拆3层)

拆到ip头部时,打开路由表,找网段对应的网关是谁,发现eth1 => 192.168.2.0 符合条件,找到了

把拆的包重新打包,注意这时候,mac头数据进行更新,原mac改成eth1这个网关的mac,目标mac 改

成全FF广播地址,把这个包给eth1,然后开始广播

第六步,所有这个网关对应的机器全都可以收到,每一台机器都开始拆包,物理层,链路层都能拆,但是到了

网络层拆ip头的时,只有一台机器符合条件,剩下多余机器自动舍弃,没有回应,符合条件的机器,可

以看到数据内容,并且可以回发数据,直接建立连接

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

原文地址:https://www.cnblogs.com/lyj910313/p/10787488.html