APP下载

基于MPLS VPN的组播研究

2010-09-25刘晓燕王志刚于惠钧

通信技术 2010年7期
关键词:数据流路由器报文

刘晓燕, 王志刚, 于惠钧

(①株洲职工大学 信息技术系,湖南 株洲 412008;②中山火炬职业技术学院,广东 中山 528436;③湖南工业大学 电气与信息工程学院,湖南 株洲 412008)

0 引言

组播是基于将一台发送者的数据同时发送给多个接收者,从而达到优化使用带宽的路由技术,允许 IP 数据流从一个源或多个源发送到多个目的地。组播技术主要是依靠将某一组播地址(包含了多个目的地址)作为信息的目的地址,并使用最高效的传输策略。MPLS的基本工作原理是当一个未被标记的分组到达MPLS 边缘路由器LER时,入口的边缘路由器 LER根据输入分组头本身的包头信息和本身包含的路由信息等确定通向目的地的标记交换路径LSP,把对应LSP的标记Lable插入到分组头中,完成IP地址与MPLS标记Lable的映射,从而实现通过标记Lable来转发数据。当然在实际映射过程中,IP地址与Label的映射规则不但考虑数据流目的地的信息,还考虑了链路状态及QoS等信息。这样,MPLS可提供高性价比和多业务能力的转发数据的能力,解决了传统IP分组交换的局限性,在业界受到了广泛的关注和应用。同时MPLS技术可以提供灵活的流量工程、虚拟专网等功能,而且MPLS的信令可实现涉及多层网络控制与管理的功能,最终达到灵活网管的目的。

1 MPLS VPN组播模型

传统的MPLS VPN组播模型如图1所示。在支持组播的网络中,各节点使用组播路由协议(如DVMRP、PIM、CBT等)建立组播树。业务源的业务流量根据建立的组播树进行传播,最终到达该组播组的各个成员。在MPLS VPN环境下,组播流量就要沿着建立组播树时建立的标签交换路径 LSP进行交换,这样的标签交换路径LSP叫做组播LSP。如图1所示,由组播路由协议生成的路由树映射到组播LSP上,在LSR上存在一个入标签对应于多个出标签[1]。

对MPLS VPN技术本身而言,在进行标签映射时存在一定的局限,包括标签空间有限及二层技术不支持多点到点和多点到多点的链接等。在组播的情况下这些局限更加突出:组播树在建立过程中需消耗大量的标签值,组播情况下存在点到多点、多点到多点的链接。所以,必须对现有的各种机制进行改进,满足在MPLS技术下实现克服以上缺陷的组播。

图1 MPLS VPN组播组网

2 标签交换机制和模型

当数据流进入MPLS网络时,入口标签交换边缘路由器LER首先将数据流映射到某个转发等价类 FEC(转发等价类是指网络中沿相同路径进行转发的一类分组的集合),再将对应的FEC映射到对应的标签值,根据映射的标签值为对应的分组加上固定长度的标签。每个FEC对应的标签是根据各种路由协议及业务特性等分发给对应 LSP的标签交换路由器LSR和标签边缘路由器LER。数据流一旦进入MPLS网络,标签交换路由器 LSR不再根据原来的分组中的信息转发数据,而只是仅仅根据分组所携带的标签进行交换和转发。由于分组在通过网络时只需一次路由,无需路由判断,从而提高了转发速度。CR-LDP是根据明确的路由约束、服务质量(QoS)约束及其它约束,建立一个标签交换路径 LSP,从而避免了以前 LDP协议分发标签时只是根据传统路由协议来分发标签;避免了传统LSP会出现部分网络拥塞而其它部分仍有可用资源,极大地浪费了网络资源。CR-LDP在分发标签时充分考虑了带宽的可用性和业务特性,避免了拥塞的发生,充分利用了网络带宽资源[2-3]。

标签交换发起(即LSP 建立的过程)方式主要有三种:请求驱动、拓扑驱动和流量驱动。

2.1 请求驱动方式

请求驱动方式是指标签边缘路由器 LER通过侦听控制协议的消息来触发标签的分发,该节点根据其他节点的请求信息,对请求信息发送对应的LSP的标签。图2描述了请求驱动的一般过程。下游的 LSR(LSRd)发送一个控制消息到上游LSR(LSRu)。在第一种情况下,LSRu 侦听到控制消息,它的MPLS 模块决定建立一条 LSP,于是它发送 LDP绑定(上游主动模式) 或者LDP绑定请求(下游按需模式) 控制消息给 LSRd。同理,图中的右半部分描述了 LSRd在发送控制消息的同时,触发建立LSP。

图2 两种请求驱动的报文

2.2 拓扑驱动方式

拓扑驱动方式是指MPLS路由器将网络层的路由协议形成的网络拓扑结构映射成标签交换路径,同时在网络拓扑结构发生变化时建立相应的LSP。对于拓扑驱动,路由器的组播路由协议模块负责维护组播路由表(MRT),接着MPLS 的控制单元负责把组播路由表MRT映射到点到多点(p2mp)LSP上。

一般而言,拓扑驱动方式与请求驱动方式可结合使用,一般称为控制驱动。控制驱动技术的关键技术在于拓扑的变化和组播成员的动态加入,会导致控制报文流量的增加;另外上游LSR向下游LSR请求标签的时候,在MPLS网络中的某个节点上存在一个入标签对应多个出标签的情况,要消耗大量的标签值。

2.3 流量驱动方式

流量驱动是指在某一个边缘路由器 LSR 收到新的业务流时,路由器本身的信息确定该业务流的FEC,再根据FEC决定是否发起标签的申请或分发。流量驱动技术本身存在的问题在于需转发的数据流中可能包含非标签交换的分组,而这些分组须通过上层的控制单元来实现转发。在实际应用中,网络处理器可以实现高效的流的鉴别,但是标签分发还是要使用软件来处理。

数据流驱动情况下,影响性能的主要因素包含网络路由器的控制单元本身的处理能力和数据流中非标签交换分组所占的比例(p):

转发性能=控制单元交换能力×p+硬件转发能力×(1- p)

在组播情况下,流量驱动技术的优势主要体现在:有新的数据流时才触发标签的分发,这样减少了标签的消耗。这种由数据流驱动方式建立的 LSP在实际应用中更符合组播基于组播树的结构。

2.4 三种驱动方式的比较

表1列出了组播情况下三种驱动方式的比较。从表中可看出:流量驱动的可靠性同控制驱动相比较要差得多,主要原因是由于数据流驱动技术受数据流变化的影响,数据流的变化非常频繁而且难以预测;而控制驱动主要受控制流包括拓扑结构、用户请求、组播成员变化等因素的影响,而这些因素相对数据流的变化来说是较少的,而且变化基本上是相对稳定的。

表1 标签分发驱动方式比较

3 信令协议支持

MPLS的信令协议本身可以支持组播。在MPLS VPN支持组播的信令协议包括资源预留协议RSVP协议和标签分发协议LDP协议两种。

3.1 RSVP协议

RSVP(Resource Reservation Protocol)是一种主要用于支持多媒体通信的路由层协议,用于在无连接协议上提供端到端的实时传输服务,为特定的多媒体流提供端到端的QoS保证和控制功能,以达到减小网络传输延迟和提供一定的带宽保证。其基本的工作原理是:发送方在发送数据前首先发送Path报文用于与接收者建立一个传输路径。当然在Path报文中包含有数据流标识符(ID)和其它控制信息,沿途的各个路由器都登记该流标识符,并在资源允许的情况下为该流标识做好预留必须资源的准备。在接收方收到相应的Path报文后,则使用相同的流标识符发送一个Path报文的Resv应答报文。Resv报文沿完全相反的路径传送给发送方,途经各个路由器时,对Path报文指定的QoS参数给予确认。在确认无误的情况下,发送方和接收方之间可以通过这条路径传输数据流,沿途的各个路由器为该数据流保留必须的资源,按所协商的QoS参数提供满足相应的QoS要求的转发服务[4]。

RSVP的资源预留主要是针对路由器端口的,路由器通过使用Filterspec和Flowspec为相应的端口定义其保留模式,并对资源预留操作过程进行控制。RSVP可用的保留模式主要有[5]:

①Fixed Filter(FF),用于单播;

②Shared Explicit(SE), 用于组播;

③Wildcard Filter(WF),用于广播。

其中,用于组播模式的SE模式允许接收方明确规定其选择的发送方集合,并为所选择的上游发送方(源)创建一个共享的预留,同时可允许新建立的LSP隧道与以前建立的LSP隧道共享特定的网络资源,这样就适合组播成员的加入和退出该组播组。

3.2 LDP协议

LDP是用于控制标签交换路由器 LSR之间交换标签与FEC对应的绑定,协调LSR间协同工作的一系列规程。LDP与传统网络中的信令协议类似,用于动态生成标记,负责FEC分类、标记分配分发、建立维护LSP。

目前主要研究了三种标记分发协议:

①基本的标签分发协议LDP;

②基于显式路由的CR-LDP;

③扩展的资源预留协议RSVP-TE。

其中,CR-LDP是基本的LDP协议的扩展。该协议采用标准的LDP消息,与LDP共享建立的TCP连接。CR-LDP与基本的 LDP区别在于通过网络管理员制定或是在路由器在路由计算中引入约束参数的方法建立显式路由,CR-LDP在流量参数、抢占资源、显示路由、锁定路由、资源分类以及标记请求和标记映射消息等方面对LDP进行了扩展,提供了一种简单的、可用硬件实现的LSP,同时可有效的支持流量工程等功能[6]。

对CR-LDP的消息进行扩展,可以在MPLS网络中建立组播路径和LSP,从而可实现支持流量工程的组播路径。利用 LSP-ID TLV机制,在 MPLS网络中的 LSP-ID 和入口LSR-ID,利用这两个控制标记,网络中各个节点可以唯一确定数据流分组传送的起始节点。

3.3 RSVP和LDP的比较

RSVP和LDP的比较主要在以下四个方面:

①网络结构:在组播的情况下,RSVP采用源树结构,LDP采用目的树结构;

②可靠性:RSVP协议使用的是UDP,控制信令采用不可靠传输的传输方式,LDP使用的TCP,提供可靠的传输;

③多样性:在标签分配时,RSVP只支持下游按需标签分发,LDP支持多种标签分发方式;

④可维护性:RSVP协议采用的是软状态技术,路由器必须周期性的维护RSVP的状态信息,势必会带来附加的一些网络开销,而LDP是基于硬状态技术,不需要周期性的维护状态信息,减少了不必要的网络开销。

4 可行的MPLS VPN组播方案

目前存在多种组播路由协议, 如 DVMRP、PIM-SM、PIM2DM和CBT等。它们在树类型、控制消息开销、计算复杂性、延迟等方面分别具有不同的优势。为提高网络性能,在MPLS VPN环境下,需要考察组播路由协议的下列特性:

①算法本身的聚合性;

②控制信息的泛洪和剪枝性;

③源树、目的树及共享树的共存性;

④共享树的单向、双向特性;

⑤组播数据的封装效率;

⑥环回性。

针对MPLS 与多种组播路由协议相关时要考虑的问题,可以从中分析MPLS在于各种协议协同工作时的优缺点。

①DVMRP和PIM-DM使用泛洪剪枝的方式来建立组播树,在组播树建立的过程中要消耗大量的标签值;同时,该协议组播树采用源树的方式,不存在合并问题,但也会带来网络资源的浪费;

②MOSPF不使用泛洪剪枝,其使用源树,但是由于协议本身的特性导致LSP的建立时间会比较长,很难做到网络拓扑的快速收敛;

③CBT和PIM-SM、SSM不使用泛洪剪枝,不会消耗大量标签;但是,他们都采用双向共享树,会产生大量的合并点,这样就会节省网络的带宽资源。但LSP的建立时间会比较长,不利于网络拓扑的快速收敛。

从以上分析可知,实现MPLS VPN组播包含多种技术,同时也并非各种技术组合都适用。按照标签分发协议的不同,可采用的组播方案分成两大类,在权衡各种因素后可在这两大类可选方案采用适合本身要求的解决方案。

①RSVP方式。该协议使用数据驱动发起标签的申请和分发,采用支持源树的组播路由协议,主要选择了比较流行的组播路由协议;

②LDP方式。使用控制驱动发起标签申请和分发,支持源树的组播路由协议PIM-SM、MOSPF等。

对于以上两种方式,都需要解决的问题包括TTL、MPLS VPN组播流量工程以及安全等问题。

5 结语

随着光波路由技术的发展,光波长路由器间交换控制信息和建立光通路所用的协议MPLS将逐渐与IP层面的MPLS互通,从而为IP Over Optical网络建立起统一的、开放的、标准的控制平面提供了可靠的技术支持和保证。在MPLS 组播方案由于解决实际的网络应用时,不单单要考虑技术的可行性和先进性,还要考虑与目前网络中采用的协议的兼容性,真正实现MPLS对多协议的支持。

[1] OOMS D, SALES B, LIVENS W, et al. Overview of IP Multicast in a Multi-Protocol Label Switching (MPLS) Environment[S].[s.l.]:RFC,2002.

[2] 韩波,沈富可.BGP/MPLS VPN在NS-2中的实现[J].计算机应用, 2006,4(26):980-982.

[3] 董玲,黄杨.BGP/MPLS VPN实现细节探讨[J].计算机工程与应用,2005,41(29):117-119.

[4] WANG Z,CROW C J.Quality-of-service for Routing Supporting Multimedia Applications[J].IEEE Journal of Selected Areas in Communications,1996,14(07):131-162.

[5] CHUNG Jongmoon, MAURICIO A S B, HARLEEN Chhabra, et al. RSVP-TE Extensions for MPLS Multicasting Services[S].USA:[s.n.],2002.

[6] CHUNG Jongmoon, MAURICIO A A S B, HARLEEN Chhabra, et al. LDP Extensions for MPLS Multicasting Services[S]. USA:[s.n.],2002.

猜你喜欢

数据流路由器报文
基于J1939 协议多包报文的时序研究及应用
买千兆路由器看接口参数
维持生命
路由器每天都要关
路由器每天都要关
汽车维修数据流基础(上)
CTCS-2级报文数据管理需求分析和实现
汽车维修数据流基础(下)
浅析反驳类报文要点
ATS与列车通信报文分析