Chinaunix首页 | 论坛 | 博客
  • 博客访问: 781042
  • 博文数量: 95
  • 博客积分: 6011
  • 博客等级: 准将
  • 技术积分: 1342
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-12 16:58
文章分类

全部博文(95)

文章存档

2009年(44)

2008年(51)

我的朋友

分类: 系统运维

2008-09-22 16:55:29

VLAN技术
什么是三层交换和VLAN?
要回答这个问题,我们还是先看看以太网的工作原理。以太网的工作原理是利用二进制位形成的一个个字节组合成一帧帧的数据(其实是一些电脉冲啦)在导线中进行传播。

首先,以太网网段上需要进行数据传送的节点对导线进行监听,这个过程称为CSMA/CD(Carrier Sense Multiple Access with Collision Detection带有冲突监测的载波侦听多址访问)的载波侦听。如果,这时有另外的节点正在传送数据,监听节点将不得不等待,直到传送节点的传送任务结 束。如果某时恰好有两个工作站同时准备传送数据,以太网网段将发出“冲突”信号。这时,节点上所有的工作站都将检测到冲突信号,因为这时导线上的电压超出 了标准电压。这时以太网网段上的任何节点都要等冲突结束后才能够传送数据。也就是说在CSMA/CD方式下,在一个时间段,只有一个节点能够在导线上传送 数据。而转发以太网数据帧的联网设备是集线器,它是一层设备,传输效率比较低。冲突的产生降低了以太网的带宽,而且这种情况又是不可避免的。所以,当导线 上的节点越来越多后,冲突的数量将会增加。显而易见的解决方法是限制以太网导线上的节点,需要对网络进行物理分段。可以说所有在这个总线上的机器在一个冲 突域内,因为他们是互相争夺总线带宽的,是共享机制,因此又叫做带宽域。

集线器(HUB)所有的端口都在一个冲突域,所有的机器都可以侦听到其它 机 器是否在发送数据,也可以接受到其它机器发出的数据,所以说HUB是共享带宽的,在满载的情况下是不能保证所有机器都能得到端口的标称带宽的,而且利用其 可以接收到其它机器发送的数据的特点,我们可以用sniffer等软件监控网络中的数据。

将网络进行物理分段的网络设备用到了网桥与交换机。网桥和交换机的基本作用是只发送去往其他物理网段的信息。所以,如果所有的信息都只发往本地的物理网段,那么网桥和交换机上就没有信息通过。 这样可以有效减少网络上的冲突。网桥和交换机是基于目标MAC(介质访问控制)地址做出转发决定的,它们是二层设备。

交 换机的好处在于其可以隔离冲突域,每个端口就是一个冲突域,因此在一个端口单独接计算机的时候,该计算机是不会与其它计算机产生冲突的,也就是带宽是独享 的,交换机能做到这一点关键在于其内部的总线带宽是足够大的,可以满足所有端口的全双工状态下的带宽需求,并且通过类似电话交换机的机制保护不同的数据包 能够到达目的地,可以把HUB和交换机比喻成单排街道与高速公路。HUB和交换机都工作于OSI的第二层。

我们已经知道了 以太网的缺点及物理网段中冲突的影响,现在,我们来看看另外一种导致网络降低运行速度的原因:广播。

广播存在于所有的网络上,如果不对它们进行适当的控制,它们便会充斥于整个网 络,产生大量的网络通信。广播不仅消耗了带宽,而且也降低了用户工作站的处理效率。IP广播是属于OSI的第三层,是基于TCP/IP协议的,其产生和原 理这里就不多讲了,大家可以看看TCP/IP协议方面的书籍。交换机是无法隔离广播的,就像HUB无法隔离冲突域一样,因为其是工作在OSI第二层的,无 法分析IP包,但我们可以使用路由器来隔离广播域,路由器的每个端口可以看成是一个广播域,一个端口的广播无法传到另外一个端口(特殊设置除外),因此在 规模较大,机器较多的情况下我们可以使用路由器来隔离广播。由于各种各样的原因,网络操作系统(NOS) 使用了广播,TCP/IP使用广播从IP地址中解析MAC地址,还使用广播通过RIP和IGRP协议进行宣告,所以,广播也是不可避免的。网桥和交换机将 对所有的广播信息进行转发,而路由器不会。所以,为了对广播进行控制,就必须使用路由器。路由器是基于第3层报头、目标IP寻址、目标IPX寻址或目标 Appletalk寻址做出转发决定。路由器是3层设备。

在这里,我们就容易理解三层交换技术了,通俗地讲,就是将路由与交换合二为一的技术。路由器在对第一个数据流进行路由后,将会产生一个MAC地址与IP地 址的映射表,当同样的数据流再次通过时,将根据此映射表直接从二层进行交换而不是再次路由,提供线速性能,从而消除了路由器进行路由选择而造成网络的延 迟,提高了数据包转发的效率。采用此技术的交换机我们常称为三层交换机。

那么,什么是VLAN呢?

VLAN(Virtual Local Area Network)就是虚拟局域网的意思。VLAN可以不考虑用户的物理位置,而根据功能、应用等因素将用户从逻辑上划分为一个个功能相对独立的工作组,每 个用户主机都连接在一个支持VLAN的交换机端口上并属于一个VLAN。同一个VLAN中的成员都共享广播,形成一个广播域,而不同VLAN之间广播信息 是相互隔离的。这样,将整个网络分割成多个不同的广播域(VLAN)。一般来说,如果一个VLAN里面的工作站发送一个广播,那么这个VLAN里面所有的 工作站都接收到这个广播,但是交换机不会将广播发送至其他VLAN上的任何一个端口(因为在交换机在二层处理,而VLAN帧也是在二层就被处理的)。如果 要将广播发送到其它的VLAN端口,就要用到三层交换机。

   通常,只有通过划分子网才可以隔离广播,但是VLAN的出现打破了这个定律,用二层的东西解决三层的问题很是奇怪,但是的确做到了。VLAN中文叫做虚 拟局域网,它的作用就是将物理上互连的网络在逻辑上划分为多个互不相干的网络,这些网络之间是无法通讯的,就好像互相之间没有连接一样,因此广播也就隔离 开了。
VLAN的实现原理非常简单,通过交换机的控制,某一VLAN成员发出的数据包交换机只发给同一VLAN的其它成员,而不会发给该VLAN成员以外的计算 机。 VLAN是为解决以太网的广播问题和安全性而提出的一种协议,它在以太网帧的基础上增加了VLAN头(所以虽是三层交换机,但处理的是数据帧),用 VLAN ID把用户划分为更小的工作组,限制不同工作组间的用户二层互访,每个工作组就是一个虚拟局域网。虚拟局域网的好处是可以限制广播范围,并能够形成虚拟工 作组,动态管理网络。
使用VLAN的目的不仅仅是隔离广播,还有安全和管理等方面的应用,例如将重要部门与其它部门通过VLAN隔离,即使同在一个网络也可以保证他们不能互相 通讯,确保重要部门的数据安全;也可以按照不同的部门、人员,位置划分VLAN,分别赋给不同的权限来进行管理。

  VLAN在交换机上的实现方法,可以大致划分为六类:

1. 基于端口的VLAN(静态)

这是最常应用的一种VLAN划分方法,应用也最为广泛、最有效,目前绝大多数VLAN协议的交换机都提供这种VLAN配置方法。这种划分VLAN的方法是 根据以太网交换机的交换端口来划分的,它是将VLAN交换机上的物理端口和VLAN交换机内部的PVC(永久虚电路)端口分成若干个组,每个组构成一个虚 拟网,相当于一个独立的VLAN交换机。
对于不同部门需要互访时,可通过路由器转发,并配合基于MAC地址的端口过滤。对某站点的访问路径上最靠近该站点的交换机、路由交换机或路由器的相应端口上,设定可通过的MAC地址集。这样就可以防止非法入侵者从内部盗用IP地址从其他可接入点入侵的可能。
从这种划分方法本身我们可以看出,这种划分的方法的优点是定义VLAN成员时非常简单,只要将所有的端口都定义为相应的VLAN组即可。适合于任何大小的网络。它的缺点是如果某用户离开了原来的端口,到了一个新的交换机的某个端口,必须重新定义。


   2. 基于MAC地址的VLAN (动态)

    这种划分VLAN的方法是根据每个主机的MAC地址来划分,即对每个MAC地址的主机都配置他属于哪个组,它实现的机制就是每一块网卡都对应唯一的MAC地址,VLAN交换机跟踪属于VLAN MAC的地址。这种方式的VLAN允许网络用户从一个物理位置移动到另一个物理位置时,自动保留其所属VLAN的成员身份。
    由这种划分的机制可以看出,这种VLAN的划分方法的最大优点就是当用户物理位置移动时,即从一个交换机换到其他的交换机时,VLAN不用重新配置,因为 它是基于用户,而不是基于交换机的端口。这种方法的缺点是初始化时,所有的用户都必须进行配置,如果有几百个甚至上千个用户的话,配置是非常累的,所以这 种划分方法通常适用于小型局域网。而且这种划分的方法也导致了交换机执行效率的降低,因为在每一个交换机的端口都可能存在很多个VLAN组的成员,保存了 许多用户的MAC地址,查询起来相当不容易。另外,对于使用笔记本的用户来说,他们的网卡可能经常更换,这样VLAN就必须经常配置。


    3. 基于网络层协议的VLAN 

    VLAN按网络层协议来划分,可分为IP、IPX、DECnet、AppelTalk、Banyan等VLAN网络。这种按网络层协议来组成的VLAN, 可使广播域跨越多个VLAN交换机。这对于希望针对具体应用和服务来组织用户的网络管理员来说是非常具有吸引力的。而且,用户可以在网络内部自由移动,但 其VLAN成员身份仍然保留不变。
    这种方法的优点是用户的物理位置改变了,不需要重新配置所属的VLAN,而且可以根据协议类型来划分VLAN,这对网络管理者来说很重要,还有,这种方法 不需要附加的帧标签来识别VLAN,这样可以减少网络的通信量。这种方法的缺点是效率低,因为检查每一个数据包的网络层地址是需要消耗处理时间的(相对于 前面两种方法),一般的交换机芯片都可以自动检查网络上数据包的以太网帧头,但要让芯片能检查IP帧头,需要更高的技术,同时也更费时。当然,这与各个厂 商的实现方法有关。
     4. 根据IP组播的VLAN 

    IP 组播实际上也是一种VLAN的定义,即认为一个IP组播组就是一个VLAN。这种划分的方法将VLAN扩大到了广域网,因此这种方法具有更大的灵活性,而 且也很容易通过路由器进行扩展,主要适合于不在同一地理范围的局域网用户组成一个VLAN,不适合局域网,主要是效率不高。 

 

    5. 按策略划分的VLAN

    基于策略组成的VLAN能实现多种分配方法,包括VLAN交换机端口、MAC地址、IP地址、网络层协议等。网络管理人员可根据自己的管理模式和本单位的需求来决定选择哪种类型的VLAN 。


    6. 按用户定义、非用户授权划分的VLAN

    基于用户定义、非用户授权来划分VLAN,是指为了适应特别的VLAN网络,根据具体的网络用户的特别要求来定义和设计VLAN,而且可以让非VLAN群体用户访问VLAN,但是需要提供用户密码,在得到VLAN管理的认证后才可以加入一个VLAN。
    如果两台交换机都有同一VLAN的计算机,怎么办呢,我们可以通过VLAN Trunk来解决。

   如果交换机1 的VLAN1中的机器要访问交换机2的VLAN1中的机器,我们可以把两台交换机的级联端口设置为Trunk端口,这样,当交换机把数据包从级联口发出去 的时候,会在数据包中做一个标记(TAG),以使其它交换机识别该数据包属于哪一个VLAN,这样,其它交换机收到这样一个数据包后,只会将该数据包转发 到标记中指定的VLAN,从而完成了跨越交换机的VLAN内部数据传输。VLAN Trunk目前有两种标准,ISL和802.1q,前者是Cisco专有技术,后者则是IEEE的国际标准,除了Cisco两者都支持外,其它厂商都只支 持后者。

 





阅读(1500) | 评论(0) | 转发(0) |
0

上一篇: Mood Recently

下一篇:without you--经典之道

给主人留下些什么吧!~~