当前位置:文档之家› VLAN学习理解

VLAN学习理解

VLAN学习理解一、VLAN概述虚拟局域网(Virtual Local Area Network,VLAN):一种通过将局域网内的设备逻辑地而不是物理地划分成多个网段,从而实现虚拟工作组的技术。

IEEE于1999年颁布了用以标准化VLAN实现方案的802.1Q协议标准草案。

VLAN技术允许网络管理者将一个物理的LAN逻辑地划分成不同的广播域(或称虚拟LAN,即VLAN),每一个VLAN都包含一组有着相同需求的计算机工作站,与物理上形成的LAN有着相同的属性。

但由于它是逻辑地而不是物理地划分,所以同一个VLAN内的各个工作站无须被放置在同一个物理空间里,即这些工作站不一定属于同一个物理LAN网段。

一个VLAN内部的广播和单播流量都不会转发到其他VLAN中,从而有助于控制流量、减少设备投资、简化网络管理、提高网络的安全性。

VLAN是为解决以太网的广播问题和安全性而提出的一种协议,它在以太网帧的基础上增加了VLAN头,用VLAN ID把用户划分为更小的工作组,限制不同工作组间的用户二层互访,每个工作组就是一个虚拟局域网。

VLAN在交换机上的实现方法,可以大致划分为4类:1)基于端口划分的VLAN方法:IEEE 802.1Q规定了依据以太网交换机的端口来划分VLAN的国际标准。

优点:简单。

缺点:用户离开了原来的端口,到了一个新的交换机的某个端口,必须重新定义。

2)基于MAC地址划分VLAN方法:根据每个主机的MAC地址来划分,即对每个MAC地址的主机都配置它属于哪个组。

优点:当用户物理位置移动时,即从一个交换机换到其他的交换机时,VLAN不用重新配置,因此也可以认为这种根据MAC地址的划分方法是基于用户的VLAN。

缺点:初始化时,所有的用户都必须进行配置,工作量大;导致了交换机执行效率的降低,因为在每一个交换机的端口都可能存在很多个VLAN组的成员,这样就无法限制广播包了;笔记本电脑用户可能经常更换网卡,这样VLAN就必须不停的配置。

3)基于网络层划分VLAN方法:根据每个主机的网络层地址或协议类型来划分,虽然这种划分方法是根据网络地址,比如IP地址,但它不是路由,与网络层的路由无关。

它虽然查看每个数据包的IP地址,但由于不是路由,所以,没有RIP,OSPF等路由协议,而是根据生成树算法进行桥交换,优点:用户的物理位置改变后不需要重新配置VLAN;可以根据协议类型来划分VLAN;不需要附加的帧标签来识别VLAN,可以减少网络流量。

缺点:效率低,一般的交换机芯片都可以自动检查网络上数据包的以太网帧头,但要让芯片能检查IP帧头,需要更高的技术,同时也更费时。

4)根据IP组播划分VLAN方法:认为一个组播组就是一个VLAN,这种划分的方法将VLAN扩大到了广域网。

优点:具有更大的灵活性,而且也便于通过路由器进行扩展。

缺点:不适合局域网,主要是效率不高。

二、基于802.1Q VLAN的实现1. 802.1Q VLAN架构IEEE802.1Q “Virtual Bridged Local Area Networks”中定义了VLAN和优先级,并描述了GARP VLAN注册协议。

802.1Q中定义的VLAN架构基于三层模型(如图1所示),分别是:1)Configuration配置2)Distribution or configuration information 配置信息的发行3)Relay中继这几部分分别实现如下功能:1)配置:包括VLAN配置的定义、VLAN配置参数的分配2)配置信息的发行:这是一个信息发布的过程,使得交换设备知道将收到的帧发向哪个VLAN。

3)中继:a) 将收到的帧在一个(且只能是一个)VLAN内分类,这是由MAC桥入口规则决定。

b) 决定向何处转发接收到的帧,这是由MAC桥的转发规则决定。

c) 将需要传送的帧通过合适的出口、以合适的格式(VLAN标记或未标记)映射出去,这是由MAC桥的出口规则决定的。

d) 添加、修改、删除标记头的过程。

图1 802.1Q 中定义的VLAN架构2、几个概念1)VLAN知晓:这是桥或终端设备的一个属性,即它们能够识别并支持VLAN-标记帧。

任何实现VLAN功能和协议的终端系统或交换设备,都被认为是VLAN知晓(VLAN-aware)的。

2)VLAN未知:VLAN未知(VLAN-unaware)的设备不能够理解VLAN的成员关系和VLAN帧的格式。

3) 访问链路(Access Links ):用来将一个或多个VLAN 未知的设备连接到VLAN 网桥的一个端口上。

在访问链路上传输的帧不带有VLAN 标识,也就是说,在访问链路上没有VLAN 标记帧。

通常访问链路被视为VLAN 网络的边缘部分。

访问链路还可以连接通过VLAN 未知设备连接起来的多个局域网段。

4) 主干链路(Trunk Links ):主干链路是指连接VLAN 知晓设备的局域网段。

主干链路上连接的所有设备必须是VLAN 知晓的,也就是说它们能够理解VLAN 成员关系和VLAN 帧的格式。

主干链路上所有的帧都是VLAN 标记帧(帧中带有标记头,且标记头的VID 字段非空)。

图2 访问链路和主干链路 5) 混合链路(Hybrid Links ):将VLAN 未知的终端设备添加到主干链路中,得到的链路成为混合链路。

在混合链路可以传输VLAN 标记帧和其他类型的帧(不带标记的帧或优先级标记帧)。

需要注意的是:对于给定的VLAN ,混合链路上所有被交换机传输的帧必须具有同样的标记方式,也就是说,它们要么是untagged 帧,要么是具有同样的VID 的标记帧。

图3 混合链路(Hybrid Links )VLAN BVLAN A(VLAN 未知终端设备)VLAN BVLAN AVLAN BVLAN A三、以太网标记帧的格式图4是在以太网帧中添加802.1Q VLAN标记(tag)的示意图。

在源mac地址的后面,插入4个字节(octet)的标记。

标记一共有四个字节长,包括两个字节的TPID和两个字节的TCI,而TCI中包括3个比特(bit)的用户优先级信息、1个比特的CFI信息,以及12比特的VLAN标识符(VID)。

3个比特的优先级信息为802.1p准备的,而vid是vlan的标识符(identifier) ,是为802.1q准备的,因为vid长度有12个比特,所以,可以设置4094个vlan。

6Byte 6Byte 2Byte 2Byte 2Byte 4Byte3bit 1bit 12bit图4 以太网标记帧的格式标记头的格式标记头包括如下部分:1)标记协议标识符(Tag Protocol Identifier,TPID);2)标记控制信息(Tag Control Information,TCI);3)在802.3以太网和非源站选路FDDI帧(也就是将FDDI帧中的RII位重置)中,还可能包括E-RIF,这要视标记控制信息中的CFI字段而定;Figure 3 Tag header formats图5 三种可能的标记头格式根据编码方式的不同,共有三种类型的标记头格式,如上图5所示。

当标记帧使用802.3以太网MAC方式传送时,我们使用第一种格式。

1)TPIDTPID:Tag Protocol Identifier以太网类型也就是标记协议标识符,其值为0x8100,则表示带标记的以太网帧。

2)TCITCI:Tag Control Information标记控制信息字段,包括:1* 用户优先级(user_priority):3个字节,因此可能的取值范围为0-7。

用户优先级在ISO/IEC 15802_3中定义;2* 规范格式指示符(Canonical Format Indicator,CFI):用于确定该帧是否为规范格式。

我们仅考虑以太网:如果将CFI字段重置,则说明标记头中没有E-RIF字段;如果设定了CFI字段,则说明标记头中有E-RIF字段,这样RIF中的NCFI位决定了MAC地址信息是规范(C)还是不规范(N)的。

3* VID:VLAN标识符,用来标识封装帧所属的VLAN。

下表中的VID值是保留的:4* 嵌入RIF的格式RIF:Source-Routing Information Field,源站路由信息字段E-RIF:Embedded RIF,嵌入RIF嵌入RIF是对ISO/IEC15802-3中定义的RIF的修改。

对于以太网帧,如果有E-RIF 字段,它出现在长度/类型字段后面,它包括两个部分:两个字节的路由控制字段(Route Control Field),以及0到28个字节路由描述信息,路由描述信息由路由控制字段定义。

路由描述信息的结构和意义在ISO/IEC15802-3中定义。

图6 两个字节的路由控制(RC)字段其中:RT -Routing Type选路类型LTH -长度D -定向(Direction)位LF -最大帧(Largest Frame)NCFI -规范/非规范格式指示位四、交换机对VLAN帧的处理1、概念的区分:标记帧:如果帧中添加了标记则称为标记帧。

标记头紧跟在源MAC地址字段后面,如果帧包含了路由信息(Routing Information)字段,则标记头跟在路由信息后面。

标记帧有两种:VLAN-标记帧和优先级标记帧。

VLAN标记帧:标记头中VID字段不为空。

优先级标记帧:标记头中含有优先级信息,但没有VLAN标识信息(VID字段为空)。

2、数据包处理流程所有流经交换机的数据包都要经过以下模块进行处理:D iscard图7 数据包的处理流程Ingress:接收数据包,决定它将被送往哪个端口然后将数据包送往MMU。

交换机绝大部分的特性是在Ingress实现的。

MMU:从Ingress接收数据包,进行缓存并对数据包进行调度,然后将它们送往Egress。

Egress:负责向MMU请求数据包,并将其发往每个端口。

3、VLAN和t ag的处理VLAN和tag的处理:交换机从ptable和vtable中获取有关VLAN的信息(vtable 用于提供带tag的数据包的信息,ptable用于提供不带tag的数据包的信息)。

交换机对数据包tag的操作是基于802.1Q的。

对于进入交换机不带tag的数据包,如果交换机允许端口进行转发,则会增加相应的tag,该tag值取自入端口的ptable中所指出的VID,即该入端口以untagged方式所属VLAN的ID。

而对于带tag的数据包,数据包自带的tag值被采用。

这样当交换机完成对数据包的VLAN和tag,所有的数据包都带有了tag。

交换机对于进入端口的帧一般采取如下处理流程:图8 以太网帧进入交换机端口的行为根据交换设备的特性,以及交换机使用的芯片的不同,上述过程可能会有所不同。

相关主题