CN112584364A - 蓝牙网络及其通信方法、设备和存储介质 - Google Patents

蓝牙网络及其通信方法、设备和存储介质 Download PDF

Info

Publication number
CN112584364A
CN112584364A CN201910943308.2A CN201910943308A CN112584364A CN 112584364 A CN112584364 A CN 112584364A CN 201910943308 A CN201910943308 A CN 201910943308A CN 112584364 A CN112584364 A CN 112584364A
Authority
CN
China
Prior art keywords
node
network
bluetooth
nodes
slave
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
Application number
CN201910943308.2A
Other languages
English (en)
Other versions
CN112584364B (zh
Inventor
安勍
刘大鹏
于小博
王昊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201910943308.2A priority Critical patent/CN112584364B/zh
Priority to US17/012,895 priority patent/US11576110B2/en
Priority to EP20872199.3A priority patent/EP4038896A4/en
Priority to PCT/US2020/049595 priority patent/WO2021067002A1/en
Publication of CN112584364A publication Critical patent/CN112584364A/zh
Application granted granted Critical
Publication of CN112584364B publication Critical patent/CN112584364B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/16Discovering, processing access restriction or access information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/08User group management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • H04W84/20Master-slave selection or change arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请实施例提供一种蓝牙网络及其通信方法、设备和存储介质。在本申请实施例中,将具有转发功能的蓝牙节点作为非叶子节点,将工作在蓝牙广播模式下的蓝牙节点作为叶子节点,形成一种新的蓝牙网络,其中,每个叶子节点至少连接于一个非叶子节点,借助于非叶子节点的转发功能,叶子节点可以与不在其信号覆盖范围内的其它叶子节点或非叶子节点进行通信,可扩大蓝牙通信范围,而叶子节点只要支持蓝牙广播模式即可,对叶子节点的硬件能力要求较低,不再受蓝牙节点的硬件能力的限制。

Description

蓝牙网络及其通信方法、设备和存储介质
技术领域
本申请涉及无线通信技术领域,尤其涉及一种蓝牙网络及其通信方法、设备和存储介质。
背景技术
为了突破蓝牙设备在通信范围上的限制,蓝牙技术联盟发布了蓝牙Mesh(网状)协议,它是建立在蓝牙低功耗(Bluetooth Low Energy,BLE)标准上的蓝牙协议(Profile)。蓝牙Mesh协议可以实现网状的网络拓扑,支持多跳连接,可扩大蓝牙网络的覆盖范围。
但是,蓝牙Mesh协议对于蓝牙设备的硬件能力有一定要求,需要有足够的CPU计算能力、ROM存储能力,才能运行蓝牙Mesh协议。对于那些资源受限的蓝牙设备,比如无线按钮、温湿度传感器等,则无法很好支持地支持蓝牙Mesh协议。
发明内容
本申请的多个方面提供一种蓝牙网络及其通信方法、设备和存储介质,用以提供一种新的蓝牙组网方案,可扩大蓝牙通信范围,并且对蓝牙设备的能力要求较低。
本申请实施例提供一种蓝牙网络,包括:多个蓝牙节点,所述多个蓝牙节点包括至少一个非叶子节点和至少一个叶子节点;每个叶子节点至少连接于一个非叶子节点,用于接收其所连接的非叶子节点收发的蓝牙广播数据,或通过其所连接的非叶子节点向外转发蓝牙广播数据;所述至少一个非叶子节点之间通信连接,用于接收并广播转发来自所述至少一个叶子节点的蓝牙广播数据。
本申请实施例还提供一种蓝牙网络的通信方法,包括:蓝牙网络中的非叶子节点接收来自蓝牙网络数据中的叶子节点的蓝牙广播数据,判断所述蓝牙广播数据是否是发给自己的;若不是发给自己的蓝牙广播数据,则广播转发所述蓝牙广播数据,反之,则接收并对该蓝牙广播数据进行后续处理。
本申请实施例还提供一种蓝牙网络的通信方法,包括:蓝牙网络中的从节点接收所述蓝牙网络中的其他节点发送的寻找主节点的请求,判断自身硬件能力是否满足成为主节点的要求;在自身硬件能力满足成为主节点的要求的情况下,作为候选从节点对外发送申请成为主节点的请求,反之,则丢弃寻找主节点的请求。
本申请实施例还提供一种网络节点,包括:存储器、处理器以及通信组件。处理器通过通信组件接收数据,并与存储计算机程序的存储器耦合,执行所述计算机程序,以处理接收到的数据。
在本申请实施例中,将具有转发功能的蓝牙节点作为非叶子节点,将工作在蓝牙广播模式下的蓝牙节点作为叶子节点,形成一种新的蓝牙网络,其中,每个叶子节点至少连接于一个非叶子节点,借助于非叶子节点的转发功能,叶子节点可以与不在其信号覆盖范围内的其它叶子节点或非叶子节点进行通信,可扩大蓝牙通信范围,而叶子节点只要支持蓝牙广播模式即可,对叶子节点的硬件能力要求较低,不再受蓝牙节点的硬件能力的限制。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请示例性实施例提供的一种蓝牙网络的结构示意图;
图2为本申请示例性实施例提供的另一种蓝牙网络的结构示意图;
图3a为本申请示例性实施例提供的一种配网操作的流程示意图;
图3b为本申请示例性实施例提供的智能家居场景中的蓝牙网络示意图;
图4a为本申请示例性实施例提供的一种蓝牙网络的通信方法的流程示意图;
图4b为本申请示例性实施例提供的一种蓝牙网络中从从节点中选择主节点的方法流程示意图;
图4c为本申请示例性实施例提供的一种蓝牙网络中对请求入网的未配网节点进行配网操作的流程示意图;
图5为本申请示例性实施例提供的另一种蓝牙网络中从从节点中选择主节点的方法流程示意图;
图6为本申请示例性实施例提供的一种节点设备的结构示意图;
图7为本申请示例性实施例提供的另一种节点设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
针对现有一些蓝牙设备因硬件能力受限无法很好地支持蓝牙Mesh协议,无法接入蓝牙Mesh网络的技术问题,在本申请一些实施例中,将具有转发功能的蓝牙节点作为非叶子节点,将工作在蓝牙广播模式下的蓝牙节点作为叶子节点,形成一种新的蓝牙网络,其中,每个叶子节点至少连接于一个非叶子节点,借助于非叶子节点的转发功能,叶子节点可以与不在其信号覆盖范围内的其它叶子节点或非叶子节点进行通信,可扩大蓝牙通信范围,而叶子节点只要支持蓝牙广播模式即可,对叶子节点的硬件能力要求较低,不再受蓝牙节点的硬件能力的限制。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1为本申请示例性实施例提供的一种蓝牙网络的结构示意图。如图1所示,该蓝牙网络10包括:多个蓝牙节点11,蓝牙节点11是指支持蓝牙通信协议的蓝牙设备,例如可以是但不限于:蓝牙手机、蓝牙耳机、蓝牙音箱、蓝牙开关、蓝牙电视、蓝牙灯或蓝牙手环等等。蓝牙通信协议有多个版本,例如蓝牙1.0版本、蓝牙2.0版本、蓝牙3.0版本以及蓝牙4.0版本等。在本实施例中,并不限定蓝牙节点11所支持的蓝牙通信协议的版本,多个蓝牙节点11可以支持同一版本的蓝牙通信协议,也可以支持不同版本的蓝牙通信协议。
在蓝牙网络10中,多个蓝牙节点11包括至少一个非叶子节点11a和至少一个叶子节点11b。至少一个非叶子节点11a之间可以通信连接,非叶子节点11a之间的通信连接可以是直接通信连接,也可以是间接通信连接。每个叶子节点11b至少连接于一个非叶子节点11a,换句话说,每个叶子节点11b至少位于一个非叶子节点11a的信号覆盖范围内,且可以与这些非叶子节点11a直接通信连接。这里的通信连接主要是指蓝牙连接。在图1中,以每个叶子节点11b连接于一个非叶子节点11a为例进行图示。
其中,至少一个非叶子节点11a具有转发功能,可转发来自其它节点的蓝牙广播数据。对每个非叶子节点11a来说,可以与多个其它节点(这里的其它节点可以包括叶子节点,也可以包括非叶子节点)进行通信连接,从而让多个其它节点之间实现互联。非叶子节点11a所支持的蓝牙通信协议需要支持网络互联和转发功能,例如可以是蓝牙4.0及以上等较高版本的蓝牙通信协议。可选地,非叶子节点11a可以是一些计算能力较强的蓝牙设备,例如蓝牙手机、蓝牙电视或蓝牙音箱等。
其中,叶子节点11b是处于蓝牙网络10末端的节点,其工作在蓝牙广播模式下。在蓝牙广播模式下,叶子节点11b的主要功能是在其信号覆盖范围内接收或发送蓝牙广播数据。目前,各种版本的蓝牙通信协议基本上都支持蓝牙广播模式,这就是说,支持任何版本的蓝牙通信协议的蓝牙设备都可以作为本实施例中的叶子节点11b。由此可见,对于那些由于硬件能力受限而无法或无法很好地支持较高版本的蓝牙通信协议的蓝牙设备,可以采用本实施例的组网方式,作为本实施例中的叶子节点借助于非叶子节点的转发功能来扩展其通信范围。当然,对于硬件能力较强的一些蓝牙设备,也可以作为本实施例中的叶子节点实现。
在本实施例中,非叶子节点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可以转发来自叶子节点11b的或来自其它非叶子节点11a的蓝牙广播数据。本申请实施例并不限定非叶子节点11a向外转发蓝牙广播数据的转发方式。在一些可选实施例中,非叶子节点11a可以以广播方式向外转发蓝牙广播数据,该转发方式简称为广播转发方式。
在一些示例性实施例中,为了防止无限广播泛洪,可以预先在非叶子节点11a中设定阈值,即允许的最大转发次数。这样,非叶子节点11a在接收到蓝牙广播数据时,可以判断该蓝牙广播数据的目的地址是不是自己的地址;如果接收到的蓝牙广播数据的目的地址不是自己的地址,表示该蓝牙广播数据不是发给自己,需要广播转发该蓝牙广播数据。在接收到不是发给自己的蓝牙广播数据的情况下,检查接收到的蓝牙广播数据的TTL值,判断该TTL值是否达到设定阈值,在该TTL值未达到设定阈值的情况下,将TTL值增加设定步长后广播转发该蓝牙广播数据;在TTL值达到设定阈值的情况下,则丢弃不转发该所述蓝牙广播数据。在本实施例中,并不限定预设阈值和设定步长的取值,可根据应用需求灵活设定。可选地,设定步长可以是1,即每次转发都将TTL值加1。
在一些示例性实施例中,非叶子节点11a可以把之前已经转发过的蓝牙广播数据保存下来,例如可以缓存在本地。对非叶子节点11a来说,在接收到不是发给自己的蓝牙广播数据的情况下,可以将接收到的蓝牙广播数据与保存的之前已转发过的蓝牙广播数据进行比较;在接收到的蓝牙广播数据不属于之前已转发过的蓝牙广播数据的情况下,广播转发该蓝牙广播数据,并保存该蓝牙广播数据;在接收到的蓝牙广播数据属于之前已转发过的蓝牙广播数据的情况下,则丢弃该蓝牙广播数据,不再广播转发。这可以减少网络中重复传输同样数据造成的资源浪费,有利于节约网络资源。其中,非叶子节点11a保存蓝牙广播数据的方式并不限于缓存在本地这一种方式,例如也可以保存在本地内存或硬盘中,或者存储至数据库中,等等。其中,将已转发过的蓝牙广播数据缓存在本地,可节省从内存、硬盘或数据库中读取蓝牙广播数据的时间,有利于提高比较操作的效率,进而提高转发效率。
需要说明的是,对任一非叶子节点11a来说,上述结合TTL值的数据转发方式与上述结合所保存的已转发的蓝牙广播数据的数据转发方式,可以择一使用,也可以结合使用。对于结合使用两种数据转发方式的情况,非叶子节点11a在接收到不是发给自己的蓝牙广播数据的情况下,一方面可以检查接收到的蓝牙广播数据的TTL值是否达到设定阈值;一方面可以将接收到的蓝牙广播数据与保护的之前已转发过的蓝牙广播数据进行比较;若接收到的蓝牙广播数据的TTL值未到达设定阈值,且该蓝牙广播数据也不属于之前已转发过的蓝牙广播数据,则可以转发广播该蓝牙广播数据;若接收到的蓝牙广播数据的TTL值达到设定阈值,或者该蓝牙广播数据属于之前已转发过的蓝牙广播数据,则丢弃该蓝牙广播数据。
在本申请各实施例中,并不限定至少一个非叶子节点11a之间形成的网络拓扑结构,只要非叶子节点11a之间可以相互通信即可。例如,至少一个非叶子节点11a之间可以形成星型、树型、环型、网状(Mesh)型等各种类型的网络拓扑结构。
在一可选实施例中,如图1所示,至少一个非叶子节点11a之间互相通信连接,形成Mesh网络拓扑。在至少一个非叶子节点11a之间形成Mesh网络拓扑的基础上,本实施例的蓝牙网络可以作为一种新型的蓝牙Mesh网络。
该新型的蓝牙Mesh网络包括:至少一个非叶子节点11a和至少一个叶子节点11b,至少一个非叶子节点11a中两两相互通信连接形成Mesh网络拓扑;其中,非叶子节点11a可以连接一个或多个叶子节点11b,当然,非叶子节点11a也可以不连接任何叶子节点11b;对每个叶子节点11b来说,其至少连接于一个非叶子节点11a,可接收其所连接的非叶子节点11a发送或转发的蓝牙广播数据,也可以向其所连接的非叶子节点11a发送蓝牙广播数据,或者通过其所连接的非叶子节点11a向外转发蓝牙广播数据。在该新型蓝牙Mesh网络中,所有的非叶子节点11a相互连接在一起,任意两个非叶子节点11a之间拥有多条连接通道,网络稳健性较高;另外,可将传统WLAN中的无线“热点”扩展为真正大面积覆盖的无线“热区”,叶子节点11b可分散到多个非叶子节点11a上,各非叶子节点11a的负担相对较轻,功耗相对较低。
在本申请一些示例性实施例中,无论至少一个非叶子节点11a之间是否形成Mesh网络拓扑,在蓝牙网络10中,所有非叶子节点11a具有同等地位和功能。每个非叶子节点11a都可以对外发送蓝牙广播数据,也可以接收来自其它非叶子节点11a或叶子节点11b的蓝牙广播数据,也可以将接收到的不是发给自己的蓝牙广播数据广播转发出去。除所列举的这些功能之外,每个非叶子节点11a还具有一些可选功能。例如,每个非叶子节点11a可以为请求加入该蓝牙Mesh网络的未配网节点进行配网操作,让未配网节点完成配网操作以成功接入该蓝牙Mesh网络,从而成为蓝牙Mesh网络中的从节点。又例如,每个非叶子节点11a还可以根据需要从至少一个叶子节点11b中选择可以成为非叶子节点的从节点,并通知被选择的从节点配置成非叶子节点。在本申请实施例中,叶子节点与非叶子节点的主要区别在于:是否具有转发功能。其中,可以成为非叶子节点的叶子节点是具有转发功能但是该转发功能未被开启的节点。相应地,叶子节点根据通知将自己配置成非叶子节点主要是指根据通知开启自己的转发功能。
需要说明的是,在上述示例性实施例中,非叶子节点11a为未配网节点进行配网操作以及在叶子节点中选择可以成为非叶子节点的叶子节点的详细实施方式,与下述示例性实施例中的领导节点为未配网节点进行配网操作以及在从节点中选择可以成为主节点的从节点的详细实施方式类似,可参见下述实施例中的相关内容。
在本申请另一些示例性实施例中,无论至少一个非叶子节点11a之间是否形成Mesh网络拓扑,在蓝牙网络10中,至少一个非叶子节点11a被划分为领导节点和主节点,如图1所示。在图1中,六边形表示领导节点,正方形表示主节点。其中,领导节点的数量可以是一个或多个,在图1中以一个为例进行图示;同理,主节点的数量可以是一个或多个,在图1中以多个为例进行图示。鉴于主节点的概念,至少一个叶子节点11b可以称为从节点。对一个从节点来说,其可以连接于主节点,也可以连接于领导节点。
在本实施例中,主节点可以对外发送蓝牙广播数据,也可以接收来自其它主节点或从节点的蓝牙广播数据,也可以将接收到的不是发给自己的蓝牙广播数据转发出去。同样地,领导节点可以对外发送蓝牙广播数据,也可以接收来自主节点或从节点的蓝牙广播数据,也可以将接收到的不是发给自己的蓝牙广播数据转发出去。除此之外,领导节点作为蓝牙网络10中的管控节点,还可以对蓝牙网络10进行各种管理操作。例如,领导节点还可以对蓝牙网络执行以下操作:在从节点中选定主节点,和/或,对请求入网的未配网节点进行配网操作;其中,未配网节点在完成配网操作后成蓝牙网络10中的从节点。
在从节点中选定主节点:
在蓝牙网络10中,从节点可以探测其周围是否存在可用的主节点。例如,如果从节点连续发出N个蓝牙广播数据,针对这N个蓝牙广播数据均未收到主节点返回的确认消息,可以认为其周围没有可用的主节点;反之,若有接收到某个或某些主节点返回的确认消息,则认为周围存在可用的主节点。其中,N是正整数。例如,N可以是2、3、4、5或10等,对此不做限定,可根据需要灵活设定。需要说明的是,连续发出的N个蓝牙广播数据可以是业务数据,也可以是专门用户探测主节点是否在线的心跳数据。以心跳数据为例,从节点可以周期性地发送心跳数据检测周边的主节点是否仍然处于在线可用状态,如果连续N次心跳数据都没有收到回复(ACK消息),则认为周边没有可用的主节点;反之,认为周围存在可用的主节点。
在从节点周围没有可用的主节点的情况下,从节点发出的蓝牙广播数据就无法被转发出去,从节点就无法与超出其信号覆盖范围内的其它从节点或主节点或领导节点进行通信。因此,在周围不存在可用的主节点的情况下,从节点可以对外发送寻找主节点的请求。其中,该寻找主节点的请求是蓝牙广播数据中的一种。对于寻找主节点的从节点,在其信号覆盖范围内的其它从节点可能会接收到该从节点广播的寻找主节点的请求。对于接收到其它从节点发送的寻找主节点的请求的从节点,可判断自身硬件能力是否符合成为主节点的要求,若自身硬件能力符合成本主节点的要求,则可以作为候选从节点对外发送申请成为主节点的请求;若自身硬件能力不符合成为主节点的要求,则可以将接收到的寻找主节点的请求丢弃。若发送申请成为主节点的请求的候选从节点在领导节点的信号覆盖范围内,则该候选从节点发送的申请成为主节点的请求会直接到达领导节点;若发送申请成为主节点的请求的候选从节点在领导节点的信号覆盖范围之外,则该候选从节点发送的申请成为主节点的请求会经过一个或多个主节点的转发而到达领导节点。其中,候选从节点的硬件能力包括但不限于:CPU计算能力、ROM存储能力等。
其中,发送申请成为主节点的请求的候选从节点可能是一个或多个,领导节点可能会接收到一个或多个候选从节点发送的申请成为主节点的请求。对领导节点来说,在接收到至少一个候选从节点发送的申请成为主节点的请求的申请的情况下,从至少一个候选从节点中选择可以成为主节点的目标从节点,并通知该目标从节点配置成为主节点。其中,至少一个候选从节点是至少一个从节点中的部分或全部,相应地,目标从节点是至少一个候选从节点中的一个或多个。可选地,领导节点还可以通知至少一个候选从节点中除目标从节点之外的其它从节点其未被选择成为主节点。其中,无论是哪种通知,对于在领导节点的信号覆盖范围内的从节点,可直接接收到领导节点发出的通知;对于在领导节点的信号覆盖范围之外的从节点,领导节点发出的通知可以经过一个或多个主节点转给从节点。对接收到通知的目标从节点,可以将自己配置成主节点,改配置操作主要是指开启转发功能,以在接收到不是发给自己的蓝牙广播数据的情况下将蓝牙广播数据转发出去。
在本申请实施例中,并不限定领导节点在从至少一个候选从节点中选择目标从节点的选择方式。例如,可以采用但不限于以下4种选择方式:
选择方式1:根据至少一个候选从节点的在线时长,从中选择可以成为主节点的目标从节点。可选地,在候选从节点发送的申请成为主节点的请求中可以包含候选从节点的在线时长。或者,领导节点可以记录各从节点的在线时长,从所记录的各从节点的在线时长中获取各候选从节点的在线时长。在线时长是指候选从节点在上电后持续的时间长度。例如,可以选择在线时长最长的候选从节点作为目标从节点。又例如,可以选择在线时长在设定时间范围内的候选从节点作为目标从节点。
选择方式2:根据至少一个候选从节点的信号强度,从中选择可以成为主节点的目标从节点。领导节点可以分析接收到的至少一个候选从节点发送的申请成为主节点的请求的RSSI,作为至少一个候选从节点的信号强度。例如,可以选择信号强度最强的候选从节点作为目标从节点。又例如,可以选择信号强度在设定信号强度范围内的候选从节点作为目标从节点。
选择方式3:随机从至少一个候选从节点中选择可以成为主节点的目标从节点。例如,领导节点可以采用随机函数或哈希函数,从至少一个候选从节点中随机选择目标从节点。该方式简单、易于实施、且选择目标从节点的效率较高。
选择方式4:根据至少一个候选从节点的硬件能力,从中选择可以成为主节点的目标从节点。在候选从节点发送的申请成为主节点的请求中可以包含候选从节点的硬件能力。或者,领导节点可以维护各从节点的硬件能力,从所维护的各从节点的硬件能力中获取各候选从节点的硬件能力。例如,可以选择硬件能力最强的候选从节点作为目标从节点。又例如,可以选择硬件能力在某个能力范围内的候选从节点作为目标从节点。
需要说明的是,领导节点可以择一使用上述4种选择方式,也可以组合使用上述4种选择方式中的多种方式。
在本申请实施例中,领导节点根据从节点的申请重新选定主节点,使得该蓝牙网络具备容错机制,可在主节点不可用的情况下快速找到替代节点,有利于保证网络稳定性。
对请求入网的未配网节点进行配网操作:
在蓝牙网络10中,领导节点还用于对请求入网的未配网节点进行配网操作。一种配网操作的方式包括:领导节点响应于配网指令,获取未配网节点的入网请求,该入网请求包含未配网节点的标识;根据未配网节点的标识,获取未配网节点的配网数据;根据未配网节点的标识,将未配网数据广播给未配网节点,以供未配网节点进行配网操作。
其中,向领导节点发出配网指令的方式可以有多种。例如,领导节点具有语音识别功能,则用户可以向领导节点发出配网的语音指令;领导节点接收用户发出的语音指令,识别出需要配网,启动配网流程。又例如,领导节点支持与其它用户终端进行交互,则用户可以通过用户终端向领导节点发送配网指令;领导节点接收配网指令后,启动配网流程。又例如,领导节点具备电子屏幕,用户可以通过该电子屏幕与领导节点进行交互,基于此,用户可以通过电子屏幕向领导节点输入配网指令;领导节点接收配网指令后,启动配网流程。
在本实施例中,未配网节点是指请求加入但尚未加入蓝牙网络10的蓝牙设备。未配网节点上电后,可以周期性的对外广播入网请求,该入网请求包含未配网节点的标识。该入网请求是一种蓝牙广播数据,其目的地址是广播地址。未配网节点的标识可以是任何能够唯一标识未配网节点的信息,例如可以是未配网节点的MAC地址、设备识别码等。
对未配网节点来说,也可以根据用户配置对外广播入网请求,以请求加入蓝牙网络10。例如,在未配网节点具备语音识别功能的情况下,用户可以采用语音方式预先配置未配网节点接入蓝牙网络10的时间、条件或触发事件等,则在用户配置的时间到达时,或在用户配置的条件被满足时,或者在用户配置的触发事件发生时,未配网节点可对外广播入网请求,以请求加入蓝牙网络10。当然,若未配网节点带有触控面板或电子屏幕,用户也可以通过触控面板或电子屏幕预先配置未配网节点接入蓝牙网络10的时间、条件或触发事件等。例如,以空气净化器或扫地机器人等具备移动性的未配网节点为例,用户可以预先配置空气净化器或扫地机器人在到达其工作区域(例如主卧室)时需要申请加入蓝牙网络10,以便于用户通过手机对空气净化器或扫地机器人发出控制指令;空气净化器或扫地机器人可在移动过程中检测自己的位置,并在检测到自己移动到工作区域时,对外广播入网请求,以请求加入蓝牙网络10;之后,用户可以通过蓝牙手机对空气净化器或扫地机器人发出开机、设置工作模式、设置工作时间等各种控制指令。
除此上述方式,未配网节点也可以在有入网需求的情况下,对外广播入网请求,以请求加入蓝牙网络10。例如,假设未配网节点是一温湿度传感器,在平时可以检测所处环境中的温湿度数据,当检测到温湿度数据异常(例如高于设定上限值或低于设定下限值)时,可以对外广播入网请求,以加入蓝牙网络10,通过蓝牙网络10向相关监控设备发送异常的温湿度数据等。其中,监控设备可以是蓝牙网络10中的某个主节点,或领导节点,也可以是蓝牙网络之外但与蓝牙网络中某个主节点或领导节点通信连接的设备。
领导节点响应于配网指令,在其信号覆盖范围内扫描未配网节点广播的入网请求。若领导节点在其信号覆盖范围内扫描到入网请求,从该入网请求中获取未配网节点的标识,根据未配网节点的标识,获取未配网节点的配网数据,并将该未配网节点的配网数据以广播方式发送给未配网节点。若领导节点未在其信号覆盖范围内扫描到来自未配网节点的入网请求,则可以广播中继指令,以指示在其信号覆盖范围内的主节点启动中继功能。对于接收到中继指令的主节点,可以启动中继功能,借助于中继功能将接收到的入网请求转发给领导节点。其中,主节点借助于中继功能将接收到的入网请求转发给领导节点包括:将该入网请求的目的地址从广播地址替换为领导节点的地址,然后将替换目的地址后的入网请求发送出去。
需要说明的是,由于未配网节点尚未加入蓝牙网络10,所以主节点在未开启中继功能的情况下,并不会像转发来自从节点或其它主节点或领导节点的蓝牙广播数据那样将接收到的入网请求转发出去。主节点的转发功能主要是面向已经成功加入蓝牙网络10中的节点的。但是,在开启中继功能之后,主节点可借助于中继功能将接收到的入网请求转发给领导节点,将这种转发方式称为中继转发方式。
对领导节点来说,可接收其信号覆盖范围内的主节点在接收到未配网设备广播的入网请求时中继转发的入网请求;从入网请求中获取未配网节点的标识;根据未配网节点的标识,获取未配网节点的配网数据,并将该配网数据以广播方式发送给未配网节点。
可选地,领导节点可以将配网数据和未配网节点的标识封装在入网响应中,并广播入网响应,以通过其信号覆盖范围内的主节点转发给未配网设备,以供未配网设备进行配网操作。开启中继功能的主节点,还用于在接收到入网响应时广播转发该入网请求,以供相应未配网节点接收并获取其中的配网数据。
可选地,领导节点在向未配网节点返回配网数据之前,还可以对未配网节点进行身份或权限验证,并在未配网节点通过身份或权限验证之后,向其返回配网数据以供未配网节点接入蓝牙网络10,从而确保蓝牙网络10的安全性。可选地,领导节点可以预先维护各种合法或有权限节点的标识,将未配网节点的标识在所维护的合法或有权限节点的标识中进行匹配;若在合法或有权限节点的标识中匹配到未配网节点的标识,则确定未配网节点通过身份或权限验证。或者,领导节点也可以将未配网节点的标识发送至网络管理人员注册的终端设备,供网络管理人员确认是否允许该未配网节点接入蓝牙网络,并在接收到网络管理人员通过终端设备返回的确认指令时,确定未配网节点通过身份或权限验证。
对未配网节点来说,可接收主节点广播转发的入网请求,判断入网请求携带的未配网节点的标识是否与自己的标识相同;若判断结果为相同,则将该入网请求接收下来,并根据该入网请求中的配网数据进行配网操作;若判断结果为不相同,则丢弃该入网请求。
由于入网请求和入网响应中携带有未配网节点的标识,能够区分不同未配网节点,因此本申请实施例可以支持多个未配网节点同时或同时段发起入网操作,可提高入网效率。
在一可选实施例中,领导节点具备生成配网数据的功能,可以直接根据未配网节点的标识为未配网节点生成配网数据并下发给未配网节点。
在另一可选实施例中,领导节点可以与服务端设备相互配合完成对未配网节点的配网操作。服务端设备主要负责为各未配网节点生成配网数据;而领导节点可作为配网辅助设备,负责接收入网请求上报给服务端设备,并将服务端设备返回的配网数据转发给未配网节点。基于此,如图2所示,蓝牙网络10还包括:服务端设备12。服务端设备12可以是任何具有一定处理能力的计算机设备,例如可以是智能手机、个人计算机或穿戴设备等终端设备,也可以是常规服务器、云服务器、服务器阵列等服务器设备。在图2中,以云服务器为例对服务端设备12进行图示。
在配网操作中,领导节点可将未配网节点的标识发送给服务端设备12;以及接收服务端设备12返回的未配网设备的配网数据。服务端设备12用于接收领导节点发送的未配网节点的标识,为未配网节点生成配网数据并返回给领导节点。
更进一步,如图2所示,蓝牙网络10还包括:边界路由节点13。在图2中,以三角形表示边界路由节点13。边界路由节点13连接于领导节点与服务端设备12之间,可桥接蓝牙网络10与公网中的设备,例如服务端设备12,可转发领导节点11a与服务端设备12之间的通信数据。边界路由节点13可以是智能音箱、智能手机、或者AP、路由器或家庭网关等。
在本实施例中,并不限定服务端设备12为未配网节点生成配网数据的实施方式。其中,一种领导节点与服务端设备相互配合对未配网节点进行配网操作的流程,如图3a所示,该流程包括以下步骤:
30、未配网节点(如蓝牙冰箱)上电后,开始周期性发出入网请求,该入网请求包含未配网节点的标识信息。
31、用户通过语音方式向领导节点(如智能音箱)输入指令,指示领导节点启动未配网节点的配网流程。
需要说明的是,步骤30与步骤31之间没有先后顺序。
32、领导节点扫描周边的未配网节点发出的入网请求。
33、在没有扫描到未配网节点发出的入网请求的情况下,领导节点发送启动中指令到蓝牙网络中的主节点。
34、收到启动中继指令的主节点收,启动中继功能,即主节点默认转发所有在配网过程中使用到的数据,例如入网请求和入网响应等。
35、此时该未配网节点周边能收到入网请求的主节点可以转发入网请求,由此领导节点可以接收到由主节点转发过来的入网请求。
36、领导节点从入网请求中解析出未配网节点的标识信息,通过公共网络向云服务器传输未配网节点标识信息,告知云服务器有一个未配网节点请求加入蓝牙网络。
37、云服务器触发领导节点告知用户发现未配网节点,以获取用户确认是否允许该未配网节点加入蓝牙网络。
38、领导节点询问用户是否同意未配网节点加入蓝牙网络,比如通过语音播报“已为您发现XXX设备,是否允许接入蓝牙网络”。
39、如果用户同意,则云服务器针对该未配网节点,通过公共网络下发一个随机数(Random)和未配网节点的标识信息给领导节点。
40、领导节点构建蓝牙广播数据,该蓝牙广播数据包括随机数(Random)和未配网节点的标识信息,并广播该包含随机数和未配网节点的标识信息的蓝牙广播数据。
41、若接收到上个步骤中的蓝牙广播数据,主节点转发接收到的上个步骤中的蓝牙广播数据。
42、在接收到发送给自己的蓝牙广播数据后,未配网节点使用预置的与云服务器的共享密钥和随机数计算第一验证信息。
首先,根据未配网节点的标识信息来判定接收到的蓝牙广播数据是否是发给自己的;如果是,则使用共享密钥和随机数(Random)计算出第一验证信息(Verification)。
43、未配网节点广播自己的标识信息、使用的加密算法和第一验证信息。
44、若收到未配网节点广播的其标识信息、使用的加密算法和第一验证信息,主节点转发接收到的未配网节点的标识信息、使用加密算法和第一验证信息。
45、领导节点收到后,通过公共网络向云服务器透传未配网节点的标识信息、使用的加密算法和第一验证信息。
46、云服务器验证收到的第一验证信息的正确性,即通过预置的与未配网节点的共享密钥,用上述随机数在本地计算出第二验证信息,将第二验证信息与接收到的第一验证信息进行比较。如果一致,则验证通过。
47、如果验证通过,云服务器通过公共网络下发配网数据给领导节点,该配网数据包括未配网节点的标识信息、蓝牙网络的密钥、蓝牙网络的地址。
48、领导节点构建蓝牙广播数据即入网响应,该入网响应包括配网数据,并将包含配网数据的入网响应广播出去。
49、若接收到上述入网响应,主节点转发收到入网响应。
50、未配网节点收到入网响应后,从中解析出配网数据,在本地配置蓝牙网络的密钥和地址。
51、未配网节点完成配置操作后,向领导节返回入网成功通知。
52、主节点收到入网成功通知后,转发入网成功通知。
53、领导节点收到入网成功通知后,提示用户未配网节点入网成功。提示方式可以是:以语音播报方式输出“配网成功”的语音信息。
54、领导节点发送关闭中继指令给蓝牙网络中的主节点,以指示主节点关闭中继功能。
55、主节点收到关闭中继指令后,关闭中继功能,即主节点不再转发配网过程中使用到的数据。
在上述实施例中,借助于主节点的中继功能,以中继方式对未配网节点进行配网操作,未配网节点可以在更远距离处加入蓝牙网络,有利于扩展蓝牙网络的覆盖范围;另外,由于在配网过程中添加了未配网节点的标识信息,能够区分不同未配网节点的配网数据,支持对多个未配网节点同时进行配网操作(即支持批量配网操作),有利于提高配网效率。
本申请实施例提供的蓝牙网络可应用于智能家居、智能楼宇、商场等物联网通信场景中,也可以应用于车载场景,或者也可以应用到车载场景与智能家居等相结合的场景中。如图3b所示,以智能家居场景为例,家庭环境中支持蓝牙Mesh协议的智能音箱作为领导节点、家庭环境中支持蓝牙Mesh协议的电视机、智能手机和笔记本作为主节点,家庭环境中其它具备蓝牙广播功能的蓝牙开关、蓝牙壁灯、蓝牙灯、蓝牙报警器、蓝牙插座、蓝牙报警器、蓝牙冰箱等设备作为从节点,家庭环境中的路由器作为边界路由节点与云端服务器建立通信连接。其中,智能家居场景中的蓝牙开关、蓝牙电灯、蓝牙空调或蓝牙冰箱等也是通过发送入网请求并成功完成配网操作之后成为从节点的。
无论是哪种应用场景,蓝牙网络中的从节点、主节点甚至领导节点都有可能发生故障或掉电,导致掉线。在本申请实施例提供的蓝牙网络中,主节点和领导节点还可以感知其所连接的从节点的在线状态,并在感知到有从节点掉线时,可以对掉线的从节点进行掉线管理。除此之外,主节点还可以感知其所连接的领导节点或其它主节点的在线状态,并在感知到领导节点或其它主节点掉线时,同样可以对掉线的领导节点或其它主节点进行掉线管理。同理,对领导节点来说,除了可以感知其所连接的从节点的在线状态之外,也可以感知其所连接的主节点的在线状态,并在感知到有主节点掉线时,同样可以对掉线的主节点进行掉线管理。
无论是领导节点还是主节点,在对掉线节点进行掉线管理时,可以对外发出提示信息,以供网络管理人员或维护人员对掉线节点进行故障检修;或者,也可以探测掉线节点的掉线原因,并在确定是因为掉电导致掉线时,还可以对掉线节点进行上电控制等。当然,在有必要的情况下,领导节点或主节点还可以将掉电节点的任务转嫁到其它临近节点上,或者转嫁到自己身上。例如,若主节点探测到其附近另一主节点掉线,该主节点可以增大自己的发射功率,增加信号覆盖范围,从而接管连接于掉线主节点的部分或全部从节点。同理,假设主节点或领导节点探测到一从节点掉线,则可以控制附近一个或几个从节点增大发射功率,增加信号覆盖范围,尽量覆盖到故障从节点原来覆盖的区域。这样,尽量降低基于蓝牙网络实施的任务因部分节点掉线而受到的不利影响。
在本申请实施例提供的蓝牙网络中,从节点不仅可以通过主节点或领导节点与远处其它从节点进行通信,还可以接受其所连接的主节点或领导节点的控制,并可根据主节点或领导节点的控制进行相应操作。例如,主节点或领导节点可以对其信号覆盖范围内的从节点进行分组,并以分组为单位对从节点进行不同控制。例如,以从节点是一些传感器为例,主节点或领导节点可以按照时间属性或者位置属性,将其信号覆盖范围内的传感器划分为不同分组,并控制不同分组内的传感器在不同时间段内工作或工作在不同模式等。又例如,用户在出差期间,可将自己的蓝牙手机或蓝牙手表等加入酒店的蓝牙网络,并通过向酒店服务器(主节点或领导节点)发送校时请求,通过酒店服务器对蓝牙手机或蓝牙手表(从节点)的时间进行重设,与本地时间同步。在智能家居场景中,用户还可以通过蓝牙手机(主节点或领导节点)对与蓝牙手机连接的扫地机器人、空气净化器进行开机、关机等控制。
当然,对领导节点来说,还可以对其连接的主节点进行各种控制。例如,在智能家居场景中,蓝牙音箱作为领导节点,可以根据用户的控制指令,对蓝牙手机、蓝牙电视等主节点进行控制,例如可以控制蓝牙手机开机、开启蓝牙功能等,也可以控制蓝牙电视开机、调台、调节音量等等。其中,用户可以通过语音向蓝牙音箱发出控制指令,该控制指令中同时包含控制对象和控制命令的信息。例如,用户可以对蓝牙音箱发出“请打开电视机”的语音信号。蓝牙音箱接收到该语音信号后,可解析出控制对象为电视机,控制命令为开机,则可以以向电视机发出控制其开机的蓝牙信号,电视机接收到指示其开机的蓝牙信号后执行开机操作。
图4a为本申请示例性实施例提供的一种蓝牙网络的通信方法的流程示意图。该通信方法是从蓝牙网络中的非叶子节点的角度进行的描述。如图4a所示,该通信方法包括:
401、接收来自蓝牙网络中的叶子节点的蓝牙广播数据。
402、在蓝牙广播数据不是发给自己的情况下,广播转发蓝牙广播数据。
在本实施例中,蓝牙网络包括多个蓝牙节点,蓝牙节点是指支持蓝牙通信协议的蓝牙设备,例如可以是但不限于:蓝牙手机、蓝牙耳机、蓝牙音箱、蓝牙开关、蓝牙电视、蓝牙灯或蓝牙手环等等。蓝牙通信协议有多个版本,例如蓝牙1.0版本、蓝牙2.0版本、蓝牙3.0版本以及蓝牙4.0版本等。在本实施例中,并不限定蓝牙节点所支持的蓝牙通信协议的版本,多个蓝牙节点可以支持同一版本的蓝牙通信协议,也可以支持不同版本的蓝牙通信协议。
在蓝牙网络中,多个蓝牙节点包括至少一个非叶子节点和至少一个叶子节点;至少一个非叶子节点之间可以通信连接,而且每个叶子节点至少可与一个非叶子节点通信连接。这里的通信连接主要是指蓝牙连接。该蓝牙网络的结构如图1所示,在图1中,以每个叶子节点与一个非叶子节点通信连接为例进行图示。对叶子节点来说,若其可以与一个非叶子节点通信连接,说明该叶子节点位于该非叶子节点的信号覆盖范围内。
其中,至少一个非叶子节点具有转发功能,可转发来自其它节点的蓝牙广播数据。对每个非叶子节点来说,可以与多个其它节点(这里的其它节点可以包括叶子节点,也可以包括非叶子节点)进行通信连接,从而让多个其它节点之间实现互联。非叶子节点所支持的蓝牙通信协议需要支持网络互联和转发功能,例如可以是蓝牙4.0及以上等较高版本的蓝牙通信协议。可选地,非叶子节点可以是一些计算能力较强的蓝牙设备,例如蓝牙手机、蓝牙电视或蓝牙音箱等。
在一种场景下,在非叶子节点接收到来自叶子节点的蓝牙广播数据的情况下,可以根据接收到蓝牙广播数据中携带的目的地址,来判断是否是发给自己的;若目的地址不是自己的地址,确定该数据不是发给自己的,就广播转发;如果目的地址是自己的地址,意味着这个数据是发给自己的,则对该数据进行接收处理。
在一些示例性实施例中,为了避免蓝牙网络中出现泛洪,可以采用TTL方式。预先在非叶子节点中设定阈值,这样,非叶子节点在接收到蓝牙广播数据时,可以判断该蓝牙广播数据的目的地址是不是自己的地址;如果接收到的蓝牙广播数据的目的地址不是自己的地址,表示该蓝牙广播数据不是发给自己,需要广播转发该蓝牙广播数据。在接收到不是发给自己的蓝牙广播数据的情况下,检查接收到的蓝牙广播数据的TTL值,判断该TTL值是否达到设定阈值,在该TTL值未达到设定阈值的情况下,将TTL值增加设定步长后广播转发该蓝牙广播数据;在TTL值达到设定阈值的情况下,则丢弃不转发该所述蓝牙广播数据。在本实施例中,并不限定预设阈值和设定步长的取值,可根据应用需求灵活设定。可选地,设定步长可以是1,即每次转发都将TTL值加1。
在一些示例性实施例中,非叶子节点可以把之前已经转发过的蓝牙广播数据保存下来,例如可以缓存在本地。对非叶子节点来说,在接收到不是发给自己的蓝牙广播数据的情况下,可以将接收到的蓝牙广播数据与保存的之前已转发过的蓝牙广播数据进行比较;在接收到的蓝牙广播数据不属于之前已转发过的蓝牙广播数据的情况下,广播转发该蓝牙广播数据,并保存该蓝牙广播数据;在接收到的蓝牙广播数据属于之前已转发过的蓝牙广播数据的情况下,则丢弃该蓝牙广播数据,不再广播转发。其中,非叶子节点保存蓝牙广播数据的方式并不限于缓存在本地这一种方式,例如也可以保存在本地内存或硬盘中,或者存储至数据库中,等等。
需要说明的是,对任一非叶子节点来说,上述结合TTL值的数据转发方式与上述结合所保存的已转发的蓝牙广播数据的数据转发方式,可以择一使用,也可以结合使用。对于结合使用两种数据转发方式的情况,非叶子节点在接收到不是发给自己的蓝牙广播数据的情况下,一方面可以检查接收到的蓝牙广播数据的TTL值是否达到设定阈值;一方面可以将接收到的蓝牙广播数据与保护的之前已转发过的蓝牙广播数据进行比较;若接收到的蓝牙广播数据的TTL值未到达设定阈值,且该蓝牙广播数据也不属于之前已转发过的蓝牙广播数据,则可以转发广播该蓝牙广播数据;若接收到的蓝牙广播数据的TTL值达到设定阈值,或者该蓝牙广播数据属于之前已转发过的蓝牙广播数据,则丢弃该蓝牙广播数据。
图4b为本申请示例性实施例提供的一种蓝牙网络中从从节点中选择主节点的方法流程示意图。该方是从非叶子节点中的领导节点的角度进行了描述。该方法包括:
403、接收到至少一个候选从节点发送的申请成为主节点的请求。
404、从所述至少一个候选从节点中选择可以成为主节点的目标从节点。
405、通知所述目标从节点配置成为主节点。
在本实施例中,从节点可以探测其周围是否存在可用的主节点。在从节点周围没有可用的主节点的情况下,从节点发出的蓝牙广播数据就无法被转发出去,从节点就无法与超出其信号覆盖范围内的其它从节点或主节点或节点进行通信。因此,在周围不存在可用的主节点的情况下,从节点可以作为候选从节点对外发送寻找主节点的请求。发送申请成为主节点的请求的候选从节点可能是一个或多个,领导节点可能会接收到一个或多个候选从节点发送的申请成为主节点的请求。
对领导节点来说,在接收到至少一个候选从节点发送的申请成为主节点的请求的申请的情况下,从至少一个候选从节点中选择可以成为主节点的目标从节点,并通知该目标从节点配置成为主节点。其中,至少一个候选从节点是至少一个从节点中的部分或全部,相应地,目标从节点是至少一个候选从节点中的一个或多个。可选地,领导节点还可以通知至少一个候选从节点中除目标从节点之外的其它从节点其未被选择成为主节点。其中,无论是哪种通知,对于在领导节点的信号覆盖范围内的从节点,可直接接收到领导节点发出的通知;对于在领导节点的信号覆盖范围之外的从节点,领导节点发出的通知可以经过一个或多个主节点转给从节点。对接收到通知的目标从节点,可以将自己配置成主节点,改配置操作主要是指开启转发功能,以在接收到不是发给自己的蓝牙广播数据的情况下将蓝牙广播数据转发出去。
在本申请实施例中,并不限定领导节点在从至少一个候选从节点中选择目标从节点的选择方式。例如,可以采用但不限于以下4种选择方式:
选择方式1:根据至少一个候选从节点的在线时长,从中选择可以成为主节点的目标从节点。可选地,在候选从节点发送的申请成为主节点的请求中可以包含候选从节点的在线时长。或者,领导节点可以记录各从节点的在线时长,从所记录的各从节点的在线时长中获取各候选从节点的在线时长。在线时长是指候选从节点在上电后持续的时间长度。例如,可以选择在线时长最长的候选从节点作为目标从节点。又例如,可以选择在线时长在设定时间范围内的候选从节点作为目标从节点。
选择方式2:根据至少一个候选从节点的信号强度,从中选择可以成为主节点的目标从节点。领导节点可以分析接收到的至少一个候选从节点发送的申请成为主节点的请求的RSSI,作为至少一个候选从节点的信号强度。例如,可以选择信号强度最强的候选从节点作为目标从节点。又例如,可以选择信号强度在设定信号强度范围内的候选从节点作为目标从节点。
选择方式3:随机从至少一个候选从节点中选择可以成为主节点的目标从节点。例如,领导节点可以采用随机函数或哈希函数,从至少一个候选从节点中随机选择目标从节点。该方式简单、易于实施、且选择目标从节点的效率较高。
选择方式4:根据至少一个候选从节点的硬件能力,从中选择可以成为主节点的目标从节点。在候选从节点发送的申请成为主节点的请求中可以包含候选从节点的硬件能力。或者,领导节点可以维护各从节点的硬件能力,从所维护的各从节点的硬件能力中获取各候选从节点的硬件能力。例如,可以选择硬件能力最强的候选从节点作为目标从节点。又例如,可以选择硬件能力在某个能力范围内的候选从节点作为目标从节点。
需要说明的是,领导节点可以择一使用上述4种选择方式,也可以组合使用上述4种选择方式中的多种方式。
图4c为本申请示例性实施例提供的一种蓝牙网络中对请求入网的未配网节点进行配网操作的流程示意图。该方法是从蓝牙网络中领导节点的角度进行描述。该方法包括:
406、响应于配网指令,获取未配网节点的入网请求,所述入网请求包含所述未配网节点的标识;
407、根据所述未配网节点的标识,获取所述未配网节点的配网数据;
408、根据所述未配网节点的标识,将所述配网数据广播给所述未配网节点,以供所述未配网节点进行配网操作。
在本实施例中,领导节点还用于对请求入网的未配网节点进行配网操作。一种配网操作的方式包括:领导节点响应于配网指令,获取未配网节点的入网请求,该入网请求包含未配网节点的标识;根据未配网节点的标识,获取未配网节点的配网数据;根据未配网节点的标识,将未配网数据广播给未配网节点,以供未配网节点进行配网操作。
其中,向领导节点发出配网指令的方式可以有多种。例如,领导节点具有语音识别功能,则用户可以向领导节点发出配网的语音指令;领导节点接收用户发出的语音指令,识别出需要配网,启动配网流程。又例如,领导节点支持与其它用户终端进行交互,则用户可以通过用户终端向领导节点发送配网指令;领导节点接收配网指令后,启动配网流程。又例如,领导节点具备电子屏幕,用户可以通过该电子屏幕与领导节点进行交互,基于此,用户可以通过电子屏幕向领导节点输入配网指令;领导节点接收配网指令后,启动配网流程。
进一步,领导节点响应于配网指令,在其信号覆盖范围内扫描未配网节点广播的入网请求。若领导节点在其信号覆盖范围内扫描到入网请求,从该入网请求中获取未配网节点的标识,根据未配网节点的标识,获取未配网节点的配网数据,并将该未配网节点的配网数据以广播方式发送给未配网节点。若领导节点未在其信号覆盖范围内扫描到来自未配网节点的入网请求,则可以广播中继指令,以指示在其信号覆盖范围内的主节点启动中继功能。对于接收到中继指令的主节点,可以启动中继功能,借助于中继功能将接收到的入网请求转发给领导节点。
进一步,对领导节点接收其信号覆盖范围内的主节点在接收到未配网设备广播的入网请求时中继转发的入网请求,从入网请求中获取未配网节点的标识;并根据未配网节点的标识,获取未配网节点的配网数据;然后领导节点将配网数据和未配网节点的标识封装在入网响应中,并广播入网响应,以通过其信号覆盖范围内的主节点转发给未配网设备,以供未配网设备进行配网操作。
图5为本申请示例性实施例提供的另一种蓝牙网络中从从节点中选择主节点的方法流程示意图。该方法是从蓝牙网络中的从节点的角度进行的描述。该通信方法包括:
501、若接收到所述蓝牙网络中其它从节点发送的寻找主节点的请求,判断自身硬件能力是否满足成为主节点的要求。
502、在自身硬件能力满足成为主节点的要求的情况下,作为候选从节点对外发送申请成为主节点的请求。
在本实施例中,从节点可以探测其周围是否存在可用的主节点。如果从节点连续发出N个蓝牙广播数据,针对这N个蓝牙广播数据均未收到主节点返回的确认消息,可以认为其周围没有可用的主节点;反之,若有接收到某个或某些主节点返回的确认消息,则认为周围存在可用的主节点。其中,N是正整数。
进一步,在从节点周围没有可用的主节点的情况下,从节点发出的蓝牙广播数据就无法被转发出去,从节点就无法与超出其信号覆盖范围内的其它从节点或主节点或节点进行通信。因此,在周围不存在可用的主节点的情况下,从节点可以对外发送寻找主节点的请求。其中,该寻找主节点的请求是蓝牙广播数据中的一种。
进一步,寻找主节点的从节点的信号覆盖范围内的其它从节点,可能会接收到该从节点广播的寻找主节点的请求。所述其他从节点接收到所述从节点发送的寻找主节点的请求,判断自身硬件能力是否符合成为主节点的要求,若自身硬件能力符合成为主节点的要求,则可以作为候选从节点对外发送申请成为主节点的请求;若自身硬件能力不符合成为主节点的要求,则可以将接收到的寻找主节点的请求丢弃。若发送申请成为主节点的请求的从节点位于领导节点的信号覆盖范围内,则该从节点发送的申请成为主节点的请求会直接到达领导节点;若发送申请成为主节点的请求的从节点领导节点的信号覆盖范围之外,则该从节点发送的申请成为主节点的请求会经过一个或多个主节点的转发而到达领导节点。其中,候选从节点的硬件能力包括但不限于:CPU计算能力、ROM存储能力等。
需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤406至步骤408的执行主体可以为设备A;又比如,步骤407和408的执行主体可以为设备A,步骤408的执行主体可以为设备B;等等。
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如401、402等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
图6为本申请一示例性实施例提供的一种节点设备的结构示意图。该节点设备可以作为蓝牙网络中的非叶子节点实现。如图6所示,该节点设备包括:存储器601、处理器602和通信组件603。
存储器601,用于存储计算机程序,并可被配置为存储其它各种数据以支持在节点设备上的操作。这些数据的示例包括用于在节点设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
处理器602,与存储器601耦合,用于执行存储器601中的计算机程序,以用于:通过所述通信组件603接收来自所述蓝牙网络中的叶子节点的蓝牙广播数据;在所述蓝牙广播数据不是发给自己的情况下,广播转发所述蓝牙广播数据。
在一可选实施例中,处理器602在广播转发所述蓝牙广播数据时,具体用于:检查所述蓝牙广播数据的TTL值,并在所述TTL值未达到设定阈值的情况下,将所述TTL值增加设定步长后广播转发所述蓝牙广播数据。
处理器602在广播转发所述蓝牙广播数据时,还用于:在接收到不是发给自己的蓝牙广播数据的情况下,将所述蓝牙广播数据与保存的之前已转发过的蓝牙广播数据进行比较;在所述蓝牙广播数据不属于之前已转发过的蓝牙广播数据的情况下,广播转发所述蓝牙广播数据,并保存所述蓝牙广播数据。在所述蓝牙广播数据属于之前已转发过的蓝牙广播数据的情况下,丢弃所述蓝牙广播数据。
在本实施例的节点设备作为蓝牙网络中的领导节点的情况下,处理器602还用于:从所述蓝牙网络包含的至少一个从节点中选定主节点。
在一可选实施例中,处理器602在从所述蓝牙网络包含的至少一个从节点中选定主节点时,具体用于:若接收到至少一个候选从节点发送的申请成为主节点的请求,从所述至少一个候选从节点中选择可以成为主节点的目标从节点,并通知所述目标从节点配置成为主节点;所述至少一个候选从节点是所述至少一个从节点中的部分或全部节点。
进一步,处理器602在从所述至少一个候选从节点中选择可以成为主节点的目标从节点时,具体用于执行以下至少一种操作:
根据所述至少一个候选从节点的在线时长,从中选择可以成为主节点的目标从节点;
根据所述至少一个候选从节点的信号强度,从中选择可以成为主节点的目标从节点;
随机从所述至少一个候选从节点中选择可以成为主节点的目标从节点;
根据所述至少一个候选从节点的硬件能力,从中选择可以成为主节点的目标从节点。
在本实施例的节点设备作为蓝牙网络中的领导节点的情况下,处理器602还用于:对请求入网的未配网节点进行配网操作;其中,所述未配网节点在完成配网操作后成为所述蓝牙网络中的从节点。
在一可选实施例中,处理器602在对请求入网的未配网节点进行配网操作时,具体用于:响应于配网指令,获取未配网节点的入网请求,所述入网请求包含所述未配网节点的标识;根据所述未配网节点的标识,获取所述未配网节点的配网数据;根据所述未配网节点的标识,将所述配网数据广播给所述未配网节点,以供所述未配网节点进行配网操作。
进一步,处理器602在获取未配网节点的入网请求时,具体用于:响应于配网指令,在其信号覆盖范围内扫描未配网设备广播的入网请求;在未扫描到的情况下,广播中继指令以指示其信号覆盖范围内的主节点启动中继功能;以及接收其信号覆盖范围内的主节点在接收到未配网设备广播的入网请求时中继转发的所述入网请求。
进一步,处理器602在将所述配网数据广播给所述未配网节点时,具体用于:将所述配网数据和所述未配网节点的标识封装在入网响应中,并广播所述入网响应,以通过其信号覆盖范围内的主节点转发给所述未配网设备,以供所述未配网设备进行配网操作。
进一步,如图6所示,该节点设备还包括:通信组件603、显示器604、电源组件605、音频组件606等其它组件。图6中仅示意性给出部分组件,并不意味着计算平台只包括图6所示组件。另外,图6中虚线框内的组件为可选组件,而非必选组件,具体可视计算平台的产品形态而定。本实施例的计算平台可以实现为台式电脑、笔记本电脑、智能手机或IOT设备等终端设备,也可以是常规服务器、云服务器或服务器阵列等服务端设备。若本实施例的计算平台实现为台式电脑、笔记本电脑、智能手机等终端设备,可以包含图6中虚线框内的组件;若本实施例的计算平台实现为常规服务器、云服务器或服务器阵列等服务端设备,则可以不包含图6中虚线框内的组件。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述图4a-4c所示方法实施例中的各步骤。
图7为本申请示例性实施例提供的另一种节点设备的结构示意图。该节点设备可以作为蓝牙网络中的从节点实现。如图7所示,该节点设备包括:存储器701、处理器702和通信组件703。
存储器701,用于存储计算机程序,并可被配置为存储其它各种数据以支持在节点设备上的操作。这些数据的示例包括用于在节点设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
处理器702,与存储器701耦合,用于执行存储器701中的计算机程序,以用于:通过通信组件703接收到所述蓝牙网络中其它从节点发送的寻找主节点的请求,判断自身硬件能力是否满足成为主节点的要求;在自身硬件能力满足成为主节点的要求的情况下,作为候选从节点对外发送申请成为主节点的请求。
在一些可选实施例中,处理器702在接收到寻找主节点的请求后,具体用于:若在自身硬件能力不满足成为主节点的要求的情况下,丢弃接收到的寻找主节点的请求。
进一步,处理器702在发送寻找主节点的请求前,具体用于:在发现周围没有可用的主节点的情况下,对外发送寻找主节点的请求。
进一步,处理器702在发送寻找主节点的请求前,具体用于:在连续发出N个蓝牙广播数据且均未收到主节点返回的确认消息的情况下,确定其周围没有可用的主节点;其中,N是正整数。
进一步,如图7所示,该节点设备还包括:通信组件703、显示器704、电源组件705、音频组件706等其它组件。所述组件为通用组件,对此不再赘述。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述图5所示方法实施例中的各步骤。
上述图6中的存储器601与图7中的存储器701可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
上述图6和图7中的通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G/LTE、5G等移动通信网络,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件还可以包括近场通信(NFC)模块,射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术等。
上述图6和图7中的显示器包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
上述图6和图7中的电源组件,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
上述图6和图7中的音频组件,可被配置为输出和/或输入音频信号。例如,音频组件包括一个麦克风(MIC),当音频组件所在设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器或经由通信组件发送。在一些实施例中,音频组件还包括一个扬声器,用于输出音频信号。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (35)

1.一种蓝牙网络,其特征在于,包括:多个蓝牙节点,所述多个蓝牙节点包括至少一个非叶子节点和至少一个叶子节点;所述至少一个非叶子节点之间可通信连接,每个叶子节点至少连接于一个非叶子节点;
所述至少一个非叶子节点具有转发功能,可转发来自所述至少一个叶子节点的蓝牙广播数据;所述叶子节点工作在蓝牙广播模式下,用于接收或发送蓝牙广播数据。
2.根据权利要求1所述的蓝牙网络,其特征在于,所述至少一个非叶子节点具体用于:在接收到不是发给自己的蓝牙广播数据的情况下,检查所述蓝牙广播数据的TTL值,并在所述TTL值未达到设定阈值的情况下,将所述TTL值增加设定步长后广播转发所述蓝牙广播数据。
3.根据权利要求1所述的蓝牙网络,其特征在于,所述至少一个非叶子节点具体用于:在接收到不是发给自己的蓝牙广播数据的情况下,将所述蓝牙广播数据与保存的之前已转发过的蓝牙广播数据进行比较;在所述蓝牙广播数据不属于之前已转发过的蓝牙广播数据的情况下,广播转发所述蓝牙广播数据,并保存所述蓝牙广播数据。
4.根据权利要求3所述的蓝牙网络,其特征在于,所述至少一个非叶子节点还用于:在所述蓝牙广播数据属于之前已转发过的蓝牙广播数据的情况下,丢弃所述蓝牙广播数据。
5.根据权利要求1所述的蓝牙网络,其特征在于,所述至少一个非叶子节点之间互相通信连接,形成网状Mesh网络拓扑。
6.根据权利要求1-5任一项所述的蓝牙网络,其特征在于,所述至少一个非叶子节点包括:领导节点和至少一个主节点;所述至少一个叶子节点为从节点;
所述领导节点还用于:从所述至少一个从节点中选定主节点,和/或,对请求入网的未配网节点进行配网操作;其中,所述未配网节点在完成配网操作后成为所述蓝牙网络中的从节点。
7.根据权利要求6所述的蓝牙网络,其特征在于,所述领导节点具体用于:在接收到至少一个候选从节点发送的申请成为主节点的请求的情况下,从所述至少一个候选从节点中选择可以成为主节点的目标从节点,并通知所述目标从节点配置成为主节点;所述至少一个候选从节点是所述至少一个从节点中的部分或全部节点。
8.根据权利要求7所述的蓝牙网络,其特征在于,所述领导节点在选择目标从节点时,具体用于执行以下至少一种操作:
根据所述至少一个候选从节点的在线时长,从中选择可以成为主节点的目标从节点;
根据所述至少一个候选从节点的信号强度,从中选择可以成为主节点的目标从节点;
随机从所述至少一个候选从节点中选择可以成为主节点的目标从节点;
根据所述至少一个候选从节点的硬件能力,从中选择可以成为主节点的目标从节点。
9.根据权利要求7所述的蓝牙网络,其特征在于,所述领导节点还用于:通知所述至少一个候选从节点中除所述目标从节点之外的其它从节点其未被选择成为主节点。
10.根据权利要求7所述的蓝牙网络,其特征在于,每个从节点还用于:在接收到其它从节点发送的寻找主节点的请求的情况下,判断自身硬件能力是否满足成为主节点的要求,并在自身硬件能力满足成为主节点的要求的情况下,作为候选从节点对外发送申请成为主节点的请求。
11.根据权利要求10所述的蓝牙网络,其特征在于,每个从节点还用于:在自身硬件能力不满足成为主节点的要求的情况下,丢弃接收到的寻找主节点的请求。
12.根据权利要求10所述的蓝牙网络,其特征在于,每个从节点还用于:在发现其周围没有可用的主节点的情况下,对外发送寻找主节点的请求。
13.根据权利要求12所述的蓝牙网络,其特征在于,每个从节点具体用于:
在连续发出N个蓝牙广播数据且均未收到主节点返回的确认消息的情况下,确定其周围没有可用的主节点;其中,N是正整数。
14.根据权利要求6所述的蓝牙网络,其特征在于,所述领导节点具体用于:
响应于配网指令,获取未配网节点的入网请求,所述入网请求包含所述未配网节点的标识;
根据所述未配网节点的标识,获取所述未配网节点的配网数据;
根据所述未配网节点的标识,将所述配网数据广播给所述未配网节点,以供所述未配网节点进行配网操作。
15.根据权利要求14所述的蓝牙网络,其特征在于,所述领导节点还用于:
响应于配网指令,在其信号覆盖范围内扫描未配网设备广播的入网请求;
在未扫描到的情况下,广播中继指令以指示其信号覆盖范围内的主节点启动中继功能;以及
接收其信号覆盖范围内的主节点在接收到未配网设备广播的入网请求时中继转发的所述入网请求。
16.根据权利要求15所述的蓝牙网络,其特征在于,所述至少一个主节点还用于:在接收到中继指令的情况下,启动中继转发功能,以及在将接收到的未配网设备广播的入网请求时,将所述入网请求中继转发给所述领导节点。
17.根据权利要求15所述的蓝牙网络,其特征在于,所述领导节点具体用于:
将所述配网数据和所述未配网节点的标识封装在入网响应中,并广播所述入网响应,以通过其信号覆盖范围内的主节点转发给所述未配网设备,以供所述未配网设备进行配网操作。
18.根据权利要求14所述的蓝牙网络,其特征在于,还包括:服务端设备;
所述领导节点具体用于:将所述未配网节点的标识发送给所述服务端设备,并接收所述服务端设备返回的所述未配网设备的配网数据;
所述服务端设备,用于接收所述领导节点发送的所述未配网节点的标识,为所述未配网节点生成配网数据并返回给所述领导节点。
19.根据权利要求18所述的蓝牙网络,其特征在于,还包括:边界路由节点,用于转发所述领导节点与所述服务端设备之间的通信数据。
20.根据权利要求18所述的蓝牙网络,其特征在于,所述服务端设备为服务器、智能手机、个人计算机或穿戴设备。
21.根据权利要求19所述的蓝牙网络,其特征在于,所述边界路由节点为智能音箱、智能手机、AP、路由器或家庭网关。
22.根据权利要求6所述的蓝牙网络,其特征在于,所述领导节点为智能音箱、智能手机或云服务器。
23.根据权利要求6所述的蓝牙网络,其特征在于,所述至少一个从节点为无线按钮、温湿度传感器或无线开关。
24.一种蓝牙网络的通信方法,适用于所述蓝牙网络中的非叶子节点,其特征在于,所述方法包括:
接收来自所述蓝牙网络中的叶子节点的蓝牙广播数据;
在所述蓝牙广播数据不是发给自己的情况下,广播转发所述蓝牙广播数据。
25.根据权利要求24所述的方法,其特征在于,在所述非叶子节点为领导节点的情况下,所述方法还包括:从所述蓝牙网络包含的至少一个从节点中选定主节点。
26.根据权利要求25所述的方法,其特征在于,从所述蓝牙网络包含的至少一个从节点中选定主节点,包括:
若接收到至少一个候选从节点发送的申请成为主节点的请求,从所述至少一个候选从节点中选择可以成为主节点的目标从节点,并通知所述目标从节点配置成为主节点;所述至少一个候选从节点是所述至少一个从节点中的部分或全部节点。
27.根据权利要求26所述的方法,其特征在于,从所述至少一个候选从节点中选择可以成为主节点的目标从节点,包括以下至少一种:
根据所述至少一个候选从节点的在线时长,从中选择可以成为主节点的目标从节点;
根据所述至少一个候选从节点的信号强度,从中选择可以成为主节点的目标从节点;
随机从所述至少一个候选从节点中选择可以成为主节点的目标从节点;
根据所述至少一个候选从节点的硬件能力,从中选择可以成为主节点的目标从节点。
28.根据权利要求24所述的方法,其特征在于,在所述非叶子节点为领导节点的情况下,所述方法还包括:
对请求入网的未配网节点进行配网操作;其中,所述未配网节点在完成配网操作后成为所述蓝牙网络中的从节点。
29.根据权利要求30所述的方法,其特征在于,对请求入网的未配网节点进行配网操作,包括:
响应于配网指令,获取未配网节点的入网请求,所述入网请求包含所述未配网节点的标识;
根据所述未配网节点的标识,获取所述未配网节点的配网数据;
根据所述未配网节点的标识,将所述配网数据广播给所述未配网节点,以供所述未配网节点进行配网操作。
30.根据权利要求29所述的方法,其特征在于,响应于配网指令,获取未配网节点的入网请求,包括:
响应于配网指令,在其信号覆盖范围内扫描未配网设备广播的入网请求;
在未扫描到的情况下,广播中继指令以指示其信号覆盖范围内的主节点启动中继功能;以及
接收其信号覆盖范围内的主节点在接收到未配网设备广播的入网请求时中继转发的所述入网请求。
31.一种蓝牙网络的通信方法,适用于所述蓝牙网络中的从节点,其特征在于,所述方法包括:
若接收到所述蓝牙网络中其它从节点发送的寻找主节点的请求,判断自身硬件能力是否满足成为主节点的要求;
在自身硬件能力满足成为主节点的要求的情况下,作为候选从节点对外发送申请成为主节点的请求。
32.根据权利要求31所述的方法,其特征在于,还包括:
在接收到指示自身成为主节点的通知的情况下,开启自身的转发功能,以从从节点切换为主节点。
33.一种节点设备,可作为蓝牙网络中的非叶子节点实现,其特征在于,所述节点设备包括:存储器、处理器和通信组件;
所述存储器,用于存储计算机程序;
所述处理器,与所述存储器耦合,用于执行所述计算机程序,以用于:
通过所述通信组件接收来自所述蓝牙网络中的叶子节点的蓝牙广播数据;
在所述蓝牙广播数据不是发给自己的情况下,广播转发所述蓝牙广播数据。
34.一种节点设备,可作为蓝牙网络中的从节点实现,其特征在于,所述节点设备包括:存储器、处理器和通信组件;
所述存储器,用于存储计算机程序;
所述处理器,与所述存储器耦合,用于执行所述计算机程序,以用于:
若接收到所述蓝牙网络中其它从节点发送的寻找主节点的请求,判断自身硬件能力是否满足成为主节点的要求;
在自身硬件能力满足成为主节点的要求的情况下,作为候选从节点对外发送申请成为主节点的请求。
35.一种存储有计算机程序的计算机可读存储介质,其特征在于,当所述计算机程序被处理器执行时,致使所述处理器实现权利要求24-32任一项所述方法中的步骤。
CN201910943308.2A 2019-09-30 2019-09-30 蓝牙网络及其通信方法、设备和存储介质 Active CN112584364B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201910943308.2A CN112584364B (zh) 2019-09-30 2019-09-30 蓝牙网络及其通信方法、设备和存储介质
US17/012,895 US11576110B2 (en) 2019-09-30 2020-09-04 Bluetooth network, communication method, apparatus, and storage medium thereof
EP20872199.3A EP4038896A4 (en) 2019-09-30 2020-09-05 BLUETOOTH NETWORK, COMMUNICATION METHOD IN A NETWORK, APPARATUS, AND CORRESPONDING STORAGE MEDIUM
PCT/US2020/049595 WO2021067002A1 (en) 2019-09-30 2020-09-05 Bluetooth network, communication method, apparatus, and storage medium thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910943308.2A CN112584364B (zh) 2019-09-30 2019-09-30 蓝牙网络及其通信方法、设备和存储介质

Publications (2)

Publication Number Publication Date
CN112584364A true CN112584364A (zh) 2021-03-30
CN112584364B CN112584364B (zh) 2024-03-08

Family

ID=75116479

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910943308.2A Active CN112584364B (zh) 2019-09-30 2019-09-30 蓝牙网络及其通信方法、设备和存储介质

Country Status (4)

Country Link
US (1) US11576110B2 (zh)
EP (1) EP4038896A4 (zh)
CN (1) CN112584364B (zh)
WO (1) WO2021067002A1 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113207113A (zh) * 2021-04-20 2021-08-03 上海富芮坤微电子有限公司 多连接组网系统、方法、存储介质及电子设备
CN113453207A (zh) * 2021-06-21 2021-09-28 青岛海尔科技有限公司 身份类型确定方法、装置、存储介质及电子装置
CN113660646A (zh) * 2021-06-24 2021-11-16 浙江大华技术股份有限公司 通信方法、网关设备及计算机可读存储介质
CN114040471A (zh) * 2021-12-09 2022-02-11 阳光学院 基于蓝牙网络的分布式拓扑控制方法及终端
CN114157559A (zh) * 2021-12-15 2022-03-08 深圳绿米联创科技有限公司 网络处理方法、网络处理系统、电子设备及存储介质
CN114363939A (zh) * 2021-12-29 2022-04-15 上海庆科信息技术有限公司 节点模拟测试方法、装置、存储介质、处理器及设备
CN114630403A (zh) * 2022-01-28 2022-06-14 浙江大华技术股份有限公司 一种信道选择方法、节点、系统及计算机可读存储介质
CN115884145A (zh) * 2022-11-24 2023-03-31 重庆长安汽车股份有限公司 一种蓝牙设备的组网方法和单/多蓝牙设备车辆的应用
CN113660646B (zh) * 2021-06-24 2024-05-31 浙江大华技术股份有限公司 通信方法、网关设备及计算机可读存储介质

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112584364B (zh) * 2019-09-30 2024-03-08 阿里巴巴集团控股有限公司 蓝牙网络及其通信方法、设备和存储介质
CN113645602B (zh) * 2021-08-19 2023-09-19 深圳创维数字技术有限公司 一种分散管理方法、系统、通讯终端以及可读存储介质
CN117598022A (zh) * 2022-04-18 2024-02-23 华为技术有限公司 通信方法、设备、存储介质和计算机程序产品
CN115150801B (zh) * 2022-09-05 2022-12-23 北京联盛德微电子有限责任公司 基于蓝牙Mesh网络的节点间通信方法及系统
CN116436755B (zh) * 2023-06-12 2023-08-25 新华三技术有限公司 一种网络管理方法、装置及电子设备

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020044549A1 (en) * 2000-06-12 2002-04-18 Per Johansson Efficient scatternet forming
US20040064522A1 (en) * 2002-10-01 2004-04-01 Zheng Zhang Placing an object at a node in a peer-to-peer system based on a zoom-in algorithm
WO2015166307A1 (en) * 2014-05-01 2015-11-05 Nokia Technologies Oy Method and apparatus for connecting to a node of a mesh network
US20160066137A1 (en) * 2014-09-03 2016-03-03 CloudLeaf, Inc. Systems, methods and devices for asset status determination
US20170295455A1 (en) * 2016-04-11 2017-10-12 Lg Electronics Inc. Method and apparatus for transmitting and receiving data in mesh network using bluetooth
US20170310596A1 (en) * 2012-09-25 2017-10-26 A10 Networks, Inc. Load distribution in data networks
US20180124550A1 (en) * 2015-03-24 2018-05-03 Lg Electronics Inc. Method and device for transmitting/receiving data in mesh network using bluetooth
WO2018223408A1 (en) * 2017-06-06 2018-12-13 Hong Kong Applied Science and Technology Research Institute Company Limited Optimized deployment of ble network and power efficient and secure management of data exchange between ble devices
US20190073179A1 (en) * 2017-09-05 2019-03-07 Medea Inc. Electronic display band
CN110169015A (zh) * 2018-12-13 2019-08-23 阿里巴巴集团控股有限公司 在分布式系统中的网络节点之间达成共识
CN110178340A (zh) * 2018-12-13 2019-08-27 阿里巴巴集团控股有限公司 在分布式系统中进行网络节点的恢复处理

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6745038B2 (en) * 2001-04-30 2004-06-01 Motorola, Inc. Intra-piconet location determination and tomography
US7545795B2 (en) 2004-08-05 2009-06-09 Broadcom Corporation Method for identification using bluetooth wireless key
US7647023B2 (en) 2005-06-10 2010-01-12 Broadcom Corporation Frequency separation for multiple bluetooth devices residing on a single platform
US8094597B1 (en) 2007-10-30 2012-01-10 Marvell International Ltd. Method and apparatus for maintaining a wireless local area network connection during a bluetooth inquiry phase or a bluetooth paging phase
US8045922B2 (en) 2007-11-23 2011-10-25 Texas Instruments Incorporated Apparatus for and method of bluetooth and wireless local area network coexistence using a single antenna in a collocated device
US8620379B2 (en) 2010-12-06 2013-12-31 Broadcom Corporation Windows portable devices interface for Bluetooth low energy devices
US8971807B2 (en) 2011-08-12 2015-03-03 Wicentric, Inc. Systems and methods for low power short range wireless device communication advertisement
US9706496B2 (en) 2011-10-31 2017-07-11 Avago Technologies General Ip (Singapore) Pte. Ltd Concurrent BLE scanning and initiation for bandwidth efficiency and power saving
KR101949373B1 (ko) 2012-03-30 2019-02-19 삼성전자주식회사 이동 단말의 블루투스 연결 방법 및 장치와 컴퓨터로 읽을 수 있는 매체
EP2856659A4 (en) 2012-06-04 2016-02-10 Qualcomm Inc AUTOMATIC CONNECTION OF HUMAN BLUETOOTH INTERFACE DEVICES
US9307507B2 (en) * 2012-11-30 2016-04-05 Qualcomm Incorporated Systems and methods of selective scanning for ad-hoc networks
KR101981140B1 (ko) 2012-12-24 2019-05-22 삼성전자주식회사 블루투스 기기 페어링 방법과 그 블루투스 기기
WO2015069030A1 (ko) 2013-11-11 2015-05-14 엘지전자(주) 블루투스 연결 방법 및 장치
US10159044B2 (en) 2013-12-09 2018-12-18 GM Global Technology Operations LLC Method and apparatus for controlling operating states of bluetooth interfaces of a bluetooth module
US9107026B1 (en) 2014-07-18 2015-08-11 Google Inc. Range management with Bluetooth low energy
WO2016017909A1 (ko) 2014-07-31 2016-02-04 엘지전자(주) 블루투스 통신을 지원하는 무선 통신 시스템에서 전자기기를 제어하기 위한 방법 및 장치
US10218619B2 (en) * 2014-11-07 2019-02-26 Cisco Technology, Inc. Proactive broadcast capacity adjustment for fast network joins
US20160184635A1 (en) 2014-12-24 2016-06-30 Lg Electronics Inc. Method and apparatus for transmitting and receiving data using bluetooth
US9537862B2 (en) * 2014-12-31 2017-01-03 Vivint, Inc. Relayed network access control systems and methods
US9949093B2 (en) * 2015-01-29 2018-04-17 Dominic M. Kotab System, method, and computer program product for managing a network based on feedback
JP6985152B2 (ja) * 2015-04-08 2021-12-22 インターデイジタル パテント ホールディングス インコーポレイテッド デバイスツーデバイス(d2d)通信のモバイル中継器の実現
US10897709B2 (en) * 2016-12-09 2021-01-19 Arris Enterprises Llc Wireless network authorization using a trusted authenticator
US11314215B2 (en) * 2017-09-15 2022-04-26 Kohler Co. Apparatus controlling bathroom appliance lighting based on user identity
KR102331886B1 (ko) * 2017-12-21 2021-11-29 삼성전자주식회사 네트워크에서 노드를 제어하는 전자 장치 및 제어 방법
CN110278547B (zh) * 2018-03-13 2022-04-08 博通集成电路(上海)股份有限公司 用于建立低功耗蓝牙网状网络的装置和方法
US10785672B2 (en) * 2018-09-11 2020-09-22 WiSilica Inc. Dynamic wireless network topology for reduced spectrum flooding
EP3850819A1 (en) * 2018-09-13 2021-07-21 Telefonaktiebolaget Lm Ericsson (Publ) A method of and devices for supporting selective forwarding of messages in a network of communicatively coupled communication devices
US11269695B1 (en) * 2019-01-18 2022-03-08 Kioxia Corporation Low-power scalable nodes
CN109902091B (zh) * 2019-02-21 2021-08-10 腾讯科技(深圳)有限公司 数据区块在区块链上记录的方法、领导记账节点和介质
US10972966B2 (en) * 2019-03-27 2021-04-06 Kabushiki Kaisha Toshiba Managed flooding for bluetooth mesh networks
US11172498B2 (en) * 2019-09-18 2021-11-09 Kabushiki Kaisha Toshiba Method of generating a communication schedule for nodes in a multi-hop network
CN112584364B (zh) * 2019-09-30 2024-03-08 阿里巴巴集团控股有限公司 蓝牙网络及其通信方法、设备和存储介质
US20210352764A1 (en) * 2020-05-06 2021-11-11 Abl Ip Holding, Llc Provisioning a smart device in an existing secure network without using a cloud service

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020044549A1 (en) * 2000-06-12 2002-04-18 Per Johansson Efficient scatternet forming
US20040064522A1 (en) * 2002-10-01 2004-04-01 Zheng Zhang Placing an object at a node in a peer-to-peer system based on a zoom-in algorithm
US20170310596A1 (en) * 2012-09-25 2017-10-26 A10 Networks, Inc. Load distribution in data networks
WO2015166307A1 (en) * 2014-05-01 2015-11-05 Nokia Technologies Oy Method and apparatus for connecting to a node of a mesh network
US20160066137A1 (en) * 2014-09-03 2016-03-03 CloudLeaf, Inc. Systems, methods and devices for asset status determination
US20180124550A1 (en) * 2015-03-24 2018-05-03 Lg Electronics Inc. Method and device for transmitting/receiving data in mesh network using bluetooth
US20170295455A1 (en) * 2016-04-11 2017-10-12 Lg Electronics Inc. Method and apparatus for transmitting and receiving data in mesh network using bluetooth
WO2018223408A1 (en) * 2017-06-06 2018-12-13 Hong Kong Applied Science and Technology Research Institute Company Limited Optimized deployment of ble network and power efficient and secure management of data exchange between ble devices
US20190073179A1 (en) * 2017-09-05 2019-03-07 Medea Inc. Electronic display band
CN110169015A (zh) * 2018-12-13 2019-08-23 阿里巴巴集团控股有限公司 在分布式系统中的网络节点之间达成共识
CN110178340A (zh) * 2018-12-13 2019-08-27 阿里巴巴集团控股有限公司 在分布式系统中进行网络节点的恢复处理

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SHWETA SAGARI: "Performance evaluation of mobile hotspots in densely deployed WLAN environments", 《IEEE》 *
施韦;李善平;杨朝晖;: "移动自组织网络中一种基于多点中继策略的优化泛洪广播算法", 计算机研究与发展, no. 06 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113207113A (zh) * 2021-04-20 2021-08-03 上海富芮坤微电子有限公司 多连接组网系统、方法、存储介质及电子设备
CN113453207A (zh) * 2021-06-21 2021-09-28 青岛海尔科技有限公司 身份类型确定方法、装置、存储介质及电子装置
CN113453207B (zh) * 2021-06-21 2024-03-22 青岛海尔科技有限公司 身份类型确定方法、装置、存储介质及电子装置
CN113660646A (zh) * 2021-06-24 2021-11-16 浙江大华技术股份有限公司 通信方法、网关设备及计算机可读存储介质
CN113660646B (zh) * 2021-06-24 2024-05-31 浙江大华技术股份有限公司 通信方法、网关设备及计算机可读存储介质
CN114040471A (zh) * 2021-12-09 2022-02-11 阳光学院 基于蓝牙网络的分布式拓扑控制方法及终端
CN114040471B (zh) * 2021-12-09 2023-12-29 阳光学院 基于蓝牙网络的分布式拓扑控制方法及终端
CN114157559A (zh) * 2021-12-15 2022-03-08 深圳绿米联创科技有限公司 网络处理方法、网络处理系统、电子设备及存储介质
CN114363939A (zh) * 2021-12-29 2022-04-15 上海庆科信息技术有限公司 节点模拟测试方法、装置、存储介质、处理器及设备
CN114363939B (zh) * 2021-12-29 2024-01-19 上海庆科信息技术有限公司 节点模拟测试方法、装置、存储介质、处理器及设备
CN114630403A (zh) * 2022-01-28 2022-06-14 浙江大华技术股份有限公司 一种信道选择方法、节点、系统及计算机可读存储介质
CN115884145A (zh) * 2022-11-24 2023-03-31 重庆长安汽车股份有限公司 一种蓝牙设备的组网方法和单/多蓝牙设备车辆的应用

Also Published As

Publication number Publication date
CN112584364B (zh) 2024-03-08
EP4038896A4 (en) 2023-10-25
US11576110B2 (en) 2023-02-07
EP4038896A1 (en) 2022-08-10
US20210099948A1 (en) 2021-04-01
WO2021067002A1 (en) 2021-04-08

Similar Documents

Publication Publication Date Title
CN112584364B (zh) 蓝牙网络及其通信方法、设备和存储介质
US11979274B2 (en) Network management method and apparatus
TWI759555B (zh) 待配網設備接入網路熱點設備的方法、裝置和系統
US10225098B2 (en) Methods, devices and systems for supporting wireless communication
US9907016B2 (en) Communication device
US9628691B2 (en) Method and apparatus for identifying a physical IoT device
JP6751094B2 (ja) 無線通信をサポートする方法、機器およびシステム
US20140295765A1 (en) Method for Transmitting Data Between Terminals and Terminal
RU2437240C2 (ru) Способ установления параметров связи, осуществляющее связь устройство, способ управления осуществляющим связь устройством и программа
KR101743195B1 (ko) 정보 제공방법, 장치, 프로그램 및 기록매체
CN109890065B (zh) 一种家电设备的组网方法及系统
US20150117260A1 (en) Method for communicating with other devices, and communication device
CN108781473B (zh) 一种在不同终端间共享文件的方法及设备
CN111263338B (zh) 蓝牙Mesh网络的配网方法与相关配网设备及系统
CN110855677B (zh) 配网方法及装置、电子设备及存储介质
JP7004649B2 (ja) 電子装置、電子装置の通信方法および移動端末機の通信方法
CN111741509A (zh) 配网方法及装置、存储介质、处理器
CN112469055A (zh) 设备配网方法、相关设备和存储介质
CN105933469B (zh) 用于智能设备的入网方法及装置、智能设备
CN111372222A (zh) 设备连接方法、系统以及相应的终端设备和服务器
US20230291799A1 (en) Method and Apparatus of Network Configuration for Internet-of-Things Device
EP3188418B1 (en) Near field discovery method, user equipment, and storage medium
KR102197851B1 (ko) 단말간 직접 통신에서 대상 발견 방법 및 장치
CN113596089B (zh) 设备的配网绑定方法和装置、存储介质及电子装置
CN113596792A (zh) 电子设备的绑定方法和装置、存储介质及电子装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant