CN110582060A - 通信方法、装置、节点设备及其存储介质 - Google Patents
通信方法、装置、节点设备及其存储介质 Download PDFInfo
- Publication number
- CN110582060A CN110582060A CN201910866489.3A CN201910866489A CN110582060A CN 110582060 A CN110582060 A CN 110582060A CN 201910866489 A CN201910866489 A CN 201910866489A CN 110582060 A CN110582060 A CN 110582060A
- Authority
- CN
- China
- Prior art keywords
- node
- current node
- week
- interval time
- data
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0203—Power saving arrangements in the radio access network or backbone network of wireless communication networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- 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
Abstract
本发明公开了一种通信方法、装置、节点设备及其存储介质,其中,该方法包括:当前节点向服务器发送数据;若发送失败,当前节点将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间;当前节点向周边节点发送第一广播报文;当前节点接收周边节点响应第一广播报文而发送的第一应答报文,第一应答报文至少包括周边节点的层级数N周;当前节点将自身的层级数设定为N周+1,并根据当前节点的层级数N周+1设定自身的休眠唤醒间隔时间,层级数越小,休眠唤醒间隔时间越短。根据本发明实施例提供的通信方法、装置、节点设备及其存储介质,网络中的每个节点,采用唤醒机制,没有固定节点充当基站,功耗低,数据传输效率高。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种通信方法、装置、节点设备及其存储介质。
背景技术
无线自组网是由一组带有无线收发装置的可移动节点所组成的一个临时性多跳自治系统,它不依赖于预设的基础设施,具有可临时组网、快速展开、无控制中心、抗毁性强等特点,在军事方面和民事方面和民用方面都具有广阔的应用前景,是目前网络研究中的热点问题。
相关技术中,无线自组网一般需至少一个固定节点充当基站,为方便周边节点连入组网,固定节点需要按照设定周期广播基站信息,以保证网络覆盖,由此,导致功耗偏高。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的第一个目的在于提出一种通信方法。
本发明的第二个目的在于提出一种通信装置。
本发明的第三个目的在于提出一种节点设备。
本发明的第四个目的在于提出一种存储介质。
为实现上述目的,第一方面,根据本发明实施例的通信方法,包括:
当前节点向服务器发送数据;
若发送失败,当前节点将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间;
当前节点向周边节点发送第一广播报文;
当前节点接收周边节点响应所述第一广播报文而发送的第一应答报文,并停止发送第一广播报文,所述第一应答报文至少包括所述周边节点的层级数N周;
当前节点将自身的层级数设定为N周+1,并根据所述当前节点的层级数N周+1设定自身的休眠唤醒间隔时间,所述层级数越小,所述休眠唤醒间隔时间越短。
第二方面,根据本发明实施例的通信装置,包括:
发送单元,用于向服务器发送数据;
恢复单元,用于当发送失败时将当前节点将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间;
广播单元,用于向周边节点发送第一广播报文;
第一接收单元,用于接收周边节点响应所述第一广播报文而发送的第一应答报文,并停止发送第一广播报文,所述第一应答报文至少包括所述周边节点的层级数N周;
设定单元,用于将当前节点的层级数设定为N周+1,并根据所述当前节点的层级数N周+1设定自身的休眠唤醒间隔时间,所述层级数越小,所述休眠唤醒间隔时间越短。
第三方面,根据本发明实施例的节点设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的通信方法。
第四方面,根据本发明实施例的存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的通信方法。
根据本发明实施例提供的通信方法、装置、节点设备及其存储介质,网络中的每个节点,采用唤醒机制,当某个节点(当前节点)有数据上传需求时,当前节点先向服务器发送数据,若发送失败,再向周边节点发送第一广播报文,整个网络中,没有固定节点充当基站,不需要按照设定周期广播基站信息,因此,降低了功耗。此外,在发送失败时,当前节点将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间,并且,当前节点在接收到周边节点发送第一应答报文时,当前节点将自身的层级数设定为N周+1,并根据所述当前节点的层级数N周+1设定自身的休眠唤醒间隔时间,所述层级数越小,所述休眠唤醒间隔时间越短,如此,网络状态越差的节点,层级数越大,其休眠唤醒间隔时间越长,越不容易接收到其他节点传输的数据,相反,网络状态越好,层级数越小,其休眠唤醒间隔时间越短,越容易接收到其他节点传输的数据,由此,可以确保发送数据时,尽可能选择网络环境良好的节点传输数据,其网络数据传输快、传输可靠,不需要重传,进一步降低了功耗。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1是本发明通信方法适用的场景架构图;
图2是本发明通信方法一个实施例的流程图;
图3是本发明通信方法另一个实施例的流程图;
图4是本发明通信方法又一个实施例的流程图;
图5是本发明通信方法又一个实施例的流程图;
图6是本发明通信方法又一个实施例的流程图;
图7是本发明通信方法又一个实施例的流程图;
图8是本发明通信装置一个实施例的结构示意图;
图9是本发明节点设备一个实施例的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
本申请的方案适用于无线自组网系统,针对无线自组网系统中需要至少一个固定节点充当基站,而固定节点需要按照设定周期广播基站信息,进而导致功耗偏高的问题,本申请提供了一种通信方法,该通信方法基于唤醒机制,在任意节点有数据上传需求时,该节点先向服务器发送数据,若发送失败,再向周边节点发送第一广播报文,整个网络中,没有固定节点充当基站,不需要按照设定周期广播基站信息,因此,降低了功耗。
此外,在发送失败时,当前节点将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间,并且,当前节点在接收到周边节点发送第一应答报文时,当前节点将自身的层级数设定为N周+1,并根据所述当前节点的层级数N周+1设定自身的休眠唤醒间隔时间,所述层级数越小,所述休眠唤醒间隔时间越短,如此,网络状态越差的节点,层级数越大,其休眠唤醒间隔时间越长,越不容易接收到其他节点传输的数据,相反,网络状态越好,层级数越小,其休眠唤醒间隔时间越短,越容易接收到其他节点传输的数据,由此,可以确保发送数据时,尽可能选择网络环境良好的节点传输数据,其网络数据传输快、传输可靠,不需要中继重传,进一步降低了功耗。
为了便于理解本申请的方案,先对本申请实施例的方案所适用的场景进行介绍。参见图1所示的通信方法的场景架构图,该场景中包括多个节点200及服务器100,其中,各个节点200是具有无线组网模块的通信设备,各个节点200之间通过无线组网模块组网通信,而节点200与服务器100之间通过GPRS通信,各个节点200用于将自身的数据或采集的数据上传至服务器100,以定位终端为例,定位终端可以将位置信息上传至服务器100,以便于服务器100随定位终端的位置进行监控。
可以理解的是,上述的通信设备可以但不限于定位终端、各类传感器、数据采集器、环境监测器等。无线组网模块可以但不限于Sub 1G模块(即频率为1GHz以下,27MHz~960MHz)、ZigBee模块等。
下面以节点A、B、C……为例,说明上述场景中数据上传的过程。
当节点A有数据上传需求时,节点A先向服务器100发送数据,若发送成功,则完成数据的上传,并标记该节点A自身的层级数为最小层级数。若发送失败,则说明节点A与服务器100之间的网络受阻,节点A将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间。
需要说明的是,层级的数量及每个层级对应的时间间隔可以是预先设定的,例如层级的数量为8级,对应的,每个层级的层级数为0、1、2、3、4、5、6、7,每个层级对应的休眠唤醒间隔时间为250ms(毫秒)、350ms、450ms、550ms、650ms、750ms、850ms、950ms,其中,默认最大层级数为7,默认最小层级数0,默认最长间隔时间为950ms,默认最小间隔时间为250ms。
此外,在节点A与服务器100之间的网络受阻的情况下,节点A再向周边节点发送第一广播报文,周边节点中的节点B接收到第一广播报文后,向节点A发送第一应答报文,第一应答报文中至少包括节点B的层级数NB。节点A在接收到第一应答报文后,将自身的层级数设定为NB+1,也即是,将自身的层级数在节点B的层级数的基础上加1,N为自然数。
随后,该节点B将接收到的数据转发服务器100,对于该节点B而言,基于相同的步骤,若发送成功,则完成数据的上传。若发送失败,则说明该节点B与服务器100之间的网络也受阻,此外,在节点B与服务器100之间的网络受阻的情况下,该节点B也将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间。
进一步地,在该节点B与服务器100之间的网络受阻的情况下,该节点B再向其他节点C发送第二广播报文,节点C接收到该第二广播报文后,向该节点B发送第二应答报文。第二应答报文中至少包括节点C的层级数NC。节点B在接收到第二应答报文后,将自身的层级数设定为NC+1,也即是,将自身的层级数在节点C的层级数的基础上加1。
如此循环,每一个接收到数据的节点200,均是先向服务器100发送数据,如果发送成功,完成数据的上传。如果发送失败,再向其周边节点200发送广播报文,将数据发送给周边节点200,直至某一个周边节点200将数据成功发送至服务器100。
下面将从节点200的角度对本申请实施例提供的通信方法的各个步骤进行详细说明。
参照图2所示,图2示出了本发明实施例提供的通信方法一个实施例的流程图,为了便于描述,仅示出了与本发明实施例相关的部分。具体的,该通信方法可以由一个节点200(下文中简称“当前节点200”)执行,具体包括:
S102、当前节点200向服务器100发送数据。
具体实现时,在各个节点200组成的自组网中,每个节点200都可以具有一个默认的层级数及与层级数对应的休眠唤醒间隔时间,这些节点200在初始状态的层级数及休眠唤醒间隔时间可以是相同的,并按照该休眠唤醒间隔时间工作,如此,可以节省节点200功耗。在一个节点200(当前节点200)具有数据上传需求时,当前节点200在休眠唤醒间隔时间的唤醒时段先向服务器100发送数据。
可以理解的是,初始状态下,各个节点默认的层级数和休眠唤醒间隔时间可以是默认最大层级数、默认最长间隔时间。
S104、若发送失败,当前节点200将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间。
也就是说,当前节点200向服务器100发送数据失败,例如在预定时间内没有收到服务器100反馈的信息,则说明数据发送失败,当前节点200与服务器100之间的网络受阻。在此情况下,当前节点200将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间,例如将层级数恢复至默认最大层级数7,将自身的休眠唤醒间隔时间恢复至默认最长间隔时间950ms,如此,该当前节点200在网络受阻情况下,可以自身的休眠唤醒间隔时间恢复至默认最长间隔时间。
S106、当前节点200向周边节点200发送第一广播报文。
由于当前节点200无法与服务器100直接通信,所以,当前节点200需要寻找周边节点200作为中继节点。此时,当前节点200向周边节点200发送第一广播报文,如果周边节点200中的某个周边节点200接收到了第一广播报文,则该周边节点200即可作为中继节点,并向当前节点200回复第一应答报文,该第一应答报文中至少包含有该周边节点200的层级数N周。
S108、当前节点200接收周边节点200响应所述第一广播报文而发送的第一应答报文,并停止发送第一广播报文。也就是说,当前节点200在接收到上述周边节点200发送的第一应答报文后,则说明数据已经发送给了中继节点,此时,当前节点200停止发送第一广播报文,至此,对于当前节点200而言,已经完成了数据的转发,即将数据转发至周边节点200。而对于作为中继节点的周边节点200而言,在接收到当前节点200发送的第一广播报文之后,该周边节点200采用与当前节点200相同的工作流程工作,即向先服务器100转发数据,如果转发成功,则完成数据上传,如果转发失败,则先将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间之后,再向其他周边节点发送广播报文等等。
S110、当前节点将自身的层级数设定为N周+1,并根据所述当前节点的层级数N周+1设定自身的休眠唤醒间隔时间,所述层级数越小,所述休眠唤醒间隔时间越短。
也就是说,当前节点200在将数据成功转发至周边节点之后,当前节点200重新设定自身的层级数和休眠唤醒间隔时间,具体的,将自身的层级数设定为N周+1,并根据当前节点200的层级数N周+1设定自身的休眠唤醒间隔时间,所述层级数越小,所述休眠唤醒间隔时间越短。也即是,将自身的层级数在周边节点的层级数的基础上加1,在重新设定层级数后,当前节点200将自身的休眠唤醒间隔时间延长,例如周边节点的层级数为N周时,周边节点的休眠唤醒间隔时间为T1毫秒,而当前节点的层级数为N周+1时,对应的休眠唤醒间隔时间为T1+a毫秒,也即是,当前节点200将自身的休眠唤醒间隔时间相对于周边节点延长a毫秒。
需要说明的是,由于当前节点200向服务器100发送数据失败时,说明当前节点200与服务器100之间的通信受阻,所以,当前节点200无法直接与服务器100通信,进而无法将数据直接上传至服务器100。在此情况下,通过上述步骤S104,将当前节点200自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间,如此,可以使得当前节点200的休眠唤醒间隔时间中休眠时段最长,则在后续通信过程中,该当前节点200不容易接收到周边节点200发送到广播报文,因此,可以减少当前节点200作为中继节点的概率。
此外,在当前节点200将第一广播报文发送给周边节点后,当前节点200将自身的层级数设定为N周+1,并根据当前节点的层级数N周+1延长自身的休眠唤醒间隔时间,如此,该周边节点在向其他周边节点广播报文时而言,该当前节点200作为其他周边节点之一,由于其休眠唤醒间隔时间更长,所以,不容易接收到广播报文,因此,可以确保周边节点在转发数据时,数据能够被网络状态更好的其他周边节点接收到,而网络状态不好的当前节点不易接收到,进而在数据上传过程中,尽可能选择网络状态好的节点作为中继节点来转发数据。
根据本发明实施例提供的通信方法,网络中的每个节点200,采用唤醒机制,当某个节点200(当前节点200)有数据上传需求时,当前节点200先向服务器100发送数据,若发送失败,再向周边节点200发送第一广播报文,当前节点200接收到周边节点200响应第一广播报文而发送的第一应答报文后,停止发送第一广播报文,整个网络中,没有固定节点充当基站,不需要按照设定周期广播基站信息,因此,降低了功耗。此外,在发送失败时,当前节点200将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间,并且,当前节点200在接收到周边节点发送第一应答报文时,当前节点200将自身的层级数设定为N周+1,并根据所述当前节点的层级数N周+1设定自身的休眠唤醒间隔时间,所述层级数越小,所述休眠唤醒间隔时间越短,如此,网络状态越差的节点,层级数越大,其休眠唤醒间隔时间越长,越不容易接收到其他节点传输的数据,相反,网络状态越好,层级数越小,其休眠唤醒间隔时间越短,越容易接收到其他节点传输的数据,由此,可以确保发送数据时,尽可能选择网络环境良好的节点传输数据,其网络数据传输快、传输可靠,不需要中继重传,例如:某一节点向周边发送了请求传输的广播命令后,优先找到网络最优的对应为最小层级数的节点(例如层级数为0的节点),不需要通过周边节点,比如层级数为2的节点传给层级数为1的节点,再传给层级数为0的节点,而是直接向层级数为0的节点发送请求,进一步降低了功耗。
参照图3所示,在本发明的一些实施例中,还包括:
S105、若发送成功,当前节点将自身的层级数恢复至默认最小层级数,以及将自身的休眠唤醒间隔时间恢复至默认最短间隔时间,例如当前节点将自身的层级数恢复至默认最小层级数0,将自身的休眠唤醒间隔时间恢复至默认最短间隔时间250ms。
也就是说,当前节点200向服务器100发送数据成功时,则说明当前节点200与服务器100之间网络良好,当前节点200能够将数据直接发送给服务器100,此时,完成了数据上传。在此情况下,当前节点200将其自身的层级数及休眠唤醒间隔时间分别恢复至默认最小层级数和默认最短间隔时间。可以理解的是,如果当前节点200自身的层级数已经为默认最小层级数,则保持默认最小层级数不变。
由此可见,当前节点200的休眠唤醒间隔时间恢复至默认最短间隔时间,则在所有节点200中,当前节点200的休眠唤醒间隔时间是最短的一个之一,如此,如上所述,休眠唤醒间隔时间越短,越容易接收到其他节点200传输的数据,所以,当前节点200容易作为中继节点,而接收周边节点200发送的广播报文,可以确保发送数据时,尽可能选择网络环境良好的当前节点200传输数据,确保数据传输更快,更可靠。
参照图4所示,可选地,在本发明的一些实施例中,所述当前节点200向周边节点200发送第一广播报文之后还包括:
S112、当前节点200没有接收到周边节点200响应所述第一广播报文而发送的第一应答报文,则返回至步骤“当前节点200向服务器100发送数据”并继续后续步骤。
也就是说,当前节点200向服务器100发送数据失败后,再向周边节点200发送第一广播报文,如果没有任何一个周边节点200接收到第一广播报文,则说明该当前节点200与周边节点200之间也存在网络受阻,或者,当前节点200的休眠唤醒间隔时间刚好与各个周边节点200的休眠唤醒间隔时间没有重合部分,即当前节点200在唤醒时段内,其他周边节点200均处于休眠时段。在此情况下,该当前节点200在下一个唤醒时段继续重复上述流程,即当前节点200先向服务器100发送数据,若发送成功,则完成数据上传。若发送失败,当前节点200先将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间,再向周边节点发送第一广播报文。
可以理解的是,在具体应用中,若当前节点没有接收到周边的任何节点发送的第一应答报文,也即是没有收到其他任何周边节点的响应,可以在该唤醒周期内向周边节点发送多次第一广播报文(例如10次),也即是在该唤醒周期内向周边节点多次请求,若多次请求仍然没有响应,再等待下一个唤醒周期,当下一个唤醒周期来临,当前节点向服务器100重复上述流程,即向服务器100发送数据,并继续后续步骤。
由此,对于当前节点200而言,只要数据没有成功发送至服务器100,也没有以第一广播报文的方式成功发送至周边节点200,则该当前节点200在后续的唤醒周期一直重复上述流程,直至数据成功发送至服务器100,或者以第一广播报文的方式成功发送至周边节点200,如此,可以确保数据能够最终上传成功,防止丢包。
参照图5所示,在本发明的一个实施例中,步骤106具体包括:
S201、当前节点200根据所述层级数N周+1查找预定表格,确定与当前节点200的所述层级数N周+1对应的休眠唤醒间隔时间,所述预定表格为层级数与休眠唤醒间隔时间对应关系表。示例性的,预定表格可以参照如下表1所示:
表1
节点的层级数 | 休眠唤醒间隔时间(ms) | 备注 |
0 | 250 | GPRS网络畅通 |
1 | 350 | 网络受阻节点 |
2 | 450 | 网络受阻节点 |
3 | 550 | 网络受阻节点 |
4 | 650 | 网络受阻节点 |
5 | 750 | 网络受阻节点 |
6 | 850 | 网络受阻节点 |
7 | 950 | 网络受阻节点 |
S202、当前节点200更新自身的所述休眠唤醒间隔时间,使其与所述层级数N周+1对应。
由上述表1可见,层级数与休眠唤醒间隔时间之间存在一对一的对应关系,也就是说,当层级数确定之后,根据层级数即可获知与层级数对应的休眠唤醒间隔时间。并且,当一个节点200能够与服务器100之间通信时,也即是,该节点200能够将数据直接发送至服务器100,则该节点200的层级书为默认最小层级数,表1中,层级数的默认最小层级数为0,而对应的该节点200的休眠唤醒间隔时间为默认最短间隔时间,表1中,休眠唤醒间隔时间的默认最短间隔时间为250ms(毫秒),如此,通过查表方式,可以简单快速的确定与层级数对应的休眠唤醒间隔时间。
可以理解的是,第一广播报文可以包括前导码及数据,前导码用于唤醒所述周边节点200进入工作状态,使得所述周边节点200在工作状态下接收所述数据。
也就是说,周边节点200在唤醒时段内先接收到第一广播报文的前导码,在接收到前导码之后进入工作状态,然后接收第一广播报文的数据。如此,可以确保只有在有数据传输需求时,周边节点200才进入工作状态,进而降低周边节点200功耗。
此外,第一广播报文还可以包括校验码,所述校验码用于校验所述当前节点200的身份,如此,通过校验码确认当前节点200身份正确后,再接收数据,确保数据传输的安全性和可靠性。
需要说明的是,对当前节点200而言,其数据传输需求分为两种,一种是需要上述的数据为自身的数据(下文简称“当前节点自身数据”),另一种是需要上传的数据其他节点转发的数据(下文简称“周边节点数据”)。
下面以一个具实施例说明当前节点200上传数据为周边节点数据时,当前节点200的具体工作流程。
参照图6所示,图6示出了本发明实施例提供的通信方法另一个实施例的流程图,为了便于描述,仅示出了与本发明实施例相关的部分。具体的,该通信方法可以由当前节点200执行,具体包括:
S302、接收周边节点200发送的第二广播报文,所述第二广播报文包含数据。
具体地,周边节点200先向服务器100发送数据,且发送失败,该周边节点先将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间。然后,周边节点200向其他周边节点200发送第二广播报文,此时,当前节点200作为其他周边节点200之一,接收到了上述第二广播报文。可以理解的是,第二广播报文也包括前导码及数据。
S304、响应所述第二广播报文而向所述周边节点200发送的第二应答报文,该第二应答报文中包含有当前节点200的层级数N当。
也就是说,当前节点200接收到第二广播报文之后,向上述周边节点200发送第二应答报文,周边节点200在收到应答报文后,停止发送第二广播报文,并将自身的层级数设定为N当+1,并根据层级数N当+1设定自身的休眠唤醒间隔时间。
S306、当前节点200向服务器100发送数据。
S308、若发送失败,当前节点200将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间。
S310、当前节点200向其他周边节点200发送第一广播报文。
S312、当前节点200接收其他周边节点200响应所述第一广播报文而发送的第一应答报文,并停止发送第一广播报文,该第一应答报文中至少包含有该周边节点200的层级数N其它周。
S314、当前节点将自身的层级数设定为N其他周+1,并根据所述当前节点的层级数N其他周+1设定自身的休眠唤醒间隔时间,所述层级数越小,所述休眠唤醒间隔时间越短。
当前节点200在收到第二广播报文后,执行上述步骤S304至S314,上述步骤S304至S314的实现原理和技术效果参见图1所示实施例中步骤S102至S110所述,此处不再赘述。
本实施例中,当前节点200作为中继节点,先接收周边节点200发送的第二广播报文,再将第二广播报文中的数据先向服务器100发送,如果发送失败,再进一步向其他周边节点200发送第一广播报文,进行数据转发,如此,可以实现将数据通过网络状态良好的节点200转发,提高数据传输的效率及稳定性。
参照图7所示,可选地,在本发明的一些实施例中,接收周边节点200发送的第二广播报文之前还包括:
S301、当前节点200判断自身的节点200压力是否过大,若是,则拒绝接收所述第二广播报文。
由于层级数越小的节点200,休眠唤醒间隔时间越小,越容易作为中继节点,所以,同一节点200频繁作为中继节点可能会造成拥堵,所以,本实施例中,当前节点200在接收周边节点200的第二广播报文之前,先判断自身的节点200压力是否过大,如果节点200压力过大,则拒绝接收第二广播报文。在此情况下,可以有其他网络状态良好且节点200压力较小的节点200,接收第二广播报文。如此,可以减小单个节点200的节点压力,防止网络状态良好的节点200可能存在数据拥堵等问题,确保数据能够稳定可靠地传输至服务器100,提高数据传输的可靠性和稳定性。
在本发明的一个实施例中,步骤S301具体为:
当前节点200将缓存数据量与设定阀值比较,当缓存数据量大于所述设定阀值时,判断为节点压力过大。
示例性的,当该当前节点存储的节点的数据超过50条,则判断为压力过大。此时,该当前节点停止接收其他周边节点的广播报文,例如,该当前节点的层级数为0,则休眠唤醒间隔时间为250ms,也即是每隔250ms接收一次数据,但是,在压力过大时,即便其层级数还是0,则该当前节点只发送存储的数据,即使下一个唤醒周期到来,也不再接收数据。
也就是说,当前节点200通过缓存数据量与设定阀值比较,进而判断为节点压力是否过大,如此,可以准确判断节点压力,防止节点200拥堵。
参照图8所示,图8示出了本发明实施例提供的通信装置一个实施例的结构示意图,为了便于描述,仅示出了与本发明实施例相关的部分。具体的,该通信装置包括:
发送单元801,用于向服务器100发送数据。
恢复单元802,用于当发送失败时将当前节点将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间;
广播单元803,用于向周边节点200发送第一广播报文。
第一接收单元804,用于接收周边节点200响应所述第一广播报文而发送的第一应答报文,并停止发送第一广播报文,所述第一应答报文至少包括所述周边节点的层级数N周。
设定单元805,用于将当前节点的层级数设定为N周+1,并根据所述当前节点的层级数N周+1设定自身的休眠唤醒间隔时间,所述层级数越小,所述休眠唤醒间隔时间越短。
根据本发明实施例提供的通信装置,网络中的每个节点,采用唤醒机制,当某个节点(当前节点)有数据上传需求时,当前节点先向服务器100发送数据,若发送失败,再向周边节点发送第一广播报文,整个网络中,没有固定节点充当基站,不需要按照设定周期广播基站信息,因此,降低了功耗。此外,在发送失败时,当前节点将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间,并且,当前节点在接收到周边节点发送第一应答报文时,当前节点将自身的层级数设定为N周+1,并根据所述当前节点的层级数N周+1设定自身的休眠唤醒间隔时间,所述层级数越小,所述休眠唤醒间隔时间越短,如此,网络状态越差的节点,层级数越大,其休眠唤醒间隔时间越长,越不容易接收到其他节点传输的数据,相反,网络状态越好,层级数越小,其休眠唤醒间隔时间越短,越容易接收到其他节点传输的数据,由此,可以确保发送数据时,尽可能选择网络环境良好的节点传输数据,其网络数据传输快、传输可靠,不需要重传,进一步降低了功耗。
在本发明的一个实施例中,所述恢复单元还用于当发送成功时将当前节点的层级数恢复至默认最小层级数,以及将当前节点的休眠唤醒间隔时间恢复至默认最短间隔时间。
在本发明的一个实施例中,还包括:
循环执行单元,用于在当前节点200没有接收到周边节点200响应所述第一广播报文而发送的第一应答报文时,控制所述发送单元、层级设定单元、周期设置单元、广播单元、第一接收单元依次循环工作。
在本发明的一个实施例中,所述设定单元包括:
查找模块,用于根据所述层级数N周+1查找预定表格,确定与当前节点200的所述层级数N周+1对应的休眠唤醒间隔时间,所述预定表格为层级数与休眠唤醒间隔时间对应关系表。
更新模块,用于更新当前节点200的所述休眠唤醒间隔时间,使其与所述层级数N周+1对应。
在本发明的一个实施例中,所述数据为当前节点200自身数据或周边节点200数据,还包括:
第二接收单元,用于接收周边节点200发送的第二广播报文,所述第二广播报文包含数据。
响应单元,用于响应所述第二广播报文而向所述周边节点200发送的第二应答报文。
在本发明的一个实施例中,还包括:
判断单元,用于判断当前节点200的节点压力是否过大,若是,则拒绝接收所述第二广播报文。
在本发明的一个实施例中,所述判断单元具体用于将缓存数据量与设定阀值比较,当缓存数据量大于所述设定阀值时,判断为节点压力过大。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置或系统类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
参照图9所示,图9示出了本发明实施例提供的计算机设备实施例的结构示意图,为了便于描述,仅示出了与本发明实施例相关的部分。具体的,该计算机设备包括存储器902、处理器901以及存储在所述存储器902中并可在所述处理器901上运行的计算机程序9021,所述处理器901执行所述计算机程序9021时实现如上述实施例所述方法的步骤,例如图2所示的S102至S110的步骤。或者,所述处理器901执行所述计算机程序9021时实现上述实施例所述装置中的各模块/单元的功能,例如图8所示单元801至805的功能。
示例性的,所述计算机程序9021可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器902中,并由所述处理器901执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序9021在所述计算机设备中的执行过程。
所述计算机设备可包括,但不仅限于处理器901、存储器902。本领域技术人员可以理解,图仅仅是计算机设备的示例,并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述计算机设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器901可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立预设硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器902可以是所述计算机设备的内部存储单元,例如计算机设备的硬盘或内存。所述存储器902也可以是所述计算机设备的外部存储设备,例如所述计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器902还可以既包括所述计算机设备的内部存储单元也包括外部存储设备。所述存储器902用于存储所述计算机程序9021以及所述计算机设备所需的其他程序和数据。所述存储器902还可以用于暂时地存储已经输出或者将要输出的数据。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序9021,计算机程序9021被处理器901执行时实现如上述实施例中所述方法中的步骤,例如图2所示的步骤S102至步骤S110。或者,所述计算机程序9021被处理器901执行时实现上述实施例中所述装置中的各模块/单元的功能,例如图8所示的模块801至805的功能。
所述的计算机程序9021可存储于一计算机可读存储介质中,该计算机程序9021在被处理器901执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序9021包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例系统中的模块或单元可以根据实际需要进行合并、划分和删减。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子预设硬件、或者计算机软件和电子预设硬件的结合来实现。这些功能究竟以预设硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本发明所提供的实施例中,应该理解到,所揭露的装置/计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/计算机设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (12)
1.一种通信方法,其特征在于,包括:
当前节点向服务器发送数据;
若发送失败,当前节点将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间;
当前节点向周边节点发送第一广播报文;
当前节点接收周边节点响应所述第一广播报文而发送的第一应答报文,并停止发送第一广播报文,所述第一应答报文至少包括所述周边节点的层级数N周;
当前节点将自身的层级数设定为N周+1,并根据所述当前节点的层级数N周+1设定自身的休眠唤醒间隔时间,所述层级数越小,所述休眠唤醒间隔时间越短。
2.根据权利要求1所述的通信方法,其特征在于,还包括:
若发送成功,当前节点将自身的层级数恢复至默认最小层级数,以及将自身的休眠唤醒间隔时间恢复至默认最短间隔时间。
3.根据权利要求1或2所述的通信方法,其特征在于,所述当前节点向周边节点发送第一广播报文之后还包括:
当前节点没有接收到周边节点响应所述第一广播报文而发送的第一应答报文,则返回至步骤“当前节点向服务器发送数据”并继续后续步骤。
4.根据权利要求1所述的通信方法,其特征在于,所述根据所述当前节点的层级数N周+1设定自身的休眠唤醒间隔时间包括:
当前节点根据所述层级数N周+1查找预定表格,确定与当前节点的所述层级数N周+1对应的休眠唤醒间隔时间,所述预定表格为层级数与休眠唤醒间隔时间对应关系表;
当前节点更新自身的所述休眠唤醒间隔时间,使其与所述层级数N周+1对应。
5.根据权利要求1所述的通信方法,其特征在于,所述第一广播报文包括前导码及数据,所述前导码用于唤醒所述周边节点进入工作状态,使得所述周边节点在工作状态下接收所述数据。
6.根据权利要求5所述的通信方法,其特征在于,所述第一广播报文还包括校验码,所述校验码用于校验所述当前节点的身份。
7.根据权利要求1述的通信方法,其特征在于,所述数据为当前节点自身数据或周边节点数据,当所述数据为周边节点数据时,所述当前节点向服务器发送数据之前,还包括:
接收周边节点发送的第二广播报文,所述第二广播报文包含数据;
响应所述第二广播报文而向所述周边节点发送的第二应答报文。
8.根据权利要求7述的通信方法,其特征在于,所述接收周边节点发送的第二广播报文之前还包括:
当前节点判断自身的节点压力是否过大,若是,则拒绝接收所述第二广播报文。
9.根据权利要求8述的通信方法,其特征在于,所述当前节点判断自身的节点压力是否过大包括:
当前节点将缓存数据量与设定阀值比较,当缓存数据量大于所述设定阀值时,判断为节点压力过大。
10.一种通信装置,其特征在于,包括:
发送单元,用于向服务器发送数据;
恢复单元,用于当发送失败时将当前节点将自身的层级数恢复至默认最大层级数,以及将自身的休眠唤醒间隔时间恢复至默认最长间隔时间;
广播单元,用于向周边节点发送第一广播报文;
第一接收单元,用于接收周边节点响应所述第一广播报文而发送的第一应答报文,并停止发送第一广播报文,所述第一应答报文至少包括所述周边节点的层级数N周;
设定单元,用于将当前节点的层级数设定为N周+1,并根据所述当前节点的层级数N周+1设定自身的休眠唤醒间隔时间,所述层级数越小,所述休眠唤醒间隔时间越短。
11.一种节点设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至9任意一项所述的通信方法。
12.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至9任意一项所述的通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910866489.3A CN110582060B (zh) | 2019-09-12 | 2019-09-12 | 通信方法、装置、节点设备及其存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910866489.3A CN110582060B (zh) | 2019-09-12 | 2019-09-12 | 通信方法、装置、节点设备及其存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110582060A true CN110582060A (zh) | 2019-12-17 |
CN110582060B CN110582060B (zh) | 2022-01-18 |
Family
ID=68812923
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910866489.3A Active CN110582060B (zh) | 2019-09-12 | 2019-09-12 | 通信方法、装置、节点设备及其存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110582060B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111315000A (zh) * | 2020-01-16 | 2020-06-19 | 深圳市元征科技股份有限公司 | 车辆数据传输方法、装置、设备和存储介质 |
CN112672380A (zh) * | 2020-12-24 | 2021-04-16 | 京信网络系统股份有限公司 | 基站业务调度方法、装置、介质和基站 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070066273A1 (en) * | 2005-09-19 | 2007-03-22 | Rajiv Laroia | Wireless terminal methods and apparatus for use in a wireless communications system that uses a multi-mode base station |
CN102625425A (zh) * | 2012-02-29 | 2012-08-01 | 电子科技大学 | 一种事件自适应的传感器节点 |
CN103237337A (zh) * | 2013-02-28 | 2013-08-07 | 山东省计算中心 | 一种无线传感器自适应网络休眠控制方法 |
CN105307244A (zh) * | 2014-05-27 | 2016-02-03 | 无锡韩光电器有限公司 | 一种无线传感器网络的低功耗组网方法 |
CN107222913A (zh) * | 2017-06-12 | 2017-09-29 | 赣南师范大学 | 脐橙果园监测节点的基于随机深度的自适应休眠方法 |
CN108012317A (zh) * | 2017-12-18 | 2018-05-08 | 河南科技大学 | 一种适用于认知网络的节点自适应休眠机制 |
CN108848498A (zh) * | 2018-06-22 | 2018-11-20 | 北京格瑞空间科技有限公司 | 一种基于LoRa的网状自组网通信系统及方法 |
-
2019
- 2019-09-12 CN CN201910866489.3A patent/CN110582060B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070066273A1 (en) * | 2005-09-19 | 2007-03-22 | Rajiv Laroia | Wireless terminal methods and apparatus for use in a wireless communications system that uses a multi-mode base station |
CN102625425A (zh) * | 2012-02-29 | 2012-08-01 | 电子科技大学 | 一种事件自适应的传感器节点 |
CN103237337A (zh) * | 2013-02-28 | 2013-08-07 | 山东省计算中心 | 一种无线传感器自适应网络休眠控制方法 |
CN105307244A (zh) * | 2014-05-27 | 2016-02-03 | 无锡韩光电器有限公司 | 一种无线传感器网络的低功耗组网方法 |
CN107222913A (zh) * | 2017-06-12 | 2017-09-29 | 赣南师范大学 | 脐橙果园监测节点的基于随机深度的自适应休眠方法 |
CN108012317A (zh) * | 2017-12-18 | 2018-05-08 | 河南科技大学 | 一种适用于认知网络的节点自适应休眠机制 |
CN108848498A (zh) * | 2018-06-22 | 2018-11-20 | 北京格瑞空间科技有限公司 | 一种基于LoRa的网状自组网通信系统及方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111315000A (zh) * | 2020-01-16 | 2020-06-19 | 深圳市元征科技股份有限公司 | 车辆数据传输方法、装置、设备和存储介质 |
CN112672380A (zh) * | 2020-12-24 | 2021-04-16 | 京信网络系统股份有限公司 | 基站业务调度方法、装置、介质和基站 |
Also Published As
Publication number | Publication date |
---|---|
CN110582060B (zh) | 2022-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102211930B1 (ko) | 데이터 통신 방법 및 장치 | |
US7911978B1 (en) | Adaptive topology discovery in communication networks | |
US7747273B2 (en) | Asynchronous power management methods and systems for wireless networks | |
US9313275B2 (en) | Communication protocol for energy-harvesting devices | |
CN110798875B (zh) | 一种无线网络组网方法及系统 | |
US9819466B2 (en) | Method and apparatus for retransmitting packet for low-power wireless sensor communications | |
US20070129093A1 (en) | Power management methods and systems | |
US20100080157A1 (en) | Periodic synchronization link quality in a mesh network | |
CN107710835B (zh) | 网状网格中的协调工作循环指派 | |
CN108353464B (zh) | 网状网络连接性 | |
CN110582060B (zh) | 通信方法、装置、节点设备及其存储介质 | |
EP2925047B1 (en) | Method for transmitting and receiving data | |
CN103636277A (zh) | 在无线通信系统中通过移动站测距传输的方法和设备 | |
Lee et al. | FlexiMAC: A flexible TDMA-based MAC protocol for fault-tolerant and energy-efficient wireless sensor networks | |
US8787274B2 (en) | Communication system | |
CN109121096B (zh) | 用于确定网状网络中的广播节点的方法和装置 | |
CN103404202B (zh) | 一种确定中继设备的方法、站点、接入点、中继设备及系统 | |
CN107820277B (zh) | 用于无线网络的父节点装置、终端装置及其数据传输方法 | |
US20040100917A1 (en) | Coordinator device election process for wireless sensor networks | |
CN116938712A (zh) | 设备升级方法、设备升级装置以及计算机可读存储介质 | |
US8897170B2 (en) | Communication apparatus and method for mobile terminal communication through a sensor network | |
Miller et al. | Reliable and efficient reprogramming in sensor networks | |
Sun | Dissemination protocols for reprogramming wireless sensor networks: A literature survey | |
US6721285B1 (en) | Polling system for a duplex asymmetrical communications link | |
KR20230025455A (ko) | 데이터 전송 방법 및 장치 |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210528 Address after: 518000 1701-1708, 1801-1806, block D, building 1, Chuangzhi Yuncheng bid section 1, Liuxian Avenue, Xili community, Xili street, Nanshan District, Shenzhen City, Guangdong Province Applicant after: Shenzhen Yunjia Intelligent Technology Co.,Ltd. Address before: 518000 Yue Meilin Central Plaza, Kang Road, Futian District, Shenzhen City, Guangdong Province (North District), 2nd floor 204, 205, 206 Applicant before: SHENZHEN XTOOLTECH Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |