多协议标记交换3

发布时间:2005-03-09 作者:陈锡生 阅读量:

 MPLS是目前被产业界、分析家和市场一致看好的技术。本刊在前两期已介绍的MPLS的主要内容有:IP选路与IP交换、MPLS概述、标记分配与管理、标记分配协议,本期继续介绍基于ATM的标记交换路由器、MPLS的SIN模式以及MPLS的有关技术。

 

5.2 VC合并ATM交换的实现方式

(1)VC合并的含义

    所谓VC合并,就是来自多个输入信元流的不同的输入VCI可以合并为同一输出VCI。作为示例,图7表示了无VC与有VC合并的情况。无VC合并时,输入VCI1、VCI2、VCI3分别变换为输出VCI7、VCI6、VCI9;有VC合并时,则输入VCI1、VCI2、VCI3均变换为输出VCI7。

(2)VC合并的实现

    实现VC合并的ATM-LSR应使得合并为同一输出VC但属于不同分组的信元不产生交插,为此属于特定分组的每个输入信元应存储在专门的缓冲器中,直到分组的最后一个信元到达。这一专门的缓冲器可称为重组缓冲器(Reassembly Buffer)。

    原则上,重组缓冲器可置于ATM交换结构的输入侧或输出侧。如置于输入侧,为了避免不同分组的信元交插,就要求ATM交换结构以分组(含有多个信元)作为整体来交换,相当于帧交换(Frame Switch-ing)的功能,这种非信元交换方式缺少灵活性,也不利于多重服务质量(QOS)的提供。为此,通常置于输出侧。

     可支持VC合并的输出缓冲方式的结构。除了通常的输出缓冲器以外,还有多个重组缓冲器(RB)。每个RB对应于某一特定端口和某一输入VCI。如果VCI是按整个交换平台分配,则每个RB对应于某一特定VCI。

     RB实际上实现了分组级的存储转发(Store-and-Forward)机理,一定要某个分组的最后一个信元到达后,才将整体分组一起传送到输出缓冲器,同时将输入VCI翻译为输出VCI。每个RB是逻辑缓冲器,这就是说,可以将输出缓冲器、重组缓冲器共享一个公共的存储区。

 

6 MPLS的SIN模式

 

6.1 SIN模式的优点

    SIN模式是MPLS与原有的ATM交换共存于ATM平台上,也就是在已有的ATM网络上运行MPLS。如图9所示,ATM交换平台同时受到两个控制面的控制,一个是ATM控制面,要运行诸如PNNI信令,另一个是MPLS控制,要运行较简单的轻型信令协议——LDP;同时,也具有两种接口,一种是纯ATM VC接口,另一种是MPLS LSP接口。

MPLS的SIN模式具有以下优点:

(1)MPLS可充分利用ATM硬件的标记(VPI/VCI)交换,可以很高速率转发分组。

(2)MPLS可使用原已在ATM硬件中实现的有效的业务流管理功能。

    例如,ATM硬件中的排队与调度技术可提供多种业务类别,并映射到LDP协议中的业务类别(Class of Service)字段。此外,在MPLS域的边界上也可利用业务流成形和业务流警管(Policing)功能。

(3)可由同一网络基础设施提供多重业务,例如话音、视像和数据业务。

(4)提高已有ATM网络的利用率,保护ATM设施的投资,并易于从ATM上的IP(IP over ATM)过渡到IP over MPLS over ATM。

(5)当MPLS架构发展时,ATM提供了业务流工程的解决方法。

 

6.2 SIN模式的实现技术

    为了实现SIN模式,必须很好地解决以下有关技术问题:VPI/VCI空间的划分、业务流管理和处理能力。

 

6.2.1 VPI/VCI空间的划分

     在原ATM交换平台上,使用28比特的VPI/VCI字段来交换ATM信元,对于MPLS中的LC-ATM接口,标记就是ATM信元的VPI/VCI字段。因此在ATM与MPLS间必须分隔VPI/VCI的空间范围。

    一种简便的划分方法是在初始化时将VPI/VCI空间划分为两个子集,一个子集由ATM使用,另一个子集由MPLS使用。ATM或MPLS只能从配给它的子集的范围中分配VPI/VCI,而互不干扰。在相邻的LSR/ATM节点间,VPI/VCI有效范围的互通也由各自的协议进行:MPLS使用LDP在LDP会晤的初始化阶段交换这一信息;ATM则可使用ILMI信道来协调有效的VPI/VCI范围。

    至于ATM与MPLS关于VPI/VCI范围边界的选定则属于网络业务流工程的问题,与应支持的ATM VC的数量、是否支持VC合并、流的粒度等因素有关。

 

6.2.2 业务流管理

    MPLS也需要业务流管理。目前,MPLS业务流管理的实现依赖于显式路由、业务类别(COS)的区分和带宽预留。为此,MPLS应支持业务流成形、业务流警管、排队和调度功能以及LSP接纳控制(LSP Ad-mission Control)。

    ATM和MPLS共享同一网络设施,必须妥善地处理ATM业务流与MPLS业务流之间的影响。

(1)带宽管理

    带宽预留可在启动时配置,可有以下的不同配置方法:

    ATM与MPLS之间硬分隔接口

    链路的带宽分隔为两个带宽池,一个用于ATM,另一个用于MPLS,每个池占有链路带宽一定的百分比。ATM仅从ATM带宽池中分配带宽,MPLS仅从MPLS带宽池中分配带宽。两个带宽池边界的选定也属于网络工程问题,与ATM和MPLS各自的带宽需求有关。允许两个带宽池的带宽之和超过接口链路的带宽容量。

    ATM与MPLS之间的全共享

    每个接口的带宽只形成单一的带宽池,由ATM与MPLS共享。

(2)排队与调度

    ATM提供严格的QOS保证,MPLS业务流不能对ATM业务流造成任何影响其QOS保证的干扰。反之,ATM业务流也不能影响MPLS。为此,不仅要进行带宽池的划分,还要通过排除与调度来保证ATM与MPLS各自的QOS,即ATM业务类别和MPLS的COS要恰当地映射到共享的排队与调度机制。

    这里给出ATM与MPLS如何映射到多优先级系统(Multi-Priority System)的一个示例。假定多优先级系统(MPS)提供12种不同的QOS,由3种时延优先级和4种信元丢失优先级组合而成。时延优先级按优先级高低用D1、D2、D3表示,即D1优先级最高,时延最小。丢失优先级用L1、L2、L3、L4表示,L1优先级最高,即丢失率最低。MPLS定义了3种COS,COS 0为尽力而为(Best Effort),COS 1为低丢失保证,COS 2为低时延保证。COS 0和UBR为最低优先级,映射在D3/L4位置。COS 1和nrt-VBR映射于D3/L3,要求低丢失率,但对时延要求不高。COS 2和rt-VBR映射于D2,均要求低时延,但rt-VBR对丢失率要求稍高于COS 2,因此映射到L2,COS 2则映射到L3。CBR要求较高,映射到D1/L2。控制业务流则给予最高优先级,包括ATM信令消息,MPLS的LDP消息等。

 

6.2.3 处理能力

     在SIN模式时,同一节点平台上要运行两套信令和选路协议的软件和数据库,即ATM信令与选路协议(例如PNNI),以及MPLS信令(LDP)与选路协议(如OSPF、RIP、BGP)。为此,节点要有足够的处理机的处理能力和存储器容量,以适应ATM和MPLS的同时运行。

 

7 MPLS的有关技术

 

    实现MPLS以及使MPLS获得有效应用的有关技术,包括标记的分配、捆合、合并、流的聚合和标记分配协议,还包括对显式选路、多播、QOS、VPN的支持和对环路的控制,ATM交换机用作LSR,以及MPLS与纯ATM并存的SIN模式等。某些技术仍在进一步研究与完善之中。本节对某些前未述及的有关技术作一简要介绍。

 

7.1 流的聚合(Aggregation)

    在某个MPLS域,在一群FEC上的所有业务流可能会遵循同一路由,例如一群不同的地址前缀可能具有同一MPLS出口节点。对此,这一群FEC的联合就相当于一个FEC。于是出现两种选择:对每个FEC分配一个不同的标记,或者对这一群FEC分配一个共同的标记。如果分配共同的标记,就称为聚合。显然,聚合可以减少标记的数量,同时也减少用于标记分配的控制用业务流量。

    对于路由相同的一群FEC,可以聚合为单一的FEC,也可以聚合为几个FEC,当然也可以不聚合。这3种情况的聚合粒度不同,聚合为单一的FEC时粒度最粗,不聚合时的粒度最细,另一种的粒度则属于两者之间。

    当采用按序控制方式时,对于一定的FEC群,LSR应采用由该FEC群的下游所用的粒度。如果采用独立控制方式,则两个相邻的LSR有可能出现不同粒度的聚合。如果上游LSRu的粒度比下游LSRd的要细,也就是对于某个FEC群,LSRu比LSRd分配更多的标记,这并不会产生问题。如果上游LSRu的粒度比下游LSRd的要粗,则有两种选择:LSRu采用LSRd的细粒度,或者LSRu将其分配的标记映射到LSRd的标记的一个子集,但必须导致相同的选路。

 

7.2 标记合并(Label Merging)

    如果来自不同输入接口和/或具有不同标记的分组可以用相同的标记在同一输出接口上发送,就称此LSR具有标记合并能力。如果LSR不执行标记合并,则具有不同输入标记但属于同一FEC的分组必须以不同的输出标记转发。标记合并可以减少标记数量。MPLS结构应能兼容标记合并的LSR和非标记合并的LSR,这就要在两种LSR之间实现适当的互操作。

    非标记合并LSR的转发机理与ATM相似,进行一对一的标记转换,ATM交换机通常不支持标记合并。否则会引起来自不同虚电路上的信元之间的交错,而不能重组原有的分组。

 

7.3 显式路由的支持

     MPLS可以利用增强资源预留协议(Resource Reservation Protocol)来实现显式路由,即可以建立显式选路的标记交换通路(Explicitly Routed Label Switched Path)。

    当采用资源预留协议(RSVP)建立显式选路的标记交换通路(ER-LSP)时,ER-LSP的第一个节点为唯一的发送者,ER-LSP的最后一个节点为接收者。源节点生成RSVP PATH消息,在消息中要插入显式路由对象(Explicit Route Object)和标记请求(Label Request)对象。显式路由对象(ERO)规定了通路的路径,标记请求对象用来请求与此通路捆合的标记。

    PATH消息沿着ERO规定的通路向目的地传送,沿途的每个节点要将ERO记录在节点的通路状态块中。所经过的节点也可以按一定规则修改ERO。目的地节点收到PATH消息后,分配标记并置入Label对象中,将Label对象插入RESV消息,反向传送RESV消息。收到RESV消息的节点要将其中含有的标记作为输出标记,并分配一标记作为该节点在此通路上的输入标记,RESV消息再向上游方向转发后,这一标记将成为邻接的上游节点的输出标记。以此类推,直到RESV消息到达源节点,从而建立了LSR。

    如果沿途的某个节点收到PATH消息时,不能满足LRO中的标记分配要求,就向PATH消息的发送者回送PATH ERROR消息。

 

7.4 基于MPLS的VPN

    可以实现基于MPLS的VPN。对于VPN,必须解决QOS和安全性等问题。传统的ATM可以支持QOS,但单独依靠MPLS并不能保证QOS。事实上,QOS的保证涉及到4个方面:

(1)终端用户指明其所需的QOS。

(2)能识别在源与目的地之间可以提供所需QOS的路由。这与VPN管理系统中的业务流工程算法有关。

(3)通知路由上的所有节点使其保留QOS所需的资源。

(4)节点本身应设计成能保证QOS要求。

    以上4个方面中,与MPLS节点有关的是后2条,即MPLS显式路由可用来支持第(3)条,第(4)条则要求MPLS节点应为新一代的能支持QOS的IP交换路由器或基于ATM的LSR。

 

7.5 多播支持

    IP多播协议有DVMRP、PIM-DM、PIN-SM、MOSPF等,具有不同的特性。MPLS要将第3层(L3)的多播树映射到第2层(L2)的多播树,形成点到多点的LSP。生成多播LSP可有请求驱动、拓扑驱动和数据驱动方法,请求驱动与拓扑驱动也可归为一种。

(1)请求驱动:由多播选路消息、资源预留消息等控制消息驱动。例如采用PIM-SM协议时,其Join消息要包含标记的分配,即原有多播协议要扩展,形成携带式分配。RSVP的Resv消息也可触发多播LSP的建立。

(2)拓扑驱动:MPLS模块可轮询并提取L3多播选路表(MRT)中的L3树拓扑信息,以映射到L2的多播LSP。MRT有变化时也直接通知MPLS模块。

(3)数据驱动:当多播数据到达时,才将L3树映射到L2树。由于只在数据流动时才分配标记,而非预先建立多播LSP,标记的消耗较少。通常由LDP完成标记分配。不具有显式Join消息的协议,例如PIM-DM和DVMRP,可采用数据驱动。

 

7.6 环路控制

由于配置错误、发生故障或者选路算法中到达数据库同步的时间较慢,L3会出现环路。MPLS将L3路由映射到L2的LSP,L3的环路就反映到L2,因此MPLS必须有环路控制的机制,否则会造成MPLS域中控制分组或数据分组的环路传送,直至环路去除为止。可在3种不同的层次实现环路控制:环路承受、环路检测和环路防止。

 

7.6.1 环路承受

    环路承受是指允许LSP形成环路,但限制环路所消耗的网络资源并使环路中的分组不影响其它分组的传送性能。具有TTL操作的LSP或可实现按每个VC排队的L2节点可满足环路承受的要求。TTL操作是指每通过一个LSR,TTL减1,当TTL=0时认为形成环路,分组予以丢弃。MPLS采用薄片式MPLS头时,其中含有TTL。但采用ATM或帧中继(FR)的L2节点则不支持TTL操作。不支持TTL的LSP称为非TTL LSP段,有时可由入口节点实现TTL减法操作,所减之值等于该非TTL LSP段中LSR的跳数。

 

7.6.2 环路检测

    环路检测也允许LSP形成环路,但能很快发现环路并去除L2环路,也就是去除上下游节点的出入标记间的转换关系。为此,每当路由改变时,可通过向一些有关目的地发送环路检测控制消息来检测环路。LDP可支持环路检测功能:由标记请求消息或标记映射消息携带的通路向量TLV(PVTLV)或跳数计数TLV(HCTLV)来检测环路。

(1)PVTLV:PVTLV中含有LSR标识,当某个LSR传送含有PVTLV的消息时,将自身的LSR标识加到PV清单中。如果LSR收到的消息中已包含自身的标识,就检出了环路。LDP还可支持最大的PV长度,当PV到达最大长度时也相当于检出环路。

(2)HCTLV:HCTLV中含有计数器,当LSR传送含有HCTLV的消息时,将计数器加1,当计数器到达规定的最大值,即认为形成环路。

 

7.6.3 环路防止

    环路防止是最严格也最复杂的环路控制,旨在阻止LSP形成环路。当L3环路停留较长且无措施可达到环路承受要求的网络,应采用环路防止机制。环路防止可使用通路向量(PV)的扩散算法。每当MPLS节点发现对某FEC的下一跳有改变时,不能立即进行新的标记分配,而要执行PV扩散算法,使用PVTLV检出环路的方法,向其各个上游节点发送询问消息,并依次再向上游传送,直至入口节点,以证实与新的下一跳的标记分配关系不会形成任何环路。另一种预防环路机制乃基于“穿线”方法,此处从略。(续完)

 

参考文献

1 A Viswanathan,et al.Evolution of Multiprotocol Label Switching.IEEE Commun.Magazine,1998,36(5):165-173

2 R Callon,et al.A Framework for Multiprotocol Label Switching.Internet Draft,July 1999

3 Eric C Rosen,et al.Multiprotocol Label Switching Ar-chitecture.Internet Draft,April 1999

4 L Abndersson,et al.LDP Specification.Internet Draft ,June 1999

5 B Davie,et al.MPLS Using LDP and ATM VC Switching.Internet Draft,April 1999

6 B Jamoussi,et al.MPLS Ships in the Night Operation with ATM.Internet Draft,August 1998

7 I Widjaja,Anwar I Elwalid.Performance Issues in VC-Merge Capable Switches for Multiprotocol Label switching.IEEE JSAC,1999,17(6):1178-1189

8 D Ooms ,et al.Framework for IP Multicast in MPLS. Internet Draft,August 1998

9 Y Ohba,et al.MPLS Loop Prevention Mechanism. In-ternet Draft,May 1999

10 Y Ohba.Issues on Loop Prevention in MPLS Net-works. IEEE Commun Magazine,1999,37(12):64-68

 

(收稿日期:2000-06-12)