VLAN的基本原理

开题

我们这节课主要来了解下VLAN技术以及它产生的背景,然后掌握交换机端口的链路类型以及VLAN的类型,还有它们的相关配置,另外还得掌握IEEE 802.1Q的帧格式,这些会对我们学习后面的课程有很大的帮助。

 

VLAN技术以及产生背景

在交换式以太网出现后,同一交换机的所有端口处于不同的冲突域,工作效率得到了很大的提高,但是所有端口处于同一广播域,导致一台计算机发出广播帧,局域网中所有的计算机都能够接受到,使局域网中有限的网络资源被无用的广播信息所占用。

VLAN的基本原理_第1张图片 

在如上图中的网络拓扑,PCA发出一个广播帧,二层交换机所有的端口处于同一广播域,那么交换机会把该数据帧从除收到该数据帧的端口以外的所有端口都进行发送,导致全网充斥这广播报文,如果一台计算机发出的广播报文是100Kbps,那么10台将会达到1000Kbps,那么100台1000台呢?是不是导致无用信息大量的占用着网络资源,严重的时候可能会导致交换机死机,从而影响该局域网的通信,所以如何限制广播域的传播范围成了一个急需解决的问题。

以太网处于TCP/IP协议栈的第二层,二层上的本地广播帧是不能被三层设备路由器转发的,使用路由器可以解决广播帧的传播范围,但是路由器也存在着弊端,一个是路由器的价格比交换机的价格昂贵,是种不经济的解决方案;二个路由器的端口较少,一个局域网一个端口,如果需要隔离的局域网较多,那么路由器会应付不过来;三个是在大部分中低端路由器上使用软件转发,转发性能并不高,容易造成性能瓶颈,所以用路由来隔离广播是个高成本低性能的方案。

后来IEEE协会专门制定了一个802.1Q的协议标准,这就是VLAN技术,VLAN就是在一物理LAN内划分出多个虚拟LAN的,每个VLAN是一个广播域,这就缩小了广播域的范围,各个VLAN之间不能直接通信

我们现在来说一下VLAN有哪一些优点,一是可以有效的控制广播域的范围,前面说了每个VLAN是一个广播域,VLAN之间隔离广播域;二是VLAN 不受物理位置的闲置,可以灵活的构建工作组;三是各个VLAN之间不能直接进行通信,增强了局域网的安全性;四是增强了网络的健壮性,各个VLAN是独立了,一个VLAN出了问题不会影响其他的VLAN,缩小了故障范围

VLAN的作用是用来隔离广播域,那我们在实际的操作中是如何来划分VLAN呢?下面我们就逐一来讲四个基本的VLAN 划分方法;第一个是利用端口来划分VLAN,这个是我们现在最常用的VLAN 划分方法,该方法就是把交换机的各个端口按照需要划分到不同VLAN 里面去,这是最简单也是最有效的划分方法;第二个是利用MAC地址来划分VLAN,该方法就是利用主机的MAC地址建立一个与VLAN的映射关系,形成一个映射表,这种方法的优点就是当用户的物理位置移动时,其所处的VLAN 不会发生变化,灵活性比较高,但是前期的工作量非常大,技术人员得一一去收集MAC地址,然后建立一个映射关系;第三个是利用协议来划分VLAN,不同的协议处于不同的VLAN,比如IP协议映射到vlan1,ipx协议映射到vlan2,交换机通过识别协议标签来自动划分到不同的VLAN,但是在现在的网络环境中用的最多的还是IP协议,运行其他协议已经非常少了;第四个方法就是子网划分,基于子网划分的就是利用报文中源IP地址以及子网掩码作为划分依据,交换机根据收到的报文中的源IP地址找到交换机已经存在的对应关系,然后自动转发到对应的的VLAN中,这种方法的划分方式比较灵活,用户移动位置也不需要重新配置,但是这种方法也不是很完美,因为为了判断用户的属性,必须逐一检查数据包网络层的地址,这建耗费交换机不少资源;综合以上几种划分方法的优缺点来看,基于端口划分是普遍的也是目前所有交换机都支持的VLAN 划分方法。

 

VLAN的转发技术原理

我们现在来看一下VLAN的转发技术原理,在以太网交换机中是根据目的MAC地址来查MAC地址表进行数据帧的转发,MAC地址表中包含了MAC地址与端口的一个对应的关系,当交换机收到一个数据帧的时候,交换机会查看该数据帧中的目的MAC地址,如果是一个单播帧,交换机会查表从对应的端口转发出去,如果是广播地址,那么交换机会从除开收到该广播帧的以外的所有端口发送出去;但是在VLAN 技术中,交换机在数据帧中加上一个标签,然后交换机在查表的过程之外还要检查端口上的标签是否匹配,交换机只会在属于这个标签的端口上进行转发,如果不是就不进行转发操作

 

802.1Q的帧格式

VLAN的基本原理_第2张图片 

上图就是一个带IEEE802.1Q标记的以太网帧格式,我们现在重点来看中间的tag字段,tag字段总共占四个字节,其中TPID(标签协议标识)和TCI(标签控制信息)各占两个字节;TPID是什么?TPID是IEEE定义的新的类型,标识这是一个封装了802.1Q标签的帧,其中就包含了一个固定的值0x8100。后面的TCI又包含了三个字段。分别是priority(优先级)、CFI、VLAN ID;priority占3位,指定帧的优先级,一共有8种优先级,从0-7;CFI占1为,当这个值为0时说明这是一个规范格式,为1时是非规范格式,它在令牌环网、FDDI网络中来指示封装帧中所带的地址的比特次序;VLAN ID字段占12位,指明该数据帧所在的vlan编号,VLAN的编号共4096个,但是0和4096保留,所以可用的也就4094个,其中的vlan 1是交换机的默认vlan

我们看完了802.1Q的帧格式,现在再来看看vlan的标签是怎么打上去掉的

VLAN的基本原理_第3张图片 

当PCA发送一个数据帧到交换机时,这个时候是不带标签的,当这个数据帧到达交换机的端口时,交换机给这个数据帧打上一个默认的标签,等这个数据帧要离开这台交换机的时候,交换机又会把这个标签去掉,这就是一个单标签的操作过程,在整个数据转发的过程中对终端主机来说是透明的,交换机如何进行vlan划分主机是不知道的,也不需要主机去了解,所有的打标签和去标签都交由交换机处理,这就是单标签的一个操作过程

看完标签操作过程后我们来了解下三种链路类型,分别是access、trunk、hybrid

Access一般是用在连接用户设备的那一端,只允许缺省vlan通过,仅接收和发送一个vlan的数据帧,这也就是我们前面所说的单标签交换过程;看上图,PCA发送一个数据帧个PCC,交换机收到该数据的时候把这个数据帧打上vlan 10的标签,然后进行查表操作,把数据帧发送的与PCC连接的端口的时候就会把这个VLAN 10的标签去掉,在access链路类型中是不是一次只能允许一个vlan通过?那我如果一次要允许多个vlan通过,那么这个access链路类型是不是就行不通了?这也就有了我们第二个链路类型,trunk链路类型

VLAN的基本原理_第4张图片 

看上图,两台交换机中间只有一条链路,但是两个交换机之间要同时传递vlan10和vlan20两个标签,我们现在用前面的access肯定不行了吧,这个时候我们用trunk来看是怎么操作的,PCA发送一个数据帧给SWA,SWA收到后打上10的标签,然后查表通过E1/0/24端口发送SWB,在发送给SWB的时候不做任何操作,原封不动的传给SWB,SWB收到后再进行查表,然后发送到vlan10对应的端口E1/0/1进行去标签的操作,最后把去掉标签的数据帧发送给PCC,PCB和PCD进行通信也进行相同的操作,不过默认帧是个例外,发送默认帧时,trunk会去掉默认vlan的标签;同样,交换机从trunk收到不带标签的帧时会打上默认vlan标签;我们除了学完access链路类型和trunk类型以外,还有第三种链路类型hybrid,这是华三的一个私有的链路类型,hybrid端口可以接收和发送多个VLAN的数据帧,同时还能对任何vlan帧进行去标签的操作

VLAN的基本原理_第5张图片 

看上图,PCA发送一个数据帧给PCC,当交换机收到PCA发来的数据帧时会打上10的标签,然后交换机进行查表操作,发送到PCC的端口,交换机进行去标签的操作的时候会检查untag,在untag表项中可以去掉带标签10、20、30的数据帧,所以很方便的就去掉了数据帧;这时PCA又发送一个数据帧给PCB;当交换机收到PCA发来的数据帧时会打上10的标签,然后交换机进行查表操作,然后发送到PCB的端口,交换机进行去标签的操作的时候会检查untag,但是此时untag表项中只有20和30,也就意味着该端口只能去掉带标签20和30的数据帧,这是交换机无法去掉标签,所以只能把该数据帧丢弃

 

总结

通过这章的学习我们知道了vlan的作用就是在局域网中限制广播的传送范围,以及如何划分vlan,我们可以基于端口、子网、协议、MAC四种vlan划分方法来划分vlan,还有access、trunk、hybrid三种链路类型的应用场景,以及它们是怎么对标签操作的,access是进口打标出口解标;trunk可以同时允许多个VLAN帧通过,不对标签做任何操作,但是发送带默认标签的数据帧时会解标,收到不带标签的数据帧会打上默认标签;hybrid可以同时接收和发送多个VLAN的数据帧,同时还能对任何vlan帧进行去标签的操作,今天我们到此结束。

你可能感兴趣的:(网络)