Mininet实验 MAC地址学习分析

拓扑图

学习过程分析

  • 首先交换机A和交换机B一开始的MAC地址表都是空的。
  • 此时主机11向主机33发送一个数据帧。
    • 数据帧会先到达交换机A,交换机A会获得主机11的MAC地址和端口号。(此时交换机A的地址表中只有一条关于11的地址信息)
    • 此时查看MAC地址表,如果其中有目的主机的MAC地址则直接进行转发,但是很可惜现在没有。
    • 此时交换机A会向除了源数据端口(端口1)外的其他所有端口(端口2和端口3)发送广播(都发送一个数据帧),这被称之为泛洪(flooding)。
    • 主机22接收到数据帧确认完发现不是发送给自己的,就会丢弃掉这个数据帧。
  • 此时交换机B会接收到这个数据帧
    • 此时交换机B会学习到源MAC地址和端口号,分别为11和端口3。(此时交换机B中只有一条关于11的地址信息)
    • 查看自己的地址表,没有符合条件的。
    • 向除了源数据发送端口外所有端口发送广播。
    • 主机33会接收这个数据帧,主机44会丢弃这个数据帧。
  • 正常情况下,主机33会回复主机11,发送一个数据帧。
    • 此时按照之前的逻辑,交换机B接收到主机33发送的数据帧,得到主机33的MAC地址和端口号。(此时B拥有两条信息,分别为11和33的,端口号分别为3和1)
    • 查看自己的地址表,发现目标11存在于自己的地址表中,所以直接定向向端口3发出数据帧(单播转发)。
    • 交换机A接收到交换机B发来的数据帧,然后更新了主机33的MAC地址和端口号。(此时A中也有两条信息,关于11和33的,端口号分别为1和3)
    • 然后根据自己的地址表单播转发给主机11.
    • 主机11就会接收到这个地址帧。
posted @ 2019-01-25 12:28  水喵桑  阅读(1039)  评论(0编辑  收藏  举报