专题5-交换机工作原理和虚拟局域网<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

本专题内容:

    通过学习本专题掌握交换机的工作原理、虚拟局域网的工作原理及其配置。

 

一、交换机原理

1 、概述

九十年代初,随着计算机性能的提高及通信量的聚增,传统局域网已经愈来愈超出了自身的负荷,交换式以太网技术应运而生,大大提高了局域网的性能。与现在基于网桥和路由器的共享媒体的局域网拓扑结构相比,网络交换机能显著的增加带宽。交换技术的加入,就可以建立地理位置相对分散的网络,使局域网交换机的每个端口可平行、安全、同时的互相传输信息,而且使局域网可以高度扩充。

2 、三种交换技术

1 )端×××换

端×××换技术最早出现在插槽式的集线器中,这类集线器的背板通常划分有多条以太网段(每条网段为一个广播域),不用网桥或路由连接,网络之间是互不相通的。以大主模块插入后通常被分配到某个背板的网段上,端×××换用于将以太模块的端口在背板的多个网段之间进行分配、平衡。

2 )帧交换

帧交换是目前应用最广的局域网交换技术,它通过对传统传输媒介进行微分段,提供并行传送的机制,以减小冲突域,获得高的带宽。一般来讲每个公司的产品的实现技术均会有差异,但对网络帧的处理方式一般有以下几种:

· 直通交换:提供线速处理能力,交换机只读出网络帧的前14个字节,便将网络帧传送到相应的端口上。

· 存储转发:通过对网络帧的读取进行验错和控制。

3 )信元交换

ATM 技术代表了网络和通讯技术发展的未来方向,也是解决目前网络通信中众多难题的一剂良药ATM采用固定长度53个字节的信元交换。由于长度固定,因而便于用硬件实现。ATM采用专用的非差别连接,并行运行,可以通过一个交换机同时建立多个节点,但并不会影响每个节点之间的通信能力。ATM还容许在源节点和目标、节点建立多个虚拟链接,以保障足够的带宽和容错能力。ATM采用了统计时分电路进行复用,因而能大大提高通道的利用率。ATM的带宽可以达到25M155M622M甚至数Gb的传输能力。

3 、交换机的工作原理

以太网交换机的原理很简单,它检测从以太端口来的数据包的源和目的地的MAC(介质访问层)地址,然后与系统内部的动态查找表进行比较,若数据包的MAC层地址不在查找表中,则将该地址加入查找表中,并将数据包发送给相应的目的端口。

4 、交换式以太网技术的优点

交换式以太网不需要改变网络其它硬件,包括电缆和用户的网卡,仅需要用交换式交换机改变共享式HUB,节省用户网络升级的费用。

可在高速与低速网络间转换,实现不同网络的协同。目前大多数交换式以太网都具有100MBPS的端口,通过与之相对应的100MBPS的网卡接入到服务器上,暂时解决了10MBPS的瓶颈,成为网络局域网升级时首选的方案。

它同时提供多个通道,比传统的共享式集线器提供更多的带宽,传统的共享式10MBPS/100MPS以太网采用广播式通信方式,每次只能在一对用户间进行通信,如果发生碰撞还得重试,而交换式以太网允许不同用户间进行传送,比如,一个16端口的以太网交换机允许16个站点在8条链路间通信。

特别是在时间响应方面的优点,使的局域网交换机倍受青睐。它以比路由器低的成本却提供了比路由器宽的带宽、高的速度,除非有上广域网(WAN)的要求,否则,交换机有替代路由器的趋势。

 

二、虚拟局域网技术与应用

交换技术的发展,允许区域分散的组织在逻辑上成为一个新的工作组,而且同一工作组的成员能够改变其物理地址而不必重新配置节点,这就是用到所谓的虚拟局域网技术(VLAN)。用交换机建立虚拟网就是使原来的一个大广播区(交换机的所有端口)逻辑的分为若干个"子广播区",在子广播区里的广播封包只会在该广播区内传送,其它的广播区是收不到的。VLAN通过交换技术将通信量进行有效分离,从而更好地利用带宽,并可从逻辑的角度出发将实际的LAN基础设施分割成多个子网,它允许各个局域网运行不同的应用协议和拓扑结构

1 、虚拟局域网技术

交换式以太网使用透明桥接(Transparent Bridging)技术,该技术由IEEE 802.1协议给出明确的定义。所谓透明是针对主机而言的,主机不需要知道其他主机所在的位置,而交换机将负责把一个主机产生的数据帧传给另一个主机。

1 )虚拟局域网工作原理

有很多企业在发展的初期,人员较少 ,因此对网络的要求也不高,而且为了节约成本,很多企业网都采用了通过路由器实现分段的简单结构,如图1所示。在这样的网络下,每一个局域网上的广播数据包都可以被该段上的所有设备收到,而无论这些设备是否需要。

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

1 简单的网络分段

随着企业规模的不断扩大,特别是多媒体在企业局域网中的应用,使每个部门内部的数据传输量非常大。此外,由于公司发展中一些遗留下来的问题,使得一个部门的员工不能相对集中办公。更重要的是,公司的财务部门需要越来越高的安全性,不能和其他的部门混用一个以太网段,以防止数据窃听。这些新问题需要更灵活地配置局域网,因此就产生了虚拟局域网(Virtual LAN)技术。

VLAN 概念的引入,使交换机承担了网络的分段工作,而不再使用路由器来完成。VLAN的经典拓扑结构见图2VLAN具有控制广播、安全性高和灵活性及可扩展性等技术优势。


2 VLAN的网络分段

通过使用VLAN,能够把原来一个物理的局域网划分成很多个逻辑意义上的子网,而不必考虑具体的物理位置,每一个VLAN都可以对应于一个逻辑单位,如部门、车间和项目组等。由于在相同VLAN内的主机间传送的数据不会影响到其他VLAN上的主机,因此减少了数据交互的可能性,极大地增强了网络的安全性。

2 VLAN的设置命令

Cisco系列交换机中,如果配置VLAN,一般常用以下命令。

  • 创建一个VLAN。命令如下:

set vlan vlan-num [name name]

  • 把某个端口划分给一个VLAN。命令如下:

set vlan {vlan}{mod/port}

2 、链路聚合技术

1 )链路聚合工作原理

链路聚合(Trunk)是一种封装技术,它是一条点到点的链路,链路的两端可以都是交换机,也可以是交换机和路由器,还可以是主机和交换机或路由器。Trunk的主要功能就是仅通过一条链路就可以连接多个VLAN,请和图2 进行比较,很明显,在2个交换机之间节省了2条链路,如图3所示。

3

Trunk 封装可以有以下方式。

a ISLInter-Switch Link

ISL Cisco公司的专有封装方式,因此仅在Cisco的设备上支持。ISL会在原来的帧上再添加一个26字节的帧头和4个字节的帧尾,帧头中包含了VLAN的信息,帧尾中包含循环校验码CRC,以保证新帧的数据完整性。ISL主要用在以太网上。

b IEEE 802.1Q

这是一个有关Trunk封装方式的标准,很多厂商的设备都支持这个标准。和ISL不同,IEEE 802.1Q是在数据帧的中间位置加上4个字节的标识,前2个字节是标记协议标识(Tag Protocol IdentifierTPID),0x8100代表IEEE 802.1Q,后2个字节为标记控制信息(Tag Control InformationTCL),其中就包含了VLAN的信息。

c LAN 仿真

该封装方式主要用在ATM链路上,在此不做详细介绍。

d IEEE 802.10

Cisco 提供了在标准的IEEE 802.10 FDDI帧上传送VLAN的信息。该信息就放在IEEE 802.10帧的安全联合标识(Security Association IdentifierSAID)域中。

2 )设置Trunk方式

把某个端口设成Trunk方式。命令如下:
set trunk mod/port [on | off | desirable | auto | nonegotiate] [vlan_range] [isl | dot1q dot10 | lane | negotiate]

该命令可以分成以下4个部分:

  • mod/port:指定用户想要运行Trunk的那个端口;

  • Trunk的运行模式,分别有:on | off | desirable | auto | nonegotiate。要想在快速以太网和千兆以太网上自动识别出Trunk,则必须保证在同一个VTP域内。也可以使用OnNonegotiate模式来强迫一个端口上起Trunk,无论其是否在同一个VTP域内,见表1

  • 承载的VLAN范围。缺省下是11005,可以修改,但必须有1

  • Trunk协议。使用Trunk时,相邻端口上的协议要一致。

3 VTP协议

VTP 是一种通过Trunk来进行VLAN管理的协议,属于Client/Server方式。首先,VTP包含域的概念,只有处在同一个域内的交换机才构成一个管理体系。其次,对于整个域内VLAN的添加和删除都是在服务器端完成的。修改的结果通过Trunk发给客户端,客户端的VLAN数据库也会发生相应的变化,也就是说,客户端内的VLAN数据库总是与服务器端的VLAN数据库保持一致(同步)。出于安全的考虑,整个VTP域还添加了口令认证的功能,只有认证通过,客户端交换机内的VLAN数据库才与服务器端进行同步。所需要用到的命令如下:

set vtp [domain domain_name] [mode {client | server | transparent}] [passwd passwd]

[pruning{enable | disable}] [v2 {enable | disable}]