交换机是我们在网络运维和桌面运维中比较经常接触的设备,今天小老虎来讲一下交换机的工作原理:

交换机一共有三种转发操作:泛洪、转发和丢弃:

泛洪:交换机把从某一个接口进来的帧通过其他的非接收接口转发出去,泛洪是一种点到多点的操作(泛洪是一个VLAN内的泛洪, VLAN之间是有隔离的)。

转发:交换机把从某一个接收接口收到的帧通过从另外一个非接收接口转发出去,转发是一种点到点的操作。

丢弃:交换机把从某一个接口接收到的帧直接丢弃, 不转发。

如图所示

交换机原理学习(交换机工作原理)(1)

这个蓝色的箭头表示数据包的进入和输出,红色箭头表示数据流的走向。

一般来说这三种行为都叫做交换机的转发, 是一种统称, 所以要结合上下文来看这个转发是具体的转发还是统称。

1

MAC 地址表的概念:

当把电脑主机插到交换机接口之后,如果电脑主机开始发送数据,那么交换机就会把电脑主机的网卡的MAC地址映射到自己的接口接口上, 这个映射关系就是MAC地址表。

下边是关于华为交换机如何查看MAC地址表

[Huawei]display mac-address verbose

交换机原理学习(交换机工作原理)(2)

交换机原理学习(交换机工作原理)(3)

这是我们的拓扑结构,通过这个命令我们可以查看这个电脑连接到了我的交换机的哪个接口,

比如设想这样一个场景,比如这个SW1 下连接了多个非网管交换机(就是不能登录的傻瓜交换机),而你只能使用PC2, 你想知道这个PC1 连接在这个SW1 的哪个端口,那么就有两种方法, 最推荐的方法就是使用这个命令来找到这个PC 所连的交换机端口

而使用寻线仪, 还要爬梯子,一个一个找, 比较麻烦

做个小实验:

在eNSP模拟器中,拖一台S3700, 不做任何配置, 线缆使用auto(自动), 拓扑就是上图的拓扑。

配置IP:

PC 1 : 10.1.1.1/24

PC 2: 10.1.1.2/24

交换机原理学习(交换机工作原理)(4)

可以看到这个PC 2所连接的本地端口就是Eth0/0/2。

2

MAC 地址表学习的过程

当PC1 去给PC2 发送数据包的时候, 交换机是不知道PC2 连接在自己的哪个接口的, 只知道PC1 连接在我的e0/0/0接口, 因为我从这个接口收到了来自PC1 的数据帧, 可以把PC1帧中携带的PC1 的网卡MAC地址绑定在我本地的E0/0/0, 然后把这个数据帧复制多份, 从其他的所有非接口接口发送出去,发送的范围就是这个接收端口所在的VLAN的成员接口和该交换机的中继接口,每个接口发送一份。而当PC2 收到这个泛洪的数据帧后, 就会回复PC1, 这样交换机就学习到这个MAC地址表了。

这这个MAC 地址表也可以手工指定, 命令如下

[Huawei]mac-address static AA-BB-CC Ethernet 0/0/22 vlan 1

交换机原理学习(交换机工作原理)(5)

其中这个AA-BB-CC就是手工指定的MAC地址了 , 后边加端口号和所属VLAN,注意, 这个VLAN要在设备先存在,本地不存在的VLAN这个地方是不能自动创建的,会报错

好的,以下就是今天分享的知识点了。

,