近来参加了不少医院网络方案的讨论和评标活动,在几乎所有医院的方案中都或多或少地采用了虚拟局域网(VLAN)技术,但笔者发现大多数方案中的VLAN设计都存在一个共同且致命的缺陷,那就是VLAN跨越网络的核心。
近来参加了不少医院网络方案的讨论和评标活动,在几乎所有医院的方案中都或多或少地采用了虚拟局域网(VLAN)技术,但笔者发现大多数方案中的VLAN设计都存在一个共同且致命的缺陷,那就是VLAN跨越网络的核心。本文就这个问题谈一谈自己的看法,供同行们参考。
VLAN相互受影响
根据VLAN的定义和技术规范,VLAN不是由独享的物理设备和物理链路搭建的物理子网或网段,VLAN与实实在在的物理子网的本质区别在于,VLAN之间要共享物理设备和物理链路,因此,VLAN间就会通过所共享的设备和链路相互影响。这种影响是如何产生的呢?VLAN是通过将一个物理拓扑中的两个或多个节点通过逻辑组合而形成的,要想实现这种逻辑的组合就必须使用支持VLAN的交换设备,但真正提供VLAN功能的是这些设备内部的软件。也就是说,VLAN所构造的子网(广播域)是软件实现的,而不是由网络拓扑所决定的。网络拓扑仅对由软件所建立的VLAN有所限制。
知道了VLAN的工作原理,就不难解释VLAN间的影响了,同一交换机上的不同VLAN要共享交换机、要争夺交换机的CPU和背板资源。VLAN对交换机和链路的共享可分为两种类型:一种是“广播共享”,即VLAN划定的广播域贯穿共享设备和链路(如图1所示),换句话说广播共享是二层的共享。另一种我们称之为“路由共享”,也可以说是三层共享,在这种类型的共享中,不同VLAN的数据包是以路由(三层交换)方式穿过交换机的(如图2中虚线所示),通过的包基本上不含有一般的广播包(DHCP和特殊协议的广播除外)。VLAN在“广播共享”网络资源时的相互影响要比“路由共享”时更大。
从图1可清楚地看出所共享的网络资源(交换机和链路)。在正常情况下,VLAN间的这种影响不被我们所注意,原因是共享的交换机有足够的交换能力,链路不是很拥挤,但在某一VLAN出现异常时(如感染病毒或出现环路)情况就不同了。这时被感染VLAN(如VLAN1)中的大量数据帧将挤占该VLAN所及的所有交换机的CPU资源、背板带宽,并长时间占用物理链路,其他VLAN(如VLAN2)中的设备尽管“看”不到出现异常VLAN中的数据帧,但其所依赖的网络资源已被用尽,因此,VLAN1所覆盖的网络区域就会出现异常。如果故障点发生在核心交换机
附近,那么整个网络就有可能瘫痪。这在各网络拓扑层交换机的性能相差不多的情况下尤为严重。 三层共享有作用 由VLAN的性质所决定,完全消除VLAN间的链路和设备的共享在理论上是不可能的。我们所做的努力只能尽量减少相互影响的范围、降低相互影响的程度。如何做到这一点呢?在实践中我们总结出如下原则:1)应尽量避免在同一交换机中配置多个VLAN;2)不同物理位置上的交换机上的端口尽量不要划归到同一个VLAN。前者较好理解,也容易实现,我们重点讨论后者,即如何做到VLAN不跨越核心交换机和拓扑结构的“层”。从图1可以看出,由于VLAN1(VLAN2也是这样)的范围跨越了整个网络,如果把所有VLAN的覆盖面都限定在核心交换机的同一侧,这些资源被共享的程度不就减轻了吗?按此想法我们可以将图1所示的网络改变为图2所示的结构。
由于在这种结构中不存在跨越核心交换机的虚网,因此各VLAN的广播包就不会穿过核心交换机,但这些广播包却均能到达核心交换机,同时核心交换机上还会有ACL允许的VLAN间的正常数据流(如图2中的虚线所示)通过。很显然,这时的核心交换机既阻挡了各VLAN的广播包,又转发了VLAN间的正常数据流,其被共享的形式由“广播式”变成了“路由式”,受VLAN影响的程度变小。
有人可能会说,把核心交换机从二层提到了三层,性能会下降。这种说法无疑是正确的,但这点性能的降低对于当今的三层交换机所能提供的性能来说已经算不得什么了。从图2还可以看出,尽管受单个VLAN影响的程度和范围均变小,但共享链路的长度和强度并没有本质的变化。
三层结构最有效 细心的读者可能还会发现,图2所示网络中的VLAN没有体现VLAN技术的原始目的——不同物理位置上的计算机能像在同一物理网中一样相互访问。这个问题正是本文涉及的核心问题,也是针对规划、部署VLAN提出的新观点:在网络中,特别是较大型网络,不要企图利用VLAN去实现不同物理位置上计算机的互联互通,互通性要由路由策略去实现。这在以往会有些问题,但网络技术发展到今天,交换机与路由器间的差别变得越来越小,原来用二层实现的方法很多都能够用三层技术所代替。用三层技术代替二层的功能有很多优点,主要表现在:结构更加清晰、控制更加丰富、扩展更加灵活、网络更加稳定、实现更加容易。
继续分析图2中所存在的问题不难看出,尽管核心交换机被共享的形式改变了,但仍存在受到各VLAN出现异常情况的影响。要想避免核心交换机受到各个VLAN的影响、减小影响范围、避免全网瘫痪的发生,很容易想到在核心交换机和划有VLAN的交换机之间加上一层,以隔离核心交换机和各个VLAN。这时就形成了目前较为流行的三层拓扑结构的网络,如图3所示。
在三层网络结构中,汇聚层与核心层之间的区域不再有VLAN,汇聚层交换机的VLAN也仅限于部分端口,这时汇聚层交换机成为被“路由共享”的交换机,而且这种“路由共享”比图2的情况更弱。
如果使汇聚层交换机的性能远高于接入层的交换机,那么由VLAN的广播(多由病毒引起)所引起的整网瘫痪问题就基本解决了。
任何方案都具有利的一面和不利的一面,三层拓扑结构的网络也会带来一些问题:1)利用一般的手段较难实现对各个VLAN进行集中式的远程管理,对于这个问题的解决方案可充分利用网管软件。2)由于VLAN数量的增多、路由协议等技术的引入,此时的网络会比二层平面交换网络要复杂,对网络技术人员的要求更高,管理维护成本会有所增加。
这两点是大型网络管理本身的要求,大型网络的管理不可能不使用网络管理工具,技术人员的缺乏更是各个企业都面临的问题,对此有的专家提出了“IT物业”的理念,也许这就是将来解决这个问题的最终方案。