VLAN介绍

VLAN(Cont.)

一、 VLAN简介

二、 Trunk Link

如上图,HostA、HostB、HostC在VLAN1内,而HostD、HostE在VLAN2内。如果HostA发送一个广播帧,因为SwitchA知道HostA与HostB在同一个VLAN内,而HostE与HostA不在同一个VLAN内,因此,SwitchA应该可以将该广播帧发送给HostB,而不会发送给HostE。该广播帧还会被传送给SwitchB,SwitchB也应该具备这样的知识:将该广播帧发给HostC,而不发给HostD。
通过以上分析,我们知道,在划分了VLAN的交换机之间传送数据帧时,交换机需要对发送给其它交换机的帧进行标记(Tag),这叫做VLAN Trunk(VLAN中继)技术。
● SwitchA与SwitchB之间的链路可以承载多个VLAN的帧,这样的链路叫做Trunk Link。Trunk Link可以存在于两交换机之间、交换机和路由器之间、交换机与服务器之间。如果一个服务器的网卡支持Trunk,可以将它设为trunk状态,这样服务器就可以是所有VLAN的一部分(该服务器既属于这个VLAN又属于另外一个VLAN)。这样做的好处是,不同VLAN的用户均可不通过路由器就访问到该服务器。Trunk link可以配置成传输所有的VLAN,也可以配置成只传输几个VLAN的信息。
● SwitchA在将HostA发出的属于VLAN 1的广播帧通过Trunk Link传送给SwitchB之前,需要给该帧打上一个标签(frame tag, user-defined ID, VLAN ID, color),表明该帧属于VLAN 1。只有这样,收到该帧的SwitchB才能知道如何处理该帧。
● 交换机在将打上了标签的帧通过Access link(连接终端设备的链路)转发给最终终端之前,必须去掉“标签”,因为终端用户对“交换机上是否划分了VLAN,划分了几个VLAN”是透明的。
Cisco交换机支持两种不同的中继协议----ISL(Inter-Switch Link)和IEEE 802.1Q。

1、 ISL
在IEEE标准化中继协议之前,Cisco创建了ISL。由于ISL是Cisco专有的,因此它只能用于两个Cisco交换机之间。ISL采用对帧进行再封装的方式给帧打上标记(Tag):以原始帧加一个26字节的ISL头和4字节的FCS,如下图所示。

ISL头中包含很多字段,其中最重要的是VLAN字段,它用来保存VLAN ID。通过在ISL头部用正确的VLAN ID将帧打上标记,发送帧的交换机能确保收到该帧的交换机知道这个封装的帧属于哪个VLAN。VLAN字段共有12位,因此共可有4096个VLAN。另外,ISL头中的SA和DA是发送交换机和接收交换机的MAC地址。
Cisco的ISL用ASIC执行,效率高。

2、 802.1q
Cisco创建ISL之后,IEEE也完成了对802.1q的标准化工作,802.1q定义了一种完全不同的中继方法。
802.1q没有对帧进行封装,而是在原始帧头部插入了4字节的“Tag”。由于原始帧头已经发生变化,802.1q必须重新计算FCS。如下图所示。

(1) 在帧中插入4字节的Tag,并重新计算FCS。帧的最大长度可达1522字节;
(2) The EtherType field identifying the 802.1q frame is 0x8100,VLAN-ID有12位,共可有4096个VLAN;
(3) 在802.1q trunk技术中,有一个VLAN是不被打“标签”(tag)的。这个VLAN叫做“本征VLAN”(native VLAN)。在交换机端口的trunk配置时,注意两端的native VLAN应该一致。缺省的native VLAN是VLAN 1。

原文地址:https://www.cnblogs.com/jjkv3/p/589731.html