zoukankan      html  css  js  c++  java
  • (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头的时,只有一台机器符合条件,剩下多余机器自动舍弃,没有回应,符合条件的机器,可

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

    .

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    递归和消去递归
    Time complexity analysis of algorithms
    algorithms中计算时间的渐近表示
    OAuth认证协议原理分析及同步消息到Twitter和Facebook使用方法
    javascript实现URL编码与解码
    before伪类的超有用应用技巧——水平菜单竖线分隔符
    在线工具(转)
    程序员小抄大全
    Web设计的速查卡(转)
    一个简单的AJAX示例(转)
  • 原文地址:https://www.cnblogs.com/lyj910313/p/10787488.html
Copyright © 2011-2022 走看看