一文详解交换机间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应答包,接下来的通信过程和这个步骤类似。
总结:交换机何时添加802.1q标签头(vlan标签)与交换机的接口有关,如果交换机的接口接的是一台计算机,那么这个端口是接入端口,在数据帧进入时被添加802.1q标签头,数据帧从接入端口发出时去掉标签头;如果交换机的接口接的是另外一台交换机,那么这个接口就属于主干接口(trunk),数据从这种接口发出一般不会去掉标签头(后面演示的nativevlan除外)。


精密电子连接器电镀触点的设计注意事项
浅谈两会民声之医疗
面部表情识别的伦理问题
如何使用很少的IO端口线将该触摸键直接与LCD相连的电容式触摸控制方案
关于通信技术的几个经典小故事
一文详解交换机间VLAN的通信过程
TSEV01CL55红外温度传感器的驱动设计与实现
云计算安全风险主要在哪些方面
中国科学院研究人员开发了一种新型生物医学内窥镜
R型低频变压器和高频变压器有怎样的区别?
医疗技术公司Suki宣布完成了价值2000万美元的B轮融资
广凌耗材管理系统 |让耗材管理更科学
智联微科携TRINAMIC最新产品将在中国(成都)电子信息博览会
什么是DNN_如何使用硬件加速DNN运算
拿什么拯救你---我的百年非遗包子
晶科储能成功交付首批客户定制化要求的工商业储能一体机SunGiga
PCB电路板的灌封胶该如何选择?
带有精确剩余电量指示的电池管理方案
白天也可享受到超大屏幕影音的震撼,酷乐视Q6旗舰版拆解
什么是插件电阻?选择插件电阻需要考虑哪些因素呢?