CN112399470B - LoRa通信方法、LoRa网关、LoRa***、计算机可读存储介质 - Google Patents
LoRa通信方法、LoRa网关、LoRa***、计算机可读存储介质 Download PDFInfo
- Publication number
- CN112399470B CN112399470B CN201910759840.9A CN201910759840A CN112399470B CN 112399470 B CN112399470 B CN 112399470B CN 201910759840 A CN201910759840 A CN 201910759840A CN 112399470 B CN112399470 B CN 112399470B
- Authority
- CN
- China
- Prior art keywords
- data
- downlink
- priority
- queue
- sending
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0215—Traffic management, e.g. flow control or congestion control based on user or device properties, e.g. MTC-capable devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/10—Flow control between communication endpoints
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/10—Flow control between communication endpoints
- H04W28/14—Flow control between communication endpoints using intermediate storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/16—Gateway arrangements
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种LoRa通信方法、LoRa网关、LoRa***、计算机可读存储介质,方法包括:当网关产生下行数据时,根据下行数据所对应的设备类型、数据的实时性要求将所产生的数据放入不同的数据缓存中,设备类型包括仅接收数据的第一类设备、上行后需要等待回复的第二类设备;当接收到属于第二类设备的某终端上行的数据时,若终端对应的缓存中存在数据,则将存在的数据取出后放入发送缓存中;当进入下行周期时,按照数据实时性要求对应的优先级顺序从第一类设备的缓存中取出数据后放入发送缓存中直至发送缓存放满,将发送缓存的数据取出后发送出去,本发明可以保证数据的发送符合其实时性要求,能够降低数据的延迟,防止数据拥塞,提高网络可用性、吞吐量。
Description
技术领域
本发明涉及LoRa通信领域,尤其涉及一种LoRa通信方法、LoRa网关、LoRa***、计算机可读存储介质。
背景技术
LoRa应用中下行数据没有一种可靠有效的方法,有些实时性要求高的下行数据延迟高,网络的利用率不高。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种提高数据下行效率的LoRa通信方法、LoRa网关、LoRa***、计算机可读存储介质。
本发明解决其技术问题所采用的技术方案是:构造一种提高数据下行效率的LoRa通信方法,所述方法包括:
当网关产生下行数据时,根据下行数据所对应的设备类型、数据的实时性要求将所产生的数据放入不同的数据缓存中,其中所述设备类型包括:仅接收数据的第一类设备、上行后需要等待回复的第二类设备;
当接收到属于第二类设备的某终端上行的数据时,若所述某终端对应的缓存中存在数据,则将存在的数据取出后放入发送缓存中;
当进入下行周期时,按照数据实时性要求对应的优先级顺序从第一类设备的缓存中取出数据后放入发送缓存中直至发送缓存放满,将发送缓存的数据取出后发送出去。
优选地,所述的根据下行数据所对应的设备类型、数据的实时性要求进行数据缓存,包括:
若产生的下行数据所对应的终端属于第一类设备,则将所产生的下行数据按照数据实时性要求对应的优先级放入第一类设备的不同优先级的缓存中;
若产生的下行数据所对应的终端属于第二类设备,则将所产生的下行数据放入其所对应的终端的缓存中。
优选地,第一类设备的下行数据按照实时性要求分为高优先级下行数据、空闲下行数据、普通优先级数据,普通优先级数据进一步按照实时性要求分为多个优先级,所述第一类设备的缓存包括高优先级队列、空闲下行队列、具有不同优先级的多个普通下行队列,所述多个普通下行队列的优先级与普通优先级数据的多个优先级一一对应;
所述的将所产生的下行数据按照数据实时性要求对应的优先级放入第一类设备的不同优先级的缓存中,包括:将高优先级下行数据放入高优先级队列,将空闲下行数据放入空闲下行队列,将普通优先级数据按照其具体优先级放入对应优先级的普通下行队列。
优选地,所述的按照数据实时性要求对应的优先级顺序从第一类设备的缓存中取出数据后放入发送缓存中,包括:
顺次执行如下步骤:
若发送队列未满,则优先查看高优先级队列,若高优先级队列中存在数据,则从高优先级队列中取出数据放入发送缓存中,且取出时保证发送队列中高优先级数据的比例小于预设比例;
若发送队列还是未满,且距离上一次发送空闲下行数据已经经过了预设个下行周期,则查看空闲下行队列,若空闲下行队列中存在数据,则将一包空闲下行数据放入发送队列;
若发送队列还是未满,则从所述多个普通优先级队列中按照优先级顺序取出数据发入发送队列,直至发送队列放满。
本发明另一方面还构造了一种LoRa网关,包括:
下行数据缓存模块,用于当网关产生下行数据时,根据下行数据所对应的设备类型、数据的实时性要求进行数据缓存,其中所述设备类型包括:仅接收数据的第一类设备、上行后需要等待回复的第二类设备;
下行数据准备模块,用于当接收到属于第二类设备的某终端上行的数据时,若所述某终端对应的缓存中存在数据,则将存在的数据取出后放入发送缓存中;
下行模块,用于当进入下行周期时,按照数据实时性要求对应的优先级顺序从第一类设备的缓存中取出数据后放入发送缓存中直至发送缓存放满,将发送缓存的数据取出后发送出去。
优选地,所述下行数据缓存模块包括:
第一类设备的数据缓存单元,用于在判断出产生的下行数据所对应的终端属于第一类设备时,将所产生的下行数据按照数据实时性要求对应的优先级放入第一类设备的不同优先级的缓存中;
第二类设备的数据缓存单元,用于在判断出产生的下行数据所对应的终端属于第二类设备时,将所产生的下行数据放入其所对应的终端的缓存中。
优选地,第一类设备的下行数据按照实时性要求分为高优先级下行数据、空闲下行数据、普通优先级数据,普通优先级数据进一步按照实时性要求分为多个优先级,所述第一类设备的缓存包括高优先级队列、空闲下行队列、具有不同优先级的多个普通下行队列,所述多个普通下行队列的优先级与普通优先级数据的多个优先级一一对应;
所述第一类设备的数据缓存单元具体用于将高优先级下行数据放入高优先级队列,将空闲下行数据放入空闲下行队列,将普通优先级数据按照其具体优先级放入对应优先级的普通下行队列。
优选地,所述下行模块具体包括:
第一下行处理单元,用于当进入下行周期时,若发送队列未满,则优先查看高优先级队列,若高优先级队列中存在数据,则从高优先级队列中取出数据放入发送缓存中,且取出时保证发送队列中高优先级数据的比例小于预设比例;
第二下行处理单元,用于在第一下行处理单元处理完毕后,若发送队列还是未满且距离上一次发送空闲下行数据已经经过了预设个下行周期,则查看空闲下行队列,若空闲下行队列中存在数据,则将一包空闲下行数据放入发送队列;
第三下行处理单元,用于在第二下行处理单元处理完毕后,若发送队列还是未满,则从所述多个普通优先级队列中按照优先级顺序取出数据发入发送队列,直至发送队列放满;
下行单元,用于将发送队列的数据取出后发送出去。
本发明另一方面还构造了一种LoRa网关,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如前任一项所述的方法的步骤。
本发明另一方面还构造了一种LoRa***,包括LoRa网关和终端,其特征在于,所述LoRa网关为如前所述的LoRa网关。
本发明另一方面还构造了一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时实现如前所述的方法的步骤。
本发明的LoRa通信方法、LoRa网关、LoRa***、计算机可读存储介质,具有以下有益效果:本发明对下行数据流进行分配,首先在生成数据时,根据下行数据所对应的设备类型、数据的实时性要求将所产生的数据放入不同的数据缓存中;然后再发送数据方面,一方面,对于上行后需要等待回复的设备,在接受到期上行数据时,立即从相应缓存中将数据取出放到发送缓存中,如此可以优先保证此类设备的数据下行,另一方面,对于仅接收数据的设备的下行数据,按照数据实时性要求对应的优先级顺序从第一类设备的缓存中取出数据后放入发送缓存,如此可以保证数据的发送符合其实时性要求,能够降低数据的延迟,防止数据拥塞,从而提高lora网络的可用性,提高网络的吞吐量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图:
图1是本发明LoRa通信方法的流程图;
图2是数据产生时的缓存流程示意图;
图3是数据发送时的具体流程图。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的典型实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。应当理解本发明实施例以及实施例中的具体特征是对本申请技术方案的详细的说明,而不是对本申请技术方案的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互组合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
实施例一
参考图1,本实施例时的提高数据下行效率的LoRa通信方法,包括:
S101:当网关产生下行数据时,根据下行数据所对应的设备类型、数据的实时性要求将所产生的数据放入不同的数据缓存中;
其中所述设备类型包括:仅接收数据的第一类设备、上行后需要等待回复的第二类设备。参考图1中,我们将第一类设备记为class C设备,记为第二类设备记为class A设备。
本实施例中,用于存放对应于class C设备的下行数据的缓存,选用的是队列,如图1中所示的class C队列。用于存放对应于class A设备的下行数据的缓存,选用的是MAP,如图中class A下行MAP。
class C设备的下行数据按照实时性要求分为优先级逐次降低的三类数据:高优先级下行数据、空闲下行数据、普通优先级数据。普通优先级数据按照实时性高低进一步划分为多个优先级,当然普通优先级数据所划分出的多个优先级依然是低于高优先级下行数据、空闲下行数据的优先级。class C队列包括高优先级队列、空闲下行队列、具有不同优先级的多个普通下行队列,所述多个普通下行队列的优先级与普通优先级数据的多个优先级一一对应,如图中普通优先级数据是进一步分为3个优先级,对应的普通下行队列也就为3个,这3个普通下行队列对应的优先级分别记为优先级1、2、3。
参考图2,具体来说,本步骤具体包括:
1)产生下行数据时,判断产生的下行数据所对应的终端的设备类型;
2)若产生的下行数据所对应的终端属于class C设备,则将所产生的下行数据按照优先级放入class C设备的不同优先级的缓存中,具体的:将高优先级下行数据放入高优先级队列,将空闲下行数据放入空闲下行队列,将普通优先级数据按照其具体优先级放入对应优先级的普通下行队列。
如果将每个缓存队列长度限制记为SIZE,若队列当前的长度大于SIZE,则可以先将队列尾部的一条数据丢弃,也可以通知数据源缓存已满,缓存失败。
3)若产生的下行数据所对应的终端属于class A设备,则将所产生的下行数据放入其所对应的终端的缓存中,即放入终端对应的MAP中。
S102:当接收到属于第二类设备的某终端上行的数据时,若所述某终端对应的缓存(即图1中所示意的class A下行MAP)中存在数据,则将存在的数据取出后放入发送缓存(即图1中的发送队列)中;
网关与终端之间是周期通信的,具体来说,整个***以固定周期执行事务的,每一个周期包括一个上行周期和一个下行周期,网关在下行周期下行数据给终端,终端在上行周期上行数据给网关。所以,基于步骤S102的处理,class A设备的下行数据会及时的放入发送队列,如此可以优先保证class A设备的下行数据的发送。
S103:当进入下行周期时,按照优先级顺序从第一类设备的缓存中取出数据后放入发送缓存中直至发送缓存放满,将发送缓存的数据取出后发送出去。
参考图3,步骤S103主要是顺次执行如下步骤:
S1031:发送数据定时到期(即进入下行周期)时,如果发送队列已满则发送数据,否则进入下一个步骤;
S1032:优先查看高优先级队列,若高优先级队列中存在数据,则从高优先级队列中取出数据放入发送缓存中,且取出时保证发送队列中高优先级数据的比例小于预设比例PERT,如果发送队列已满,则将发送队列的数据发送出去,否则进入下一个步骤;
具体来说,数据是逐条获取的,在每一次从高优先级队列中取出数据之前,要首先判断若将高优先级队列中的一条高优先级数据取出放入发送队列,是否依旧满足高优先级数据的比例小于PERT,只有在满足此条件时,才取出一条数据放入发送队列,否则进入下一个步骤S1033。
S1033:距离上一次发送空闲下行数据已经经过了预设个下行周期(比如说,假设设定每5个周期需要下行一个空闲下行数据,则意味着距离上一次发送空闲下行数据需要经过4个下行周期),则查看空闲下行队列,若空闲下行队列中存在数据,则将一包空闲下行数据放入发送队列,如果发送队列已满,则将发送队列的数据发送出去,否则进入下一个步骤;
S1034:从所述多个普通优先级队列中按照优先级顺序取出数据发入发送队列,直至发送队列放满;比如说,先从图1中的优先级1的普通优先级队列中取出一条数据放入发送队列中,如果还是发送队列还是未满则可以继续取,如果优先级1的普通优先级队列中数据取完了,可以从优先级2中的普通优先级队列中取出一条数据,以此类推。
S1035:将发送队列的数据发送出去。
实施例二
基于同一发明构思,本实施例工况了一种LoRa网关,包括:
下行数据缓存模块,用于当网关产生下行数据时,根据下行数据所对应的设备类型、数据的实时性要求进行数据缓存,其中所述设备类型包括:仅接收数据的第一类设备、上行后需要等待回复的第二类设备;
下行数据准备模块,用于当接收到属于第二类设备的某终端上行的数据时,若所述某终端对应的缓存中存在数据,则将存在的数据取出后放入发送缓存中;
下行模块,用于当进入下行周期时,按照数据实时性要求对应的优先级顺序从第一类设备的缓存中取出数据后放入发送缓存中直至发送缓存放满,将发送缓存的数据取出后发送出去。
具体的,所述下行数据缓存模块包括:
第一类设备的数据缓存单元,用于在判断出产生的下行数据所对应的终端属于第一类设备时,将所产生的下行数据按照数据实时性要求对应的优先级放入第一类设备的不同优先级的缓存中;
第二类设备的数据缓存单元,用于在判断出产生的下行数据所对应的终端属于第二类设备时,将所产生的下行数据放入其所对应的终端的缓存中。
具体的,第一类设备的下行数据按照实时性要求分为高优先级下行数据、空闲下行数据、普通优先级数据,普通优先级数据进一步按照实时性要求分为多个优先级,所述第一类设备的缓存包括高优先级队列、空闲下行队列、具有不同优先级的多个普通下行队列,所述多个普通下行队列的优先级与普通优先级数据的多个优先级一一对应;
所述第一类设备的数据缓存单元具体用于将高优先级下行数据放入高优先级队列,将空闲下行数据放入空闲下行队列,将普通优先级数据按照其具体优先级放入对应优先级的普通下行队列。
具体的,所述下行模块具体包括:
第一下行处理单元,用于当进入下行周期时,若发送队列未满,则优先查看高优先级队列,若高优先级队列中存在数据,则从高优先级队列中取出数据放入发送缓存中,且取出时保证发送队列中高优先级数据的比例小于预设比例;
第二下行处理单元,用于在第一下行处理单元处理完毕后,若发送队列还是未满且距离上一次发送空闲下行数据已经经过了预设个下行周期,则查看空闲下行队列,若空闲下行队列中存在数据,则将一包空闲下行数据放入发送队列;
第三下行处理单元,用于在第二下行处理单元处理完毕后,若发送队列还是未满,则从所述多个普通优先级队列中按照优先级顺序取出数据发入发送队列,直至发送队列放满;
下行单元,用于将发送队列的数据取出后发送出去。
更多内容可以参考实施例一,此处不再赘述
上述描述涉及各种模块。这些模块通常包括硬件和/或硬件与软件的组合(例如固化软件)。这些模块还可以包括包含指令(例如,软件指令)的计算机可读介质(例如,永久性介质),当处理器执行这些指令时,就可以执行本发明的各种功能性特点。相应地,除非明确要求,本发明的范围不受实施例中明确提到的模块中的特定硬件和/或软件特性的限制。作为非限制性例子,本发明在实施例中可以由一种或多种处理器(例如微处理器、数字信号处理器、基带处理器、微控制器)执行软件指令(例如存储在非永久性存储器和/或永久性存储器)。需要指出的是,上文对各种模块的描述中,分割成这些模块,是为了说明清楚。然而,在实际实施中,各种模块的界限可以是模糊的。例如,本文中的任意或所有功能性模块可以共享各种硬件和/或软件元件。又例如,本文中的任何和/或所有功能模块可以由共有的处理器执行软件指令来全部或部分实施。另外,由一个或多个处理器执行的各种软件子模块可以在各种软件模块间共享。相应地,除非明确要求,本发明的范围不受各种硬件和/或软件元件间强制性界限的限制。
实施例三
本实施例公开了一种LoRa网关,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如实施例一所述的方法的步骤。具体实现过程可参阅上述方法实施例的描述,此处不再赘述。
实施例四
本实施例公开了一种LoRa***,包括LoRa网关和终端,所述LoRa网关为如实施例二或者实施例三所述的LoRa网关,此处不再赘述。
实施例五
本实施例公开了一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时实现如实施例一所述的方法的步骤。具体实现过程可参阅上述方法实施例的描述,此处不再赘述。
综上所述,本发明的LoRa通信方法、LoRa网关、LoRa***、计算机可读存储介质,具有以下有益效果:本发明对下行数据流进行分配,首先在生成数据时,根据下行数据所对应的设备类型、数据的实时性要求将所产生的数据放入不同的数据缓存中;然后再发送数据方面,一方面,对于上行后需要等待回复的设备,在接受到期上行数据时,立即从相应缓存中将数据取出放到发送缓存中,如此可以优先保证此类设备的数据下行,另一方面,对于仅接收数据的设备的下行数据,按照数据实时性要求对应的优先级顺序从第一类设备的缓存中取出数据后放入发送缓存,如此可以保证数据的发送符合其实时性要求,能够降低数据的延迟,防止数据拥塞,从而提高LoRa网络的可用性,提高网络的吞吐量。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (7)
1.一种提高数据下行效率的LoRa通信方法,其特征在于,所述方法包括:
当网关产生下行数据时,根据下行数据所对应的设备类型、数据的实时性要求将所产生的数据放入不同的数据缓存中,其中所述设备类型包括:仅接收数据的第一类设备、上行后需要等待回复的第二类设备;
当接收到属于第二类设备的某终端上行的数据时,若所述某终端对应的缓存中存在数据,则将存在的数据取出后放入发送缓存中;
当进入下行周期时,按照数据实时性要求对应的优先级顺序从第一类设备的缓存中取出数据后放入发送缓存中直至发送缓存放满,将发送缓存的数据取出后发送出去;
其中,第一类设备的下行数据按照实时性要求分为高优先级下行数据、空闲下行数据、普通优先级数据,普通优先级数据进一步按照实时性要求分为多个优先级,所述第一类设备的缓存包括高优先级队列、空闲下行队列、具有不同优先级的多个普通下行队列,所述多个普通下行队列的优先级与普通优先级数据的多个优先级一一对应;
所述的将所产生的下行数据按照数据实时性要求对应的优先级放入第一类设备的不同优先级的缓存中,包括:将高优先级下行数据放入高优先级队列,将空闲下行数据放入空闲下行队列,将普通优先级数据按照其具体优先级放入对应优先级的普通下行队列;
其中,所述的按照数据实时性要求对应的优先级顺序从第一类设备的缓存中取出数据后放入发送缓存中,包括:
顺次执行如下步骤:
若发送队列未满,则优先查看高优先级队列,若高优先级队列中存在数据,则从高优先级队列中取出数据放入发送缓存中,且取出时保证发送队列中高优先级数据的比例小于预设比例;
若发送队列还是未满,且距离上一次发送空闲下行数据已经经过了预设个下行周期,则查看空闲下行队列,若空闲下行队列中存在数据,则将一包空闲下行数据放入发送队列;
若发送队列还是未满,则从所述多个普通优先级队列中按照优先级顺序取出数据发入发送队列,直至发送队列放满。
2.根据权利要求1所述的方法,其特征在于,所述的根据下行数据所对应的设备类型、数据的实时性要求进行数据缓存,包括:
若产生的下行数据所对应的终端属于第一类设备,则将所产生的下行数据按照数据实时性要求对应的优先级放入第一类设备的不同优先级的缓存中;
若产生的下行数据所对应的终端属于第二类设备,则将所产生的下行数据放入其所对应的终端的缓存中。
3.一种LoRa网关,其特征在于,包括:
下行数据缓存模块,用于当网关产生下行数据时,根据下行数据所对应的设备类型、数据的实时性要求进行数据缓存,其中所述设备类型包括:仅接收数据的第一类设备、上行后需要等待回复的第二类设备;
下行数据准备模块,用于当接收到属于第二类设备的某终端上行的数据时,若所述某终端对应的缓存中存在数据,则将存在的数据取出后放入发送缓存中;
下行模块,用于当进入下行周期时,按照数据实时性要求对应的优先级顺序从第一类设备的缓存中取出数据后放入发送缓存中直至发送缓存放满,将发送缓存的数据取出后发送出去;
其中,第一类设备的下行数据按照实时性要求分为高优先级下行数据、空闲下行数据、普通优先级数据,普通优先级数据进一步按照实时性要求分为多个优先级,所述第一类设备的缓存包括高优先级队列、空闲下行队列、具有不同优先级的多个普通下行队列,所述多个普通下行队列的优先级与普通优先级数据的多个优先级一一对应;
所述第一类设备的数据缓存单元具体用于将高优先级下行数据放入高优先级队列,将空闲下行数据放入空闲下行队列,将普通优先级数据按照其具体优先级放入对应优先级的普通下行队列;
其中,所述下行模块具体包括:
第一下行处理单元,用于当进入下行周期时,若发送队列未满,则优先查看高优先级队列,若高优先级队列中存在数据,则从高优先级队列中取出数据放入发送缓存中,且取出时保证发送队列中高优先级数据的比例小于预设比例;
第二下行处理单元,用于在第一下行处理单元处理完毕后,若发送队列还是未满且距离上一次发送空闲下行数据已经经过了预设个下行周期,则查看空闲下行队列,若空闲下行队列中存在数据,则将一包空闲下行数据放入发送队列;
第三下行处理单元,用于在第二下行处理单元处理完毕后,若发送队列还是未满,则从所述多个普通优先级队列中按照优先级顺序取出数据发入发送队列,直至发送队列放满;
下行单元,用于将发送队列的数据取出后发送出去。
4.根据权利要求3所述的LoRa网关,其特征在于,所述下行数据缓存模块包括:
第一类设备的数据缓存单元,用于在判断出产生的下行数据所对应的终端属于第一类设备时,将所产生的下行数据按照数据实时性要求对应的优先级放入第一类设备的不同优先级的缓存中;
第二类设备的数据缓存单元,用于在判断出产生的下行数据所对应的终端属于第二类设备时,将所产生的下行数据放入其所对应的终端的缓存中。
5.一种LoRa网关,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-2任一项所述的方法的步骤。
6.一种LoRa***,包括LoRa网关和终端,其特征在于,所述LoRa网关为如权利要求3-4任一项所述的LoRa网关,或者,所述LoRa网关为如权利要求5所述的LoRa网关。
7.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-2任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910759840.9A CN112399470B (zh) | 2019-08-16 | 2019-08-16 | LoRa通信方法、LoRa网关、LoRa***、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910759840.9A CN112399470B (zh) | 2019-08-16 | 2019-08-16 | LoRa通信方法、LoRa网关、LoRa***、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112399470A CN112399470A (zh) | 2021-02-23 |
CN112399470B true CN112399470B (zh) | 2022-11-08 |
Family
ID=74602940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910759840.9A Active CN112399470B (zh) | 2019-08-16 | 2019-08-16 | LoRa通信方法、LoRa网关、LoRa***、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112399470B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117329341B (zh) * | 2023-11-30 | 2024-02-09 | 河北乙木源节水科技有限公司 | 一种应用于农业的太阳能阀门自动控制*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101783748A (zh) * | 2009-12-25 | 2010-07-21 | 中兴通讯股份有限公司 | 数据流监控方法及装置 |
CN101834787A (zh) * | 2010-04-12 | 2010-09-15 | 中兴通讯股份有限公司 | 调度数据的方法和*** |
CN101840328A (zh) * | 2010-04-15 | 2010-09-22 | 华为技术有限公司 | 一种数据处理方法及***以及相关设备 |
CN108173752A (zh) * | 2017-12-22 | 2018-06-15 | 成都博高信息技术股份有限公司 | Lorawan网关及其控制方法 |
CN110022595A (zh) * | 2018-01-08 | 2019-07-16 | ***通信有限公司研究院 | 下行数据发送方法、网络设备和计算机存储介质 |
-
2019
- 2019-08-16 CN CN201910759840.9A patent/CN112399470B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101783748A (zh) * | 2009-12-25 | 2010-07-21 | 中兴通讯股份有限公司 | 数据流监控方法及装置 |
CN101834787A (zh) * | 2010-04-12 | 2010-09-15 | 中兴通讯股份有限公司 | 调度数据的方法和*** |
CN101840328A (zh) * | 2010-04-15 | 2010-09-22 | 华为技术有限公司 | 一种数据处理方法及***以及相关设备 |
CN108173752A (zh) * | 2017-12-22 | 2018-06-15 | 成都博高信息技术股份有限公司 | Lorawan网关及其控制方法 |
CN110022595A (zh) * | 2018-01-08 | 2019-07-16 | ***通信有限公司研究院 | 下行数据发送方法、网络设备和计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112399470A (zh) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103841052B (zh) | 一种带宽资源分配***与方法 | |
CN112436930B (zh) | 一种通信方法及装置 | |
CN112399470B (zh) | LoRa通信方法、LoRa网关、LoRa***、计算机可读存储介质 | |
CN110008187B (zh) | 文件传输调度方法、装置、设备及计算机可读存储介质 | |
CN113157465B (zh) | 基于指针链表的消息发送方法及装置 | |
CN114979022A (zh) | 远程直接数据存取的实现方法、装置、适配器和存储介质 | |
US11570787B2 (en) | Data sending method and apparatus, computer device and storage medium | |
CN111638986A (zh) | 一种QoS队列调度方法、装置、***及可读存储介质 | |
WO2018072259A1 (zh) | 一种资源调度方法及装置 | |
CN115514710B (zh) | 一种基于自适应滑动窗的弱连接流量管控方法 | |
CN109391558B (zh) | 一种队列的控制方法及控制装置 | |
CN112714440B (zh) | 兼容LoRaWAN和自研协议的通信方法、***、网关和存储介质 | |
CN112437494A (zh) | 一种资源分配方法及装置 | |
CN110955522B (zh) | 一种协调性能隔离和数据恢复优化的资源管理方法及*** | |
CN116560809A (zh) | 数据处理方法及装置、设备、介质 | |
CN111324438A (zh) | 请求的调度方法、装置、存储介质及电子设备 | |
CN115242727B (zh) | 用户请求处理方法、装置、设备和介质 | |
CN114640385B (zh) | 一种基于北斗通信***的数据传输方法及电子设备 | |
CN112312471B (zh) | 业务消息发送方法、装置和设备 | |
JP2013222407A (ja) | 流量制御機能を有するシステム | |
CN117858262B (zh) | 基站资源调度优化方法、装置、基站、设备、介质及产品 | |
CN111835806B (zh) | 入网方法、入网设备、入网回应设备以及可读存储介质 | |
CN114968507B (zh) | 图像处理任务的调度方法及装置 | |
WO2024174581A1 (zh) | 数据传输控制方法及装置、电子设备、存储介质 | |
JP2017059250A (ja) | 流量制御機能を有するシステム |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |