一。802.1Q帧的格式
相关知识:IEEE 801.1D——定义了关于不支持VLAN特性的标准规范;IEEE802.1Q定义了关于支持VLAN特性的交换机的标准规范;IEEE 802.1Q定义的内容覆盖了IEEE 802.1D的所有内容,并增加了有关VLAN特性的内容;IEEE 802.1Q可以后向兼容IEEE 802.1D。
以下所讨论的是能够支持VLAN特性的、遵从802.1Q标准的交换机。
通常情况下,交换机识别出某个帧是属于哪个VLAN后,会在这个帧的特定位置上添加一个标签(Tag),这个标签明确表明了这个帧是属于哪个VLAN的。当别的交换机收到这个带标签的帧时,就可以根据标签上的信息识别出这个是属于哪个VLAN的。
而这种帧格式就是被IEEE 802.1Q定义的IEEE 802.1Q帧(或称为:VLAN Tag)。
802.1Q帧中个字段的含义:
字段 | 长度 (字节) | 名称 | 解释 |
TPID | 2 | Tag Protocol ID,表示这个帧是否带标签(Tag) | 如果该值取值为0x8100,则表示这个帧是带Tag的帧;相反表示其实是传统的、不带Tag标签的帧。该帧与传统的以太网帧中该位置的Type/Length字段是兼容的。 |
PRI | 3 | Priority,表示帧的优先级 | 取值范围是0~7,值越大优先级越高。应用在当交换机阻塞时,先发送优先级较高的帧。 |
CFI | 1 | 标准格式指示位 | |
VID | 12 | VLAN Identifier,表示该帧所属于的VLAN | VLAN ID的取值范围是0~4095。其中0和4095为保留取值,所以VLAN ID的有效取值范围是1~4094. |
特别注明:计算机的“头脑:中是没有任何关于VLAN的概念。计算机既不会产生并发送Tagged帧。当计算机收到一个Tagged帧后,它是识别不出0x8100的含义的,会将其直接丢弃。
二。VLAN的类型
计算机发送的帧都是不带标签(Tag)的。当计算机发送一个不带标签的帧给交换机时,交换机需要通过某种划分原则来判断这个帧应该划到哪个特定的VLAN 中。
1.基于端口的VLAN(也称为:物理层VLAN、一层VLAN)
划分原则:将VLAN的编号(VLAN ID)配置影射到交换机的物理端口上,从某一物理端口进入交换机的、由终端计算机发送的不带标签的帧都被划分到该端口的VLAN ID所表明的那个VLAN。
优点:划分原则简单、直观、容易实现、安全可靠。
注意:这种类型的VLAN,当计算机接入交换机的端口发生了变化时,该计算机发送的帧的VLAN归属也可能发生改变。
2.基于MAC地址的VLAN(也称为:二层VLAN)
划分原则:交换机内部建立并维护了一个MAC地址与VLAN ID的对应表,当交换机接收到计算机发送的不带标签的帧时,交换机将分析帧中的源MAC地址,然后查询MAC地址与VLAN ID的对应表,根据其中的对应关系把这个帧划分到相应的VLAN中。
优点:划分灵活、当计算机接入交换机的端口发生了变化时,该计算机发送的帧的VLAN归属不会发生改变。
缺点:划分原则复杂、安全性不高(因为恶意的计算机很容易伪造自己的MAC地址)
3.基于协议的VLAN(也称为:三层VLAN)
划分原则:交换机根据计算机发送的不带标签的帧中的帧的类型字段的值来决定帧的VLAN 归属。
现在的应用环境中,基于端口的VLAN在实际的网络中的应用较为广泛。