一文详解交换机间VLAN的通信过程
VLAN(VirtualLocalAreaNetwork,虚拟局域网),通过在支持VLAN的交换机上添加VLAN,并且动态的调整每个端口所属VLAN(默认端口都属于VLAN1),实现一台物理交换机上可以有多个LAN,每个LAN称作VLAN,VLAN之间的广播互不可达,VLAN间互不影响 。每个VLAN是一个独立的广播域,如果不同VLAN中的结点想要互相访问,需要通过一台三层或三层以上设备才能实现(比如路由器、三层交换机、防火墙等) 。这样就增加了安全性,可以在三层设备上配置访问列表来达到流量控制的目的 。
为了提高处理效率,交换机内部的数据帧一律都带有VLANTag,以统一方式处理 。当一个数据帧进入交换机接口时,如果没有带VLANTag,且该接口上配置了PVID(PortDefaultVLANID),那么,该数据帧就会被标记上接口的PVID 。如果数据帧已经带有VLANTag,那么,即使接口已经配置了PVID,交换机不会再给数据帧标记VLANTag 。
由于接口类型不同,交换机对帧的处理过程也不同 。下面根据不同的接口类型分别介绍 。
表1各类型接口对数据帧的处理方式
文章插图
交换机间VLAN通信过程
这一部分结合下图,讲解一下802.1Q干线协议的工作流程:
文章插图
图中PC1和PC2属于VLAN2,PC3和PC4属于VLAN3,SW1和SW2通过干线相连,干线运行的是802.1Q协议 。
假设PC1发送消息给PC2,刚开始PC1不知道PC2的MAC地址,所以它首先发送ARP查询包,查询PC2的MAC地址,ARP查询包以广播形式发送 。
交换机SW1收到PC1发送过来的ARP查询广播包,SW1知道数据是从fa0/0接收到的,fa0/0被划分到VLAN2中,是一个接入端口,SW1知道这是一个来自VLAN2的广播包,SW1在MAC地址表中加入PC1的MAC和VLAN号以及对应的端口号,非VLAN交换机和VLAN交换机都会根据数据的源地址进行学习,只不过VLAN交换机除了记录源MAC地址,还需要记录源MAC所对应的VLAN号 。
SW1在收到的数据帧中加入VLAN2的标识(VLAN交换机从Access(接入)端口收
到数据时需要插入VLAN标识),接着SW1将这个VLAN2的广播包从除接收端口以外的所有属于VLAN2的接口以及主干发送出去,在从所有属于VLAN2的接入接口发送出去前需要去掉VLAN标识(VLAN交换机从Access将数据发出时要去掉VLAN标识,否则其他计算机不能识别这个加了标识的帧),从主干发送出去的帧不需要去掉VLAN标识(后面介绍到的本地VLAN除外) 。也就是说如果此时SW1上还有一个非主干端口也被分配到VLAN2中,这个广播从这接入端口送出前要去掉VLAN标识,而从SW1的fa0/2发往SW2的数据帧不需要去掉VLAN标识(本地VLAN除外) 。
PC3接收不到PC1发出的ARP广播请求,因为连接PC3的端口被划分到VLAN3中了,不属于VLAN2,一个VLAN是一个广播域 。
当SW2从自己的fa0/2接口(主干接口)接收到一个数据帧时,SW2查看数据帧中的VLAN标识,并在本地MAC地址表中添加了帧中源MAC地址、VLAN号以及对应的端口号fa0/2 。接下来SW2将决定往哪转发这个收到的数据帧,SW2通过查看VLAN标识和目的MAC地址,知道这是一个VLAN2的广播ARP查询包,SW2将这个包从除接收接口(fa0/2)以外的所有属于VLAN2的接口以及其他的主干接口(如果有)发送出去,同理,在发出去之前,如果接口属于接入接口,则去掉VLAN标识,如果是主干端口则保留VLAN标识 。
PC4是收不到这个广播包的,因为不属于VLAN2,这个时候PC2收到了这个ARP请求包,发现请求的是自己的MAC地址,PC2封装ARP应答包发给SW2 。
SW2收到这个应答包,首先学习PC2的MAC地址和VLAN号以及对应端口到自己的MAC地址表,然后给这个数据帧添加VLAN2标识,之后SW2查询MAC地址表,找到PC1对应的MAC号、VLAN号和端口号,SW2比较数据帧的源MAC和目的MAC在同一个VLAN2中,SW2将数据帧从目的MAC对应的fa0/2接口发出(PC1的MAC是第5步中收到SW1
发来的数据帧的时候记录的) 。
SW1收到这个数据帧,首先也是对源MAC、VLAN号以及对应端口进行学习,然后查看数据帧中的目的MAC,之前已经保存过PC1的MAC,SW1将目的MAC所在VLAN号和源MAC所在VLAN号进行对比,发现他们处于同一个VLAN2下,SW2将这个数据帧中的VLAN标记去除并直接从目的MAC(PC1的MAC)所对应的端口fa0/0发给PC1 。
PC1成功收到ARP应答包,接下来的通信过程和这个步骤类似 。
【一文详解交换机间VLAN的通信过程】总结:交换机何时添加802.1Q标签头(VLAN标签)与交换机的接口有关,如果交换机的接口接的是一台计算机,那么这个端口是接入端口,在数据帧进入时被添加802.1Q标签头,数据帧从接入端口发出时去掉标签头;如果交换机的接口接的是另外一台交换机,那么这个接口就属于主干接口(Trunk),数据从这种接口发出一般不会去掉标签头(后面演示的NativeVLAN除外) 。
责任编辑人:CC
.dfma {position: relative;width: 1000px;margin: 0 auto;}.dfma a::after {position: absolute;left: 0;bottom: 0;width: 30px;line-height: 1.4;text-align: center;background-color: rgba(0, 0, 0, .5);color: #fff;font-size: 12px;content: "广告";}.dfma img {display: block;}
文章插图
推荐阅读
- 一文知道人工智能芯片的算法
- 变频器安装的六大误区优劣详解
- 一文解析光模块的三种失效率预计方法
- MOS电容的基本架构详解
- 一文知道NB-IOT的成本优势
- 数字化仿真领域中的物流仿真 详解
- 一文读懂水龙头怎么选购!快看你家的水龙头有没有选错!
- 面盆有哪些种类 卫生间面盆常见类型及选购详解
- 浴缸怎么安装 浴缸安装步骤详解
- 攻略:按摩浴缸安装详解 乐享舒适沐浴