一种mpls te分组转发与管理方法及装置制造方法
【专利摘要】本发明提供一种MPLS?TE分组转发与管理方法及装置,应用于运营商边缘PE设备上,该方法包括:创建TE隧道组TEG以及TEG映射表,每个TEG的优先级对应于不同的用户报文优先级;为每一转发表项中的下一跳创建对应的偏移子表;根据TEG的优先级将与下一跳对应的TE隧道存储到该偏移子表中相应的偏移表项中;根据用户报文优先级查询TEGB以确定对应的TEG的优先级;在对用户报文进行转发时,确定其下一跳对应的偏移子表,根据TEG的优先级从对应的偏移表项中获得一个或多个TE隧道,根据分担算法在一个或多个TE隧道中选择一个转发该用户报文。本发明能够充分利用不同链路的带宽,将业务优先级与TEG关联,简化了组网与管理工作。
【专利说明】—种MPLS TE分组转发与管理方法及装置
【技术领域】
[0001]本发明涉及数据通信领域,尤其涉及一种灵活的MPLS TE分组转发与管理方法及
>J-U ρ?α装直。
【背景技术】
[0002]MPLS (多协议标签交换)技术是一种热门的网络技术,其设计的初衷是为了提高转发速度而提出的。与传统IP路由方式相比,它在数据转发时,只在网络边缘分析IP报文头,而不用在每一跳都分析IP报文头,从而节约了处理时间。MPLS VPN (虚拟专用网络)是在MPLS技术上发展起来的一种VPN技术。VPN技术广泛应用于大型企业组网中,请参考图1所示的某大型企业网组网简化示例图。在该组网架构下,各城市节点网络通过广域网(可理解为广域专线)或用户自建网络互连,PE与PE之间组网称为为MPLS L3 VPN组网。数据中心在各个城市间的数据互备业务、企业内网用户及外网用户(比如企业的客户)所产生的用户数据报文通过所在城市的PE设备接入广域网实现互通。
[0003]由于大型企业对带宽要求很高,其需求可能高达几十甚至上百Gbps,因此广域专线或用户自建网络都可能为多条链路。比如如数据中心站点间数据互备业务,由于该业务流量巨大对带宽要求高,因此很多时候需要使用多条链路承载才能满足其对带宽的要求。正是由于各业务优先级及数 据流量存在显著的差异,同时考虑到广域网各链路带宽及转发成本也不同,因此需要同时部署MPLS TE (流量工程)技术来合理利用广域资源,解决可能发生的负载不均衡导致的拥塞问题。
【发明内容】
[0004]有鉴于此,本发明提供一种MPLS TE分组转发与管理装置,应用于运营商边缘PE设备上,该装置包括:配置管理单元、表项处理单元、业务分类单元以及转发处理单元,其特征在于:
[0005]配置管理单元,用于根据用户配置指令创建一个或多个TE隧道组TEG以及TEG映射表(TEGB),其中每个TEG包括一个或多个TE隧道,TEGB中每个TEG具有不同的优先级,且分别对应于不同的用户报文优先级;
[0006]表项处理单兀,用于在创建转发表时为每一转发表项中的下一跳创建对应的偏移子表,其中该偏移子表包括N个偏移表项;该表项处理单元进一步用于根据TE隧道所属的TEG的优先级将与下一跳对应的TE隧道存储到该偏移子表中相应的偏移表项中,其中N为TEG的数量;
[0007]业务分类单元,用于在PE设备从用户侧接收到用户报文时,根据该用户报文的优先级查询TEGB,确定与该报文优先级对应的TEG的优先级;
[0008]转发处理单元,用于在对用户报文进行转发时,根据用户报文的目的IP地址确定其下一跳对应的偏移子表,根据TEG的优先级从对应的偏移表项中获得对应一个或多个TE隧道,然后根据预设的分担算法在获得的一个或多个TE隧道中选择TE隧道作为出口链路转发该用户报文。
[0009]本发明还提供一种MPLS TE分组转发与管理方法,应用于运营商边缘PE设备上,其特征在于,该方法包括:
[0010]步骤A、根据用户配置指令创建一个或多个TE隧道组TEG以及TEG映射表(TEGB),其中每个TEG包括一个或多个TE隧道,TEGB中每个TEG具有不同的优先级,且分别对应于不同的用户报文优先级;
[0011]步骤B、在创建转发表时为每一转发表项中的下一跳创建对应的偏移子表,其中该偏移子表包括N个偏移表项;根据TE隧道所属的TEG的优先级将与下一跳对应的TE隧道存储到该偏移子表中相应的偏移表项中,其中N为TEG的数量;
[0012]步骤C、在PE设备从用户侧接收到用户报文时,根据该用户报文的优先级查询TEGB,确定与该报文优先级对应的TEG的优先级;
[0013]步骤D、在对用户报文进行转发时,根据用户报文的目的IP地址确定其下一跳对应的偏移子表,根据TEG的优先级从对应的偏移表项中获得对应一个或多个TE隧道,然后根据预设的分担算法在获得的一个或多个TE隧道中选择TE隧道作为出口链路转发该用户报文。
[0014]相较于现有技术,本发明不仅能够充分利用不同链路的带宽,还能够将业务优先级与TE隧道组关联,简化了组网与管理工作。在优选的方案中,还可以按照TEG隧道组对带宽进行调整,避免了现有技术中呆板的调整机制。
【专利附图】
【附图说明】
[0015]图1是一种企业VPN组网的简化示意图。
[0016]图2是另一种企业VPN组网的简化示意图。
[0017]图3是本发明一种实施方式中MPLS TE分组转发与管理装置的逻辑结构以及基本硬件环境的逻辑结构图。
[0018]图4是本发明一种实施方式中MPLS TE分组转发与管理方法的处理流程图。
[0019]图5是本发明一种实施方式中一种不例性的VPN组网图。
[0020]图6是图5基础上每个TE險道的路径不意图。
【具体实施方式】
[0021]目前单纯的MPLS TE面临的问题是,该技术无法区分入进入MPLS隧道业务负载的优先级。所谓业务负载也就是MPLS报文内部封装的内容,通常会是一个基于IP协议的用户报文。作为隧道入口的PE (Provider Edge,运营商边缘)设备无法根据业务负载的优先级或其他相应的特征分别将报文转发到不同的TE隧道。在TE隧道的承载链路多样化的情况下,该技术无法充分合理利用现有链路资源。为解决上述问题,企业通常在网络部署时先将网络上可能出现的业务归类,将不同种类的业务通过不同的CE (Custom Edge,用户边缘)设备接入PE并被划分到不同的VPN中。请参考图2,以西安站点为例,CE1、CE2、CE3通过PEl接入,分别绑定不同的VPN用于接入不同的业务,如CEl负责接入数据中心城市站点间数据互备业务,而CE2负责接入企业内部用户的数据业务,CE3则负责接入企业外网用户的数据业务。[0022]由于不同的业务通过不同的VPN接入,通过路由策略等配置可以使不同VPN的数据流量分别进入为其预先划分好的特定TE隧道。而TE隧道本身所具备的资源预留及带宽抢占等特性可以保证其负载报文得到转发。在单路承载链路无法满足业务需求时,通过建立多条TE形成等价链路,进行负载分担。此外,在安全性和可靠性要求比较高的应用场景中,还可以通过备用链路建立备份LSP对主LSP进行保护或通过快速重路由技术在主备LSP之间进行切换。
[0023]这样的解决方案是一种不够智能的解决方案,首先其会导致网络管理员的配置工作量很大,导致部署执行难度较大。其次,管理员需要预先规划网络业务类型和TE隧道的对应关系,扩展性和灵活性都比较差,网络部署完成后,后期新增业务也需要新增VPN及相应的TE隧道配置。再次,这种方式的成本高,由于不同的业务需要通过不同的设备或接口接入,这意味着业务种类划分越多,企业用户需要购买的接入设备就越多;最后,由于TE隧道带宽受限于承载链路带宽,当需求带宽大于承载链路实际带宽时,就无法做到按需扩展带宽了。使用等价TE隧道进行负载分担可以缓解这个问题。
[0024]但这种带宽的抢占和扩展不能在等价组层面来实现。比如一个等价组中两个等价TE隧道,TEA带宽为80M,TEB带宽为20M,TEA和TEB为一个业务提供100M带宽,负载分担的比例是4:1。假设现在业务需求增加了,需要等价组提供150M的带宽。此时需要额外从TEA和TEB所在链路上抢占50M。在现在的技术只能由TEA和TEB两个TE隧道按照分担比例分别抢占40M和IOM的带宽,这种按单个TE隧道的抢占可能造成流量拥塞。假设TEA所在链路带宽已经基本耗尽,但却需要按照负载分担比例抢占40M带宽,而TEB所在另一条链路还有100M空闲带宽的情况下,TEB却只需要抢占10M。TEA抢占失败但无法移至带宽富足的链路继续抢占。由此可见两条链路加起来物理带宽是足够的,但却抢占不到足够的带宽而出现丢包。
[0025]本发明提供一种更加灵活的TE分组转发与管理解决方案来解决上述技术问题。以计算机程序实现为例,在一种优选的实施方式中,本发明提供一种MPLS TE分组转发与管理装置,该装置可运行在PE设备上。请参考图3,PE设备包括CPU、内存、非易失性存储器以及包括转发芯片在内的其他业务硬件。CPU可以将该对应的计算机程序加载到内存中运行形成该装置,在逻辑层面,该装置包括:配置管理单元、表项处理单元、业务分类单元、转发处理单元、带宽统计单元以及带宽调整单元。请参考图3以及图4,以IPv4实现为例(IPv6同样适用),该装置运行过程中执行如下方法流程。
[0026]步骤101,配置管理单元根据用户配置指令创建一个或多个TE隧道组TEG以及TEG映射表(TEGB),其中每个TEG包括一个或多个TE隧道,所述TEGB中每个TEG具有不同的优先级,且分别对应于不同的用户报文优先级;
[0027]步骤102,表项处理单兀在创建转发表时为每一转发表项中的下一跳创建对应的偏移子表,其中该偏移子表包括N个偏移表项,其中N为TEG的数量;
[0028]步骤103,表项处理单元进一步根据TE隧道所属的TEG的优先级将与下一跳对应的TE隧道存储到该偏移子表中相应的偏移表项中;
[0029]步骤104,业务分类单元在PE设备从用户侧接收到用户报文时,根据该用报文的优先级查询TEGB,确定与该报文优先级对应的TEG的优先级;
[0030]步骤105,转发处理单元在对用户报文进行转发时,根据用户报文的目的IP地址确定其下一跳对应的偏移子表,根据TEG的优先级从对应的偏移表项中获得对应一个或多个TE隧道;
[0031]步骤106,转发处理单元进一步根据预设的分担算法在获得的一个或多个TE隧道中选择TE隧道作为出口链路转发该用户报文。
[0032]在一些大型的企业网络中,其分支机构可能遍布全国乃至全球,数量可能有数十个甚至数百个,所有分支机构之间运营商提供的广域专网(通常是VPN服务)来相互连接。本发明中为了更方便阅读者理解,仅以该企业用户有三个分支机构为例进行说明,请参考图5,每个分支机构称为一个Site,每个Site的CE设备通过一个PE设备连接到运营商网络中来,通过运营商网络提供的MPLS VPN服务实现网络连接。
[0033]PE设备的管理者是运营商网络的管理员,以PEl上的实现为例,运营商网络的管理员可以预先创建一个TEG或者多个优先级不同的TEG。每个TEG可以包括一个或者多个TE隧道。请参考图6以及表1,管理员可以在PE1>P1>PE2这一路径上创建TEl以及TE5 ;在PE1>P2>PE2这一路径上创建TE2以及TE6 ;在PE1>P1>PE3这一路径上创建TE3以及TE7 ;在PE1>P2>PE3这一路径上创建TE4以及TE8。其中TE1-4四个TE隧道被分配到TEGl中,而TE5-8四个TE隧道被划分到TEG2中,后文假设TEGl的优先级高于TEG2的优先级。
[0034]
【权利要求】
1.一种MPLS TE分组转发与管理装置,应用于运营商边缘PE设备上,该装置包括:配置管理单元、表项处理单元、业务分类单元以及转发处理单元,其特征在于: 配置管理单元,用于根据用户配置指令创建一个或多个TE隧道组TEG以及TEG映射表(TEGB),其中每个TEG包括一个或多个TE隧道,TEGB中每个TEG具有不同的优先级,且分别对应于不同的用户报文优先级; 表项处理单兀,用于在创建转发表时为转发表项中的下一跳创建对应的偏移子表,其中该偏移子表包括N个偏移表项;该表项处理单元进一步用于根据TE隧道所属的TEG的优先级将与下一跳对应的TE隧道存储到该偏移子表中相应的偏移表项中,其中N为TEG的数量; 业务分类单元,用于在PE设备从用户侧接收到用户报文时,根据该用户报文的优先级查询TEGB,确定与该报文优先级对应的TEG的优先级; 转发处理单元,用于在对用户报文进行转发时,根据用户报文的目的IP地址确定其下一跳对应的偏移子表,根据TEG的优先级从对应的偏移表项中获得对应的一个或多个TE隧道,然后根据预设的分担算法在获得的一个或多个TE隧道中选择TE隧道作为出口链路转发该用户报文。
2.如权利要求1所述的装置,其特征在于:所述用户报文的优先级由一个或多个优先级参数确定,其中该优先级参数包括用户报文的DSCP、源IP地址、协议类型、TCP/UDP端口号以及用户报文的入端口。
3.如权利要求1所述的装置,其特征在于:还包括带宽统计单元以及带宽调整单元;其中 带宽统计单元,用于按照预定的统计周期统计出本统计周期内的各个TEG的平均统计带宽Bi ; 带宽调整单元,用于在预定的调整周期到达时,确定各个TEG在本调整周期内Bi的最大值Bimax ;并在Bimax没有大于预设的最大配置带宽Bpmax或没有小于预设的最小配置带宽Bpmin情况下将该TEG的占用带宽Bmax调整为Bimax ;在Bimax大于Bpmax或小于Bpmin 时,将 Bmax 调整为 Bpmax 或 Bpmin。
4.如权利要求3所述的装置,其特征在于:所述带宽调整单元进一步用于在提升TEG的Bmax之前,检查剩余的空闲物理带宽是否满足调整需求,如果是,则将该TEG的Bmax调整为Bimax,否则抢占低优先级的TEG的占用带宽。
5.如权利要求3所述的装置,其特征在于:所述带宽调整单元进一步用于在调整TEG的Bmax时,遍历该TEG中TE隧道逐一选择TE隧道进行带宽调整直到调整目标完成或无可选TE隧道。
6.一种MPLS TE分组转发与管理方法,应用于运营商边缘PE设备上,其特征在于,该方法包括以下步骤: 根据用户配置指令创建一个或多个TE隧道组TEG以及TEG映射表(TEGB),其中每个TEG包括一个或多个TE隧道,TEGB中每个TEG具有不同的优先级,且分别对应于不同的用户报文优先级; 在创建转发表时为转发表项中的下一跳创建对应的偏移子表,其中该偏移子表包括N个偏移表项;根据TE隧道所属的TEG的优先级将与下一跳对应的TE隧道存储到该偏移子表中相应的偏移表项中,其中N为TEG的数量; 在PE设备从用户侧接收到用户报文时,根据该用户报文的优先级查询TEGB,确定与该报文优先级对应的TEG的优先级; 在对用户报文进行转发时,根据用户报文的目的IP地址确定其下一跳对应的偏移子表,根据TEG的优先级从对应的偏移表项中获得对应的一个或多个TE隧道,然后根据预设的分担算法在获得的一个或多个TE隧道中选择TE隧道作为出口链路转发该用户报文。
7.如权利要求6所述的方法,其特征在于:所述用户报文的优先级由一个或多个优先级参数确定,其中该优先级参数包括用户报文的DSCP、源IP地址、协议类型、TCP/UDP端口号以及用户报文的入端口。
8.如权利要求6所述的方法,其特征在于:还包括: 按照预定的统计周期统计出本统计周期内的各个TEG的平均统计带宽Bi ; 在预定的调整周期到达时,确定各个TEG在本调整周期内Bi的最大值Bimax ;并在Bimax没有大于预设的最大配置带宽Bpmax或没有小于预设的最小配置带宽Bpmin情况下将该TEG的占用带宽Bmax调整为Bimax ;在Bimax大于Bpmax或小于Bpmin时,将Bmax调整为 Bpmax 或 Bpmin0
9.如权利要求8所述的方法,其特征在于:该方法还包括: 在提升TEG的Bmax之前,检查剩余的空闲物理带宽是否满足调整需求,如果是,则将该TEG的Bmax调整为Bimax,否则抢占低优先级的TEG的占用带宽。
10.如权利要求8所述的 方法,其特征在于:该方法还包括: 在调整TEG的Bmax时,遍历该TEG中TE隧道逐一选择TE隧道进行带宽调整直到调整目标完成或无可选TE隧道。
【文档编号】H04L12/723GK103441930SQ201310365860
【公开日】2013年12月11日 申请日期:2013年8月21日 优先权日:2013年8月21日
【发明者】张树坤 申请人:杭州华三通信技术有限公司