VLAN
{Back to Index}

Table of Contents

1 帧格式

IEEE 802.1Q 帧对以太网帧格式进行了扩展,插入了 4 字节的 VLAN 标记(tag)

frame.png

Figure 1: 802.1Q 帧格式

VLAN 标记的最后 12 位称为 VLAN 标识符 VID ,它唯一标识了以太网帧属于哪一个 VLAN 。
VID 的取值范围为 0 - 4095, 0 和 4095 都不用来表示 VLAN ,因此用于表示 VLAN 的 VID 有效取值范围为 1 - 4094

2 缺省 VLAN ID (Native VLAN)

思科交换机在未配置 VLAN 时,所有接口都默认属于 VLAN 1 ,即 Native VLAN 。

3 端口类型

3.1 ACCESS

ACCESS 端口用于连接用户计算机,且只能属于一个 VLAN 。

3.1.1 接收数据

  • 一般只接受 未打标签 的数据帧,即普通以太网数据帧
  • 当收到 未打标签 的数据帧时,根据端口所属 VLAN ID 给帧打标签

3.1.2 发送数据

  • 若帧的 VID 与端口 VLAN ID 相等,则 去标签 并转发该帧,否则, 不处理

3.2 TRUNK

TRUNK 端口一般用于交换机之间或交换机与路由器之间的互连,可以接收或发送属于多个 VLAN 的数据帧。

用户可以设置 TRUNK 端口的 VLAN ID 值,默认情况下 TRUNK 的 VLAN ID 为 Native VID 。 互连起来的 TRUNK 端口需要配有 相同 的 VLAN ID 。

3.2.1 接收数据

  • 接收已打标签的数据帧,不论帧 VID 是否等于端口 VLAN ID
  • 接收未打标签数据帧,根据端口 VLAN ID 给帧打标签

3.2.2 发送数据

  • 对于数据帧中 VID 等于 VLAN ID 的数据帧,去掉标签再转发
  • 对于数据帧中 VID 不等于 VLAN ID 的数据帧, 直接转发

4 VLAN 间通信

4.1 多臂路由

multi-arms.png

Figure 2: 多臂路由拓扑

4.1.1 缺点

  • 每增加一个 VLAN ,需要额外消耗路由器上的一个 LAN 口和交换机上的一个 LAN 口
  • 通常,路由器上的 LAN 口数量很少,为了应对增加 VLAN 所需的接口,必须将路由器升级成带有多个 LAN 接口的高端路由器

4.2 单臂路由

与多臂路由不同的是,交换机与路由器连接的接口类型为 TRUNK 。

需要在路由器连接交换机的接口下,创建相应数量的 逻辑子接口 ,分别作为各 VLAN 的默认网关接口。逻辑子接口的 MAC 地址与其上的物理接口的 MAC 地址相同。

single-arm.png

Figure 3: 单臂路由拓扑

4.2.1 缺点

  • 随着 VLAN 间流量不断增加,可能导致路由器成为网络的瓶颈
  • 需要分别设置路由器和交换机

4.3 三层交换机

三层交换机由路由模块,交换模块和内部汇聚链路组成(如下图所示),其中内部汇聚链路具有相当大的带宽。

l3.png

Figure 4: 三层交换机结构( vlan10 和 vlan20 为逻辑接口,非物理接口)

4.3.1 优点

  • 与传统路由器相比,三层交换机内部的路由模块能够实现高速路由
  • 内部汇聚链路能保证相当大的带宽
  • 相比单臂路由,较少所需设备种类
  • 各厂家有加速 VLAN 间路由的特有技术(如基于流的加速技术)

Author: Hao Ruan (ruanhao1116@gmail.com)

Created: 2020-11-17 Tue 18:17

Updated: 2021-08-17 Tue 11:23

Emacs 27.1 (Org mode 9.3)