用于支持经由as间路径的路由的方法和节点的制作方法

文档序号:7978101阅读:517来源:国知局
用于支持经由as间路径的路由的方法和节点的制作方法
【专利摘要】本发明涉及自治系统AS#n的边界节点中的方法和包括边界路由控制单元的边界节点。边界节点配置为将数据分组从始发自治系统AS#0中的源节点ON可能经由中间自治系统路由到终止自治系统AS#T中的目的地节点TN。方法至少基于通过自己的自治系统和其它自治系统的转接路径的能量消耗度量ECMBNP以及每个可能的自治系统间路径的总能量消耗度量ECMASROUTE来分别确定始发自治系统与终止自治系统之间的组成路由或多个路由的一个自治系统间路径或多个AS间路径。边界节点适配成在边界网关路由表中存储路由或多个路由。
【专利说明】用于支持经由AS间路径的路由的方法和节点
【技术领域】
[0001]此文档中处置的【技术领域】涉及数据流的路由。更具体地,此文档提供用于支持自治系统之间的数据分组流的路由的方法和节点的实施例。
【背景技术】
[0002]因特网由包括通信网络的自治系统形成。自治系统(AS)定义为在一个或多个网络运营商(其向因特网宣布公共的、清楚定义的路由策略)的控制下的连接的因特网协议(IP)路由前缀的集合。AS由因特网服务提供商(ISP)或网络服务提供商(NSP)管理并且支持。AS大致是由相同组织拥有和管理的因特网的一部分。AS范围大小是从小的因特网服务提供商(ISP)或网络服务提供商(NSP)到大的国际企业和运营商。ISP或NSP (ISP/NSP)可管理并且支持因特网的多个自治系统(AS)。对于每个自治系统,ISP/NSP必须具有官方登记的自治系统号码(ASN)。自治系统号码(ASN)由因特网号码分配局(IANA)成块指派给区域因特网注册机构(RIR)。适当的区域因特网注册机构(RIR)随后将AS号码从由IANA所指派的块指派到其指定区域内的AS。
[0003]唯一的ASN被分配给每个AS以便用在边界网关协议(BGP)路由,从而允许被称为数据业务的数据分组流中的数据分组的路由。大致上,BGP处置AS之间的网络可达到性信息的交换和根据此信息的路由确定。
[0004]BGP的重要特性是其一起连接使用任意拓扑的AS的任何互联的灵活性。唯一要求是每个AS具有能够运行BGP的至少一个路由器并且该路由器连接到另一 AS的至少一个BGP路由器。BGP适配成处置采用全网孔拓扑、局部网孔连接的一组AS、一个接着一个地链接的AS链、或任何其它配置。在全网孔拓扑中,每个AS连接到每个其它AS。BGP也配置为处置可随着时间出现的拓扑改变。
[0005]BGP的重要特征是它不处置任何关于在AS内发生什么的信息。这当然是AS自治的概念的重要先决条件-AS具有其自己的内部拓扑并且使用其自己的路由协议选择来确定路由。BGP只配置为采用从AS输送到其的信息并且与其它AS共享该信息。创建BGP互联网络开始于配置为运行协议的每个AS中的某些路由器的指定。在BGP用法中,由于它们发出BGP “语言”,因此这些被称为BGP发出者。
[0006]自治系统可包含以任意的拓扑连接的许多路由器。这些路由器中的一些只连接到AS内的路由器并且因此被称为内部路由器,而路由器中的一些也连接到其它AS。连接到其它AS的路由器在BGP中被指代为边界路由器。根据其它协议用法,这样的路由器被称为边境路由器、边缘路由器等。当一个AS中的BGP发出者链接到另一 AS中的BGP发出者时,它们被指代为邻居。它们之间的直接连接允许它们交换关于它们是其中一部分的AS的信息。邻居使用BGP通讯系统来交换路由信息。BGP发出者可连接到多于一个其它发出者。BGP发出者可与其自己的AS内部和其AS外部的其它BGP路由器都有关系。AS内的邻居被称为内部对等体,而另一 AS中的邻居是外部对等体。内部对等体之间的BGP有时被称为内部BGP (IBGP),而外部对等体之间的协议的使用被指代为外部BGP (EBGP)0两个协议在许多方面是类似的,但在某些区域中(尤其是关于路径属性和路由选择)不同。
[0007]两个BGP发出者之间的对等体连接可以是直接链路或间接链路。BGP协议使用传输控制协议(TCP)作为BGP路由器之间的传输协议。这允许BGP路由器建立BGP会话并且随后使用通讯系统来交换路由信息。它也是实际终端用户数据业务在自治系统之间移动的方法。外部对等体通常直接连接,而内部对等体通常间接连接。
[0008]关于每个路由的路径的信息以BGP路径属性的形式存储在每个BGP发出者的路由信息库(RIB)(还指代为路由表)中。这些属性用来在BGP装置发送出更新消息时向网络广告路由。路径属性的存储、处理、发送和接收是路由器决定如何创建路由的过程。
[0009]有若干不同的路径属性,每个路径属性描述路由的特定特性。属性基于它们的重要级别和设计为管理它们的传播的具体规则而被划分成不同的类别。最重要的路径属性被称为众所周知的必备属性。每个BGP发出者必须认出并且处理这些,但只有一些被要求用每个路由发送。其它属性是可选的并且可不实现。
[0010]BGP的目标是促进BGP装置之间的路由信息的交换,以使每个路由器能够确定到IP互联网络中的每个网络的有效率的路由。这意味着路由的描述是BGP路由器的关键数据。每个BGP发出者负责根据在BGP标准中建立的具体方针来管理路由描述。
[0011]BGP的例程操作或主要任务操作要求BGP发出者存储、更新、选择并且广告路由信
肩、O
[0012]主要任务中的一个是存储路由,即路由存储。每个BGP路由器在一组特殊数据库中存储关于如何到达其它路由区(即,自治系统)的信息。它也使用数据库来保持从其它装置接收的路由信息。当BGP路由器从其对等体中的一个接收更新时发生路由更新。BGP装置必须决定如何使用此信息。应用特殊技术来确定何时以及如何使用从对等体接收的信息来适当地更新装置中的所存储的路由信息。
[0013]BGP的另一主要任务是选择路由,即路由选择。每个BGP使用其路由数据库中的信息来选择到互联网络上的每个AS的良好路由。另外,每个BGP发出者定期地告诉其对等体它知道的关于各种网络和达到它们的方法。这被称为路由广告并且使用BGP更新消息来完成。
[0014]一旦BGP发出者已经接触并且已经使用开放消息来建立链路,则所述路由器开始交换路由信息的实际过程。每个BGP路由器使用BGP决定过程来选择要向其对等体广告的路由。通过将信息插入BGP更新消息来广告此路由信息(还指代为可达到性信息)。每个BGP更新消息包括下文中的一个或两个:
路由广告:单个路由的特性。
[0015]路由撤回:不再可达到的网络的列表。
[0016]只有一个路由可以在更新消息中广告,但是若干路由可以被撤回。这是因为路由的撤回是简单的:它简单地要求其路由正在被移除的网络(即AS)的地址。与此相反,路由广告要求相当复杂的要被描述的路径属性集,它们占用大量空间。
[0017]因此,BGP路由器共享网络可达到性信息以便做出路径或路由选择。此信息包含关于某个路径越过的AS的列表的信息。此信息足以基于AS边界处的AS连接性和策略决定来构造IP可达到性地图(即路由信息库、路由表),其中该策略决定基于可强迫执行的策略规则。因此,路由/路径选择基于作为更新消息中的路径属性的在AS之间分配的若干BGP准则。BGP路由器可从多个来源接收相同路由的多个广告。一般而言,它只选择一个路由作为最佳路由。然后路由被添加到路由信息库(路由表)。
[0018]路由选择和策略基于商业模型。这些商业模型可偏爱基于越过的AS的数量(即AS跳数)的路由选择。如果使用最短AS路径策略,则在两个相同长度的AS路径的情况下,没有信息是关于每个AS域中的内部路由成本而可用的。因此,决定只基于AS跳数。
[0019]没有中央因特网管理局向任何因特网服务提供商规定要连接到哪些其它AS。AS的数量每年增长近2400个新的AS。这意味着每个AS必须维持、处置并处理的信息的量消耗越来越多的能量。因特网的增大的能量消耗还不是很大的问题,但随着AS的数量快速增大,这将成为运行AS的因特网服务提供商的巨大问题。

【发明内容】

[0020]此文档的一个目标是解决所述问题并且提供减少因特网中的能量消耗的方式。
[0021]所述目标通过提供用于支持经由自治系统的终端用户之间的数据分组流的路由的方法和节点的实施例来实现,其中所述路由基于产生通过因特网的数据分组业务的更有能量效率的传输的路由策略和路由选择。
[0022]根据一个方面,提供自治系统的边界节点中的方法的实施例。边界节点配置为将数据分组从始发自治系统中的源节点路由到终止自治系统中的目的地节点,这可能经由中间自治系统。方法包括确定自治系统内的边界节点与另一边界节点之间的每个转接路径的能量消耗度量。另外,方法包括从自己的自治系统的其它边界节点以及从其它自治系统接收通过自己的自治系统和其它自治系统的转接路径的能量消耗度量。方法至少基于通过自己的自治系统和其它自治系统的转接路径的所述能量消耗度量(给定每个可能的自治系统间路径的总能量消耗度量)来分别确定包含任何中间自治系统的始发自治系统与终止自治系统之间的组成路由或多个路由的一个自治系统间路径或多个AS间路径。方法还可至少基于节点中的路由表中的总能量消耗度量来存储路由或多个路由。
[0023]根据另一方面,提供自治系统的边界节点的实施例。边界节点及其实施例包括边界路由控制单元,用于将数据分组从始发自治系统中的源节点可能经由中间自治系统路由到终止自治系统中的目的地节点。边界路由控制单元配置为确定自治系统内的边界节点与另一边界节点之间的每个转接路径的能量消耗度量,并且从自己的自治系统的其它边界节点以及从其它自治系统接收通过自己的自治系统和其它自治系统的转接路径的能量消耗度量。路由控制单元还配置为至少基于通过自己的自治系统和其它自治系统的转接路径的所述能量消耗度量(给定每个可能的自治系统间路径的总能量消耗度量)来分别确定包含任何中间自治系统的始发自治系统与终止自治系统之间的组成路由或多个路由的一个自治系统间路径或多个AS间路径。路由控制单元还可配置为至少基于节点中的路由表中的总能量消耗度量来存储路由或多个路由。
[0024]在从属权利要求中包含了另外的方面和实施例。
[0025]一个优势是本实施例提供了对于经由自治系统的终端用户之间的数据分组流的路由的支持,其中所述路由基于产生通过因特网的数据分组业务的更有能量效率的传输的路由策略和路由选择。
[0026]另外一个优势是实施例提供能量消耗度量的端到端更新,即不只是连接到自治系统的其它自治系统中的邻居对等体节点将接收当前能量消耗度量,而是具有对等体节点的所有自治系统将接收当前能量消耗度量。
[0027]另一优势是本实施例容易实现在现存的互联网络和自治系统中。
【专利附图】

【附图说明】
[0028]在结合附图阅读下文的详细描述之后将更容易理解本发明的上文以及其它目标、特征和优势,附图中:
图1是图示其中可实现本文描述的装置、系统和方法的互联自治系统的结构的描述性示例的框图;
图2是示出节点的一些实施例的框图;
图3是根据一些实施例的流程图;
图4是根据一些其它实施例的流程图;
图5是图示根据图1的互联自治系统的结构的描述性示例的框图,但其中设置新的能
量成本度量。
【具体实施方式】
[0029]在下文的描述中,为了解释而非限制的目的,阐述具体细节(例如特定电路、电路部件、技术等)以便提供本发明的透彻理解。然而,对于本领域的技术人员而言,可实践本发明以及背离这些具体细节的其它实施例将是明显的。在其它实例中,省略熟知方法、装置和电路的详细描述以便不用不必要的细节来混淆本发明的描述。
[0030]在BGP中以及此描述通篇,路由还可指代为路径。路由和路径被视为等效概念。
[0031]内部对等体之间的BGP有时被称为内部BGP (IBGP),而外部对等体之间的协议的使用被指代为外部BGP(EBGP)。两个协议在许多方面是类似的,但在某些区域中(尤其是关于路径属性和路由选择)不同。下文的描述主要限制于外部BGP。
[0032]图1是包括五个自治系统的互联网络结构的示意图示。
[0033]每个自治系统(AS)具有包括用于将数据分组流路由到正确的目的地地址的路由节点的至少一个通信网络。
[0034]其中一个系统被指代为AS#0,并且它是连接到AS#0的内部通信网络的终端用户与驻留在另一 AS中的终端用户之间的数据会话的始发自治系统。所述终端用户分组流由源节点(在图中指代为节点0N)路由。源节点ON包括路由器并且它可具有多个路由(或路径)用来选择以便发送要送往其它终端用户的数据分组流。在图示的示例中,两个内部路径(指代为ASOl和AS02)可被所述路由节点AS#0用于数据流中的数据信息到其它终端用户(其驻留在另一 AS (本文指代为终止自治系统AS#T)中)的另外的传输。路径ASOl用包括边界网关协议(BGP)路由器的边界节点011来连接始发源节点0N。路径AS02用包括BGP路由器的边界节点012来连接始发路由节点0N。内部连接AS03连接两个边界节点011、012,它们是内部对等体节点。
[0035]利用边界节点中的BGP路由器,有可能连接到具有BGP路由器的其它自治系统。两个BGP路由器之间的对等体连接可以是直接链路或间接链路。BGP协议使用传输控制协议(TCP)来作为BGP路由器之间的传输协议。这允许BGP路由器建立BGP会话并且随后使用通讯系统来交换路由信息。它也是实际终端用户数据业务在自治系统之间移动的方法。外部对等体通常直接连接,而内部对等体通常间接链接。在图1 (和图4)中,外部对等体之间的连接被图示为具有连续线,而内部对等体与内部节点之间的连接被图示为虚线。当一个AS中的BGP路由器链接到另一 AS中的BGP路由器时,它们被指代为邻居。它们之间的直接连接允许它们交换关于它们是其中一部分的AS的信息。邻居使用BGP通讯系统来交换路由信息。BGP路由器可连接到多于一个其它路由器。BGP路由器可与其自己的AS内和其AS外部的其它BGP路由器都有关系。AS内的邻居被称为内部对等体,而另一 AS中的邻居是外部对等体。内部对等体之间的BGP有时被称为内部BGP (IBGP),而外部对等体之间的协议的使用被指代为外部BGP (EBGP)0
[0036]根据图1的示例,AS#0连接或链接到两个其它自治系统AS#2和AS#n。AS#0中的边界节点011的BGP路由器经由链路11连接到AS#2中的边界节点211的BGP路由器,并且AS#0的边界节点012的BGP路由器经由链路21连接到AS#n中的边界节点nil的BGP
路由器。
[0037]自治系统AS#2包括两个BGP路由器,一个在边界节点211中并且一个在边界节点212中,它们由通过AS#2的最佳路径AS21而连接。自治系统AS#2经由链路12利用边界节点212中的BGP路由器和AS#3中的边界节点中的BGP路由器311而链接到自治系统AS#3。
[0038]自治系统AS#3包括两个BGP路由器,一个在边界节点311中并且一个在边界节点313中,它们由通过AS#3的最佳路径AS31连接。自治系统AS#3经由链路13利用边界节点313中的BGP路由器和边界节点AS#T中的BGP路由器Tll而链接到自治系统AS#T。
[0039]自治系统AS#n包括三个BGP路由器,一个在边界节点nil中,一个在边界节点nl2中并且一个在边界节点nl3中。边界节点nil由通过AS#n的路径ASn2而连接到边界节点nl3。边界节点nil也由通过AS#n的路径ASnl而连接到边界节点nl2。自治系统AS#n经由链路22利用边界节点nl2中的BGP路由器和AS#3中的边界节点311中的BGP路由器而链接到自治系统AS#3。自治系统AS#n另外经由链路23利用边界节点nl3中的BGP路由器和AS#T中的边界节点T12中的BGP路由器而链接到自治系统AS#T。边界节点nl2和nl3是内部节点并且它们经由路径ASn3连接。
[0040]自治系统AS#T中的接收终端用户连接到目的地节点TN,其经由路径ASTl而连接到边界节点Tll并且经由路径AST2而连接到边界节点T12。
[0041]应理解,通过AS的路径或路由可包括一个或多个链路接口和节点。内部路径包括多个链路接口和节点。AS间路径或AS间路由可涉及从始发自治系统(AS#0)到终止自治系统(AS#T)的路径,其可能经由中间自治系统,如在此示例中那样的AS#n、AS#2和AS#3。
[0042]图示的示例的网络拓扑给出从始发自治系统AS#0到终止自治系统AS#T的多个不同路由。多个路由是可能的,例如:
-路由 1:[AS01、AS21、AS31、AST1];
-路由 2:[AS02、ASnl、AS31、ASTl];
-路由 3:[AS02、ASn2、AST2];
边界节点中的决定过程和决定过程所基于的策略确定了哪个路由成为所选择的路由。经由BGP所学习的路由具有关联的性质(其在多个路径存在时用来确定到目的地的最佳路由)。如本文已经提及的,这些性质被称为BGP属性。可使用下文的属性: _重量;
-本地偏好;
-多出口鉴别器;
-起源;
-AS路径;
-下一跳;
-社区。
[0043]所述路径属性在多个标准文档(例如,IETF RFC4271)中定义。
[0044]路由选择可以基于策略,例如越过的AS的数量应该是尽可能少的AS跳数,其中AS跳数被考虑为路径成本因素、度量。路由I的AS跳数为3,路由2的AS跳数也为3,并且路由3只有2跳。因此,包括在决定策略中使用AS跳数的BGP路由器的边界节点中的路由选择的结果是路由3。然而,这可能不是最有能量效率的路由。然而,因为这是基于现存的度量的最佳路径,因此某些路径比其它路径消耗更多功率(其可导致高功率消耗和长距离路径上流动的业务)。
[0045]因此,路径属性(例如重量)可与一个或多个路径成本因素、度量有关。作为示例,AS跳数与路径属性AS路径有关。
[0046]如果内部路径包括多个链路接口,则每个这样的链路接口具有分配的链路成本。每个链路成本可以是不同的链路成本因素(即不同的度量)的总和。度量(或链路成本因素)的示例可以是路由器的距离(被称为往返时间)、链路的网络吞吐量(例如带宽)以及链路可用性和可靠性。根据下文的实施例,用新的度量(添加AS路径能量消耗ECMasmite)来扩展所述度量列表。
[0047]近来已经提交用于通信网络中的有能量效率的路由和交换的方法,参见申请号PCT/SE2010/000308,提交于2010-12-20。所述文档教导了交换数据的节点和方法,它也使用能量消耗度量ECM,其可以基于链路接口、链路和内部节点中的功率消耗。在下文的描述中,链路接口中的所述能量消耗度量ECM被指代为ECMUffi。
[0048]能量消耗度量ECMuffi被定义为功率消耗因子除以链路接口的速度(带宽)。例如,能量消耗度量可以由单位瓦特/位/秒、瓦特/千兆位/秒或nj/位来表达。
[0049]分配给个别链路接口的功率消耗因子ECMunk可以由测量或(如果已知)例如由链路接口的数据表单来确定。然而,例如,还可由因特网服务提供商或网络服务提供商来设置或选择链路接口的度量ECMuffi。
[0050]不同的功率消耗因子可用于不同类型的链路接口但是也用于相同类型但不同地实现(不同的微处理器等)或来自不同的供应商的链路接口。
[0051]因此,有可能基于所述自治系统内的两个边界节点之间的每个路径的总能量消耗度量来确定自治系统中的所有可能的边界节点之间的最佳路径。根据专利申请号PCT/SE2010/000308的所述方法,在路由区(例如自治系统)的节点中,接收关于属于与所述节点相同的路由区的多个其它节点中的链路接口的路由选择度量。到通信网络中的所有可能的目的地节点的最佳路径至少基于能量消耗度量来确定并且存储在至少一个路由表中。
[0052]确定AS转接路径和有关的能暈消耗度暈ECM-:
转接路径是通过自治系统的链路接口路径。它是AS的两个边界节点之间的链路连接。在图1中,图示若干转接路径。例如,在AS#2中,一个转接路径在边界节点211与212之间可用。在AS#n中,三个转接路径是可用的:ASnl、ASn2和ASn3。每个转接路径具有分配的能量消耗度量ECMbnp,其中BNP (边界节点对)可以是路径(例如ASnl)和/或AS (例如AS#I)的身份。
[0053]每个边界节点可配置为确定边界节点自身与其自治系统中的其它边界节点之间的所有可能的路径的一个转接路径。所述确定(例如通过选择)可以至少基于能量消耗度量,例如所述自治系统内的每个路径的ECMbnp。ECMbnp在本文中被指代为AS转接能量消耗度量。方法可如下描述:
分配给内部的、边界节点与另一边界节点之间的个别转接路径的功率消耗度量ECMbnp可以通过对使用内部网关协议的链路接口(其组成路径)的ECMuffi度量求和来确定。然而,例如,还可由因特网服务提供商或网络服务提供商来设置或选择内部转接路径的度量ECMbnp。所述边界节点对之间的所选择的转接路径在利用策略或多个策略规则的决定过程中确定。这样的策略可以是转接路径是具有最低ECMbnp的路径。路由选择过程中可用于确定转接路径的另一选择策略规则是具有不同的链路和路径成本(例如ECMuff1、链路重量等)的组合的最可取总链路成本的路径。在两个边界节点之间所选择的转接路径根据所用的准贝U (即策略)来确定。对于其AS内的每个其它边界节点,在边界节点中重复该方法。从一个边界节点到另一边界节点的所选择的转接路径被识别并且被存储在边界节点的路由表中。至少所选择的转接路径的能量消耗度量ECMbnp可分配给AS内的其它边界节点以及其它AS的边界节点。
[0054]每个边界节点可配置为从其它边界节点、对等体节点至少接收其它自治系统的转接路径能量消耗度量ecmbnp。
[0055]确定AS间路径和有关的总能暈消耗度暈ECMismuTEi
每个边界节点还可配置为基于总能量消耗度量来确定包含任何中间自治系统的始发自治系统AS#0与终止自治系统AS#T之间的一个自治系统间路径。在图1中,图示多个AS间路径,例如:
-[AS01、AS21、AS31、AST1];
-[AS02、ASnl、AS31、ASTl];
-[AS02、ASn2、AST2];
一个所选择的自治系统间路径可以通过计算每个可能的自治系统间路径的总能量消
耗度量ECMaskotite来确定。
[0056]节点配置为至少基于自治系统的所述总能量消耗度量ECMasktote来确定包含任何中间自治系统的始发自治系统AS#0与终止自治系统AS#T之间的最佳自治系统间路径。所述确定可通过计算每个可能的自治系统间路径的总能量消耗度量来执行。包含任何中间自治系统的始发自治系统AS#0与终止自治系统AS#T之间的所选择的自治系统间路径的路由可以确定为具有最低总能量消耗度量的自治系统间路径或至少具有所有可能的AS间路径中的最低总能量消耗度量ECMasrciute的自治系统间路径。
[0057]方法可如下描述:
分配给某些AS间路径的功率消耗因子ECMaskotte可以通过对组成某个路径的AS的ECMbnp度量求和来确定。然而,例如,还可由因特网服务提供商或网络服务提供商来设置或选择AS中的某个转接路径的度量ECMbnp。始发自治系统AS#0与终止自治系统AS#T之间的最佳路径可以在利用策略或多个策略规则的决定过程中确定。这样的策略可以是最佳路径是具有最低ECMasmite的路径。路由选择过程中可用于确定最佳路径的另一选择策略规则是具有不同的链路成本(例如ECMbnp、链路重量等)的组合的最可取总链路成本的路径。始发自治系统AS#0与终止自治系统AS#T之间的最佳路径根据所用的准则(即策略)来选择。对于始发自治系统AS#0与终止自治系统之间的每个可能的路由,在边界节点中重复该方法。从一个边界节点到另一边界节点的所述最佳路径被识别并且被存储在边界节点的路由表中。
[0058]如果在AS#0与AS#T之间存在多个相同成本的路径,则正常BGP过程只选择一个路径作为最佳路径。BGP也支持多路径来作为选项,在该情况下,BGP在路由表中存储多个路径来允许相同成本多路径负载共享。
[0059]因此,在内部路由区级别上,引入能量消耗度量ECMunk作为链路成本因素来选择使用最少能量的路径。可由路由器供应商通过计算多个路由器的总功率消耗加上AS的接口能量成本ECM来提供节点能量消耗属性。在AS间级别上添加具有AS路径能量消耗的新的度星ECMbnp。
[0060]ECMbnp参数可添加为新的属性,例如扩展AS_PATH、AS6_PATH (6个八位字节),或BGP用来通信并且找到最有能量效率的AS路径的任何现存的属性的修改。
[0061]实现可以从内部网关协议(IGP)搜集关于能量成本的信息或可以设置为将AS域能量消耗通信到对等体AS的策略。
[0062]因此,有可能确定内部对等体节点之间的每个转接路径的能量成本ECMbnp。如果AS转接路径包括多个链路接口,则每个这样的链路接口具有分配的链路成本。
[0063]根据一些实施例,自治系统内的不同边界节点对(即,内部对等体对)之间的路径的能量消耗度量ECMbnp通过对每个链路接口的分配的链路成本(在此情况下是能量消耗度量)求和来计算。
[0064]根据其它实施例,自治系统内的不同边界节点对之间的每个路径的能量消耗度量通过选择由所述路径和/或AS的策略定义的能量消耗度量来确定。
[0065]在图1中图示每个自治系统内的不同的边界节点对(即,内部对等体对)以及它们之间的路径。AS转接能量消耗度量ECMbnp被分配给所述内部对等体之间的每个路径。在自治系统AS#0中,图示一对边界节点011、012。所述BGP对等体对之间的转接路径AS03具有AS转接能量消耗度量ECMbnp =250。
[0066]自治系统AS#2具有一对边界节点211、212。所述BGP对等体对之间的转接路径AS21具有AS转接能量消耗度量ECMbnp=100。另外,自治系统AS#3具有一对边界节点311、313。所述BGP对等体对之间的转接路径AS31具有AS转接能量消耗度量ECMBNP=100。
[0067]在自治系统AS#T中,图示一对边界节点T11、T12。所述BGP对等体对之间的转接路径ASTl具有能量消耗度量ECMbnp=300。
[0068]最后,在图1中,自治系统AS#n具有三个边界节点nll、nl2和nl3。因此,AS#n具有三对边界节点,nll-nl2、nll_nl3和nl2_nl3,作为每个连接路径ASnl、ASn2和ASn3的端点。所述BGP对等体对之间的转接路径ASnl具有能量消耗度量ECMBNP=250。所述BGP对等体对之间的转接路径ASn2具有能量消耗度量ECMbnp=300,并且内部路径ASn3具有AS转接能量消耗度量ECMbnp=300。[0069]图示的示例的网络拓扑给出从始发自治系统AS#0到终止自治系统AS#T的多个不同路由。多个路由是可能的,例如:
-路由 1:[AS01、AS21、AS31、AST1];
-路由 2:[AS02、ASnl、AS31、ASTl];
-路由 3:[AS02、ASn2、AST2];
总能量消耗度量ECMasktote是用于包括路径AS01、AS2、AS31和ASTl的路由I并且ECMaseoute =0+100+100+0=200(由于 AS2 和 AS31 的 ECM 为 100)。路径 ASOl 和 ASTl 不是内部对等体(即边界节点)之间的路径,并且因此它们将不对链路成本、总能量消耗度量ECMaskotte做出贡献。
[0070]以类似方式,对于路由2: [AS02、ASnl、AS31、ASTI],总能量消耗度量为ECMaskqute=0+250+100+0=350ο 路由 2 的 ECM 高于路由 I 的 ECM。
[0071]以类似方式,对于路由3: [AS02、ASn2、AST2],总能量消耗度量为ECMaseoute=0+300+0=300 ο
[0072]因此,路由I的ECMasktote是三个路由中最低的,并且它被视为基于总能量消耗度量ECM的三个路径中的最佳路径。在示例中,最佳路由/路径的选择基于路径成本AS跳数。路由I的AS跳数为3,路由2的AS跳数也为3,并且路由3只有2跳。因此,包括在决定策略中使用AS跳数的BGP路由器的边界节点中的路由选择的结果是路由3。
[0073]在另外一个示例中(未图示),路由3包括4跳,路由I为3跳,并且路由2也为3跳。如果路由选择基于AS跳数并且总能量消耗度量ECMaskotte (根据开始具有最小AS跳数和最低ECMaskjute的路由的选择的决定策略),则由于路由I和路由2都包括2跳,因此路由I的总能量消耗度量ECMasktote是两个路由中最低的。因此,在此情况下选择路由I。
[0074]图2图示配置用于有能量效率的路由或交换的边界节点211的实施例。边界节点(也指代为BGP节点)包括路由控制单元,用于存储在数据库中的路由信息的管理和处置。路由存储在路由表中,但它可以不是整体实体。节点211包括三个链路接口 nll2、nll3、nll4,每个连接到链路21、ASnl、ASn2。链路接口适配为被分配包含能量消耗度量ECM的路由选择度量。链路接口 nll2、nll3、nll4连接到路由控制单元nllO。此路由控制单元nllO做出路由决定并且计算到不同目的地的最佳路径。最佳路径存储在可由路由控制单元访问的路由表中。根据某个准则或策略规则选择的路径根据所述准则或策略规则而定义为最佳路径。在图示的实施例中,路由表包括两个实体:路由表(RT)nlllA和边界网关路由表(BGRT)nlllB。在路由表(RT)中,nlllA是所存储的内部路由信息。内部路由信息是关于路由区(即自治系统)内的最佳路径(例如ECMunk)的内部路由信息。在边界网关路由表(BGRT)中,nlllA是所存储的外部路由信息。外部路由信息是AS间路由信息,例如关于从一个路由区到另一路由区的最佳路径、以及越过自治系统的最佳路径的ECMaskjute和ECMbnp。
[0075]路由控制单元nllO优选实现为具有存储器区域M nll8 (其包括适配成执行上述和下述功能的可执行代码)的处理器P nll7。例如,包含能量消耗度量ECMUNK、ECMaskjute和ECMbnp的路由选择度量可以存储在存储器区域nll8或路由表nlllA、nilIB中。路由选择度量从0&M中心50通过节点nil中的操作与管理接口 51来分配。链路接口 nll2、nll3、nll4适配成接收和发送数据分组并且也路由协议分组。例如,链路接口 nll2、nll3、nll4可以从属于其它自治系统的其它对等体节点接收关于链路接口的路由选择度量。路由选择度量(可选地包含能量消耗度量)利用BGP通讯系统(例如在更新消息或开放消息中)来接收。当节点nil中的链路接口 nll2、nll3、nll4被分配有能量消耗度量时,节点nil可选地可以在更新消息中将这些度量发送到属于其它AS的其它对等体节点。
[0076]节点nil的基本功能性是从其自己的AS的通信网络中的节点以及从其它AS中的邻居节点(例如BGP节点和外部对等体节点)接收分组,并且将这些分组进一步路由到其它内部节点或其它AS中的邻居节点。也可能的是,节点自身包括可以始发和终止数据分组的客户端nll5。因此,路由控制单元nllO还可以从客户端nll5接收作为协议原语的发送分组的请求。
[0077]路由控制单元可采用数字电子电路、或计算机硬件、固件、软件、或它们的组合实现。装置可采用有形实施在机器可读存储装置用于可编程处理器的执行的计算机程序产品实现;以及本发明的方法步骤可由执行指令的程序的可编程处理器执行来执行本发明的功能(通过输入数据来操作并且生成输出)。
[0078]路由控制单元的实施例可有利地采用一个或多个计算机程序实现,该计算机程序可执行在包含至少一个可编程处理器的可编程系统上,该可编程处理器耦合以从数据存储系统、至少一个输入装置以及至少一个输出装置接收数据和指令、并且传送数据和指令到数据存储系统、至少一个输入装置以及至少一个输出装置。每个计算机程序可采用高级别的面向程序或面向对象的编程语言实现,或如所希望的采用汇编或机器语言实现;并且在任何情况下,语言可以是编译或解释型语言。
[0079]—般而言,处理器将从只读存储器和/或随机存取存储器接收指令和数据。适合于有形地实施计算机程序指令和数据的存储装置包含所有形式的非易失性存储器,以示例的方式包含半导体存储器装置,例如EPROM、EEPROM以及闪速存储器装置;磁盘(例如内部硬盘和可移除盘);磁体光盘;以及⑶-ROM盘。上文中的任一个可由特殊设计ASIC (专用集成电路)辅助或并入在特殊设计ASIC中。
[0080]以上描述的节点结构的实施例配置为支持用于至少基于边界网关路由表中的能量消耗度量来存储最佳自治系统间路径的路由的方法的实施例。
[0081]图3是图示所述方法的实施例的流程图。
[0082]因此,自治系统AS#n的边界节点nil (参见图1)包括边界路由控制单元nllO (参见图1),用于将数据分组从始发自治系统AS#0中的源节点ON路由到终止自治系统AS#T中的目的地节点TN,这可能经由中间自治系统。下文更详细地描述该方法。
[0083]S310:确定自治系统内的边界节点与另一边界节点之间的每个AS转接路径的能量消耗度量ECMbnp。每个边界节点和其路由控制单元nllO可配置为至少基于所述自治系统内的每个路径的所确定的能量消耗度量ECMbnp来确定其自治系统中的自身与其它边界节点之间的所有可能的路径的最佳转接路径或最佳转接路径。在本描述中的部分“磁定路径和有关的能量消耗度量ECMBNP”今,讨论用于确定能量消耗度量ECMbnp和对应AS转接路径的方法的示例。
[0084]S330:从自己的自治系统的其它边界节点以及从其它自治系统接收通过自己的自治系统并且来自其它自治系统的转接路径的能量消耗度量ecmbnp。路由控制单元配置为从其它边界节点、对等体节点接收总能量消耗度量。所述度量可以用以上在S320中描述的(即用于分配能量消耗度量)任何方式接收。在RFC 4893中,自治系统号码ASN被扩展为编码四个八位字节的数字而不是两个八位字节的数字。根据一些实施例,通过自治系统的路径的能量消耗度量ECMbnp可添加到ASN的未使用部分。对于不支持四个八位字节AS号码的边界节点中的BGP路由器,引入新的属性,其可用于分配并且传播基于四个八位字节的AS路径信息。根据一些实施例,通过自治系统ASn:s的路径的能量消耗度量的分配利用边界网关协议BGP的预定属性来执行。属性可以是任何AS_PATH,例如AS4_PATH或AS6_PATH。AS6_PATH是扩展为六个八位字节长度的AS_PATH属性,用于将自治系统的总能量消耗度量分配给其它系统。以类似方式,修改现存的AS4_PATH,用于将通过自治系统的路径的能量消耗度量ECMbnp分配给其它系统,例如采用属性的最重要字节。根据其它实施例,属性可以是任何AS_AGGREGATOR。例如AS4_AGGREGAT0R,其是从2个八位字节长度扩展到4个八位字节长度的AS_AGGREGATOR属性以包含/包括能量能量消耗度量。AS_PATH被分类为众所周知的必备属性并且它是描述属性通过其传递的AS的序列的自治系统号码ASN的列表。由于它包含自治系统的实际路径,因此这是非常重要的属性。它用于计算路由和检测路由环。AS_AGGREGATOR被分类为可选的转接属性并且包含执行路由聚集的路由器的AS号码和BGPID0它用于排除故障。
[0085]S340:至少基于通过自己的自治系统和其它自治系统的转接路径的所述能量消耗度量ECMbnp (给定每个可能的自治系统间路径的总能量消耗度量ECMasktote)来分别确定包含任何中间自治系统的始发自治系统AS#0与终止自治系统AS#T之间的组成路由或多个路由的一个自治系统间路径或多个AS间路径。路由控制单元配置为至少基于可以为每个可能的自治系统间路径计算的总能量消耗度量ECMasmite来确定包括任何中间自治系统的始发自治系统AS#0与终止自治系统AS#T之间的最佳自治系统间路径或多个路径。具有最低总能量消耗度量的路由被定义为最佳自治系统间路径。然而,两个或者更多路由可具有相同的总能量消耗度量ECMas_te。然后策略可允许包括任何中间自治系统的始发自治系统AS#0与终止自治系统AS#T之间的多个路由。在本描述中的部分“确定AS间路径和有关的能量消耗度量ECMaswute”中,讨论用于确定能量消耗度量ECMaskjute和对应AS间路径的方法的示例。
[0086]S350:至少基于总能量消耗度量ECMaskqute来在节点中的路由表nlllB中存储路由或多个路由。所述路由表优选是边界网关路由表。因此,当已经(在S340中)确定最佳自治系统间路径或多个路径时,路由控制单元配置为至少基于能量消耗度量来在节点中的边界网关路由表nlllB中存储最佳自治系统间路径的路由或最佳自治系统间路径的多个路由。随后所述路由或多个路由可以由边界路由控制单元选择,用于将数据分组从始发自治系统AS#0中的源节点ON路由和发送到终止自治系统AS#T中的目的地节点TN (可能经由中间自治系统)。
[0087]当接收请求来将分组发送到具体目的地节点时,节点从边界网关路由表中选择连接到属于到具体目的地节点的最佳路径的链路的链路接口(从能量消耗的观点),该最佳路径例如是具有最低总能量消耗度量ECMasmite的自治系统间路径。在选择链路接口之后,分组经由所选择的链路接口而向目的地节点发送。
[0088]图4是图示本方法的另外的实施例的流程图。这些实施例包括如以上结合流程图3所描述的步骤S310、S330、S340和S350。从图4中的流程图中,本方法的另外的实施例包括步骤320是明显的,现在将更详细描述该步骤320。[0089]S320:将AS转接路径的能量消耗度量ECMbnp分配给自己的自治系统的边界节点以及其它自治系统。例如,边界节点中的路由控制单元nllO配置为利用BGP系统中的消息来将AS转接路径的能量消耗度量ECMbnp分配给自己的自治系统的边界节点以及其它自治系统。根据一些实施例,自治系统ASn: s的能量消耗度量的分配和接收可利用任何协议来执行。在本描述中,参见S320,以上讨论其它提出的分配方式。
[0090]图5是图示与图1中相同的互联AS结构。差别在于能量消耗度量路径ASn2已经从ECMbnp=300改为ECMbnp=50。新的ECMbnp值根据所描述的方法的任何实施例来分配。再次考虑以下路由:
-路由 1:[AS01、AS21、AS31、AST1];
-路由 2:[AS02、ASnl、AS31、ASTl];
-路由 3:[AS02、ASn2、AST2];
哪个路由现在是具有AS#n的ASn2的新的ECMasktote值的最佳路径?
包括路径ASOl、AS21、AS31和ASTl的路由I的总能量消耗度量仍然为ECMaskqute=0+100+100+0=200 (由于 AS21 和 AS31 的 ECMbnp 为 100)。路径 ASOl 和 ASTl 不是内部对等体(即边界节点)之间的路径,并且因此它们不对链路成本总能量消耗度量ECMaskotte做出贡献。
[0091]以类似方式,对于路由2: [AS02、ASnl、AS31、ASTI],总能量消耗度量为ECMaskqute=0+250+100+0=350。路由 2 的 ECM 高于路由 I 的 ECM。
[0092]以类似方式,对于路由3: [AS02、ASn2、AST2],总能量消耗度量为ECMaseoute=0+50+0=50。
[0093]因此,路由3的ECMaskqute现在是三个路由中最低的,并且它基于路由的总能量消耗度量ECMaskotite而被考虑为通过互联网络中的AS的三个路径中的最佳路径。
[0094]已经描述多个实施例。将理解,可做出各种修改而不背离下文的权利要求的范围。
【权利要求】
1.一种自治系统(AS#n)的边界节点(nil)中的方法,所述边界节点配置为将数据分组从始发自治系统(AS#0)中的源节点(ON)可能经由中间自治系统路由到终止自治系统(AS#T)中的目的地节点(TN),所述方法的特征在于,其包括: -确定所述边界节点与所述自治系统内的另一边界节点之间的每个转接路径的能量消耗度量(ECMbnp) (S310); -从自己的自治系统的其它边界节点以及从其它自治系统接收通过所述自己的自治系统和其它自治系统的转接路径的能量消耗度量(ECMbnp) (S330); -给定每个可能的自治系统间路径的总能量消耗度量(ECMaskotte)至少基于通过所述自己的自治系统和其它自治系统的转接路径的所述能量消耗度量(ECMbnp)来分别确定包含任何中间自治系统的所述始发自治系统(AS#0)与所述终止自治系统(AS#T)之间的组成路由或多个路由的一个自治系统间路径或多个AS间路径(S340); -至少基于所述总能量消耗度量(ECMaskjute)来在所述节点中的路由表(nlllB)中存储所述路由或多个路由(S350)。
2.根据权利要求1所述的方法,包括: -将所述自治系统的每个转接路径的所确定的能量消耗度量(ECMbnp)分配给所述自己的自治系统的其它边界节点以及其它自治系统(S320)。
3.根据权利要求1或2所述的方法,其中所述边界节点与所述自治系统内的另一边界节点之间的每个转接路径的能量消耗度量(ECMbnp)的所述确定通过为每个边界节点对选择由所述路径的策略定义的它们之间的一个转接路径来执行。
4.根据权利要求1-3`中的任一项所述的方法,其中所述自治系统中的转接路径的能量消耗度量(ECMbnp)的所述分配和接收利用任何协议来执行。
5.根据权利要求4所述的方法,其中所述自治系统中的转接路径的能量消耗度量(ECMbnp)的所述分配利用边界网关协议(BGP)的预定属性来执行。
6.根据权利要求5所述的方法,其中所述属性是任何AS_PATH。
7.根据权利要求5所述的方法,其中所述属性是任何AS_AGGREGATOR。
8.一种自治系统(AS#n)的边界节点(nil),所述边界节点(311)包括边界路由控制单元(nllO),用于将数据分组从始发自治系统(AS#0)中的源节点(ON)可能经由中间自治系统路由到终止自治系统(AS#T)中的目的地节点(TN),所述边界路由控制单元(nllO)配置为: -确定所述边界节点与所述自治系统内的另一边界节点之间的每个转接路径的能量消耗度量(ECMbnp); -从自己的自治系统的其它边界节点以及从其它自治系统接收通过所述自己的自治系统和其它自治系统的转接路径的能量消耗度量(ECMbnp); -给定每个可能的自治系统间路径的总能量消耗度量(ECMaskotte)至少基于通过所述自己的自治系统和其它自治系统的转接路径的所述能量消耗度量(ECMbnp)来分别确定包含任何中间自治系统的所述始发自治系统(AS#0)与所述终止自治系统(AS#T)之间的组成路由或多个路由的一个自治系统间路径或多个AS间路径; -至少基于所述总能量消耗度量(ECMaskjute)来在所述节点中的路由表(nlllB)中存储所述路由或多个路由。
9.根据权利要求8所述的节点,其中所述边界路由控制单元(nllO)配置为将所述自治系统的每个转接路径的所确定的能量消耗度量(ECMbnp)分配给所述自己的自治系统的其它边界节点以及其它自治系统。
10.根据权利要求8所述的节点,其中所述边界路由控制单元(nllO)配置为确定所述边界节点与所述自治系统内的另一边界节点之间的每个转接路径的能量消耗度量(ECMbnp)是通过为每个边界节点对选择由所述路径的策略定义的它们之间的一个转接路径来执行的。
11.根据权利要求8-10中的任一项所述的节点,其中所述边界路由控制单元(nllO)配置为利用任何协议来分配和接收自治系统中的转接路径的能量消耗度量(ECMbnp)。
12.根据权利要求11所述的节点,其中所述边界路由控制单元(nllO)配置为利用边界网关协议(BGP)的预定属性来分配和接收自治系统中的转接路径的能量消耗度量(ECMfflp )。
13.根据权利要求12所述 的节点,其中所述属性是任何AS_PATH。
14.根据权利要求12所述的节点,其中所述属性是任何AS_AGGREGATOR。
【文档编号】H04W40/24GK103609080SQ201180071835
【公开日】2014年2月26日 申请日期:2011年6月23日 优先权日:2011年6月23日
【发明者】T.賽尼, M.福斯曼, A.维林 申请人:瑞典爱立信有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1