交换机原理

Posted 大大大S

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了交换机原理相关的知识,希望对你有一定的参考价值。

交换机原理

一.实验目的

深度理解交换机对数据帧的处理过程

二.实验拓扑图
在这里插入图片描述
三.实验要求
1.将S1的两个端口加入到VLAN10,将S2的两个端口加入到VLAN20
2.测试两台PC能否通信?分析原因(YES)
3.将S1的E0/0/2端口改为Trunk端口,允许VLAN10通过,将S2的E0/0/2端口改为Trunk端口,允许VLAN20通过
4.测试两台PC能否通信?分析原因(NO)
(前提:两台PC机基础配置已经配好)

四.配置

第一种情况:当交换机两个端口都为access端口时:

(1)
S1:
划分一个vlan10,进入两端口配置端口类型为access并加入vlan10,配置如下:
在这里插入图片描述
S2:
划分一个vlan20,进入两端口配置端口类型为access并加入vlan20,配置如下:

在这里插入图片描述
(2)在PC1命令行中ping PC2的ip地址可知两台PC能够互相通信;
理由是:假设PC1知道PC2的MAC地址的前提下,PC1发送一个数据帧给PC2,该帧是无标记帧,接着进入S1的Ethernet0/0/1接口,被打上标记,此时VLAN-ID=10,接着交换机在MAC地址表中查询该帧的目的MAC地址,并从Ethernet0/0/2接口发出,因为Ethernet0/0/2接口是access类型也加入了vlan10,所以数据帧的标记被剥除后再发出;
接着在S2的Ethernet0/0/2接口上接收到该数据帧,在进入交换机S2后被打上标记,此时vVLAN-ID=20,然后交换机在MAC地址表中查询该帧的目的MAC地址,并从Ethernet0/0/1接口发出,数据帧的标记被剥除。
因此,PC1发送的数据帧是能够到达PC2的(实际上交换机S1 S2都只是对数据帧进行透传
在这里插入图片描述

第二种情况:当交换机的Ethernet0/0/2端口类型为Trunk,分别允许VLAN10和VLAN20通过时:	

(1)
S1:
我们在更改默认端口类型时需要先使用undo命令将原来配置的端口类型删掉再重新配置
首先使用命令display this查看该接口的配置

在这里插入图片描述
再使用命令undo port default vlan删掉 (注意后边不要带上10否则会报错)
在这里插入图片描述
接着重新配置端口类型Trunk
在这里插入图片描述
S2的配置同S1,相关配置如下:
在这里插入图片描述
在这里插入图片描述
(3)此时,在PC1命令行中ping PC2的ip地址可知两台PC已经无法进行通信;
理由是:假设PC1知道PC2的MAC地址的前提下,PC1发送一个数据帧给PC2,数据帧进入Ethernet0/0/1接口,被打上标记,VLAN-ID=10,由于Ethernet0/0/2接口类型是Trunk,只是允许VLAN10通过所以VLAN-ID默认是1,此时数据帧的VLAN-ID与Ethernet0/0/2接口不一致所以VLAN-ID=10保留不剥除,
接着以标记帧的形式到达S2的Ethernet0/0/2接口,而Ethernet0/0/2接口并未允许VLAN10的流量通过,因此该数据帧会被丢弃~
在这里插入图片描述

补充:
交换机的主要功能:
(1)学习:以太网交换机了解每一端口相连设备的MAC地址,并将地址同相应的端口映射起来存放在交换机缓存中的MAC地址表中。
(2)转发/过滤:当一个数据帧的目的地址在MAC地址表中有映射时,它被转发到连接目的节点的端口而不是所有端口(如该数据帧为广播/组播帧 则转发至所有端口)
(3)消除回路:当交换机包括一个冗余回路时,以太网交换机通过生成树协议避免回路的产生。同时允许存在后备路径。

以上是关于交换机原理的主要内容,如果未能解决你的问题,请参考以下文章

滑块菜单片段中的可交换选项卡

交换卡片时无法更新片段文本

RabbitMq一文彻底弄懂RabbitMq的四种交换机原理及springboot实战应用

通过 webapp 提供时,SVG 片段标识符在 Safari 中被交换

如何在 Kotlin 片段内的按钮之间切换片段?

交换机原理与VLan笔记整理