拓扑图

学习过程分析

  • 首先交换机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就会接收到这个地址帧。

Mininet实验 MAC地址学习分析的更多相关文章

  1. Mininet实验 MAC地址学习

    实验目的 了解交换机的MAC地址学习过程. 了解交换机对已知单播.未知单播和广播帧的转发方式. 实验原理 MAC(media access control,介质访问控制)地址是识别LAN节点的标识.M ...

  2. 【小菜学网络】交换机与MAC地址学习

    上一小节介绍了 集线器 ,一种工作于物理层的简单网络设备.由于集线器采用广播的方式中继.转发物理信号,传输效率受到极大制约. 精准转发 为了解决集线器工作效率低下的尴尬,我们需要设计一种更高级的网络设 ...

  3. mac地址学习笔记

    MAC(Media Access Control或者Medium Access Control)地址, 意译为媒体访问控制,或称为物理地址.硬件地址,用来定义网络设备的位置. 在OSI模型中,第三层网 ...

  4. pox目录中的交换机mac地址学习模块 l2_multi源码

    # Copyright 2012-2013 James McCauley # # Licensed under the Apache License, Version 2.0 (the "L ...

  5. 分分钟学会系列:mac地址泛洪攻击实验

    一.实验目的: 通过实战深入理解mac地址泛洪攻击的原理. 二.实验原理: 交换机中有一张非常重要的表,叫做mac表,这个表是一个硬件组成的表,主要是完成快速转发.mac表有大小限制,不同的交换机的m ...

  6. 交换机是干嘛的!!交换机如何学习MAC地址过程?

    1.它收到一个帧的时候,先检查源MAC地址,看看自己维护的一个地址表中有没有这个地址.如果有,则2:如果没有,则将这个MAC地址.进入的端口.进入的时间放入这个表中: 2.检查目的MAC地址,然后到该 ...

  7. 交换机安全学习笔记 第二章 MAC地址泛洪攻击

    本文为书中相关知识的摘要,由于书中以思科设备为配置依据,所以笔记中补充了华为.H3C设备的相关配置.华为设备配置参考华为S2352EI 产品版本:V100R005C01文档版本:02.  H3C配置参 ...

  8. Mininet实验 使用l2_multi模块寻找最短路径实验

    参考:使用l2_multi模块寻找最短路径实验 1. 实验目的 1.认识VND并且掌握其基本使用方法. 2.学会使用pox控制器的l2_multi模块寻找主机间的最短传输路径. 2. 实验原理 VND ...

  9. 网络编程懒人入门(九):通俗讲解,有了IP地址,为何还要用MAC地址?

    1.前言 标题虽然是为了解释有了 IP 地址,为什么还要用 MAC 地址,但是本文的重点在于理解为什么要有 IP 这样的东西.本文对读者的定位是知道 MAC 地址是什么,IP 地址是什么. (本文同步 ...

随机推荐

  1. 如何快速生成数据库字典(thinkphp5.0)

    本教程将教你快速生成数据库字典 示例代码使用PHP框架:Thinkphp5.0 PHP代码: /** * 生成数据库字典html * 可直接另存为再copy到word文档中使用 * * @return ...

  2. php 算法(二分法)只适用于有序表,且限于顺序存储结构

    function demo($array,$low,$high,$k){ if($low<=$high){//判断该数组是否存在 $mid =  intval(($low+$high)/2 ); ...

  3. Python基础、条件语句和基本数据类型

    1. 第一句python - 后缀名是可以是任意? - 导入模块时,如果不是.py文件 ==> 以后文件后缀名是 .py 2. 两种执行方式 python解释器 py文件路径 python 进入 ...

  4. 网易云音乐API

    网易云音乐API使用 封装了一些api调用 ZZRRegion/StNetease

  5. java 对象的初始化流程(静态成员、静态代码块、普通代码块、构造方法)

    一.java对象初始化过程 第一步,加载该类,一个java对象在初始化前会进行类加载,在JVM中生成Class对象.加载一个类会进行如下操作,下面给出递归描述.(关于Class对象详见反射 点击这里) ...

  6. nodejs multer

    nodejs上传文件multer var multer = require('multer') var storage = multer.diskStorage({ destination: func ...

  7. 优步UBER司机全国各地奖励政策汇总 (2月29日-3月6日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...

  8. 北京Uber优步司机奖励政策(12月11日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...

  9. VINS(九)Ceres Solver优化(未完待续)

    使用Ceres Solver库处理后端优化问题,首先系统的优化函数为

  10. python删除文本中的所有空字符

    import re import os input_path = 'G:/test/aa.json' output_path ='G:/test/bb.json' with open(input_pa ...