文章目录
- 局域网
- 虚拟局域网 VLAN
- 虚拟局域网 VLAN 概述
- 实现机制
- IEEE 802.1Q帧
- 以太网交换机的接口类型
- Access 接口
- Trunk 接口
- Hybrid 接口
- 不进行人为的VLAN划分
- 划分两个不同VLAN
- Trunk接口去标签后进行转发
- Trunk接口直接转发
局域网
局域网(Local Area Network,LAN)是指在某一区域内由多台计算机互联成的计算机网络。它通常覆盖一个小的地理范围,如一个学校、一座大楼或一片厂区等。
局域网采用的传输方式为广播式,通信距离短,信号衰减较小,因此误码率较低。主要目的是使这些地理位置相邻的计算机和设备能够互相通信和共享资源。
局域网的特点:
-
地理范围小:局域网覆盖的地理范围一般不超过几公里。
-
高传输速率:相比于广域网(WAN),局域网具有较高的数据传输速率,可以从几兆比特每秒(Mbps)到千兆比特每秒(Gbps)甚至更高。
-
低延迟:局域网内的通信通常具有较低的延迟,因为数据不需要经过复杂的路由就能到达目的地。
-
易于管理:由于规模较小,局域网更容易进行管理和维护。
-
安全性较高:局域网通常属于私有网络,对外部的访问受到严格控制,因此相比公共网络来说安全性更高。
虚拟局域网 VLAN
虚拟局域网 VLAN 概述
虚拟局域网(Virtual LocalArea Network,VLAN
)是一种将局域网内的站点划分成与物理位置无关的逻辑组的技术,一个逻辑组就是一个 VLAN
,VLAN
中的各站点具有某些共同的应用需求。
属于同一 VLAN 的站点之间可以直接进行通信,而不同VLAN中的站点之间不能直接通信。连接在同一交换机上的多个站点可以属于不同的 VLAN
,而属于同一 VLAN
的多个站点可以连接在不同的交换机上。
VLAN 的划分不受物理位置的限制,网络管理员可对局域网中的各交换机进行配置,根据功能、部门及应用等因素进行逻辑分组,建立多个逻辑上独立的 VLAN
。
虚拟局域网 VLAN
并不是一种新型网络,它只是局域网能够提供给用户的一种服务。
实现机制
虚拟局域网VLAN有多种实现技术,最常见的就是基于以太网交换机的接口来实现VLAN。这就需要以太网交换机能够实现以下两个功能:
-
能够处理带有 VLAN 标记的帧,也就是IEEE 802.1Q帧。
-
交换机的各接口可以支持不同的接口类型,不同接口类型的接口对帧的处理方式有所不同。
IEEE 802.1Q帧
IEEE 802.1Q
帧也称为 Dot One Q
帧,它对以太网V2的MAC帧格式进行了扩展:在源地址字段和类型字段之间插入了 4字节的 VLAN 标签(tag)字段。
802.1Q帧一般不由用户主机处理,而是由以太网交换机来处理:
-
当交换机收到普通的以太网MAC帧时,会给其插入4字节的VLAN标签使之成为802.1Q帧,该处理简称为“打标签”
-
当交换机转发802.1Q帧时,可能会删除其字节的VLAN标签使之成为普通的以太网MAC帧,该处理简称为“去标签”。交换机转发802.1Q帧时也有可能不进行“去标签”处理,是否进行“去标签”处理取决于交换机的接口类型。
以太网交换机的接口类型
根据接口在接收帧和发送帧时对帧的处理方式的不同,以及接口连接对象的不同,以太网交换机的接口类型一般分为 Access
和 Trunk
两种。
当以太网交换机上电启动后,若之前未对其各接口进行过VLAN的相关设置,则各接口的接口类型默认为Access,并且各接口的缺省 VLAN ID 为1,即各接口默认属于VLAN1。
-
对于思科交换机,接口的缺省 VLAN ID 称为本征VLAN(NativeVLAN)
-
对于华为交换机,接口的缺省 VLAN ID 称为端口 VLAN ID(PortVLANID),简记为PVID。交换机的每个接口有且仅有一个PVID
Access 接口
Access
接口一般用于连接用户计算机,由于其只能属于一个VLAN,因此 Access
接口的PVID值与其所属VLAN的ID相同,其默认值为1。
-
接收处理:一般只接受“未打标签”的普通以太网MAC帧,根据接收帧的接口的PVID给帧“打标签”,即插入4字节的VLAN标签字段,VLAN标签字段中的VID取值就是接口的PVID值.
-
转发处理:若帧中的
VID
值与接口的PVID
值相等,则给帧“去标签”后再进行转发,否则不转发帧。因此从Access
接口转发出的帧,是不带VLAN标签的普通以太网MAC帧。
Trunk 接口
Trunk
接口一般用于交换机之间的互连。Trunk
接口可以属于多个VLAN,即Trunk接口可以通过属于不同 VLAN
的帧。Trunk接口的默认PVID值为1,一般不建议用户修改,若互连的 Trunk
接口的 PVID
值不相等,则可能出现转发错误。
-
接收处理:既可以接收“未打标签”的普通以太网MAC帧也可以接收“已打标签”的802.1Q帧。
-
若接收到普通以太网MAC帧时,根据接收帧的接口的PVID给帧“打标签”,这与
Access
接口的处理相同。 -
如果该帧包含
802.1Q
的VLAN标签,则不改变。
-
-
转发处理:从
Trunk
接口转发出的帧,可能是普通以太网MAC帧也可能是802.1Q
帧。-
对于帧的
VID
值等于接口的PVID
值的 802.1Q 帧,将其“去标签”转发; -
对于帧的
VID
值不等于接口的PVID
值的 802.1Q 帧,将其直接转发。因此,
-
Hybrid 接口
Hybrid
接口是华为交换机私有的接口类型。Hybrid 接口既可以用于交换机之间的互连(与 Trunk
接口相同),也可用于交换机与用户计算机之间的互连(与 Access
接口相同)。
Hybrid
接口的绝大部分功能与 Trunk
接口相同。不同点在于 Hybrid
接口的转发处理: Hybrid
接口会查看帧的VID值是否在接口的“去标签”列表中,若存在则“去标签”后转发,若不存在则直接转发。
不进行人为的VLAN划分
在一个交换机上不进行人为的 VLAN
划分,在交换机各接口默认属于 VLAN1
且类型为 Access
的情况
-
主机 A、B、C 和 D 都连接到交换机的不同端口,这些端口默认情况下都是 Access 端口,且属于 VLAN1。
-
当主机发送广播帧时,交换机会将该帧打上 VLAN 标签(VID=1),然后转发给其他所有连接在同一交换机上的主机。
-
接收方收到带有标签的广播帧后,会去掉标签再接收数据,这样保证了不同主机之间可以正常通信。
划分两个不同VLAN
在一个交换机上划分两个不同VLAN的情况:对交换机进行配置(通过界面或配置命令)创建 VLAN2
和 VLAN3
;将接口1和2划归到 VLAN2
,接口3和4划归到 VLAN3
。
-
在交换机上创建了两个 VLAN:
VLAN2
和VLAN3
。 -
将 接口1 和 2 划归到
VLAN2
,接口3 和 4 划归到VLAN3
。 -
主机A 和 B 连接在 接口1 和 2 上,属于
VLAN2
;主机C 和 D 连接在 接口3 和 4 上,属于VLAN3
。 -
当 主机A 或 B 发送广播时,交换机会将广播帧打上VLAN标签(VID=2),然后只转发给同一
VLAN
内的 主机B,不会转发给VLAN3
下的 主机C 和 D。 -
同理,当 主机C 或 D 发送广播时,交换机会将广播帧打上VLAN标签(VID=3),然后只转发给同一 VLAN 内的 主机D,不会转发给 VLAN2 下的 主机A 和 B。
-
主机A 和 B 之间可以相互通信,主机C 和 D 之间也可以相互通信,但是 主机A 和 B 无法与 主机C 和 D 直接通信,因为它们处于不同的 VLAN 中。
-
如果要让不同 VLAN 间的主机相互通信,需要通过三层设备(如路由器)进行路由转发。
-
左侧的 主机A 和 B 连接在交换机的 接口1 和 2 上,这两个接口的
PVID
(Port VLAN ID)值均为 2,表明它们属于VLAN2
。 -
右侧的 主机C 和 D 连接在交换机的 接口3 和 4 上,这两个接口的
PVID
值均为3,表明它们属于VLAN3
。 -
当 主机A 或 B 发送广播时,交换机会将广播帧打上 VLAN 标签(VID=2),然后只转发给同一 VLAN 内的 主机B,不会转发给
VLAN3
下的 主机C 和 D。 -
相反地,当 主机C 或 D 发送广播时,交换机会将广播帧打上 VLAN 标签(VID=3),然后只转发给同一 VLAN 内的 主机D,不会转发给
VLAN2
下的 主机A 和 B。 -
这种情况下,主机A 和 B 之间可以相互通信,主机C 和 D 之间也可以相互通信,但是 主机A 和 B 无法与 主机C 和 D 直接通信,因为它们处于不同的
VLAN
中。 -
如果要让不同 VLAN 间的主机相互通信,需要通过三层设备(如路由器)进行路由转发。
Trunk接口去标签后进行转发
两个交换机通过 Trunk
类型的接口互连,Trunk
接口将802.1Q帧“去标签”后进行转发的情况。
-
当
Trunk
端口收到数据帧时,如果该帧不包含 802.1Q 的 VLAN 标签,将打上该Trunk
端口的PVID
;如果该帧包含 802.1Q 的 VLAN 标签,则不改变。 -
当
Trunk
端口发送数据帧时,如果所发送帧的VLAN ID
与端口的PVID
不同,则检查是否允许该 VLAN 通过,如果允许则直接转发,不允许则直接丢弃;当该帧的 VLAN ID 与端口的 PVID 相同时,则剥离VLAN标签后转发。
Trunk接口直接转发
两个交换机通过 Trunk
类型的接口互连,Trunk
接口将802.1Q帧直接转发的情况。
-
交换机1 和 交换机2 通过
Trunk
接口5 互连,使得 VLAN1 和 VLAN2 的信息可以在两个交换机间传输。 -
当 主机A 或 B 发送广播时,交换机1 会将广播帧打上 VLAN 标签(VID=1),然后通过
Trunk
接口 5转发给 交换机2。 -
交换机2 接收到带标签的广播帧后,会识别出其属于 VLAN1,并将该帧转发给主机E和F。
-
同样地,当 主机G 或 H 发送广播时,交换机2 会将广播帧打上 VLAN 标签(VID=2),然后通过
Trunk
接口5 转发给 交换机1。 -
交换机1 接收到带标签的广播帧后,会识别出其属于VLAN2,并将该帧转发给主机A和B。