交换机在以太网中的应用,解决了集线器所不能解决的冲突域的问题,但传统的交换技术并不能有效的抑制广播帧,即当接入交换机的一台设备向交换机发送了广播帧后,交换机将会把收到的广播帧转发到所有交换机其它端口相连的设备上,造成网络上通信流量剧增,甚至导致网络崩溃。
此外,在传统网络中,由于用户能够访问网络上的所有设备,所以网络的安全性得不到保障。
为此,20世纪90年代中期出现了交换机VLAN技术来解决上述两个问题。
疑问:为什么不用路由器解决上述两个问题?
事实上我们的确可以使用路由器解决上述两个问题,但是其性能较低。路由器的主要功能是实现异构网络互联和网络路由,并不能提供快速高效的分组转发。
交换机中的VLAN技术
VLAN是Virtual Local Area Network(虚拟局域网)的简称,是一个在物理网络上划分出来的逻辑网络。VLAN技术是一种将局域网内的设备逻辑地划分成一个个网段,从而实现虚拟工作组的技术。
VLAN技术具有如下特征:
- VLAN与由物理位置决定的传统LAN有着本质的不同,不受网络物理位置的限制,可跨越多个物理网络、多台交换机。可将网络中的设备按功能划分成多个逻辑工作组,每组为一个VLAN
- 同一个VLAN中的广播只有VLAN中的成员才能听到,而不会传输到其它VLAN中去,因此VLAN可以隔离广播信息,每个VLAN为一个广播域,用户可以通过划分VLAN的方法来限制广播域,以防止广播风暴的发生。
- 划分VLAN可有效地提升带宽,我们可以将网络的设备按业务功能划分成多个逻辑工作组,每一组为一个VLAN。这样,日常的通信交流信息绝大部分被限制在一个VLAN内部,使得带宽得到有效利用。
- VLAN均由软件实现定义与划分,使得建立与重组VLAN十分灵活。当一个VLAN中增加、删除或修改用户时不必从物理位置上调整网络。
VLAN的分类:
- 基于端口的VLAN
- 基于MAC地址的VLAN
- 基于IP地址的VLAN
- 基于网络层协议的VLAN
- 基于IP组播的VLAN
VLAN数据帧标识
传统的以太网数据帧不能对VLAN或子网进行标识,VLAN帧的标识是在每个数据帧内放入一个唯一性的标识符。没太交换机都检查这个数据帧的VLAN标识,以决定该数据帧所属的VLAN,交换机可做出相应的判断,将该数据帧送到该VLAN内的目的端口。
此外,交换机还得负责在数据帧在被送到接收设备之前,将VLAN信息删掉。因为含VLAN信息的数据帧并不是标准的以太网数据帧。
VLAN数据帧的标识方法有:ISL(思科专用)、IEEE802.1q(国际标准)、LANE等。最具代表性的是IEEE802.1q和ISL.
一般的数据帧格式如下:
前导帧 | 分隔符 | 目的MAC地址 | 源MAC地址 | 类型 | 数据部分 | 帧检测序列 |
---|---|---|---|---|---|---|
7B | 1B | 6B | 6B | 2B | 46B-1500B | 4B |
采用IEEE 802.1q方法标识的数据帧格式如下:
前导帧 | 分隔符 | 目的MAC地址 | 源MAC地址 | PID | CI | 类型 | 数据部分 | 帧检测序列 |
---|---|---|---|---|---|---|---|---|
7B | 1B | 6B | 6B | 2B | 2B | 2B | 46B-1500B | 4B |
- PID 标识所采用的协议 其值为0x8100
- CI 内含12位的VLAN标识 可用的VLAN个数为 2^12 -2 = 4094个,其中0和4095不用
- 帧检测序列会被重新计算
采用ISL方法标识的数据帧格式如下:
前导帧 | 分隔符 | ISL包头 | 目的MAC地址 | 源MAC地址 | 类型 | 数据部分 | 帧检测序列 | VLAN数据帧检测序列 |
---|---|---|---|---|---|---|---|---|
7B | 1B | 26B | 6B | 6B | 2B | 46B-1500B | 4B | 4B |
- ISL 包头 包含VLAN标识信息
- VLAN数据帧检测序列 对从ISL包头到原检测序列为止
VLAN技术中的端口
VLAN的端口有两种类型:
- Access端口
只能属于一个VLAN,并且是通过手工设置指定VLAN的。这个端口不能直接从另一个VLAN接收信息,也不能向其它VLAN发送信息。 - Trunk端口
默认情况下是属于本交换机所有VLAN的。能够转发所有VLAN的帧。也可以通过设置许可VLAN列表(allowed-vlans)来加以限制。
交换机中的端口默认工作在二层模式下的Access模式。