MPLS交换路由器的设计与实现


摘 要:MPLS是目前Internet核心网上最看好的技术,基于Crossbar的高速交换技术的发展也很快,但是如何实现2种技术的有机结合以到达最优的性能却有一系列问题需要考虑 。本文结合某MPLS路由器的设计项目,综合考虑了当前MPLS的标准以及有关交换结构的最新技术,对实现MPLS交换路由器进行了深入研究,并具体探讨了高速接口、排队和调度以及Crossbar等要害模块的设计和实现方案 。
要害词:因特网;多协议标签交换;交换路由器;设计
Internet业务量的飞速增长以及宽带技术的不断出现 ,对 Internet的网络结构以及互连的核心设备路由器的性能提出更高的要求 。而由IETF提出的MPLS(多协议标签交换)技术以其在以下几个方面的绝对优势而成为目前最为看好的核心网技术:能够提供对QoS业务的灵活支持;能够支持流量工程以提高网络资源的利用率;能够灵活支持将来Internet上第一大业务VPN;能够有足够快的转发速率[1,2,3] 。
高端路由器厂商Cisco、Juniper等都推出了自己的MPLS产品,但是并没有公开其具体的设计细节 。我们的目的是设计一种支持多种接口和多种协议的高速交换路由器,该路由器既可以应用于校园网/企业网的骨干,也可以应用于大型ISP的边缘接入 。我们的设计吸取了近年来国际上对宽带IP路由器技术前沿的研究成果,设计思想主要包括 4个方面:将路由引擎 (Routing Engine)和转发引擎 (Forwarding Engine)分开;用快速的硬件实现IP分组的头处理、路由和转发;用多个分布式的接口单元加中心控制器的模式取代中心处理器加接口卡的模式;用交换结构 (Switch Fabric)提高各接口单元之间的数据通信速度[4,5] 。
基于以上的设计思想,本文描述的MPLS交换路由器包括以下组件: LDP/CR-LDP、MPLS分类器、业务分类器、地址分类器、接纳控制、资源治理、分组排队和调度以及交换结构Fabric 。该MPLS路由器的模块化设计不仅能够提高分组转发率,提供灵活的QoS支持、流量规划以及故障恢复能力,还具有很好的可扩展性 。
一、 MPLS基本概念及标签交换路由器
MPLS即多协议标签交换技术,是一种在开放的通信网上利用标签引导数据高速、高效传输的新技术,它的价值在于能够在无连接的网络中引入连接模式 。MPLS采用传统的IP路由,但将路由与分组转发分离开来,这使得在MPLS网中可以通过修正转发方法来推动路由技术的演进 。而且,网络中分组的转发基于定长标签,简化了转发机制,使得路由器容量很轻易扩展到太比特级 。实际上当前推出的几乎所有高速路由器都支持MPLS 。
MPLS还是一种与链路层无关的技术,它同时支持FR、ATM、PPP、SDH、DWDM等,保证了多种网络的互联互通,可以将各种不同的网络传输技术统一在同一个MPLS平台上,最大限度地兼顾原有的各种技术,保护现有投资和网络资源 。而MPLS能够灵活地支持流量工程、CoS、QoS和VPN的能力则是MPLS实用中最据吸引力的亮点 。
1. MPLS标签交换过程
图1所示为分组在MPLS网络中的转发过程,主要经过以下3个步骤:
(1)入口LSR在FIB(Forwarding Information Base)表中按照传统的最长匹配算法对FEC进行查找,找到要压入的标签5和相应的出接口,然后压入标签发送分组到相应的端口;
(2)核心LSR根据标签栈顶层的标签5查找ILM(Incoming Label Map)表,找到要进行的操作为标签的交换,交换使用的标签为9,执行标签交换,然后发送分组到相应的接口;
(3)出口LSR根据ILM查找的结果进行标签的弹栈(POP),然后再按照第三层IP地址进行转发 。
在拓扑驱动的模式中,FIB和ILM是在路由协议(BPG、OSPF或RIP)建立路由表的同时建立起来的 。

推荐阅读