以链路利用作为到平局打破机制中的反馈的多协议标签交换(mpls)的自动化业务工程的制作方法

文档序号:7884982阅读:313来源:国知局
专利名称:以链路利用作为到平局打破机制中的反馈的多协议标签交换(mpls)的自动化业务工程的制作方法
技术领域
本发明的实施例涉及用于改进网络中负载分发的方法和设备。具体地说,本发明的实施例涉及用于在多协议标签交换(MPLS)网络中的节点之间带有多个相等成本路径的网络中负载分布的方法。
背景技术
负载分发或负载分布是在网络中更有效地利用带宽和改进总体性能的方法。今天部署的大多数自动化负载分发和负载分布技术仅以非常局部视野来操作,这些负载分发和负载分布技术只考虑到给定目的地的路径或随后跳的数量,并且未考虑网络中业务的总体分发。相等成本多路径(ECMP)是用于路由的网络中单播业务的负载分布的常见策略,在有关如何将分组转发到给定目的地的判定能够解析到多个“相等成本”路径的任何路径(其在运行数据库计算时在最短路径上陷于平局)的情况下利用。ECMP由于依赖对单个路由器而言是本地的每跳判定,并且假设在每个中间节点存在混杂接收和完全转发表,因此,它能够结合大多数单播路由选择协议和配有要求的支持数据平面硬件的节点来使用。通过在网络中的任何给定节点使用ECMP,跨相等成本随后跳的集合伪平均地划分负载。在存在到给定目的地的多于一个路径的网络的每一跳,此过程被独立实现。在许多实现中,在遇到存在多个相等成本随后跳时,针对诸如因特网协议(IP)报头等熵源而检查每个分组,并且以路径数量为模的报头信息的散列用于为特定分组选择下一跳。对于高度聚合的业务,此方法将平均地在规则拓扑(即,对称拓扑)中均匀分发负载,并且在不那么规则的拓扑中确实提供了一些改进。多协议标签交换(MPLS)是用于通过网络转发业务的数据平面和控制平面技术的组合。MPLS使用指派到业务流的每跳标签,以使用标准查找和转换(称为“交换”)跨网络转发业务。借助于考察通过网络收到的进入业务和基于其标签转发该业务,网络的每个节点支持MPLS,标签一般在每跳转换或“交换”。MPLS网络能够使用每跳ECMP在网络中改进路由的业务的分发,以跨相等成本路径分发或分布负载。在MPLS网络中,由网络中的每个节点为每个相等成本路径设置到每个下一跳的标签交换路径(LSP)。在网络中的每个节点使用最短路径优先(SPF)算法计算用于网络中给定目的地的转发路径,将其映射到节点中的本地标签绑定,并且结果连通性显示为多点到多点网格。在被呈现目的地为多个相等成本路径的业务时,各个节点利用有效负载信息作为路径选择机制的一部分以便最大化跨路径的集合的流分发的均匀性。多点到多点LSP的建立自动进行。标签分发协议(LDP)或类似协议用于为网络中的所有可能转发等价类过量提供标签绑定的完全集合,并且随后每个标签交换路由器(LSR)独立为每个转发等价类计算下一跳的集合并选择它将在任何给定时刻实际使用的标签绑定。

发明内容
一种在多协议标签交换(MPLS)网络的节点中为了改进的负载分发而实现的方法,其中,所述节点是MPLS网络中的多个节点之一,每个节点实现共同算法平局打破过程以产生最低成本最短路径树,节点包括拓扑数据库以存储MPLS网络的拓扑,其中MPLS网络的拓扑包括多个节点和所述节点之间的链路,方法包括以下步骤:通过对拓扑数据库中存储的MPLS网络的拓扑执行最短路径搜索算法,确定在MPLS网络中每个MPLS节点对之间一个或多个最短路径的第一集合;通过应用共同算法平局打破过程,从最短路径的所述第一集合中选择用于每个MPLS节点对的至少第一最短路径;基于经过每个链路的选择的最短路径的计数,为MPLS网络的每个链路计算链路利用值;通过对拓扑数据库中存储的MPLS网络的拓扑执行最短路径搜索算法,确定在MPLS网络中每个MPLS节点对之间一个或多个最短路径的第二集合;基于对应于每个最短路径的链路利用值,为一个或多个最短路径的第二集合中的每个最短路径生成路径利用值;在路径利用值的基础上从一个或多个最短路径的第二集合来选择第二最短路径,其中,在一个或多个最短路径的该集合中存在具有相等路径利用值的多个最短路径时,选择利用共同算法平局打破过程;以及在标签信息数据库中存储用于每个MPLS节点对的至少第一最短路径和第二最短路径,其中标签信息数据库指示将进入MPLS节点的业务转发到何处,由此鉴于路径利用的第二子集的选择最小化跨整个MPLS网络的负载分发的标准偏差。一种用于在多协议标签交换(MPLS)网络中改进负载分发的网络单元,MPLS网络包括网络单元,其中,网络单元是MPLS网络中的多个节点之一,其中,MPLS网络的拓扑包括多个节点和所述节点之间的链路,网络单元包括:拓扑数据库,为MPLS网络中的每个链路存储链路信息;标签信息数据库,为网络单元的每个端口存储标签信息,其中,标签信息数据库指示将进入网络单元的每个转发等价类(FEC)转发到何处;控制处理器,耦合到拓扑数据库和标签信息数据库,网络处理器配置成处理数据业务,其中,网络处理器包括=MPLS管理模块,配置成通过标签交换路径(LSP)转发数据业务;标签分发协议(LDP)模块,配置成在MPLS网络中建立LSP ;最短路径搜索模块,配置成通过对拓扑数据库执行最短路径搜索算法而确定在MPLS网络中每个MPLS节点对之间的至少一个最短路径,其中,最短路径搜索模块配置成,为带有多个相等成本最短路径的每个MPLS节点对将相等成本最短路径发送到负载分发模块;排序模块,配置成基于从与多个相等成本最短路径中的每个路径相关联的链路利用值所推导的路径利用值来排列多个相等成本最短路径的每个路径;以及负载分发模块,配置成从多个收到的相等成本最短路径选择用于该MPLS节点对的多个相等成本最短路径的第一子集,第一子集要用于在MPLS节点对之间分担数据业务负载,以及基于路径利用值,从用于该MPLS节点对的多个相等成本最短路径选择要用于与该以太网桥对的第一子集分担数据业务负载的第二子集,由此鉴于路径利用值的第二子集的选择最小化跨整个MPLS网络的负载分发的标准偏差。


本发明通过示例方式而不是限制的方式在附图的图形中被示出,附图中,相似的标号表示类似的单元。应注意,在此公开中对“一”或“一个”实施例的不同引用不一定是指相同的实施例,并且此类引用意味着至少一个。此外,在结合一实施例描述某个特定特征、结构或特性时,认为结合无论是否明确描述的其它实施例来实现此类特征、结构或特性是在本领域技术人员的认知之内。图1是网络拓扑的示例的图。图2是为多协议标签交换网络(MPLS)实现自动业务工程的网络单元的一个实施例的图。图3是包括自动化业务工程的负载分发过程的一个实施例的流程图,自动化业务工程包含使用链路利用作为到平局打破机制中的反馈。图4是用于生成作为标签分发协议的一部分的标签映射消息的过程的一个实施例的流程图。图5是多点到多点网络拓扑的示例的图。图6是多点到多点网络拓扑的另一示例的图。图7是伪线的集合到基础分组交换网络的映射以支持MPLS网络中的操作、监管和维护(OAM)的一个实施例的图。
具体实施例方式在下面的描述中,陈述了许多特定细节。然而,要理解的是,实践本发明的实施例可无需这些特定细节。在其它情况下,众所周知的电路、结构和技术未详细示出以免影响对此描述的理解。然而,本领域的技术人员将领会到,可无需此类特定细节而实践本发明。通过包括的描述,本领域普通技术人员将能够在不进行不当实验的情况下实现适当的功能性。实施例包括基本平局打破过程,该过程带有特定属性,所述属性包括以下属性:该过程将始终解析到单个路径,独立于计算的顺序或方向,并且具有局部性属性,使得对于考虑的路径的任何部分的平局能够得以解析而不必考虑整个路径。将参照图2的示范实施例,描述流程图的操作。然而,应理解的是,流程图的操作能够通过与参照图2所述的那些实施例不同的本发明的实施例执行,并且参照图2所述的实施例能够执行与参照图3和4的流程图所述的那些操作不同的操作。图1和5-7提供示出图2、3和4的原理和结构的实现的示例拓扑和情形。图中所示技术能够使用在一个或多个电子装置(例如,终端站、网络单元等)上存储和执行的代码和数据来实现。此类电子装置使用如下非暂时性机器可读或计算机可读媒体存储和传递(在内部和/或通过网络与其它电子装置)代码和数据:非暂时性机器可读或计算机可读存储媒体(例如,磁盘、光盘、随机存取存储器、只读存储器、闪存装置及相变存储器)。另外,此类电子装置一般情况下包括耦合到诸如一个或多个存储装置、用户输入/输出装置(例如,键盘、触摸屏和/或显示器)和网络连接等一个或多个其它组件的一个或多个处理器的集合。处理器的集合与其它组件的耦合一般情况下是通过一个或多个总线和桥(也称为总线控制器)。存储装置表示一个或多个非暂时性机器可读或计算机可读存储媒体和非暂时性机器可读或计算机可读通信媒体。因此,给定电子装置的存储装置一般情况下存储代码和/或数据以便在该电子装置的一个或多个处理器的集合上执行。当然,本发明的一实施例的一个或多个部分可使用软件、固件和/或硬件的不同组合来实现。在本文中使用时,网络单元(例如,路由器、交换器、桥等)是一件连网设备,包括硬件和软件,其在通信上与网络上的其它设备(例如,其它网络单元、终端站等)互连。一些网络单元是“多服务网络单元”,其为多个连网功能(例如,路由选择、桥接、交换、第2层聚合、会话边界控制、多播和/或订户管理)提供支持和/或为多个应用服务(例如,数据、话音和视频)提供支持。订户终端站(例如,服务器、工作站、膝上型计算机、掌上型计算机、移动电话、智能电话、多媒体电话、基于因特网协议的话音(VOIP)电话、便携式媒体播放器、GPS单元、游戏系统、机顶盒(STB)等)访问通过因特网提供的内容/服务和/或在因特网上重叠的虚拟专用网(VPN)上提供的内容/服务。所述内容和/或服务一般由属于服务或内容提供商的一个或多个终端站(例如,服务器终端站)或参与对等服务的终端站来提供,并且可包括公共网页(免费内容、店面、搜索服务等)、私有网页(例如,提供电子邮件服务的用户名/密码访问的网页等)、基于VPN的企业网络、IPTV等。一般情况下,订户终端站耦合(例如,通过耦合到接入网络(以有线或无线方式)的客户驻地设备)到边缘网络单元,所述边缘网络单元耦合(例如通过到其它边缘网络单元的一个或多个核心网络单元)到其它终端站(例如,服务器终端站)。本发明的实施例提供用于避免现有技术的缺点的系统、网络和方法,所述缺点包括:在非对称拓扑中的性能差,缺乏对操作、监管和管理(OAM)协议的支持,进行每分组检查的高资源要求,高度的稀释以实现合理的网络利用,多个度量集生成和维护,以及进行状态的小更改要求相当大的资源。本发明的实施例通过在最小化用于网络的拓扑数据库的遍历次数的同时允许动态业务工程而克服了这些缺点。负载分发方法包含动态业务工程和利用在转发平面中相等成本路径的多个集合的例示,其能够聚合成相等成本树的集合,由此通过由路径生成过程的所有以前迭代产生经过路径中每个链路的最短路径的累加数量将在用于生成路径的下一集合的平局打破中被考虑。一旦节点使用平局打破过程执行了初始路径选择,并且已处理拓扑数据库中的所有节点对,经过每个链路的最短路径的数量便被确定并被称为链路利用值。对于数据库的每次后续经历以生成另外的路径集合,通过排列用于在考虑的每个路径中每个链路的链路利用值的词典式排序的列表,删截在任何两个节点对之间最短路径的集合。如果排列的列表具有独特的最低利用的路径,则选择该路径。如果排列的列表没有独特的最低利用的路径,则应用基本平局打破过程到同样具有最低链路利用的最短路径的子集。在负载分发方法和系统中,在路径生成的每次迭代中计算网络负载的模型,将以前迭代的平局打破考虑在内以便均衡网络中链路的负载。改进的算法固有地有利于在第一迭代后每次迭代中选择更少负载的链路。
负载分发过程利用带有不同属性的平局打破过程,使得对于任何两点之间的路径,它将解析到单个对称路径,而不管路径的任何子集的计算的方向、计算或检查的顺序,描述为“最短路径的任何部分也是最短路径”的属性。或换而言之,在沿最短路径的任何部分发生平局之处,那些节点将为带有相同选择的路径子集解析平局,结果是最低成本最短路径树。这在本文中称为“共同算法平局打破(common algorithm tie-breaking) ”过程。在负载分发过程中,利用共同算法平局打破过程的拓扑数据库的初始经历导致树的第一集合的生成。这是因为任何链路上的负载尚未被记录,因此,所有相等成本路径将陷于利用的平局,其中,相等成本的定义是最低度量和跳的最低数量。初始步骤要求确定在网络中每个MPLS节点对之间的最短路径,以及在发现在任何两个MPLS节点之间多于一个最短路径的情况下,利用共同算法平局打破过程以进行平局打破,以便生成网络中每个MPLS节点对之间的独特路径选择,以及生成称为“ECT集合”的相等成本转发树的一个或多个集

口 ο负载分发过程能够排列相等成本路径,并且确定低和高排列的路径或者“书端(bookend) ”路径,其中,两个路径展示前提条件属性的集合。此负载分发过程由此能够从数据库的单个“所有对”经历选择多于一个路径。负载分发过程也在以前平局打破过程实际选择的路径的基础上计算遍历每个链路的最短路径的数量。此值称为“链路利用”值,其能够在后续的计算中被使用。链路利用值能够是其最短路径经过链路的MPLS节点对的计数。在其它实施例中,存在可使用的更复杂的可能性以替代考虑拓扑数据库中另外信息的链路利用。在经数据库的后续经历以生成路径或树的其它集合中,通过生成能够包括用于每个路径的词典式排序 链路利用值或简单地包括路径中每个链路的利用之和的路径利用值,并然后基于路径利用值来排列结果路径,来先排列任何两个MPLS节点之间的最短路径的集合。也能够利用两个或更多个排列方案,这是因为在生成相等成本路径或树的集合时选择多于一个路径时,最小化选择相同路径的次数是有利的。使用展示多样性的多个链路排列能够最小化选择多个路径需要的迭代的次数。在排列过程生成单个最低利用路径时,能够选择该路径而无需进一步处理。在考虑多于一个排列(例如,最低排列和最高排列)时,选择最低利用路径作为最低和最高排列路径。存在多于一个相等的最低利用路径时,应用共同算法平局打破过程到最低利用路径的集合以做出选择。在一个实施例中,从此步骤可选择多于一个排列。在利用多于一个负载排列机制(例如,负载之和及词典式排序作为排列)时,还可能在平局发生时从每个机制提取多个排列。能够执行经拓扑数据库的另外经历或迭代,并且在每次迭代中,指派到路径中每个链路的链路利用值是经过在经拓扑数据库的所有以前经历期间选择的链路的最短路径的累加量度或指示。图1是示例网络拓扑的一个实施例的图。示例网络拓扑包括带有对应标识符1-6的6个节点。未为网络拓扑确定路径对。利用了使用节点标识符来词典式排列路径的示范共同算法平局打破过程。检查节点I与节点4之间相等成本的路径集合将生成路径标识符的以下排列的集合(注意,路径标识符已被词典式排序,使得节点标识符不显示为经过列表):
1-2-3-41-2-4-6
1-3-4-5
1-4-5-6
平局打破过程的此初始应用将选择1-2-3-4和1-4-5-6作为在这些节点之间的低和高排列的路径。为简明起见,在此示例中,只考虑节点对I和4以确定用于网络的路径计数,而不是来自所有6个节点的最短路径树。在此示例中,在选择的链路路径中的链路因而各指派有I的路径对计数。对于经拓扑数据库的下一次经历,负载分发过程将产生与每个路径ID相关联的链路负载的以下词典式排序。路径1-2-4-6 的负载 0,1,I 路径1-3-4-5的负载0,1,1 路径1-2-3-4的负载1,1,1 路径1-4-5-6的负载1,1,1
链路负载的词典式排序将对路径1-2-4-6和1-3-4-5产生平局,这是因为每个的负载均为0-1-1。类似地,链路负载之和将产生:
路径1-2-4-6的负载2 路径1-3-4-5的负载2 路径1-2-3-4的负载3 路径1-4-5-6的负载3
作为用于两种排列样式的结果,采用了词典式的排序路径ID的辅助平局打破器(tiebreaker) 0在两种情况中,由此辅助平局打破器而选择了低路径(1_2_4_6)。类似地,能够选择1-3-4-5作为最低负载路径的集合的高排列路径ID。在一个实施例中,在利用低-高选择时,选择了两个路径。这些路径能够相同或具有相当大的重叠。例如,如果路径1-3-4-5在上面的排列的列表中不存在,则路径1-2-4-6将适合作为最低成本的低和高排列的路径。在其它实施例中,到低路径选择的初始输入能够出自基于负载的词典式排序的排列,并且到高路径选择的主要输入能够出自基于负载之和的排列。虽然该示例仅从检查一个路径而考虑了链路利用,但本领域普通技术人员将理解,在数据库的单次经历后存在可能业务分发的全面视图,并且后续经历的平局打破将固有地避免最大量,并且因此负载跨网络更平均地被分发。负载分发的修改程度随着考虑的路径的每个新集合而呈比例减小,因为效应是累加的。过程的每迭代选择的路径的数量和网络配置成利用的路径的累加数量能够随先验转发状态对要求的计算能力分析而变化。选择最低成本的最低和最高排列的路径将最小化在链路利用的标准偏差中给定改进所要求的计算能力量,但由于每迭代生成相等成本树的两个集合而将因此要求更多转发状态。从每次迭代选择单个路径置换将要求更多计算能力,但由于最小化了必须从单个最低利用候选选择两个路径的次数,因此将减少在利用的标准偏差中给定减少所要求的转发数据库状态量。生成的路径的总体数量基于网络单元状态和针对网络效率平衡的计算能力考虑的组合来确定。利用多个方案排列路径负载准许从数据库的给定经历选择更多路径, 这是因为它减少了对于给定数量的路径选择将相同路径选择多于一次的概率。在上述示例中,描述了排列路径负载的两种技术,这两种技术将产生跨网络应用的一致结果。在其它实施例中,能够利用排列的另外或替代方法。例如,能够利用也具有局部性属性(在与共同算法平局打破过程组合时,最低负载路径的任何部分也是最低负载)的排列负载的其它机制和此类排列的组合。此外,在上述示例中,链路利用由经过了链路的最短路径的计数来表示。可能利用许多变化来表示带有更多细节和增加准确度的链路利用。在标签信息和拓扑数据库内,有足够的信息,使得网络中的每个节点能够确定使用特定最短路径的服务实例的数量。链路利用值能够基于此利用而被确定以将对应链路适当加权。通过增加标签信息或拓扑数据库所存储的数据,每服务的另外带宽概况(profiling)信息可供在负载分发计算中使用。在另一实施例中,只利用路径中链路集合的最小链路度量作为该对节点之间能够提供的最大负载的代表。在其它实施例中,能够利用类似的度量或更详细的度量。在一个实施例中,拓扑数据库的除最后一次经历外的所有经历涉及网络中所有节点对之间最短路径的“所有对”计算。这能够由于复杂度而在计算上是昂贵的。然而,负载分发过程不要求经拓扑数据库的显著数量的经历以便产生可测量的益处,并且作为结果,负载分发过程在网络资源分配中提供宝贵的总体改进,这证明这些“所有对”计算是合理的。在利用随机图表生成的实验示例中,在建立初始ECT集合后经数据库的单次经历产生了作为经过网络中每个链路的最短路径的计数测量的链路负载中变异系数45%的大约平均减少。经拓扑数据库的另外三次经历继续将变异系数减少到平均有75%减少的点,但大部分益处来自在建立基线后的第一经历。因此,负载分发中的大部分益处在数据库的前两次经历中获得。在第二集合被明确放置以避免第一集合的负载时,通过网络的路径数量翻倍。然而,变异性系数的改进的速率逐经历下降,远远快于累加路径计数将表面建议的1/2、1/3、1/4速率。因此,在保持负载分发过程在计算和转发状态两方面均可跟踪的同时,能够实现显著的结果。由于方法实际上是面向连接,并且寻求最小负载链路,因此,故障造成的业务矩阵的任何扰动倾向于被隔离并且在性质上是局部的。一旦网络中的约束已被避开,负载分发过程便将倾向于将数据业务引导回原始分发中。该方法也适用于新兴MPLS-TP技术基础,如操作、监管和管理(OAM)协议能够被无修改利用,并且保留MPLS网络的体系结构和服务保证。负载平衡过程和系统也使得管理员能够通过负载因子而“预偏置”链路,这将具有使某一负载偏移离开特定链路的效应。这准许实现与简单的度量修改相比,用于操控路由选择行为的更细微渐变,比多拓扑路由选择更简单得多的管理,并且消除了对以前负载平衡系统中进行的链路虚拟化(如根据RFC 4206的MPLS “转发邻近”(forwardingadjacencies)以人为促使网格密度上升的需要。对于两阶段排序,何时应用链路偏置的定时有影响。它一般只被考虑用于第二及后续的迭代。在第一次迭代中所有相等成本路径陷于利用的平局(零)的实现中,立即应用偏置因子将往往使所有负载移离该链路,由第一次迭代引起偏置朝向其它路径。图2是实现包含链路利用作为到平局打破机制中的反馈的负载分发方法的网络单元的一个实施例的图。网络单元200能够包括标签信息数据库215、拓扑数据库217、入口模块203、出口模块205及控制处理器207。入口模块203能够处理由网络单元200在物理链路和数据链路层收到的数据分组的处理。出口模块205处理由网络单元200在物理链路和数据链路层传送的数据分组的处理。控制处理器207处理数据业务的路由选择、转发和更高级处理。控制处理器207能够执行或者包括最短路径搜索模块209、负载分发模块215、标签分发协议(LDP)模块213、MPLS管理模块217及排序模块211。标签信息数据库215包括带有定义要转发数据分组的方式的标签转发条目的表。标签转发条目将标签和基础FEC及虚拟拓扑与网络单元200的网络接口联系起来。此信息能够由控制处理器207用于确定要如何处理数据分组,即,数据分组应转发到到哪个网络接口。如本文中下面所述,负载分发方法和系统创建实现负载分发的通过标签分发协议(LDP)的标签转发条目。拓扑数据库217存储网络单元200连接到的网络的拓扑的网络模型或类似表示。在一个实施例中,网络中的节点是每个标签交换路由器(LSR),并且LSR之间的链接能够利用多个基础协议和技术。节点能够通过诸如节点环回地址等独特节点标识符识别以及链路通过节点标识符对来识别。本领域技术人员将理解,此网络模型表示作为示例被提供,并且网络拓扑的其它表示能够通过负载分发方法和系统而得以利用。最短路径搜索模块209是控制处理器207的组件或控制处理器207执行的模块。最短路径搜索模块209遍历拓扑数据库以确定网络拓扑中任何两个节点之间的最短路径。如果在网络中两个节点之间存在具有相等距离或成本的多个路径,并且这些多个路径全部是最短路径,则这些多个相等成本路径能够被提供到排序模块211和负载分发模块215以确定要利用哪个路径。最短路径搜索模块209能够确定在网络拓扑中所有节点之间的最短路径,这在本文中称为“所有对”计算。最短路径搜索模块209提供用于每个节点对的最短路径的集合,并且负载分发模块215选择最短路径的子集,并且更新标签信息数据库以包括实现遍历网络单元200的每个最短路径的子集的条目。在第一经历后,最短路径搜索模块209计算由经拓扑数据库的第一经历所导致的对于网络拓扑中每个链路的链路利用值。链路利用值是遍历给定链路的选择的最短路径的数量的计数。为每个链路计算并记录了单独的链路利用值。这些链路利用值用于生成路径利用值,路径利用值又用于为经拓扑数据库的后续经历而偏置路径的排列,其中,初始平局打破器是词典式排序链路利用值的排列列表或者是链路利用值之和(即,以路径利用值的形式),以及在这导致平局的情况下,共同算法平局打破过程用作后续的平局打破器。排序模块211是控制处理器207的组件或由控制处理器207执行的模块。排序模块211通过基于在第二次经历中和在后续经历中的路径利用值,执行相等成本树的负载集的初始排列来帮助负载分发模块215。对于带有多个相等成本路径的每个节点对,排序模块211基于路径利用值来生成这些相等成本路径的每个路径的排列,并且负载分发模块215从此排列来选择至少一个路径。在其它实施例中,能够选择最高排列的和最低排列的路径以在对应节点对之间划分负载。负载分配模块215是控制处理器207的组件或由控制处理器207执行的模块。此过程能够通过任何数量的经历或迭代来重复,其中,链路利用值被更新为经过其的最短路径的集合的累加指示。路径利用值也按照对链路利用值的更改进行更新。路径中变化中的标准偏差一般随着每次迭代而减小,但是随着路径集合的数量的上升,每个另外集合的总体影响成比例减小,从而指示使用多于两次或三次经历或迭代对于产生的计算工作量或例示的转发状态是不值得的。经历或迭代的数量由管理员来指定并且在网络范围内被配置。MPLS管理模块217是控制处理器207的组件或由控制处理器207执行的模块。MPLS管理模块217检查进入分组,并且确定相关联标签,以及在标签信息数据库219中执行分组的查找以确定转发分组通过的网络接口。MPLS管理模块217也执行任何必需的标签交换、标签添加或标签删除以影响用于每个数据分组的LSP的适当遍历。LDP模块213是控制处理器207的组件或由控制处理器207执行的模块。LDP模块213生成在网络中建立转发等价类(FEC)和虚拟拓扑到标签绑定需要的消息,绑定用于创建那些LSP,而LSP用于分发网络的负载。LDP模块213生成包括FEC类型长度值(TLV)字段、标签TLV字段及虚拟拓扑TLV字段的标签映射消息。拓扑TLV字段包括指示标签和FEC与负载分发过程的哪个迭代相关联的拓扑索引。LDP模块213也执行其它传统功能以实现标签分发。图3是用于负载分发的过程的一个实施例的流程图,该过程支持为多协议标签交换基于使用链路利用作为到用于相等成本路径的平局打破机制的反馈而实现自动化业务工程。在一个实施例中,该过程能够在诸如链路交换路由器等网络单元的启动时、在向连接到该路由器的网络通知拓扑更改时、在定义的间隔或在类似的事件或时间被运行。拓扑数据库作为不同于负载分发过程的单独过程被保持在网络中的每个网络单元,并且被假设为网络的真实拓扑的当前表示。在一个实施例中,负载分发过程通过确定在网络中网络单元或MPLS节点(例如,LSR)与网络中另一网络单元或MPLS节点之间最短路径的集合来开始(方框301)。最短路径的集合能够视为单独路径或以每个网络单元作为其相应树的根的树的集合。进行检查以确定是否有多个最短路径,即,是否存在MPLS节点之间最短路径的平局(方框303)。如果MPLS节点对在它们之间具有单个最短路径,则更新标签信息数据库以反映该最短路径(方框306)。在一个实施例中,更新标签信息数据库以反映遍历维护它的网络单元的每个路径。网络中的每个网络单元执行此相同计算。负载分发方法是确定性的,并且因此每个网络单元将产生相同结果。除非存在拓扑中的更改,否则,不必进行带有单个最短路径的那些MPLS节点对的进一步处理。如果MPLS节点对没有一般被测量为跳的最低数量和最低成本的独特最短路径,则共同算法平局打破方法用于准许选择独特的最短路径或最短路径的集合(方框305)。在一个实施例中,可能选择第一和最后排列的路径。在路径被选择后,它们存储在标签信息数据库中或者用于更新标签信息数据库,使得所有MPLS节点对具有在它们之间选择的至少一个路径。在选择最短路径后,进行检查以确定是否所有MPLS节点对已具有选择的路径(方框307)。如果另外的MPLS节点对尚未具有选择的路径或路径的集合,则该过程通过选择要处理的下一 MPLS节点对而继续(方框309)。如果所有MPLS节点对已具有选择的最短路径,则该过程继续到第二经历或迭代。对于每个链路的链路利用值由于已完成用于所有MPLS节点对的转发数据库的更新或在此之后而被计算(方框310)。链路利用值是遍历网络的拓扑中每个对应链路的路径数量的计数。为网络中的每个链路计算链路利用值。链路利用值提供使用的级别的指示和要形成另外的路径时在网络中应避免的潜在瓶颈。对于最短路径的后续生成,最初通过将路径利用值生成为其中路径利用值包括链路利用值的词典式排序的列表或链路利用值之和来执行平局打破。通过选择MPLS节点对,并且确定MPLS节点对之间的最短路径的集合,所有节点过程再次开始(方框311)。此过程包括基于对应于每个路径的链路利用值的路径利用值(方框313)。路径利用值能够表示每个路径的总体负载,如链路利用值之和,或者能够是链路利用值的词典式排序的布置,突出每个路径中最大或最小负载链路,或者是类似的布置和表示。将最短路径按其路径利用值来排列(方框315)。进行检查以确定对于具有相等路径利用值的给定MPLS节点对是否有多于一个最短路径。存在独特最低负载路径的情况下,能够选择该路径而无对所有路径排列的进一步处理(例如,最低和最高)。有相同负载(即,相同路径利用值)的多于一个最短路径时,共同算法平局打破过程然后用于在最短路径的最低负载集合的此子集中执行路径选择(方框321 )。排列将链路利用值考虑在内,使得带有最低或最少使用链路的路径最可能被选择,这将网络的总体负载考虑在内而不只是网络中的下一跳,结果,贯穿网络的路由选择更平衡。标签信息数据库然后被更新以反映选择的路径(方框318)。然后,进行检查以确定是否所有MPLS节点对具有选择的最短路径或最短路径的集合(方框319)。如果没有,则该过程通过选择要处理的下一 MPLS节点对而继续(方框323)。如果所有MPLS节点对已被计算,则进行检查以确定是否需要另外的树(方框325)。如果无需另外的树(这可能是网络管理员设置的参数或类似地被确定的参数),则负载分发过程结束。如果需要另外的路径,则该过程通过类似于第二经历或迭代但在以前迭代中确定的链路利用上构造的第三经历或迭代来继续。此过程能够具有任何数量的迭代。图4是用于生成作为标签分发协议的一部分的标签映射消息的过程的一个实施例的流程图。在一个实施例中,响应拓扑的更改或用于网络的标签信息数据库的更改而启动该过程。在另一实施例中,定期启动该过程以维护MPLS网络的状态。该过程由生成要发送到其对等体之一的标签映射消息的每个节点启动(方框401)。标签映射消息包括多个类型长度值(TLV)字段。为如主机节点的标签信息库中表示的网络的拓扑中每个转发等价类(FEC)和每个拓扑路径或树生成单独的标签映射消息。对于每个标签映射消息,在标签映射消息的FEC TLV字段中定义对应的字段等价类(方框403)。每个标签映射消息的标签TLV字段也根据指派到用于路径中每个接口的LSP的标签来定义(方框405)。拓扑索引也在标签映射消息中定义(方框407)。拓扑索引指示由标签映射消息定义的LSP的选择过程的迭代。例如,如果标签映射消息对应于第一选择的树或路径,则O或I的拓扑索引可被选择和插入标签映射消息中。类似地,如果第二路径或树对应于消息,则I或2可被指定为该值。一旦定义了每个标签映射消息并指定了其值中的每个值,则能够将标签映射消息发送到每个标签分发协议对等体(方框409)。在一个实施例中,拓扑索引包括在标签映射消息的现有TLV中。在另一实施例中,为标签映射消息定义拓扑 TLV。图5是包括标签交换路由器(LSR) 1-18的集合的多点到多点网络的一个实施例的图。该图示出对于给定示例由上面定义的过程的第一迭代定义的路径或树的集合。该图假设到此网络的入口能够分发在节点1-4内和类似地在13-18内,换而言之,这些LSR在网络的边缘,但具有相同外部接口。在此示例中,在第一经历中,过程将为从1-13到4-18的所有节点对(例如,1-5、5-9、9-13和4-8、8-12、12-18)生成词典式排序的独特路径的集合,从独特路径的此集合中,示例假设从这些独特路径标识符的排列选择对应于树501和503的低和闻路径。图6示出在上面陈述的负载分发方法的第二迭代中选择的路径或树。在此示例中,负载分发方法发现两个路径,其中,与每个路径相关联的链路负载的词典式排序在两个路径之间产生平局,并且作为路径标识符的节点ID的示范词典式排序被调用以权威性地解析平局。出自第二迭代的最低排列的树605和最高排列607还在节点1-4和节点13-18之间分发业务,并且补充出自图5所示第一迭代的最低排列的树601和最高排列的树603。通过在词典式排序中包含链路使用值,第二迭代选择具有最少利用的链路的相等成本路径,由此增大带宽的利用和选择的“所有对”路径的拓扑的多样性。图7是伪线的集合到基础分组交换网络的映射以支持MPLS网络中的操作、监管和维护(OAM)的一个实施例的图。借助于在与伪线的集合等价的端点之间覆盖对等LSP的完全网格,通过业务工程系统能够维护性能监视和维护兼容性。分组交换网络换算阶(N),并且故障管理能够相应地进行换算,但覆盖层具有性能监视所要求的对等属性。伪线的FEC被修改以将伪线FEC绑定到PSN虚拟拓扑索引。由于PSN拓扑在逻辑上在伪端点之间是对等的,因此,伪线标签提供了用于OAM计数器的来源消歧的部件。因此,已描述用于在MPLS网络中负载分发的方法、系统和设备,其将链路使用考虑在内。要理解,上述描述旨在是说明性而不是限制性的。在阅读和理解上述描述后,本领域的技术人员将明白许多其它实施例。因此,本发明的范围应参照所附权利要求以及此类权利要求被授权的等同的完全范围来确定。
权利要求
1.一种在多协议标签交换(MPLS)网络的节点中为了改进的负载分发而实现的方法,其中所述节点是所述MPLS网络中的多个节点之一,每个节点实现共同算法平局打破过程以产生最小成本最短路径树,所述节点包括拓扑数据库以存储所述MPLS网络的拓扑,其中所述MPLS网络的拓扑包括多个节点和在所述节点之间的链路,所述方法包括以下步骤: 通过对所述拓扑数据库中存储的所述MPLS网络的拓扑执行最短路径搜索算法,确定在所述MPLS网络中每个MPLS节点对之间一个或多个最短路径的第一集合; 通过应用所述共同算法平局打破过程,从最短路径的所述第一集合中选择用于每个MPLS节点对的至少第一最短路径; 基于经过每个链路的选择的最短路径的计数,为所述MPLS网络的每个链路计算链路利用值; 通过对所述拓扑数据库中存储的所述MPLS网络的拓扑执行所述最短路径搜索算法,确定在所述MPLS网络中每个MPLS节点对之间一个或多个最短路径的第二集合; 基于对应于每个最短 路径的链路利用值,为一个或多个最短路径的所述第二集合中的每个最短路径生成路径利用值; 在所述路径利用值的基础上从一个或多个最短路径的所述第二集合来选择第二最短路径,其中在一个或多个最短路径的该集合中存在具有相等路径利用值的多个最短路径时,所述选择利用所述共同算法平局打破过程;以及 在标签信息数据库中存储用于每个MPLS节点对的至少第一最短路径和第二最短路径,其中所述标签信息数据库指示将进入所述MPLS节点的业务转发到何处, 由此鉴于路径利用的第二子集的所述选择最小化跨整个MPLS网络的负载分发的标准偏差。
2.如权利要求1所述的方法,其中生成所述路径利用值的所述步骤还包括: 将对应于每个路径的链路利用值相加,或者 将对应于每个路径的链路利用值进行词典式排序。
3.如权利要求2所述的方法,还包括以下步骤: 从管理员接收链路修改因子;以及 组合所述链路修改因子和所述链路利用值以将所述链路和路径对应的之一加权,以便通过影响最低负载路径的集合的排列来降低选择的可能性,从而降低所述链路的使用。
4.如权利要求2所述的方法,还包括以下步骤: 基于对应路径利用值,排列最短路径的所述第二集合中的每个最短路径, 其中选择至少所述第二最短路径的所述步骤还包括: 从所述排列中选择最高和最低排列的最短路径。
5.如权利要求2所述的方法,还包括以下步骤: 迭代地选择另外的最短路径以便与所述第一最短路径和第二最短路径来分担负载分发,直至达到反映网络运营商对以太网网络的总体改进的期望的路径的管理数量。
6.如权利要求1所述的方法,其中MPLS节点对之间最短路径的所述集合被实现为所述MPLS网络内的标签交换路径。
7.如权利要求1所述的方法,还包括以下步骤: 生成标签映射消息;定义所述标签映射消息中的FEC类型长度值(TLV)字段; 定义所述标签映射消息中的标签TLV字段; 定义用于所述标签映射消息的拓扑索引,其中所述拓扑索引指示在选择所述第一子集和第二子集的所述步骤中的迭代;以及 将所述标签映射消息发送到所述MPLS网络中的每个标签分发协议对等体。
8.如权利要求7所述的方法,其中标签映射消息被发送到每个LDP对等体以实现FEC和拓扑索引值的每个组合。
9.一种用于在多协议标签交换(MPLS)网络中改进负载分发的网络单元,所述MPLS网络包括所述网络单元,其中所述网络单元是所述MPLS网络中的多个节点之一,其中所述MPLS网络的拓扑包括多个节点和所述节点之间的链路,所述网络单元包括: 拓扑数据库,为所述MPLS网络中的每个链路存储链路信息; 标签信息数据库,为所述网络单元的每个端口存储标签信息,其中所述标签信息数据库指示将进入所述网络单元的每个转发等价类(FEC)转发到何处; 控制处理器,耦合到所述拓扑数据库和所述标签信息数据库,所述网络处理器配置成处理数据业务,其中所述网络处理器包括: MPLS管理模块,配置成通过标签交换路径(LSP)转发数据业务; 标签分发协议(LDP)模块,配置成在所述MPLS网络中建立LSP ; 最短路径搜索模块,配置成通过对所述拓扑数据库执行最短路径搜索算法而确定在所述MPS网络中每个MPLS节点对之间的至少一个最短路径,其中所述最短路径搜索模块配置成,为带有多个相等成本最短路径的每个MPLS节点对将所述相等成本最短路径发送到负载分发模块; 排序模块,配置成基于从与所述多个相等成本最短路径中的每个路径相关联的链路利用值所推导的路径利用值来排列所述多个相等成本最短路径的每个路径;以及 所述负载分发模块,配置成从所述多个收到的相等成本最短路径选择用于该MPLS节点对的所述多个相等成本最短路径的第一子集,所述第一子集要用于在所述MPLS节点对之间分担数据业务负载,以及基于所述路径利用值,从用于该MPLS节点对的所述多个相等成本最短路径选择要用于与用于该以太网桥对的所述第一子集分担数据业务负载的第二子集, 由此鉴于所述路径利用值的第二子集的所述选择最小化跨整个MPLS网络的负载分发的标准偏差。
10.如权利要求9所述的网络单元,其中所述排序模块还配置成将所述链路利用值进行词典式排序以创建所述多个相等成本最短路径的排列。
11.如权利要求9所述的网络单元,其中所述最短路径搜索模块还配置成,为所述拓扑中的每个链路计算所述链路利用值。
12.如权利要求9所述的网络单元,其中所述控制处理器还配置成生成标签交换路径(LSP)以实现在所述MPLS网络内节点对之间每个选择的最短路径。
13.如权利要求9所述的网络单元,其中所述负载分发模块还配置成从管理员接收链路修改因子,并且组合所述链路修改因子和链路使用值以将路径中对应的链路加权,以便通过影响该路径的所述词 典式排序来降低选择的可能性,从而降低所述链路的使用。
14.如权利要求9所述的网络单元,其中所述负载分发模块还配置成通过选择相等成本最短路径的所述第一排列中的最高和最低项,从所述多个相等成本最短路径的每个路径选择所述第一子集。
15.如权利要求9所述的网络单元,其中所述负载分发模块还配置成通过应用共同算法平局打破过程到具有最低负载的所述相等成本最短路径而选择最高和最低项,从所述多个相等成本最短路径的每个路径选择所述第二子集。
16.如权利要求9所述的网络单元,其中所述排序模块和负载分发模块还配置成迭代地选择另外的子集以便与所述第一子集和第二子集分担负载分发。
17.如权利要求9所述的网络单元,其中所述LDP模块还配置成生成标签映射消息,包括在所述标签映射消息中的FEC类型长度值(TLV)字段、所述标签映射消息中的标签TLV字段、用于所述标签映射消息的拓扑索引,其中所述拓扑索引指示在选择所述第一子集和第二子集的所述步骤中的迭代,以及所述LDP模块还配置成将所述标签映射消息发送到所述MPLS网络中的每个标签分发协议对等体。
18.如权利要求17所述的网络单元,其中所述LDP模块还配置成将标签映射消息发送到每个LDP对等体以实 现FEC和拓扑索引的每个组合。
全文摘要
一种在多协议标签交换(MPLS)网络的节点中为了改进的负载分发而实现的方法,方法包括确定在每个MPLS节点对之间一个或多个最短路径的第一集,通过应用共同算法平局打破过程来选择至少第一最短路径,为MPLS网络的每个链路计算链路利用值,确定在每个MPLS节点对之间一个或多个最短路径的第二集合,基于对应于每个最短路径的链路利用值,为最短路径的第二集中的每个最短路径生成路径利用值,以及基于所述路径利用值,从最短路径的第二集合选择第二最短路径,由此,鉴于路径利用的第二最短路径的选择最小化跨整个MPLS网络的负载分发的标准偏差。
文档编号H04L12/729GK103081416SQ201180043490
公开日2013年5月1日 申请日期2011年8月4日 优先权日2010年9月8日
发明者D.I.艾伦, S.A.曼斯菲尔德 申请人:瑞典爱立信有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1