CN107466478A - Ble网络的优化部署和ble设备之间数据交换的功效和安全管理 - Google Patents
Ble网络的优化部署和ble设备之间数据交换的功效和安全管理 Download PDFInfo
- Publication number
- CN107466478A CN107466478A CN201780000656.5A CN201780000656A CN107466478A CN 107466478 A CN107466478 A CN 107466478A CN 201780000656 A CN201780000656 A CN 201780000656A CN 107466478 A CN107466478 A CN 107466478A
- Authority
- CN
- China
- Prior art keywords
- ble
- equipment
- data
- ble equipment
- 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.)
- Granted
Links
Classifications
-
- 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
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/02—Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
-
- 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
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
- H04W52/0225—Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
- H04W52/0229—Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal where the received signal is a wanted signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
- H04W52/0225—Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
- H04W52/0248—Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal dependent on the time of the day, e.g. according to expected transmission activity
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明涉及一种用于管理蓝牙低功耗(BLE)设备之间数据交换的系统。本系统包括多个BLE设备。至少一个BLE设备被配置为父节点,至少一个BLE设备被配置为子节点。父节点被配置为接收一个BLE数据包,在BLE数据包的有效负载字段中包含子节点报告的数据,使用位置函数来确定有效负载字段中的一个位置,用于插入要从父节点报告的数据。通过将父节点的数据插入到BLE数据包的有效负载字段中的确定的位置,父节点将父节点要报告的数据和子节点报告的数据聚合,然后广播含有聚合数据的BLE数据包。
Description
技术领域
本发明涉及蓝牙低功耗(BLE)设备的通信技术,特别涉及BLE设备之间数据交换的功效和安全性的改进。
背景技术
作为Bluetooth 4.0规范的一部分而引入的蓝牙低功耗(BLE),是蓝牙短距离无线标准的一种低功耗变体。BLE的目的是提供一个极低功耗的无线系统。例如,BLE设备可以由硬币型电池供电。BLE设备所具有的低成本、稳健性和数据吞吐量使其成为工业、环境、汽车和医疗环境中的多种应用的一种极具吸引力的选择。
发明内容
虽然BLE设备通常由电池供电,但预计其电池使用寿命为数月甚至数年。因此,当将BLE设备部署为BLE网络的一部分时,功效(power efficiency)就是一个重要的因子,其中BLE设备被配置为与BLE网络的一个或多个其他节点进行通信。建立BLE网络时的另一个关注领域是网络负载效率。随着BLE设备数量的增加,通过BLE无线链路发送的数据量也增加。这种流量负载的增加会加大BLE设备的功耗,也会负面影响网络(例如,减慢流量并增加BLE网络内传输之间的冲突)。另外,BLE网络上通信的安全性是另一个关注领域,特别是当通信是广播通信时,这可能被未经授权的人拦截。
一方面,本公开为BLE网络中数据通信提供了高功效和安全技术。在某些方面,提供了一种部署BLE 网络并管理BLE设备之间数据交换的方法。在该方法的一个方面,可以根据树结构将BLE设备部署在BLE网络中,网络中的每个BLE设备可以被配置为确定一个时隙用于以广播模式交换数据。在所确定的时隙期间(例如,接收时隙和/或发送时隙),BLE设备可以唤醒以便与BLE网络的一个或多个其他设备进行数据交换,在该时隙之外,BLE设备可以进入睡眠模式以省电。
在该方法的其它方面,BLE网络的设备可以以改善网络流量效率的方式实施与BLE网络其它设备交换数据的技术。在这方面,不是将原始数据直接发送到目标(例如,发送的预期接收方),而是BLE网络中运行的设备可以将从BLE网络其它节点接收的数据(例如,从树结构的父节点或子节点接收的数据)汇总成单个广播包。这可以减少用于提供BLE设备数据所需的总包数,从而减少网络流量,但保留相同的信息量。
在该方法的另外的方面,BLE网络的设备可以实施加密和解密方法用于BLE网络设备之间的数据交换。因此,应当理解,本发明公开的方法和系统为传统BLE网络工业实践中存在的技术问题提供一种技术解决方案。此外,本发明公开的方法和系统对实施BLE技术的现有计算机化系统和过程提供了改进,表现为一个不同的过程。特别地,根据本公开的各个方面,为BLE设备和相关系统提供了新功能和能力,用于管理BLE设备和网络的部署,用于以增加网络流量效率的方式汇总多个BLE设备的数据,并且用于保护BLE设备之间的数据交换。
附图说明
为了更完整地理解本发明,现结合附图并参照以下描述,其中:
图1是本发明一个示例性的系统框图,该系统被配置为有能力和功能用于部署BLE网络并管理BLE 设备之间的数据交换;
图2显示一个示例性BLE设备;
图3显示本发明BLE网络的典型配置信息的表格;
图4a显示本发明的调度函数的一个示例性应用,用于确定BLE设备之间数据交换的计划时隙;
图4b显示本发明的调度函数的另一个示例性应用,用于确定BLE设备之间数据交换的计划时隙;
图5显示本发明的广播包的一个示例性格式;
图6a显示实施本发明一个方面而执行的示例方框图;
图6b显示实施本发明一个方面而执行的示例方框图;
图7a显示本发明的BLE广播数据包的用户定义的有效负载部分的示例性格式;
图7b显示本发明的BLE广播数据包的用户定义的有效负载部分的示例性格式;
图8是本发明的BLE广播数据包聚合的原理示意图;
图9a是本发明的对BLE设备之间交换数据进行加密的框图;
图9b是本发明的对BLE设备之间交换数据进行解密的框图;
图9c是本发明的对BLE设备之间交换数据进行加密和解密的框图;
图10显示实施本发明一个方面而执行的示例方框图;
图11显示实施本发明一个方面而执行的示例方框图;
图12显示实施本发明一个方面而执行的示例方框图。
具体实施方式
参考图1,图1是本发明配置的一个示例性BLE网络的框图,显示为系统100。系统100可以是BLE 网络内BLE设备的一个优化部署,可以在BLE设备本身之间以及BLE设备和网关之间提供高功效且安全的数据传输,这将在以下详细描述。如图1所示,系统100包括云服务器110、网关120、电子设备130和BLE设备150a-150e。
云服务器110可以包括处理器、存储器和通信接口(图中未显示)。存储器可以包括只读存储器(ROM) 设备、随机存取存储器(RAM)设备、一个或多个硬盘驱动器(HDD)、闪存设备、固态驱动器(SSD)、被配置为以持久性或非持久性状态存储数据的其它设备,或不同存储设备的组合。存储器可以存储指令,当该指令由处理器执行时,使处理器能够执行与云服务器110和系统100有关描述的操作。在这方面,云服务器110可以提供数据库功能给系统100的各个方面。例如,云服务器110可以存储部署在系统100中的BLE设备150a-150e和其它BLE设备(图1中未显示)的配置相关的配置信息,这将在以下详细描述。另外,云服务器110可以在其存储器内维护一个或多个数据库,其被配置为存储系统100内BLE设备生成的数据,例如由BLE设备150a-150e生成的数据。云服务器110的通信接口可以将云服务器110通信地连接到一个或多个其它设备,如网关120、电子设备 130、或通过有线或无线通信链路连接的其他设备(图1未显示),所述通信链路是根据一个或多个通信协议或标准(如蓝牙协议、以太网协议、传输控制协议/互联网协议(TCP/IP)、电气和电子工程师协会(IEEE)802.11协议和IEEE 802.16协议、第三代(3G)协议、第四代(4G)/长期演进(LTE)协议等)而建立的。
一方面,云服务器110可以是单个设备,其被配置成能够执行本发明有关云服务器110所述的操作。本领域技术人员将认识到,尽管图1将云服务器110显示为单个框,但云服务器110不限于实施在单个元件上,而是可以分布在多个元件上。例如,云服务器110的操作可以分布在多个设备上,这多个设备被配置为执行本发明的云服务器110的全部或一部分操作。在多个设备上实施云服务器110的功能可以增加系统100的可靠性/正常运行时间,例如,如果多个设备中的一个设备发生故障,云服务器110的操作还可以继续在该多个设备中的其它设备上运行。
电子设备130可以是智能电话、平板计算设备、个人计算设备、膝上型计算设备、台式计算设备、车辆计算机系统、个人数字助理(PDA)、智能手表、全球定位系统(GPS)设备等。电子设备130可以包括处理器、存储器、和通信接口(图中未显示)。存储器可以包括ROM设备、RAM设备、一个或多个HDD、闪存设备、SSD、被配置为能够以持久性或非持久性状态存储数据的其它设备、或不同存储设备的组合。存储器可以存储指令,当该指令由处理器执行时,使得处理器能够执行有关电子设备130所述的操作。
一方面,电子设备130可以生成配置信息,用于配置系统100内运行的设备,如网关120和BLE设备 150a-150e。例如,如图1所示,BLE设备150a-150e和网关120被布置成一个树结构,其中根据电子设备130生成的配置信息,系统100的设备被布置在树结构内。一方面,树结构可以包括一个或多个子树,其中每个子树以网关120作为子树的根,并将BLE设备布置为子树的节点。如以下详细描述的那样,通过将特定BLE设备分配到子树内的特定位置,电子设备130可用于配置树结构。另外,如以下详细描述的那样,电子设备130可用于修改一个或多个子树的配置,例如将BLE设备添加到一个或多个子树、从一个或多个子树中移除BLE设备、将BLE 设备从子树中的第一位置迁移到子树内的第二位置、和/或将BLE设备从第一子树重新分配到系统100的另一个子树。
一方面,电子设备130可以经由从用户接收的输入来生成配置信息。例如,电子设备130可以被配置为呈现一个图形用户界面(GUI),其可以用于确定对应于BLE设备150a-150e的配置的参数值。参照图3,以下详细描述用于确定在系统100内操作的BLE设备的配置的特定参数和参数值。在这方面,由电子设备130提供的 GUI可以经由在电子设备130上执行的应用程序来提供,其中应用程序可以作为指令被存储在电子设备130的存储器内。在这方面,一旦生成配置信息,电子设备130可以在云服务器110上存储配置信息。在这方面,配置也可以被存储在电子设备130里。
如以上简述,电子设备130可以用于改变系统100中设备的配置。例如,当前配置信息可以从电子设备130和/或云服务器110的本地存储器提取,并显示在电子设备130上的GUI上。需要注意的是,从云服务器110 提取的当前配置信息可以是先前由电子设备130生成并存储在云服务器110上的配置信息。使用当前配置信息填入GUI后,就可以改变、更新或以其它方式修改系统100设备的配置信息。因此,用于生成配置信息的电子设备 130提供的GUI可以用于向系统100添加新的BLE设备、从系统100移除BLE设备、修改系统100内的BLE设备之间的关系、或其它修改,这会在以下详述。当系统100内设备的配置被更新,就可以向云服务器110提供新的配置信息和/或将新的配置信息分发到系统100的设备上,以对系统100内设备的当前配置实施任何改变。一方面,GUI可以是基于web的界面,通过在电子设备130上执行web浏览器应用程序访问。一方面,基于web的界面可以由云服务器110提供。以下将详细描述根据配置信息来配置系统100的设备的其它方面。
网关120可以包括处理器、存储器和通信接口。存储器可以包括ROM设备、RAM设备、一个或多个 HDD、闪存设备、SSD、被配置为以持久性或非持久性状态存储数据的其它设备、或不同存储设备的组合。存储器可以存储指令,当该指令由处理器执行时,使处理器能够执行与网关120相关的操作。网关120的通信接口可以包括蓝牙接口,以便与系统100内的BLE设备进行通信。另外,网关120的通信接口可以包括其它通信接口,其被配置以便与云服务器110进行通信,例如基于IP的通信接口。一方面,网关120可以被配置成充当在云服务器110和系统100内的BLE设备之间的接口。在某些方面,网关120提供到系统100的一个或多个树结构的单个入口点,如上所述,可以被配置为一个或多个树结构中每个树结构的根。在某些方面,网关120可以是支持BLE 功能的设备,如智能电话、平板计算设备、个人数字助理(PDA)、交换机、路由器、膝上型计算机、台式计算机等。
参考图2,图2是一个示例性BLE设备的各方面的示意图,显示为BLE设备150。如图2所示,BLE 设备150可以包括处理器112和存储器114。存储器114可以包括ROM设备、RAM设备、一个或多个HDD、闪存设备、SSD、被配置为以持久性或非持久性状态存储数据的其它设备、或不同存储设备的组合。一方面,存储器 114可以存储指令116,当指令116由处理器112执行时,使得处理器112能够执行本发明的BLE设备的操作,如本文所述。一方面,BLE设备150可以包括用于提供具有实时时钟功能的模块或电路(图中未显示)。一方面,BLE 设备150可以包括一个或多个传感器118。传感器118可用于感测、观察、生成和/或收集数据,并且使用本发明的数据传输技术,数据可以经由网关120报告给云服务器110,这将在以下详细描述。
再参考图1,如上所述,由电子设备130生成的配置信息可用于确定BLE设备150a-150e的配置。一方面,电子设备130可以被配置为将配置信息提供给云服务器110,以经由网关120分发到BLE设备150a-150e。在其他方面,电子设备130可以是一个具支持BLE功能的设备,配置信息可以通过电子设备130直接提供给BLE 设备150a-150e。
如上所述,系统100内的BLE设备可以根据配置信息被布置在一个树结构中。图3显示一个表格,其包括示例性参数配置信息,用于根据本发明配置子树。如图3所示,配置信息可以包括与设备子树ID、子ID、父设备地址、子设备地址、兄弟ID、后代子ID、实时值、距离网关值、和安全密钥值(k)有关的参数。需要注意的是,尽管图3显示了配置信息的具体参数和参数值,用于根据本发明将设备配置为子树,但图3所示的具体参数和参数值是用于描述目的,而不是用于限制,在本发明的某些方面,系统100可以使用其他参数或更少参数。因此,本发明不限于图3所示的具体参数和参数值。
对于一个给定的节点,子树ID参数可以确定该节点属于的子树的ID。例如,参考图1,由BLE设备 150a-150e形成的子树的子树ID可以是1。如图3所示,节点A-E的子树ID是1。在某些方面,可以添加另一个 BLE设备(图中未显示)并被配置为网关120的一个额外子节点。在这些方面,该额外子节点和该额外子节点的后代的任何后续节点可以被配置为子树ID为2的第二子树的一部分。
一个特定节点的子ID可以确定该特定节点的ID。例如,分别对应于BLE设备150a-150e的节点A、B、 C、D和E的子ID分别为1、2、3、4和5。在某些方面,网关120的子ID可以默认为0。
子节点的父设备地址参数可以确定每个子节点的父节点设备的地址。例如,节点A(如图1的BLE设备150a)的父设备地址参数的值,可以确定网关(如图1的网关120)的地址,节点B(如图1的BLE设备150b) 的父设备地址参数的值,可以确定节点A(如图1的BLE设备150a)的地址,节点C(如图1的BLE设备150c) 的父设备地址参数的值,可以确定节点A(如图1的BLE设备150a)的地址,节点D(如图1的BLE设备150d) 的父设备地址参数的值,可以确定节点A(如图1的BLE设备150a)的地址,以及节点E(如图1的BLE设备 150e)的父设备地址参数的值,可以确定节点D(如图1的BLE设备150d)的地址。一方面,父设备地址参数的地址值可以被确定为一个蓝牙地址,但该地址也可以被确定为可由BLE设备寻址的任何格式。
一个特定节点的子设备地址参数可以确定该特定节点的所有子节点的地址。例如,对于节点A,配置信息的子设备地址字段可以确定节点A的子节点如节点B、C、D的地址。一方面,子设备地址参数可以确定多个地址(诸如当节点有多个子节点时),或者可以确定单个地址(诸如当节点有单个子节点时,例如,节点D有单个子节点(节点E))。另外,可以使用一个空值来确定一个没有任何子节点的节点,如节点E。需要注意的是,图 3表格所示的诸如“A、B、C、D、E”的地址值,表示相应BLE设备节点的地址,其可以是蓝牙地址,或可由 BLE设备寻址的另一种格式。
一个特定节点的兄弟子ID参数可以确定该特定节点的所有兄弟节点的ID,其中特定节点的兄弟节点是指与该特定节点相同的父节点的子节点。例如,节点B是节点A的子节点。节点C和D(分别有子ID为3和4) 也是节点A的子节点。在这种情况下,节点B的兄弟ID就包括节点C和D的ID,即3和4。在节点A和E的情况下,其没有兄弟节点,则可以使用一个空值来确定没有任何兄弟节点的节点。一方面,一个树结构可以包括多个子树。在这方面,任何子树的顶部BLE设备可以是其它子树的顶部BLE设备的兄弟节点,其它顶部BLE设备的ID可以包含在该顶部BLE设备的兄弟ID字段中。
一个特定节点的后代子ID参数可以确定该特定节点的所有子节点的ID,以及该特定节点的任何子节点的后续子节点的ID。例如,节点A有三个子节点,即节点B、C和D,节点D也有一个子节点,即节点E。在这种情况下,节点A的后代子ID参数的值可以确定节点B、C和D以及节点E的ID,即2、3、4和5。
需要注意的是,本文讨论的BLE设备节点的父子关系是相对于网关来描述的。即是说,对于要配置为父节点和子节点的两个BLE设备,更靠近网关的那个BLE设备将被视为父节点。例如,参考图1,BLE设备150d 和150e要被配置为父节点和子节点。BLE设备150d更靠近网关,被配置为父节点。
可以使用实时参数来确定同步值。同步值可以用于在系统100内的设备进行时间同步。一方面,实时参数可以是在系统100内配置一个BLE设备后过去的一个预定时间的毫秒数。例如,一个BLE设备的实时参数可以是从1970年1月1日(其是配置BLE设备的时间)起过去的毫秒数。例如,对于一个配置为1970年1月1日之后1分钟的BLE设备,BLE设备的实时参数值可以为60,000(毫秒)。在某些方面,如果BLE设备尚未同步,则实时参数将为默认值,例如-1。
距离网关参数可以确定从一个特定节点到网关所需的跳数。例如,参考图1,一个数据包从节点E发送,跳到节点D,然后跳到节点A,然后跳到网关,总共是3跳。从节点C,数据包只需要2跳就能到达网关。
安全密钥参数可以确定一个共享密钥,其可以用于系统100内的加密和解密传输,以下将有更深入的描述。共享密钥可以存储在BLE网络中的每个BLE设备里。一方面,共享密钥可以是一个128比特的加密密钥。在某些方面,系统100可以包括多个子树,每个子树可以使用同一共享密钥(k)。在某些方面,当系统100包括多个子树时,安全密钥参数可用于为不同子树确定不同的共享密钥。例如,由外部系统访问树结构,可以通过为外部系统配置一个子树并为该子树确定一个共享密钥,而为其它子树确定一个不同的共享密钥,来进行管理。
如以下详述,根据树结构配置系统100的设备能够节省电力、改善网络负载效率以及提高数据安全性。但是,配置两个BLE设备作为父节点和子节点可以不是任意决定的。一方面,如果两个BLE设备之间的信号强度满足一个阈值,那么这两个BLE设备可以被配置为父节点和子节点。一方面,阈值可以是预设的,或可以取决于实施时的系统要求。例如,在某些方面,阈值可能与接收信号强度指示(Received Signal Strength Indicator,RSSI) 有关,可以确定阈值为-100dBm。因此,当在两个BLE设备之间的RSSI≥-100dBm时,这两个BLE设备可以被分派为系统100中的一个子树的父节点-子节点。需要注意的是,使用RSSI作为分配节点为父节点-子节点的参数,是为了说明而不是限制,也可以使用其它标准以在系统100的子树内布置节点。例如,在系统100的子树内的节点可以这样安排,使得每个父BLE设备的子BLE设备的数量是均匀分布的。当父BLE设备有较多子BLE设备时,父BLE设备会以较快的速度消耗能量,导致在系统100内产生热点。因此,将子BLE设备负载平衡以将它们均匀分布在多个父BLE设备周围,能够减少产生热点的可能性,并提高系统100的功效。
一方面,当将BLE设备分配给系统100的一个或多个子树时,要考虑每个BLE设备生成的数据的大小。例如,一方面,由系统100的一个子树支持的BLE设备的最大数目可以根据以下公式来确定:(s-h)/d,其中s对应于数据包的大小(以比特为单位),h对应于数据包的标头的大小(以比特为单位),而d对应于每个BLE 设备的数据的大小(以比特为单位)。考虑每个BLE设备生成的数据的大小,可以使BLE设备以这种方式分配给子树:允许有效使用每个数据包的数据有效负载。例如,如以下详细描述的那样,在系统100中发送的数据包可以包括一个数据有效负载字段,其用于承载由系统100的子树的一个或多个BLE设备生成的数据,其中数据有效负载字段可以是一个特定的尺寸。因为给系统100的子树分配BLE设备时考虑了BLE设备生成数据的大小,所以给系统100的子树分配BLE设备时,使得对于一个特定的子树,在数据有效负载字段中存在足够空间来承载由该特定子树的所有BLE设备生成的数据。
此外,在建立系统100的子树时,重要的是要最小化任何特定子树中的节点总数,并最小化从任何特定节点到达网关所需的跳数。通过优化BLE设备的父-子节点对,可以通过使用最少数量的BLE设备来覆盖一个特定区域。当BLE设备父-子节点对的信号强度大大满足阈值时,可以通过移除一个BLE设备或多个BLE设备来改变布置,导致在剩余的BLE设备父-子节点之间的信号强度更低,从而最小化系统100内的BLE设备的数目。一方面,可以在现场确定BLE设备父-子节点对之间的信号强度,或者根据提议的部署来进行估计。一方面,阈值可以根据系统要求来确定,例如预算需求、使用的设备类型、地理要求、空间要求、功率要求等。另外,确定BLE 设备父-子节点对的信号强度是否大大满足阈值,可以根据阈值的百分比(如10%、30%等)、一个预定值、或基于部署时的系统要求的一些其它值来确定。
再参考图1,BLE设备150a-150e可以被配置成互相进行通信。如图1所示,每个设备150a-150e可以与另一个BLE设备建立通信。例如,BLE设备150d可以与BLE设备150a通信,其中BLE设备150a是相对于BLE设备150d的父节点。在某些方面,BLE设备150a-150e还可以被配置成与网关120进行通信。需要注意的是, BLE设备150a-150e之间以及BLE设备150a-150e和网关120之间的通信可以是经由蓝牙协议进行。蓝牙技术,如BLE,通常用于短距离、低功耗设备到设备的通信。在系统100中,BLE设备150a-150e的部署可以用来提供一个覆盖区域,例如一个购物中心,需要大量的BLE设备。根据BLE规范,BLE设备可以以两种模式进行通信:广播模式和连接模式。广播模式是单向数据广播,其中BLE设备充当广播机,广告数据。与连接模式相比,广播模式发送数据的功效更高,因为连接模式涉及包括发现和连接过程的双向数据交换。为了减少系统100中的设备功耗,BLE设备150a-150e可以被配置成使用广播模式来传送数据。
在BLE堆栈,广播者是一个不可连接的广告者,观察者是一个扫描设备,扫描广告但不启动连接以接收数据。在广播模式下,一个BLE设备充当广播者,广告一个广播数据包,其有效负载字段携带有数据。一方面,有效负载字段可以是31字节的大小。在某些方面,有效负载字段可以是大于或小于31字节的大小。广播数据包的有效负载字段可以是用户定义的,例如由BLE设备产生的数据。在广播模式下,其它BLE设备可以作为观察者,扫描由另一个BLE设备的广播所广告的数据传输。在广播模式下,没有发现或连接过程。
一方面,在系统100内广播和/或接收的数据可以包括由一个或多个BLE设备150a-150e生成的数据。例如,如上所述,BLE设备150a-150e可以包括传感器,其可以用于生成数据,被传送到云服务器110用于存储,和/或由一个或多个其它系统(图1中未显示)访问。一方面,由BLE设备150a-150e产生的数据可以包括状态数据、环境数据、压力数据、温度数据、湿度数据、健康相关数据、健身相关数据、接近度数据、功率数据等。本领域普通技术人员将理解,有许多其它类型的数据,可以由BLE设备感测和/或产生,在此所述的示例性的类型数据是用于说明目的而不是用于限制。
如上所述,可以以优化功率和流量负载效率的树结构布置来部署网关120和BLE设备150a-150e。在图1所示的树结构中,网关120被配置为树的根节点。有树结构的单个进入点,且类似地有单个出口点,可以允许与树/在树内部进行更有效的数据交换,因为树结构可以包括多个节点和多个子树。
再如图1所示,BLE设备150a-150e中的每个BLE设备都可以被配置为树结构的节点。例如,BLE设备150a-150e可以分别被配置为节点A-E。一方面,BLE设备150a-150e中的一个BLE设备可以被配置为其它BLE 设备的父节点,也可以是其它BLE设备的子节点。例如,BLE设备150a被配置为父节点A,BLE设备150b-150d 被配置为子节点B、C和D。BLE设备150e被配置为节点D的子节点E。此外,BLE设备150a-150e还可以被配置为网关120的子节点。例如,BLE设备150a被配置为网关120的子节点A。在某些方面,一个BLE设备既可以是父节点,也可以是子节点。例如,BLE设备150d被配置为节点D。如图1所示,节点D是节点E的父节点,它也是节点A的子节点。一方面,一个BLE设备可以被配置为有多个子节点,但一个BLE设备不可以被配置为多个父节点的一个子节点。
一方面,在系统100内数据可以双向通信。例如,父节点A和子节点D可以建立通信160d以交换数据。需要注意的是,由于本文披露的技术,可以不使用低功效的BLE连接模式来实现在父-子节点对的BLE设备之间的双向通信,而是使用一种采用BLE广播模式的广播机制来实现这种通信。
一方面,需要管理使用广播模式的BLE设备之间的数据交换以提高BLE网络的功效。在运行期间,每个BLE设备可以使用一个调度函数(schedule function)来计算一个与其它BLE设备交换数据的计划时隙。在这些方面,每个BLE设备可以在计算的计划时隙上唤醒以从子节点或父节点接收数据,或者向子节点或父节点发送数据。在计算的计划时隙之外的时间,BLE设备保持睡眠模式以节省电力。
一方面,在计划时隙期间交换的数据可以包括从网关发送到该BLE设备的命令。例如,参考图7b,显示了示例行命令。一方面,可以使用用户定义的有效负载700的类型部分750来确定一个命令。例如,值“0x1000”可用于确定“获取电池状态”命令,值“0x2000”可用于确定“获取湿度”命令,和/或值“0x3000”可用于确定“获取温度”命令。需要注意的是,这里使用特定命令和值来确定这些命令,是为了进行说明而不是用于限制,,可以使用其它命令和命令值来确定系统100的BLE设备的命令。如以下进一步讨论的,在某些方面,命令可以被寻址到一个特定的BLE设备、一个BLE设备的子集、或者在某些情况下的所有BLE设备。在某些方面,从子节点发送到父节点的数据可以包括一个子节点BLE设备要向网关报告的数据。在某些方面,从子节点向父节点报告的数据可以是根据一个命令而产生的数据。将BLE设备发送的数据聚合成网关的单个广播数据包的技术将在以下深入讨论。
一方面,用于确定交换数据(包括从网关发送到BLE设备的命令)的计划时隙的调度函数可以由以下公式确定:
Tn=Tg+Th*dn (1)
其中:
Tn=BLE设备n的计划时隙;
Tg=从网关发送数据的预定时间;
Th=在任何BLE设备对之间交换数据所允许的时限;和
dn=在BLE设备n和网关之间的节点数。
只要在一对BLE设备(包括网关)之间要进行数据交换(包括来自网关的命令数据),就可以使用公式(1)。公式(1)可用于确定将数据发送到子节点的计划时隙,也可以用于确定从父节点接收数据的计划时隙。
图4a显示公式(1)在BLE网络的一个应用,其中数据(包括来自网关120的命令数据)将在系统100 的节点A-D之间进行交换。在所示的例子中,从网关120发送数据的预定时间Tg是早上3:00点。在任何BLE设备对之间交换数据的允许时限Th为1分钟。在该示例中,公式(1)被应用到网关120和节点A。对于网关节点 120,该公式产生一个计划时隙03:00+0:01*0=03:00,即早上3:00点。因此,网关120从早上3:00至早上3:01 发送数据到子节点A。对于节点A,该公式产生一个计划时隙03:00+0:01*1=03:01=3:01。因此,节点A在早上3:01至早上3:02的预定时隙期间将数据发送到子节点B-D。需要注意的是,在早上3:01到早上3:02的计划时隙之外,除了用于发送或接收其它数据的其它计划时隙,节点A处于睡眠模式,仅在其计划时隙期间唤醒以将数据从网关120发送到节点B-D。
需要注意的是,图4a的例子描述了向下游方向的数据交换,即从网关120开始流向子节点。因为节点 B、C和D本身没有子节点,所以不需要确定这些节点中每个节点的发送数据的计划时隙,因为数据不从这些节点发送。
如上所述,节点可以使用公式(1)来计算一个计划时隙,用于将网关命令数据发送到子节点,一方面,节点也可以使用公式(1)来计算一个计划时隙,用于从父节点接收网关命令数据。在这些方面,节点在该接收数据的计划时隙之外的时间都处于睡眠(除了用于发送或接收其他数据的其它计划时隙之外),且仅在其计划时隙期间唤醒以从父节点接收数据。例如,到网关的距离为2的节点B-D,可以使用公式(1)来计算计划时隙,用于接收数据(包括在早上3:00从网关120发送的命令数据)。在该例子里,应用到节点B-D的公式(1)产生一个计划时隙03:00+0:01*1=03:01=3:01am,用于从父节点A接收数据。节点B-D在计划时隙之外的时间处于睡眠,在早上3:01唤醒以从父节点A接收数据。
在某些方面,可以使用调度函数来确定一个计划时隙,用于将子节点BLE设备的数据报告给网关,在这些方面,调度函数可以由以下公式确定:
Tn=Tg-Th*dn (2)
其中:
Tn=BLE设备n的计划时隙;
Tg=在网关接收数据的预定时间;
Th=在任何BLE设备对之间交换数据允许的时限;和
dn=BLE设备n和网关之间的跳数。
只要在一对BLE设备(包括网关)之间要进行数据交换(包括BLE设备要报告数据给网关),就可以使用公式(2)。公式(2)可用于确定将数据发送到父节点的计划时隙,也可以用于确定从子节点接收数据的计划时隙。比如本文使用的状态数据可以是指由一个BLE设备报告给网关的BLE设备数据。状态数据可以包括由BLE设备收集的数据,如由一个或多个传感器BLE设备产生的数据(如湿度、压力、温度等),还可以包括该BLE设备的状态条件,如该BLE设备的电池状态,或有关该BLE设备的硬件和/或软件的其它信息。
图4b描述了公式(2)在BLE网络的一个应用,其中数据(包括从节点A-D报告给网关120的数据) 将在系统100的节点之间进行交换。在所示的例子中,网关120接收数据的预定时间Tg是上午7:00。任何一对 BLE设备之间交换数据的允许时限Th为1分钟。在该示例中,公式(2)被应用于节点A-D。对于到网关距离为 2的节点B-D,该公式产生一个计划时隙07:00-0:01*2=06:58=6:58am。因此,节点B-D从上午6:58至上午6:59 将数据发送给父节点A。对于节点A,该公式产生一个计划时隙07:00-0:01*1=06:59=6:59am。因此,节点A 在上午6:59至上午7:00的计划时隙期间将数据(包括来自节点B-D的数据)发送到网关120。需要注意的是,在其计划时隙之外,除了用于发送或接收其它数据的其它计划时隙,节点A-D都处于睡眠模式,仅在其计划时隙期间唤醒以将数据发送到其相应的父节点。还应注意的是,图4b的例子描述了向上游方向的数据交换,即流向网关 120。因为网关120没有父节点,所以不需要确定从网关120发送数据的计划时隙。
在图4b所示的例子中,节点B-D是兄弟节点。这些节点都是节点A的子节点。在这种情况下,有可能会存在数据包冲突,因为每个节点B-D都将被安排同时向父节点A发送数据。为了避免这种情况,可以实施数据包冲突避免。在某些方面,数据包冲突避免可以包括:将一个随机时间添加到每个兄弟节点的确定的计划时隙。在该方面,添加的随机时间会导致兄弟节点的不同计划时隙。在某些方面,添加到兄弟节点计划时隙的该随机时间可以是0至3,000毫秒范围内的任何值。
如上所述,节点可以使用公式(2)来计算一个计划时隙用于向父节点发送数据,在某些方面,节点还可以使用公式(2)来计算一个计划时隙用于从子节点接收数据。在这些方面,除了用于发送或接收其它数据的其它计划时隙,节点在接收数据的计划时隙之外的时间都处于睡眠,仅在其计划时隙期间唤醒以从子节点接收数据。例如,节点A可以使用公式(2)来计算一个计划时隙,用于从节点B-D接收要报告给网关120的数据。网关120 接收数据的时间被安排在上午7:00。在该示例中,应用到节点A的公式(2)产生一个预定时隙07:00-0:01*2=06:58 =6:58am,用于从子节点B-D接收数据。节点A在该计划时隙之外处于睡眠,在上午6:58唤醒以从子节点B-D 接收数据。
图5描述了根据本发明传输的一个BLE广播数据包510的例子。在某些方面,BLE广播数据包510可以包括前导码、接入地址、PDU字段520、和CRC字段。PDU字段520可以包括标头、MAC地址和数据字段530。数据字段530可以包括标头540和有效负载数据550。在某些方面,标头540定义参数字段,其可用于将BLE广播数据包510寻址到BLE网络中的一个特定BLE设备或所有BLE设备。标头540可以包括5个字节,且可以包括一个单字节序列字段(字节0),其可以包括一个任意数字。序列字段中的值“0xFF”可以被保留用于确认数据包。一方面,标头540的字节1可用于定义一个目标子树ID。例如,目标子树ID字段中的值“0x01”可以将子树1确定为BLE广播数据包510的目标。在某些方面,子树ID字段中的值“0xFF”可以被保留用于确定所有子树作为目标子树。
标头540的字节2可用于定义一个目标子ID。例如,目标子ID字段中的值“0x01”可以将子ID为1 的节点A确定为BLE广播数据包510的目标。需要注意的是,在某些方面,子ID被定义为子树ID字段中确定的子树。在某些方面,子ID字段中的值“0xFF”被保留用于将所有子ID确定为目标节点。标头540的字节3-4确定数据包的类型。在某些方面,数据包的类型可以是命令,如以上图7b所述。有效负载数据550可用于包含和聚合要传输到网关120和云服务器110的数据,或者包括要发送到BLE设备的网关命令数据。
通过定义目标子树ID和目标子ID,BLE广播数据包510的格式允许通过确定目标BLE设备的子树ID 和子ID来将BLE广播数据包510寻址到一个特定BLE设备,尽管该数据包已经以广播模式被发送。此外,通过保留“全部子树”和“所有子ID”值,可以保留广播模式的广播功能。例如,如图5所示,BLE广播数据包512 通过确定子树ID=“0x01”和子ID=“0x01”分别寻址到子ID为1并属于子树1的BLE设备A。BLE广播数据包514可以通过确定子树ID=“0xFF”和子ID=“0xFF”而寻址到BLE网络树结构中的所有BLE设备。
图5还显示来自网关的BLE广播数据包516,其具有序列值0x00,并单独寻址到BLE设备A。一旦接收到BLE广播数据包516,设备A就广播BLE广播数据包516,单独寻址网关,通过确定序列字段中的值“0xFF”,以确认接收到BLE广播数据包516。
图6a和6b是实施本发明一个方面的流程示意图。该示例的过程详细描述了BLE网络节点之间(包括来自网关的命令数据)的数据交换。需要注意的是,图6a所示的示例过程,可以在一个节点上实施,该节点计划将数据发送到另一个节点。例如,图6a的过程可以由父节点A实施,其计划向其子节点B、C和D发送数据。另外,图6b所示的示例过程,可以在一个节点上实施,该节点计划从另一个节点接收数据。例如,图6b的过程可以由子节点、任一个节点B、C和D来实施,其计划从父节点A接收数据。父节点A可以根据图6a所示的过程将数据发送到子节点B、C和D。
在步骤600,BLE设备A处于睡眠模式。本文使用的睡眠模式是指降低功率使用的设备状态。在某些方面,睡眠模式可以包括关闭BLE设备的所有功能,或者可以仅关闭选择功能,如通信功能、数据收集功能等。 BLE设备A有要被发送到其子节点B、C和D的数据,还有一个用于发送该数据的计划时隙。在步骤610,处于睡眠模式时,BLE设备A确定是否已经到达计划时隙。在某些方面,确定是否已经到达计划时隙可以包括:将BLE 设备的当前时间与计划时隙进行比较,或者可以包括:接收一个指示已经到达计划时隙的信号。
在步骤620,BLE设备A退出睡眠模式并在计划时隙唤醒。在某些方面,唤醒可以是指打开睡眠模式期间关闭的所有功能,或者可以包括:仅打开一部分功能。例如,BLE设备A可以通过仅打开其通信功能来唤醒,但保留其它功能关闭,如数据收集功能。
在步骤630,BLE设备A广播数据到其子节点B、C和D。在某些方面,广播数据包可以有如以上图5 所述的格式。在将数据广播到子节点B、C和D之后,BLE设备A可以等待来自这些子节点的确认数据包。在某些方面,确认数据包可以有如以上图5所述的格式。在某些方面,可以提供一个超时参数,指示BLE设备要等待来自子节点的确认数据包的一定时间量。在步骤640,BLE设备A确定是否已经达到由超时参数确定的超时值,或者是否已经从所有子节点接收到广播数据包的确认数据包。如果达到超时,或者如果从所有子节点接收到广播数据包的确认数据包,则BLE设备再次进入睡眠模式。在某些方面,超时值可以小于在任何BLE设备对之间交换数据的允许时限(例如,超时值可以小于以上公式2中的Th值)。
在步骤650,BLE设备B、C和D处于睡眠模式。BLE设备B、C和D有一个计划时隙用于从父BLE 设备A接收数据。在某些方面,来自父BLE设备A的数据可以寻址到BLE设备B、C和D中任何一个BLE设备的后代。例如,来自父BLE设备A的数据可以被寻址到BLE设备D的子节点。在步骤660,处于睡眠模式时, BLE设备B、C和D确定是否已经达到计划时隙。在某些方面,确定是否已经达到计划时隙可以包括:将BLE设备的当前时间与计划时隙进行比较,或者可以包括:接收一个指示已经达到计划时隙的信号。
在步骤670,BLE设备B、C和D退出睡眠模式,开始扫描来自父BLE设备A的广播数据包。在某些方面,唤醒可以是指打开睡眠模式期间关闭的所有功能,或者可以包括:仅打开一部分这些功能。例如,BLE设备A可以通过仅打开其通信功能来唤醒,但保留其它功能关闭,如数据收集功能。
在步骤680,BLE设备B、C和D从父BLE设备A接收广播数据包。在某些方面,广播数据包可以有如以上图5所述的格式。在步骤690,在接收到广播数据包之后,BLE设备B、C和D生成一个确认数据包,并将其向父BLE设备A广播。在某些方面,确认数据包可以在一个预定时段内广播,或直到达到一个超时条件时广播。一方面,该预定时间段可以小于该超时值。确认数据包可以有如以上图5所述的格式。一旦广播时段到期, BLE设备B、C和D中每个BLE设备再次进入睡眠模式。
参考图7a,图7a显示BLE用户定义的有效负载700的一个BLE广播数据包的数据包格式。需要注意的是,图7a的用户定义的有效负载700可以对应于图5的BLE广播数据包510的PDU部分520的数据字段530。一方面,BLE用户定义的有效负载700可以包括最多31个字节,并且可以是用户定义的。但是,需要注意的是,在某些方面,BLE用户定义的有效负载700可以包括大于或小于31个字节。在这方面,BLE设备的数据可以由单个比特(例如,“开”/“关”)表示。在这方面,BLE设备的数据可以由一个以上的比特表示。利用较多比特来表示BLE设备的数据可以使BLE设备能够提供更复杂的数据。在某些方面,BLE网络中所有BLE设备的数据大小相同。根据本披露,当从BLE网络中BLE设备报告数据时,BLE设备可以将要发送到网关的数据聚合到单个数据包中,而不是为每个BLE设备创建一个新的数据包。本文披露的技术将导致网络负载减少,但同时保持相同数量的信息传输。
BLE用户定义的有效负载700的格式可以参照以上图5所述的格式。BLE用户定义的有效负载700可以包括具有序列字段的标头、子树ID字段、子ID字段、类型字段,还可以包括数据段710。在某些方面,数据段710可以包括BLE用户定义的有效负载700的字节5-30或比特40-247。
在某些方面,通过将数据插入到BLE用户定义的有效负载700的数据段710的特定部分,同时保持任何先前插入的来自其它后代BLE设备的数据,可以将一个BLE设备的数据聚合到一个现有BLE广播数据包中。在这些方面,父BLE设备可以从子BLE设备接收一个BLE广播数据包。该BLE广播数据包可以在数据段中包括该子BLE设备的数据。在某些方面,该BLE广播数据包还可以包括该父BLE设备的任何后代BLE设备的数据。例如,参照图1,节点A的BLE设备150a从节点D的BLE设备150d接收一个BLE广播数据包。在该示例中,由BLE设备150a接收的BLE广播数据包可以在数据段中包括BLE设备150d的数据,还可以包括BLE设备150e (BLE设备150a的后代)的数据。
参照图7a,BLE设备将数据聚合到BLE用户定义的有效负载700的数据段710中,可以使用以下公式找到数据段710的特定部分以插入数据:
[Sb,Eb]=[h+(n-1)*d,h+(n*d)-1] (3)
其中:
[Sb,Eb]=将数据插入到BLE用户定义的有效负载的数据段的部分,Sb是起始位,Eb是终止位;
h=BLE用户定义的有效负载的标头的大小(以比特表示);
n=插入数据的BLE设备的子ID;和
d=BLE网络中BLE设备的数据状态的大小(以比特表示)。
需要注意的是,在某些方面,一个由子树支持的BLE设备的最大数目由(s-h)/d确定,其中s=BLE用户定义的有效负载的大小。
图8显示公式(3)应用的一个例子,用于寻找BLE用户定义的有效负载700的数据段710的部分,以将BLE设备A-E的数据聚合在单个BLE广播数据包中,然后将该数据报告给网关120。在此例子中,每个BLE 设备A-E使用2个比特来表示其数据,所有BLE设备A-E有相同值“01”。BLE设备A、B、C、D和E可以分别有子ID 1、2、3、4和5,用户定义的有效负载的标头大小是40比特。在该例子中,BLE设备E生成广播数据包 810,使用公式(3)可以确定其数据插入到比特[40+(5-1)*2,40+(5*2)-1]=[48,49]。BLE设备E将值“01”插入到广播数据包810的用户定义的有效负载的比特[48,49]中,并将广播数据包810向BLE设备D广播。
BLE设备D接收来自BLE设备E的广播数据包810,广播数据包810包括用户定义有效负载的比特 [48,49]中的BLE设备E的数据。BLE设备D使用公式(3)来确定其数据插入到比特[40+(4-1)*2,40+(4*2) -1]=[46,47]中。BLE设备E将值“01”插入到广播数据包812的用户定义的有效负载的比特[46,47]中,不改变比特[48,49]中的值(对应BLE设备E的数据)。接着,BLE设备D将广播数据包812开始向BLE设备A广播,广播数据包812包括BLE设备D和E的聚合数据。使用与上述相同的过程,BLE设备B和C生成包括数据的广播数据包814和816,并将其开始广播到BLE设备A。
BLE设备A分别接收来自BLE设备D、C和B的广播数据包812、814和816,包括用户定义的有效负载的比特[48,49]中的BLE设备E的数据、比特[46,47]中的BLE设备D的数据、比特[44,45]中的BLE设备C的数据、和比特[42,43]中的BLE设备B的数据。BLE设备A使用公式(3)来确定其数据插入到用户定义的有效负载的比特[40+(1-1)*2,40+(1*2)-1]=[40,41]中。BLE设备A将值“01”插入到广播数据包812的用户定义的有效负载的比特[40,41]中,但不会改变比特[42,49]中的值(对应BLE设备B-E的数据)。接着,BLE设备D 可以广播单个广播数据包818,其包括到网关的BLE设备A-E的聚合数据。
需要注意的是,如果不使用本文披露的技术,每个BLE设备一旦从一个子节点接收到一个广播数据包,都将生成一个新的广播数据包以发送子节点的数据。然后,该BLE设备将创建另一个广播数据包来报告其自己的数据。因此,如果不使用本文披露的技术,报告所有BLE设备A-E的数据将需要使用至少9个广播数据包。如果使用本文披露的聚合技术,可以仅使用5个广播数据包810-818来报告所有BLE设备A-E的数据。
根据本披露的另一方面,提供了一种在BLE设备之间进行安全数据交换的技术。为了提高安全性并防止未授权访问广播数据,可以在BLE设备之间交换数据期间对数据包进行加密和解密。需要注意的是,本文披露的在BLE设备之间进行安全数据交换的技术可以应用到上述数据交换操作和数据聚合操作。在某些方面,对广播数据包加密可以包括:对整个广播数据包加密。在其它方面,对广播数据包加密(以及解密)可以包括:仅对广播数据包的一部分加密(或解密)。例如,仅对广播数据包的用户定义的有效负载加密。仅对用户定义的有效负载的内容(即,由BLE设备产生的数据)加密和解密可以降低BLE设备的功耗,同时保护数据传输的重要方面,即由BLE设备产生的数据。
参照图9a,图9a显示BLE设备对数据包进行加密的一个函数E(Ke,m),其中m是要加密的有效负载,Ke是一个可以由BLE设备导出的演进加密密钥。在某些方面,BLE设备可以将该加密函数用于一个要发送的广播数据包,然后广播加密的数据包。在某些方面,要加密的广播数据包可以是由BLE设备生成的一个数据包,或者可以是从另一个BLE设备接收的一个数据包。一方面,要加密的数据包可以是BLE设备先前从另一个BLE 设备接收的加密数据包,再进行解密的数据包。
参考图9b,图9b显示BLE设备对数据包进行解密的一个函数D(Ke,c),其中c是要解密的加密数据, Ke是一个可由BLE设备导出的演进加密密钥。在某些方面,BLE设备可以将该解密函数用于从另一个BLE设备接收的广播数据包。在某些方面,在对数据包解密之后,BLE设备可以将数据聚合到该解密数据包中。在某些方面,没有数据由BLE设备进行聚合。一方面,BLE设备使用加密功能对解密数据包进行再次加密,并将重新加密的数据包广播。
在加密和解密函数中由BLE设备使用的演进加密密钥Ke可以使用以下公式由BLE设备导出:
Ke=<k||t||X> (4)
其中:
k=BLE网络中的每个BLE设备都可用的共享密钥;
t=BLE设备时钟的时间值;和
X=BLE设备加密的地址,或对被解密的数据包进行加密的BLE设备的地址。
在某些方面,共享密钥可以是BLE网络中所有BLE设备已知的一个128比特加密密钥。共享密钥可以是存储在云服务器中和/或可以存储在BLE网络中每个BLE设备中配置信息的一部分。在某些方面,时间值可以从BLE设备的时钟获得。在其它方面,时间值可以由BLE网络内的其它设备提供。一方面,时间值可以是从 1970开始,以毫秒计。一方面,最后的n比特可以被截断并用0填充以形成一个128比特密钥。例如,2016年11 月30日对应于一个1,480,469,420,000毫秒的数值,其可以表示为101011000101100101101101010010111111000002。对于n=13,最后13位可能被截断,且该值用0填充至128位。对于n=13,可以实现了2^13=8,192毫秒的时差公差。
一方面,BLE设备的地址可以是蓝牙地址,其可以表示为一个6字节值。在其它方面,BLE设备的地址可以是可由另一个BLE设备寻址的任何格式。
在运行期间,BLE网络的一个子BLE设备有数据要报告给网关。例如,参照图9c,BLE设备1是BLE 设备2的子节点,是BLE设备3的后代,其有数据要报告给网关。数据包含在有效负载m中,计划传输到BLE 设备2。在将有效负载m广播到BLE设备2之前,BLE设备1使用公式(4),至少部分地根据共享密钥、BLE设备1的时间值和BLE设备1的地址来导出演进加密密钥Ke1。然后,BLE设备1可以使用演进加密密钥对有效负载m进行加密以生成加密数据包C1。BLE设备1可以广播加密数据包C1到BLE设备2。
BLE设备2接收来自BLE设备1的加密数据包C1。BLE设备可以使用公式(4),至少部分地根据共享密钥、BLE设备2的时间值和BLE设备1的地址导出演进加密密钥Ke1。BLE设备2将解密函数应用到数据包 C1以产生一个解密数据包。一方面,BLE设备2可以将状态聚合到解密数据包中。其他方面,BLE设备2可以不将状态聚合到解密数据包中。在数据包被广播到BLE设备3之前,BLE设备2可以使用公式(4),至少部分地根据共享密钥、BLE设备2的时间值和BLE设备2的地址来导出演进加密密钥Ke2。然后,BLE设备2可以使用演进加密密钥Ke2来对解密数据包再次加密以生成加密数据包C2。BLE设备2可以广播加密数据包C2到BLE设备3。
需要注意的是,当对加密数据包C1进行解密时,可以使用BLE设备2的时间值。如上所述,时间值可以是从BLE设备2的实时时钟截取的一个“n”比特值。一方面,BLE设备1使用的时间值(以生成加密数据包C1)和BLE设备2使用的时间值(以对加密数据包C1进行解密)之间可能存在一个时间差,这是因为BLE 设备的实时时钟的时间误差以及BLE设备1对有效负载进行加密和BLE设备2对加密数据包C1进行解密之间经过时间的时间误差。一方面,可以提供一个容差来考虑BLE设备1和BLE设备2的时钟之间的时间差。该容差可以通过截断时间值(用于加密有效负载)来考虑。例如,对于n=13,可以提供2^13=8,192毫秒的时间容差。一方面,时间容差可被配置成大于时间差,以确保加密和解密算法不受BLE设备的实时时钟时间值的时间差的影响,从而能够进行加密和解密操作,尽管有时间差。
在BLE设备3,可以重复该过程,其中加密数据包C2被解密,可以导出演进加密密钥Ke3,并将其用于对数据包再次加密以生成加密数据包C3,然后可以将其广播到网关。在某些方面,网关可以导出演进加密密钥Ke2并对加密数据包C3进行解密。
图10是实施本发明一方面的一个示例性功能框图。在步骤1000,网关和多个BLE设备被布置成一个树结构。将网关和多个BLE设备布置成树结构可以包括:将网关配置为树结构的根,将多个BLE设备配置为树结构的节点。多个BLE设备中至少一个BLE设备被配置为父节点,多个BLE设备中至少一个BLE设备被配置为子节点。父节点和子节点可以通信连接。
在步骤1010,可以使用一个调度函数来计算该多个BLE设备中每个BLE设备的计划时隙。每个BLE 设备在各自的计划时隙唤醒以接收数据或发送数据。数据可以从另一个节点接收或发送到另一个节点,或可以从网关接收或发送到网关。
图11是实施本发明一方面的一个示例性功能框图。在步骤1100,父BLE设备节点从至少一个子BLE 设备节点接收至少一个广播数据包。来自子BLE设备节点的广播数据包在有效负载字段中包括子BLE设备节点的数据。在步骤1110,使用位置函数以确定广播数据包的有效负载字段内的一个位置,用于插入父BLE设备节点的数据。父BLE设备节点的数据被聚合到该至少一个子BLE设备节点的数据中。
在步骤1020,通过将父BLE设备节点的数据插入到广播数据包有效负载字段中该确定位置,可以聚合广播数据包。在步骤1030,父BLE设备节点发送聚合的广播数据包。
图12是实施本披露一方面的一个示例性功能框图。在步骤1200,第一BLE设备从第二BLE设备接收一个加密的广播BLE数据包。在步骤1210,第一BLE设备根据与第二BLE设备相关的一个或多个参数来导出一个解密密钥。在某些方面,与第二BLE设备相关的一个或多个参数可以包括时间值、第二BLE设备的蓝牙地址和共享密钥中的至少一个。
在步骤1220,可以使用解密密钥对加密的广播BLE数据包进行解密。在步骤1230,至少部分地根据与第一BLE设备相关的时间值,对解密的广播BLE数据包再次加密。在某些方面,在对广播数据包再次加密之前,第一BLE设备的数据被聚合到广播BLE数据包的有效负载中。
本领域技术人员将理解,可以使用任何各种不同技术来表示信息和信号。例如,在以上描述中引用的数据、指令、命令、信息、信号、比特、符号和码片可由电压、电流、电磁波、磁场或粒子、光场或粒子、或其任意组合来表示。
图1、2、4、6、8和9中的功能块和模块可以包括处理器、电子设备、硬件设备、电子部件、逻辑电路、存储器、软件代码、固件代码等,或其任意组合。
本领域技术人员将进一步了解,结合本披露所述的各种说明性逻辑块、模块、电路和算法步骤可被实施为电子硬件、计算机软件或两者组合。为了清楚地说明硬件和软件的这种可互换性,通常已经在其功能性方面描述了各种说明性元件、块、模块、电路和步骤。这种功能性是否被实施为硬件或软件取决于特定应用和施加在整个系统上的设计约束。技术人员可以针对每个特定应用以不同方式实施所述的功能,但是这种实施决定不应被解释为偏离本披露范围原因。本领域技术人员还将容易地认识到,本文所述的组成、方法或相互作用的顺序或组合仅仅是范例,本披露的各个方面的组成、方法或相互作用可以以不同于本文所述的其它方式组合或执行。
结合本披露所述的各种说明性逻辑块、模块和电路,可以使用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门(ASIC)、数字信号处理器阵列(FPGA)或其它可编程逻辑器件、离散门或晶体管逻辑、离散硬件组件或任何组合来执行本文所述功能。通用处理器可以是微处理器,或者,处理器可以是任何普通的处理器、控制器、微控制器或状态机。处理器还可以被实施为计算设备的组合,例如DSP和微处理器的组合、多个微处理器、结合DSP内核的一个或多个微处理器、或任何其它此类配置。
本披露所述的方法或算法的步骤可以直接以硬件方式、由处理器执行的软件模块方式或两者组合的方式体现。软件模块可以驻留在RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM或本领域已知的任何其它形式的存储介质中。典型存储介质连接到处理器,使得处理器可以从存储介质读取信息和向存储介质写入信息。或者,存储介质可以集成到处理器。处理器和存储介质可以驻留在ASIC中。ASIC可以驻留在用户终端。或者,处理器和存储介质可以作为离散组件驻留在用户终端。
在一个或多个典型设计中,所述功能可以以硬件、软件、固件或其任何组合方式实施。如果以软件方式实施,功能可以作为一个或多个指令或代码存储在计算机可读介质上或在计算机可读介质上传输。计算机可读介质包括计算机存储介质和通信介质,其包括有助于将计算机程序从一个地方传送到另一个地方的任何介质。计算机可读存储介质可以是能够由通用或专用计算机访问的任何可用介质。作为范例而非限制,这种计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储器、磁盘存储器或其它磁存储设备、或可用于以指令或数据结构格式载有或存储期望程序代码装置的任何其它介质,并且其可以由通用或专用计算机或通用或专用处理器访问。此外,连接可以被适当地称为计算机可读介质。例如,如果使用同轴电缆、光纤电缆、双绞线或数字用户线(DSL)从网站、服务器或其它远程源传输软件,则同轴电缆、光纤电缆、双绞线、或DSL被包括在介质的定义中。如本文所使用的磁盘和光盘,包括光盘(CD)、激光盘、光盘、数字通用光盘(DVD)、软盘和蓝光盘,其中磁盘通常以磁性方式复制数据,而光盘利用激光光学地复制数据。以上组合也应包括在计算机可读介质的范围内。
尽管已经详细描述了本申请的实施例及其优点,但是应当理解,在不脱离由所附权利要求限定的实施例的精神和范围的情况下,可以在此进行各种改变、替换和变更。此外,本申请的范围不限于说明书中描述的过程、机器、制造、物质组成、手段、方法和步骤的特定实施例。本领域普通技术人员将容易地从目前存在的或以后开发的上述公开内容、过程、机器、制造、物质组成、手段、方法或步骤中获得基本上相同功能或基本上实现如本文所述相应实施例相同的结果。因此,所附权利要求旨在在其范围内包括这样的过程、机器、制造、物质组成、手段、方法或步骤。
Claims (20)
1.一种系统,包括:
多个蓝牙低功耗(BLE)设备,被配置为树结构的节点,所述多个BLE设备至少包括第一BLE设备和第二BLE设备,其中所述第一BLE设备被配置为所述树结构的父节点,所述第二BLE设备被配置为在所述树结构内的所述第一BLE设备的子节点,其中所述第一BLE设备被配置为:
从所述第二BLE设备接收第一BLE数据包,所述第一BLE数据包包含载有一个或多个其它BLE设备的数据的有效负载字段;
使用位置函数确定所述第一BLE数据包的有效负载字段内的位置,用于插入所述第一BLE设备的数据;
将所述第一BLE设备的数据与所述一个或多个其它BLE设备的数据聚合以产生第二BLE数据包,所述第二BLE数据包包含含有聚合数据的有效负载字段,其中通过将所述第一BLE设备的数据插入到所述第一BLE数据包的有效负载字段内的所述确定的位置上,所述第一BLE设备的数据与所述一个或多个其它BLE设备的数据聚合;
广播所述第二BLE数据包。
2.根据权利要求1所述的系统,还包括:
至少一个电子设备,其被配置成确定与所述多个BLE设备有关的配置信息,所述配置信息至少确定在所述树结构内的所述多个BLE设备的布置;和
网关,其被配置成所述树结构的根节点。
3.根据权利要求2所述的系统,其中所述至少一个电子设备是支持BLE功能的设备,其中根据BLE通信协议,所述电子设备与所述多个BLE设备中的每个设备直接进行通信,并使用所述配置信息,将所述多个BLE设备中的每个BLE设备配置成所述树结构的节点。
4.根据权利要求2所述的系统,其中所述配置信息至少包括以下一个:子树ID、子节点ID、父节点蓝牙地址、子节点蓝牙地址、兄弟节点ID、后代子节点ID、实时、到网关的距离、和安全密钥。
5.根据权利要求2所述的系统,其中确定定义所述树结构的所述配置信息包括:确保所述父节点和所述子节点之间连接的信号强度满足一个阈值信号强度。
6.根据权利要求5所述的系统,其中所述阈值信号强度值是-100dBm,其中所述阈值信号强度是预定的。
7.根据权利要求5所述的系统,其中确定所述配置信息还包括:使被配置为所述树结构的节点的所述多个BLE设备中的BLE设备数目最小化,其中所述最小化包括:确定所述多个BLE设备中的BLE设备数目,使得所述多个BLE设备中的任何一个BLE设备与所述多个BLE设备中的另一个BLE设备之间连接的信号强度满足所述阈值信号强度。
8.根据权利要求2所述的系统,其中使用调度函数,所述多个BLE设备中的每个BLE设备计算一个计划时隙用于数据交换,其中每个BLE设备在各自的计划时隙上唤醒以接收数据、发送数据、或两者兼有。
9.根据权利要求8所述的系统,其中所述数据是在各自的时隙上从另一个BLE设备或网关接收,或者所述数据是在各自的时隙上被发送到另一个BLE设备或网关。
10.根据权利要求8所述的系统,其中所述多个BLE设备中的至少两个BLE设备被配置成所述第一BLE设备的子节点,其中所述至少两个BLE设备通过向每个各自的计划时隙添加一个随机时间来计算各自的计划时隙,以避免数据包冲突。
11.根据权利要求8所述的系统,其中所述多个BLE设备中的一个特定BLE设备用于计算一个计划时隙来广播数据的所述调度函数被定义为:
Tn=Tg+Th*dn
其中:
Tn=所述特定BLE设备用于数据交换的计划时隙,
Tg=发送所述数据到所述网关的时间,
Th=在任何BLE设备对之间数据交换允许的时限,和
dn=所述特定BLE设备和所述网关之间的跳数。
12.根据权利要求8所述的系统,其中所述多个BLE设备中的一个特定BLE设备用于计算一个计划时隙来接收数据的所述调度函数被定义为:
Tn=Tg-Th*dn
其中:
Tn=所述特定BLE设备用于数据交换的计划时隙,
Tg=从所述网关接收所述数据的时间,
Th=任何BLE设备对之间数据交换允许的时限,和
dn=所述特定BLE设备和所述网关之间的跳数。
13.根据权利要求1所述的系统,其中数据可以聚合在一个特定BLE数据包里的BLE设备的最大数目是根据(s-h)/d确定的,其中:
s=所述至少一个BLE数据包的标头的大小,
d=所述最大数目的BLE设备的每个BLE设备要报告的s数据的大小,和
h=所述至少一个BLE数据包的标头的大小。
14.根据权利要求1所述的系统,其中所述位置函数是由[Sb,Eb]=[h+(n-1)*d,h+(n*d)-1]确定,其中:
[Sb,Eb]=在所述第一BLE数据包的所述有效负载字段内的所述位置,用于插入所述第一BLE的数据,Sb是所述位置的起始位,Eb是所述位置的终止位,
h=所述第一BLE数据包的标头的大小,
d=所述第一BLE设备的数据的大小,和
n=所述第一BLE设备的ID号。
15.根据权利要求1所述的系统,其中所述第一BLE数据包被加密,其中所述第一BLE设备还被配置成:
根据与所述第二BLE设备相关的一个或多个参数导出解密密钥;
使用所述解密密钥解密所述第一BLE数据包;和
在将所述第一BLE设备的数据与所述一个或多个其它BLE设备的数据聚合以生成所述第二BLE数据包之后,对所述解密的第一BLE数据包重新加密。
16.根据权利要求15所述的系统,其中与所述第二BLE设备相关的所述一个或多个参数包括:时间值、所述第二BLE设备的蓝牙地址、和共享密钥。
17.根据权利要求16所述的系统,其中所述第一BLE设备还被配置成至少部分根据与所述第一BLE设备相关的一个或多个参数重新加密,所述一个或多个参数至少包括所述第一BLE设备的蓝牙地址和共享密钥。
18.一种非暂时性计算机可读介质,其存储指令,当所述指令由一个或多个处理器执行时,使所述一个或多个处理器根据蓝牙低功耗(BLE)协议执行通信数据的操作,所述操作包括:
在多个BLE设备中的第一BLE设备上,从所述多个BLE设备中的第二BLE设备接收第一BLE数据包,所述第一BLE数据包包含载有由所述第二BLE设备报告的数据的有效负载字段;
使用位置函数确定所述第一BLE数据包的有效负载字段内的位置,用于插入所述第一BLE设备的数据;
将所述第一BLE设备的数据与所述第二BLE设备报告的数据聚合,以生成第二BLE数据包,所述第二BLE数据包包含含有聚合数据的有效负载字段,其中通过将所述第一BLE设备的数据插入到所述第一BLE数据包的有效负载字段内的所述确定的位置上,所述第一BLE设备的数据与所述第二BLE设备报告的数据聚合;和
广播所述第二BLE数据包。
19.根据权利要求18所述的非暂时性计算机可读介质,其中所述位置函数由[Sb,Eb]=[h+(n-1)*d,h+(n*d)-1]确定,其中:
[Sb,Eb]=在所述第一BLE数据包的有效负载字段内的所述位置,用于插入所述第一BLE的数据,Sb是所述位置的起始位,Eb是所述位置的终止位,
h=所述第一BLE数据包的标头的大小,
d=所述第一BLE设备的数据的大小,和
n=所述第一BLE设备的ID号。
20.一种使用蓝牙低功耗(BLE)设备传输数据的方法,所述方法包括:
在多个BLE设备中的第一BLE设备上,从所述多个BLE设备中的第二BLE设备接收第一BLE数据包,所述第一BLE数据包包含载有所述第二BLE设备报告的数据的有效负载字段;
使用位置函数确定所述第一BLE数据包的有效负载字段内的位置,用于插入所述第一BLE设备的数据;
将所述第一BLE设备的数据与所述第二BLE设备报告的数据聚合,以生成第二BLE数据包,所述第二BLE数据包包含含有聚合数据的有效负载字段,其中通过将所述第一BLE设备的数据插入到所述第一BLE数据包的有效负载字段内的所述确定的位置上,所述第一BLE设备的数据与所述第二BLE设备报告的数据聚合;和
广播所述第二BLE数据包。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/615,402 US10039057B1 (en) | 2017-06-06 | 2017-06-06 | Optimized deployment of BLE network and power efficient and secure management of data exchange between BLE devices |
US15/615,402 | 2017-06-06 | ||
PCT/CN2017/088096 WO2018223408A1 (en) | 2017-06-06 | 2017-06-13 | Optimized deployment of ble network and power efficient and secure management of data exchange between ble devices |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107466478A true CN107466478A (zh) | 2017-12-12 |
CN107466478B CN107466478B (zh) | 2020-09-29 |
Family
ID=60553422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780000656.5A Active CN107466478B (zh) | 2017-06-06 | 2017-06-13 | 蓝牙低功耗设备之间数据交换的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107466478B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110944314A (zh) * | 2019-12-06 | 2020-03-31 | 广东博智林机器人有限公司 | 一种ble级联网络及其链路路由方法和装置 |
CN111886843A (zh) * | 2018-06-13 | 2020-11-03 | 卧安科技(深圳)有限公司 | 低功耗蓝牙网络维护方法、电子设备、蓝牙网络和介质 |
CN113207113A (zh) * | 2021-04-20 | 2021-08-03 | 上海富芮坤微电子有限公司 | 多连接组网系统、方法、存储介质及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103297959A (zh) * | 2012-02-28 | 2013-09-11 | 中国移动通信集团广东有限公司 | 在传感器网络中进行加密的方法、加密装置和传感器网络 |
CN103733654A (zh) * | 2011-08-05 | 2014-04-16 | 日本电气株式会社 | 传感器网络系统、传感器网络控制方法、传感器节点、传感器节点控制方法以及传感器节点控制程序 |
US20140192689A1 (en) * | 2010-06-17 | 2014-07-10 | Universiteit Gent | Node and a wireless sensor network comprising the node |
CN103974442A (zh) * | 2014-04-24 | 2014-08-06 | 东南大学 | 一种适用于无线传感器网络的低延时调度方法 |
CN105515789A (zh) * | 2015-11-24 | 2016-04-20 | 江苏科技大学 | 一种待权间隔的省电方法 |
CN106533656A (zh) * | 2016-11-18 | 2017-03-22 | 东莞理工学院 | 一种基于wsn的密钥多层混合加/解密方法 |
-
2017
- 2017-06-13 CN CN201780000656.5A patent/CN107466478B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140192689A1 (en) * | 2010-06-17 | 2014-07-10 | Universiteit Gent | Node and a wireless sensor network comprising the node |
CN103733654A (zh) * | 2011-08-05 | 2014-04-16 | 日本电气株式会社 | 传感器网络系统、传感器网络控制方法、传感器节点、传感器节点控制方法以及传感器节点控制程序 |
CN103297959A (zh) * | 2012-02-28 | 2013-09-11 | 中国移动通信集团广东有限公司 | 在传感器网络中进行加密的方法、加密装置和传感器网络 |
CN103974442A (zh) * | 2014-04-24 | 2014-08-06 | 东南大学 | 一种适用于无线传感器网络的低延时调度方法 |
CN105515789A (zh) * | 2015-11-24 | 2016-04-20 | 江苏科技大学 | 一种待权间隔的省电方法 |
CN106533656A (zh) * | 2016-11-18 | 2017-03-22 | 东莞理工学院 | 一种基于wsn的密钥多层混合加/解密方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111886843A (zh) * | 2018-06-13 | 2020-11-03 | 卧安科技(深圳)有限公司 | 低功耗蓝牙网络维护方法、电子设备、蓝牙网络和介质 |
CN111886843B (zh) * | 2018-06-13 | 2023-04-04 | 卧安科技(深圳)有限公司 | 低功耗蓝牙网络维护方法、电子设备、蓝牙网络和介质 |
CN110944314A (zh) * | 2019-12-06 | 2020-03-31 | 广东博智林机器人有限公司 | 一种ble级联网络及其链路路由方法和装置 |
CN113207113A (zh) * | 2021-04-20 | 2021-08-03 | 上海富芮坤微电子有限公司 | 多连接组网系统、方法、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107466478B (zh) | 2020-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cao et al. | [Retracted] IIBE: An Improved Identity‐Based Encryption Algorithm for WSN Security | |
US10039057B1 (en) | Optimized deployment of BLE network and power efficient and secure management of data exchange between BLE devices | |
Vilajosana et al. | 6TiSCH: Industrial performance for IPv6 Internet-of-Things networks | |
Jurado-Lasso et al. | Energy-aware routing for software-defined multihop wireless sensor networks | |
CN102150392B (zh) | 网络节点间的数据传输方法 | |
Horyachyy | Comparison of Wireless Communication Technologies used in a Smart Home: Analysis of wireless sensor node based on Arduino in home automation scenario | |
RU2553072C2 (ru) | Способ организации защиты связи в беспроводной сети и ограниченное по ресурсам устройство для этих целей | |
JP5595583B2 (ja) | マシンツーマシン通信方法 | |
Kim et al. | Design and application spaces for IPv6 over low-power wireless personal area networks (6LoWPANs) | |
CN103597456B (zh) | 用于在分布式存储器环境中实施存储器段访问控制的方法和装置 | |
CN107466478A (zh) | Ble网络的优化部署和ble设备之间数据交换的功效和安全管理 | |
CN102202298A (zh) | 结合网络及无线传感器网络终端加入网络的方法 | |
CN103686717A (zh) | 一种物联网传感系统的密钥管理方法 | |
Karaagac et al. | Hybrid schedule management in 6TiSCH networks: The coexistence of determinism and flexibility | |
Neander et al. | Prolonging wireless HART network lifetime using packet aggregation | |
Al-Shayeji et al. | A secure and energy-efficient platform for the integration of Wireless Sensor Networks and Mobile Cloud Computing | |
Panja et al. | A role-based access in a hierarchical sensor network architecture to provide multilevel security | |
KR100835294B1 (ko) | 무선센서 네트워크에서 통신용 암호키를 생성하는 방법, 이를 이용한 데이터 통신 방법 및 이들을 위한 시스템 | |
Luntovskyy et al. | Energy efficiency and security for IoT scenarios via WSN, RFID and NFC | |
Chapin et al. | SpartanRPC: Secure WSN middleware for cooperating domains | |
Gao et al. | Maximum network throughput based on cross-technology communication for sensor networks | |
Struik | AEAD ciphers for highly constrained networks | |
Sánchez | WirelessHART network manager | |
Meyer | Security issues and vulnerability assessment of Zigbee enabled home area network implementations | |
Jacobsen et al. | IP connected low power wireless personal area networks in the future internet |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1261402 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |