什么是(虚拟局域网)VLAN?
VLAN是一种用逻辑的定义方法,把两个或更多的连在交换网络上的终端规划在一起。
这种逻辑定义方法可以延伸到多个交换机。被规划在一起的终端,可以通过几种网络设置来规划。好像任何一种网络技术一样,了解在您的网络上存在的VLAN的特性,是有效地管理网络一个非常重要的一节。这可令您更精确的设定VLAN并在事故发生时减少故障诊断的时间。
为什么要用VLAN呢?
采用VLAN的主要原因有几个:如控制广播域的范围,网络安全,第三层地址的管理,和网络资源的集中管理。
控制广播域的范围
当一个广播域内的设备增加时,在广播域内设备的广播频率便会相对增加。广播率的提高,对设备的效率会有很大的影响,因为每一个设备都必须中断其CPU正在处理的业务,来处理收到的广播包,以决定是否需要对包内的数据作进一步处理。这种中断降低了CPU处理正常业务的效率,增长了完成这些业务的时间。
VLAN一个非常重要的好处是在一个VLAN内的广播包不会跑到别的VLAN上去。通过限制一个VLAN 上的设备数目,在一个VLAN 上的广播率便可受到控制。一个正常的广播率应该平均每秒不超过30 个广播包。虽然还没有正式的文档宣称,但通过现场性能监测,建议广播不应该超出30 个/秒。
网络安全
有很多时候,网管人员需要限制对本地网络中一个或多个特别设备的接入。如果所有的设备都在同一个广播域内,便很难执行这种限制。通过建立多个广播域,可以通过地址过滤和建立连接认可地址表来实现该限制。
数据包要跨越一个VLAN必须通过一个3层路由设备。这种路由设备让网管人员可以定义设备间的接入。这种接入控制功能的使用,可以控制和监视对敏感资源设备的接入。
第3层地址管理
一个很常见的设计,是把同类型的设备,规划在同一个IP子网。例如把打印机安排在同一个IP子网上,属于会计部的工作站和服务器却在另一个子网。在逻辑上这样好像很合理,但在一个大型企业网络上,这种构想没有VLAN是无法实现的。
网络资源的集中管理
假定我们把所有的打印机都规划在一个子网上,而每一个打印机都必须在同一个广播域里。这样等于需要在每一个楼层上,分别安装交换机。这些交换机都需要光缆和铜缆的连接,而这些打印机子网都需要连接到自己的专用路由器端口上。
利用VLAN,可以让打印机和网络中的其他设备连接到同一个交换机,分享同一条互联的电缆或光纤链路、同一个路由器端口。
VLAN的挑战
采用VLAN的一个最大挑战就是文档备案。当您把一个设备连接到交换机时,没有一个好办法知道设备所连的交换机端口究竟是被设定到哪一个VLAN,或是否被设定成VLAN骨干(Trunk)端口。在大多数的情况下,确定端口的VLAN设置只可以通过Telnet 登录到交换机的控机台,这种过程需要用户口令并对交换机的设置管理指令有比较深刻的了解。
当您对网络作扩容、移动或改变时,以上的挑战便更加明显。例如在一个企业里,安装交换机时一般的策略是把头12个端口设成VLAN23,但是实际上,网管人员可能是因为后来端口不足或是因为企业的政策推行不完善而把设定更改。无论如何,当一个设备连接到交换器的头12个端口时,无法保证他会在VLAN23这个VLAN上。
通过VLAN透视来解决
VLAN透视选件是一个附加在OptiView集成式网络分析仪上的选件。这个选件可以帮助网管人员应对对交换机的VLAN设定作文档备案的挑战。
VLAN透视选件通过SNMP来询问交换机的每一个端口的VLAN 设置。这些讯息可以直接显示在OptiView 集成式网络分析仪的显示屏上或通过遥控界面来观看。交换机支持的每一个VLAN 号都会列在显示屏的左边,在右边显示出对应的每一个VLAN 号的交换机端口。
除了显示VLAN和端口的相关性,VLAN透视选件还会显示每个端口的VLAN配置。这对确定哪些端口被配置成骨干端口、哪些端口被配置成接入端口是非常有用的。对骨干端口,VLAN 协议标记那些显示的帧。这对解决两台交换机通过VLAN 骨干连接产生的连通问题是非常有帮助的。
显示VLAN配置信息的能力,不仅仅对分析仪所在广播域的VLAN有效,只要是综合分析仪通过IP可达的任何交换机都有效。这表明VLAN 透视可以显示综合分析仪经过很多路由器跳数以后达到的交换机VLAN配置信息。除了可以显示VLAN 配置,VLAN 透视可以生成基于每一个交换机的HTML(浏览器格式)报告。该报告描叙交换机的现有VALN 和每个VLAN 的包含的交换机端口。除了显示信息,还可以生成远端IP 子网的交换机报告。
最初的配置
1年后的配置
VLAN的其中一个优点是交换机端口很容易便可以从一个VLAN改变到另一个VLAN。由于改变太容易,大部分的改变都没有立刻记录下来。这也是对维护VLAN网络、做文档备案的最大挑战。很多企业都需要一个简单的方法来找出当前自己VLAN 的设定情况。
VLAN最佳实践
拥有一个健康的VLAN不能依靠侥幸。需要在脑海中有最优化性能的目标,仔细地设计和维护。如果在VLAN设计的时候就不注意,结果就是网络会非常复杂,在故障查找和维护时都会非常困难。
确定使用VLAN的原因
使用VLAN的4个可能原因在文档的开始已经大概做了描述:控制广播域的范围、网络安全、第3层地址管理、网络资源集中管理。当设计一个VLAN 的时候,这些原因都需要仔细地研究。举例来说,如果在您的环境中,所有的用户都需要接入所有服务器和网络设备,安全性就不再是应用VLAN 的原因。
然而,如果您有语音在IP上传送(VoIP)的应用,语音在一个VLAN上传送,数据在另一个VLAN传送,就是应用VLAN 的一个很好的原因。通过分离这两种类型的业务,对语音流量提供服务质量保证,减少了抖动和丢包。
使用VLAN减少路由跳数
为了把帧从一个VLAN传递到另一个,必须用一个3层设备进行路由。这个设备可以是一个传统的路由器,或者是一个3层交换机。从发送者到接收者,路由器每增加一跳都会增加帧的延迟时间,这有可能造成一个性能瓶颈。
设计VLAN网络的目的应该是把某个设备所需要的所有资源放到与该设备相同的VLAN。使用VLAN允许在保证物理层上的硬件集中的同时、保证服务器逻辑上更靠近用户。这允许客户设备直接通过交换网络接入资源,而不需要通过路由器。在这种方式下,一个单独的VLAN可以出现在一个校园网的多个交换机上,计算机室的一个服务器可以和相隔几个建筑物远的客户服务器是同一个VLAN。一个通常的设计是把所有服务器放在同一个VLAN。不幸的是,这要求所有的客户至少要经过一个路由器才能接入这些服务器。在把IP 地址管理变的更容易的同时,引入了额外的延迟和潜在的性能瓶颈。
保持最小的VLAN数目
有一个创建过多的不需要的VLAN的倾向。当交换机本身可以支持上千个VLAN的时候,每增加一个VLAN就会给路由器和网络其他设备带来额外的开销。
这方面的一个例子是有一个42层大楼的网络。除了用于管理的VLAN和服务器中心的VLAN,每层都有一个自己的VLAN。该网络运行IP和IPX 协议。总共有超过2000 台IPX 设备在整个本地网络,包括打印机、存储器、时钟服务器。
每60秒,路由器会对每个VLAN发出服务广告协议(SAP)包。每个包包含7种服务。这导致每60 秒,每个广播域内发出286 个SAP 包。由于总共有46 个VLAN,路由器每分钟不得不发出超过13,000 个SAP 包。人们发现当路由器每分钟发出的帧超过2000 的时候,已经会给CPU 带来问题。当交换机可以支持46 个VLAN的时候,我们发现路由器支持不了这么多VLAN。
VLAN类型
把一个设备分配到一个VLAN有3钟通常的方法:
1)基于端口的VLAN
2)基于协议的VLAN
3)基于MAC的VLAN
基于端口的VLAN
基于端口的VLAN,一个交换机端口可以手工地配置到某个指定的VLAN。任何连接到这个端口的设备就和该VLAN中的所有其他的交换端口处于同一个广播域。
基于端口的VLAN的挑战是每个VLAN中有哪些端口的文档备案。VLAN的成员信息并没有显示在交换机端口的外面。确定VLAN 成员不能够仅仅通过查看交换机物理端口。只有通过查看配置信息采可以确定成员。
基于协议的VLAN
基于协议的VLAN,是通过区分承载数据所用的3层协议来确定VLAN的成员。然而这需要工作在一个多类型协议的环境下,在一个主要以IP为基础网络,这种方法不是特别实用。
基于MAC的VLAN
基于端口的VLAN的一个问题是,当一个设备从交换机某个端口移走后,该交换机端口又接入了一个新的设备,新设备会进入原来的那个VLAN。在前面打印机VLAN的例子里,如果一台打印机从该端口移走了,该端口又接入了一台财务服务器。财务服务器就和打印机服务器进入同一个VLAN了。这将会限制对财务服务器的接入,不得不重新分配网络资源。
基于MAC的VLAN可以解决上面的这个问题,VLAN的成员是基于设备的MAC 地址,而不是交换机的物理端口。如果一个设备从交换机的一个端口移到另外一个,该设备属于哪一个VLAN,还是由设备来决定的。不幸的是,用MAC 地址来确定VLAN 耗费时间,而且现在使用的很少。
VLAN标签
VLAN标签用来指示VLAN的成员,它封装在能够穿越局域网的帧里。这些标签在数据包进入VLAN的某一个交换机端口的时候被加上,在从VLAN 的另一个端口出去的时候被去除。根据VLAN 的端口类型会决定是给帧加入还是去除标签。VLAN 中的两类接口类型是指接入端口和骨干端口。
接入端口
接入端口用在帧接入或者离开VLAN时。当接入端口收到一个帧的时候,帧并没有包含一个VLAN标签。一旦帧进入接入端口,会给帧加入VLAN标签。
当帧在交换机里面的时候,附着进入接入端口时被附上的VLAN标签。当帧通过目的接入端口离开交换机的时候,VLAN标签就被去除了。传输设备和接收设备并不知道收到的帧曾经被加过VLAN标签。
骨干端口
网络中包含多于一个交换机的时候,必须把VLAN标签的帧从一个交换机传到另一个交换机。骨干端口和接入端口的区别是骨干端口在传出帧之前,不会去除VLAN的标签。保留了VLAN标签,接收交换机就能知道传输帧属于哪一个VLAN。帧就可以传送到接收交换机的合适端口。
VLAN标签技术
每一个VLAN标记帧包含指明自身所属VLAN的字段。有两种种主要的VLAN标签格式,思科公司的Inter-Swith Link(ISL)格式和标准的802.1Q 格式。
思科ISL
Inter-SwithLink(ISL)格式是思科私有VLAN标签格式。在使用的时候,VLAN标签在每个帧的头部增加26 字节信息,在帧尾部附加4 字节CRC。标签的格式如下:
基于802.1Q标准的标签
ISL是思科公司的私有格式,而802.1Q是IEEE的标准格式。802.1Q 标准允许VLAN 标记帧可以在不同厂家的交换机之间传递。802.1Q 标签比ISL 标签包含更少的域,是插入帧而不是放入帧头。
维护VLAN
一个网络使用VLAN后一个最大的挑战就是对穿过多个交换机的VLAN的配置维护。没有一个集中的方法配置和维护VLAN信息,网络管理员必须对每一个交换机进行独立的VLAN 配置。思科公司开发了一种VLANTrunk 协议来帮助克服这些缺点。
VTP——VLANTrunk协议
VLANTruank协议允许在一个单独的设备(VTP服务器)上配置VLAN,并把配置信息通过交换网络传递出去。这减少了管理VLAN 需要的总时间。
在一个VTP环境里,一台交换机可以是以下3种不同的角色之一。可以是一台VTP服务器、一台VTP客户机、或者工作在透明模式。角色决定了交换机在VLAN 网络中被如何配置。
VLANTrunk协议有支持多个VTP域的能力。每个VTP 域的客户交换机从该域的VTP 服务器接收自身的配置信息。在同一个本地网络可以有多个VTP 域。
VTP服务器
VTP服务器是每个VTP域的根本。服务器是VTP域内唯一的可以增加、删除、重命名VLAN 的交换机。当一台未经配置的思科交换机第一次上电开机的时候,它的默认模式是服务器模式。我们必须把它该成客户机或者透明模式。
VTP服务器周期性地广播VTP域名、VLAN配置,提供现行的配置修改号。这个修改号是VTP 域的一部分,它确保VTP 域内的所有交换机有现行的、正确的VLAN 配置信息。
当VLAN在VTP服务器上被创建的时候,和其他VLAN配置信息一起存储在服务器的NVRAM(存储单元)。当交换机重启的时候,配置信息还是被保留。
VTP客户模式
VTP客户交换机从VTP服务器接收所有客户交换机的配置信息。客户交换机不能删除、添加、重命名VLAN。当客户交换机加入一个新的VLAN,VLAN必须被添加到VTP 服务器上面去。这样新的VLAN 才能传递到所有的客户交换机。当新的VLAN 增加后,客户交换机上的端口会关联到新的VLAN。
类似VTP服务器,客户交换机在NVRAM(存储单元)存储VLAN配置。然而,不像VTP服务器,当客户交换机重启的时候,所有的VLAN 配置信息丢失了。交换机启动完成后,需要发送一条VTP 请求消息给VTP服务器,来获取现行的VLAN 配置。
VTP透明模式
VTP透明交换机和VTP客户交换机不同,VLAN可以在这些交换机上手工配置。如果配置为VTP 域的一部分,他们可以从VTP 服务器接收VLAN 配置信息。然而,他们不会通知VTP 域本地配置的VLAN。配置成透明模式的交换机还是会收到VTP 配置帧并传递这些帧到所有的骨干端口。这允许VTP 客户交换机可以连接到一个VTP 透明交换机。客户交换机透过透明交换机还是可以和VTP 服务器交换VLAN 配置信息。
VTP数据帧
用来配置和维持VTP域的数据帧可以封装成802.1Q或者ISL帧格式。VTP使用一个保留的广播地址做为所有帧的目的地。这个广播地址0x01-00-00-0C-CC-CC-CC伴随着一个子网接入协议(SNAP)的逻辑链路控制(LLC)码,和一个在SNAP头的2003类型码。每个数据帧包含一个VTP头和VTP消息类型。(注意在下面的描述中,只是显示了VTP消息格式,而不是整个以太网帧的格式。)
有3种类型的VTP消息:
1)summary(摘要)
2)Subset(子集)
3)Request(请求)
Summary(摘要)帧
摘要帧可以是VTP服务器或者VTP客户机发出的,每5分钟一次或者当VTP域发生改变后立即发出。摘要广播包括VTP域的基本信息和配置的修改情况。摘要帧可能跟随着许多的详细的描述帧——子集(Subset)帧。
摘要帧格式如下所示。
子集帧(Subset)
子集帧用来提供VTP域内每个VLAN的详细信息。子集帧可以是对VTP请求帧的响应,或者当配置改变时发出(和摘要帧一起发出)。
请求帧(Request)
当以下的情况之一发生时,VTP客户机发送请求帧(Request)到VTP服务器:
VTP域名字改变
VTP客户交换机收到一个配置修改号码更高的摘要广播消息
丢失了一条子集帧
交换机重启
VTP服务器将用一条摘要帧和能够满足请求的若干条子集帧的进行响应。
结论
由于VLAN技术的使用非常普遍,设计和维护网络时必须考虑VLAN的存在。我们丰富的经验和工具将帮助您搭建和保持VLAN网络的健康。
网络工程师和经理首先需要理解VLAN在网络中是如何工作的,学会好的文档习惯来有效地优化VLAN性能和解决故障。采用类似OptiView集成网络分析仪Vlan透视性选件这样专门为收集、显示VLAN 详细信息而设计的先进工具,才能够大大地减少设备开销和故障查找解决时间。VLAN 透视选件通过提供可以支持下一步行动的准确信息,助网络经理一臂之力,把那些原来需要花费大量的时间和资源才能解决的难题,快速定位出来并排除。