MPLS(多协议标签交换)是一种可提供高性价比和多业务能力的交换技术, 它解决了传统IP分组交换的局限性,在业界受到了广泛的重视,并在中国网通、中国铁通全国骨干网等网络建设中得到了实践部署。采用MPLS技术可以提供灵活的流量工程、虚拟专网等业务,同时,MPLS也是能够完成涉及多层网络集成控制与管理的技术。
1.MPLS概述
1.1、MPLS的基本原理
MPLS是一种第三层路由结合第二层属性的交换技术,引入了基于标签的机制,它把路由选择和数据转发分开,由标签来规定一个分组通过网络的路径。MPLS网络由核心部分的标签交换路由器(LSR)、边缘部分的标签边缘路由器(LER)组成。LSR的作用可以看作是ATM交换机与传统路由器的结合,由控制单元和交换单元组成;LER的作用是分析IP包头,用于决定相应的传送级别和标签交换路径(LSP)。标签交换的工作过程可概括为以下3个步骤:
(1)由LDP(标签分布协议)和传统路由协议(OSPF、IS-IS等)一起,在LSR中建立路由表和标签映射表;
(2)LER接收IP包,完成第三层功能,并给IP包加上标签;在MPLS出口的LER上,将分组中的标签去掉后继续进行转发;
(3)LSR对分组不再进行任何第三层处理,只是依据分组上的标签通过交换单元对其进行转发。整个操作过程如图1:
图1 |
图2 |
Label字段:20位,标签字段。
EXP:3位,实验字段。
S字段:1位,堆栈(Stack)字段。
TTL字段:8位,生存时间字段。
1.2、MPLS信令方式
目前MPLS实现信令的方式可分为两类,一类是LDP/CR-LDP(Label Dispatch Protocol, Constrain based Routing Label Dispatch Protocol),源于ATM网络的思想。CR-LDP和LDP是同一个协议,CR-LDP是LDP的扩展,它使用与LDP相同的消息和机制,如对等发现、会话建立和保持、标签发布和错误处理。另外一类是RSVP,它基于传统的IP路由协议。RSVP和LDP/CR-LDP是两种不同的协议,它们在协议特性上存在不同,有不同的消息集和信令处理规程。从协议可靠性上来看,LDP/CR-LDP是基于TCP的,当发生传输丢包时,利用TCP协议提供简单的错误指示,实现快速响应和恢复。而RSVP只是传送IP包。由于缺乏可靠的传输机制,RSVP无法保证快速的失败通知。从网络可扩展性上看,LDP较RSVP更有优势,一般电信级网络中尤其是ATM网络中,应采用MPLS/LDP。ITU-T倾向于在骨干网中采用CR-LDP。 目前所有支持MPLS功能的路由设置都同时支持CR-LDP和RSVP两种MPLS的信令协议。
1.3、MPLS的网络构成
MPLS网络由标签边缘路由器(LER)和标签交换路由器(LSR)组成。在LSR内,MPLS控制模块以IP功能为中心,转发模块基于标签交换算法,并通过标签分配协议(LDP)在节点间完成标签信息以及相关信令的发送。值得注意的是,LDP信令以及标签绑定信息只在MPLS相邻节点间传递。LSR之间或ISR与LER之间依然需要运行标准的路由协议,并由此获得拓扑信息。通过这些信息LSR可以明确选取报文的下一跳并可最终建立特定的标签交换路径(LSP)。MPLS使用控制驱动模型,即基于拓扑驱动方式对用于建立LSP的标签绑定信息的分配及转发进行初始化。LSP属于单向传输路径,因而全双工业务需要两条LSP,每条LSP负责一个方向上的业务。
1.4、MPLS的核心技术LDP
MPLS通过简单的核心机制来提供丰富的标签分配及相关处理功能。构成MPLS协议框架的主要元素有标签分配协议(LDP),标签映射表(LIB)和转发信息库(FIB),其中LIB和FIB分别为存储标签绑定信息和相应的标签转发信息的数据库。为了能够在MPLS域内明确定义、分配标签,同时使用网络内各元素充分理解其标签含义,LDP提供一套标准的信令机制用于有效地实现标签的分配与转发功能。LDP基于原有的网络层路由协议构建标签信息库,并根据网络拓扑结构,在MPLS域边缘节点(即入节点与出节点)之间建立LSP。LDP信令位于TCP/UDP之上,它通过TCP层保证信令消息可靠传输,同时基于UDP传送发现消息。LDP信令传输使用的TCP和UDP知名端口号均为646。相邻的LSR之间必须建立一条非MPLS连接链路作为信令通道,用于传送LDP信令报文。
1.5、MPLS的主要技术特点
(1)流量工程
传统IP网络一旦为一个IP包选择了一条路径,则不管这条链路是否拥塞,IP包都会沿着这条路径传送,这样就会造成整个网络在某处资源过度利用,而另外一些地方网络资源闲置不用,MPLS可以控制IP包在网络中所走过的路径,这样可以避免IP包在网络中的盲目行为,避免业务流向已经拥塞的节点,实现网络资源的合理利用。
(2)负载均衡
MPLS可以使用两条和多条LSP来承载同一个用户的IP业务流,合理地将用户业务流分摊在这些LSP之间。
(3)路径备份
可以配置两条LSP,一条处于激活状态,另外一条处于备份状态,一旦主LSP出现故障,业务立刻导向备份的LSP,直到主LSP从故障中恢复,业务再从备份的LSP切回到主LSP。
(4)故障恢复
当一条已经建立的LSP在某一点出现故障时,故障点的MPLS会向上游发送Notification消息,通知上游LER重新建立一条LSP来替代这条出现故障的LSP。上游LER就会重新发出Request消息建立另外一条LSP来保证用户业务的连续性。
(5)路径优先级及碰撞
在网络资源匮乏的时候,应保证优先级高的业务优先使用网络资源。MPLS通过设置LSP的建立优先级和保持优先级来实现的。每条LSP有n个建立优先级和m个保持优先级。优先级高的LSP先建立,并且如果某条LSP建立时,网络资源匮乏,而它的建立优先级又高于另外一条已经建立的LSP的保持优先级,那么它可以将已经建立的那条LSP断开,让出网络资源供它使用。
1.6、MPLS QoS
有两种方法用以MPLS流中指示服务类别。一种是IP Precedence,可以指出8种服务类别。它被拷贝到MPLS头中的CoS字段,典型应用是在核心路由器。在另一种方式中,MPLS可用不同组的标签指定服务类别,交换机可自动获知流量需要按优先级排队。目前,MPLS支持最多8种服务类别,编码与IP Precedence相同。这一数量不久将增加,原因是标签的数量多于IP前导的服务类别。采用标签分类后实际的服务类别数量是无限的。
2、基于MPLS的VPN技术
VPN被一致认可为网络运营商的核心应用。网络运营商经常面临的挑战是商业用户需要将他们建立的网络通过VPN扩展到分支机构或外部用户网。这些基于IP的主流应用要求网络的特殊处理,包括私密性,服务质量以及any-to-any的连通性。网络运营商的VPN业务必须具备高度的可扩展性,高性价比并可适应广泛的用户需求。
2.1 基本原理
目前基于MPLS的VPN方案中,以RFC 2547中规定的BGP/MPLS VPN得到了大多数厂家的支持,如Cisco,Juniper等。BGP/MPLS VPN概念中,把整个网络中的路由器分为三类:用户边缘路由器(CE)、运营商边缘路由器(PE)和运营商骨干路由器(P);其中,PE充当IP VPN接入路由器。由于BGP/MPLS VPN采用PE之间通过扩展后的BGP协议(MP-BGP)来承载VPN成员关系和VPN网络可达性,所以使MPLS VPN网络具有良好的扩展性、灵活性和可靠性。
MPLS VPN的工作过程如图3:
图3 |
(1) CE到PE间通过IGP路由或BGP将用户网络中的路由信息通知运营商路由器(PE),在PE上有对应于每个VPN的虚拟路由表(VRF),类似有一台独立的路由器与CE进行连接。
(2)PE之间采用MP-BGP传送VPN内的路由信息以及相应的标签(VPN的标签,以下简称为内层标签),而在PE与P路由器之间则采用传统的IGP协议相互学习路由信息,采用LDP协议进行路由信息与标签(用于MPLS标签转发,以下称为外层标签)的绑定。到此时,CE,PE以及P路由器中基本的网络拓扑以及路由信息已经形成。PE路由器拥有了骨干网络的路由信息以及每一个VPN的路由信息(VRF)。
(3)当属于某一VPN用户端路由器(CE)有数据进入时,在CE与PE连接的接口上可以识别出该CE属于哪一个VPN,进而到该VPN的VRF路由表中去读取下一跳的地址信息,同时,在前传的数据包中打上VPN标签(内层标签)。下一跳地址为与该PE作Peer的PE的地址,为了到达这个目的端的PE,在起始端PE中需读取MPLS骨干网络的路由信息,从而得到下一个P路由器的地址,同时采用LDP在用户前传数据包中打上用于MPLS标签交换的标签(外层标签)。
(4)在MPLS骨干网络中,初始PE之后的P均只读取外层标签的信息来决定下一跳,因此骨干网络中只是简单的标签交换。
(5)在达到目的端PE之前的最后一个P路由器时,将把外层标签去掉,读取内层标签,找到VPN,并送到相关的接口上,进而将数据传送到VPN的目的地址处
(6)P路由器是MPLS LSR。P路由器完全依据MPLS的标签来作出转发决定。由于P路由器完全不需要读取原始的数据包信息来作出转发决定,P路由器不需要拥有VPN的路由信息。因此P只需要参与骨干IGP的路由,不需要参加MP-BGP的路由。
从MPLS VPN工作过程可见,MPLS VPN丝毫不改变CE和PE原有的配置,一旦有新的CE加入到网络时,只需在PE上作简单配置,其余的改动信息由BGP自动通知到CE和P。
2.2 主要优点
(1)提供一个可快速部署实施增值IP业务的平台,包括内部网、外部网、话音、多媒体及网络商务。
(2)通过限制VPN路由信息的传播,仅在VPN成员内部并采用MPLS前转,可提供与第二层VPN相同的私密性及安全性。
(3)提供与用户内部网的无缝集成。
(4)高扩展性,每个网络运营商可以设定数十万VPN,每个VPN可有数千个现场。
(5)提供IP业务类别,支持VPN内部多级别业务,VPN间的优先级,灵活的服务级别选定。
(6)提供方便的VPN成员管理及新VPN创建功能以利于业务的快速实施。
3、MPLS技术的实际应用
中国铁通IP骨干网全面采用MPLS技术进行构架,它采用了Cisco 公司的12000系列及7000系列的高端路由器组建。
通过在全国各大城市部署专用MPLS VPN路由器(PE),中国铁通IP骨干网可在全国范围内提供的MPLS VPN 业务。这种结构可提供方便的演进策略,使铁通可以根据自己的计划及客户的需求逐步引入VPN业务。将来更多的MPLS VPN 功能会要求更新的软件版本,采用专用VPN路由器后,这些软件的更新都不会影响其它路由器。
采用 MPLS VPN的网络,所有PE路由器运行IBGP以交换VPN信息,包括 VPN-IP地址、路由目标(RT)、下一跳和标记,这就要求所有PE间的全网状IBGP连接,这就存在N2问题不便管理,通过路由反射(RRs)技术可满足这个要求。中国铁通IP骨干网采用专用VPN-RR,这种方式可带来以下优势:
(1)只有PE需要与VPN-RR对应,这样可使VPN-RR有更好的扩展性。
(2)骨干网的拓扑变化不会影响VPN-RR,同时VPN内部需求的变化也不会影响骨干网中的RR。
(3)VPN-RR的部署非常灵活,在MPLS VPN 推广的初期,只配置少量VPN-RR。当网络规模变得非常大时,可以采用多RR组,每个RR组只对某个选定的MPLS VPN组提供服务。
4. MPLS发展前景
MPLS作为网络的核心技术已经被大量运用到网络运营商的全国骨干网及各省市的城域网建设中,一些大型的园区网、企业网甚至也将MPLS技术用于组建VPN网络等应用中。
随着光波长路由技术的进一步发展,以及标准化工作的不断深入,光波长路由器间交换控制信息和建立光通路所用的协议MPλS(多协议波长交换)将逐渐可以与IP层面的MPLS(多协议标记交换)互通,从而为IP Over Optical网络建立起统一的、开放的、标准的控制平面提供了可能。
【编辑推荐】