计算机网络:VLAN 基本概念与原理
一个以太网是一个广播域,当一个以太网包含的计算机太多时,往往会导致:
以太网中出现大量的广播帧,特别是经常使用的 ARP 和 DHCP 协议。
一个单位的不同部门共享一个局域网,对信息保密和安全不利。
通过虚拟局域网(Virtual LAN),可以把一个较大的局域网分割成一些较小的与地理位置无关的逻辑上的 VLAN,而每个 VLAN 是一个较小的广播域。
802.3ac 标准定义了支持 VLAN 的以太网帧格式的扩展。它在以太网帧中插入一个 4 字节的标识符(插入在源地址字段和类型字段之间),称为 VLAN 标签,用来指明发送该帧的计算机属于哪个虚拟局域网。插入 VLAN 标签的帧称为 802.1Q 帧。由于 VLAN 帧的首部增加了 4 字节,因此以太网的最大帧长从原来的 1518 字节变为 1522 字节。
VLAN 标签的前两个字节置为 0x8100,表示这是一个 802.1Q 帧。在 VLAN 标签的后两个字节中,前 4 位没有用,后 12 位是该 VLAN 的标识符 VID,它唯一标识了该 802.1Q 帧属于哪个 VLAN。12 位的 VID 可识别 4096 个不同的 VLAN。插入 VID 后,802.1Q 帧的 FCS 必须重新计算。
交换机 1 连接了 7 台计算机,该局域网划分为两个虚拟局域网 VLAN-10 和 VLAN-20,这里的 10 和 20 就是 802.1Q 帧中的 VID 字段的值,由交换机管理员设定。各主机并不知道自己的 VID 值(但交换机必须知道),主机与交换机之间交互的都是标准以太网帧。一个 VLAN 的范围可以跨越不同的交换机,前提是所用的交换机能够识别和处理 VLAN。这两个 VLAN 虽然都跨越了两个交换机,但各自都是一个广播域。
假定 A 向 B 发送帧,交换机 1 根据帧首部的目的 MAC 地址,识别 B 属于本交换机管理的 VLAN-10,因此就像在普通以太网中那样直接转发帧。
假定 A 向 E 发送帧,交换机 1 必须把帧转发到交换机 2,但在转发前,要插入 VLAN 标签,否则交换机 2 不知道应把帧转发给哪个 VLAN。因此在交换机端口之间的链路上传送的帧是 802.1Q 帧。交换机 2 在向 E 转发帧之前,要拿走已插入的 VLAN 标签,因此 E 收到的帧是 A 发送的标准以太网帧,而不是 802.1Q 帧。
如果 A 向 C 发送帧,那么情况就复杂了,因为这是在不同网络之间的通信,虽然 A 和 C 都连接到同一个交换机,但是它们已经处在不同的网络中(VLAN-10 和 VLAN-20),需要通过上层的路由器来解决,也可以在交换机中嵌入专用芯片来进行转发,这样就在交换机中实现了第 3 层的转发功能。
虚拟局域网只是局域网给用户提供的一种服务,并不是一种新型局域网。
版权声明: 本文为 InfoQ 作者【timerring】的原创文章。
原文链接:【http://xie.infoq.cn/article/0d2a0ac9cdb25ec3134a09844】。未经作者许可,禁止转载。
评论