CN115086923A - 蓝牙网络及其通信方法、设备和存储介质 - Google Patents
蓝牙网络及其通信方法、设备和存储介质 Download PDFInfo
- Publication number
- CN115086923A CN115086923A CN202110272327.4A CN202110272327A CN115086923A CN 115086923 A CN115086923 A CN 115086923A CN 202110272327 A CN202110272327 A CN 202110272327A CN 115086923 A CN115086923 A CN 115086923A
- Authority
- CN
- China
- Prior art keywords
- relay
- controllable
- state
- nodes
- node
- 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 101
- 238000004891 communication Methods 0.000 title claims abstract description 79
- 238000003860 storage Methods 0.000 title claims abstract description 17
- 238000004590 computer program Methods 0.000 claims description 24
- 238000012544 monitoring process Methods 0.000 claims description 19
- 230000003111 delayed effect Effects 0.000 claims description 7
- 230000006870 function Effects 0.000 abstract description 65
- 230000008569 process Effects 0.000 description 46
- 230000005540 biological transmission Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 18
- 238000012545 processing Methods 0.000 description 11
- 230000006872 improvement Effects 0.000 description 9
- 230000004044 response Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 8
- 230000004048 modification Effects 0.000 description 8
- 238000012986 modification Methods 0.000 description 8
- 235000008694 Humulus lupulus Nutrition 0.000 description 6
- 230000008859 change Effects 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/02—Arrangements for optimising operational condition
-
- 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
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/22—Communication route or path selection, e.g. power-based or shortest path routing using selective relaying for reaching a BTS [Base Transceiver Station] or an access point
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/005—Discovery of network devices, e.g. terminals
-
- 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
-
- 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/02—Terminal devices
- H04W88/04—Terminal devices adapted for relaying to or from another terminal or user
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例提供一种蓝牙网络及其通信方法、设备和存储介质。在本申请实施例中,将一些具有转发功能的蓝牙节点设置为中继状态可自主控制的可控中继节点,将不具有转发功能的蓝牙节点视为非中继节点;这些可控中继节点在处于可中继状态的情况下可以转发网络中的蓝牙广播数据,有利于扩大蓝牙通信范围;另外,这些可控中继节点还可根据其邻居可控中继节点之间的连通性和中继状态灵活调整自身的中继状态,决定是关闭或开启中继功能,使得网络中处于可中继状态的中继节点的数量可动态变化且可控,能够与实际的网络拓扑场景适配,不至于过多也不至于过少,既能提高网络的吞吐量,又能保证网络连通性。
Description
技术领域
本申请涉及无线通信技术领域,尤其涉及一种蓝牙网络及其通信方法、设备和存储介质。
背景技术
为了突破蓝牙设备在通信范围上的限制,蓝牙技术联盟发布了蓝牙Mesh(网状)协议,它是建立在蓝牙低功耗(Bluetooth Low Energy,BLE)标准上的蓝牙协议(Profile)。蓝牙Mesh协议可以实现网状的网络拓扑,支持多跳连接,可扩大蓝牙网络的覆盖范围,尤其适合智能家居、智能楼宇等物联网设备通信场景。
蓝牙Mesh协议是基于广播泛洪(flooding)的通信机制,即每个蓝牙节点对外以广播方式发送蓝牙数据,简称为蓝牙广播数据,其他节点在收到蓝牙广播数据后会进行一次转发,直到目的地址的蓝牙节点收到该蓝牙广播数据。在实际应用中,蓝牙网络中会存在一些无效、不必要的蓝牙广播数据被发送,这会对蓝牙Mesh网络的吞吐量造成影响。
发明内容
本申请的多个方面提供一种蓝牙网络及其通信方法、设备和存储介质,用以减少网络中无效、不必要蓝牙广播数据的数量,提高网络的吞吐量。
本申请实施例提供一种蓝牙网络,包括:无线连接的多个蓝牙节点,所述多个蓝牙节点包括至少两个可控中继节点和至少一个非中继节点;其中,所述至少两个可控中继节点,用于根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态,并在处于可中继状态的情况下,转发来自所述至少一个非中继节点或其它可控中继节点的蓝牙广播数据。
本申请实施例还提供一种通信方法,适用于蓝牙网络中任一可控中继节点,所述方法包括:所述可控中继节点获取其邻居可控中继节点之间的连通性和中继状态;根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态;在处于可中继状态的情况下,转发来自所述蓝牙网络中非中继节点或其它可控中继节点的蓝牙广播数据。
本申请实施例还提供一种节点设备,可作为蓝牙网络中的可控中继节点实现,所述节点设备包括:存储器、处理器和通信组件;所述存储器,用于存储计算机程序;所述处理器,与所述存储器耦合,用于执行所述计算机程序,以用于:获取其邻居可控中继节点之间的连通性和中继状态;根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态;在处于可中继状态的情况下,转发来自所述蓝牙网络中非中继节点或其它可控中继节点的蓝牙广播数据。
本申请实施例还提供一种存储有计算机程序/指令的计算机可读存储介质,当所述计算机程序被处理器执行时,致使所述处理器本申请实施例提供的通信方法中的步骤。
本申请实施例还提供一种计算机程序产品,包括计算机程序/指令,当所述计算机程序/指令被处理器执行时,致使所述处理器本申请实施例提供的通信方法中的步骤。
在本申请实施例中,将一些具有转发功能的蓝牙节点设置为中继状态可自主控制的可控中继节点,将不具有转发功能的蓝牙节点视为非中继节点;这些可控中继节点在处于可中继状态的情况下可以转发网络中的蓝牙广播数据,有利于扩大蓝牙通信范围;另外,这些可控中继节点还可根据其邻居可控中继节点之间的连通性和中继状态灵活调整自身的中继状态,决定是关闭或开启中继功能,使得网络中处于可中继状态的中继节点的数量可动态变化且可控,能够与实际的网络拓扑场景适配,不至于过多也不至于过少,既能提高网络的吞吐量,又能保证网络连通性。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1a为本申请示例性实施例提供的一种蓝牙网络的结构示意图;
图1b为本申请示例性实施例提供的另一种蓝牙网络的结构示意图;
图1c为本申请示例性实施例提供的智能家居场景中的蓝牙网络示意图;
图1d为本申请示例性实施例提供的一种无线网络的结构示意图;
图2为本申请示例性实施例提供的一种发送中继状态消息的流程示意图;
图3为本申请示例性实施例提供的一种根据中继状态消息更新本地邻居列表的流程示意图;
图4为本申请示例性实施例提供的一种根据本地邻居列表对邻居可控中继节点进行有效性检测的流程示意图;
图5a为本申请示例性实施例提供的可控中继节点调整自身中继状态的流程示意图;
图5b为本申请示例性实施例提供的一种周期性控制可控中继节点调整自身中继状态的过程示意图;
图6为本申请示例性实施例提供的一种判断网络是否发生泛洪现象的过程示意图;
图7为本申请示例性实施例提供的一种通信方法的流程示意图;
图8为本申请示例性实施例提供的一种通信装置的结构示意图;
图9为本申请示例性实施例提供的一种节点设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在传统蓝牙网络中因存在一些无效、不必要的蓝牙广播数据被发送给网络吞吐量造成的不利影响,针对该问题,在本申请一些实施例中,将一些具有转发功能的蓝牙节点设置为中继状态可自主控制的可控中继节点,将不具有转发功能的蓝牙节点视为非中继节点;这些可控中继节点在处于可中继状态的情况下可以转发网络中的蓝牙广播数据,有利于扩大蓝牙通信范围;另外,这些可控中继节点还可根据其邻居可控中继节点之间的连通性和中继状态灵活调整自身的中继状态,决定是关闭或开启中继功能,使得网络中处于可中继状态的中继节点的数量可动态变化且可控,能够与实际的网络拓扑场景适配,不至于过多也不至于过少,既能减少网络中无效、不必要蓝牙广播数据的被大量转发,提高网络的吞吐量,又能保证网络连通性。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1a为本申请示例性实施例提供的一种蓝牙网络的结构示意图。如图1a所示,该蓝牙网络10包括:多个蓝牙节点11,蓝牙节点11是指支持蓝牙通信协议的蓝牙设备,例如可以是但不限于:蓝牙手机、蓝牙耳机、蓝牙音箱、蓝牙开关、蓝牙电视、蓝牙灯或蓝牙手环等等。蓝牙通信协议有多个版本,例如蓝牙1.0版本、蓝牙2.0版本、蓝牙3.0版本以及蓝牙4.0版本等。在本实施例中,并不限定蓝牙节点11所支持的蓝牙通信协议的版本,多个蓝牙节点11可以支持同一版本的蓝牙通信协议,也可以支持不同版本的蓝牙通信协议。
在蓝牙网络10中,多个蓝牙节点11之间无线连接。在本申请各实施例中,并不限定多个蓝牙节点11之间形成的网络拓扑结构,只要多个蓝牙节点11之间可以相互通信即可。例如,多个蓝牙节点11之间可以形成星型、树型、环型、网状(Mesh)型等各种类型的网络拓扑结构。在一可选实施例中,如图1a所示,多个蓝牙节点11之间互相通信连接,形成Mesh网络拓扑。
在蓝牙网络10中,多个蓝牙节点11包括至少两个可控中继节点11a和至少一个非中继节点11b。至少两个可控中继节点11a之间通信连接,可控中继节点11a之间的通信连接可以是直接通信连接,也可以是间接通信连接。另外,非中继节点11b可以无线连接于一个或多个可控中继节点11a,且可以与其连接的可控中继节点11a进行通信。这里的通信连接主要是指蓝牙连接。在图1a中,以每个非中继节点11b连接于一个可控中继节点11a为例进行图示。
其中,非中继节点11b是蓝牙网络10中不具有转发功能的蓝牙节点,其工作在蓝牙广播模式下。在蓝牙广播模式下,非中继节点11b的主要功能是在其信号覆盖范围内接收或发送蓝牙广播数据。目前,各种版本的蓝牙通信协议基本上都支持蓝牙广播模式,这就是说,支持任何版本的蓝牙通信协议的蓝牙设备都可以作为本实施例中的非中继节点11b。由此可见,对于那些由于硬件能力受限而无法或无法很好地支持较高版本的蓝牙通信协议的蓝牙设备,可以采用本实施例的组网方式,作为本实施例中的非中继节点借助于可控中继节点的转发功能来扩展其通信范围。当然,对于硬件能力较强的一些蓝牙设备,也可以作为本实施例中的非中继节点11b实现。
其中,可控中继节点11a是蓝牙网络10中具有转发功能的蓝牙节点,可以转发来自非中继节点11b或其它可控中继节点11a的蓝牙广播数据,即具有中继功能,故称为可控中继节点11a。可控中继节点11a所支持的蓝牙通信协议需要支持网络互联和转发功能,例如可以是蓝牙4.0及以上等较高版本的蓝牙通信协议。可选地,可控中继节点11a可以是一些计算能力较强的蓝牙设备,例如蓝牙手机、蓝牙电视或蓝牙音箱等。
在本实施例中,可控中继节点11a除了具有转发功能之外,也可以与其它可控中继节点11a或非中继节点11b进行通信。对任一可控中继节点11a来说,如果需要通信的可控中继节点11a或非中继节点11b在该可控中继节点11a的信号覆盖范围内,则可以直接地与需要通信的可控中继节点11a或非中继节点11b进行通信;如果需要通信的可控中继节点11a或非中继节点11b不在该可控中继节点11a的信号覆盖范围内,则可以借助于周边其它可控中继节点11a的转发功能,间接地与需要通信的可控中继节点11a或非中继节点11b进行通信。
同理,非中继节点11b可以与在其信号覆盖范围内的其它非中继节点11b直接进行通信,也可以借助于可控中继节点11a的转发能力与不在其信号覆盖范围内的其它非中继节点11b进行通信。当然,非中继节点11b也可以与在其信号覆盖范围内的可控中继节点11a直接进行通信,还可以借助于可控中继节点11a的转发能力与不在其信号覆盖范围内的可控中继节点11a进行通信。
以非中继节点A与不在其信号覆盖范围内的非中继节点B或可控中继节点C进行通信为例,非中继节点A与非中继节点B或可控中继节点C可以借助于位于各自信号覆盖范围内的可控中继节点进行通信。即,非中继节点A发出的蓝牙广播数据会被其信号覆盖范围内的可控中继节点接收到;该可控中继节点判断出该蓝牙广播数据不是发给自己的,则将该蓝牙广播数据广播转发出去;在经过一个或多个可控中继节点转发之后,该蓝牙广播数据会到达在非中继节点B或可控中继节点C的信号覆盖范围内的可控中继节点,该可控中继节点判断出该蓝牙广播数据不是发给自己的,将该蓝牙广播数据广播转发出去,此时非中继节点B或可控中继节点C会接收到该蓝牙广播数据;非中继节点B或可控中继节点C判断出该蓝牙广播信号是发给自己的,接收并对该蓝牙广播数据进行后续处理。
在本实施例的蓝牙网络中,将具有转发功能的蓝牙节点作为可控中继节点,将工作在蓝牙广播模式下的蓝牙节点作为非中继节点,借助于可控中继节点的转发功能,非中继节点可以与不在其信号覆盖范围内的其它非中继节点或可控中继节点进行通信,可扩大蓝牙通信范围,而非中继节点只要支持蓝牙广播模式即可,对非中继节点的硬件能力要求较低,不再受蓝牙节点的硬件能力的限制。另外,在可控中继节点为多个的情况下,非中继节点可以分散接入不同可控中继节点,各可控中继节点的负担相对较轻,有利于降低各可控中继节点的功耗。
进一步,在本实施例中,可控中继节点11a可自主控制其中继状态,即可自主决定其处于可中继状态还是处于不可中继状态。其中,可控中继节点11a处于可中继状态可以理解为可控中继节点11a开启中继功能,相应地,可控中继节点11a处于不可中继状态可以理解为可控中继节点11a关闭中继功能。具体地,可控中继节点11a可根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态,即决定自身是处于可中继状态还是处于不可中继状态,其中,可控中继节点11a调整自身中继状态的过程是一个动态调整的过程;而且,对于可控中继节点11a而言,只有在处于可中继状态的情况下,才能转发来自非中继节点11b或其它可控中继节点11a的蓝牙广播数据。若可控中继节点11a处于不可中继状态,则无法转发来自非中继节点11b或其它可控中继节点11a的蓝牙广播数据。
在本实施例中,可控中继节点根据其邻居可控中继节点之间的连通性和中继状态灵活调整自身的中继状态,自主决定是关闭或开启中继功能,使得网络中处于可中继状态的中继节点的数量可动态变化,而且可控中继节点的数量还能够适应网络拓扑的变化、与实际的网络拓扑场景适配,不至于过多也不至于过少,一定程度上可减少网络中无效、不必要蓝牙广播数据的被大量转发,提高网络的吞吐量,而且还能保证网络连通性。
在本申请各实施例中,并不对可控中继节点11a的邻居可控中继节点进行限定,对任一可控中继节点11a而言,其邻居可控中继节点可以是指其一跳邻居中的可控中继节点,也可以是两跳、三跳甚至更多跳邻居中的可控中继节点。在一可选实施例中,对任一可控中继节点11a而言,其邻居可控中继节点是指该可控中继节点11a的一跳邻居中的可控中继节点。
在本申请实施例中,每个可控中继节点11a可以获取其邻居可控中继节点之间的连通性和中继状态,并根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态。具体地,在邻居可控中继节点之间的连通性和中继状态满足相应条件的情况下,可控中继节点11a可以将自身中继状态从可中继状态调整为不可中继状态,如图1a中的“开->关”;相应地,在邻居可控中继节点之间的连通性和中继状态不满足相应条件的情况下,可控中继节点11a也可以将自身中继状态从不可中继状态调整为可中继状态,如图1a中的“关->开”。在本申请实施例中,并不限定可控中继节点11a获取其邻居可控中继节点之间的连通性和中继状态的实施方式。
在一可选实施例中,可控中继节点11a与其邻居可控中继节点之间可以彼此通告自己的中继状态以及自己邻居可控中继节点中处于可中继状态的节点的信息。这里节点的信息主要是指节点的IP地址、MAC地址或名称等可以唯一标识一个可控中继节点的信息。这样,每个可控中继节点11a不仅可以了解其邻居可控中继节点的中继状态(开或关),而且还能通过邻居可控中继节点通告的其(这里的其指代邻居可控中继节点)邻居可控中继节点中处于可中继状态的节点的信息了解各邻居可控中继节点之间的连通性。
具体地,可控中继节点11a可以向其邻居可控中继节点发送中继状态消息,并可接收其邻居可控中继节点发送的中继状态消息。其中,中继状态消息包括发送该消息的可控中继节点自身的中继状态及其邻居可控中继节点中处于可中继状态的节点的信息。在本实施例中,将可控中继节点11a向其邻居可控中继节点发送中继状态消息的过程简称为“中继状态消息发送过程”,将可控中继节点11a接收其邻居可控中继节点发送的中继状态消息的过程简称为“中继状态消息接收过程”。对可控中继节点11a而言,“中继状态消息发送过程”和“中继状态消息接收过程”是两个独立的过程,彼此之间没有先后顺序的限定。另外,“中继状态消息发送过程”和“中继状态消息接收过程”在具体实现上可以有多种方式,本申请实施例对此不做限定,下面实施例将对这两个过程相关的内容分别进行详细说明。
中继状态消息发送过程:
在可选实施例A1中,可以预先设定一个或多个用于触发可控中继节点11a发送中继状态消息的触发事件,例如节点自身配置发生变化的事件、网络状态发生变化的事件、节点新上电的事件、节点新入网的事件等。可控中继节点11a可以监测这些触发事件是否发生,当其中任一触发事件发生时,在该触发事件的触发下,可控中继节点11a会向其邻居可控中继节点发送中继状态消息,以向邻居可控中继节点通告自己的中继状态和自己邻居可控中继节点中处于可中继状态的节点的信息。
在可选实施例A2中,可以预先设定一发送周期,为便于区分和描述,将这里的发送周期记为第一发送周期。基于第一发送周期,可控中继节点11a可以周期性地向其邻居可控中继节点发送中继状态消息。在本实施例中,并不限定第一发送周期的时间长度,例如可以1秒、5秒、1分钟等。
进一步可选地,为了便于可控中继节点11a以更加合理地方式,向其邻居可控中继节点发送中继状态消息,本申请实施例在周期性地发送中继状态消息的基础上进行了以下至少一种改进,下面结合图2对所述至少一种改进进行详细说明。
改进A1:如图2所示,可控中继节点11a新上电或新入网的情况下,先延迟第一时间,之后再按照设定的第一发送周期,周期性地向其邻居可控中继节点发送中继状态消息。在本实施例中,并不限定第一时间的取值,例如可以是1秒、5秒等固定时间值,也可以是一随机时间值,可选地,该随机时间值可以是0-60秒内的任一时间。对于新上电或新入网的可控中继节点,通过延迟一定时间再开始周期性向其邻居可控中继节点发送中继状态消息,在该延迟时间内可以优先接收网络中其邻居可控中继节点发送的中继状态消息,如果发现处于可中继状态的邻居可控中继节点的数量已经足够多,例如已经大于设定的第二数量阈值N且这些处于可中继状态的邻居可控中继节点都是彼此可达的,则可以先把自己的中继功能关闭,之后再按照第一发送周期开始周期性地向邻居可控中继节点发送中继状态消息,可降低对网络中已经处于可中继状态的可控中继节点的影响,这样可使网络中的可控中继节点能够较长时间保持在稳定状态中。
改进A2:如图2所示,在开始周期性向邻居可控中继节点发送中继状态消息的情况下,在第一发送周期首次到达时,先延迟一个随机时间,之后再向邻居可控中继节点发送中继状态消息。换句话说,在首次发送中继状态消息时,可在第一发送周期的基础上增加一个随机时间,这样在多个可控中继节点同时上电或入网的情况下,可以避免多个可控中继节点同时向外发送中继状态消息导致网络拥塞,可以保证网络的稳定性。本实施例并不限定该随机时间的取值范围,可选地,该随机时间可以是0~60秒内的任一时间值。
改进A3:如图2所示,可控中继节点记录向其邻居可控中继节点发送中继状态消息的次数;判断该次数是否小于或等于第一次数阈值;若是,则按照第二发送周期,周期性地向其邻居可控中继节点发送中继状态消息;若否,则按照第一发送周期,周期性地向其邻居可控中继节点发送中继状态消息。其中,第二发送周期是根据第一发送周期确定的,且小于所述第一发送周期。在本实施例中,并不限定第二发送周期与第一发送周期之间的关系,例如第二发送周期可以是第一发送周期的1/2、1/3、3/4等,又例如第二发送周期也可以是第一发送周期与预设时间步长的差值。另外,本实施例也不限定第一次数阈值的取值,例如可以是5、10、15次等,可视应用场景灵活设定。
在该可选实施例中,在可控中继节点向其邻居可控中继节点发送中继状态消息的初始阶段,采用较小的发送周期,有利于让新上电或入网的可控中继节点以较快的速度向其邻居可控中继节点通告自身中继状态,方便网络中尽快选举出处于可中继状态的可控中继节点,使网络保持在稳定状态;而在可控中继节点向其邻居可控中继节点发送中继状态消息的后期阶段,采用较大的发送周期,不仅能够降低可控中继节点改变自身中继状态的频次,而且可以减少可控中继节点发送中继状态消息的资源消耗。
改进A4:考虑到可控中继节点的资源能力相对有限,其缓存资源通常也比较有限,故可以设置每个可控中继节点最多能缓存的处于可中继状态的邻居可控中继节点的信息的数量,称为最多可缓存的数量阈值,例如10个。相应地,还可以根据该最多可缓存的数量阈值合理设置中继状态消息的大小,并通过中继状态消息所能承载的节点信息的最大数量来体现,将中继状态消息所能承载的节点信息的最大数量记为第一数量阈值。其中,第一数量阈值与上述最多可缓存的数量阈值对应,可选地,第一数量阈值可以是上文中最多可缓存的数量阈值的1/2,但不限于此。
基于此,如图2所示,可控中继节点在向其邻居可控中继节点发送中继状态消息时,还可以判断其邻居可控中继节点中处于可中继状态的节点数量是否大于第一数量阈值;若判断结果为大于,则采用至少两个中继状态消息来承载其邻居可控中继节点中处于可中继状态的节点的信息,并向其邻居可控中继节点发送至少两个中继状态消息,每个中继状态消息中包括其邻居可控中继节点中一部分处于可中继状态的节点的信息。进一步可选地,若判断结果为小于或等于,采用一个中继状态消息来承载其邻居可控中继节点中处于可中继状态的节点的信息,并向其邻居可控中继节点发送该中继状态消息,该中继状态消息中包括其邻居可控中继节点中全部处于可中继状态的节点的信息。
在此说明,上述改进A1-A4可以以任一方式组合使用,也可以单独使用,在图2中以改进A1-A4全部组合使用为例进行图示,关于改进A1-A4的其它组合使用方式可在图2基础上进行简单改进得到,故不再赘述。
在本实施例中,可控中继节点可以采用广播方式向其邻居可控中继节点发送中继状态消息,并将该中继状态消息中的生存时间(Time To Live,TTL)值设置为其到邻居可控中继节点之间的跳数。根据对邻居可控中继节点的定义的不同,TTL值的取值也会不同。若可控中继节点的邻居可控中继节点是该可控中继节点的一跳邻居中的可控中继节点,则中继状态消息中的TTL值为1;若可控中继节点的邻居可控中继节点是该可控中继节点的两跳邻居中的可控中继节点,则中继状态消息中的TTL值为2。
在本实施例中,并不限定中继状态消息的格式,可以是任何能够承载可控中继节点的中继状态及其邻居可控中继节点中处于可中继状态的节点信息的消息格式。在本申请一可选实施例中,给出一种中继状态消息的格式,该中继状态消息至少包括以下表1所示的字段,参见下一页。
中继状态消息接收过程:
在一可选实施例中,可控中继节点可以在本地维护一个邻居列表,用于存储其邻居可控中继节点中处于可中继状态的节点信息以及来自该节点的中继状态消息的接收时间等。进一步,每个可控中继节点的本地邻居列表中还可以存储目标可控中继节点的信息,目标可控中继节点是指其邻居可控中继节点的邻居可控中继节点中处于可中继状态的可控中继节点。这里节点的信息是指节点的IP地址、MAC地址、名称等可唯一标识节点的信息。可选地,与上文提到的“设置每个可控中继节点最多能缓存的处于可中继状态的邻居可控中继节点的信息的数量”相呼应,本地邻居列表最多可缓存的节点信息的数量即上文中最多可缓存的数量阈值。其中,本地邻居列表的一种实现结构如下表2所示:
表1
表2
基于本地邻居列表,可控中继节点在接收其邻居可控中继节点发送的中继状态消息的过程中,还可以根据从中继状态消息中识别出的其邻居可控中继节点的中继状态,对本地邻居列表进行更新。其中,对本地邻居列表进行更新的过程主要包括:
对于识别出的处于不可中继状态的邻居可控中继节点,若本地邻居列表中包含该邻居可控中继节点的信息,则将该邻居可控中继节点的信息从本地邻居列表中删除;
对于识别出的处于可中继状态的邻居可控中继节点,若本地邻居列表中包含该邻居可控中继节点的信息,则更新本地邻居列表中该邻居可控中继节点对应的接收时间;
对于识别出的处于可中继状态的邻居可控中继节点,若本地邻居列表中未包含该邻居可控中继节点的信息,则将该邻居可控中继节点的信息和来自该邻居可控中继节点的中继状态消息的接收时间记录到本地邻居列表中。
在本实施例中,并不限定上述更新过程的详细实现方式,一种可选实施例方式如图3所示,包括以下操作:
针对接收到的每个中继状态消息,判断从该中继状态消息中识别出的其邻居可控中继节点的中继状态是否为可中继状态。若判断结果为否,进一步判断本地邻居列表中是否包含该邻居可控中继节点的信息;若包含,则将该邻居可控中继节点的相关信息从本地邻居列表中删除,并将邻居可控中继节点中处于可中继状态的节点数量减1。其中,在发送中继状态消息过程中需要用到的其邻居可控中继节点中处于可中继状态的节点数量,可采用此处的方式从本地邻居列表统计得到。
若判断结果为是,则进一步判断本地邻居列表中是否包含该邻居可控中继节点的信息;若包含,则更新本地邻居列表中该邻居可控中继节点的相关信息,包括该邻居可控中继节点对应的接收时间以及其对应的目标可控中继节点的地址或名称;若不包含,则将该邻居可控中继节点的相关信息,包括邻居可控中继节点的信息和来自该邻居可控中继节点的中继状态消息的接收时间以及对应的目标可控中继节点的信息记录到本地邻居列表中,并将邻居可控中继节点中处于可中继状态的节点数量加1。
进一步可选地,如图3所示,在上述判断结果为是的情况下,还可以判断中继状态消息的信号强度RSSI是否大于设定的信号强度阈值;若大于,再进一步判断本地邻居列表中是否包含该邻居可控中继节点的信息;若不大于,则丢弃该中继状态消息不做处理。通过该判断操作,可以将信号强度较弱的节点过滤掉,可以保证网络中节点之间的连通性。
进一步可选地,如图3所示,在将该邻居可控中继节点的相关信息记录到本地邻居列表中时,还可以判断本地邻居列表是否已满;若是,则将本地邻居列表中符合删除条件的条目删除,以得到空闲条目,将该邻居可控中继节点的相关信息记录到空闲条目中;若否,则将该邻居可控中继节点的相关信息记录到本地邻居列表中的一条空闲条目中。可选地,删除条件可以是优先删除接收时间最老的邻居可控中继节点的相关信息,从而得到空闲条目。
在本地邻居列表的基础上,可控中继节点还可以对其邻居可控中继节点进行有效性检测。具体地,可控中继节点可根据本地邻居列表中记录的接收时间,检测其邻居可控中继节点的有效性,并将失效的邻居可控中继节点的信息从本地邻居列表中删除。如图4所示,为可控中继节点根据本地邻居列表对其邻居可控中继节点进行有效性检测的一种实施方式:对于本地邻居列表中的每个接收时间,监测该接收时间与当前时间的时间间隔;判断该时间间隔是否大于或等于过期时间值;若是,即该时间间隔大于或等于过期时间值,确定该接收时间对应的邻居可控中继节点为失效的邻居可控中继节点,将该失效的邻居可控中继节点的信息从本地邻居列表中删除;若否,即该时间间隔小于过期时间值,则判断该时间间隔是否大于第一发送周期;若该时间间隔大于第一发送周期,说明该邻居可控中继节点处于超期状态,但尚未失效,则向该接收时间对应的邻居可控中继节点发送状态请求消息,以供该邻居可控中继节点返回中继状态消息。对该邻居可控中继节点而言,在接收到状态请求消息后可返回中继状态消息;对于接收到中继状态消息的可控中继节点而言,其处理过程与上述“中继状态消息接收过程”中的处理方式相同,在此不再赘述。
在此说明,可控中继节点根据本地邻居列表中记录的邻居可控中继节点的信息可以确定处于超期状态但尚未失效的邻居可控中继节点的信息(如地址),故可以才采用单播方式直接向该超期但尚未失效的邻居可控中继节点发送状态请求消息,但不限于此。当然,可控中继节点也可以采用广播方式向该超期但尚未失效的邻居可控中继节点发送状态请求消息。
采用上述图2-图4所示实施例,可控中继节点可以向其邻居可控中继节点发送中继状态消息,也可以接收其邻居可控中继节点发送的中继状态消息。下面结合具体可控中继节点A0及其邻居可控中继节点包括A1-A3对中继状态消息的发送和接收过程进行示例性说明:
对于可控中继节点A0,其邻居可控中继节点包括A1-A3,其中处于可中继状态的节点为A1和A2,节点A3处于不可中继状态;则可控中继节点A0可以向其邻居可控中继节点A1-A3分别发送中继状态消息,该中继状态消息包括A0是否处于可中继状态的信息以及A0的邻居可控中继节点中处于可中继状态的节点A1和A2的信息。这里的信息可以是节点的地址、名称等可唯一标识可控中继节点的信息。相应地,可控中继节点A0的邻居可控中继节点A1-A3也会向各自的邻居可控中继节点(包括可控中继节点A0)发送中继状态消息;对可控中继节点A0而言,还可以接收其邻居可控中继节点A1-A3发送的中继状态消息。为便于描述,将可控中继节点A0以及A1-A3发送的中继状态消息简单表示为A0:1,(A1、A2);A1:1,(A0、A2、A4);A2:1,(A0、A3、A4);A3:0,(A0、A5、A6);其中,0表示对应节点处于不可中继状态,1表示对应节点处于可中继状态,()中的内容表示发送该消息的可控中继节点的邻居可控中继节点中处于可中继状态的节点的信息。
由上述可知,对可控中继节点而言,可以根据其邻居可控中继节点发送的中继状态消息,获知其邻居可控中继节点的中继状态以及对应的目标可控中继节点的信息,目标可控中继节点是该邻居可控中继节点的邻居可控中继节点中处于可中继状态的节点。以上述可控中继节点A0为例,其接收到的中继状态消息包括A1:1,(A0、A2、A4);A2:1,(A0、A1、A3);A3:0,(A0、A2、A5),以中继状态消息A1:1,(A0、A2、A4)为例,对可控中继节点A0而言,可控中继节点A1是其邻居可控中继节点,且处于可中继状态,而可控中继节点A2、A4属于目标可控中继节点。同理,以中继状态消息A3:0,(A0、A5、A6)为例,对可控中继节点A0而言,可控中继节点A3是其邻居可控中继节点,且处于不可中继状态,而可控中继节点A5、A6属于目标可控中继节点。进一步,对可控中继节点而言,还可根据其邻居可控中继节点对应的目标可控中继节点的信息,获取其邻居可控中继节点之间的连通性。仍以上文示例为例,可知可控中继节点A0可以将接收到的邻居可控中继节点A1-A3发送的中继状态消息进行比对,从而得到:节点A1和A2互为邻居,节点A2和A3互为邻居,不用节点A0进行中继彼此之间也是可达的,而节点A1和A3并不互为邻居,如果节点A0关闭中继功能,节点A1和A3将无法通信。
对可控中继节点而言,在获取其邻居可控中继节点之间的连通性和中继状态之后,可根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态。在本实施例中,将可控中继节点根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的过程简称为“状态决策过程”。关于“状态决策过程”的详细实现如下:
状态决策过程:
具体地,可控中继节点可以根据其邻居可控中继节点之间的连通性和中继状态,确定其邻居可控中继节点中处于可中继状态的节点之间的连通性;进一步,判断其邻居可控中继节点中处于可中继状态的节点之间的连通性是否符合设定的连通性条件,若符合,则在自身处于可中继状态的情况下,将自身中继状态从可中继状态调整为不可中继状态。仍以上文示例为例,可控中继节点A0可以得到:在其邻居可控中继节点A1-A3中,节点A1和A2处于可中继状态,且节点A1和A2彼此互为邻居,不用节点A0进行中继彼此之间也是可达的,即符合设定的连通性条件,这意味着可控中继节点A0无需处于可中继状态,故可控中继节点A0将自身的中继状态从可中继状态调整为不可中继状态。
进一步可选地,在可控中继节点判断出其邻居可控中继节点中处于可中继状态的节点之间的连通性符合设定的连通性条件的情况下,若该可控中继节点处于不可中继状态,则可以不做调整,继续保持不可中继状态即可。
进一步可选地,在可控中继节点判断出其邻居可控中继节点中处于可中继状态的节点之间的连通性不符合设定的连通性条件的情况下,若该可控中继节点此时处于可中继状态,不做调整,继续保持可中继状态;若该可控中继节点此时处于不可中继状态,将自身的中继状态从不可中继状态调整为可中继状态。
在具体实现上,可控中继节点具有中继功能的开关控制权,可通过关闭中继功能使自身处于不可中继状态,并可通过开启中继功能使自身处于可中继状态。
在本申请实施例中,并不对上述连通性条件进行限定。在一可选实施例中,将连通性条件定义两个处于可中继状态的可控中继节点之间彼此一跳可达。基于此,可控中继节点可以判断其邻居可控中继节点中处于可中继状态的节点之间是否彼此一跳可达;若是,则确定其邻居可控中继节点中处于可中继状态的节点之间的连通性符合设定的连通性条件;反之,确定其邻居可控中继节点中处于可中继状态的节点之间的连通性不符合设定的连通性条件。当然,在其它可选实施例中,也可以将连通性条件定义两个处于可中继状态的可控中继节点之间彼此在两跳、三跳以内可达。
在一可选实施例中,可控中继节点在判断是否调整其中继状态的过程中,除了依据其邻居可控中继节点中处于可中继状态的节点之间的连通性之外,还可以结合其邻居可控中继节点中处于可中继状态的节点数量,只有两个条件都满足要求时,可控中继节点才能调整其中继状态。具体地,如图5a所示,一种调整自身中继状态的实施方式,包括:可控中继节点可以根据其邻居可控中继节点之间的连通性和中继状态,确定其邻居可控中继节点中处于可中继状态的节点之间的连通性以及其邻居可控中继节点中处于可中继状态的节点数量;然后,判断其邻居可控中继节点中处于可中继状态的节点之间的连通性是否符合设定的连通性条件,并判断其邻居可控中继节点中处于可中继状态的节点数量是否大于第二数量阈值;若两个判断操作的结果均为是,则判断自身是否处于可中继状态;若是,即自身处于可中继状态,则将自身中继状态从可中继状态调整为不可中继状态;若否,即自身处于不可中继状态,保持不可中继状态不变。在本实施例中,并不限定第二数量阈值的取值,例如可以是5、8、10或15等,可视具体应用而定。
另外,在本实施例中,并不对两个判断操作的执行顺序进行限定,可以先执行针对连通性的判断操作,也可以先执行针对节点数量的判断操作,还可以并行执行两个判断操作。在图5a中,以先执行针对连通性的判断操作,再执行针对节点数量的判断操作为例进行图示。进一步,如图5a所示,在任一判断操作的判断结果为否的情况下,判断自身是否处于可中继状态;若是,即自身处于可中继状态,则保持可中继状态不变;若否,即自身处于不可中继状态,将自身中继状态从不可中继状态调整为可中继状态。
在本申请上述实施例中,并不限定上述“状态决策过程”的执行时间,并将上述“状态决策过程”的执行时间称为决策开关过程。下面对“决策开关过程”的实现方式进行示例性说明:
决策开关过程:
在可选实施例B1中,可以预先设定一个或多个用于触发可控中继节点执行“状态决策过程”的触发事件,例如可以是但不限于:网络有新节点入网或上电的事件,节点自身重新上电的事件。可控中继节点11a可以监测这些触发事件是否发生,当其中任一触发事件发生时,在该触发事件的触发下,可控中继节点11a会执行上述“状态决策过程”,即会根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态。
在可选实施例B2中,可以设置第一调整周期,第一调整周期的取值可视具体应用而定,例如可以是30秒、60秒、70秒、100秒等。基于此,可控中继节点11a可以根据第一调整周期,周期性地执行状态决策过程。换句话说,可控中继节点11a可根据第一调整周期,周期性地执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作。在执行该操作过程中,若其邻居可控中继节点中处于可中继状态的节点之间的连通性符合连通性条件,和/或,其邻居可控中继节点中处于可中继状态的节点数量大于第二数量阈值,则在可控中继节点11a处于可中继状态的情况下,可将自身的中继状态从可中继状态调整为不可中继状态;而在可控中继节点11a处于不可中继状态的情况下,则保持不可中继状态,不做调整;反之,若其邻居可控中继节点中处于可中继状态的节点之间的连通性不符合连通性条件,和/或,其邻居可控中继节点中处于可中继状态的节点数量小于或等于第二数量阈值,则在可控中继节点11a处于不可中继状态的情况下,可将自身的中继状态从不可中继状态调整为可中继状态;而在可控中继节点11a处于可中继状态的情况下,则保持可中继状态,不做调整。
进一步可选地,为了便于可控中继节点11a以更加合理地方式执行状态决策过程,本申请实施例在周期性地执行状态决策过程的基础上进行了以下至少一种改进,下面结合图5b对所述至少一种改进进行详细说明。
改进B1:如图5b所示,可控中继节点11a周期性地执行状态决策过程的一种实施方式包括:对于第一调整周期首次到达时,延迟随机时间后,执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作。本实施例并不限定随机时间的取值范围,可选地可以是0-60秒中任意时间值。在本实施例中,通过增加随机时间,可避免出现多个可控中继节点同时执行状态决策的情况,也可以避免出现可控中继节点不停在可中继状态和不可中继状态之间来回调整的不稳定状态。
改进B2:如图5b所示,可控中继节点11a周期性地执行状态决策过程的还包括:统计根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的执行次数;判断该执行次数是否小于或等于第二次数阈值;若是,即该执行次数小于或等于第二次数阈值,则根据第二调整周期,周期性地执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作;若否,即该执行次数大于第二次数阈值,则根据第一调整周期,周期性地执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作;其中,第二调整周期小于第一调整周期。在本实施例中,不限定第二次数阈值的具体取值,例如可以是但不限于:3、5、10等。同理,本实施例也不限定第二调整周期的具体取值,只要小于第一调整周期即可,例如第二调整周期可以是第一调整周期的1/2、1/3或3/4等。在本实施例中,可控中继节点在刚开始执行状态决策的阶段,采用较小的调整周期,有利于让新上电或入网的可控中继节点以更快的速度将其中继状态调整到与实际网络拓扑场景适配的状态,方便网络中尽快选举出处于可中继状态的可控中继节点,使网络保持在稳定状态;而在后期执行状态决策的阶段,采用较大的调整周期,既可以避免可控中继节点不停地调整自己的中继状态,又可减少可控中继节点因执行状态决策资源的消耗。
改进B3:在周期性地执行调整自身中继状态的过程中,可控中继节点的中继状态可能会发生变化,也可能会保持不变;为了避免可控中继节点的中继状态频繁发生变化,在一可选实施例中,针对每次中继状态的变化设置一调整保护期,即在中继状态发生变化时,开始对该调整保护期进行计时,在该调整保护期内中继状态需要保持不变。基于此,如图5b所示,可控中继节点11a周期性地执行状态决策过程还包括:在第一或第二调整周期到达时,判断当前时间距离上次自身中继状态发生变化的时间间隔是否大于设定的调整保护期;若是,则执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作;若否,则跳过本次调整自身的中继状态的操作。其中,调整保护期的时间长度大于第一调整周期。在本实施例中,并不限定调整保护期的时间长度,可视应用灵活而定,例如可以是100秒、110秒、120秒等。
在本申请实施例中,可控中继节点除了可以根据邻居可控中继节点之间的连通性和中继状态调整自身的中继状态之外,还可以依据蓝牙网络的网络状态调整自身的中继状态以及与自身中继状态相关的参数,例如第二数据阈值等。其中,网络发生泛洪现象主要是指网络中存在的蓝牙广播数据过多,被大量转发导致网络吞吐量等性能严重下降、甚至瘫痪的现象。泛洪现象是较为常见的网络异常状态,是蓝牙网络需要尽量避免的,故在本申请下述实施例中在可控中继节点的基础上针对泛洪现象提供了相应的解决方案,详细内容可参见下述实施例。
泛洪保护过程:
在本申请实施例中,可控中继节点还可以监测蓝牙网络中是否发生泛洪现象;在监测到蓝牙网络中发生泛洪现象的情况下,则在自身处于可中继状态的情况下,将自身的中继状态从可中继状态调整为不可中继状态。这样网络中大部分可控中继节点都会关闭中继功能,处于不可中继状态,使泛洪现象尽快消除掉,使网络尽快进入稳定状态;后续各可控中继节点可以重新根据其邻居可控中继节点的中继状态以及彼此之间的连通性重新判断是否重新进入可中继状态。
其中,可以根据蓝牙网络中被转发的蓝牙广播数据的数量范围来判断网络中是否发生泛洪现象。在一可选实施例中,可控中继节点可以在本地设置用于缓存已转发蓝牙广播数据的缓存空间;可控中继节点在接收到一个蓝牙广播数据之后,在判断出自身不是该蓝牙广播数据的目的接收端时,需要将该蓝牙广播数据转发出去,在将该蓝牙广播数据转发出去之前,可以判断本地缓存空间中是否已经存在该蓝牙广播数据;若是,说明该蓝牙广播数据已经被转发过,可以将其丢弃,不再转发;若否,说明该蓝牙广播数据尚未被转发过,于是将该蓝牙广播数据保存至本地缓存空间中并将其转发出去。其中,本地缓存空间的存储容量与正常网络状态适配,如果网络中发生泛洪现象,可控中继节点就会接收到大量蓝牙广播数据,这会导致本地缓存空间发生溢出;对于缓存溢出情况,可控中继节点可以做一些处理,例如将缓存空间清空,或者将缓存空间中时间相对较老的数据清除,以便解决缓存溢出情况。但是,在网络发生泛洪现象的情况下,缓存溢出现象可能会频繁发生。基于此,可控中继节点可以监测本地用于缓存已转发蓝牙广播数据的缓存空间发生缓存溢出的频次;在频次符合设定的频次条件的情况下,确定蓝牙网络发生泛洪现象。一种具体判断网络是否发生泛洪现象的实施方式如图6所示,包括:
可控中继节点监测本地缓存空间是否发生了缓存溢出(out of relay buffer);若是,记录本地缓存空间连续发生缓存溢出的次数;判断连续发生缓存溢出的次数是否达到设定的第三次数阈值,如3次;如果达到,判断相邻两次缓存溢出现象发生的时间间隔是否小于设定的间隔阈值,如3秒;若是,则确定蓝牙网络中发生了泛洪现象,设置泛洪标识,并将泛洪次数加1。反之,确定蓝牙网络未发生泛洪现象,不做处理。
进一步可选地,本实施例的可控中继节点11a可以根据网络状态调整第二数量阈值,例如,在网络状态比较稳定、网络中蓝牙广播数据的数量比较合理的情况下,说明第二数量阈值比较合理,网络中处于可中继状态的可控中继节点的数量比较合适,可以保持第二数量阈值不变;反之,在网络状态比较差,网络中蓝牙广播数据的数量较大,例如出现泛洪现象时,说明网络中处于可中继状态的可控中继节点的数量较多,则可以减小第二数量阈值,通过减小第二数量阈值会促使一些处于可中继状态的可控中继节点进入不可中继状态,减少网络中处于可中继状态的可控中继节点的数量,促使网络慢慢进入稳定状态。基于此,可控中继节点还可以在监测到蓝牙网络中发生泛洪现象的情况下,减小第二数量阈值。进一步,为了保证蓝牙网络中可控中继节点之间的连通性,网络中需要一定数量的处于可中继状态的可控中继节点,故可以设定最小数量阈值,第二数量阈值可以减小但不能小于最小数量阈值。
进一步,在本申请一可选实施例中,如图1b所示,该蓝牙网络10还包括:管控节点12,可以是任何具有一定处理能力的设备,例如可以是智能手机、个人计算机、穿戴设备或蓝牙网络中的网关设备等终端设备,也可以是常规服务器、云服务器、服务器阵列等服务器设备。在本实施例中,管控节点12至少用于对蓝牙网络10中的可控中继节点11a进行配置和管理操作。
具体地,管控节点12可以向可控中继节点发送中继参数配置消息,通过该中继参数配置消息向可控中继节点下发与中继功能相关的参数;其中,与中继功能相关的参数包括但不限于:上述第一发送周期、第二发送周期、中继功能开关控制参数、第二数量阈值、信号强度(RSSI)阈值、第一调整周期、第二调整周期、调整保护期、过期时间值等。对可控中继节点11a来说,还可以接收管控节点12下发的中继参数配置消息,从中继参数配置消息中解析出与中继功能相关的参数,并在本地配置由管控节点12下发的与中继功能相关的参数。
进一步可选地,在实际应用中,可控中继节点11a可能会根据实际情况对一些参数进行调整,这意味着与中继功能相关的参数可能会发生变化。基于此,管控节点12还可以根据需求向可控中继节点11a发送中继参数请求消息,该请求消息用于请求可控中继节点11a上报其当前使用的与中继功能相关的参数。相应地,可控中继节点11a还可以接收管控节点12发送的中继参数请求消息;根据该中继参数请求消息向管控节点12返回中继参数响应消息,该中继参数响应消息中包括当前使用的与中继功能相关的参数。
在一可选实施例中,中继参数请求消息可以默认要求可控中继节点11a返回当前使用的与中继功能相关的全部参数。在另一可选实施例中,管控节点12可以在中继参数请求消息中携带参数标识,该参数标识可以是参数的名称、ID、编号等,用于表示与中继功能相关的某个参数;基于此,管控节点12可以根据需求要求可控中继节点11a返回与中继功能相关的部分参数。对可控中继节点11a来说,可以接收管控节点12发送的中继参数请求消息,从该消息中解析出参数标识,根据参数标识将对应的与中继功能相关的部分参数携带在中继参数响应消息中返回给管控节点12。
在本实施例中,并不限定中继参数配置消息的格式,可以是任何能够承载与中继功能相关的参数的消息格式。在本申请一可选实施例中,给出一种中继参数配置消息的格式,该中继参数配置消息至少包括以下表3所示的字段:
表3
在本申请一些实施例中,如图1b所示,蓝牙网络10中的多个蓝牙节点11除了包括可控中继节点11a和非中继节点11b之外,还包括至少一个传统中继节点11c。其中,传统中继节点11c是相对可控中继节点11a而言的,传统中继节点11c的中继状态不可自主调整,即只能处于可中继状态,可转发来自非中继节点11b和/或可控中继节点11a的蓝牙广播数据。在本实施例中,并不限定可控中继节点11a、非中继节点11b以及传统中继节点11c之间的互联关系,可控中继节点11a、非中继节点11b以及传统中继节点11c之间可以形成星型、树型、环型、网状(Mesh)型等各种类型的网络拓扑结构。在一可选实施例中,如图1b所示,可控中继节点11a、非中继节点11b以及传统中继节点11c之间互相通信连接,形成蓝牙Mesh网络拓扑。
在此说明,本申请实施例提供的蓝牙网络可应用于智能家居、智能楼宇、商场等物联网通信场景中,也可以应用于车载场景,或者也可以应用到车载场景与智能家居等相结合的场景中。如图1c所示,以智能家居场景为例,家庭环境中支持蓝牙Mesh协议的智能音箱、电视机、智能手机和笔记本作为可控中继节点11a,家庭环境中其它具备蓝牙广播功能的蓝牙开关、蓝牙壁灯、蓝牙灯、蓝牙报警器、蓝牙插座、蓝牙报警器、蓝牙冰箱等设备作为非中继节点11b,家庭环境中的路由器作为边界路由节点与云端服务器建立通信连接,云端服务器可以作为管控节点12实现。其中,智能家居场景中的蓝牙开关、蓝牙电灯、蓝牙空调或蓝牙冰箱等可以通过发送入网请求并成功完成配网操作之后成为蓝牙网络中的蓝牙节点。其中,用户可以通过语音向蓝牙音箱发出控制指令,该控制指令中同时包含控制对象和控制命令的信息。例如,用户可以对蓝牙音箱发出“请打开蓝牙灯”的语音信号。蓝牙音箱接收到该语音信号后,可解析出控制对象为蓝牙灯,控制命令为开机,则可以以广播方式向电视灯发出控制其开灯的蓝牙信号。电视机是蓝牙音箱的一跳邻居,且处于可中继状态,在接收到蓝牙音箱发出的蓝牙信号之后,将该蓝牙信号广播出去。蓝牙灯是电视机的一跳邻居,可接收到电视机转发的蓝牙信号并根据该蓝牙信号执行开灯操作。
在此说明,本申请实施例提供的可控中继节点的方案不仅适用于蓝牙网络,也可以应用于采用其它通信协议的无线网络中。鉴于此,本申请实施例还提供一种无线网络,该无线网络可以采用红外、UWB、NFC以及WiFi等中任一种通信协议。如图1d所示,该无线网络包括:无线连接的多个网络节点15,这些网络节点15之间可以通过红外、UWB、NFC或WiFi进行无线连接。在本实施例中,多个网络节点15包括至少两个可控中继节点15a和至少一个非中继节点15b。
其中,非中继节点15b是无线网络中不具有转发功能的网络节点,其工作在广播模式下。在广播模式下,非中继节点15b的主要功能是在其信号覆盖范围内接收或发送广播数据。
其中,可控中继节点15a是无线网络中具有转发功能的网络节点,可以转发来自非中继节点15b或其它可控中继节点15a的广播数据,即具有中继功能。
进一步,在本实施例中,可控中继节点15a可自主控制其中继状态,即可自主决定其处于可中继状态还是处于不可中继状态。其中,可控中继节点15a处于可中继状态可以理解为可控中继节点15a开启中继功能,相应地,可控中继节点15a处于不可中继状态可以理解为可控中继节点15a关闭中继功能。具体地,可控中继节点15a可根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态,即决定自身是处于可中继状态还是处于不可中继状态;而且,对于可控中继节点15a而言,只有在处于可中继状态的情况下,才能转发来自非中继节点15b或其它可控中继节点15a的广播数据。若可控中继节点15a处于不可中继状态,则无法转发来自非中继节点15b或其它可控中继节点15a的广播数据。
关于可控中继节点15a的详细工作原理与前述实施例中的可控中继节点11a相同或相似,可参见前述实施例,在此不再赘述。
图7为本申请示例性实施例提供的一种通信方法的流程示意图。该方法适用于上述蓝牙网络中的可控中继节点,如图7所示,该方法包括:
701、可控中继节点获取其邻居可控中继节点之间的连通性和中继状态;
702、根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态;
703、在处于可中继状态的情况下,转发来自蓝牙网络中非中继节点或其它可控中继节点的蓝牙广播数据。在一可选实施例中,可控中继节点获取其邻居可控中继节点之间的连通性和中继状态,包括:接收其邻居可控中继节点发送的中继状态消息,所述中继状态消息包括所述邻居可控中继节点的中继状态以及对应的目标可控中继节点的信息;根据所述邻居可控中继节点对应的目标可控中继节点的信息,获取所述邻居可控中继节点之间的连通性;其中,目标可控中继节点是所述邻居可控中继节点的邻居可控中继节点中处于可中继状态的节点。
在一可选实施例中,该方法还包括:可控中继节点根据其邻居可控中继节点的中继状态,对本地邻居列表进行更新;本地邻居列表用于存储其邻居可控中继节点中处于可中继状态的节点信息以及来自该节点的中继状态消息的接收时间。
进一步可选地,可控中继节点根据其邻居可控中继节点的中继状态,对本地邻居列表进行更新,包括:
对于识别出的处于不可中继状态的邻居可控中继节点,若本地邻居列表中包含该邻居可控中继节点的信息,则将该邻居可控中继节点的信息从本地邻居列表中删除;
对于识别出的处于可中继状态的邻居可控中继节点,若本地邻居列表中包含该邻居可控中继节点的信息,则更新本地邻居列表中该邻居可控中继节点对应的接收时间;
对于识别出的处于可中继状态的邻居可控中继节点,若本地邻居列表中未包含该邻居可控中继节点的信息,则将该邻居可控中继节点的信息和来自该邻居可控中继节点的中继状态消息的接收时间记录到本地邻居列表中。
在一可选实施例中,该方法还包括:可控中继节点根据本地邻居列表中记录的接收时间,检测其邻居可控中继节点的有效性,并将失效的邻居可控中继节点的信息从本地邻居列表中删除。
进一步可选地,根据本地邻居列表中记录的接收时间,检测其邻居可控中继节点的有效性,包括:监测本地邻居列表中的接收时间与当前时间的时间间隔;若所述时间间隔小于过期时间值但大于第一发送周期,则向所述接收时间对应的邻居可控中继节点发送状态请求消息,以供该邻居可控中继节点返回中继状态消息;若所述时间间隔大于过期时间值,则将所述接收时间对应的邻居可控中继节点作为失效的邻居可控中继节点;所述第一发送周期为每个可控中继节点发送中继状态消息的周期。
在一可选实施例中,该方法还包括:可控中继节点向其邻居可控中继节点发送中继状态消息,所述中继状态消息包括所述可控中继节点自身的中继状态及其邻居可控中继节点中处于可中继状态的节点的信息。
进一步可选地,可控中继节点向其邻居可控中继节点发送中继状态消息,包括:在新上电或新入网的情况下,延迟第一时间后,按照设定的第一发送周期,周期性地向其邻居可控中继节点发送中继状态消息。
进一步可选地,上述按照设定的第一发送周期,周期性地向其邻居可控中继节点发送中继状态消息,包括:在第一发送周期首次到达时,延迟随机时间后,向其邻居可控中继节点发送中继状态消息。
进一步可选地,上述按照设定的第一发送周期,周期性地向其邻居可控中继节点发送中继状态消息,还包括:记录向其邻居可控中继节点发送中继状态消息的次数;在所述次数小于或等于第一次数阈值的情况下,按照第二发送周期,周期性地向其邻居可控中继节点发送中继状态消息;在所述次数大于第一次数阈值的情况下,按照第一发送周期,周期性地向其邻居可控中继节点发送中继状态消息;其中,所述第二发送周期是根据所述第一发送周期确定的,且小于所述第一发送周期。
进一步可选地,可控中继节点向其邻居可控中继节点发送中继状态消息,包括:在其邻居可控中继节点中处于可中继状态的节点数量大于第一数量阈值的情况下,向其邻居可控中继节点发送至少两个中继状态消息,每个中继状态消息中包括其邻居可控中继节点中一部分处于可中继状态的节点的信息。
在一可选实施例中,可控中继节点根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态,包括:
可控中继节点根据其邻居可控中继节点之间的连通性和中继状态,确定其邻居可控中继节点中处于可中继状态的节点之间的连通性;
若其邻居可控中继节点中处于可中继状态的节点之间的连通性符合设定的连通性条件,则在自身处于可中继状态的情况下,将自身中继状态从可中继状态调整为不可中继状态。
在一可选实施例中,该方法还包括:若其邻居可控中继节点中处于可中继状态的节点之间的连通性不符合设定的连通性条件,则可控中继节点在自身处于不可中继状态的情况下,将自身中继状态从不可中继状态调整为可中继状态。
在一可选实施例中,该方法还包括:可控中继节点在其邻居可控中继节点中处于可中继状态的节点之间彼此一跳可达的情况下,确定符合设定的连通性条件。
在一可选实施例中,可控中继节点在将自身中继状态从可中继状态调整为不可中继状态之前,还包括:判断其邻居可控中继节点中处于可中继状态的节点数量是否大于第二数量阈值;以及在判断结果为大于的情况下,执行将自身中继状态从可中继状态调整为不可中继状态的操作。
在一可选实施例中,根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态,包括:根据第一调整周期,周期性地执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作。
进一步可选地,根据第一调整周期,周期性地执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作,包括:在第一调整周期首次到达时,延迟随机时间后,执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作。
进一步可选地,根据第一调整周期,周期性地执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作,还包括:
统计根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的执行次数;
在所述执行次数小于或等于第二次数阈值的情况下,根据第二调整周期,周期性地执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作;
在所述执行次数大于第二次数阈值的情况下,根据第一调整周期,周期性地执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作;其中,所述第二调整周期小于所述第一调整周期。
在一可选实施例中,该方法还包括:在第一或第二调整周期到达时,判断当前时间距离上次自身中继状态发生变化的时间间隔是否大于设定的调整保护期;若是,则执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作。
在一可选实施例中,该方法还包括:监测所述蓝牙网络中是否出现泛洪现象;在监测到所述蓝牙网络发生泛洪现象的情况下,减小所述第二数量阈值,减小后的第二数量阈值大于或等于设定的最小数量阈值。
在一可选实施例中,该方法还包括:监测所述蓝牙网络中是否发生泛洪现象;在监测到所述蓝牙网络中发生泛洪现象的情况下,则在自身处于可中继状态的情况下,将自身的中继状态从可中继状态调整为不可中继状态。
进一步可选地,监测所述蓝牙网络中是否发生泛洪现象,包括:监测本地用于缓存已转发蓝牙广播数据的缓存空间发生缓存溢出的频次;若所述频次符合设定的频次条件,确定所述蓝牙网络发生泛洪现象。
在一可选实施例中,该方法还包括:接收管控节点发送的中继参数配置消息,所述中继参数配置消息包括管控节点下发的与中继功能相关的参数;以及在本地配置由管控节点下发的与中继功能相关的参数。
在一可选实施例中,该方法还包括:接收管控节点发送的中继参数请求消息;根据所述中继参数请求消息向管控节点返回中继参数响应消息,所述中继参数响应消息包括:当前使用的与中继功能相关的参数。
本实施例上述各方法步骤的详细实现和描述,可参见前述实施例中的相应内容,在此不再赘述。
在本实施例中,将一些具有转发功能的蓝牙节点设置为中继状态可自主控制的可控中继节点,将不具有转发功能的蓝牙节点视为非中继节点;这些可控中继节点在处于可中继状态的情况下可以转发网络中的蓝牙广播数据,有利于扩大蓝牙通信范围;另外,这些可控中继节点还可根据其邻居可控中继节点之间的连通性和中继状态灵活调整自身的中继状态,决定是关闭或开启中继功能,使得网络中处于可中继状态的中继节点的数量可动态变化且可控,能够与实际的网络拓扑场景适配,不至于过多也不至于过少,既能提高网络的吞吐量,又能保证网络连通性。
需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤701至步骤703的执行主体可以为设备A;又比如,步骤701和702的执行主体可以为设备A,步骤703的执行主体可以为设备B;等等。
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如701、702等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
图8为本申请示例性实施例提供的一种通信装置的结构示意图。该通信装置可应用于蓝牙网络中的可控中继节点中实现,但不限于此。如图8所示,该装置包括:获取模块81、调整模块82和发送模块83。
获取模块81,用于获取通信装置所在可控中继节点的邻居可控中继节点之间的连通性和中继状态;
调整模块82,用于根据获取模块81获取的邻居可控中继节点之间的连通性和中继状态调整通信装置的中继状态;
发送模块83,用于在通信装置处于可中继状态的情况下,转发来自所述蓝牙网络中非中继节点或它可控中继节点的蓝牙广播数据。
在一可选实施例中,获取模块81具体用于:接收通信装置所在可控中继节点的邻居可控中继节点发送的中继状态消息,所述中继状态消息包括所述邻居可控中继节点的中继状态以及对应的目标可控中继节点的信息;根据所述邻居可控中继节点对应的目标可控中继节点的信息,获取所述邻居可控中继节点之间的连通性;中,目标可控中继节点是所述邻居可控中继节点的邻居可控中继节点中处于可中继状态的节点。
在一可选实施例中,如图8所示,该装置还包括:更新模块84,用于根据获取模块81获取的邻居可控中继节点的中继状态,对本地邻居列表进行更新;本地邻居列表用于存储邻居可控中继节点中处于可中继状态的节点信息以及来自该节点的中继状态消息的接收时间。
可选地,更新模块84具体用于:对于识别出的处于不可中继状态的邻居可控中继节点,若本地邻居列表中包含该邻居可控中继节点的信息,则将该邻居可控中继节点的信息从本地邻居列表中删除;
对于识别出的处于可中继状态的邻居可控中继节点,若本地邻居列表中包含该邻居可控中继节点的信息,则更新本地邻居列表中该邻居可控中继节点对应的接收时间;
对于识别出的处于可中继状态的邻居可控中继节点,若本地邻居列表中未包含该邻居可控中继节点的信息,则将该邻居可控中继节点的信息和来自该邻居可控中继节点的中继状态消息的接收时间记录到本地邻居列表中。
进一步可选地,更新模块84还用于:根据本地邻居列表中记录的接收时间,检测邻居可控中继节点的有效性,并将失效的邻居可控中继节点的信息从本地邻居列表中删除。
进一步,更新模块84具体用于:监测本地邻居列表中的接收时间与当前时间的时间间隔;若所述时间间隔小于过期时间值但大于第一发送周期,则向所述接收时间对应的邻居可控中继节点发送状态请求消息,以供该邻居可控中继节点返回中继状态消息;若所述时间间隔大于过期时间值,则将所述接收时间对应的邻居可控中继节点作为失效的邻居可控中继节点;所述第一发送周期为每个可控中继节点发送中继状态消息的周期。
在一可选实施例中,发送模块83还用于:向通信装置所在可控中继节点的邻居可控中继节点发送中继状态消息,所述中继状态消息包括通信装置的中继状态及邻居可控中继节点中处于可中继状态的节点的信息。
进一步可选地,发送模块83具体用于:在通信装置新上电或新入网的情况下,延迟第一时间后,按照设定的第一发送周期,周期性地向邻居可控中继节点发送中继状态消息。
进一步可选地,发送模块83具体用于:在第一发送周期首次到达时,延迟随机时间后,向邻居可控中继节点发送中继状态消息。
进一步可选地,发送模块83具体用于:记录向邻居可控中继节点发送中继状态消息的次数;在所述次数小于或等于第一次数阈值的情况下,按照第二发送周期,周期性地向邻居可控中继节点发送中继状态消息;在所述次数大于第一次数阈值的情况下,按照第一发送周期,周期性地向邻居可控中继节点发送中继状态消息;中,所述第二发送周期是根据所述第一发送周期确定的,且小于所述第一发送周期。
进一步可选地,发送模块83具体用于:在邻居可控中继节点中处于可中继状态的节点数量大于第一数量阈值的情况下,向邻居可控中继节点发送至少两个中继状态消息,每个中继状态消息中包括邻居可控中继节点中一部分处于可中继状态的节点的信息。
在一可选实施例中,调整模块82具体用于:根据邻居可控中继节点之间的连通性和中继状态,确定邻居可控中继节点中处于可中继状态的节点之间的连通性;若邻居可控中继节点中处于可中继状态的节点之间的连通性符合设定的连通性条件,则在通信装置的处于可中继状态的情况下,将通信装置的中继状态从可中继状态调整为不可中继状态。
进一步可选地,调整模块82还用于:若邻居可控中继节点中处于可中继状态的节点之间的连通性不符合设定的连通性条件,则在通信装置的处于不可中继状态的情况下,将通信装置的中继状态从不可中继状态调整为可中继状态。
进一步可选地,调整模块82还用于:在邻居可控中继节点中处于可中继状态的节点之间彼此一跳可达的情况下,确定符合设定的连通性条件。
进一步可选地,调整模块82还用于:在将通信装置的中继状态从可中继状态调整为不可中继状态之前,判断邻居可控中继节点中处于可中继状态的节点数量是否大于第二数量阈值;以及在判断结果为大于的情况下,执行将通信装置的中继状态从可中继状态调整为不可中继状态的操作。
进一步可选地,调整模块82具体用于:根据第一调整周期,周期性地执行根据邻居可控中继节点之间的连通性和中继状态调整通信装置的中继状态的操作。
进一步可选地,调整模块82具体用于:在第一调整周期首次到达时,延迟随机时间后,执行根据邻居可控中继节点之间的连通性和中继状态调整通信装置的中继状态的操作。
进一步可选地,调整模块82具体用于:统计根据邻居可控中继节点之间的连通性和中继状态调整通信装置的中继状态的执行次数;
在所述执行次数小于或等于第二次数阈值的情况下,根据第二调整周期,周期性地执行根据邻居可控中继节点之间的连通性和中继状态调整通信装置的中继状态的操作;
在所述执行次数大于第二次数阈值的情况下,根据第一调整周期,周期性地执行根据邻居可控中继节点之间的连通性和中继状态调整通信装置的中继状态的操作;中,所述第二调整周期小于所述第一调整周期。
进一步可选地,调整模块82还用于:在第一或第二调整周期到达时,判断当前时间距离上次通信装置的中继状态发生变化的时间间隔是否大于设定的调整保护期;若是,则执行根据邻居可控中继节点之间的连通性和中继状态调整通信装置的中继状态的操作。
在一可选实施例中,如图8所示,该装置还包括:监测模块85,用于:监测所述蓝牙网络中是否出现泛洪现象,并在监测到所述蓝牙网络发生泛洪现象的情况下,减小所述第二数量阈值,减小后的第二数量阈值大于或等于设定的最小数量阈值。
在一可选实施例中,调整模块82还用于在监测模块85监测到所述蓝牙网络中发生泛洪现象的情况下,则在通信装置的处于可中继状态的情况下,将通信装置的中继状态从可中继状态调整为不可中继状态。
可选地,监测模块85具体用于:监测本地用于缓存已转发蓝牙广播数据的缓存空间发生缓存溢出的频次;若所述频次符合设定的频次条件,确定所述蓝牙网络发生泛洪现象。
在一可选实施例中,获取模块81还用于:接收管控节点发送的中继参数配置消息,所述中继参数配置消息包括管控节点下发的与中继功能相关的参数;以及在本地配置由管控节点下发的与中继功能相关的参数。
在一可选实施例中,获取模块81还用于:接收管控节点发送的中继参数请求消息。相应地,发送模块83还用于:根据所述中继参数请求消息向管控节点返回中继参数响应消息,所述中继参数响应消息包括:当前使用的与中继功能相关的参数。
以上描述了通信装置的内部功能和结构,如图9所示,实际中,该通信装置可实现为节点设备,该节点设备可作为蓝牙网络中的可控中继节点实现,包括:存储器91、处理器92以及通信组件93。
存储器91,用于存储计算机程序,并可被配置为存储其它各种数据以支持在节点设备上的操作。这些数据的示例包括用于在节点设备上操作的任何应用程序或方法的指令,消息,图片,视频等。
存储器91可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器92,与存储器91耦合,用于执行存储器91中的计算机程序,以用于:获取节点设备的邻居可控中继节点之间的连通性和中继状态;根据邻居可控中继节点之间的连通性和中继状态调整节点设备的中继状态;在处于可中继状态的情况下,通过通信组件93转发来自所述蓝牙网络中非中继节点或它可控中继节点的蓝牙广播数据。
在一可选实施例中,处理器92在获取邻居可控中继节点之间的连通性和中继状态时,具体用于:接收邻居可控中继节点发送的中继状态消息,所述中继状态消息包括所述邻居可控中继节点的中继状态以及对应的目标可控中继节点的信息;根据所述邻居可控中继节点对应的目标可控中继节点的信息,获取所述邻居可控中继节点之间的连通性;中,目标可控中继节点是所述邻居可控中继节点的邻居可控中继节点中处于可中继状态的节点。
在一可选实施例中,处理器92还用于:根据邻居可控中继节点的中继状态,对本地邻居列表进行更新;本地邻居列表用于存储邻居可控中继节点中处于可中继状态的节点信息以及来自该节点的中继状态消息的接收时间。
在一可选实施例中,处理器92在根据邻居可控中继节点的中继状态,对本地邻居列表进行更新时,具体用于:
对于识别出的处于不可中继状态的邻居可控中继节点,若本地邻居列表中包含该邻居可控中继节点的信息,则将该邻居可控中继节点的信息从本地邻居列表中删除;
对于识别出的处于可中继状态的邻居可控中继节点,若本地邻居列表中包含该邻居可控中继节点的信息,则更新本地邻居列表中该邻居可控中继节点对应的接收时间;
对于识别出的处于可中继状态的邻居可控中继节点,若本地邻居列表中未包含该邻居可控中继节点的信息,则将该邻居可控中继节点的信息和来自该邻居可控中继节点的中继状态消息的接收时间记录到本地邻居列表中。
在一可选实施例中,处理器92还用于:根据本地邻居列表中记录的接收时间,检测邻居可控中继节点的有效性,并将失效的邻居可控中继节点的信息从本地邻居列表中删除。
在一可选实施例中,处理器92在根据本地邻居列表中记录的接收时间,检测邻居可控中继节点的有效性时,具体用于:监测本地邻居列表中的接收时间与当前时间的时间间隔;若所述时间间隔小于过期时间值但大于第一发送周期,则向所述接收时间对应的邻居可控中继节点发送状态请求消息,以供该邻居可控中继节点返回中继状态消息;若所述时间间隔大于过期时间值,则将所述接收时间对应的邻居可控中继节点作为失效的邻居可控中继节点;所述第一发送周期为每个可控中继节点发送中继状态消息的周期。
在一可选实施例中,处理器92还用于:向邻居可控中继节点发送中继状态消息,所述中继状态消息包括所述节点设备的中继状态及邻居可控中继节点中处于可中继状态的节点的信息。
可选地,处理器92在向邻居可控中继节点发送中继状态消息时,具体用于:在新上电或新入网的情况下,延迟第一时间后,按照设定的第一发送周期,周期性地向邻居可控中继节点发送中继状态消息。
可选地,处理器92按照设定的第一发送周期,周期性地向邻居可控中继节点发送中继状态消息时,具体用于:在第一发送周期首次到达时,延迟随机时间后,向邻居可控中继节点发送中继状态消息。
可选地,处理器92在按照设定的第一发送周期,周期性地向邻居可控中继节点发送中继状态消息时,还用于:记录向邻居可控中继节点发送中继状态消息的次数;在所述次数小于或等于第一次数阈值的情况下,按照第二发送周期,周期性地向邻居可控中继节点发送中继状态消息;在所述次数大于第一次数阈值的情况下,按照第一发送周期,周期性地向邻居可控中继节点发送中继状态消息;中,所述第二发送周期是根据所述第一发送周期确定的,且小于所述第一发送周期。
可选地,处理器92在向邻居可控中继节点发送中继状态消息时,具体用于:在邻居可控中继节点中处于可中继状态的节点数量大于第一数量阈值的情况下,向邻居可控中继节点发送至少两个中继状态消息,每个中继状态消息中包括邻居可控中继节点中一部分处于可中继状态的节点的信息。
在一可选实施例中,处理器92在调整节点设备的中继状态时,具体用于:根据邻居可控中继节点之间的连通性和中继状态,确定邻居可控中继节点中处于可中继状态的节点之间的连通性;若邻居可控中继节点中处于可中继状态的节点之间的连通性符合设定的连通性条件,则在节点设备处于可中继状态的情况下,将节点设备的中继状态从可中继状态调整为不可中继状态。
在一可选实施例中,处理器92还用于:若邻居可控中继节点中处于可中继状态的节点之间的连通性不符合设定的连通性条件,则在节点设备处于不可中继状态的情况下,将节点设备的中继状态从不可中继状态调整为可中继状态。
在一可选实施例中,处理器92还用于:在邻居可控中继节点中处于可中继状态的节点之间彼此一跳可达的情况下,确定符合设定的连通性条件。
在一可选实施例中,处理器92在将节点设备的中继状态从可中继状态调整为不可中继状态之前,还用于:判断邻居可控中继节点中处于可中继状态的节点数量是否大于第二数量阈值;以及在判断结果为大于的情况下,执行将节点设备的中继状态从可中继状态调整为不可中继状态的操作。
在一可选实施例中,处理器92在调整节点设备的中继状态时,具体用于:根据第一调整周期,周期性地执行根据邻居可控中继节点之间的连通性和中继状态调整节点设备的中继状态的操作。
在一可选实施例中,处理器92在调整节点设备的中继状态的操作时,具体用于:在第一调整周期首次到达时,延迟随机时间后,执行根据邻居可控中继节点之间的连通性和中继状态调整节点设备的中继状态的操作。
在一可选实施例中,处理器92在调整节点设备的中继状态时,具体用于:统计调整节点设备的中继状态的执行次数;在所述执行次数小于或等于第二次数阈值的情况下,根据第二调整周期,周期性地执行根据邻居可控中继节点之间的连通性和中继状态调整节点设备的中继状态的操作;在所述执行次数大于第二次数阈值的情况下,根据第一调整周期,周期性地执行根据邻居可控中继节点之间的连通性和中继状态调整节点设备的中继状态的操作;中,所述第二调整周期小于所述第一调整周期。
在一可选实施例中,处理器92还用于:在第一或第二调整周期到达时,判断当前时间距离上次节点设备的中继状态发生变化的时间间隔是否大于设定的调整保护期;若是,则执行根据邻居可控中继节点之间的连通性和中继状态调整节点设备的中继状态的操作。
在一可选实施例中,处理器92还用于:监测所述蓝牙网络中是否出现泛洪现象;在监测到所述蓝牙网络发生泛洪现象的情况下,减小所述第二数量阈值,减小后的第二数量阈值大于或等于设定的最小数量阈值。
在一可选实施例中,处理器92还用于:监测所述蓝牙网络中是否发生泛洪现象;在监测到所述蓝牙网络中发生泛洪现象的情况下,则在节点设备处于可中继状态的情况下,将节点设备的中继状态从可中继状态调整为不可中继状态。
在一可选实施例中,处理器92在监测所述蓝牙网络中是否发生泛洪现象时,具体用于:监测本地用于缓存已转发蓝牙广播数据的缓存空间发生缓存溢出的频次;若所述频次符合设定的频次条件,确定所述蓝牙网络发生泛洪现象。
在一可选实施例中,处理器92还用于:接收管控节点发送的中继参数配置消息,所述中继参数配置消息包括管控节点下发的与中继功能相关的参数;以及在本地配置由管控节点下发的与中继功能相关的参数。
在一可选实施例中,处理器92还用于:接收管控节点发送的中继参数请求消息;根据所述中继参数请求消息向管控节点返回中继参数响应消息,所述中继参数响应消息包括:当前使用的与中继功能相关的参数。
进一步,如图9所示,该节点设备还包括:显示器94、电源组件95、音频组件96等它组件。图9中仅示意性给出部分组件,并不意味着节点设备只包括图9所示组件。另外,图9中虚线框内的组件为可选组件,而非必选组件,具体可视节点设备的产品形态而定。本实施例的节点设备可以实现为台式电脑、笔记本电脑、智能手机或IOT设备等终端设备,也可以是常规服务器、云服务器或服务器阵列等服务端设备。若本实施例的节点设备实现为台式电脑、笔记本电脑、智能手机等终端设备,可以包含图9中虚线框内的组件;若本实施例的节点设备实现为常规服务器、云服务器或服务器阵列等服务端设备,则可以不包含图9中虚线框内的组件。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被处理器执行时,致使处理器能够实现上述图7所示方法实施例中的各步骤。
相应地,本申请实施例还提供一种计算机程序产品,包括计算机程序/指令,当计算机程序/指令被处理器执行时,致使处理器能够实现上述图7所示方法实施例中的各步骤。
上述实施例中的通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G/LTE、5G等移动通信网络,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
上述实施例中的显示器包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
上述实施例中的电源组件,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
上述实施例中的音频组件,可被配置为输出和/或输入音频信号。例如,音频组件包括一个麦克风(MIC),当音频组件所在设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器或经由通信组件发送。在一些实施例中,音频组件还包括一个扬声器,用于输出音频信号。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (20)
1.一种蓝牙网络,其特征在于,包括:无线连接的多个蓝牙节点,所述多个蓝牙节点包括至少两个可控中继节点和至少一个非中继节点;
其中,所述至少两个可控中继节点,用于根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态,并在处于可中继状态的情况下,转发来自所述至少一个非中继节点或其它可控中继节点的蓝牙广播数据。
2.根据权利要求1所述的蓝牙网络,其特征在于,所述至少两个可控中继节点还用于:
向其邻居可控中继节点发送中继状态消息,所述中继状态消息包括节点自身的中继状态及其邻居可控中继节点中处于可中继状态的节点的信息。
3.根据权利要求1所述的蓝牙网络,其特征在于,所述至少两个可控中继节点还用于:
接收其邻居可控中继节点发送的中继状态消息,所述中继状态消息包括所述邻居可控中继节点的中继状态以及对应的目标可控中继节点的信息;
根据所述邻居可控中继节点对应的目标可控中继节点的信息,获取所述邻居可控中继节点之间的连通性;
其中,目标可控中继节点是所述邻居可控中继节点的邻居可控中继节点中处于可中继状态的节点。
4.根据权利要求1所述的蓝牙网络,其特征在于,每个可控中继节点在调整自身的中继状态时,具体用于:
根据其邻居可控中继节点之间的连通性和中继状态,确定其邻居可控中继节点中处于可中继状态的节点之间的连通性;
若其邻居可控中继节点中处于可中继状态的节点之间的连通性符合设定的连通性条件,则在自身处于可中继状态的情况下,将自身中继状态从可中继状态调整为不可中继状态。
5.根据权利要求4所述的蓝牙网络,其特征在于,所述至少两个可控中继节点还用于:
若其邻居可控中继节点中处于可中继状态的节点之间的连通性不符合设定的连通性条件,则在自身处于不可中继状态的情况下,将自身中继状态从不可中继状态调整为可中继状态。
6.根据权利要求4所述的蓝牙网络,其特征在于,所述至少两个可控中继节点还用于:
在将自身中继状态从可中继状态调整为不可中继状态之前,判断其邻居可控中继节点中处于可中继状态的节点数量是否大于第二数量阈值;以及
在判断结果为大于的情况下,执行将自身中继状态从可中继状态调整为不可中继状态的操作。
7.一种通信方法,其特征在于,适用于蓝牙网络中任一可控中继节点,所述方法包括:
所述可控中继节点获取其邻居可控中继节点之间的连通性和中继状态;
根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态;
在处于可中继状态的情况下,转发来自所述蓝牙网络中非中继节点或其它可控中继节点的蓝牙广播数据。
8.根据权利要求7所述的方法,其特征在于,所述可控中继节点获取其邻居可控中继节点之间的连通性和中继状态,包括:
接收其邻居可控中继节点发送的中继状态消息,所述中继状态消息包括所述邻居可控中继节点的中继状态以及对应的目标可控中继节点的信息;
根据所述邻居可控中继节点对应的目标可控中继节点的信息,获取所述邻居可控中继节点之间的连通性;
其中,目标可控中继节点是所述邻居可控中继节点的邻居可控中继节点中处于可中继状态的节点。
9.根据权利要求8所述的方法,其特征在于,还包括:
所述可控中继节点根据其邻居可控中继节点的中继状态,对本地邻居列表进行更新;本地邻居列表用于存储其邻居可控中继节点中处于可中继状态的节点信息以及来自该节点的中继状态消息的接收时间。
10.根据权利要求9所述的方法,其特征在于,还包括:
根据本地邻居列表中记录的接收时间,检测其邻居可控中继节点的有效性,并将失效的邻居可控中继节点的信息从本地邻居列表中删除。
11.根据权利要求7所述的方法,其特征在于,还包括:
所述可控中继节点向其邻居可控中继节点发送中继状态消息,所述中继状态消息包括所述可控中继节点自身的中继状态及其邻居可控中继节点中处于可中继状态的节点的信息。
12.根据权利要求7所述的方法,其特征在于,根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态,包括:
根据其邻居可控中继节点之间的连通性和中继状态,确定其邻居可控中继节点中处于可中继状态的节点之间的连通性;
若其邻居可控中继节点中处于可中继状态的节点之间的连通性符合设定的连通性条件,则在自身处于可中继状态的情况下,将自身中继状态从可中继状态调整为不可中继状态。
13.根据权利要求12所述的方法,其特征在于,还包括:
若其邻居可控中继节点中处于可中继状态的节点之间的连通性不符合设定的连通性条件,则在自身处于不可中继状态的情况下,将自身中继状态从不可中继状态调整为可中继状态。
14.根据权利要求12所述的方法,其特征在于,在将自身中继状态从可中继状态调整为不可中继状态之前,还包括:
判断其邻居可控中继节点中处于可中继状态的节点数量是否大于第二数量阈值;以及
在判断结果为大于的情况下,执行将自身中继状态从可中继状态调整为不可中继状态的操作。
15.根据权利要求7-14任一项所述的方法,其特征在于,根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态,包括:
根据第一调整周期,周期性地执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作;
和/或
在第一调整周期首次到达时,延迟随机时间后,执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作;
和/或
统计调整自身的中继状态的执行次数;在所述执行次数小于或等于第二次数阈值的情况下,根据第二调整周期,周期性地执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作;在所述执行次数大于第二次数阈值的情况下,根据第一调整周期,周期性地执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作;其中,所述第二调整周期小于所述第一调整周期;
和/或
在第一或第二调整周期到达时,判断当前时间距离上次自身中继状态发生变化的时间间隔是否大于设定的调整保护期;若是,则执行根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态的操作。
16.根据权利要求14所述的方法,其特征在于,还包括:
监测所述蓝牙网络中是否出现泛洪现象;
在监测到所述蓝牙网络发生泛洪现象的情况下,减小所述第二数量阈值,减小后的第二数量阈值大于或等于设定的最小数量阈值。
17.根据权利要求7-14中任一项所述的方法,其特征在于,还包括:
监测所述蓝牙网络中是否发生泛洪现象;
在监测到所述蓝牙网络中发生泛洪现象的情况下,则在自身处于可中继状态的情况下,将自身的中继状态从可中继状态调整为不可中继状态。
18.一种节点设备,其特征在于,可作为蓝牙网络中的可控中继节点实现,所述节点设备包括:存储器、处理器和通信组件;
所述存储器,用于存储计算机程序;
所述处理器,与所述存储器耦合,用于执行所述计算机程序,以用于:
获取其邻居可控中继节点之间的连通性和中继状态;
根据其邻居可控中继节点之间的连通性和中继状态调整自身的中继状态;
在处于可中继状态的情况下,转发来自所述蓝牙网络中非中继节点或其它可控中继节点的蓝牙广播数据。
19.一种存储有计算机程序/指令的计算机可读存储介质,其特征在于,当所述计算机程序被处理器执行时,致使所述处理器实现权利要求7-17中任一项所述方法中的步骤。
20.一种计算机程序产品,包括计算机程序/指令,其特征在于,当所述计算机程序/指令被处理器执行时,致使所述处理器实现权利要求7-17中任一项所述方法中的步骤。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110272327.4A CN115086923A (zh) | 2021-03-12 | 2021-03-12 | 蓝牙网络及其通信方法、设备和存储介质 |
US17/690,798 US20220295240A1 (en) | 2021-03-12 | 2022-03-09 | System and method for implementing relay nodes in a wireless network |
PCT/CN2022/080399 WO2022188869A1 (en) | 2021-03-12 | 2022-03-11 | System and method for implementing relay nodes in a wireless network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110272327.4A CN115086923A (zh) | 2021-03-12 | 2021-03-12 | 蓝牙网络及其通信方法、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115086923A true CN115086923A (zh) | 2022-09-20 |
Family
ID=83194183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110272327.4A Pending CN115086923A (zh) | 2021-03-12 | 2021-03-12 | 蓝牙网络及其通信方法、设备和存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220295240A1 (zh) |
CN (1) | CN115086923A (zh) |
WO (1) | WO2022188869A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115529647A (zh) * | 2022-09-28 | 2022-12-27 | 南通大学 | 一种基于路径质量的负载均衡路由选择算法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6385205B2 (ja) * | 2014-09-01 | 2018-09-05 | キヤノン株式会社 | 通信装置、通信装置の制御方法およびプログラム |
US11617225B2 (en) * | 2017-12-21 | 2023-03-28 | Koninklijke Kpn N.V. | Determining when to relay a data unit in a cellular communication network |
US10993168B2 (en) * | 2018-09-18 | 2021-04-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods of and device for autonomous configuration of a relay node device in mesh network |
CN112055343B (zh) * | 2020-08-21 | 2023-12-12 | 北京小米移动软件有限公司 | 蓝牙Mesh网络泛洪方法、装置及存储介质 |
-
2021
- 2021-03-12 CN CN202110272327.4A patent/CN115086923A/zh active Pending
-
2022
- 2022-03-09 US US17/690,798 patent/US20220295240A1/en active Pending
- 2022-03-11 WO PCT/CN2022/080399 patent/WO2022188869A1/en active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115529647A (zh) * | 2022-09-28 | 2022-12-27 | 南通大学 | 一种基于路径质量的负载均衡路由选择算法 |
Also Published As
Publication number | Publication date |
---|---|
WO2022188869A1 (en) | 2022-09-15 |
US20220295240A1 (en) | 2022-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11765568B2 (en) | Determining remote unit behavior parameters | |
JP6193394B2 (ja) | アドホックネットワークに関する選択的走査のシステムおよび方法 | |
RU2639688C2 (ru) | Способ управления таблицей посредников в беспроводной сети, использующей устройства-посредники | |
CN107852362B (zh) | 网格网络系统和方法 | |
US9723581B2 (en) | Systems and methods for establishing synchronization across multiple networks and participating STAs via operations on a known common channel | |
JP6363117B2 (ja) | 近隣認識ネットワーク内で発見することおよび同期することのためのシステムおよび方法 | |
KR102304699B1 (ko) | 통신 네트워크들 내의 에러 검출 | |
US9167515B2 (en) | Operation method in heterogeneous networks and gateway and wireless communication device using the same | |
CN112055343B (zh) | 蓝牙Mesh网络泛洪方法、装置及存储介质 | |
US20160352842A1 (en) | Proxy advertisements in a neighbor aware network | |
US10070388B2 (en) | Coordinated duty cycle assignment in mesh networks | |
US20100284330A1 (en) | Radio Telecommunications Network Node and Method of Adjusting Routing Table Up-date Interval | |
US20140341105A1 (en) | Method and apparatus for managing multi-hop relay networks | |
US20160352782A1 (en) | Proxy advertisements in a neighbor aware network | |
US20170055199A1 (en) | Enhanced power reduction in mesh networks | |
WO2024001190A1 (zh) | 消息发送方法、设备智能互联系统、相关设备及存储介质 | |
CN115086923A (zh) | 蓝牙网络及其通信方法、设备和存储介质 | |
US10871814B1 (en) | Reducing transitions between idle and active states | |
WO2022205314A1 (zh) | 寻呼原因处理方法及装置、通信设备及存储介质 | |
US11044771B2 (en) | Method and device for sharing an established connection between a primary device and one of a plurality of secondary devices in a network | |
CN112740729A (zh) | 用于自主配置网格网络中的中继节点装置的装置和方法 | |
CN102595552B (zh) | 基于自适应动态机制的无线分组网按需路由维护方法 | |
CN107852677B (zh) | 网格网络中的增强型功率降低 | |
KR20180131965A (ko) | 클러스터 간의 데이터 송수신 방법 및 장치 | |
JP6676202B2 (ja) | アンカーマスターam管理方法およびノード |
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: 20240312 Address after: # 03-06, Lai Zan Da Building 1, 51 Belarusian Road, Singapore Applicant after: Alibaba Innovation Co. Country or region after: Singapore Address before: Room 01, 45th Floor, AXA Building, 8 Shanton Road, Singapore Applicant before: Alibaba Singapore Holdings Ltd. Country or region before: Singapore |
|
TA01 | Transfer of patent application right |