CN107959553B - 提升蓝牙网络入网速度的方法 - Google Patents
提升蓝牙网络入网速度的方法 Download PDFInfo
- Publication number
- CN107959553B CN107959553B CN201711073991.6A CN201711073991A CN107959553B CN 107959553 B CN107959553 B CN 107959553B CN 201711073991 A CN201711073991 A CN 201711073991A CN 107959553 B CN107959553 B CN 107959553B
- Authority
- CN
- China
- Prior art keywords
- data packet
- network
- added
- equipment
- network providing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0006—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明的提升蓝牙网络入网速度的方法,用于节省待加入设备预配置过程的时间,包括:数据包加入到广播队列后,网络提供设备启动用于判断所述数据包对应的确认帧的是否在规定时间段内接收的计时器,在规定时间段内网络提供设备没有收到所述数据包对应的确认帧,则网络提供设备重传所述数据包。本发明的技术方案优化了Provision过程,使广播数据通道上Provision的速度提升了5倍。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种提升蓝牙网络入网速度的方法。
背景技术
Mesh网络也称为“多跳网络”,它是一个动态的可以不断扩展的网络架构,可以实现设备之间的传输。
Mesh网络的概念源自移动自组织网络(Mobile Ad Hoc Networks)。移动自组织网络是自己配置,无需基础设施的一种多跳网络,网络中的节点以无线的方式连接。Mesh网络使移动自组织网络更加商品化,Mesh网络节点可以动态的加入网络,具有中继转发的功能,因此扩大了网络的覆盖范围。
Provision(预配置)是将待处理节点添加进Mesh网络中的过程。一个节点必须经过Provision操作,才能与网中的其他节点通信。
完整的Provision过程需要经过五步:发现设备、邀请、交换公钥、验证、分发Provisioning数据。
Provision过程中,需要Provisioner(网络提供设备,比如智能手机)与待加入设备不断交换协议数据包(PDU,Protocol Data Unit),在Provisioning PDU交换过程中,如果每个数据包都能正常接收,则完成整个provision过程的理论时间是3000毫秒(总共有30个PDU)。实际情况中,provision过程的平均时间为15秒左右。
发明内容
本发明要解决的技术问题是提供一种节省预配置时间的,效率较高的提升蓝牙网络入网速度的方法。
本发明的提升蓝牙网络入网速度的方法,用于节省待加入设备预配置过程的时间,包括:
数据包加入到广播队列后,网络提供设备启动用于判断所述数据包对应的确认帧的是否在规定时间段内接收的计时器,在规定时间段内网络提供设备没有收到所述数据包对应的确认帧,则网络提供设备重传所述数据包。
本发明的提升蓝牙网络入网速度的方法,其中,如果所述数据包以一个数据分片传送,所述规定时间段为200毫秒加上随机值;如果所述数据包分为两个数据分片传送,所述规定时间段为400毫秒加上随机值;如果所述数据包分为三个数据分片传送,所述规定时间段为500毫秒加上随机值。
本发明的提升蓝牙网络入网速度的方法,其中,所述规定时间段为网络提供设备的三个发送窗口期加一个接收窗口期。
本发明的提升蓝牙网络入网速度的方法,其中,如果待加入设备在网络提供设备的三个发送窗口期内收到所述数据包,则延时第二随机值后发送所述数据包对应的确认帧。
本发明的提升蓝牙网络入网速度的方法,其中,还包括:待加入设备收到数据包后延迟第一时间段后响应,以判断是否还有待接收的数据,第一时间段在10至30毫秒之间。
本发明的提升蓝牙网络入网速度的方法,其中,还包括:
网络提供设备对待加入设备传输事务时,以下两条件满足之一时,即判断所述事务已被对方成功接收:网络提供设备收到所述事务对应的确认帧,或网络提供设备收到所述事务的下一个事务的数据分片。
本发明的提升蓝牙网络入网速度的方法,其中,还包括:
网络提供设备对待加入设备传输事务时,对于超时重传的事务,待加入设备收到所述超时重传的事务的一个数据分片即回复确认帧。
本发明的提升蓝牙网络入网速度的方法,其中,网络提供设备对待加入设备传输数据包的顺序包括:
网络提供设备对待加入设备传输链路开启数据包的同时对待加入设备传输预配置邀请数据包;
网络提供设备接收链路开启数据包的确认帧;
网络提供设备接收预配置邀请数据包的确认帧;
网络提供设备接收待加入设备特性的数据包;
网络提供设备与待加入设备执行后续数据包的交换。
本发明的提升蓝牙网络入网速度的方法,其中,网络提供设备接收到预配置邀请的确认帧,即判断待加入设备接收到了链路开启数据包和预配置邀请数据包;
网络提供设备接收到待加入设备的特性的数据包,即判断待加入设备接收到了链路开启数据包和预配置邀请数据包。
本发明的提升蓝牙网络入网速度的方法,其中,待加入设备向网络提供设备传输待加入设备特性的数据包后向网络提供设备传输预配置邀请数据包的确认帧。
本发明的提升蓝牙网络入网速度的方法,其中,还包括:
网络提供设备对待加入设备传输事务时,对于重传的事务,所述重传的事务的数据分片按第一顺序重传,所述第一顺序与所述事务的数据分片的上一次传送的顺序不同。
本发明的提升蓝牙网络入网速度的方法,其中,网络提供设备或待加入设备在等待对方的确认帧或其他数据包时,网络提供设备或待加入设备在两个广播期间之间***一定长度的扫描接收期间。
本发明的技术方案优化了Provision过程,使广播数据通道上Provision的速度提升了5倍。
附图说明
图1为标准预配置过程中协议数据包的交换过程示意图;
图2为预配置过程中超时重传的示意图;
图3为本发明的技术方案中启动计时器的示意图;
图4为预配置过程中发送确认帧的示意图;
图5为本发明的技术方案中发送确认帧的示意图;
图6为本发明的技术方案中快速回复确认帧的情况示意图;
图7为规范顺序的情况示意图;
图8为本发明的技术方案中调整顺序的情况示意图。
具体实施方式
本发明要解决的技术问题是优化Mesh协议栈中Provision部分的实现代码,通过HCI(主机控制接口,Host Controller Interface)控制蓝牙设备的行为,以提高广播数据通道上Provision的速度。
Mesh规范中规定广播数据包的类型为ADV_NONCONN_IND,用于非连接的无向的广播事件(non-connectable undirected advertising event),根据蓝牙核心规范Core4.2中关于链路层的介绍,非连接的无向的广播事件的持续时间至少为100ms。
当使用非连接无向广播的事件类型时,链路层发送的数据包的类型为ADV_NONCONN_IND。
当蓝牙设备处于扫描状态时,只能接收ADV_NONCONN_IND类型的广播数据包。
当蓝牙设备处于广播状态时,链路层不能监听,因此不能接收其他任何的数据包。也即控制器是ADV状态与SCAN状态切换式工作的。因此需要做优化,以最大化数据包接收的概率。
两个连续的ADV_NONCONN_IND数据包的广播时间的间隔要小于或等于10ms,而且广播数据包要在三个广播信道(这三个广播信道的标号为37、38、39)上轮询,因为非连接的无向的广播事件的持续时间至少为100ms,所以至少轮询三次。ADV_Duration=100ms。
ADV_NONCONN_IND是非连接无向广播事件所用的数据包类型,每个这种类型的数据包要在37、38、39三个信道上广播一次,每个信道上广播的时间小于等于10ms,三个信道上轮询一次为一次广播事件。
图1中,在现有的Provisioning PDU交换过程中,在只考虑发送数据包并且每个数据包都能正常接收的情况下,则完成整个provision过程的理论时间是3000毫秒(总共有30个PDU)。
本专利涉及的专有名词:
网络提供设备:Provisioner,即将待处理节点(待加入设备)添加进Mesh网络的设备,比如智能手机。
Provision:预配置,即网络提供设备将待处理节点(待加入设备)添加进Mesh网络中的过程,需要验证该待处理节点并向其提供基本通信信息(包括单播地址和网络层秘钥),一个节点必须经过Provision操作,才能与网中的其他节点通信。
Beacon:信标,提供设备状态等有关信息。
UUID:Universally unique identifier,128位地址,由SIG组织预先分配的用来唯一标识设备。
蓝牙Mesh协议由三部分组成:Beacon、Provisioning Protocol、Mesh Core,这三部分相互配合,使整个Mesh网络正常运转。Beacon负责发现设备,Provisioning Protocol负责添加设备,Mesh Core负责网络节点之间的通信。
本专利主要研究Provisioning Protocol,以提高Provisioning的速度。Beacon的主要作用是使待处理设备处于可发现状态
Provisioning Protocol是一个两层的协议堆栈,Provisioning Protocol的顶层为协议层和数据通道层。协议层负责顶层的数据交换协议,按照Provisioning的协议规则,与对待加入设备交换Provisioning数据包。
“待加入设备”指有待添加进Mesh网络的设备。
数据通道的类型为广播,主要职责:1.负责拆分/重组协议数据包;2.确保协议数据传输可靠性;3.发送/接收协议数据包。
1.拆分/重组协议数据包
Provisioning协议堆栈的广播数据通道是用来传输协议数据包的,能承载的最大传输单元为24字节,因此,当发送的Provisioning协议数据包的长度超过24字节时,需要将Provisioning协议数据包进行拆分为若干数据分片,以使其适应广播数据通道的承载字节数。同样的,当接收数据分片时,需要在这一层将数据分片收齐后重组为ProvisioningPDU,验证为正确的数据包后再传给协议层。
2.数据传输可靠性
Provision过程中,广播数据通道发送数据使用确认重传机制,即在发送一个消息后,等待接收对方发送确认消息,表明收到此消息。因为通过广播方式发送的消息是无连接不可靠的,在广播过程中,消息和确认都可能丢失。为了确保可靠传输,当收到一个消息后,就要向对方回复确认。
一个Transaction(事务)指一次协议层的数据交换。一个Transaction(事务)可能包含多个数据分片。A给B发送一个Transaction,每发送一个数据分片,A端启动一个计时器,计时器用于判断对应的确认帧的是否在规定时间内接收,即计时器约束了在一段时间内,A若没有收到期望的确认消息,则要把这个Transaction的所有数据分片全部重传。若重传多次对方仍无响应,则此次Transaction失败。
3.发送/接收协议数据包
本发明的技术方案需要将协议栈运行在主机上,通过主机控制接口控制蓝牙设备的行为来实现。若蓝牙设备的链路层处于扫描状态,设备能够接收数据包,处于广播状态,则发送数据包。在发送协议数据包时,根据需要对协议数据包进行拆分,拆分得到的数据分片要先放到广播队列里进行排队,按照先进先出的原则发送数据包。
接收数据包时若收到的是数据分片,根据数据包头的控制信息判断是否接收完整,如果接收完整,将消息进行重组并验证是否为正确的消息,如果消息通过验证,再把完整的消息提交至协议层,进行下一个Transaction。
完整的Provision过程需要经过五步:发现设备、邀请、交换公钥、验证、分发Provisioning数据。
1.设备发送Beacon,使设备处于可发现状态。
2.网络提供设备(比如智能手机)发送邀请,待加入设备(New Device)收到邀请后回复自己所具有的特性(Capabilities),特性表明了待加入设备在Provision过程中,使用的加密算法、公钥类型以及支持的验证方式以及设备本身的可寻址的实体个数等。
3.交换公钥,本发明的实施例获取公钥的方式是通过交换Public Key PDU的方式,交换完公钥后双方各自计算自己的共享秘钥。
4.设备验证,根据前面交换的数据包进行设备验证,防止中间人攻击。
5.设备验证通过后,网络提供设备为待加入设备分发Provisioning数据,待加入设备获得Provisioning数据后就可以在Mesh网络中与其他设备节点通信。
上述过程描述的是provision过程涉及的所有步骤,本实施例中在provision过程中provisioning protocol层的动作如图1所示。
图1详细描述了标准Provision过程中协议数据包的交换过程。对应上面的Provision的五个步骤,此图中没有表示发现设备的过程。TransNum是Transaction的标志号,网络提供设备从0开始递增计数,待加入设备(New Device)发起的Transaction从0x80开始递增计数。
具体说明如下:
1.网络提供设备向待加入设备(New Device)发送Link Open,表明选中该设备进行Provision。因为Provisioning的工作机制是基于会话的工作机制,所以要先与该设备建立连接。注意网络提供设备可以同时建立多个会话,而待加入设备(New Device)一次只能有一个会话。会话的标志是Link ID,Link ID由待加入设备的UUID计算生成的。这里所说的连接是虚拟连接,由Link ID标志。网络提供设备和待加入设备之间建立连接后,就在此虚拟连接上广播发送provisioning协议数据包。协议数据包包头的控制信息都包含Link ID。待加入设备收到Link Open消息后,由广播数据通道层回复确认,也即可靠传输。
2.网络提供设备发送邀请,这个消息包含一个参数Attention Duration,待加入设备收到这个消息后就会通过某种方式告诉人们正在与哪个设备正在进行provision。待加入设备收到邀请后就回复网络提供设备自己所支持的所有特性。
3.网络提供设备发送Provisioning Start,告诉待加入设备自己选择的公钥获取方式和设备验证方式。
4.网络提供设备与待加入设备之间交换公钥,保证通话的安全性,并计算网络提供设备与待加入设备的共享秘钥。
5.网络提供设备与待加入设备之间根据选择的验证方式进行验证。验证通过后给待加入设备分发Provisining数据,以使待加入设备在Mesh网中通信。
6.完成provision过程后要断开与待加入设备的虚拟连接。
本发明的实施方法是在主机上运行协议栈,通过HCI(Host ControllerInterface)控制蓝牙设备的行为,本实施例所用的蓝牙设备是CSR 4.0蓝牙适配器。
在实施本发明之前,provision过程的平均时间为15秒左右。在实施例本发明之后,Provision过程的平均时间为3秒左右。
实验过程中发现了几种导致provision时延的原因:
(1)网络提供设备在PB ACK计时器内没有收到待加入设备的确认帧,在计时器超时后短时间内就收到了第一个provisioning invite数据包的确认帧。如果PB ACK计时器再延长10毫秒到20毫秒,就能接收这个确认帧。推测其原因,控制器在重传第二个provisioning invite数据包之前就已经收到了确认帧,但是没有给控制器足够的时间,来使控制器把收到的数据提交给协议栈,致使协议栈认为没有收到确认,进而重传。因此要精确的控制PB ACK计时器,使其既不能太短,导致留给控制器的时间不足,又不能太长,将影响整体的时间性能。如果PB ACK计时器太长,确认帧确实丢失,网络提供设备要等PB ACK计时器超时后才能重传数据包,这样影响了时间性能。
(2)图2示出了以下几种情况:
i.接收方消息分片未收全,不能通过消息完整性验证,所以接收方不会发送确认消息;
ii.网络提供设备等待确认超时,重传所有消息分片,待加入设备收到了所有的消息分片,发送确认,但网络提供设备未收到确认;
iii.网络提供设备继续重传,此时待加入设备已经收到过完整的ProvisioningPublic Key PDU,已具备触发发送下一个数据包的条件,因为重传,还要对这个Transaction进行处理,再次发送相同的确认。
本发明的提升蓝牙网络入网速度的方法,用于节省待加入设备(接收方)预配置过程的时间,包括:
数据包加入到广播队列后,网络提供设备启动用于判断所述数据包对应的确认帧的是否在规定时间段内接收的计时器,在规定时间段内网络提供设备没有收到所述数据包对应的确认帧,则网络提供设备重传所述数据包。
本发明的提升蓝牙网络入网速度的方法,其中,如果所述数据包以一个数据分片传送,所述规定时间段为200毫秒加上随机值;如果所述数据包分为两个数据分片传送,所述规定时间段为400毫秒加上随机值;如果所述数据包分为三个数据分片传送,所述规定时间段为500毫秒加上随机值。
本发明的提升蓝牙网络入网速度的方法,其中,所述规定时间段为网络提供设备的三个发送窗口期加一个接收窗口期。
本发明的提升蓝牙网络入网速度的方法,其中,如果待加入设备在网络提供设备的三个发送窗口期内收到所述数据包,则延时第二随机值后发送所述数据包对应的确认帧。
PB ACK计时器(用于判断数据包对应的确认帧的是否在规定时间段内接收的计时器)是网络提供设备启动的,用于控制数据包重传时间的计时器。
网络提供设备要在PB ACK时间内收到对方的确认帧,若计时器超时,未收到对方的确认,就重传前一个事务。
发送方发送的数据包,要先进入广播队列排队等待发送。因为广播数据通道承载能力有限,要对超长数据包进行分片,根据分片数动态设置PB ACK计时器,PB ACK计时器的启动时刻尽量靠近数据包从HCI出发的时刻,因为无法精确控制硬件的ADV/SCAN状态转换,本发明的提升蓝牙网络入网速度的方法采取折中方案,在把数据包加入到广播队列后就启动计时器,根据分片数,设置变长的计时器时长。单分片设置的重传时间为200毫秒,也就是单分片消息发出后,在200毫秒期间未收到对方的PB ACK,则重传。同样的,两分片的重传时间为400毫秒,三分片的重传时间为500毫秒。因为无法精确控制硬件的ADV/SCAN状态转换,除了设置变长的计时器,还要避开ADV/SCAN状态转换的边界,PB ACK计时器要加上一个随机值。
如图3,发送方在广播单分片的数据,接收方在扫描,在收到数据包后,接收方转换为ADV状态向发送方发送确认帧。PB ACK计时器的时间就是三个发送窗口加一个接收窗口。
接收方发送确认帧的时间要落在对方发送完数据转换为扫描状态之后并且在PBACK计时器超时之前。因为ADV状态的持续时间为ADV_Duration,此时不能SCAN,发送方可能在ADV_Duration的前半段时间内就接收到了数据包,为了在接收方发送确认时避开发送方的发送窗口,同时又不超时,发送确认帧前延时一段随机时间。
如图4、图5所示,减少图中方框A所示的重合区域,即延时一段随机时间。
本发明的提升蓝牙网络入网速度的方法,其中,如果待加入设备在网络提供设备的三个发送窗口期内收到所述数据包,则延时第二随机值后发送所述数据包对应的确认帧,即减少图中方框A所示的重合区域。
本发明的提升蓝牙网络入网速度的方法,其中,还包括:待加入设备收到数据包后延迟第一时间段后响应,以判断是否还有待接收的数据,第一时间段在10至30毫秒之间。
本发明的提升蓝牙网络入网速度的方法,其中,为增大数据包接收概率,在收到数据包后,不要立即发送确认或者转发,延时一段时间以判断是否还有待接收的数据,如果在延时的这段时间内仍然收到数据,说明对方还没有发完,接收方就继续接收。如果在延时的这段时间内没有收到数据包,则对方没有发送数据包的概率较大。接收方可以发送自己的数据包。延时的时间根据网络通信状况而选择一个在10至30毫秒之间。
本发明的提升蓝牙网络入网速度的方法,其中,还包括:
网络提供设备对待加入设备传输事务时,网络提供设备收到所述事务对应的确认帧或网络提供设备收到所述事务的下一个事务的数据分片两条件满足之一时,即判断所述事务已被对方成功接收。
即网络提供设备对待加入设备传输事务时,以下两条件满足之一时,即判断所述事务已被对方成功接收:网络提供设备收到所述事务对应的确认帧,或网络提供设备收到所述事务的下一个事务的数据分片。
协议是顺序进行的,只有在第一事务顺利进行后,才会继续后续事务的传输。接收方在收到第一事务的确认帧或者第二事务的数据包时,满足两者之一,就认为对方已收到第一事务。
本发明的提升蓝牙网络入网速度的方法,其中,还包括:
网络提供设备对待加入设备传输事务时,对于超时重传的事务,待加入设备收到所述超时重传的事务的一个数据分片即回复确认帧。
本发明的提升蓝牙网络入网速度的方法,其中,对重传的数据包,尤其是分片,收到第一个数据包,即回复确认帧。按照规范,待加入设备端发送的ACK丢失,网络提供设备重传所有的Public Key数据包。对重传的数据包,只有在待加入设备收齐本次事务的所有数据包后,才会再次发送确认。
如图6所示,因为数据分片是按顺序发送的,待加入设备端理论上收到public Key的第一分片要先于其他两个分片,但收到的数据包可能由其他节点转发,不能确定待加入设备收到的数据包的分片。所以收到一个分片后就回复对这一事务的确认帧。
因为网络提供设备连续发送三分片,待加入设备端要在网络提供设备发送完后,对重传数据包的确认帧才能出发,改进的优点在于不必等到收齐重传的所有数据分片再去发送确认,如果收到第二、三分片,待加入设备也能发送确认帧。
本发明的提升蓝牙网络入网速度的方法,其中,网络提供设备对待加入设备传输数据包的顺序包括:
网络提供设备对待加入设备传输链路开启数据包的同时对待加入设备传输预配置邀请数据包;
网络提供设备接收链路开启数据包的确认帧;
网络提供设备接收预配置邀请数据包的确认帧;
网络提供设备接收待加入设备特性的数据包;
网络提供设备与待加入设备执行后续数据包的交换。
图7表示网络提供设备与待加入设备之间按照provision正常顺序交换数据包。图8表示网络提供设备将link_open数据包与provisioning invite数据包并行发送,并行发送时待加入设备延后发送link ACK。在第一次并行发送尝试失败后,仍用provision的正常顺序交换数据包。
网络提供设备端能并行发送link open数据包和provisioning invite数据包的可行性在于:网络提供设备收到invite ACK可以确认待加入设备收到Link_open和provisioning invite数据包,待加入设备发送link ACK是为了与其他设备兼容,如果linkACK丢失,但收到了invite ACK,即认为link open和provisioning invite都被待加入设备接收;网络提供设备收到capabilities不仅可以确认待加入设备收到Link_open和provisioning invite数据包,并且还收到了下一个最为期待的数据包capabilities,如果link ACK、invite ACK丢失,但网络提供设备收到了capabilities,网络提供设备端也认为待加入设备收到Link_open和provisioning invite数据包,可以继续执行后续协议数据包的交换。
若不调整顺序,网络提供设备只有在收到link ACK后才能发送provisioninginvite。
并行发送Link_open和provisioning invite数据包至少能使provisioning耗时减少100毫秒。
调整待加入设备发送邀请数据包的确认帧与下一个表明provision能力capabilities的数据包的发送顺序,即先发送capabilities,后发送邀请数据包的PB ACK。
网络提供设备期待的数据包是capabilities与邀请数据包的确认帧,期待程度前者强于后者,基于协议,也是为了兼容其他设备,调整这两个数据包的发送顺序,能使网络提供设备快速得到其当前时刻最为期待的数据包。
本发明的提升蓝牙网络入网速度的方法,其中,网络提供设备接收到预配置邀请的确认帧,即判断待加入设备接收到了链路开启数据包和预配置邀请数据包;
网络提供设备接收到待加入设备的特性的数据包,即判断待加入设备接收到了链路开启数据包和预配置邀请数据包。
本发明的提升蓝牙网络入网速度的方法,其中,待加入设备向网络提供设备传输待加入设备特性的数据包后向网络提供设备传输预配置邀请数据包的确认帧。
本发明的提升蓝牙网络入网速度的方法,其中,还包括:网络提供设备对待加入设备传输事务时,对于重传的事务,所述重传的事务的数据分片按第一顺序重传,所述第一顺序与所述事务的数据分片的上一次传送的顺序不同。
本发明的提升蓝牙网络入网速度的方法,当多分片消息重传时,为了增大每个消息分片被接收的可能性,采取乱序重传的方法。例如消息分片的标号分别为1,2,3,重传的顺序可能就变为1,3,2、2,1,3、2,3,1、3,1,2,、3,2,1等。每次都按序重传的话,分片的接收机会是不均等的。
本发明的提升蓝牙网络入网速度的方法,其中,网络提供设备或待加入设备在等待对方的确认帧或其他数据包时,网络提供设备或待加入设备在两个广播期间之间***一定长度的扫描接收期间。
在有预期可能会收到对方的确认帧或其他数据包时,在两个连续ADV之间适当的***一定时间的Scan,而不是让ADV一直占用时间,导致收不到对方的ADV。
本发明的提升蓝牙网络入网速度的方法,优化了Provision过程,经实验测算广播数据通道上Provision的速度提升了5倍。
实验数据如下:
组数 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
time/ms | 2434 | 4945 | 2636 | 2543 | 2637 | 3697 | 3058 | 3416 | 2777 | 3198 |
增测算,十次实验中Provision所用的时间平均为3134ms,现有技术中,provision过程的平均时间为15秒左右,这样Provision的速度提升了5倍。
以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (11)
1.一种提升蓝牙网络入网速度的方法,用于节省待加入设备预配置过程的时间,其特征在于,包括:
数据包加入到广播队列后,网络提供设备启动用于判断所述数据包对应的确认帧的是否在规定时间段内接收的计时器,在规定时间段内网络提供设备没有收到所述数据包对应的确认帧,则网络提供设备重传所述数据包,网络提供设备对待加入设备传输数据包的顺序包括:
网络提供设备对待加入设备传输链路开启数据包的同时对待加入设备传输预配置邀请数据包;
网络提供设备接收链路开启数据包的确认帧;
网络提供设备接收预配置邀请数据包的确认帧;
网络提供设备接收待加入设备特性的数据包;
网络提供设备与待加入设备执行后续数据包的交换。
2.如权利要求1所述的提升蓝牙网络入网速度的方法,其特征在于,如果所述数据包以一个数据分片传送,所述规定时间段为200毫秒加上随机值;如果所述数据包分为两个数据分片传送,所述规定时间段为400毫秒加上随机值;如果所述数据包分为三个数据分片传送,所述规定时间段为500毫秒加上随机值。
3.如权利要求2所述的提升蓝牙网络入网速度的方法,其特征在于,所述规定时间段为网络提供设备的三个发送窗口期加一个接收窗口期。
4.如权利要求3所述的提升蓝牙网络入网速度的方法,其特征在于,如果待加入设备在网络提供设备的三个发送窗口期内收到所述数据包,则延时第二随机值后发送所述数据包对应的确认帧。
5.如权利要求1所述的提升蓝牙网络入网速度的方法,其特征在于,还包括:待加入设备收到数据包后延迟第一时间段后响应,以判断是否还有待接收的数据,第一时间段在10至30毫秒之间。
6.如权利要求1所述的提升蓝牙网络入网速度的方法,其特征在于,还包括:
网络提供设备对待加入设备传输事务时,以下两条件满足之一时,即判断所述事务已被对方成功接收:网络提供设备收到所述事务对应的确认帧,或网络提供设备收到所述事务的下一个事务的数据分片。
7.如权利要求1所述的提升蓝牙网络入网速度的方法,其特征在于,还包括:
网络提供设备对待加入设备传输事务时,对于超时重传的事务,待加入设备收到所述超时重传的事务的一个数据分片即回复确认帧。
8.如权利要求1所述的提升蓝牙网络入网速度的方法,其特征在于,网络提供设备接收到预配置邀请的确认帧,即判断待加入设备接收到了链路开启数据包和预配置邀请数据包;
网络提供设备接收到待加入设备的特性的数据包,即判断待加入设备接收到了链路开启数据包和预配置邀请数据包。
9.如权利要求1所述的提升蓝牙网络入网速度的方法,其特征在于,待加入设备向网络提供设备传输待加入设备特性的数据包后向网络提供设备传输预配置邀请数据包的确认帧。
10.如权利要求1所述的提升蓝牙网络入网速度的方法,其特征在于,还包括:
网络提供设备对待加入设备传输事务时,对于重传的事务,所述重传的事务的数据分片按第一顺序重传,所述第一顺序与所述事务的数据分片的上一次传送的顺序不同。
11.如权利要求1所述的提升蓝牙网络入网速度的方法,其特征在于,网络提供设备或待加入设备在等待对方的确认帧或其他数据包时,网络提供设备或待加入设备在两个广播期间之间***一定长度的扫描接收期间。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2017100920318 | 2017-02-21 | ||
CN201710092031 | 2017-02-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107959553A CN107959553A (zh) | 2018-04-24 |
CN107959553B true CN107959553B (zh) | 2020-10-02 |
Family
ID=61963502
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711073991.6A Active CN107959553B (zh) | 2017-02-21 | 2017-11-05 | 提升蓝牙网络入网速度的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107959553B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110830976B (zh) * | 2018-08-10 | 2022-08-12 | 炬力(珠海)微电子有限公司 | 一种通信连接建立方法及装置 |
JP7183671B2 (ja) * | 2018-10-02 | 2022-12-06 | カシオ計算機株式会社 | 無線通信装置、無線通信方法、及びプログラム |
CN109561395A (zh) * | 2018-12-07 | 2019-04-02 | 青岛海信电器股份有限公司 | 一种蓝牙传输方法及装置 |
CN109951832B (zh) * | 2019-03-06 | 2022-03-11 | 乐鑫信息科技(上海)股份有限公司 | 用于在蓝牙Mesh网络中进行启动配置的方法 |
CN111277986B (zh) * | 2020-03-06 | 2022-02-25 | 北京百瑞互联技术有限公司 | 一种提高iOS设备蓝牙传输速度的方法 |
CN111328037A (zh) * | 2020-03-11 | 2020-06-23 | 四川路桥建设集团交通工程有限公司 | 一种基于蓝牙mesh技术的高速公路隧道通信***及通信方法 |
CN111371895A (zh) * | 2020-03-11 | 2020-07-03 | 四川路桥建设集团交通工程有限公司 | 一种高速公路隧道用机电设备管理***及其方法 |
CN112017413A (zh) * | 2020-08-17 | 2020-12-01 | 苏州博联科技有限公司 | 一种针对蓝牙Mesh远程控制***的优化方法 |
CN111970690B (zh) * | 2020-08-18 | 2022-04-26 | 苏州永联芯电子有限公司 | 一种面向蓝牙Mesh网络的密钥管理方法及*** |
CN111988827B (zh) * | 2020-08-28 | 2022-07-29 | 苏州永联芯电子有限公司 | 存在移动节点的蓝牙mesh网络的路由优化方法及*** |
CN113873486B (zh) * | 2021-09-23 | 2022-07-12 | 上海山景集成电路股份有限公司 | 蓝牙通信方法、通信设备及*** |
CN115037607B (zh) * | 2022-07-11 | 2024-03-22 | 上海庆科信息技术有限公司 | 蓝牙网状网设备的配置方法、装置、存储介质及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101662798A (zh) * | 2009-09-22 | 2010-03-03 | 北京科技大学 | 无线传感器网络低功耗邀请重传方法及其装置 |
EP2645778A1 (en) * | 2012-03-29 | 2013-10-02 | General Electric Company | System and method for automated provisioning of a wireless device |
CN105451300A (zh) * | 2015-11-04 | 2016-03-30 | 广东欧珀移动通信有限公司 | 一种网络连接方法及移动设备 |
-
2017
- 2017-11-05 CN CN201711073991.6A patent/CN107959553B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101662798A (zh) * | 2009-09-22 | 2010-03-03 | 北京科技大学 | 无线传感器网络低功耗邀请重传方法及其装置 |
EP2645778A1 (en) * | 2012-03-29 | 2013-10-02 | General Electric Company | System and method for automated provisioning of a wireless device |
CN105451300A (zh) * | 2015-11-04 | 2016-03-30 | 广东欧珀移动通信有限公司 | 一种网络连接方法及移动设备 |
Non-Patent Citations (1)
Title |
---|
"Secure authorization,access control and data integrity inBluetooth";L.Nguyen;《Proceedings 10th IEEE International Conference on Networks》;20021107;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN107959553A (zh) | 2018-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107959553B (zh) | 提升蓝牙网络入网速度的方法 | |
JP4818374B2 (ja) | 車両用通信装置 | |
RU2490802C2 (ru) | Способ и устройство для подтверждения и повторной передачи групповых данных в беспроводных локальных сетях | |
EP2278770B1 (en) | Wireless Communication System using TCP | |
RU2478259C2 (ru) | Устройство для запроса подтверждения и передачи подтверждения групповых данных в беспроводных локальных сетях | |
US7483412B2 (en) | Range extension between two wireless devices | |
TW586299B (en) | Method and system for variable rate acknowledgement for wireless communication protocols | |
US20060154603A1 (en) | Method and devices for efficient data transmission link control in mobile multicast communication systems | |
EP2753117B1 (en) | Apparatus and method for transmitting and receiving data in NFC | |
US10979934B2 (en) | System and method for maintaining synchronization in connectionless transmissions | |
CN106453356B (zh) | 无线网络双边加速传输方法和*** | |
JP2002135357A (ja) | 通信システムにおけるデータ流れの制御方法 | |
JP2016501488A (ja) | Ueのmtcグループに対するブロードキャストにおけるグループ認証 | |
WO2009021419A1 (fr) | Procédé d'accès aléatoire pour un système de radiocommunication cellulaire | |
Bao et al. | Performance analysis of reliable MAC-layer multicast for IEEE 802.11 wireless LANs | |
JP2008160182A (ja) | 無線通信機システムおよびその無線通信シーケンス | |
JP2000115051A (ja) | 無線マルチキャストデータ転送方法及び該方法を用いた無線通信システム | |
JP6516402B2 (ja) | ユーザ装置、及びレイヤ2状態制御方法 | |
EP1505759B1 (en) | Method and device for transmitting/receiving data using acknowledged transport layer protocols | |
US9094879B2 (en) | Handover method of wireless communication system, and wireless base station and wireless terminal of the same system | |
JP3305268B2 (ja) | 無線マルチキャスト受信局グループ構成方法及び該方法を用いた無線局 | |
WO2015062033A1 (zh) | 数据包接收状态的反馈方法、发送节点及接收节点 | |
JP4277411B2 (ja) | マルチキャスト通信システム及びマルチキャスト通信方法、データ通信装置及びデータ通信方法、並びに、マルチキャスト通信システムにおける待ちフレーム数の自動設定方法 | |
Bravo et al. | Evaluation and Improvement of Multicast Service in 802.11 b | |
KR20080016420A (ko) | 무선 네트워크에서 통신방법, 무선 네트워크에서스테이션의 통신방법 및 스테이션 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: A1009, floor 9, block a, No. 9, Shangdi Third Street, Haidian District, Beijing 100085 Patentee after: Beijing Bairui Internet Technology Co.,Ltd. Address before: 7-1, building C, 7 / F, building 2-1, No.2, Shangdi Information Road, Haidian District, Beijing, 100085 Patentee before: BARROT WIRELESS Co.,Ltd. |