在《交换机入门基本功 -上》提到,交换机在物理层面划分通信区域并产生局域网(Local Area Network, LAN)。局域网具有一个特点:连线拓扑一旦确定,一定时间内不会发生通信区域的变动。在实际通信过程中,广播报文和未知目的地址的单播报文,需要通知到所有设备。通信区域的大小,影响了这个过程中需要通知设备的多少。然而,对设备不加选择的广播会造成广播泛滥。交换机此时并不具备设备选择的功能,通信区域内的所有设备们此时别无选择,只能不断地被“打扰”(“i”设备表示:交换机这个“e人”好可怕,默默哭泣ㄒoㄒ~~)。而且,这种广播泛滥还会占用带宽,造成线路冲突和性能下降等问题,甚至可能造成网络瘫痪。
要解决这个问题,一个简单的想法是:改变局域网内的连线拓扑,这是否可行呢?答案是有用,但不多。理由很简单,如果只需要偶尔改变连线拓扑,每次只改变一两个设备,那就只是几根网线的拔插工作。但如果需要频繁改变通信区域,或者存在多个通信区域、且每次涉及的设备很多呢?千手观音都得说:这活太累了……
图 1 “千手观音”哭泣
聪明的小伙伴可能会想到,如果不改变物理连线,而是限制报文的传播路径,让它们只能在特定范围内进行转发呢?没错,天无绝人之路,既然改变不了物理世界,那就在虚拟世界里大展身手,就是虚拟局域网(Virtual Local Area Network, VLAN)的来源!
VLAN技术在逻辑层面上,将局域网划分成多个区域,每个区域是独立的广播域,区域内可以进行广播通信,区域间不能进行直接通信。这样,无需修改实际的连线拓扑,就可以快速划分和修改广播域,可操作性和应变能力大大增强。设想一下,你一边在小组群讨论小组作业怎么写,一边在宿舍群讨论晚上吃什么,要是两个群的信息可以互相看到,那岂不是乱了套?!这种分群讨论方式的好处还有:如果临时加入了一名小组成员,那么只需要把这个人拉到小组群里就可以继续讨论,并不会影响之前的工作,简直不要太方便!
那么,小伙伴可能又要问了:这么方便的VLAN,究竟是用了什么“魔法”做到的呢?
神秘的魔法就是:VLAN ID ,简称VID,即不同VLAN的编号。通过在报文内增加额外字段,标明报文的VID,说明报文要在哪个VLAN下进行传输。
VLAN报文结构
携带VID的报文结构遵循IEEE的802.1Q协议。IEEE(Institute of Electrical and Electronics Engineers)电气电子工程师学会,在电气及电子工程、计算机及其他技术领域做出卓越贡献,引领新技术发展步伐,制定国际和行业标准。802.1Q协议在MAC(Media Access Control)报文的基础上,定义了VLAN的标准化实现方案。
首先介绍下不带VLAN的MAC报文,有两种格式,分别是IEEE 802.3在1982年颁布的格式,和以太网V2在1983年颁布的格式,二者只在部分字段有所区别,格式如图 2和图 3:
图 2 IEEE 802.3的MAC报文格式
图 3 以太网V2的MAC报文格式
每个字段的含义如下:
进一步的,在上述MAC报文格式基础上,增加VLAN的说明字段。具体格式如图 4:
图 4 携带VLAN的MAC报文格式
VLAN的说明字段介于SA和L/T之间,称之为Tag字段。Tag字段长度为4个字节,包括TPID和TCI两个部分:
TCI字段又可分为三个部分:
除了在报文内增加Tag字段表明报文所属的VLAN,还需要依赖交换机进行实际转发。其中,交换机的端口属性在VLAN转发过程中非常关键。在《交换机入门基本功-3》将介绍交换机端口属性以及具体的转发过程。
经纬恒润作为OPEN联盟会员和AUTOSAR联盟的高级合作伙伴,长期为国内外各大OEM和供应商提供涵盖TCP/IP、SOME/IP、DoIP、AVB、TSN、DDS等技术领域的设计和测试咨询服务,积极研发和探索车载网络前沿技术和工程应用。通过多个项目的实践经验,已建立了高质量、本土化的设计与测试一体化解决方案,为整车网络架构提供可靠支持。
了解更多
请致电 010-64840808转6117或发邮件至market_dept@hirain.com(联系时请说明来自面包房社区)
作者: 经纬恒润, 来源:面包板社区
链接: https://mbb.eet-china.com/blog/uid-me-3882431.html
版权声明:本文为博主原创,未经本人允许,禁止转载!
文章评论(0条评论)
登录后参与讨论