CN111800348A - 一种负载均衡方法和装置 - Google Patents

一种负载均衡方法和装置 Download PDF

Info

Publication number
CN111800348A
CN111800348A CN201910280669.3A CN201910280669A CN111800348A CN 111800348 A CN111800348 A CN 111800348A CN 201910280669 A CN201910280669 A CN 201910280669A CN 111800348 A CN111800348 A CN 111800348A
Authority
CN
China
Prior art keywords
repeater
repeaters
load
target
transponder
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN201910280669.3A
Other languages
English (en)
Inventor
黄琳
葛丽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201910280669.3A priority Critical patent/CN111800348A/zh
Priority to PCT/CN2020/077464 priority patent/WO2020207148A1/zh
Publication of CN111800348A publication Critical patent/CN111800348A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1021Server selection for load balancing based on client or server locations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例公开了一种负载均衡方法和装置,包括:根据第一转发器的负载情况、其他转发器的负载情况、第一转发器和其他转发器之间的物理位置关系确定第一目标转发器;生成所述第一目标转发器的分流表信息,将所述分流表信息下发到所有转发器中。本发明实施例基于物理位置关系选择第一目标转发器,充分考虑了转发器之间的物理位置,提高了处理效率。

Description

一种负载均衡方法和装置
技术领域
本发明实施例涉及但不限于通讯领域,尤指一种负载均衡方法和装置。
背景技术
在网络功能虚拟化(NFV,Network Function Virtualization)网络架构中,控制器和转发器分布式部署,控制器集中控制多个转发器,转发器负责业务处理和报文转发。
目前基于NFV网络结构的负载均衡方法有如下优点:
1.转发器和控制器分别部署,控制器集中管理转发器,灵活使用,并易于维护。
2.通过负载均衡达到分布式处理效果,提高网络数据处理效率。
3.通过负载均衡方式提高资源利用率。
4.对物理链路上的负载均衡,使物理网络上的负载均衡,避免局部链路负荷大。
5.负载均衡策略一般是均分方法,同时考虑物理资源避免局部最优。
然而,目前基于NFV网络结构的负载均衡方法也具有如下缺点:
1.进行负载均衡时仅考虑虚拟资源而不关注物理资源的状态,例如两个虚拟网络功能(VNF,Virtual Network Feature)之间的物理位置可能导致局部链路上负荷大,甚至出现丢包或延时的情况,从而降低了处理效率。
2.每个VNF的物理资源、业务资源可能不一致,在进行负载均衡时如果单独考虑资源总值,而不考虑有效资源的使用情况,则会降低处理性能。
3.仅仅依靠单个转发器的负载评价进行分流,而没有考虑分流后整体网络的负载均衡效果,长期看也只是局部最优。
发明内容
本发明实施例提供了一种负载均衡方法和装置,能够提高处理效率。
本发明实施例提供了一种负载均衡方法,包括:
根据第一转发器的负载情况、其他转发器的负载情况、第一转发器和其他转发器之间的物理位置关系确定第一目标转发器;
生成所述第一目标转发器的分流表信息,将所述分流表信息下发到所有转发器中。
本发明实施例提供了一种负载均衡装置,包括:
确定模块,用于根据第一转发器的负载情况、其他转发器的负载情况、第一转发器和其他转发器之间的物理位置关系确定第一目标转发器;
处理模块,用于生成所述第一目标转发器的分流表信息,将所述分流表信息下发到所有转发器中。
本发明实施例提供了一种负载均衡装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令被所述处理器执行时,实现上述任一种负载均衡方法。
本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种负载均衡方法的步骤。
本发明一个实施例包括:根据第一转发器的负载情况、其他转发器的负载情况、第一转发器和其他转发器之间的物理位置关系确定第一目标转发器;生成所述第一目标转发器的分流表信息,将所述分流表信息下发到所有转发器中。本发明实施例基于物理位置关系选择第一目标转发器,充分考虑了转发器之间的物理位置,提高了处理效率。
在另一个实施例中,预设条件包括:剩余内存大于第一阈值,且CPU利用率小于第二阈值,且有效转发能力大于第三阈值,且当前所承载的业务容量小于第四阈值。本发明实施例在进行负载均衡时考虑了资源的使用情况,从而提高了处理性能。
在另一个实施例中,该方法还包括:计算所有转发器的负载值和负载均值;根据所有转发器的负载值和负载均值确定待调整队列和待分流转发器队列;其中,所述待调整队列包括所有需要进行负载均衡调整的转发器,所述待分流转发器队列包括所有不需要进行负载均衡调整的转发器;对于所述待调整队列中的每一个第四转发器,确定所述第四转发器对应的第二目标转发器;其中,所述第二目标转发器为所述待分流转发器队列中的一个或多个转发器;将所述第四转发器中需要调整的业务量备份并切换到所述第二目标转发器,删除所述第四转发器的分流表信息,生成所述第二目标转发器的分流表信息,将所述分流表信息下发到所有转发器中。本发明实施例基于整体网络的负载均衡效果进行负载均衡调整,使得整体网络负载均衡最优。
本发明实施例的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例而了解。本发明实施例的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明实施例技术方案的进一步理解,并且构成说明书的一部分,与本发明实施例的实施例一起用于解释本发明实施例的技术方案,并不构成对本发明实施例技术方案的限制。
图1为本发明实施例NFV网络结构的示意图;
图2为本发明一个实施例提出的负载均衡方法的流程图;
图3为本发明另一个实施例提出的负载均衡方法的流程图;
图4为本发明实施例的示例1提出的负载均衡方法的流程图;
图5为本发明实施例的示例2提出的负载均衡方法的流程图;
图6为本发明另一个实施例的负载均衡装置的结构组成示意图;
图7为本发明另一个实施例的负载均衡装置的结构组成示意图。
具体实施方式
下文中将结合附图对本发明实施例进行详细说明。需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在介绍本发明实施例的负载均衡方法之前,首先介绍NFV网络结构,如图1所示,在NFV网络架构中,VNF控制器(即图1中的C)和VNF转发器(即图1中的F)分别部署到不同的虚拟机上,转发器部署多个,控制器部署一个。转发器不仅有三层转发能力,还可以具有业务处理器(例如网络地址转换(NAT,Network Address Translation)业务处理器)的业务处理能力。
控制器需要维护每个转发器的转发器基本性能参数表和转发器资源使用表,并初始化各表中的信息,转发器需要维护分流表和VNF资源使用表。
其中,转发器基本性能参数表包括但不限于以下参数:设备编号、设备互联网协议(IP,Internet Protocol)地址、物理位置标识和转发器所在的虚拟机的基本性能参数。其中,设备编号即转发器所在虚拟机的编号,转发器所在的虚拟机基本性能参数包括以下至少之一:中央处理单元(CPU,Center Process Unit)个数、可用内存、有效转发能力(即端口可用带宽)、CPU利用率。
其中,转发器资源使用表包括但不限于以下参数:组件编号(与设备编号相同,为转发器所在虚拟机的编号)、转发器所能承载的业务总容量、业务利用率、当前业务所占用的虚拟机的资源。其中,当前业务所占用的虚拟机的资源包括:内存、CPU。
其中,分流表包括但不限于以下参数:唯一键值、组件编号、老化时间等,以及其他业务相关的信息(如地址池利用率、会话容量等)。其中,唯一键值可以是用于识别数据包的任何信息,例如,三元组(协议、源IP地址、源端口号)或五元组(即协议、源IP地址、源端口号、目的IP地址、目的端口号)等。其中,老化时间用于对分流表项进行刷新,以此来避免无效分流表的使用。
其中,分流表可以根据业务需求进行老化、删除、更新。
其中,VNF资源使用表包括但不限于以下参数:业务剩余资源量、资源利用率、资源利用率阈值、CPU使用数、CPU总数、CPU利用率、CPU利用率阈值、单CPU上需要处理的业务量、内存总量、内存使用率阈值、已使用的内存值、剩余内存值、可承受的转发速率、单位时间内转发报文的数量、吞吐量(即转发性能)、吞吐量阈值、平均资源使用率、资源使用误差率。
下面介绍转发器向控制器的注册流程。
(1)所有转发器接入控制器,并注册成功,上报各自参数(这里上报的参数包括上述转发器基本性能参数表和转发器资源使用表中的参数),控制器初始化转发器基本性能参数表和转发器资源使用表,转发器在控制器中的唯一标识。
(2)控制器实时监控各转发器,如转发器断连则将该转发器从转发器基本性能参数表和转发器资源使用表中删除,取消注册信息。
(3)转发器定时向控制器上报数据,上报的数据包括转发器基本性能参数表和转发器资源使用表中的参数。
(4)控制器定时维护转发器的有效信息,该有效信息包括转发器基本性能参数表和转发器资源使用表中的参数。
参见图2,本发明一个实施例提出了一种负载均衡方法,包括:
步骤200、根据第一转发器的负载情况、其他转发器的负载情况、第一转发器和其他转发器之间的物理位置关系确定第一目标转发器。
在本发明实施例中,可以在接收到第一转发器上报的指令时,确定第一目标转发器。
在本发明实施例中,上报的指令中包括接收到的流量的相关信息,也可以不包括任何信息,仅仅作为通知有流量需要处理的指令。
在本发明实施例中,根据第一转发器的负载情况、其他转发器的负载情况、第一转发器和其他转发器之间的物理位置关系确定第一目标转发器包括以下至少之一:
当所述第一转发器的负载情况满足预设条件时,选择所述第一转发器作为所述第一目标转发器;
当所述第一转发器的负载情况不满足所述预设条件,且所述其他转发器中存在负载情况满足所述预设条件的第二转发器,且所述第二转发器中存在至少一个与所述第一转发器处于同一物理位置范围的第三转发器时,从所述第三转发器中选择其中一个转发器作为第一目标转发器;
当所述第一转发器的负载情况不满足所述预设条件,且所述其他转发器中存在负载情况满足所述预设条件的第二转发器,且所述第二转发器均与所述第一转发器处于不同的物理位置范围时,从所述第二转发器中选择其中一个转发器作为所述第一目标转发器。
本发明实施例基于物理位置就近原则优先选择与第一转发器处于同一物理位置范围的转发器作为第一目标转发器,充分考虑了转发器之间的物理位置,提高了处理效率。
在本发明实施例中,物理位置范围可以根据实际需要设置,可以是一个较大的范围,例如一个区域,也可以是一个很小的范围,例如是一个办公楼、或一个小区,本发明实施例对物理位置范围的大小不作限定。
在本发明实施例中,预设条件包括:剩余内存大于第一阈值,且CPU利用率小于第二阈值,且有效转发能力大于第三阈值,且当前所承载的业务容量小于第四阈值。本发明实施例在进行负载均衡时考虑了资源的使用情况,从而提高了处理性能。其中,剩余内存可以是转发器基本性能参数表中的可用内存和转发器资源使用表中的当前业务所占用的虚拟机的内存之差,CPU利用率和有效转发能力可以从转发器基本性能参数表中获得,当前所承载的业务容量可以根据转发器资源使用表中的转发器所能承载的业务总容量和业务利用率获得,如为转发器所能承载的业务总容量和业务利用率的乘积。
在本发明实施例中,从第三转发器中选择其中一个转发器作为第一目标转发器包括:
根据业务容量、有效转发能力、CPU处理能力从所述第三转发器中选择其中一个转发器作为所述第一目标转发器。
其中,业务容量是指第三转发器当前所承载的业务量。
具体的,可以采用多种方式实现根据业务容量、有效转发能力、CPU处理能力从所述第三转发器中选择其中一个转发器作为所述第一目标转发器,例如,可以采用以下方法来实现,以下方法只是一个示例,本发明实施例不排除其他的实现方法。
Bi=Bisum·(Bt-Biratio)
Ci=Cisum·(Ct-Ciratio)
Figure BDA0002021543860000071
Mfree=Misum·(Mt-Mimalloc)
Figure BDA0002021543860000072
Figure BDA0002021543860000073
Fi=Tisum-Ti
其中,Bi为第i个转发器的业务剩余资源量,Bisum为第i个转发器上当前承载的业务量,Biratio为第i个转发器的资源利用率,Bt为百分比值,设定的资源利用率阈值,Ci为第i个转发器的CPU使用数,Cisum为第i个转发器的CPU总数,Ciratio为第i个转发器的CPU利用率,Ct为百分比值,设定的CPU使用率阈值,PBi为第i个转发器上单CPU可以处理的业务量,Misum为第i个转发器的内存总量,Mt为百分比值,设定的内存使用率阈值,Mimalloc为第i个转发器已使用的内存值,Mfree为第i个转发器的剩余内存值,Pisum为第i个转发器单位时间t内转发报文的个数,Ti为第i个转发器当前的吞吐量(即转发性能),Tt为百分比,设定的吞吐量阈值,Badv_ratio为平均资源使用率,Eratio为资源使用误差率,n为所有接入控制器的转发器总数量,Fi为第i个转发器当前可用的吞吐量(即有效转发能力)。
最优解过程:
条件1:Mfree>0,PBi>0;
条件2:Fi>0;
1)存在满足条件1的转发器则执行3);
2)如不存在满足条件1的转发器,则令Bi=Bisum.(1-Biratio)。如Bi=0,则无解,转6);如Bi不等于0则执行3);
3)存在满足条件2的转发器(即第三转发器)则转5);不存在满足条件2的转发器则转4);
4)Ti>0,Ti值越接近Tt解越优;Ti<0则无解,转6);
5)PBi值越大,解越优。存在多个最优解选物理位置最近的一个;
6)最优解算法结束。
其中,从第二转发器中选择其中一个转发器作为第一目标转发器包括:
根据业务容量、有效转发能力、CPU处理能力从所述第二转发器中选择其中一个转发器作为所述第一目标转发器。
从第二转发器中选择其中一个转发器作为第一目标转发器与从第三转发器中选择其中一个转发器作为第一目标转发器的方法的实现类似,这里不再赘述。
步骤202、生成所述第一目标转发器的分流表信息,将所述分流表信息下发到所有转发器中。
在本发明实施例中,分流表信息即是一个分流表项。
本发明实施例基于物理位置关系选择第一目标转发器,充分考虑了转发器之间的物理位置,提高了处理效率。
在本发明另一个实施例中,该方法还包括:
计算所有转发器的负载值和负载均值;根据所有转发器的负载值和负载均值确定待调整队列和待分流转发器队列;其中,所述待调整队列包括所有需要进行负载均衡调整的转发器,所述待分流转发器队列包括所有不需要进行负载均衡调整的转发器;
对于所述待调整队列中的每一个第四转发器,确定所述第四转发器对应的第二目标转发器;其中,所述第二目标转发器为所述待分流转发器队列中的一个或多个转发器;
将所述第四转发器中需要调整的业务量备份并切换到所述第二目标转发器,删除所述第四转发器的分流表信息,生成所述第二目标转发器的分流表信息,将所述分流表信息下发到所有转发器中。
在本发明另一个实施例中,当所有转发器均不需要进行负载均衡调整时,结束本流程。
在本发明实施例中,计算转发器的负载值包括:
根据总业务容量、CPU个数、平均转发速率计算所述转发器的负载值。
具体的,可以采用多种方式实现根据总业务容量、CPU个数、平均转发速率计算所述转发器的负载值,本发明实施例对此不作限定。
在本发明实施例中,确定第四转发器对应的第二目标转发器包括以下至少之一:
从所述待分流转发器队列中选择与第四转发器处于同一物理位置范围的一个或多个转发器作为所述第二目标转发器;
从所述待分流转发器队列中与第四转发器不在同一物理位置范围的转发器中,按照可承接业务量由大到小的顺序选择一个或多个转发器作为所述第二目标转发器;
从所述待分流转发器队列中按照可承接业务量由大到小的顺序选择一个或多个转发器作为所述第二目标转发器。
具体的,当待分流转发器队列中存在一个或多个与第四转发器处于同一物理位置范围的转发器,且这些转发器可承载的业务量之和大于或等于第四转发器的需要调整的业务量时,选择待分流转发器队列中与第四转发器处于同一物理位置范围的一个或多个转发器作为所述第二目标转发器;
当待分流转发器队列中存在一个或多个与第四转发器处于同一物理位置范围的转发器,且这些转发器可承载的业务量之和小于第四转发器的需要调整的业务量时,选择待分流转发器队列中与第四转发器处于同一物理位置范围的一个或多个转发器,以及待分流转发器队列中与所述第四转发器不在同一物理位置范围的转发器中按照可承接业务量由大到小的顺序选择的一个或多个转发器作为所述第二目标转发器;
当待分流转发器队列中的转发器均与第四转发器不在同一物理位置范围时,从所述待分流转发器队列中按照可承接业务量由大到小的顺序选择一个或多个转发器作为所述第二目标转发器。
在本发明实施例中,根据转发器的负载值和负载均值确定转发器需要进行负载均衡调整包括以下任意一个:
所述转发器的负载值和所述负载均值之差大于或等于预设偏差值;
所述转发器的负载值和所述负载均值之差与所述负载均值的比值大于或等于预设比值。
在本发明实施例中,根据转发器的负载值和负载均值确定转发器不需要进行负载均衡调整包括以下任意一个:
所述转发器的负载值和所述负载均值之差小于预设偏差值;
所述转发器的负载值和所述负载均值之差与所述负载均值的比值小于预设比值。
本发明实施例基于整体网络的负载均衡效果进行负载均衡调整,使得整体网络负载均衡最优。
参见图3,本发明另一个实施例提出了一种负载均衡方法,包括:
步骤300、接收到流量,当根据流量查找分流表未命中时,向控制器上报指令。
在本发明实施例中,上报的指令中包括接收到的流量的相关信息,也可以不包括任何信息,仅仅作为通知有流量需要处理的指令。
步骤301、接收第一目标转发器的分流表信息,根据分流表信息更新分流表。
在本发明实施例中,分流表信息即是一个分流表项。
在本发明另一个实施例中,当根据流量查找分流表命中时,该方法还包括:根据命中的分流表项对流量进行处理。其中,对流量的处理包括以下至少之一:转发、业务处理。
在本发明实施例中,根据流量查找分流表包括:根据流量按照分流粒度(分流粒度即是指键值的元素,如果键值为三元组,那么分流粒度包括协议、源IP地址、源端口号,其他的情况以此类推)生成一个键值,使用键值查找分流表,也就是将生成的键值和分流表中的唯一键值进行匹配,匹配上则命中;匹配不上则未命中。
示例1
参见图4,本示例提出一种负载均衡方法,包括:
步骤400、第一转发器接收到流量,根据流量按照分流粒度生成一个键值,使用生成的键值查找分流表,当命中时,根据命中的分流表项对流量进行处理;当未命中时,继续执行步骤401。
本示例中,分流粒度即是指键值的元素,如果键值为三元组,那么分流粒度包括协议、源IP地址、源端口号,其他的情况以此类推。
本示例中,将生成的键值和分流表中的唯一键值进行匹配,匹配上则命中;匹配不上则未命中。
本示例中,对流量的处理包括以下至少之一:转发、业务处理。
步骤401、第一转发器向控制器上报指令。
步骤402、控制器判断第一转发器是否满足预设条件,当第一转发器满足预设条件时,执行步骤403;当第一转发器不满足预设条件时,执行步骤404。
本示例中,预设条件包括:剩余内存大于第一阈值,且CPU利用率小于第二阈值,且有效转发能力大于第三阈值,且当前承载的业务量小于第四阈值。本示例在进行负载均衡时考虑了资源的使用情况,从而提高了处理性能。
步骤403、控制器选择所述第一转发器作为所述第一目标转发器,并继续执行步骤408。
步骤404、控制器判断是否存在满足预设条件的第二转发器,当存在满足预设条件的第二转发器时,继续执行步骤405;当不存在满足预设条件的第二转发器时,结束本流程。
步骤405、控制器判断第二转发器中是否存在至少一个与第一转发器处于同一物理位置范围的第三转发器,当第二转发器中存在至少一个与第一转发器处于同一物理位置范围的第三转发器时,执行步骤406;当第二转发器均与第一转发器处于不同的物理位置范围时,执行步骤407。
步骤406、控制器从第三转发器中选择其中一个转发器作为第一目标转发器,并继续执行步骤408。
本示例中,控制器根据业务容量、有效转发能力、CPU处理能力从所述第三转发器中选择其中一个转发器作为所述第一目标转发器。
步骤407、控制器从所述第二转发器中选择其中一个转发器作为所述第一目标转发器,并继续执行步骤408。
本示例中,控制器根据业务容量、有效转发能力、CPU处理能力从所述第二转发器中选择其中一个转发器作为所述第一目标转发器。
步骤408、控制器生成所述第一目标转发器的分流表信息,将所述分流表信息下发到所有转发器中。
步骤409、转发器根据分流表信息更新转发表。
实施例2
参见图5,本示例提出一种负载均衡方法,包括:
步骤500、控制器计算所有转发器的负载值和负载均值。
本示例中,控制器根据总业务容量、CPU个数、平均转发速率计算所述转发器的负载值。
步骤501、控制器判断每一个转发器的负载值和负载均值之差是否大于或等于预设偏差,当转发器的负载值和负载均值之差大于或等于预设偏差时,确定转发器需要进行负载均衡调整,继续执行步骤502;当所有转发器的负载值和负载均值之差均小于预设偏差时,确定所有转发器均不需要进行负载均衡调整,结束本流程。
步骤502、控制器将需要进行负载均衡调整的转发器放入待调整队列中,将不需要进行负载均衡调整的转发器放入待分流转发器队列中。
步骤503、对于待调整队列中的每一个需要进行负载均衡调整的转发器,控制器判断待分流转发器队列中是否存在与需要进行负载均衡调整的转发器处于同一物理位置范围的转发器,如果存在,则继续执行步骤504;如果不存在,则继续执行506。
步骤504、控制器从所述待分流转发器队列中选择与所述需要进行负载均衡调整的转发器处于同一物理位置范围的一个或多个转发器作为所述第二目标转发器。
步骤505、控制器判断所选择的与所述需要进行负载均衡调整的转发器处于同一物理位置范围的一个或多个转发器的可承接业务量之和是否大于或等于需要进行负载均衡调整的转发器的需要调整业务量,如果是,则继续执行步骤507;如果不是,则除了步骤504选择的第二目标转发器之外,还从所述待分流转发器队列中与所述需要进行负载均衡调整的转发器不在同一物理位置范围的转发器中,按照可承接业务量由大到小的顺序选择一个或多个转发器作为所述第二目标转发器。
步骤506、控制器从所述待分流转发器队列中按照可承接业务量由大到小的顺序选择一个或多个转发器作为所述第二目标转发器。
步骤507、控制器将所述需要进行负载均衡调整的转发器中需要调整的业务量备份到所述第二目标转发器,将需要进行负载均衡调整的转发器中需要调整的业务量切换到所述第二目标转发器,更新转发器上的分流表中需要调整的业务量对应的分流表项,删除所述需要进行负载均衡调整的转发器的分流表信息,生成第二目标转发器的分流表信息,将分流表信息下发到所有转发器中。
参见图6,本发明另一个实施例提出了一种负载均衡装置(如控制器),包括:
确定模块602,用于根据第一转发器的负载情况、其他转发器的负载情况、第一转发器和其他转发器之间的物理位置关系确定第一目标转发器;
处理模块603,用于生成所述第一目标转发器的分流表信息,将所述分流表信息下发到所有转发器中。
在本发明另一个实施例中,还包括:第一通信模块601,用于接收到第一转发器上报的指令。
在本发明实施例中,上报的指令中包括接收到的流量的相关信息,也可以不包括任何信息,仅仅作为通知有流量需要处理的指令。
在本发明实施例中,分流表信息即是一个分流表项。
在本发明实施例中,确定模块602具体用于执行以下至少之一:
当所述第一转发器的负载情况满足预设条件时,选择所述第一转发器作为所述第一目标转发器;
当所述第一转发器的负载情况不满足所述预设条件,且所述其他转发器中存在负载情况满足所述预设条件的第二转发器,且所述第二转发器中存在至少一个与所述第一转发器处于同一物理位置范围的第三转发器时,从所述第三转发器中选择其中一个转发器作为第一目标转发器;
当所述第一转发器的负载情况不满足所述预设条件,且所述其他转发器中存在负载情况满足所述预设条件的第二转发器,且所述第二转发器均与所述第一转发器处于不同的物理位置范围时,从所述第二转发器中选择其中一个转发器作为所述第一目标转发器。
本发明实施例基于物理位置就近原则优先选择与第一转发器处于同一物理位置范围的转发器作为第一目标转发器,充分考虑了转发器之间的物理位置,提高了处理效率。
在本发明实施例中,物理位置范围可以根据实际需要设置,可以是一个较大的范围,例如一个区域,也可以是一个很小的范围,例如是一个办公楼、或一个小区,本发明实施例对物理位置范围的大小不作限定。
在本发明实施例中,预设条件包括:剩余内存大于第一阈值,且CPU利用率小于第二阈值,且有效转发能力大于第三阈值,且当前所承载的业务容量小于第四阈值。本发明实施例在进行负载均衡时考虑了资源的使用情况,从而提高了处理性能。其中,剩余内存可以是转发器基本性能参数表中的可用内存和转发器资源使用表中的当前业务所占用的虚拟机的内存之差,CPU利用率和有效转发能力可以从转发器基本性能参数表中获得,当前所承载的业务容量可以根据转发器资源使用表中的转发器所能承载的业务总容量和业务利用率获得,如为转发器所能承载的业务总容量和业务利用率的乘积。
在本发明实施例中,处理模块602具体用于采用以下方式实现从第三转发器中选择其中一个转发器作为第一目标转发器:
根据业务容量、有效转发能力、CPU处理能力从所述第三转发器中选择其中一个转发器作为所述第一目标转发器。
其中,业务容量是指第三转发器当前所承载的业务量。
其中,处理模块602具体用于采用以下方式实现从第二转发器中选择其中一个转发器作为第一目标转发器:
根据业务容量、有效转发能力、CPU处理能力从所述第二转发器中选择其中一个转发器作为所述第一目标转发器。
本发明实施例基于物理位置关系选择第一目标转发器,充分考虑了转发器之间的物理位置,提高了处理效率。
在本发明另一个实施例中,处理模块602还用于:
计算所有转发器的负载值和负载均值;根据所有转发器的负载值和负载均值确定待调整队列和待分流转发器队列;其中,所述待调整队列包括所有需要进行负载均衡调整的转发器,所述待分流转发器队列包括所有不需要进行负载均衡调整的转发器;
对于所述待调整队列中的每一个第四转发器,确定所述第四转发器对应的第二目标转发器;其中,所述第二目标转发器为所述待分流转发器队列中的一个或多个转发器;
将所述第四转发器中需要调整的业务量备份并切换到所述第二目标转发器,删除所述第四转发器的分流表信息,生成所述第二目标转发器的分流表信息,将所述分流表信息下发到所有转发器中。
在本发明另一个实施例中,当所有转发器均不需要进行负载均衡调整时,结束本流程。
在本发明实施例中,处理模块602具体用于采用以下方式实现计算转发器的负载值:
根据总业务容量、CPU个数、平均转发速率计算所述转发器的负载值。
在本发明实施例中,处理模块602具体用于采用以下至少之一方式实现确定第四转发器对应的第二目标转发器:
从所述待分流转发器队列中选择与第四转发器处于同一物理位置范围的一个或多个转发器作为所述第二目标转发器;
从所述待分流转发器队列中与第四转发器不在同一物理位置范围的转发器中,按照可承接业务量由大到小的顺序选择一个或多个转发器作为所述第二目标转发器;
从所述待分流转发器队列中按照可承接业务量由大到小的顺序选择一个或多个转发器作为所述第二目标转发器。
具体的,当待分流转发器队列中存在一个或多个与第四转发器处于同一物理位置范围的转发器,且这些转发器可承载的业务量之和大于或等于第四转发器的需要调整的业务量时,选择待分流转发器队列中与第四转发器处于同一物理位置范围的一个或多个转发器作为所述第二目标转发器;
当待分流转发器队列中存在一个或多个与第四转发器处于同一物理位置范围的转发器,且这些转发器可承载的业务量之和小于第四转发器的需要调整的业务量时,选择待分流转发器队列中与第四转发器处于同一物理位置范围的一个或多个转发器,以及待分流转发器队列中与所述第四转发器不在同一物理位置范围的转发器中按照可承接业务量由大到小的顺序选择的一个或多个转发器作为所述第二目标转发器;
当待分流转发器队列中的转发器均与第四转发器不在同一物理位置范围时,从所述待分流转发器队列中按照可承接业务量由大到小的顺序选择一个或多个转发器作为所述第二目标转发器。
在本发明实施例中,处理模块602具体用于采用以下方式任意一个实现根据转发器的负载值和负载均值确定转发器需要进行负载均衡调整:
所述转发器的负载值和所述负载均值之差大于或等于预设偏差值;
所述转发器的负载值和所述负载均值之差与所述负载均值的比值大于或等于预设比值。
在本发明实施例中,处理模块602具体用于采用以下方式任意一个实现根据转发器的负载值和负载均值确定转发器不需要进行负载均衡调整:
所述转发器的负载值和所述负载均值之差小于预设偏差值;
所述转发器的负载值和所述负载均值之差与所述负载均值的比值小于预设比值。
本发明实施例基于整体网络的负载均衡效果进行负载均衡调整,使得整体网络负载均衡最优。
参见图7,本发明另一个实施例提出了一种负载均衡装置(如转发器),包括:
第二通信模块701,用于接收到流量,当根据流量查找分流表未命中时,向控制器上报指令;接收第一目标转发器的分流表信息;
更新模块702,用于根据分流表信息更新分流表。
在本发明实施例中,上报的指令中包括接收到的流量的相关信息,也可以不包括任何信息,仅仅作为通知有流量需要处理的指令。
在本发明实施例中,分流表信息即是一个分流表项。
在本发明另一个实施例中,第二通信模块701还用于:当根据流量查找分流表命中时,根据命中的分流表项对流量进行处理。其中,对流量的处理包括以下至少之一:转发、业务处理。
在本发明实施例中,第二通信模块701具体用于采用以下方式实现根据流量查找分流表:根据流量按照分流粒度(分流粒度即是指键值的元素,如果键值为三元组,那么分流粒度包括协议、源IP地址、源端口号,其他的情况以此类推)生成一个键值,使用键值查找分流表,也就是将生成的键值和分流表中的唯一键值进行匹配,匹配上则命中;匹配不上则未命中。
本发明另一个实施例提出了一种负载均衡装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令被所述处理器执行时,实现上述任一种负载均衡方法。
本发明另一个实施例提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种负载均衡方法的步骤。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
虽然本发明实施例所揭露的实施方式如上,但所述的内容仅为便于理解本发明实施例而采用的实施方式,并非用以限定本发明实施例。任何本发明实施例所属领域内的技术人员,在不脱离本发明实施例所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明实施例的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (11)

1.一种负载均衡方法,包括:
根据第一转发器的负载情况、其他转发器的负载情况、第一转发器和其他转发器之间的物理位置关系确定第一目标转发器;
生成所述第一目标转发器的分流表信息,将所述分流表信息下发到所有转发器中。
2.根据权利要求1所述的方法,其特征在于,其中,所述根据第一转发器的负载情况、其他转发器的负载情况、第一转发器和其他转发器之间的物理位置关系确定第一目标转发器包括以下至少之一:
当所述第一转发器的负载情况满足预设条件时,选择所述第一转发器作为所述第一目标转发器;
当所述第一转发器的负载情况不满足所述预设条件,且所述其他转发器中存在负载情况满足所述预设条件的第二转发器,且所述第二转发器中存在至少一个与所述第一转发器处于同一物理位置范围的第三转发器时,从所述第三转发器中选择其中一个转发器作为第一目标转发器;
当所述第一转发器的负载情况不满足所述预设条件,且所述其他转发器中存在负载情况满足所述预设条件的第二转发器,且所述第二转发器均与所述第一转发器处于不同的物理位置范围时,从所述第二转发器中选择其中一个转发器作为所述第一目标转发器。
3.根据权利要求2所述的方法,其特征在于,其中,所述预设条件包括:剩余内存大于第一阈值,且CPU利用率小于第二阈值,且有效转发能力大于第三阈值,且当前所承载的业务容量小于第四阈值。
4.根据权利要求2任意一项所述的方法,其特征在于,其中,所述从第二转发器中选择其中一个转发器作为第一目标转发器包括:
根据业务容量、有效转发能力、CPU处理能力从所述第二转发器中选择其中一个转发器作为所述第一目标转发器;
或者,所述从第三转发器中选择其中一个转发器作为第一目标转发器包括:
根据业务容量、有效转发能力、CPU处理能力从所述第三转发器中选择其中一个转发器作为所述第一目标转发器。
5.根据权利要求1~4任意一项所述的方法,其特征在于,该方法还包括:
计算所有转发器的负载值和负载均值;
根据所有转发器的负载值和负载均值确定待调整队列和待分流转发器队列;其中,所述待调整队列包括所有需要进行负载均衡调整的转发器,所述待分流转发器队列包括所有不需要进行负载均衡调整的转发器;
对于所述待调整队列中的每一个第四转发器,确定所述第四转发器对应的第二目标转发器;其中,所述第二目标转发器为所述待分流转发器队列中的一个或多个转发器;
将所述第四转发器中需要调整的业务量备份并切换到所述第二目标转发器,删除所述第四转发器的分流表信息,生成所述第二目标转发器的分流表信息,将所述分流表信息下发到所有转发器中。
6.根据权利要求5所述的方法,其特征在于,其中,所述计算转发器的负载值包括:
根据总业务容量、CPU个数、平均转发速率计算所述转发器的负载值。
7.根据权利要求5所述的方法,其特征在于,其中,所述确定第四转发器对应的第二目标转发器包括以下至少之一:
从所述待分流转发器队列中选择与所述第四转发器处于同一物理位置范围的一个或多个转发器作为所述第二目标转发器;
从所述待分流转发器队列中与所述第四转发器不在同一物理位置范围的转发器中,按照可承接业务量由大到小的顺序选择一个或多个转发器作为所述第二目标转发器;
从所述待分流转发器队列中按照可承接业务量由大到小的顺序选择一个或多个转发器作为所述第二目标转发器。
8.根据权利要求5所述的方法,其特征在于,其中,所述根据转发器的负载值和负载均值确定转发器需要进行负载均衡调整包括以下任意一个:
所述转发器的负载值和所述负载均值之差大于或等于预设偏差值;
所述转发器的负载值和所述负载均值之差与所述负载均值的比值大于或等于预设比值。
9.一种负载均衡装置,包括:
确定模块,用于根据第一转发器的负载情况、其他转发器的负载情况、第一转发器和其他转发器之间的物理位置关系确定第一目标转发器;
处理模块,用于生成所述第一目标转发器的分流表信息,将所述分流表信息下发到所有转发器中。
10.一种负载均衡装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,其特征在于,当所述指令被所述处理器执行时,实现如权利要求1~8任一项所述的负载均衡方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1~8任一项所述的负载均衡方法的步骤。
CN201910280669.3A 2019-04-09 2019-04-09 一种负载均衡方法和装置 Withdrawn CN111800348A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910280669.3A CN111800348A (zh) 2019-04-09 2019-04-09 一种负载均衡方法和装置
PCT/CN2020/077464 WO2020207148A1 (zh) 2019-04-09 2020-03-02 一种负载均衡方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910280669.3A CN111800348A (zh) 2019-04-09 2019-04-09 一种负载均衡方法和装置

Publications (1)

Publication Number Publication Date
CN111800348A true CN111800348A (zh) 2020-10-20

Family

ID=72751832

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910280669.3A Withdrawn CN111800348A (zh) 2019-04-09 2019-04-09 一种负载均衡方法和装置

Country Status (2)

Country Link
CN (1) CN111800348A (zh)
WO (1) WO2020207148A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113806083A (zh) * 2021-09-06 2021-12-17 杭州迪普科技股份有限公司 一种处理聚合流数据的方法和装置
CN114422470A (zh) * 2021-12-27 2022-04-29 中国电信股份有限公司 地址处理方法、装置、电子设备及存储介质
CN117439953A (zh) * 2023-12-20 2024-01-23 珠海星云智联科技有限公司 等价成本多路径选择系统、方法、设备、集群以及介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103596066A (zh) * 2013-11-28 2014-02-19 中国联合网络通信集团有限公司 一种数据处理方法及装置
CN104580526A (zh) * 2015-02-03 2015-04-29 浪潮电子信息产业股份有限公司 一种高性能Web服务网络中的就近访问负载均衡调度方法
CN104811396A (zh) * 2014-01-23 2015-07-29 中兴通讯股份有限公司 一种负荷均衡的方法及系统
CN106790656A (zh) * 2017-01-19 2017-05-31 南京贝伦思网络科技股份有限公司 一种基于sdn的负载均衡装置及其方法
CN107193638A (zh) * 2017-05-30 2017-09-22 南京邮电大学 一种基于多维环境感知的网络功能快速自适应迁移方法
CN107220108A (zh) * 2017-07-06 2017-09-29 山东超越数控电子有限公司 一种实现云数据中心负载均衡的方法和系统
CN107547597A (zh) * 2016-06-27 2018-01-05 中兴通讯股份有限公司 业务处理方法及装置
US20180302343A1 (en) * 2017-04-14 2018-10-18 Argela Yazilim ve Bilisim Teknolojileri San. ve Tic. A.S. System and method for convergence of software defined network (sdn) and network function virtualization (nfv)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104270312B (zh) * 2014-09-25 2017-06-20 东北大学 支持流量优化和应用感知的中继路径分配系统及方法
CN104518993A (zh) * 2014-12-29 2015-04-15 华为技术有限公司 云化网络通信路径的分配方法、装置及系统
CN106411768B (zh) * 2015-07-31 2019-08-23 中国电信股份有限公司 业务链资源调度方法和装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103596066A (zh) * 2013-11-28 2014-02-19 中国联合网络通信集团有限公司 一种数据处理方法及装置
CN104811396A (zh) * 2014-01-23 2015-07-29 中兴通讯股份有限公司 一种负荷均衡的方法及系统
CN104580526A (zh) * 2015-02-03 2015-04-29 浪潮电子信息产业股份有限公司 一种高性能Web服务网络中的就近访问负载均衡调度方法
CN107547597A (zh) * 2016-06-27 2018-01-05 中兴通讯股份有限公司 业务处理方法及装置
CN106790656A (zh) * 2017-01-19 2017-05-31 南京贝伦思网络科技股份有限公司 一种基于sdn的负载均衡装置及其方法
US20180302343A1 (en) * 2017-04-14 2018-10-18 Argela Yazilim ve Bilisim Teknolojileri San. ve Tic. A.S. System and method for convergence of software defined network (sdn) and network function virtualization (nfv)
CN107193638A (zh) * 2017-05-30 2017-09-22 南京邮电大学 一种基于多维环境感知的网络功能快速自适应迁移方法
CN107220108A (zh) * 2017-07-06 2017-09-29 山东超越数控电子有限公司 一种实现云数据中心负载均衡的方法和系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113806083A (zh) * 2021-09-06 2021-12-17 杭州迪普科技股份有限公司 一种处理聚合流数据的方法和装置
CN113806083B (zh) * 2021-09-06 2023-07-25 杭州迪普科技股份有限公司 一种处理聚合流数据的方法和装置
CN114422470A (zh) * 2021-12-27 2022-04-29 中国电信股份有限公司 地址处理方法、装置、电子设备及存储介质
CN117439953A (zh) * 2023-12-20 2024-01-23 珠海星云智联科技有限公司 等价成本多路径选择系统、方法、设备、集群以及介质
CN117439953B (zh) * 2023-12-20 2024-03-26 珠海星云智联科技有限公司 等价成本多路径选择系统、方法、设备、集群以及介质

Also Published As

Publication number Publication date
WO2020207148A1 (zh) 2020-10-15

Similar Documents

Publication Publication Date Title
US11349722B2 (en) Method and system of connecting to a multipath hub in a cluster
US11422839B2 (en) Network policy implementation with multiple interfaces
CN111800348A (zh) 一种负载均衡方法和装置
US10291536B2 (en) Tiered services in border gateway protocol flow specification
US20160344633A1 (en) Load balancing method, device, system and computer storage medium
CN104317638A (zh) 一种应用伸缩管理方法及装置
CN104320350A (zh) 用于提供基于信用的流控制的方法及系统
US10693785B2 (en) Method and system for forwarding data, virtual load balancer, and readable storage medium
CN108702316A (zh) 一种vnf的资源分配方法及装置
US20210144063A1 (en) Edge computing topology information exposure
CN106375355B (zh) 负载均衡处理方法及装置
WO2022166348A1 (zh) 路由方法、路由装置、控制器和计算机可读存储介质
US10511494B2 (en) Network control method and apparatus
WO2014023098A1 (zh) 一种负载分担方法和流量转发设备
CN116668374A (zh) 通信方法及装置
CN112751766A (zh) 报文转发方法、装置及计算机存储介质
US11012378B2 (en) Methods and apparatus for shared buffer allocation in a transport node
CN114024968B (zh) 一种基于中间设备的报文发送方法、装置和电子设备
CN110611622A (zh) 用于负载均衡的方法、网络接口卡以及计算机程序产品
KR101627625B1 (ko) 어플리케이션과 네트워크가 융합 구동하는 멀티프로토콜 경로선택 시스템 및 방법
EP4111307A1 (en) Dynamic distributed local breakout determination
CN116074322B (zh) 基于智能消息分割的高吞吐任务调度方法、系统及介质
US11196673B2 (en) Traffic shaping over multiple hops in a network
US10938671B2 (en) Mapping service capabilities
CN115802421A (zh) 会话处理方法、用户面功能系统和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20201020