CN114168317A - 负载平衡的方法、负载平衡设备和计算机可读存储介质 - Google Patents
负载平衡的方法、负载平衡设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN114168317A CN114168317A CN202111315073.6A CN202111315073A CN114168317A CN 114168317 A CN114168317 A CN 114168317A CN 202111315073 A CN202111315073 A CN 202111315073A CN 114168317 A CN114168317 A CN 114168317A
- Authority
- CN
- China
- Prior art keywords
- data
- buffer
- queue
- sent
- load balancing
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000003860 storage Methods 0.000 title claims abstract description 16
- 238000004806 packaging method and process Methods 0.000 claims abstract description 5
- 230000005540 biological transmission Effects 0.000 claims description 79
- 239000006185 dispersion Substances 0.000 claims description 25
- 238000004364 calculation method Methods 0.000 claims description 10
- 238000010606 normalization Methods 0.000 claims description 3
- QVFWZNCVPCJQOP-UHFFFAOYSA-N chloralodol Chemical compound CC(O)(C)CC(C)OC(O)C(Cl)(Cl)Cl QVFWZNCVPCJQOP-UHFFFAOYSA-N 0.000 description 30
- 238000004891 communication Methods 0.000 description 18
- 108010003272 Hyaluronate lyase Proteins 0.000 description 6
- 238000009826 distribution Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 101100129500 Caenorhabditis elegans max-2 gene Proteins 0.000 description 1
- 101100083446 Danio rerio plekhh1 gene Proteins 0.000 description 1
- 235000006679 Mentha X verticillata Nutrition 0.000 description 1
- 235000002899 Mentha suaveolens Nutrition 0.000 description 1
- 235000001636 Mentha x rotundifolia Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种负载平衡的方法、负载平衡设备和计算机可读存储介质,所述方法包括以下步骤:接收待发送数据并将所述待发送数据组包为待发送数据组;比较各缓存队列的负载参数值以选择最佳缓存队列,将所述待发送数据组分配至所述最佳缓存队列中;将所述待发送数据组发送至所述最佳缓存队列对应的节点。通过本发明可以提高系统的数据吞吐量,充分利用通道资源。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种负载平衡的方法、负载平衡设备和计算机可读存储介质。
背景技术
现有技术中,应用传统的无线通信方法时,低功耗一般很难覆盖远距离,远距离一般功耗高。而LoRa(Long Range Radio,远距离无线电)是semtech公司创建的低功耗局域网无线标准,它最大特点就是在同样的功耗条件下比其他无线方式传播的距离更远,实现了低功耗和远距离的统一,它在同样的功耗下比传统的无线射频通信距离扩大3-5倍。可在“服务器-LoRa网关-LoRa节点-控制终端”的LoRa应用方案中,整个链路的通信速率往往被限制于LoRa通信部分,Lora具有半双工、传输速率低的问题,因此相对于毫秒级的无网络传输与串行传输,LoRa秒级的传输使整体系统的运行效率降低。
发明内容
本发明提供了一种负载平衡的方法、负载平衡设备和计算机可读存储介质,旨在解决基于LoRa通信的数据传输运行效率较低的技术问题。
为实现上述目的,本发明提供了一种负载平衡的方法,该方法包括以下步骤:
接收待分配数据,并将所述待分配数据组包为待分配数据组;
比较各缓存队列的负载参数值,基于比较结果选择各所述缓存队列中的最佳缓存队列,将所述待分配数据组分配至所述最佳缓存队列中,并将所述待分配数据组设置为待发送数据组;
将所述最佳缓存队列中的待发送数据组发送至所述最佳缓存队列对应的节点。
可选地,比较各缓存队列的负载参数值,并将所述负载参数值最大的缓存队列设置为最佳缓存队列。
可选地,获取各所述缓存队列中待发送数据组发送的数据发送总时长;
计算各所述缓存队列的剩余空间;
根据所述各缓存队列的数据发送总时长和剩余空间计算所述各缓存队列的负载参数值。
可选地,每当存在待分配数据组存入缓存队列,则计算所述待分配数据组所需的待分配数据发送时长;
根据所述待分配数据发送时长更新所述缓存队列对应的数据发送总时长。
可选地,每当存在待发送数据组从缓存队列发送至所述缓存队列对应的节点,则计算所述待发送数据组所需的待发送数据发送时长;
根据所述待发送数据发送时长更新所述缓存队列对应的数据发送总时长。
可选地,将所述各缓存队列的数据发送总时长通过预设的离差标准化计算公式转换为所述数据发送总时长的离差标准值;
根据所述各缓存队列的离差标准值和剩余空间计算所述各缓存队列的负载参数值。
可选地,计算所述数据发送总时长的最大值和最小值;
将所述最大值和最小值代入所述离差标准化计算公式中,使所述数据发送总时长转换为离差标准值。
其中,其中,Fcache为缓存因子,Fbalance为均衡因子,L(i)为数据发送总时长的离差标准值,L(i)surplus为缓存队列的剩余空间,P(i)为负载参数值。
为实现上述目的,本发明还提出一种负载平衡设备,负载平衡设备包括存储器、处理器、以及存储在所述存储器上并可在所述处理器上运行的负载平衡程序,所述负载平衡程序被处理器执行时实现所述负载平衡的方法。
为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有负载平衡程序,所述负载平衡程序被处理器执行时实现所述负载平衡的方法。
本发明技术方案中,接收待发送数据并将所述待发送数据组包为待发送数据组;比较各缓存队列的负载参数值以选择最佳缓存队列,将所述待发送数据组分配至所述最佳缓存队列中;将所述待发送数据组发送至所述最佳缓存队列对应的节点。本发明通过设置多个通道,每个通道对应一个缓存队列,在每次将待发送数据组存入缓存队列之前,网关都会对各缓存队列的负载参数值进行比较并按照一定的规则选出最佳缓存队列,并将待发送数据组存入最佳缓存队列当中。通过将不同的待发送数据组放到不同的通道进行数据发送能够最大限度的使每个缓存队列发挥最大能力,从而均衡网关各通道的负载,充分利用通道资源,提高整个系统的数据吞吐量,提高整个链路的通信速率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为本发明一实施例的负载平衡的方法的模块结构示意图;
图2为本发明一实施例的负载平衡的方法的流程图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参照图1,图1为本发明各个实施例中所提供的负载平衡设备的硬件结构示意图。所述负载平衡设备包括执行模块01、存储器02、处理器03、电池系统等部件。本领域技术人员可以理解,图1中所示出的设备还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中,所述处理器03分别与所述存储器02和所述执行模块01连接,所述存储器02上存储有负载平衡程序,所述负载平衡程序同时被处理器03执行。
执行模块01,可将数据组包为数据组,并将数据组分配至各通道的缓存队列中,然后将缓存队列中的数据组发送至外部节点,并反馈以上信息发送给所述处理器03。
存储器02,可用于存储软件程序以及各种数据。存储器02可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据物联网终端的使用所创建的数据或信息等。此外,存储器02可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器03,是处理平台的控制中心,利用各种接口和线路连接整个物联网终端的各个部分,通过运行或执行存储在存储器02内的软件程序和/或模块,以及调用存储在存储器02内的数据,执行物联网终端的各种功能和处理数据,从而对负载平衡设备进行整体监控。处理器03可包括一个或多个处理单元;优选的,处理器03可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器03中。
本领域技术人员可以理解,图1中示出的负载平衡设备结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
根据上述硬件结构,提出本发明方法各个实施例。
参照图2,在本发明负载平衡的方法的第一实施例中,所述负载平衡的方法包括:
步骤S100,接收待分配数据,并将所述待分配数据组包为待分配数据组;
在传统的无线传输过程中,低功耗一般很难覆盖远距离,远距离一般功耗高。而LoRa(Long Range Radio,远距离无线电)是semtech公司创建的低功耗局域网无线标准,它最大特点就是在同样的功耗条件下比其他无线方式传播的距离更远,实现了低功耗和远距离的统一,它在同样的功耗下比传统的无线射频通信距离扩大3-5倍。可在“服务器-LoRa网关-LoRa节点-控制终端”的LoRa应用方案中,整个链路的通信速率往往被限制于LoRa通信部分,Lora具有半双工、传输速率低的问题,因此相对于毫秒级的无网络传输与串行传输,LoRa秒级的传输使整体系统的运行效率降低。其中,半双工的通讯方式为:同一时刻在同一通道内只支持一个设备进行发送操作,不支持多个从站设备同时向主站设备发送数据。
为了解决上述运行效率低的问题,本发明提供了一种提出了一种LoRa多通道负载平衡的方法。本实施例中,在实际的产品应用场景中,网关设备从网络和/或串口端接收到待分配数据后,会将待分配数据进行处理并进行协议组包为待分配数据组,其中待分配数据组的大小不但取决于LoRa数据头长度和LoRa有效数据长度,还取决于扩频因子和带宽。
步骤S200,比较各缓存队列的负载参数值,基于比较结果选择各所述缓存队列中的最佳缓存队列,将所述待分配数据组分配至所述最佳缓存队列中,并将所述待分配数据组设置为待发送数据组;
在现有技术中,网关设备将待分配数据组包为待分配数据组之后,会将待分配数据组转发至LoRa通信单元,LoRa通信单元将待分配数据组发送至外部节点。可应用这种方式进行数据传输时,一旦网络和/或串口端的数据传输速度较快,以致网络和/或串口端的数据传输速率高于LoRa通信单元的数据传输速率,就会产生数据丢包现象。
针对这一情况,本发明没有使用固定网关通道的射频参数的方法,而是灵活的改变射频参数的配置,以达到和工作在不同射频配置下的节点进行通信。具体地,本实施例中网关会建立多个LoRa通道的缓存队列来缓存通道下发数据和待分配数据组,即在每次接收到待分配数据组时,都会从多个LoRa通道中挑选一个通道对应的缓存队列,并将待分配数据组存入该通道对应的缓存队列中,并在存入之后,将待分配数据组设置为待发送数据组。具体地,在每次将待分配数据组存入缓存队列之前,网关都会对各缓存队列的负载参数值进行比较并按照一定的规则选出最佳缓存队列,并将待分配数据组存入最佳缓存队列当中,然后将待分配数据组设置为待发送数据组。其中,缓存队列的负载参数值为本领域技术人员根据预设规则事先设定的参数值,用于表征缓存队列当前的可负载能力,当前的可负载能力最大的缓存队列即为最佳缓存队列。在一些实施例中,通道下发数据按照由服务器的节点标识、扩频因子和带宽、待分配数据组的前导码长度和有效数据长度组成,用于控制LoRa节点执行电平转换或信号量控制等动作,或者用于采集LoRa节点的相关数据。通过这种方法可以避免数据发生丢包。
步骤S300,将所述待发送数据组发送至所述最佳缓存队列对应的节点。
本实施例中,在选择出最佳缓存队列并将待发送数据组分配至最佳缓存队列中之后,网关会将经由该最佳缓存队列将待发送数据组发送至对应的外部节点。具体的,本发明中发送方式为通过Lora进行发送。
值得注意的是,最佳缓存队列并非一成不变的,而是会在每个待发送数据组存入缓存队列之前,根据网关中的算法重新计算并比较各缓存队列的负载参数值,之后根据比较结果重新确定最佳缓存队列。在一实施例中,网关收到数据A、B、C、D共4包待分配数据组,网关会通过算法计算分配该4包数据组到相应的缓存队列,A数据组被分配到缓存队列1发送,B数据组被分配到缓存队列2发送,C、D数据组被分配到缓存队列N发送。通过将不同的待分配数据组放到不同的通道进行数据发送能够最大限度的使每个缓存队列发挥最大能力,从而均衡网关各通道的负载,充分利用通道资源,提高整个系统的数据吞吐量,提高整个链路的通信速率。
进一步地,基于本方案中第一实施例,在本方案另一实施例中,所述基于比较结果选择各所述缓存队列中的最佳缓存队列的步骤包括:
比较各缓存队列的负载参数值并将所述负载参数值最大的缓存队列设置为最佳缓存队列。
如上所述,缓存队列的负载参数值为本领域技术人员根据预设规则事先设定的参数值,用于表征缓存队列当前的可负载能力。在本实施例中,缓存队列的负载参数值越大,意味着该缓存队列的可负载能力越强。因此在计算并比较各缓存队列的负载参数值之后,将负载参数值最大的缓存队列设置为最佳缓存队列。通过该方式可以迅速找出可负载能力最强的缓存队列,并将待发送数据组存入该缓存队列中。
在一实施例中,所述比较各缓存队列的负载参数值并将所述负载参数值最大的缓存队列设置为最佳缓存队列的步骤之前包括:
a1,获取各所述缓存队列中待发送数据组发送的数据发送总时长;
本实施例中,网关中包含多个缓存队列,这些缓存队列中可能存储有一个或多个待发送数据组。若缓存队列中没有存储待发送数据组,则该缓存队列中待发送数据组发送需要的数据发送总时长为0;若缓存队列中存储一个待发送数据组,则该缓存队列中待发送数据组发送需要的数据发送总时长即为该待发送数据组的数据组发送时长;若缓存队列中存储有多个待发送数据组,则该缓存队列中待发送数据组发送需要的数据发送总时长即为这多个待发送数据组的数据组发送时长之和。而每个缓存队列的数据发送总时长均未预先存储在网关中,计算需要时仅需从网关中获取各缓存队列中待发送数据组发送需要的数据发送总时长。
a2,计算各所述缓存队列的剩余空间;
本实施例中,缓存队列的剩余空间即为缓存队列对应的LoRa通道中未使用的队列总量。
a3,根据所述各缓存队列的数据发送总时长和剩余空间计算所述各缓存队列的负载参数值。
本实施例中,负载参数值受缓存队列中数据发送总时长和缓存队列的剩余空间的影响,因此根据缓存队列中数据发送总时长和剩余空间即可计算出各缓存队列的负载参数值。更进一步地,本发明中引入了两个分配因子,即缓存因子Fcache与均衡因子Fbalance。Fcache越大,数据的分发受到LoRa通道的数据缓存未使用队列总量影响越大;Fbalance越大,数据的分发受到LoRa通道的数据缓存发送的总时间影响越大。
在一实施例中,所述获取各所述缓存队列中待发送数据组发送的数据发送总时长的步骤之前包括:
每当存在待分配数据组存入缓存队列,则计算所述待分配数据组所需的待分配数据发送时长;
根据所述待分配数据发送时长更新所述缓存队列对应的数据发送总时长。
本实施例中,网关中存储有所有缓存队列的数据发送总时长,网关会将待分配数据组存入不同LoRa通道的缓存队列中,在每一次存储之后,缓存队列对应的数据发送总时长都会进行更新。即将原本的缓存队列的数据发送总时长加上新的待分配数据组的待分配数据发送时长,获得更新后的缓存队列对应的数据发送总时长,并将更新后的数据发送总时长存储在网关中。
进一步地,每一个待分配数据组的大小与服务器的扩频因子和带宽,以及该待分配数据组的前导码长度和有效数据长度相关。当服务器按固定格式下发一包待发送数据组至缓存队列中,可以得到待发送数据组的长度为前导码长度和有效数据长度之和。在一些实施例中,固定的射频参数为默认启用CRC,不启用低速率优化,不启用报头,编码率为4/5,可得出该待发送数据组的发送时长:
其中,Tpacket为待分配数据组的发送时长,Lpreamble为待分配数据组的前导码长度,Lhead为待分配数据组的数据头长度,Lpayload为待分配数据组的有效数据长度,BW为服务器的带宽,SF为服务器的扩频因子。
在一实施例中,所述获取各所述缓存队列中待发送数据组发送需要的已数据发送总时长的步骤包括:
每当存在待发送数据组从缓存队列发送至所述缓存队列对应的节点,则计算所述待发送数据组所需的待发送数据发送时长;
根据所述待发送数据发送时长更新所述缓存队列对应的数据发送总时长。
本实施例中,网关会将已存于LoRa通道的缓存队列中的待发送数据组发送至外部节点,在每一次发送之后,该LoRa通道的缓存队列对应的数据发送总时长都会进行更新。即将原本的缓存队列对应的数据发送总时长减去新发送的待发送数据组的发送时长,获得更新后的缓存队列对应的数据发送总时长,并将更新后的数据发送总时长存储在网关中。
进一步地,由于所有待发送数据组都是由待分配数据组设置的,因此待发送数据组的待发送数据发送时长和待分配数据发送时长的计算方式相同。每一个待发送数据组的大小与服务器的扩频因子和带宽,以及该待发送数据组的前导码长度和有效数据长度相关。当服务器按固定格式下发一包待发送数据组至缓存队列中,可以得到待发送数据组的长度为前导码长度和有效数据长度之和。在一些实施例中,固定的射频参数为默认启用CRC,不启用低速率优化,不启用报头,编码率为4/5,可得出该待发送数据组的发送时长:
其中,Tpacket为待发送数据组的发送时长,Lpreamble为待发送数据组的前导码长度,Lhead为待发送数据组的数据头长度,Lpayload为待发送数据组的有效数据长度,BW为服务器的带宽,SF为服务器的扩频因子。
在一实施例中,所述根据所述已存储数据发送时长和所述剩余空间计算所述各缓存队列的负载参数值的步骤包括:
将所述各缓存队列的数据发送总时长通过预设的离差标准化计算公式转换为所述数据发送总时长的离差标准值;
根据所述各缓存队列的离差标准值和剩余空间计算所述各缓存队列的负载参数值。
本实施例中,缓存队列对应的数据发送总时长是时间维度的参数,而影响负载参数值的缓存队列的剩余空间为空间维度的参数。因此若要根据数据发送总时长和缓存队列的剩余空间计算负载参数值,需要将缓存队列的数据发送总时长和剩余空间转换为同一维度的参数。在一些实施例中,设数据发送总时长设置T(i),缓存队列的剩余空间设置为L(i)surplus,T(i)为时间维度,L(i)surplus为空间维度,将将T(i)与L(i)surplus进行离差标准化,将时间维度的T(i)转换为对应的空间维度的L(i)。其中,L(i)为数据发送总时长的离差标准值。通过这种转换方式,可以方便缓存队列的数据发送总时长和剩余空间进行计算。
在一实施例中,所述将所述数据发送总时长通过离差标准化转换为总时长的离差标准值的步骤包括:
计算所述数据发送总时长的最大值和最小值;
将所述最大值和最小值代入所述离差标准化计算公式中,使所述数据发送总时长转换为离差标准值。
本实施例中,将时间维度的T(i)转换为对应的空间维度的L(i)的离差标准化计算公式如下所示:
其中,T(i)max为通道i对应的缓存队列的数据发送总时长的最大值,T(i)min为通道i对应的缓存队列的数据发送总时长的最小值,T(i)为通道i对应的缓存队列的数据发送总时长,L(i)为数据发送总时长的离差标准值。L(i)total为通道i中缓存队列的总空间。其中,缓存队列的数据发送总时长的最大值和最小值的设置方法如下所述:
在系统首次运行时,T(i)max取缓存队列的数据发送总时长的理论最大值;即取所有LoRa通道i中待发送数据组的数据头长度和有效数据长度最大,前导码长度最大,扩频因子最大,带宽最小且通道i的缓存队列全部被使用时待发送数据组传输所需时长为数据发送总时长的最大值。
具体地,系统首次运行过程中数据发送总时长的最大值的计算公式为:
T(i)max=L(i)total*Tpacket(max)
其中,T(i)max为通道i对应的缓存队列的数据发送总时长的最大值,L(i)total为通道i中缓存队列的总空间,Tpacket(max)为待发送数据组的理论最大发送时长。
而在之后的运行过程中,每间隔固定时长,网关会比较记录这段时间内各通道i中缓存队列的t次数据发送总时长T(i)的最大值,分别记为T(i)max1、T(i)max2、T(i)max3、T(i)max4.....T(i)maxt;并依此更新数据发送总时长T(i)的最大值T(i)max。
具体地更新公式为:
其中,T(i)max为通道i对应的缓存队列的数据发送总时长的最大值,t为记录数据发送总时长的记录次数;T(i)maxt为第t次记录的数据发送总时长。
相应的,在系统首次运行时,T(i)min取缓存队列的数据发送总时长的理论最小值;即取所有LoRa通道i中的缓存队列没有被使用时数据发送总时长的值为理论最小值。此时理论最小值T(i)min=0
同样地,在之后的运行过程中,每间隔固定时长,网关会比较记录这段时间内各通道i中缓存队列的t次数据发送总时长T(i)的最小值,分别记为T(i)min1、T(i)min2、T(i)min3、T(i)min4.....T(i)mint;并依此更新数据发送总时长T(i)的最大值T(i)min。
具体地更新公式为:
其中,T(i)min为通道i对应的缓存队列的数据发送总时长的最大值,t为记录数据发送总时长的记录次数;T(i)mint为第t次记录的数据发送总时长。
在一实施例中,所述根据所述离差标准值和所述剩余空间计算所述各缓存队列的负载参数值的步骤包括:
其中,Fcache为缓存因子,Fbalance为均衡因子,L(i)为数据发送总时长的离差标准值,L(i)surplus为缓存队列的剩余空间,P(i)为负载参数值。
本实施例中,为了更好的表征负载参数值。引入了两个分配因子缓存因子Fcache与均衡因子Fbalance,其中缓存因子Fcache越大,意味着数据的分发受到LoRa通道的缓存队列的剩余空间影响越大;均衡因子Fbalance越大,意味着数据的分发受到LoRa通道的缓存队列的数据发送总时长影响越大。
本发明还提出一种设备,设备包括存储器、处理器、以及存储在所述存储器上并可在所述处理器上运行的负载平衡程序,所述负载平衡程序用于执行本发明各个实施例所述的方法。
本发明还提出一种计算机可读存储介质,其上存储有负载平衡程序。所述计算机可读存储介质包括计算机可读存储介质,所述计算机可读存储介质可以是图1的中的存储器,也可以是如ROM(Read-Only Memory,只读存储器)/RAM(Random Access Memory,随机存取存储器)、磁碟、光盘中的至少一种,所述计算机计算机可读存储介质包括若干指令用以使得一台具有处理器的物联网终端设备(可以是手机,计算机,服务器,物联网终端,或者网络设备等)执行本发明各个实施例所述的方法。
在本发明中,术语“第一”“第二”“第三”“第四”“第五”仅用于描述的目的,而不能理解为指示或暗示相对重要性,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,本发明保护的范围并不局限于此,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改和替换,这些变化、修改和替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种负载平衡的方法,其特征在于,所述方法包括以下步骤:
接收待分配数据,并将所述待分配数据组包为待分配数据组;
比较各缓存队列的负载参数值,基于比较结果选择各所述缓存队列中的最佳缓存队列,将所述待分配数据组分配至所述最佳缓存队列中,并将所述待分配数据组设置为待发送数据组;
将所述最佳缓存队列中的待发送数据组发送至所述最佳缓存队列对应的节点。
2.如权利要求1所述的负载平衡的方法,其特征在于,所述基于比较结果选择各所述缓存队列中的最佳缓存队列的步骤包括:
比较各缓存队列的负载参数值,并将所述负载参数值最大的缓存队列设置为最佳缓存队列。
3.如权利要求2所述的负载平衡的方法,其特征在于,所述比较各缓存队列的负载参数值并将所述负载参数值最大的缓存队列设置为最佳缓存队列的步骤之前包括:
获取各所述缓存队列中待发送数据组发送的数据发送总时长;
计算各所述缓存队列的剩余空间;
根据所述各缓存队列的数据发送总时长和剩余空间计算所述各缓存队列的负载参数值。
4.如权利要求3所述的负载平衡的方法,其特征在于,所述获取各所述缓存队列中待发送数据组发送的数据发送总时长的步骤之前包括:
每当存在待分配数据组存入缓存队列,则计算所述待分配数据组所需的待分配数据发送时长;
根据所述待分配数据发送时长更新所述缓存队列对应的数据发送总时长。
5.如权利要求3所述的负载平衡的方法,其特征在于,所述获取各所述缓存队列中待发送数据组发送的数据发送总时长的步骤之前还包括:
每当存在待发送数据组从缓存队列发送至所述缓存队列对应的节点,则计算所述待发送数据组所需的待发送数据发送时长;
根据所述待发送数据发送时长更新所述缓存队列对应的数据发送总时长。
6.如权利要求3所述的负载平衡的方法,其特征在于,所述根据所述各缓存队列的数据发送总时长和剩余空间计算所述各缓存队列的负载参数值的步骤包括:
将所述各缓存队列的数据发送总时长通过预设的离差标准化计算公式转换为所述数据发送总时长的离差标准值;
根据所述各缓存队列的离差标准值和剩余空间计算所述各缓存队列的负载参数值。
7.如权利要求6所述的负载平衡的方法,其特征在于,所述将所述数据发送总时长通过离差标准化转换为总时长的离差标准值的步骤包括:
计算所述数据发送总时长的最大值和最小值;
将所述最大值和最小值代入所述离差标准化计算公式中,使所述数据发送总时长转换为离差标准值。
9.一种负载平衡设备,其特征在于,包括存储器、处理器、以及存储在所述存储器上并可在所述处理器上运行的负载平衡程序,所述负载平衡程序被处理器执行时实现如权利要求1至8中任一项所述负载平衡的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有负载平衡程序,所述负载平衡程序被处理器执行时实现如权利要求1至8中任一项所述负载平衡的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111315073.6A CN114168317A (zh) | 2021-11-08 | 2021-11-08 | 负载平衡的方法、负载平衡设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111315073.6A CN114168317A (zh) | 2021-11-08 | 2021-11-08 | 负载平衡的方法、负载平衡设备和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114168317A true CN114168317A (zh) | 2022-03-11 |
Family
ID=80478528
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111315073.6A Pending CN114168317A (zh) | 2021-11-08 | 2021-11-08 | 负载平衡的方法、负载平衡设备和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114168317A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190068516A1 (en) * | 2016-04-22 | 2019-02-28 | Huawei Technologies Co., Ltd. | Network device, controller, queue management method, and traffic management chip |
US20190253357A1 (en) * | 2018-10-15 | 2019-08-15 | Intel Corporation | Load balancing based on packet processing loads |
CN111198767A (zh) * | 2020-01-07 | 2020-05-26 | 平安科技(深圳)有限公司 | 大数据资源处理方法、装置、终端及存储介质 |
CN112751785A (zh) * | 2020-12-30 | 2021-05-04 | 平安普惠企业管理有限公司 | 待处理请求发送方法、装置、计算机设备及存储介质 |
CN113067778A (zh) * | 2021-06-04 | 2021-07-02 | 新华三半导体技术有限公司 | 一种流量管理方法及流量管理芯片 |
-
2021
- 2021-11-08 CN CN202111315073.6A patent/CN114168317A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190068516A1 (en) * | 2016-04-22 | 2019-02-28 | Huawei Technologies Co., Ltd. | Network device, controller, queue management method, and traffic management chip |
US20190253357A1 (en) * | 2018-10-15 | 2019-08-15 | Intel Corporation | Load balancing based on packet processing loads |
CN111198767A (zh) * | 2020-01-07 | 2020-05-26 | 平安科技(深圳)有限公司 | 大数据资源处理方法、装置、终端及存储介质 |
CN112751785A (zh) * | 2020-12-30 | 2021-05-04 | 平安普惠企业管理有限公司 | 待处理请求发送方法、装置、计算机设备及存储介质 |
CN113067778A (zh) * | 2021-06-04 | 2021-07-02 | 新华三半导体技术有限公司 | 一种流量管理方法及流量管理芯片 |
Non-Patent Citations (1)
Title |
---|
陈南松: "LoRa技术及其在智慧路灯中的应用研究_陈南松", 《中国优秀硕士论文全文数据库 工程科技II辑》, 15 February 2020 (2020-02-15), pages 9 - 10 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8542584B2 (en) | Partitioning entity and method for partitioning capacity | |
US10834614B2 (en) | Quality of service in wireless backhauls | |
US7382726B2 (en) | Node system, dual ring communication system using node system, and communication method thereof | |
JP4545662B2 (ja) | 無線lan基地局の制御方法およびその基地局 | |
US8325734B2 (en) | Method of throttling uplink traffic in a wireless communication system | |
CN110474854B (zh) | 资源分配的方法和装置 | |
US7944838B2 (en) | Apparatus, method and computer program for traffic control | |
EP3468258B1 (en) | Data transmission control method and device | |
KR20090077647A (ko) | 이동통신 시스템에서 단말의 가용 전력 정보를 전송하는방법 및 장치 | |
EP1947897B1 (en) | Wireless base station apparatus capable of effectively using wireless resources according to sorts of data | |
US20200359255A1 (en) | Quality of service (qos) control method and related device | |
JP2022531715A (ja) | ダウンリンク制御情報の送信方法、装置及び読み取り可能な記憶媒体 | |
US20120063394A1 (en) | Access point, communication control method and recording medium | |
CN107852708B (zh) | 用于跨越多个资源维度进行无线电资源分配的系统和方法 | |
CN114168317A (zh) | 负载平衡的方法、负载平衡设备和计算机可读存储介质 | |
JP5146013B2 (ja) | 通信装置および通信方法 | |
WO2018082511A1 (zh) | 一种数据包的预处理方法、装置及设备 | |
EP2274941B1 (en) | Balancing of common control channel load in a communications system | |
CN112242877B (zh) | 数据传输方法、装置及系统 | |
JPWO2005011319A1 (ja) | 呼受付制御方法、及び呼受付制御システム | |
KR20220168001A (ko) | 다중 라디오 액세스 기술 기반 IIoT 서비스를 위한 동적 태스크 오프로딩을 수행하는 사용자 단말 및 이의 오프로딩 방법 | |
WO2020169473A1 (en) | Method and system for controlling an energy harvesting operation in a wireless terminal device | |
US20240137801A1 (en) | Adaptive forwarding handling of data packets | |
US20240172259A1 (en) | Method and apparatus for managing low latency data transmission in a wireless network | |
CN107809771B (zh) | 数据传输方法、c-rlc实体、d-rlc实体及小区间mac实体 |
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 |