多层交换技术是传统第2层交换技术与第3层路由技术在单一产品中的简单结合,结合了2层交换和3层路由功能于一身。路由器一般只能传几千个包,使用3 层交换,可以达到几百万个包传输。多层交换技术是个新概念,该术语在行业中还没有形成标准。供应商、分析员和编辑员对一些行业术语的理解还没有达成统一意见,如多层交换机、第2层路由器、第3层交换机、IP 交换机、路由交换机、交换路由器和线速路由器等。多层交换机是其中使用也最为广泛的一种产品,它既可以执行第3层路由功能,也可以执行第2层交换功能。
通用直通路由选择(Generic Cut-Through Routing):多层交换结构第3层中的路由计算是在数据流的第1个数据包中完成的。该数据流中的其它数据包在第2层沿着相同的路由实现转换。换句话说,这种结构下的路由计算和帧转发处理过程是不同的。
基于 ATM 的直通路由选择(ATM-Based Cut-Through Routing):这是基于通用直通路由选择的一种变体结构,它基于 ATM 信元而不像通用直通路由选择一样基于帧结构。基于 ATM 的直通路由选择结构具有多种优势,如改进的 LAN 仿真支持和多供应商以多协议对 ATM (MPOA)标准的支持。有关 IP 交换机和标签交换机的产品通常被归为此结构类目。
第3层学习桥接(Layer 3 Learning Bridging):该结构不支持路由选择功能,而是利用IP“snooping”技术学习网络各处出现的真实路由器中终端站间的 MAC/IP 地址关系,然后重定向通信流量,并基于第2层地址转换该流量。
线速路由选择(Wirespeed Routing):线速结构可以独立传送各个数据包,它常被称为是一种Packet-by-Packet 第3层交换技术。硬件中采用 ASIC 执行第3层路由选择,它需运行动态路由选择协议,如 OSPF 和 RIP。除基本 IP 路由选择以外,它还提供 IP 组播路由选择、VLAN 分离和多优先级,以支持服务质量标准。
多层交换机和路由器之间的区别,最根本就是多层交换机也具有“路由”功能,与传统路由器的路由功能总体上是一致的。不过虽然多层交换机与路由器都具有路由功能,但不能因此而把它们等同起来。现在有许多宽带路由器不仅具有路由功能,还提供了交换机端口、硬件防火墙功能,但不能把它与交换机或者防火墙等同起来一样。因为这些路由器的主要功能还是路由功能,其它功能只不过是其附加功能,其目的是使设备适用面更广、使其更加实用。这里的多层交换机也一样,它仍是交换机产品,只不过它是具备了一些基本的路由功能的交换机,它的主要功能仍是数据交换。也就是说它同时具备了数据交换和路由由发两种功能,但其主要功能还是数据交换;而路由器仅具有路由转发这一种主要功能。
以如下拓扑结构为例:
步:发送MLSP Hello 信息
当路由器激活后,多层路由处理器每 15 秒发送一个 MLSP Hello 包,这些包内含路由器接口所使用的 VLAN 标识和 MAC 地址信息。MLS-SE 通过这些信息掌握具备多层交换能力的路由器的第二层属性。如果交换机连接了多个 MLS-RP,MLS-SE 通过为它们的 MAC 地址分配 XTAG 值的方法来区分每个MLS-RP 的 MAC 地址条目。如果 MLSP 帧从同一个MLS-RP得到所有MAC地址, MLS-SE则为其附加相同的 XTAG 值,具体如左图所示。这些关联的记录都存放在 CAM 中。由于 Hello 包是周期性发送的,所以,这种方法可以保证相关值动态地跟踪网络的变化,并可实现一定的淘汰机制。 Hello包是在第二层发布的,它使用多播地址01-00-0C-DD-DD-DD。
第二步:标识候选包(Candidate Packet)
在了解具有多层交换能力的路由器的相关地址后,MLS-SE 可以对进入交换机的数据包进行匹配判断。对于一个流中的数据包,如果MLS 缓存中含有与之匹配的捷径条目,则MLS-SE就旁路路由器而直接转发该数据包;如果MLS中不含与该数据包相匹配的捷径条目,则MLS-SE 将它归为候选包,并在缓存中建立部分捷径(Partial shortcut)。这样的包采用传统的第二层交换机处理方式处理,并发往与之相连的路由器接口(网关),具体如图所示。
第三步:标识使能包(Enable Packet)
路由器收到并以传统的方式转发数据包。通过数据包的目标地址路由表得知,这个包应从 Fast Ethernet1/0的第二个接口转出,并将包封装为VLAN2帧通过ISL链路送回。具体过程如图所示。此时,路由器已经重写第二层帧的帧头。同时,路由器不仅改写了 ISL 头的 VLAN 号,而且也修改了两个 MAC 地址域 :源MAC改为路由器出口的 MAC 地址,目标MAC改为主机 B 的 MAC 地址。虽然数据包的 IP 地址未改写,但 IP包头的生存时间(TTL)值被减 1,故 IP 包头的校验和也需要做相应的修改。 这个修改后的数据包称为使能包(Enable Packet),当这个数据包从路由器送出并穿过交换机到达目的地主机B时,要履行下列五个功能:
1. 第二层交换机根据使能包的目的地MAC地址,知道该数据包应该从PORT3/1口转发出去;
2. MLS-SE 得知使能包的帧头上源地址是通过 Hello 过程建立的地址记录之一;
3. MLS-SE根据使能包目的IP地址查寻在第二步中建立的部分捷径条目;
4. MLS-SE 将与使能包源 MAC 地址相关联的 XTAG 值和部分捷径条目的对应XTAG 值相比较,如果匹配,则表明这个使能包与第二步中的候选包来自同一个路由器;
5. MLS-SE完成该捷径条目的建立过程,该捷径记录将包含重写数据流中的后续包帧头所需的所有信息。
第四步:直接交换(转发)数据流中的后续包
当后续的数据包被主机A送出后, MLS-SE 利用数据包中的目标 IP 地址查找在第三步建立的完整捷径。地址匹配后,MLS-SE 利用重写引擎修改帧头信息,然后直接转发给主机 B(数据包不发给路由器)。重写操作修改帧头域,其值同个被路由器修改的数据包的域值一样。详见图5所示。这里需要解释的是,NFFC(NetFlow Feature Card)是装备在三层交换机中的网络流性能卡,它维护第三层交换数据包流的交换表(MLS Cache),作为多层交换的交换引擎部分。
随着我国企业网、校园网以及小区宽带建设的迅速发展,多层交换机再次找到了新的市场增长点,它的应用也从最初的骨干层、汇聚层一直渗透到边缘的接入层。在目前火爆的宽带网络建设中,多层交换机一般被放置在小区的中心和多个小区的汇聚层。多层交换机的出现,极大改变了局域网的性能。正如路由器统治广域网一样,多层交换机将在今后主宰局域网已成为必然。
在校园网、城域教育网中,从骨干网、城域网骨干、汇聚层都有多层交换机的用武之地,尤其是核心骨干网一定要用多层交换机,否则整个网络成千上万台的计算机都在一个子网中,不仅毫无安全可言,也会因为无法分割广播域而无法隔离广播风暴。如果采用传统的路由器,虽然可以隔离广播,但是性能又得不到保障。而多层交换机的性能非常高,既有多层路由的功能,又具有二层交换的网络速度。二层交换是基于MAC寻址,三层交换则是转发基于第三层地址的业务流;除了必要的路由决定过程外,大部分数据转发过程由二层交换处理,提高了数据包转发的效率。多层交换机通过使用硬件交换机构实现了IP的路由功能,其优化的路由软件使得路由过程效率提高,解决了传统路由器软件路由的速度问题。因此可以说,多层交换机具有“路由器的功能、交换机的性能”。