武汉金信润天
免费服务热线:13260580922
微信在线咨询:13260580922
武汉金信润天:027-87538126
北京金信润天:010-88134881
扫一扫
关注我们
网络工程师之轻松get交换机工作原理
时间:2019-03-09 10:07    浏览次数:     发布者:Lee Xu    来源:武汉金信润天    
0
01
交换机工作原理
 
 
以太网交换机,在不做特别说明的情况下,一般指的是二层交换机。这种设备工作在OSI参考模型的第二层。依靠二层消息中的源和目标转发数据,可以提供多个接口,让各种设备互相连接起来。
 
交换机主要有三个功能
 
地址学习
帧的转发和过滤
环路防止
 
地址学习
 
 
首先在刚开机时,MAC地址表是空的。交换机依靠这张表转发数据。可是在刚开机时,这张表里没有任何信息。这里以思科的设备为例。在设备上使用show mac address-table查看mac地址表
 
这张表根据设备的不同,存储条目的上限也有不同。交换机学习mac地址的过程如下:
 
假设主机A发送数据帧给主机C。会带着自己的源mac地址发送数据。这里先不管目标mac是多少,交换机会先从E0接口学习到一个条目。那就是E0接口连接的设备mac地址是0260.8c01.1111.这是由源地址学习过来的。那么交换机上的mac表这时会多一个条目,变成如下所示的样子。
 
但是这个时候给C的消息由于mac表中依然没有对应C的条目,所以这个时候交换机会做一个操作叫做泛洪。泛洪是指,当交换机收到未知的单播帧(目标mac地址在mac表中没有对应条目)时,将会把这个数据发送给除了收到这个帧的接口的所有接口,在图中,交换机会将从E0收到的未知单播帧发给E1,E2,E3。这样一来C一定会收到这个消息。C在回复A的时候由于之前已经记录过一次MAC地址,所以回复的帧不会泛洪,并且同时可以由E2学习到C的MAC地址。
 
帧的过滤
 
 
02
VLAN
 
 
由于交换机在不做任何配置的情况下,收到广播会往所有接口转发,这样一来,广播域的范围便是整个交换机本身。会带来不便与管理和安全隐患。所以人们希望能够通过某种技术在交换机上逻辑地分隔广播范围。VLAN技术便应运而生了。
 
一个VLAN中的所有设备都是在同一广播域内,不同VLAN为不同的广播域。
VLAN之间相互隔离,广播不能跨越VLAN传播,所以不同的VLAN之间的设备一般需要通过三层设备实现互相通信
一个VLAN一般就是一个子网。
VLAN的成员大多数是基于端口划分的。划分VLAN就是对交换机的端口划分。
VLAN工作在二层
 
VLAN工作原理
 
交换机内部的数据一律带有VLAN Tag,当一个数据进入交换机端口时,如果没有带VLAN Tag,且该端口配置了PVID(Port VLAN ID)那么该数据就会被标记上端口的PVID。如果该数据已经带了VLAN Tag,那么即使该端口已经配置了PVID,交换机也不会再给数据帧标记VLAN Tag.PVID是指“端口缺省ID”的意思。
 
交换机端口类型一共有三种,由于端口类型不同所以对帧的处理过程也不同。
 
1.Access端口处理帧的流程:
 
1) 收到一个二层帧
 
2) 判断该帧有没有VLAN tag
 
没有,则标记上Access端口的PVID,进行第三步
有Tag,则比较该Tag和端口的PVID是否一致。若一致,进行第三步,否则丢弃。
 
3) 根据帧的目标MAC地址和VLAN ID查找VLAN配置信息,决定从哪个端口把帧发送出去。
 
4) 交换机根据查到的出接口发送帧。
 
当数据从access接口发出时,交换机先剥离VLAN Tag。然后再发送出去。
当数据帧从Trunk接口发出时,直接发送帧。
当数据从Hybrid接口发出时,交换机先判断VLAN在本端口的属性时Untag还是Tag。如果是Untag,则剥离VLAN Tag之后再发送,如果是Tag,则直接发送帧。
 
2.Trunk端口处理帧的过程
 
1) 收到一个二层帧。
 
2) 判断帧是否有VLAN Tag。
 
没有Tag,则标记上Trunk端口的PVID,进行下一步处理。
有Tag,则判断该trunk接口是否允许该Tag通过,允许则进行下一步处理,否则丢弃。
 
3) 二层交换机根据目标MAC和VLAN ID,查找VLAN信息并把帧转发出去。
 
4) 交换机根据查到的出接口转发数据帧。
 
当数据从access接口发出时,先剥离VLAN tag 再发送出去。
当数据从trunk接口发出时,直接发送帧。
当数据从hybird接口发出时,交换机先判断该接口的属性时tag还是untag。如果是tag则直接发送,如果是untag则剥离标签后再发送。
 
 
03
Native Vlan
 
 
在802.1q中,Native Vlan是不打标签的Vlan。默认的Native Vlan是Vlan1。建议将一个生僻的Vlan设置为Native Vlan。两个互联的交换机的Native Vlan必须一致。否则将会出现流量互串的问题。
 
 
如上图,首先两边的vlan2互相通信肯定是没有问题的,但是当vlan3,vlan4通信时就会出现问题了。首先假设vlan3的用户发送一个数据,到了左边交换机的trunk接口,发现vlan3时native vlan 不打标签,就直接出去了。到了右边的交换机,由于native vlan为4,右边的交换机会认为这个流量属于vlan4。
 
本期技术课堂就到这里结束啦,更多干货请点击下方延伸阅读!
Get到交换机的三个重要前提,期待下篇更多的精彩哦~
 
本文作者:Lee Xu
HCIE-R&S、CCIE-R&S
擅长路由交换、安全、无线等技术
湖北省职业院校计算机网络赛项获奖指导老师
 主要技术方向Cisco和Huawei
讲授课程:HCIE、CCNA、CCNP、HCNA、HCNP等
相关推荐

总公司地址:北京市海淀区阜外亮甲店1号恩济西园产业园15号楼B座303
武汉分公司地址:湖北省武汉市洪山区虎泉街凯乐桂园A座9层(虎泉地铁站A出口右手边)
咨询报名电话:18672341218(微信同号)   武汉金信润天:027-87538126   北京金信润天:010-88134881
教学就业监督电话:027-87538125    网站地图   备案号:鄂ICP备15010789号-2
姓名
手机
电话咨询 在线咨询 QQ客服