一种确定路由负载分担的方法及装置与流程

文档序号:11959889阅读:265来源:国知局
一种确定路由负载分担的方法及装置与流程

本发明涉及通信技术领域,特别是涉及一种确定路由负载分担的方法及装置。



背景技术:

随着通信技术的发展,数据中心扁平化组网的趋势越来越明显,网络设备间一般采用负载分担以充分利用链路带宽。即针对一个源网络设备和一个目的网络设备,源网络设备可以在本地的路由表包括的多条路由中,查找由自身到该目的网络设备的等价路由。进而,当该源网络设备需要转发流量给该目的网络设备时,其可以根据各等价路由,通过多条链路将该流量转发给该目的网络设备。

例如,源网络设备可以根据本地保存的各路由的属性信息,将部分属性信息确定为目标属性信息,并将目标属性信息将相同的路由确定为等价路由。其中,上述目标属性信息可以为LOCAL-PREFERENCE、AS-PATH、MED等。

在实际应用中,针对一个网络设备,可能存在部分流量需要进行负载分担,部分流量不需要进行负载分担的情况。例如,一般情况下,数据中心内流量可以进行负载分担;而出数据中心流量,一般有业务处理的需求,如需要经过防火墙处理等,从而不进行负载分担。

但是,现有技术中,当一个网络设备配置了负载分担时,其将针对所有的目的网络设备,确定从自身到各目的网络设备的等价路由。进而,在将流量转发到任一目的网络设备时,当本地存在自身到该目的网络设备的等价路由时,即可对该流量进行负载分担。当一个网络设备未配置负载分担时,其将针对所有的流量,都不进行负载分担。

针对上述问题,现有技术中的解决方案是,用户可以针对网络设备中保存的路由,确定目的地址相同的路由。并且,当针对任一目的地址,不想要到达给目的地址的流量形成负载分担时,用户可以针对该目的地址的各路由,将各路由的任一目标属性信息修改为不同的值。

从而,用户修改过任一目标属性信息的路由,由于其该目标属性信息不同,不会形成等价路由;而未修改过属性信息的路由仍可以根据其属性信息形成等价路由。也就是说,网络设备可以根据用户配置,对部分流量进行负载分担,部分流量不进行负载分担。

但是,上述方法中,当针对任一目的地址,不想要到达该目标地址的流量形成负载分担时,需要用户针对该目的地址的各路由的任一目标属性信息,将各路由的该目标属性信息修改为不同的值。而在实际组网中,负载分担环境下对等价路由规格数有较高的要求,通常要求32甚至是64条以上的等价路由。因此,上述控制路由负载分担的方法中,用户针对每个路由的任一目标属性信息,都需要进行修改,过程比较复杂。



技术实现要素:

本发明实施例的目的在于提供一种确定路由负载分担的方法及装置,以降低确定路由负载分担的复杂度。具体技术方案如下:

第一方面,本发明实施例提供了一种确定路由负载分担的方法,所述方法包括:

网络设备识别相同目的地址的多条路由,并根据预设的等价路由形成规则,从所述多条路由中确定等价路由;

所述网络设备确定所述等价路由满足预设的负载分担形成规则时,确定所述等价路由形成负载分担。

第二方面,本发明实施例提供了一种确定路由负载分担的装置,所述装置包括:

执行模块,用于识别相同目的地址的多条路由;根据预设的等价路由形成规则,从所述多条路由中确定等价路由;确定所述等价路由是否满足预设的负载分担形成规则;

处理模块,用于当所述执行模块确定所述等价路由满足预设的负载分担形成规则时,确定所述等价路由形成负载分担。

本发明实施例提供了一种确定路由负载分担的方法及装置,可以预先配置负载分担形成规则,当从相同目的地址的多条路由中确定出等价路由后,可以进一步地确定该等价路由是否满足负载分担形成规则,如果是,则确定该等价路由形成负载分担。与现有技术相比,只需要在网络设备上配置负载分担形成规则,而不需要修改各路由的属性信息,因此,降低了确定路由负载分担的复杂度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的确定路由负载分担方法的流程图;

图2为本发明实施例提供的确定路由负载分担装置的结构示意图;

图3为本发明实施例的确定路由负载分担的过程示意图。

具体实施方式

为了降低确定路由负载分担的复杂度,本发明实施例提供了一种确定路由负载分担的方法及装置。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。

为了降低确定路由负载分担的复杂度,本发明实施例提供了一种确定路由负载分担的方法过程,如图1所示,该过程可以包括以下步骤:

S101,网络设备识别相同目的地址的多条路由,并根据预设的等价路由形成规则,从所述多条路由中确定等价路由。

本发明实施例提供的方法可以应用于任一网络设备。具体地,该网络设备可以为交换机、路由器等。

在本发明实施例中,网络设备可以识别相同目的地址的多条路由。其中,相同目的地址的多条路由为前缀和掩码均相同的路由。

具体地,网络设备可以首先确定任一目的地址。进而,可以在本地保存的所有的路由中,识别目的地址为其确定的目的地址的多条路由。

网络设备识别出目的地址相同的多条路由后,进一步地,可以根据预设的等价路由形成规则,从多条路由中确定等价路由。

具体地,网络设备可以按照预设的排序规则,对所述多条路由进行优先级排序。例如,网络设备可以按照以下BGP协议优选规则对多条路由进行优先级排序:

(1)丢弃下一跳(NEXT_HOP)不可达的路由;

(2)优选首选值(Preferred-value)最大的路由;

(3)优选本地优先级(LOCAL_PREFERENCE)最高的路由;

(4)依次选择network命令生成的路由、import-route命令引入的路由、聚合路由;

(5)优选AS路径(AS_PATH)最短的路由;

(6)依次选择ORIGIN类型为IGP、EGP、Incomplete的路由;

(7)优选MED值最低的路由;

(8)依次选择从EBGP、联盟EBGP、联盟IBGP、IBGP学来的路由;

(9)优选IGP Metric值最小的路由;

(10)优选迭代深度值小的路由;

(11)如果路由都来自EBGP邻居,并且Router ID不相同,优选曾经的最优路由;

(12)优选Router ID最小的路由器发布的路由。如果路由包含RR属性,那么在路由选择过程中,就用ORIGINATOR_ID来替代Router ID;

(13)优选CLUSTER_LIST长度最短的路由;

(14)优选IP地址最小的对等体发布的路由。

对多条路由进行优先级排序后,网络设备可以进一步地比较每条路由的预设目标属性值,可以为LOCAL-PREFERENCE、AS-PATH、MED等;进而可以按照优先级从高到低的顺序,选取前N条、且预设目标属性值相同的路由为等价路由。

在实际应用中,为了使网络设备确定的等价路由的数量不会过大,导致在进行流量转发时,降低流量转发效率。网络设备可以预先设定等价路由数量,如为M。

这种情况下,当网络设备对多条路由进行优选排序,并确定前N条为预设目标属性值相同的路由时,其可以根据N与M的大小关系,确定满足预设数量的等价路由。

具体地,若N大于预设的等价路由数量M,则按照优先级从高到低的顺序,从N条路由中选取前M条路由为等价路由;如果N小于或等于预设的等价路由数量M,则可以确定N条路由为等价路由。

对多条路由进行优选排序后,排在最前面的为对应链路质量较好的路由。因此,当N大于预设的等价路由数量M时,按照优先级从高到低的顺序,从N条路由中选取前M条路由为等价路由,可以保证确定的等价路由为对应链路质量较好的路由,进而可以保证通过等价路由进行流量转发时,提高流量转发的效率和可靠性。

S102,所述网络设备确定所述等价路由满足预设的负载分担形成规则时,确定所述等价路由形成负载分担。

在本发明实施例中,为了降低确定路由负载分担的复杂度,可以预先在网络设备中配置负载分担形成规则。

可以理解,在实际应用中,一般情况下,数据中心内流量可以进行负载分担;而出数据中心流量,一般有业务处理的需求,如需要经过防火墙处理等,从而不进行负载分担。

也就是说,对于网络设备来说,当目的网络设备为数据中心内的网络设备时,其通常想要将目的地址为该网络设备地址的等价路由形成负载分担;当目的网络设备为数据中心外的网络设备时,其通常不想要将目的地址为该网络设备地址的等价路由形成等价路由。

并且,通常情况下,数据中心内的网络设备和数据中心外的网络设备,其地址会有较大的差别,如,地址前缀通常会不同。

因此,在本发明实施例中,网络设备可以在本地保存允许负载分担的地址前缀列表。也就是说,只有包含在该地址前缀列表中的等价路由才能够形成负载负载。

网络设备确定等价路由后,可以判断本地保存的允许负载分担的地址前缀列表中是否包含该等价路由的前缀,如果是,则可以确定该等价路由满足负载分担形成规则。进而,可以确定该等价路由形成负载分担。

本发明实施例提供了一种确定路由负载分担的方法,可以预先配置负载分担形成规则,当从相同目的地址的多条路由中确定出等价路由后,可以进一步地确定该等价路由是否满足负载分担形成规则,如果是,则确定该等价路由形成负载分担。与现有技术相比,只需要在网络设备上配置负载分担形成规则,而不需要修改各路由的属性信息,因此,降低了确定路由负载分担的复杂度。

相应于上面的方法实施例,本发明实施例还提供了相应的装置实施例。

如图2所示,本发明实施例提供了一种确定路由负载分担的装置,应用于任一网络设备,所述装置包括:

执行模块210,用于识别相同目的地址的多条路由;根据预设的等价路由形成规则,从所述多条路由中确定等价路由;确定所述等价路由是否满足预设的负载分担形成规则;

处理模块220,用于当所述执行模块确定所述等价路由满足预设的负载分担形成规则时,确定所述等价路由形成负载分担。

本发明实施例提供了一种确定路由负载分担的装置,可以预先配置负载分担形成规则,当从相同目的地址的多条路由中确定出等价路由后,可以进一步地确定该等价路由是否满足负载分担形成规则,如果是,则确定该等价路由形成负载分担。与现有技术相比,只需要在网络设备上配置负载分担形成规则,而不需要修改各路由的属性信息,因此,降低了确定路由负载分担的复杂度。

进一步地,所述相同目的地址的多条路由为前缀和掩码均相同的路由。

进一步地,所述执行模块210,还用于按照预设的排序规则,对所述多条路由进行优先级排序;比较每条路由的预设目标属性值;按照优先级从高到低的顺序,选取前N条、且所述预设目标属性值相同的路由为等价路由。

进一步地,所述执行模块210,还用于若所述N大于预设的等价路由数量M,则按照优先级从高到低的顺序,从所述N条路由中选取前M条路由为等价路由;如果所述N小于或等于预设的等价路由数量M,则确定所述N条路由为等价路由。

进一步地,所述执行模块210,还用于判断本地保存的允许负载分担的地址前缀列表中是否包含所述等价路由的前缀,如果是,确定所述等价路由满足负载分担形成规则。

下面结合一个具体的实施例,对本发明提供的确定路由负载分担的过程进行详细的说明。

如图3所示的网络拓扑,网络设备A、C、D、E、F、G处于同一数据中心内,网络设备H为该数据中心外部的一个网络设备。

本实施例以网络设备C确定目的地址为网络设备A地址的等价路由能否形成负载分担,以及目的地址为网络设备H地址的等价路由能否形成负载分担为例,来说明本发明提供的路由负载分担确定方法。

数据中心内网络设备A有地址为2.2.2.0/24的路由,通过多台网络设备学习到网络设备C上。数据中心外网络设备H有地址为3.3.3.0/24的路由,也通过多台网络设备学到网络设备C上。

为了充分利用链路带宽,允许网络设备C形成到网络设备A的路由负载分担;为了适应业务处理需求,不允许网络设备C形成到网络设备H的路由负载分担。

在网络设备C上进行负载分担形成规则配置时,可以在本地保存允许负载分担的地址前缀列表。其中,该地址前缀列表中可以包括地址前缀2.2.2.0。并且,还可以配置等价路由数量M,如10。

当网络设备C确定从自身到网络设备A的等价路由时,其可以首先在本地保存的所有的路由中,识别目的地址为网络设备A的地址的多条路由。

然后可以对识别出的多条路由进行优先级排序,如可以按照以下BGP协议优选规则进行优先级排序:

(1)丢弃下一跳(NEXT_HOP)不可达的路由;

(2)优选首选值(Preferred-value)最大的路由;

(3)优选本地优先级(LOCAL_PREFERENCE)最高的路由;

(4)依次选择network命令生成的路由、import-route命令引入的路由、聚合路由;

(5)优选AS路径(AS_PATH)最短的路由;

(6)依次选择ORIGIN类型为IGP、EGP、Incomplete的路由;

(7)优选MED值最低的路由;

(8)依次选择从EBGP、联盟EBGP、联盟IBGP、IBGP学来的路由;

(9)优选IGP Metric值最小的路由;

(10)优选迭代深度值小的路由;

(11)如果路由都来自EBGP邻居,并且Router ID不相同,优选曾经的最优路由;

(12)优选Router ID最小的路由器发布的路由。如果路由包含RR属性,那么在路由选择过程中,就用ORIGINATOR_ID来替代Router ID;

(13)优选CLUSTER_LIST长度最短的路由;

(14)优选IP地址最小的对等体发布的路由。

进行优先级排序后,相同地址前缀的多条路由按优先顺序形成链表。然后,网络设备C可以确定预设目标属性一致的路由,如为N条。

进一步地,网络设备C可以根据负载分担形成规则中规定的等价路由数量M,从N条路由中选择排在前面的M条路由。

例如,当N小于或等于M时,可以将N条路由确定为等价路由;当N大于M时,可以选择排在最前面的M条路由,确定为等价路由。

进一步地,网络设备C可以确定等价路由的目的地址前缀均为2.2.2.0,在本地保存的允许负载分担的地址前缀列表中可以查找到该目的地址前缀。因此,网络设备C可以确定该等价路由可以形成负载分担。

确定到网络设备A的等价路由形成负载分担后,网络设备C在进行流量转发时,即可分别通过该等价路由对应的下一跳,将该流量转发给网络设备E和网络设备D,进一步地,网络设备E和网络设备D再将该流量转发给网络设备A。也就是说,网络设备C可以同时通过多条链路,如链路310和链路320,将流量转发至网络设备A。

当网络设备C确定从自身到网络设备H的等价路由时,其可以首先在本地保存的所有的路由中,识别目的地址为网络设备H的地址的多条路由。

然后可以对识别出的多条路由进行优先级排序,如可以按照以下BGP协议优选规则进行优先级排序。

进行优先级排序后,相同地址前缀的多条路由按优先顺序形成链表。然后,网络设备C可以确定前9条属性信息一致的路由,如前9条属性信息相同的路由可以为N条。

进一步地,网络设备C可以根据负载分担形成规则中规定的等价路由数量M,从N条路由中选择排在前面的M条路由。

例如,当N小于或等于M时,可以将N条路由确定为等价路由;当N大于M时,可以选择排在最前面的M条路由,确定为等价路由。

进一步地,网络设备C可以确定等价路由的目的地址前缀均为3.3.3.0,在本地保存的允许负载分担的地址前缀列表中查找不到该目的地址前缀。因此,网络设备C可以确定该等价路由不可以形成负载分担。

这种情况下,网络设备C可以直接选取优选路由链表中的第一条路由形成最优路由,其他路由成为备选路由。

确定到网络设备H的最优路由和备选路由后,正常情况下,网络设备C在进行流量转发时,即可通过与最优路由对应的下一跳,将该流量转发给网络设备G,进一步地,网络设备G再将该流量转发给网络设备H。也就是说,网络设备C可以通过链路330将流量转发至网络设备H。

当到网络设备H的最优链路发生故障,如网络设备G发生故障时,网络设备C即可通过备份路由对应的下一跳,将该流量转发给网络设备F,进一步地,网络设备F再将该流量转发给网络设备H。也就是说,网络设备C可以通过链路340将流量转发至网络设备H。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1