APP下载

低功耗蓝牙5.0 邻居发现协议时延模型研究

2021-07-16骆冰清王佩佩王正康孙知信

通信学报 2021年6期
关键词:低功耗数据包间隔

骆冰清,王佩佩,王正康,孙知信

(1.江苏省大数据安全与智能处理重点实验室(南京邮电大学),江苏 南京 210023;2.南京邮电大学计算机学院、软件学院、网络与空间安全学院,江苏 南京 210023;3.南京邮电大学国家邮政局邮政行业技术研发中心(物联网技术),江苏 南京 210003;4.宽带无线通信与传感网技术教育部重点实验室(南京邮电大学),江苏 南京 210003)

1 引言

随着物联网应用的发展,无线通信技术成为解决物联网应用终端设备连接的主要方案[1]。低功耗蓝牙(BLE,Bluetooth low energy)是由蓝牙技术联盟(Bluetooth SIG,Bluetooth Special Interest Group)提出的一种无线个人域网络技术[2],具有易部署、低功耗、快速连接和稳健性强等特点,被广泛用于灾难区域人员定位和搜救[3]、室内人数检测[4]以及智能照明系统[5]等物联网应用系统中。

传统蓝牙技术作为一种短距离通信解决方案,曾应用于智能手机、平板电脑、笔记本电脑等设备之间的传输通信。然而,这种面向连接的传统蓝牙技术极大地限制了蓝牙技术在物联网应用领域的发展,其主要原因在于与传统蓝牙设备相连接的笔记本电脑、智能手机等设备价格过高,续航能力有限,无法满足物联网应用中高密度部署[6]。2016 年Bluetooth SIG 提出蓝牙5.0 标准,将无线低功耗蓝牙设备的传输速度提升至2 Mbit/s,传输距离达300 m,为低功耗蓝牙技术在物联网领域的应用提供了广阔的发展空间[7]。

邻居发现是无线低功耗蓝牙设备相互发现继而构建网络的第一步。邻居发现协议如何满足物联网应用对发现时延的不同需求,成为分析邻居发现协议的一个重要问题。尽管目前已有数以万计的蓝牙设备投入应用系统中,但邻居发现过程存在异步性与周期性,对于其时延性能的分析仍不明朗。因此,工业界和学术界均针对低功耗蓝牙网络的邻居发现过程进行了大量的研究。

在工业界,研究人员试图通过测量与观察来分析低功耗蓝牙设备在邻居发现及通信阶段的时延与能耗水平[8-9]。然而,低功耗蓝牙技术标准中邻居发现过程的参数选择范围很广,仅仅通过测量的方法,几乎不可能在参数范围全覆盖的条件下对其性能进行分析。通过仿真计算平均时延的方法需要在不同参数设置条件下重复成百上千次实验,参数设置的多样性同样极大地增加了仿真测试的计算复杂度。因此,学术界的研究人员采用建模的方法对低功耗蓝牙网络邻居发现过程进行性能分析。Liu等[10-12]提出一种基于有效扫描窗口的低功耗蓝牙邻居发现模型,利用概率的方法分析了邻居发现的时延性能与能耗水平。Kindt 等[13-14]提出通过对广播开始时间与扫描开始时间之间的差进行建模,探索周期性异步邻居发现的时延边界。通过对邻居发现过程的建模,建立参数设置与性能之间的理论关系,为不同场景中的网络初始化设置提供参考。蓝牙5.0 标准的邻居发现过程在原有协议基础上增加了扩展广播包,同时将0~36 号信道作为辅助信道用于邻居发现,大大改善了节点密度较高状态下的邻居发现时延性能。在目前的研究成果中,大多数研究仍基于蓝牙4.2 的技术标准,缺少对基于蓝牙5.0 的低功耗蓝牙邻居发现协议的分析研究工作。其次,由于低功耗蓝牙邻居发现的异步性,现有的研究成果仍受限于参数的取值范围或概率假设条件,亟须进一步改进与完善。

基于上述问题,本文针对蓝牙5.0 标准协议,提出了基于中国剩余定理的低功耗蓝牙邻居发现时延分析模型。本文的主要贡献如下。1) 分析基于蓝牙5.0 的邻居发现过程,针对参数设置造成的不同信道有效扫描窗口重叠情况,提出了在无覆盖与有覆盖2 种条件下的有效扫描窗口发现模型。2) 针对邻居发现协议的异步性造成的发现时间不确定问题,提出基于中国剩余定理的低功耗蓝牙邻居发现时延分析模型,给出了协议参数与发现时延的理论关系。

2 相关研究

低功耗蓝牙网络邻居发现协议是一种典型的异步周期性协议,这些低功耗蓝牙节点时钟完全不同步,因此2 个节点第一次相互发现的时间是随机的。这是低功耗蓝牙邻居发现协议建模所需解决的重要问题。国内外学者针对邻居发现协议的性能建模进行了广泛研究[15]。

文献[10-11]提出一种基于有效扫描窗口的邻居发现协议建模方法,通过计算广播节点在有效扫描窗口中开始广播的概率,结合广播间隔与扫描周期等参数得到邻居发现的时延。文献[12]在文献[10]的基础上,测量邻居发现过程中各阶段节点损耗的电流量,评估邻居发现参数设置对节点能耗的性能影响。然而,在该模型基础上得到的分析结果只适用于广播间隔小于扫描窗口的情况,对于其他情况无法得到正确的时延与能耗结果。

为了克服模型结果受到条件限制的情况,文献[13]在有效扫描窗口模型的基础上,假设广播节点开始时间相对于扫描节点开始时间的差φ按照Δ间隔在0~3 倍的扫描周期之间增长,将开始时间的不确定性与无限性转化为有限可能的问题。该方法不仅适用于广播间隔大于扫描窗口时长的情况,同时覆盖了参数设置的全部范围。但当参数取值较大时,采用该模型完成一次计算的时间将达到几个小时之久。同时,该模型基于广播节点开始时间晚于扫描节点开始时间,具有一定的局限性。文献[16-17]均对文献[13]中的模型进行了改进。文献[16]采用一种迭代的概率模型来预估广播节点的发现时延,从而降低文献[13]中模型的计算复杂度,但该方法牺牲了部分预估结果的准确性。文献[17]对文献[13]的模型进行了补充,增加了φ的取值范围,因此该模型适用于广播节点开始时间早于扫描节点开始时间的情况。以上模型均是针对1:1 的低功耗蓝牙网络,对邻居发现性能的分析仅限于一个广播节点与一个扫描节点之间相互发现的情况。

文献[18]提出一种数学模型,针对单个扫描节点覆盖范围内存在多个广播节点的情况,对发现时延边界进行研究与分析。该模型可以灵活地调整广播间隔参数与广播包的大小,但只适用于连续扫描(即扫描间隔等于扫描窗口大小)的情况。文献[19]同样针对1:N的网络(一个扫描节点,N个广播节点)情况,提出一种广播间隔优化方法,降低整个网络的发现时延。但该模型仍然受到连续扫描以及扫描间隔大于广播间隔的条件限制。

考虑低功耗蓝牙网络中广播节点数量对邻居发现时延与可靠性的影响,文献[20]在理论研究结论的基础上提供了一个广播节点数量大于200 的物联网应用实验评估。实验结果表明,低功耗蓝牙的多次广播机制能够保证在拥挤网络环境中的邻居发现可靠性。

Cho 等[21-22]提出一种基于充足剩余时间的低功耗蓝牙邻居发现性能分析模型。文献[21-22]假设扫描节点第一次接收到广播包的时间为t0,从t0到扫描窗口结束为剩余时间,在连续扫描的情况下,通过计算在各个信道上能够实现充足剩余时间的概率得出平均时延。该模型克服了有效扫描窗口模型的条件限制,但是由于模型中假设广播包被3 个信道接收的概率是一个常数,影响了模型结果的准确性。

上述模型均是通过基于概率的方法来表示广播节点与扫描节点相互发现的可能性,从而解决异步邻居发现协议的不确定性,但是也受限于一定的适用或者假设条件。文献[23]提出一种将有效扫描窗口模型离散化的方法,同时采用中国剩余定理计算各个参数条件下2 个节点相互发现时间槽。该方法有效地将无限不确定问题转变为有限问题,并用中国剩余定理保证了异步情况下两节点一定能够互相发现,但是有效扫描窗口模型的有效性受到广播间隔必须小于扫描窗口时长限制的问题仍然存在,且该模型仍基于蓝牙4.2 协议设计,缺少对蓝牙5.0 技术标准中扩展广播包时延的考虑。文献[24]在蓝牙5.0 的协议框架下对低功耗蓝牙邻居发现协议的时延进行了建模分析,在文献[23]的基础上考虑了蓝牙5.0 协议中的扩展广播包的接收时延与接收概率。然后,由于文献[24]沿用了文献[23]中所提出的建模方法,因此,模型的有效性仍然受到参数设置的限制,同时也未考虑到参考设置导致扫描窗口之间有覆盖情况下对发现时延的影响。

文献[25]针对具有周期性间隔的邻居发现协议时延分析进行了建模分析,提出一种能够在任何给定占空比的情况下,给出一组优化参数设置从而使邻居发现协议最优的优化算法。然而,该算法是针对单信道情况下具有周期性间隔特征的邻居发现协议,对于低功耗蓝牙邻居发现协议在3 个信道上广播的优化还需进一步改进与研究。

文献[26]对具有异步性的轮询邻居发现协议时延进行建模与分析,通过将离散时间槽中的整数时间间隔改进为广域非整数模型来降低异步邻居发现协议的时延。该方法针对邻居发现协议的周期性轮询与异步性给出了时延建模的解决方案,但针对低功耗蓝牙邻居发现协议的多信道特征缺少考虑。

从以上研究现状可以发现,目前已有的低功耗蓝牙邻居发现模型多针对蓝牙4.2 协议进行建模,文献[27]利用智能手机对蓝牙4.2 协议的理论模型进行了验证,实验表明基于智能手机的低功耗蓝牙发现时延水平与现有理论模型的预测结果相当,但广播间隔对平均发现时延的影响仍具有较高的可变性。

蓝牙5.0 协议相比蓝牙4.2 协议在邻居发现过程增加了扩展广播信道与扩展广播包的设置,同时拓宽了邻居发现协议参数的设置范围,导致目前已有的理论分析模型均将不再适用于对低功耗蓝牙5.0 邻居发现协议。本文研究分析了基于蓝牙5.0 标准的邻居发现协议,提出了低功耗蓝牙邻居发现协议在不同信道上扫描窗口之间有覆盖与无覆盖2 种情况,针对不同情况提出基于中国剩余定理的低功耗蓝牙邻居发现时延分析模型,从理论上给出了邻居发现协议参数配置与发现时延之间的关系,为网络部署提供参数配置指导。

3 低功耗蓝牙邻居发现协议模型

低功耗蓝牙网络邻居发现协议具有异步性、多信道以及周期性的特点。邻居发现过程中的多个初始化参数均对邻居发现时延具有重要影响。为了建立多参数与发现时延之间的关系,本节将基于蓝牙5.0 协议的规范内容,对低功耗蓝牙节点的邻居发现过程进行分析。表1 总结了本文所使用到的缩略词和符号。

表1 缩略词和符号含义

3.1 基于蓝牙5.0 的邻居发现协议

邻居发现是节点设备建立连接的第一步。根据蓝牙5.0 标准[7],邻居发现过程主要包括2 个事件,广播事件与扫描事件。广播事件又分成广播阶段与扩展广播阶段,分别在主信道和辅信道上完成。基于蓝牙5.0 标准的邻居发现过程如下:广播设备在主信道(信道37~39)上按照固定的广播间隔(AdvInterval )依次发送广播数据包(ADV_EXT_IND);扫描节点在 3 个扫描间隔(Scanning Interval)内同样按照主信道37~39 的顺序依次扫描广播数据包,扫描节点仅在扫描窗口(Scan Window)时间内能够接收广播数据包。一旦扫描节点与广播节点处于同信道,同时接收到从广播节点发送出的ADV_EXT_IND 数据包与AuxPTR数据包,即可获取AUX_ADV_IND 数据包的相关信息。如图1 所示,AuxPTR 数据包中包括信息偏移量AuxOffset 和偏移单位大小 Offsetunit(将AuxOffset 与单位偏移值进行相乘后得到偏移值Offset,以下均统一使用Offset 代表偏移值),以及数据传输信道(CHx)等。通过信道偏移值Offset,扫描设备获得接收AUX_ADV_IND 数据包的时间信息。而数据传输信道(CHx)则是从除了3 个主信道之外的37 个信道(信道0~36)中随机选择一个产生。根据信道偏移时间,扫描节点在信道CHx上等待接收AUX_ADV_IND 数据包,完成接收后,扫描节点发送连接请求给广播节点,并等待接收connect_req_ACK,从而扫描节点与广播节点在信道CHx 上完成链路层连接。

图1 基于蓝牙 5.0 的低功耗蓝牙邻居发现协议

目前,已有的对邻居发现协议时延建模大部分是基于蓝牙4.2 协议进行研究。蓝牙4.2 邻居发现协议中,广播节点与扫描节点的数据交换在广播数据包被发现的广播信道完成。即广播节点发送广播数据包后,等待扫描节点响应,若扫描节点在广播等待时间内发出了连接请求,广播节点及时响应请求,从而完成节点的发现过程。由此可以看出,蓝牙5.0 邻居发现过程与蓝牙4.2 协议最主要的区别在于增加了扩展广播包与扩展广播信道,将广播信道从原来的37~39 信道扩展至0~39 信道,从而减小邻居发现过程中的信道冲突问题。

3.2 基于有效扫描窗口的无覆盖邻居发现协议模型

通过上述分析可知,主信道上的广播节点在一个广播间隔(AdvInterval,Tadv)内分别在3 个信道上进行广播包发送;扫描节点在一个扫描间隔(Scanning Interval,Tsin)内仅在某一信道上进行扫描。由于每一个信道上发送广播数据包的时长(da)以及等待时间(dch)的存在,扫描节点在各信道上的有效扫描窗口根据信道不同会发生变化。以37信道为例,若广播节点发送广播包的开始时间距离37 信道上的扫描间隔结束时间小于37 信道上的广播发送时长,则广播包不可能被扫描节点及时接收,即无法实现邻居发现。相反,在38 信道上,如果广播包的发送时刻距离38 信道的扫描开始时间小于一个广播包的发送与等待时间,扫描节点仍能够有效接收到38 信道的广播数据包。以此推算,39 信道上仍存在提前的有效扫描时间(dearly)与无效的滞后扫描时间(dlate)。对3 个信道的提前有效扫描时间与滞后无效扫描时间进行整合后,可得到基于有效扫描窗口的低功耗蓝牙邻居发现协议模型,如图2 所示。

根据图2 可知,扫描节点在3 个主信道上的有效扫描窗口(de)可以表示为de=ωSW−dlate+dearly,其中,SWω为扫描窗口时长。图2 所示的有效扫描窗口模型具有一个典型特征,即3 个主信道之间的提前有效扫描时间与前一个扫描窗口之间无覆盖情况。无覆盖情况下的主信道有效窗口参数如表2 所示。

图2 无覆盖情况下基于有效窗口的低功耗蓝牙邻居发现协议模型

表2 无覆盖情况下主信道有效窗口参数

在37 信道上,不存在提前有效扫描时间,滞后有效扫描时间为一个广播包的发送时间da;38信道的提前有效扫描时间是一个广播包的发送时间加上一个信道的等待时间即da+dch,滞后有效扫描时间为2 个广播包的发送时间加上一个信道的等待时间即2da+2dch;39 信道的提前有效扫描时间是2 个广播包的发送时间加上2 个信道的等待时间即2da+2dch,滞后有效扫描时间为3 个广播包的发送时间加上2 个信道的等待时间即2da+2dch。根据上述有效扫描窗口的计算式,可以得到3 个信道上的有效扫描窗口均为ωSW−da。

上述无覆盖情况下的基于有效窗口的低功耗蓝牙邻居发现模型被用于多篇邻居发现性能分析方法[10,13,23]。然而由于该模型只适用于无覆盖情况,因此针对该模型的性能分析仅在扫描间隔大于广播间隔的条件下有效。有覆盖情况下的邻居发现协议模型将在3.3 节中详细介绍。

3.3 基于有效扫描窗口的有覆盖邻居发现协议模型

本文考虑扫描节点的有效扫描窗口在3 个信道上产生覆盖的情况,可以得出基于有效窗口的有覆盖低功耗蓝牙邻居发现协议模型,如图3 所示。

图3 有覆盖情况下基于有效窗口的低功耗蓝牙邻居发现协议模型

通过推论可知,当满足扫描间隔与扫描窗口的差值小于一个广播包等待时间时,即Tsin−ωSW≤dch,后一个信道的提前有效扫描时间与前一个信道的扫描窗口会产生重合。产生重合有效扫描时长为do=dch−(Tsin−ωSW)。同时,由于重合有效扫描时长的存在,主信道上的有效扫描窗口相比于无覆盖情况产生了变化。以38 信道为例,当覆盖存在时,38 信道的提前有效时间处于37 信道的扫描窗口内,而同一时刻下扫描节点只能在一个信道(37信道)上进行扫描,因此,38 信道的提前扫描时长因为重合部分而减小,进而减小了38 信道的有效扫描窗口。覆盖情况下的有效扫描窗口de'可表示为=dearly+ωSW−dlate−do。由此,表3 给出了覆盖情况下3 个信道上有效扫描窗口参数。在37 信道上,提前有效扫描时长为0,滞后有效扫描时长仍为da,重合有效扫描时长为0,有效扫描窗口为ωSW−da;38 信道的提前有效扫描时长为无覆盖情况下的提前有效扫描时长减去重合时长,即,滞后有效扫描时长仍为2da+dch,有效扫描窗口=Tsin−da−dch,重合有效扫描时长为dch−Tsin+ωSW;39 信道的提前有效扫描时长为,滞后有效扫描时长仍为3da+2dch,有效扫描窗口de'=Tsin−da−dch,重合有效扫描时长为dch−Tsin+ωSW。

表3 覆盖情况下主信道有效窗口参数

4 基于中国剩余定理的低功耗蓝牙邻居发现时延分析模型

本节将中国剩余定理应用到前述的基于有效扫描窗口的邻居发现模型中,通过中国剩余定理得到低功耗蓝牙节点在主信道上的相互发现时间,再根据蓝牙5.0 邻居发现协议的辅信道发现过程,对低功耗蓝牙邻居发现协议时延进行建模与分析。

中国剩余定理又称中国余数定理,用于求解一次同余式组。该定理假设两整数ni、nj互质,则对任意整数mi、mj,式(1)存在解x=x0+kni n j,k∈Ζ+。

利用中国剩余定理,假设两节点异步邻居发现协议周期互质,则在两节点唤醒时间不同步的情况下,也一定存在互相发现的时刻[28]。同样,针对低功耗蓝牙邻居发现协议,若假设广播节点与扫描节点在同一信道上的周期互质,则对于两节点任意开始广播事件与扫描事件时刻,两节点一定能在某一时刻互相发现。

假设低功耗蓝牙广播节点开始广播的时刻为t0,扫描节点开始扫描的时刻为t1,根据图2 与表2,可以得到在无覆盖情况下广播节点在37~39 信道上有效开始广播的时刻为t0;扫描节点在37~39 主信道上的有效开始时刻分别为t1,。且每个信道上具有相同的广播间隔与扫描间隔,分别为Tadv和3Tsin。此时,可分别得到3 个主信道上的方程组

根据中国剩余定理的使用条件,当Tadv和3Tsin互质时,则存在3 个方程组的解分别可表示各信道上在时刻t广播节点与扫描节点互相发现,相应的解可表示为

同时,扫描开始时间t1∈[0,Tsin−da]。由于解中的参数需满足无覆盖情况下的条件,因此该解只适用于Tsin−ωSW>dch且Tsin≤3da+2dch的情况。

当Tsin−ωSW≤dch且Tsin>3da+2dch时,基于有效窗口的邻居发现协议模型会发生后一信道上的有效扫描窗口与前一信道时刻重叠的问题。假设低功耗蓝牙广播节点开始广播的时刻为t0,扫描节点开始扫描的时刻为t1,根据图3 和表3,可以得到有覆盖情况下广播节点在37~39 信道上的有效开始时刻为t0;扫描节点在37~39 主信道上的有效开始时刻分别为t1、t1+ωSW−da、t1+ωSW+Tsin−dch−2da,且每个信道上具有相同的广播间隔与扫描间隔,分别为Tadv和3Tsin。此时,可得到在有覆盖情况下各信道上广播节点与扫描节点在时刻t相互发现得到的解

为便于后续计算,将2 种情况下得到的解进行合并后,可表示为

其中,t1∈[0,Tsin−da]。

此时,用η(t,L)表示在以上3 个信道的解中所能得到的第L个最小时刻的解,即为广播节点与扫描节点在主信道上相互发现的最早时刻。η(t,L)可表示为

广播节点与扫描节点在主信道完成发现后,根据图1 可知,扫描节点接收到ADV_EXT_IND 数据包后,获得偏移值Offset 以及信道CHx,并等到Offset 时长后在CHx 等待接收AUX_ADV_IND 数据包,从而与广播节点建立连接,完成邻居发现。假设扫描节点在辅信道成功接收到AUX_ADV_IND 数据包的概率为PAUX_SUC,在考虑有干扰节点选择了相同辅信道的情况下数据包发生冲突的概率为

其中,TAUX表示AUX_ADV_IND 数据包的发送时长。同时,假设在扫描节点的有效通信范围内广播节点数量为M,由于广播设备彼此独立地操作,并且附近有M−1 个广播设备,因此在有M个节点的情况下冲突概率为

若将辅信道上AUX_ADV_IND 数据包的丢包率表示为PAUX_LOSE,则PAUX_SUC可表示为

根据蓝牙5.0 邻居发现协议,考虑辅信道上的偏移值以及数据包的发送时间,可以得到广播节点在辅信道上完成AUX_ADV_IND 数据包接收的时刻Γ(t,L)。若主信道的发现信道为37,则广播节点从开始发送广播数据包到扫描节点在辅信道上接收到AUX_ADV_IND 数据包的时间Γ(t,L)可表示为

若主信道的发现信道为38,则有

若主信道的发现信道为39,则有

由此,可以得到从广播节点开始广播事件时刻t0到扫描节点完成AUX_ADV_IND 数据包的时延D(t,L)为

由于每个AUX_ADV_IND 的接收失败情况独立发生,根据几何分布,扫描设备的第L个接收的数据包是第一个非错误PDU(即第一次成功接收)的概率为。从广播节点启动到扫描节点成功扫描并接收到所有数据包的发现时延D(t) 可表示为

由于扫描设备在3 个信道(37~39)上以周期3Tsin重复其扫描过程,因此本文假设广播设备以相同的概率在[0,3Tsin]内的任何时刻开始广播,而不会失去一般普适性,则低功耗蓝牙邻居发现协议的发现时延平均值为

本文所提出的基于中国剩余定理的低功耗蓝牙邻居发现时延分析模型伪代码如算法1 所示。

算法1基于中国剩余定理的低功耗蓝牙邻居发现时延分析模型

输入Tsin,da,dch,ωSW,Tadv,PAUX_LOSE,TAUX,Offset(输入要求Tadv与3Tsin互质)

输出发现时延

5 仿真分析

为了验证本文提出的模型有效性,本节设置了5 组实验,通过本文提出的基于中国剩余定理的低功耗蓝牙邻居发现时延分析模型,分别给出了低功耗蓝牙网络在广播间隔、扫描间隔、扫描窗口、干扰节点数量影响下基于蓝牙5.0 协议的邻居发现平均时延,并在相同实验设置环境下将本文所提出的模型结果与文献[10]中的结果进行对比,将基于蓝牙5.0 与蓝牙4.2 协议的邻居发现时延受节点数量的影响进行了对比。

具体实验设置如下:广播节点与扫描节点分别在[0,Tadv]和[0,3Tsin]内随机开始广播事件与扫描事件。在5 组实验中,发送广播数据包的时长da为4 ms,等待时间dch为2 ms,丢包率PAUX_LOSE为0.05,AUX_ADV_IND 数据包的发送时长TAUX为400 ms,偏移时长Offset 为200 ms。

图4 给出平均发现时延随广播间隔的变化情况。本实验中设置扫描窗口为1.28 s,节点数量为10。广播间隔在0~81.92 s 变化,每次实验自动选取该范围内满足广播间隔Tadv与3Tsin互质的值,在每组取值内重复实验80 次后计算相应取值下的平均发现时延。由图4 结果可知,平均发现时延随广播间隔的增大出现周期性峰值,且峰值呈现逐渐增大的趋势。该结果的周期性同时受到广播事件与扫描事件本身周期性的影响,主要作用于模型中CRT 的解。根据图4 所示,不同的扫描间隔对平均发现时延的波动范围具有一定的影响。当扫描间隔设置为1.28 s 时,平均发现时延仅在0~20 ms 波动。随着扫描间隔的增大,平均发现时延的波动范围增加,最高峰值可达25 s。通过分析可以发现,当扫描窗口与扫描间隔相等时,即扫描节点处于连续扫描状态。此时,实验设置参数满足条件Tsin−ωSW≤dch且Tsin>3da+2dch,即此时后续信道上的有效扫描窗口与前一信道扫描窗口时刻重叠。在有覆盖情况下,广播间隔由小变大的过程中,节点均能快速建立连接。但由于扫描节点没有休眠时间,对扫描节点的能耗也提出了更高的要求。而当扫描间隔较大、扫描窗口较小时,实验设置条件满足Tsin−ωSW>dch且Tsin≤3da+2dch,即无覆盖情况下,如若在某一扫描窗口时长内未能接收到广播数据包,扫描节点需等待更长时间才能进入下一次扫描,因此造成了邻居发现的高时延。

图4 平均发现时延随广播间隔变化情况(扫描窗口为1.28 s,节点数量为10)

图4 中同时给出了文献[10]中的模型在扫描间隔分别为1.28 s、2.56 s 和5.12 s 时的平均发现时延。从图4 中可以看出,文献[10]所提出的模型在3 种实验设置的条件下,实验结果仅能反映出平均发现时延随广播间隔增大而增大的变化趋势,未能给出不同参数设置下可能出现的时延峰值与时延低谷情况。通过分析可知,文献[10]中将有效扫描窗口在3 倍扫描间隔中的占比作为节点能够被发现的概率,进而利用统计方法推算出平均发现时延。该模型中有效窗口时长仅考虑了无覆盖情况下的取值,当扫描间隔与扫描窗口相等时,其结果与真实情况会产生偏差;同时,采用统计方法对平均发现时延的推算平滑了节点在邻居发现过程中因为参数设置发生的耦合问题,导致模型结果不能有效反映出广播节点由于开始时间没能落入有效扫描窗口导致的时延激增情况。

图5给出了本文模型计算出的平均发现时延随扫描间隔变化结果。本实验中设置广播间隔为5.12 s,节点数量为10,扫描间隔在扫描窗口至40.96 s 之间变化。扫描窗口分别设置为1.28 s、5.12 s 与10.24 s 进行实验。固定广播间隔,扫描窗口自动选取扫描间隔变化过程中与广播间隔互质的值,基于模型计算邻居发现时延,重复80 次实验后计算平均时延。从图5 的实验结果可以看出,当扫描间隔与扫描窗口相等时,时延最小,该结果与图4 实验相符。随着扫描间隔越来越大,平均时延呈现出周期性的峰值变化,且峰值大小按线性递增。同时可以看出,当扫描窗口与广播间隔相等时,平均时延的峰值与最小值之间波动最大;当扫描窗口比广播间隔大时,平均时延的波动范围最小,且3 种情况下的最小平均时延接近。由此分析得出,在广播间隔确定的情况下,较大的扫描窗口可以避免高时延,但在避免时延峰值的情况下,准确的扫描间隔设定同样可以达到快速发现的目的。

图5 平均发现时延随扫描间隔的变化情况(广播间隔为5.12 s,节点数量为10)

图6 是平均发现延时随扫描窗口变化的结果。在实验中,将扫描间隔设置为5.68 s,扫描窗口在0至扫描间隔的范围内变化,将广播间隔设置成1.28 s、2.56 s 和5.12 s。在广播间隔与3 倍扫描间隔互质的情况,随机选取广播节点与扫描节点的开始时间重复实验后计算平均发现时延。从图6 的结果中可以发现,在扫描窗口的变化过程中,3 种情况下均有最快平均时延的参数取值,但当广播间隔较小时,能够达到快速发现的参数组合更多,且时延峰值小于其他2 种情况。

图6 平均发现时延随扫描窗口的变化情况(扫描间隔为5.68 s,节点数量为10)

图7 显示了在不同邻居发现协议参数的情况下,平均发现时延随着节点数增多的变化情况。实验中设置多个干扰节点,节点总数在0~1 000 变化。实验将邻居发现协议参数设置为3 组,扫描间隔为3 s,扫描窗口为2 s,广播间隔分别为1 s、5 s、10 s。在相同实验参数条件下,将本文所提出的模型结果与文献[24]中的实验结果进行了对比。在该实验中需要说明的是,由于节点数量极大地影响计算结果,导致节点互相发现后在辅信道上AUX_ADV_IND 数据包成功接收率降低。因此,本文将AUX_ADV_IND 数据包的发送次数上限定为10 次,在该条件下计算平均发现时延。从图7 的结果中可以看出,3 种参数设置的条件下,随着节点数量的增大,平均发现时延出现不同程度的增长。本模型在3 组参数设置下的平均发现时延随节点数量的变化具有一定差异性。首先,当广播间隔小于扫描间隔时,平均发现时延即使在节点数量较大的情况下,仍保持在一个较低的水平,即第10 次发现但未成功接收AUX_ADV_IND 数据包的时延仍在10 s 以内。当广播间隔大于扫描间隔时,随着节点数量的增加,平均发现时延增加,但增加幅度与时延均较为接近。相比于文献[24]的仿真结果可以发现,本文模型所预测的平均发现时延变化趋势与文献[24]贴合,实验结果均表明广播间隔的增大会增加平均发现时延的大小,但本文模型结果对节点数量的大小更为敏感,特别是当节点数量大于200个后,平均发现时延增长迅速,而文献[24]的预测结果则均较为平缓。综上,在设置合适的邻居发现协议参数的基础上,通信范围内干扰节点数量维持在200 个节点以内时对平均发现时延的影响较弱。

图7 平均发现时延随节点数量增多的变化(扫描间隔为3 s,扫描窗口为2 s)

为了验证本文模型的有效性,本文采用文献[23]中的模型给出了蓝牙4.2 邻居发现协议在相同参数设置条件下的平均发现时延,并与本文模型进行了对比。实验参数设置为2 组,分别是广播间隔为5 s、扫描窗口和扫描间隔为7 s,以及广播间隔为10 s、扫描窗口为2 s 和扫描间隔为3 s。节点数量在0~2 000 变化。从图8 中可以看出,蓝牙5.0 协议的邻居发现时延在节点数量增大的过程中维持在100 s以内,而蓝牙4.2 协议下的平均发现时延随着节点数量的增大显著增加。同时可以看出,当节点数量在700 个以内时,连续扫描的情况下的2 个模型给出的平均发现时延接近,但随着节点数量的增加,本文模型给出的平均发现时延与蓝牙4.2 协议模型的差距越来越大。这是由于蓝牙5.0 的邻居发现协议增加了扩展广播信道与扩展广播包,解决了蓝牙4.2 协议在节点密度较大的情况下发生的信号冲突问题。由此可以看出,本文所提出的邻居发现时延模型能够较好地预测低功耗蓝牙网络在蓝牙5.0 协议下的邻居发现性能。

图8 平均发现时延随节点数量增多的变化

通过对以上仿真结果的分析,在扫描节点能耗资源富裕的条件下,采用连续扫描的参数设置可以实现节点的快速邻居发现;同时,相对固定的广播数据包发送时间,较小的广播间隔与较大的扫描窗口可将发现时延维持在低水平;但在设置邻居发现协议参数时,应避开会造成时延峰值的情况;最后,应根据对时延的敏感性相应控制同一节点通信范围内的网络节点数量。

6 结束语

本文针对低功耗蓝牙网络的邻居发现时延问题进行研究,分析了基于蓝牙5.0 协议的邻居发现过程,考虑协议参数设置范围,将基于有效扫描窗口的低功耗蓝牙邻居发现协议模型分成无覆盖与有覆盖2 种情况,避免了模型有效性受到参数设置范围的影响;在此基础上,提出一种基于中国剩余定理的低功耗蓝牙邻居发现的时延模型,解决了低功耗蓝牙邻居发现协议由于其异步性与周期性带来的不确定问题。实验结果表明,协议中的广播间隔、扫描间隔以及扫描窗口大小设置极大地影响着邻居发现时延性能。本文所提出的模型能够有效预测参数配置对时延大小的影响。

本文所提出的模型能够覆盖低功耗蓝牙协议标准中推荐的参数配置范围,但由于受到中国剩余定理的条件约束,广播间隔与3 倍的扫描间隔互质是应用本模型的参数设置前提。在后续的研究中,如何进一步解决异步性导致的不确定问题将是作者继续探索的方向。

猜你喜欢

低功耗数据包间隔
二维隐蔽时间信道构建的研究*
一种高速低功耗比较器设计
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
间隔问题
间隔之谜
一种宽带低功耗四合一接收机设计
C#串口高效可靠的接收方案设计
低功耗便携智能翻译手套系统
低功耗技术在驾驶行为管理模块中的应用
上楼梯的学问