• 文章搜索:
  • 目录

        • 分享到...

        • 新浪微博
        • 腾讯微博
        • 推荐到豆瓣 豆瓣空间
        • 分享到搜狐微博 搜狐微博
        • 分享到QQ空间 QQ空间
        • 分享到腾讯朋友 腾讯朋友
        • 网易微博分享 网易微博
        • 添加到百度搜藏 百度搜藏
        • 转贴到开心网 开心网
        • 转发好友 告诉聊友
    • 推荐
    • 打印
    • 收藏

    MPLS TE

    作者:  |  上传时间:2011-04-22  |  关键字:网络大爬虫4-QoS专题

    文/邹旭东

    1 MPLS和流量工程简介

    MPLS(Multiprotocol Label Switching)是多协议标签交换的简称,它用短而定长的标签来封装网络层分组。MPLS从各种链路层(如PPP、ATM、帧中继、以太网等)得到链路层服务,又为网络层提供面向连接的服务。MPLS能从IP路由协议和控制协议中得到支持,同时,还支持基于策略的约束路由,它路由功能强大、灵活,可以满足各种新应用对网络的要求。这种技术起源于IPv4,但其核心技术可扩展到多种网络协议(IPv6、IPX等)。MPLS最初是为提高路由器的转发速度而提出的一个协议,但是,它的用途已不仅仅局限于此,而是广泛地应用于流量工程(TE - Traffic Engineering)、VPN、QoS等方面,从而日益成为大规模IP网络的重要标准。

    基于MPLS的流程工程即MPLS TE,正在成为一种重要的QoS工具,能够提供网络流量管理、减少拥塞等功能。同时,MPLS快速重路由(Fast Re-Route)技术在提高MPLS网络可靠性中扮演了重要角色。这种技术借助MPLS流量工程(Traffic Engineer)的能力,为LSP提供快速保护倒换。MPLS快速重路由事先建立本地备份路径,保护LSP不会受链路/节点故障的影响。当故障发生时,检测到链路/节点故障的设备可以快速将业务从故障链路切换到备份路径上,从而减少数据丢失。快速响应、及时切换是MPLS快速重路由的特点,它可以保证业务数据的平滑过渡,不会导致业务中断;同时,LSP的头节点会尝试寻找新的路径来重新建立LSP,并将数据切换到新路径上,在新的LSP建立成功之前,业务数据会一直通过保护路径转发。

    2 MPLS基本概念

    2.1 转发等价类(FEC

    FEC(Forwarding Equivalence Class)是MPLS中的一个重要概念。MPLS实际上是一种分类转发技术,它将具有相同转发处理方式(目的地相同、使用转发路径相同、具有相同的服务等级等)的分组归为一类,称为转发等价类,属于相同转发等价类的分组在MPLS网络中将获得完全相同的处理。

    2.2 标签

    标签是一个长度固定、具有本地意义的短标识符,用于标识一个FEC。当分组到达MPLS网络边界时,入口路由器按一定规则划分分组所属的FEC,将对应的标签嵌入到分组头部。这样,MPLS在网络中,按标签进行分组转发即可。标签的结构如图1所示。

    图1 标签的结构

    标签位于链路层包头和网络层分组之间,长度为4个字节。标签共有4个域:

    l Label:标签值字段,长度为20bits,用于转发的指针。

    l Exp:3bits,保留,协议中没有明确规定,通常用于COS。

    l S:1bit,MPLS支持标签的分层结构,即多重标签。值为1时表明为最底层标签。

    l TTL:8bits,和IP分组中的TTL意义相同。

    3 MPLS TE及其四个构件

    传统的路由器选择最短的路径进行路由,不考虑带宽等因素,这样,即使某条路径发生拥塞,也不会将流量切换到其他的路径上。在网络流量比较小的情况下,问题不是很严重,但是随着Internet的应用越来越广泛,传统的最短路径优先路由的问题暴露无遗。

    MPLS TE是一种将流量工程技术与MPLS模型相叠加结合的技术。通过MPLS TE,可以建立指定路径的LSP隧道,进行资源预留;并且可以进行定时优化,在资源紧张的情况下,依据优先级和抢占参数,抢占低优先级LSP隧道的带宽资源等。同时,MPLS TE还可以通过备份路径和快速重路由技术,在链路或节点失败的情况下,提供路由保护。

    MPLS TE的实现需要四个部分:

    l 网络信息搜集,通过OSPF/ISIS 的TE扩展实现;

    l 路径计算,通过CSPF来实现;

    l 建立LSP的信令,采用RSVP TE或CR-LDP协议;

    l MPLS转发。

    图2 MPLS TE的四个组件

    3.1 报文转发组件

    MPLS TE报文转发组件是基于标签的,通过标签交换沿着预先建立好的LSP进行报文转发。由于LSP隧道的路径可以指定,因而可以避免IGP的弊端。

    3.2 信息发布组件

    除了网络的拓扑信息外,流量工程还需要知道网络的动态负载信息。为此,引入信息发布组件,通过对现有的IGP进行扩展来发布链路状态信息,比如在IS-IS协议中引入新的TLV,或者在OSPF中引入新的LSA。具体来说这些链路状态信息主要包括:

    l 本端IP地址

    l 对端IP地址

    l 链路的带宽

    l 链路的最大可预留带宽

    l 链路的着色

    l 链路的8个优先级的未被预留带宽

    其中最重要的是链路的最大可预留带宽和每个优先级的链路未被预留带宽,它们携带了链路的主要带宽信息。每个路由器都在本区域内发布自己的链路流量工程信息,同时学习其他路由器的信息,形成流量工程数据库TED。

    3.3 路径选择组件

    路径选择组件通过CSPF算法进行约束路由计算。约束路由计算的输入有两个:一个就是通过ISIS或OSPF流量工程扩展产生的TED。另一个是通过约束路由指定的数据转发路径,即在每个入口路由器上指定LSP隧道经过的路径。这种约束路由可以是严格的,也可以是松散的;可以指定必须经过某个路由器,或者不经过某个路由器;可以逐跳指定,也可以指定部分跳。此外,约束路由还可指定带宽、着色、抢占/保持优先级等约束条件。

    有了以上两个输入,约束路由计算从逻辑上来说就是针对LSP的要求,对流量工程数据库中的链路进行裁剪:把不满足带宽要求的链路剪掉,把不满足颜色要求的链路也剪掉。然后,采用OSPF或ISIS的最短路径算法(SPF算法)在裁剪以后的拓扑中进行计算,得到一条满足LSP的约束条件的最短路径。这里值得注意的是传统ISIS或OSPF的SPF计算得出某个路由的下一跳就是直接的下一跳,每一个路由器都需要运行SPF算法。CSPF计算的结果是一条满足约束条件的完全约束路径,计算过程通常只在需要建立LSP的入口点进行。这条约束路径要起作用必须通过MPLS信令建立起LSP,MPLS信令把CSPF计算出来的严格约束路径通过信令中的约束路径扩展信息传到下游节点。LSP建立成功以后,入口路由器把需要进入这个LSP的IP包打上相应的MPLS标签,沿着LSP向下转发,直到到达LSP的出口。

    3.4 信令组件

    信令组件的作用是预留资源,建立LSP。LSP隧道的建立可以通过CR-LDP或RSVP-TE协议完成。这两种信令都可以支持LSP的建立、约束路由、资源信息携带等功能。

    以RSVP-TE为例,为了能够建立LSP隧道,对RSVP协议进行扩展,在RSVP PATH消息中引入Label Request对象,支持发起标签请求;在RSVP RESV消息中引入Label对象支持标签分配,这样就可以建立LSP隧道了。为了支持约束路由,在RSVP RESV消息中又引入Explicit Route对象。

    4 MPLS TE与QoS

    人们希望IP网络能够提供高带宽、低延时的服务,这就要求在IP网上实现一定的QoS功能。由于IP网天生是一种面向无连接的网络,IP网中不可能实现和ATM网一样强大的QoS功能。在IP网中实现QoS的一个基本要求就是对现有网络结构改变尽量小。IP网中影响QoS的最主要原因是网络存在拥塞,IP包的网络延时主要来自于路由器调度时的排队延时。在一个没有拥塞的网络中QoS是可以得到很好的保证的,而流量工程的作用就是调配网络流量使得LSP的流量能够避开网络拥塞点,从而达到均衡网络流量,减少网络的拥塞的目的。从这个意义上讲,流量工程正是一种QoS机制!

    另外采用MPLS流量工程可以支持快速重路由。在发现链路或路由器故障以后,通过硬件直接切换链路,可以做到从链路故障到快速重路由切换成功的延时小于50ms。