本申请涉及通信技术领域,尤其涉及一种负载分担的实现方法及装置。
背景技术:
在运营商网络中,配备多台宽带接入服务器(英文:broadbandaccessserver,简称:bras)设备内插运营商级网络地址转换(英文:carriergradenat,简称:cgn)业务板的情况下,可以在主、备bras设备中配置异框的主、备cgn业务板,实现双机框间cgn备份。通过双机框间备份机制能够保证主、备bras设备中cgn业务板间数据的一致性,从而不仅保证在主cgn业务板故障时触发主备倒换,还可保证在主bras设备故障或链路故障时触发主备倒换,最终实现业务正常运行,避免用户感知故障的存在和影响。
随着用户数量的逐渐增加,一个网络地址转换(英文:networkaddresstranslation,简称:nat)实例绑定一个cgn业务板的方式已无法满足大量用户的nat业务。通过cgn业务板间负载分担技术,可在一个nat实例下绑定多个cgn业务板进而增加用户的nat带宽。在cgn业务板间负载分担组中扩容cgn板数量,使单台bras设备承载更多用户的nat业务,节约bras设备的部署成本。
双机热备的部署方式在保证网络可靠运行的同时,还可通过cgn业务板间负载分担的方式使单台bras设备承载更多用户的nat业务,因此,在运营商组网中,负载分担叠加双机备份是比较常见的部署方案。
如图1所示,图1为现有双机热备部署组网图。在图1中,bras1为主框,bras2为备框,bras主备框内均配置一相同nat实例1。bras主备框内nat实例1下绑定的业务实例组具备一对一映射的备份组,每个备份组均需一条虚拟路由器冗余协议(英文:virtualrouterredundancyprotocol,简称:vrrp)探测链路决策每对备份组的主备。
当bras1主框内备份组1的cgn主业务板异常时,由备份组1的vrrp链路决策bras2备框内备份组1的cgn备业务板升级为cgn主业务板。后续,若接入侧的流量引流至bras1主框内备份组1的业务流量,则需通过bras1与bras2之间建立的保护隧道引流至bras2备框内备份组1升级后的cgn业务板中执行nat业务。
上述双机热备部署方式中,也存在下述缺陷:1)上述双机热备部署组网内,bras主备框内需具备对称的一对一映射备份组,且每个备份组均需建立一条vrrp探测链路决策每对备份组的主备,如此,需要搭建较多vrrp连接,提高部署成本;
2)vrrp探测链路异常时,可能出现bras主备框备份组内cgn业务板均升级为cgn主业务板,影响业务正常处理;
3)备份组异常时,业务流量需通过保护隧道跨框透传。大量的业务流量通过保护隧道透传,使得部署的保护隧道要能承载较大带宽,或保护隧道支持负载,如此,均会提高部署成本。
技术实现要素:
有鉴于此,本申请提供了一种负载分担的实现方法及装置,用以解决现有双机热备部署组网部署成本高以及出现双主状态应用业务正常处理的问题。
第一方面,本申请提供了一种负载分担的实现方法,所述方法应用于第一bras,所述第一bras处于双机热备组网内且为主框,所述第一bras内配置具有第一数量个备份组的第一业务实例,所述双机热备组网内还包括第二bras,所述第二bras为备框且所述第二bras内配置具有第二数量个备份组的第一业务实例;所述方法包括:
当第一备份组异常时,根据负载分担算法,从所述第一数量个备份组中,选择第二备份组,以使得所述第二备份组承载所述第一备份组中的业务流量,所述第二备份组为所述第一数量个备份组中除所述第一备份组之外的其他备份组;
当所述第一数量个备份组均异常,或者,第一数量个备份组中异常备份组的个数超过预设个数时,将所述第一bras降级为备框,以使得所述第二bras升级为主框,并通过所述第二数量个备份组承载所述第一数量个备份组的业务流量。
第二方面,本申请提供了一种负载分担的实现装置,所述装置应用于第一bras,所述第一bras处于双机热备组网内且为主框,所述第一bras内配置具有第一数量个备份组的第一业务实例,所述双机热备组网内还包括第二bras,所述第二bras为备框且所述第二bras内配置具有第二数量个备份组的第一业务实例;所述装置包括:
选择单元,用于当第一备份组异常时,根据负载分担算法,从所述第一数量个备份组中,选择第二备份组,以使得所述第二备份组承载所述第一备份组中的业务流量,所述第二备份组为所述第一数量个备份组中除所述第一备份组之外的其他备份组;
处理单元,用于当所述第一数量个备份组均异常,或者,第一数量个备份组中异常备份组的个数超过预设个数时,将所述第一bras降级为备框,以使得所述第二bras升级为主框,并通过所述第二数量个备份组承载所述第一数量个备份组的业务流量。
第三方面,本申请提供了一种网络设备,包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的机器可执行指令,处理器被机器可执行指令促使执行本申请第一方面所提供的方法。
因此,通过应用本申请提供的负载分担的实现方法及装置,当第一备份组异常时,根据负载分担算法,从第一数量个备份组中,第一bras选择第二备份组,以使得第二备份组承载第一备份组中的第一业务流量,第二备份组为第一数量个备份组中除所述第一备份组之外的其他备份组;当第一数量个备份组均异常,或者,第一数量个备份组中异常备份组的个数超过预设个数时,第一bras将第一bras降级为备框,以使得第二bras升级为主框,并通过第二数量个备份组承载第一数量个备份组的第二业务流量。
如此,主框内业务实例中的一个备份组异常时,优先在主框内业务实例中的其他备份组重新负载,提高了单框备份组异常的可靠性,减少保护隧道跨框透传业务流量的压力。同时,也解决了现有双机热备部署组网部署成本高以及出现双主状态应用业务正常处理的问题。
附图说明
图1为现有双机热备部署组网图;
图2为本申请实施例提供的负载分担的实现方法的流程图;
图3为本申请实施例提供的双机热备部署组网图;
图4-a为本申请实施例示出的一种负载分担数组示例图;
图4-b为本申请实施例提供的备份组1异常后的负载分担数组示例图;
图4-c为本申请实施例提供的备份组1异常后备份组4异常的负载分担数组示例图;
图4-d为本申请实施例提供的备份组1恢复正常后备份组4异常的负载分担数组示例图;
图4-e为本申请实施例提供的备份组1恢复正常后备份组4恢复正常的负载分担数组示例图;
图4-f为本申请实施例示出的另一种负载分担数组示例图;
图5为本申请实施例提供的负载分担的实现装置结构图;
图6为本申请实施例提供的网络设备硬件结构体。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施例并不代表与本申请相一致的所有实施例。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相对应的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
下面对本申请实施例提供的负载分担的实现方法进行详细地说明。参见图2,图2为本申请实施例提供的负载分担的实现方法的流程图。该方法应用于第一bras,本申请实施例提供的负载分担的实现方法可包括如下所示步骤。
步骤210、当第一备份组异常时,根据负载分担算法,从所述第一数量个备份组中,选择第二备份组,以使得所述第二备份组承载所述第一备份组中的第一业务流量,所述第二备份组为所述第一数量个备份组中除所述第一备份组之外的其他备份组。
具体地,如图3所示,图3为本申请实施例提供的双机热备部署组网图。在图3中,第一bras处于双机热备组网内且为主框,第一bras内配置具有第一数量个备份组的第一业务实例。例如,第一业务实例内配置4个备份组,分别为备份组1、备份组2、备份组3以及备份组4。每个备份组内均配置一个业务主板以及业务备板。在本申请实施例中,第一业务实例可具体为nat实例;业务主板可具体为cgn主板;业务备板可具体为cgn备板。
双机热备组网内还包括第二bras,第二bras为备框且第二bras内配置具有第二数量个备份组的第一业务实例。例如,第一业务实例内配置3个备份组,分别为备份组1’、备份组2’以及备份组3’。每个备份组内均配置一个业务主板以及业务备板。在本申请实施例中,第一业务实例可具体为nat实例;业务主板可具体为cgn主板;业务备板可具体为cgn备板。
第一bras与第二bras之间建立虚拟业务冗余协议(英文:virtualserviceredundancyprotocol,简称:vsrp)连接。vsrp连接建立两条通道,一条为控制通道,用于bras间协商主备关系以及同步主备备份表项;另一条为保护隧道,用于业务流量在bras间相互引流、透传。
第一bras与第二bras之间还建立vrrp连接,用于协商主备关系。在本申请实施例中,nat业务实例绑定vsrp实例,vsrp实例绑定vrrp。因vsrp与vrrp进行了绑定,所以,vsrp的主备关系与vrrp决策出的主备关系保持一致。又因nat实例与vsrp进行了绑定,所以,nat实例的主备关系与vsrp的主备关系也保持一致。
第一bras、第二bras分别通过cr接入外网,pc通过sw分别接入第一bras、第二bras。
在本申请实施例中,第一bras为主框内备份组1包括的cgn主板承载nat业务,当cgn主板异常时(例如,故障),第一bras将备份组1内包括的cgn备板升级为新cgn主板,并由新业务主板承载nat流量。
可以理解的是,第一业务实例内的每个备份组均承载不同用户的nat业务,且均由备份组的cgn主板承载nat业务。例如,备份组1承载用户1、用户2的nat业务;备份组2承载用户3、用户4、用户5的nat业务;备份组3承载用户6的nat业务;备份组4承载用户7、用户8的nat业务。
在本申请实施例中,通过负载分担数组表征第一bras内配置的第一数量个备份组。第一数量个备份组互为nat业务的负载分担。负载分担数组中数组元素的值为第一数量个备份组的标识,用于指示第一bras将命中数组元素下标的业务流量分配至数组元素的值对应的备份组中。
负载分担数组的哈希(hash)深度为n*(n-1)。其中,n表示第一业务实例内配置的备份组的数量。本申请实施例中,负载分担数组的深度4*3=12,数组下标从0-11,共12个数组下标。如图4-a所示,图4-a为本申请实施例示出的一种负载分担数组示例图,其中,方框上方的数字为数组元素的下标,方框内的数字为数组元素的值(即备份组的标识,备份组1的标识为1、备份组2的标识为2、备份组3的标识为3、备份组4的标识为4)。
其中,负载分担数组中数组元素的数量可基于负载分担组内任意在位备份组的数量被均分。负载分担组中每一个备份组对应相同数量的数组元素。
可以理解的是,cgn板在处理nat业务时,需使用公网地址资源,以方便的将私网ip地址转换为公网ip地址。第一bras根据负载分担组中数组元素的数量,将公网地址资源进行划分,得到多个公网地址子资源。第一bras将每个公网地址子资源与至每个数组元素进行绑定。
例如,对公网地址资源进行划分后,得到12个公网地址子资源。第一bras将公网地址资源1与数组元素0进行绑定,将公网地址资源2与数组元素1进行绑定,以此类推。如此,使得与数组元素0对应的备份组1在接收到业务流量时,使用公网地址资源1执行nat业务。
根据前述可知,备份组1内cgn主板异常时,备份组1内包括的cgn备板升级为新cgn主板,并由新业务主板承载nat流量。若cgn备板也异常,也即是备份组1整体cgn板均异常,此时,第一bras根据负载分担算法,从第一数量个备份组中,选择其他备份组(也可称之为第二备份组),以使得第二备份组承载备份组1中的业务流量。其中,第二备份组为第一数量个备份组中除备份组1之外的备份组。
进一步地,第一bras根据负载分担算法,从第一数量个备份组中,选择其他备份组,具体过程为:根据备份组1的标识,从负载分担数组中,查找第一数组元素,第一数组元素的值为备份组1的标识。根据第一数组元素的数量(例如,3个)以及负载分担组中在位且正常的第二备份组的数量(例如,3个),确定第一流量分配规则。根据第一流量分配规则,将第一数组元素的值更新为第二备份组的标识,并将第一数组元素绑定的第一公网地址资源与第二备份组的标识绑定,以使第二备份组承载业务流量。如此实现异常备份组承载的业务流量如何在正常备份组之间分配。
作为一种实施方式,上述确定的第一流量分配规则可为流量均分规则,以使异常备份组承载的业务流量平均分配至正常备份组,而正常备份组承载的业务流量不参与分配。
如图4-b所示,图4-b为本申请实施例提供的备份组1异常后的负载分担数组示例图。在备份组1异常之前,数组元素0、数组元素4、数组元素8的值为备份组1的标识。备份组1异常之后,数组元素0、数组元素4、数组元素8的数量可被第二备份组的数量均分。此时,将数组元素0、数组元素4、数组元素8的值分别更新为备份组2、备份组3、备份组4的标识。同时,将数组元素0绑定的公网地址资源1与备份组4绑定、将数组元素4绑定的公网地址资源5与备份组3绑定、将数组元素8绑定的公网地址资源9与备份组2绑定。
在备份组1异常的基础上,若备份组4异常,如图4-c所示,图4-c为本申请实施例提供的备份组1异常后备份组4异常的负载分担数组示例图。在图4-c中,数组元素0、数组元素3、数组元素7、数组元素11的值为备份组4的标识。备份组4异常之后,数组元素0、数组元素3、数组元素7、数组元素11的数量可被第二备份组的数量均分。此时,将数组元素0、数组元素3、数组元素7、数组元素11的值分别更新为备份组2、备份组3的标识。同时,将数组元素0绑定的公网地址资源1、数组元素7绑定的公网地址资源8与备份组3绑定、将数组元素3绑定的公网地址资源4、数组元素11绑定的公网地址资源12与备份组2绑定。
更进一步地,在将数组元素0、数组元素4、数组元素8的值更新为备份组2、备份组3、备份组4的标识之后,第一bras还将备份组1的标识记录在数组元素0、数组元素4、数组元素8对应的链表中,链表用于记录异常备份组的标识。
若备份组1恢复正常,则第一bras从负载分担数组中,查找第二数组元素,该第二数组元素对应的链表中记录有异常备份组的标识。若负载分担数组中数组元素的数量可基于负载分担组内任意在位备份组的数量被均分,且每一个第二备份组对应相同数量的数组元素,则第一bras根据负载分担数组中数组元素的数量以及负载分担组中当前在位且正常的备份组的数量,确定第二流量分配规则,第二流量分配规则为从每一个第二备份组对应的数组元素中分配相同数量的数组元素给第一备份组,以使得每一个在位且正常的备份组对应相同数量的数组元素。
根据第二流量分配规则,从第二备份组对应的第二数组元素中,第一bras选择第三数量个数组元素。第一bras将选择出的第三数量个数组元素的值更新为备份组1的标识,并将第三数量个数组元素绑定的第二公网地址资源与第一备份组1的标识绑定,以使备份组1承载异常备份组的业务流量。
如图4-d所示,图4-d为本申请实施例提供的备份组1恢复正常后备份组4异常的负载分担数组示例图。在备份组1恢复正常之后,备份组4仍未异常。数组元素0、数组元素3、数组元素7、数组元素11对应的链表中记录有异常备份组的标识,例如,备份组1、备份组4的标识。负载分担数组中数组元素的数量(例如,12)可基于负载分担组内在位备份组的数量(例如,2,备份组2、备份组3)被均分,且备份组2、备份组3对应相同数量的数组元素(例如,6)。此时,从备份组2对应的数组元素中选择2个数组元素(数组元素3、数组元素11、),从备份组3对应的数组元素中选择2个数组元素(数组元素0、数组元素7)。此时,将数组元素0、数组元素3、数组元素7、数组元素11的值更新为备份组1的标识。同时,将数组元素0绑定的公网地址资源1与备份组1绑定、将数组元素3绑定的公网地址资源4与备份组1绑定、将数组元素7绑定的公网地址资源8与备份组1绑定、将数组元素11绑定的公网地址资源12与备份组1绑定。
在备份组1恢复正常的基础上,若备份组4也恢复正常,如图4-e所示,图4-e为本申请实施例提供的备份组1恢复正常后备份组4恢复正常的负载分担数组示例图。在备份组4恢复正常后,数组元素0、数组元素4、数组元素8对应的链表中记录有异常备份组的标识,例如,备份组1、备份组4的标识。负载分担数组中数组元素的数量(例如,12)可基于负载分担组内在位备份组的数量(例如,3,备份组1、备份组2、备份组3)被均分,且备份组1、备份组2、备份组3对应相同数量的数组元素(例如,4)。此时,从备份组1对应的数组元素中选择1个数组元素(数组元素0),从备份组2对应的数组元素中选择1个数组元素(数组元素4),从备份组3对应的数组元素中选择1个数组元素(数组元素8)。此时,将数组元素0、数组元素4、数组元素8的值更新为备份组4的标识。同时,将数组元素0绑定的公网地址资源1与备份组4绑定、将数组元素4绑定的公网地址资源5与备份组4绑定、将数组元素8绑定的公网地址资源9与备份组4绑定。
如此,主框内业务实例中的一个备份组异常时,优先在主框内业务实例中的其他备份组重新负载,提高了单框备份组异常的可靠性,减少保护隧道跨框透传业务流量的压力。
步骤220、当所述第一数量个备份组均异常,或者,第一数量个备份组中异常备份组的个数超过预设个数时,将所述第一bras降级为备框,以使得所述第二bras升级为主框,并通过所述第二数量个备份组承载所述第一数量个备份组的第二业务流量。
具体地,根据步骤210的描述,第一业务实例内配置的备份组1、备份组2、备份组3以及备份组4均异常,或者,4个备份组中异常备份组的个数超过预设个数(例如,预设个数为2个,备份组1、备份组2、备份组3异常)时,第一bras将自身降级为备框。同时,第二bras将自身升级为主框。
此时,第二bras内配置的具有第二数量个备份组承载第一数量个备份组的业务流量。
可以理解的是,第一bras将自身降级为备框,第二bras将自身升级为主框的过程与现有技术中主备关系调整的过程相同,在此不再复述。
需要说明的是,在本申请实施例中,也通过负载分担数组表征第二bras内配置的第二数量个备份组,且第二数量不等于第一数量,以第二数量小于第一数量为例说明。例如,第二数量为3。第二数量个备份组互为nat业务的负载分担。负载分担数组中数组元素的值为第二数量个备份组的标识,用于指示第二bras将命中数组元素下标的业务流量分配至数组元素的值对应的备份组中。
本申请实施例中,负载分担数组的深度12,数组下标从0-11,共12个数组下标。如图4-f所示,图4-f为本申请实施例示出的另一种负载分担数组示例图,其中,方框上方的数字为数组元素的下标,方框内的数字为数组元素的值(即备份组的标识,备份组1的标识为1、备份组2的标识为2、备份组3的标识为3)。
其中,负载分担数组中数组元素的数量可基于负载分担组内任意在位备份组的数量被均分。负载分担组中每一个备份组对应相同数量的数组元素。
进一步地,在本申请实施例中,第一bras与第二bras之间已建立vsrp连接,该vsrp连接包括控制通道以及保护隧道。通过控制通道,第一bras向第二bras发送同步备份报文,该同步备份报文包括用户表、公网地址资源以及资源数组绑定关系。第二bras接收到同步备份报文后,从中获取用户表、公网地址资源以及资源数组。第二bras存储用户表、公网地址资源以及资源数组绑定关系,并根据用户表、公网地址资源对第二数量个备份组进行业务流量的分配,将资源数组绑定关系同步至第二bras包括的负载分担数组中。
其中,资源数组绑定关系具体为公网地址资源划分后得到的每个公网地址子资源与第一bras中负载分担数组中每个数组元素之间的绑定关系。
在一个例子中,第一bras将公网地址资源1与数组元素0进行绑定,将公网地址资源2与数组元素1进行绑定。第一bars将资源数组绑定关系同步至第二bras后,第二bars也将公网地址资源1与自身包括的负载分担数组中的数组元素0进行绑定,将公网地址资源2与自身包括的负载分担数组中的数组元素1进行绑定。
如此,采用上述公网资源分配方式后,bars接收到业务流量时,根据业务报文包括的私网源ip、私网源vpn进行哈希计算,将用户的业务流量负载分担到负载分担数组某一数组下标的值对应的备份组中。第一bars、第二bars采用相同方式执行负载分担,且第二bars中负载分担数组中的数组元素绑定的公网地址资源与第一bars中负载分担数组中的数组元素绑定的公网地址资源相同。即可保证第一bars、第二bars内配置nat实例具有不同数量个备份组的场景下,业务流量及处理业务流量所使用的公网地址资源可分担至同一备份组中。
同理,在第一bars、第二bars通过保护隧道透传业务流量时,因第二bars也是根据私网源ip、私网源vpn进行哈希计算,所以,可以保证将业务流量引流至至处理同一用户的业务流量的备份组。
因此,通过应用本申请提供的负载分担的实现方法及装置,当第一备份组异常时,根据负载分担算法,从第一数量个备份组中,第一bras选择第二备份组,以使得第二备份组承载第一备份组中的第一业务流量,第二备份组为第一数量个备份组中除所述第一备份组之外的其他备份组;当第一数量个备份组均异常,或者,第一数量个备份组中异常备份组的个数超过预设个数时,第一bras将第一bras降级为备框,以使得第二bras升级为主框,并通过第二数量个备份组承载第一数量个备份组的第二业务流量。
如此,主框内业务实例中的一个备份组异常时,优先在主框内业务实例中的其他备份组重新负载,提高了单框备份组异常的可靠性,减少保护隧道跨框透传业务流量的压力。同时,也解决了现有双机热备部署组网部署成本高以及出现双主状态应用业务正常处理的问题。
基于同一发明构思,本申请实施例还提供了与负载分担的实现方法对应的负载分担的实现装置。参见图5,图5为本申请实施例提供的负载分担的实现装置结构图。所述装置应用于所述装置应用于第一bras,所述第一bras处于双机热备组网内且为主框,所述第一bras内配置具有第一数量个备份组的第一业务实例,所述双机热备组网内还包括第二bras,所述第二bras为备框且所述第二bras内配置具有第二数量个备份组的第一业务实例;所述装置包括:
选择单元510,用于当第一备份组异常时,根据负载分担算法,从所述第一数量个备份组中,选择第二备份组,以使得所述第二备份组承载所述第一备份组中的业务流量,所述第二备份组为所述第一数量个备份组中除所述第一备份组之外的其他备份组;
处理单元520,用于当所述第一数量个备份组均异常,或者,第一数量个备份组中异常备份组的个数超过预设个数时,将所述第一bras降级为备框,以使得所述第二bras升级为主框,并通过所述第二数量个备份组承载所述第一数量个备份组的业务流量。
可选地,每个备份组内包括业务主板以及业务备板;
所述处理单元520还用于,当所述第一备份组内包括的业务主板异常时,将所述第一备份组内包括的业务备板升级为新业务主板,并由所述新业务主板承载业务流量。
可选地,通过负载分担数组表征所述第一数量个备份组,所述负载分担数组中数组元素的值为第一数量个备份组的标识;所述装置还包括:
划分单元(图中未示出),用于根据所述负载分担组中数组元素的数量,将公网地址资源进行划分,得到多个公网地址子资源;
绑定单元(图中未示出),将每个公网地址子资源与至每个数组元素进行绑定;
所述选择单元510具体包括:第一查找子单元,用于根据所述第一备份组的标识,从所述负载分担数组中,查找第一数组元素,所述第一数组元素的值为所述第一备份组的标识;
第一确定子单元(图中未示出),用于根据所述第一数组元素的数量以及所述负载分担组中在位且正常的第二备份组的数量,确定第一流量分配规则;
第一更新子单元(图中未示出),用于根据所述第一流量分配规则,将所述第一数组元素的值更新为所述第二备份组的标识,并将所述第一数组元素绑定的第一公网地址资源与所述第二备份组的标识绑定,以使所述第二备份组承载所述第一业务流量;
其中,所述负载分担数组中数组元素的数量可基于所述负载分担组内任意在位备份组的数量被均分;
所述负载分担组中每一个备份组对应相同数量的数组元素。
可选地,所述确定子单元(图中未示出)具体用于,当所述第一数组元素的数量可被所述第二备份组的数量均分时,确定所述第一流量分配规则,所述第一流量分配规则为将所述第一业务流平均分配至所述第二备份组中。
可选地,所述选择单元510还包括:记录子单元(图中未示出),用于将所述第一备份组的标识记录在所述第一数组元素对应的链表中,所述链表用于记录异常备份组的标识;
第二查找子单元(图中未示出),用于若所述第一备份组恢复正常,则从所述负载分担数组中,查找第二数组元素,所述第二数组元素对应的链表中记录有异常备份组的标识;
第二确定子单元(图中未示出),用于若所述负载分担数组中数组元素的数量可基于所述负载分担组内任意在位备份组的数量被均分,且每一个第二备份组对应相同数量的数组元素,则根据所述负载分担数组中数组元素的数量以及所述负载分担组中当前在位且正常的备份组的数量,确定第二流量分配规则,所述第二流量分配规则为从每一个第二备份组对应的数组元素中分配相同数量的数组元素给所述第一备份组,以使得每一个在位且正常的备份组对应相同数量的数组元素;
选择子单元(图中未示出),用于根据所述第二流量分配规则,从所述第二备份组对应的第二数组元素中,选择第三数量个数组元素;
第二更新子单元(图中未示出),用于将选择出的所述第三数量个数组元素的值更新为所述第一备份组的标识,并将所述第三数量个数组元素绑定的第二公网地址资源与所述第一备份组的标识绑定,以使所述第一备份组承载所述异常备份组的业务流量。
可选地,所述第一bras与所述第二bras之间已建立vsrp连接,所述vsrp连接包括控制通道;所述装置还包括:
发送单元(图中未示出),用于通过所述控制通道,向所述第二bras发送同步备份报文,所述同步备份报文包括用户表、公网地址资源以及资源数组绑定关系,以使得所述第二bras存储所述用户表、公网地址资源以及资源数组绑定关系,并根据所述用户表、公网地址资源对所述第二数量个备份组进行业务流量的分配,将资源数组绑定关系同步至所述第二bras包括的负载分担数组中;
所述资源数组绑定关系具体为所述公网地址资源划分后得到的每个公网地址子资源与所述第一bras中负载分担数组中每个数组元素之间的绑定关系
因此,通过应用本申请提供的负载分担的实现装置,当第一备份组异常时,根据负载分担算法,从第一数量个备份组中,该装置选择第二备份组,以使得第二备份组承载第一备份组中的第一业务流量,第二备份组为第一数量个备份组中除所述第一备份组之外的其他备份组;当第一数量个备份组均异常,或者,第一数量个备份组中异常备份组的个数超过预设个数时,该装置将第一bras降级为备框,以使得第二bras升级为主框,并通过第二数量个备份组承载第一数量个备份组的第二业务流量。
如此,主框内业务实例中的一个备份组异常时,优先在主框内业务实例中的其他备份组重新负载,提高了单框备份组异常的可靠性,减少保护隧道跨框透传业务流量的压力。同时,也解决了现有双机热备部署组网部署成本高以及出现双主状态应用业务正常处理的问题。
基于同一发明构思,本申请实施例还提供了一种网络设备,如图6所示,包括处理器610、收发器620和机器可读存储介质630,机器可读存储介质630存储有能够被处理器610执行的机器可执行指令,处理器610被机器可执行指令促使执行本申请实施例所提供的负载分担的实现方法。前述图5所示的负载分担的实现装置,可采用如图6所示的网络设备硬件结构实现。
上述计算机可读存储介质630可以包括随机存取存储器(英文:randomaccessmemory,简称:ram),也可以包括非易失性存储器(英文:non-volatilememory,简称:nvm),例如至少一个磁盘存储器。可选的,计算机可读存储介质630还可以是至少一个位于远离前述处理器610的存储装置。
上述处理器610可以是通用处理器,包括中央处理器(英文:centralprocessingunit,简称:cpu)、网络处理器(英文:networkprocessor,简称:np)等;还可以是数字信号处理器(英文:digitalsignalprocessor,简称:dsp)、专用集成电路(英文:applicationspecificintegratedcircuit,简称:asic)、现场可编程门阵列(英文:field-programmablegatearray,简称:fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例中,处理器610通过读取机器可读存储介质630中存储的机器可执行指令,被机器可执行指令促使能够实现处理器610自身以及调用收发器620执行前述本申请实施例描述的负载分担的实现方法。
另外,本申请实施例提供了一种机器可读存储介质630,机器可读存储介质630存储有机器可执行指令,在被处理器610调用和执行时,机器可执行指令促使处理器610自身以及调用收发器620执行前述本申请实施例描述的负载分担的实现方法。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
对于负载分担的实现装置以及机器可读存储介质实施例而言,由于其涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
1.一种负载分担的实现方法,其特征在于,所述方法应用于第一bras,所述第一bras处于双机热备组网内且为主框,所述第一bras内配置具有第一数量个备份组的第一业务实例,所述双机热备组网内还包括第二bras,所述第二bras为备框且所述第二bras内配置具有第二数量个备份组的第一业务实例;所述方法包括:
当第一备份组异常时,根据负载分担算法,从所述第一数量个备份组中,选择第二备份组,以使得所述第二备份组承载所述第一备份组中的业务流量,所述第二备份组为所述第一数量个备份组中除所述第一备份组之外的其他备份组;
当所述第一数量个备份组均异常,或者,第一数量个备份组中异常备份组的个数超过预设个数时,将所述第一bras降级为备框,以使得所述第二bras升级为主框,并通过所述第二数量个备份组承载所述第一数量个备份组的业务流量。
2.根据权利要求1所述的方法,其特征在于,每个备份组内包括cgn主板以及cgn备板;
所述当第一备份组异常时,根据负载分担算法,从所述第一数量个备份组中,选择第二备份组之前,所述方法还包括:
当所述第一备份组内包括的业务主板异常时,将所述第一备份组内包括的业务备板升级为新业务主板,并由所述新业务主板承载业务流量。
3.根据权利要求1所述的方法,其特征在于,通过负载分担数组表征所述第一数量个备份组,所述负载分担数组中数组元素的值为第一数量个备份组的标识;所述方法还包括:
根据所述负载分担组中数组元素的数量,将公网地址资源进行划分,得到多个公网地址子资源;
将每个公网地址子资源与至每个数组元素进行绑定;
所述根据负载分担算法,从所述第一数量个备份组中,选择第二备份组,具体包括:
根据所述第一备份组的标识,从所述负载分担数组中,查找第一数组元素,所述第一数组元素的值为所述第一备份组的标识;
根据所述第一数组元素的数量以及所述负载分担组中在位且正常的第二备份组的数量,确定第一流量分配规则;
根据所述第一流量分配规则,将所述第一数组元素的值更新为所述第二备份组的标识,并将所述第一数组元素绑定的第一公网地址资源与所述第二备份组的标识绑定,以使所述第二备份组承载所述第一业务流量;
其中,所述负载分担数组中数组元素的数量可基于所述负载分担组内任意在位备份组的数量被均分;
所述负载分担组中每一个备份组对应相同数量的数组元素。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一数组元素的数量以及所述负载分担组中在位且正常的第二备份组的数量,确定第一流量分配规则,具体包括:
当所述第一数组元素的数量可被所述第二备份组的数量均分时,确定所述第一流量分配规则,所述第一流量分配规则为将所述第一业务流平均分配至所述第二备份组中。
5.根据权利要求3所述的方法,其特征在于,所述将所述第一数组元素的值更新为所述第二备份组的标识之后,还包括:
将所述第一备份组的标识记录在所述第一数组元素对应的链表中,所述链表用于记录异常备份组的标识;
若所述第一备份组恢复正常,则从所述负载分担数组中,查找第二数组元素,所述第二数组元素对应的链表中记录有异常备份组的标识;
若所述负载分担数组中数组元素的数量可基于所述负载分担组内任意在位备份组的数量被均分,且每一个第二备份组对应相同数量的数组元素,则根据所述负载分担数组中数组元素的数量以及所述负载分担组中当前在位且正常的备份组的数量,确定第二流量分配规则,所述第二流量分配规则为从每一个第二备份组对应的数组元素中分配相同数量的数组元素给所述第一备份组,以使得每一个在位且正常的备份组对应相同数量的数组元素;
根据所述第二流量分配规则,从所述第二备份组对应的第二数组元素中,选择第三数量个数组元素;
将选择出的所述第三数量个数组元素的值更新为所述第一备份组的标识,并将所述第三数量个数组元素绑定的第二公网地址资源与所述第一备份组的标识绑定,以使所述第一备份组承载所述异常备份组的业务流量。
6.根据权利要求3所述的方法,其特征在于,所述第一bras与所述第二bras之间已建立vsrp连接,所述vsrp连接包括控制通道;所述方法还包括:
通过所述控制通道,向所述第二bras发送同步备份报文,所述同步备份报文包括用户表、公网地址资源以及资源数组绑定关系,以使得所述第二bras存储所述用户表、公网地址资源以及资源数组绑定关系,并根据所述用户表、公网地址资源对所述第二数量个备份组进行业务流量的分配,将资源数组绑定关系同步至所述第二bras包括的负载分担数组中;
所述资源数组绑定关系具体为所述公网地址资源划分后得到的每个公网地址子资源与所述第一bras中负载分担数组中每个数组元素之间的绑定关系。
7.一种负载分担的实现装置,其特征在于,所述装置应用于第一bras,所述第一bras处于双机热备组网内且为主框,所述第一bras内配置具有第一数量个备份组的第一业务实例,所述双机热备组网内还包括第二bras,所述第二bras为备框且所述第二bras内配置具有第二数量个备份组的第一业务实例;所述装置包括:
选择单元,用于当第一备份组异常时,根据负载分担算法,从所述第一数量个备份组中,选择第二备份组,以使得所述第二备份组承载所述第一备份组中的业务流量,所述第二备份组为所述第一数量个备份组中除所述第一备份组之外的其他备份组;
处理单元,用于当所述第一数量个备份组均异常,或者,第一数量个备份组中异常备份组的个数超过预设个数时,将所述第一bras降级为备框,以使得所述第二bras升级为主框,并通过所述第二数量个备份组承载所述第一数量个备份组的业务流量。
8.根据权利要求7所述的装置,其特征在于,每个备份组内包括业务主板以及业务备板;
所述处理单元还用于,当所述第一备份组内包括的业务主板异常时,将所述第一备份组内包括的业务备板升级为新业务主板,并由所述新业务主板承载业务流量。
9.根据权利要求7所述的装置,其特征在于,通过负载分担数组表征所述第一数量个备份组,所述负载分担数组中数组元素的值为第一数量个备份组的标识;所述装置还包括:
划分单元,用于根据所述负载分担组中数组元素的数量,将公网地址资源进行划分,得到多个公网地址子资源;
绑定单元,将每个公网地址子资源与至每个数组元素进行绑定;
所述选择单元具体包括:第一查找子单元,用于根据所述第一备份组的标识,从所述负载分担数组中,查找第一数组元素,所述第一数组元素的值为所述第一备份组的标识;
第一确定子单元,用于根据所述第一数组元素的数量以及所述负载分担组中在位且正常的第二备份组的数量,确定第一流量分配规则;
第一更新子单元,用于根据所述第一流量分配规则,将所述第一数组元素的值更新为所述第二备份组的标识,并将所述第一数组元素绑定的第一公网地址资源与所述第二备份组的标识绑定,以使所述第二备份组承载所述第一业务流量;
其中,所述负载分担数组中数组元素的数量可基于所述负载分担组内任意在位备份组的数量被均分;
所述负载分担组中每一个备份组对应相同数量的数组元素。
10.根据权利要求9所述的装置,其特征在于,所述确定子单元具体用于,当所述第一数组元素的数量可被所述第二备份组的数量均分时,确定所述第一流量分配规则,所述第一流量分配规则为将所述第一业务流平均分配至所述第二备份组中。
11.根据权利要求9所述的装置,其特征在于,所述选择单元还包括:
记录子单元,用于将所述第一备份组的标识记录在所述第一数组元素对应的链表中,所述链表用于记录异常备份组的标识;
第二查找子单元,用于若所述第一备份组恢复正常,则从所述负载分担数组中,查找第二数组元素,所述第二数组元素对应的链表中记录有异常备份组的标识;
第二确定子单元,用于若所述负载分担数组中数组元素的数量可基于所述负载分担组内任意在位备份组的数量被均分,且每一个第二备份组对应相同数量的数组元素,则根据所述负载分担数组中数组元素的数量以及所述负载分担组中当前在位且正常的备份组的数量,确定第二流量分配规则,所述第二流量分配规则为从每一个第二备份组对应的数组元素中分配相同数量的数组元素给所述第一备份组,以使得每一个在位且正常的备份组对应相同数量的数组元素;
选择子单元,用于根据所述第二流量分配规则,从所述第二备份组对应的第二数组元素中,选择第三数量个数组元素;
第二更新子单元,用于将选择出的所述第三数量个数组元素的值更新为所述第一备份组的标识,并将所述第三数量个数组元素绑定的第二公网地址资源与所述第一备份组的标识绑定,以使所述第一备份组承载所述异常备份组的业务流量。
12.根据权利要求9所述的装置,其特征在于,所述第一bras与所述第二bras之间已建立vsrp连接,所述vsrp连接包括控制通道;所述装置还包括:
发送单元,用于通过所述控制通道,向所述第二bras发送同步备份报文,所述同步备份报文包括用户表、公网地址资源以及资源数组绑定关系,以使得所述第二bras存储所述用户表、公网地址资源以及资源数组绑定关系,并根据所述用户表、公网地址资源对所述第二数量个备份组进行业务流量的分配,将资源数组绑定关系同步至所述第二bras包括的负载分担数组中;
所述资源数组绑定关系具体为所述公网地址资源划分后得到的每个公网地址子资源与所述第一bras中负载分担数组中每个数组元素之间的绑定关系。
技术总结