駱冰清,王佩佩,王正康,孫知信
(1.江蘇省大數(shù)據(jù)安全與智能處理重點實驗室(南京郵電大學),江蘇 南京 210023;2.南京郵電大學計算機學院、軟件學院、網絡與空間安全學院,江蘇 南京 210023;3.南京郵電大學國家郵政局郵政行業(yè)技術研發(fā)中心(物聯(lián)網技術),江蘇 南京 210003;4.寬帶無線通信與傳感網技術教育部重點實驗室(南京郵電大學),江蘇 南京 210003)
隨著物聯(lián)網應用的發(fā)展,無線通信技術成為解決物聯(lián)網應用終端設備連接的主要方案[1]。低功耗藍牙(BLE,Bluetooth low energy)是由藍牙技術聯(lián)盟(Bluetooth SIG,Bluetooth Special Interest Group)提出的一種無線個人域網絡技術[2],具有易部署、低功耗、快速連接和穩(wěn)健性強等特點,被廣泛用于災難區(qū)域人員定位和搜救[3]、室內人數(shù)檢測[4]以及智能照明系統(tǒng)[5]等物聯(lián)網應用系統(tǒng)中。
傳統(tǒng)藍牙技術作為一種短距離通信解決方案,曾應用于智能手機、平板電腦、筆記本電腦等設備之間的傳輸通信。然而,這種面向連接的傳統(tǒng)藍牙技術極大地限制了藍牙技術在物聯(lián)網應用領域的發(fā)展,其主要原因在于與傳統(tǒng)藍牙設備相連接的筆記本電腦、智能手機等設備價格過高,續(xù)航能力有限,無法滿足物聯(lián)網應用中高密度部署[6]。2016 年Bluetooth SIG 提出藍牙5.0 標準,將無線低功耗藍牙設備的傳輸速度提升至2 Mbit/s,傳輸距離達300 m,為低功耗藍牙技術在物聯(lián)網領域的應用提供了廣闊的發(fā)展空間[7]。
鄰居發(fā)現(xiàn)是無線低功耗藍牙設備相互發(fā)現(xiàn)繼而構建網絡的第一步。鄰居發(fā)現(xiàn)協(xié)議如何滿足物聯(lián)網應用對發(fā)現(xiàn)時延的不同需求,成為分析鄰居發(fā)現(xiàn)協(xié)議的一個重要問題。盡管目前已有數(shù)以萬計的藍牙設備投入應用系統(tǒng)中,但鄰居發(fā)現(xiàn)過程存在異步性與周期性,對于其時延性能的分析仍不明朗。因此,工業(yè)界和學術界均針對低功耗藍牙網絡的鄰居發(fā)現(xiàn)過程進行了大量的研究。
在工業(yè)界,研究人員試圖通過測量與觀察來分析低功耗藍牙設備在鄰居發(fā)現(xiàn)及通信階段的時延與能耗水平[8-9]。然而,低功耗藍牙技術標準中鄰居發(fā)現(xiàn)過程的參數(shù)選擇范圍很廣,僅僅通過測量的方法,幾乎不可能在參數(shù)范圍全覆蓋的條件下對其性能進行分析。通過仿真計算平均時延的方法需要在不同參數(shù)設置條件下重復成百上千次實驗,參數(shù)設置的多樣性同樣極大地增加了仿真測試的計算復雜度。因此,學術界的研究人員采用建模的方法對低功耗藍牙網絡鄰居發(fā)現(xiàn)過程進行性能分析。Liu等[10-12]提出一種基于有效掃描窗口的低功耗藍牙鄰居發(fā)現(xiàn)模型,利用概率的方法分析了鄰居發(fā)現(xiàn)的時延性能與能耗水平。Kindt 等[13-14]提出通過對廣播開始時間與掃描開始時間之間的差進行建模,探索周期性異步鄰居發(fā)現(xiàn)的時延邊界。通過對鄰居發(fā)現(xiàn)過程的建模,建立參數(shù)設置與性能之間的理論關系,為不同場景中的網絡初始化設置提供參考。藍牙5.0 標準的鄰居發(fā)現(xiàn)過程在原有協(xié)議基礎上增加了擴展廣播包,同時將0~36 號信道作為輔助信道用于鄰居發(fā)現(xiàn),大大改善了節(jié)點密度較高狀態(tài)下的鄰居發(fā)現(xiàn)時延性能。在目前的研究成果中,大多數(shù)研究仍基于藍牙4.2 的技術標準,缺少對基于藍牙5.0 的低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議的分析研究工作。其次,由于低功耗藍牙鄰居發(fā)現(xiàn)的異步性,現(xiàn)有的研究成果仍受限于參數(shù)的取值范圍或概率假設條件,亟須進一步改進與完善。
基于上述問題,本文針對藍牙5.0 標準協(xié)議,提出了基于中國剩余定理的低功耗藍牙鄰居發(fā)現(xiàn)時延分析模型。本文的主要貢獻如下。1) 分析基于藍牙5.0 的鄰居發(fā)現(xiàn)過程,針對參數(shù)設置造成的不同信道有效掃描窗口重疊情況,提出了在無覆蓋與有覆蓋2 種條件下的有效掃描窗口發(fā)現(xiàn)模型。2) 針對鄰居發(fā)現(xiàn)協(xié)議的異步性造成的發(fā)現(xiàn)時間不確定問題,提出基于中國剩余定理的低功耗藍牙鄰居發(fā)現(xiàn)時延分析模型,給出了協(xié)議參數(shù)與發(fā)現(xiàn)時延的理論關系。
低功耗藍牙網絡鄰居發(fā)現(xiàn)協(xié)議是一種典型的異步周期性協(xié)議,這些低功耗藍牙節(jié)點時鐘完全不同步,因此2 個節(jié)點第一次相互發(fā)現(xiàn)的時間是隨機的。這是低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議建模所需解決的重要問題。國內外學者針對鄰居發(fā)現(xiàn)協(xié)議的性能建模進行了廣泛研究[15]。
文獻[10-11]提出一種基于有效掃描窗口的鄰居發(fā)現(xiàn)協(xié)議建模方法,通過計算廣播節(jié)點在有效掃描窗口中開始廣播的概率,結合廣播間隔與掃描周期等參數(shù)得到鄰居發(fā)現(xiàn)的時延。文獻[12]在文獻[10]的基礎上,測量鄰居發(fā)現(xiàn)過程中各階段節(jié)點損耗的電流量,評估鄰居發(fā)現(xiàn)參數(shù)設置對節(jié)點能耗的性能影響。然而,在該模型基礎上得到的分析結果只適用于廣播間隔小于掃描窗口的情況,對于其他情況無法得到正確的時延與能耗結果。
為了克服模型結果受到條件限制的情況,文獻[13]在有效掃描窗口模型的基礎上,假設廣播節(jié)點開始時間相對于掃描節(jié)點開始時間的差φ按照Δ間隔在0~3 倍的掃描周期之間增長,將開始時間的不確定性與無限性轉化為有限可能的問題。該方法不僅適用于廣播間隔大于掃描窗口時長的情況,同時覆蓋了參數(shù)設置的全部范圍。但當參數(shù)取值較大時,采用該模型完成一次計算的時間將達到幾個小時之久。同時,該模型基于廣播節(jié)點開始時間晚于掃描節(jié)點開始時間,具有一定的局限性。文獻[16-17]均對文獻[13]中的模型進行了改進。文獻[16]采用一種迭代的概率模型來預估廣播節(jié)點的發(fā)現(xiàn)時延,從而降低文獻[13]中模型的計算復雜度,但該方法犧牲了部分預估結果的準確性。文獻[17]對文獻[13]的模型進行了補充,增加了φ的取值范圍,因此該模型適用于廣播節(jié)點開始時間早于掃描節(jié)點開始時間的情況。以上模型均是針對1:1 的低功耗藍牙網絡,對鄰居發(fā)現(xiàn)性能的分析僅限于一個廣播節(jié)點與一個掃描節(jié)點之間相互發(fā)現(xiàn)的情況。
文獻[18]提出一種數(shù)學模型,針對單個掃描節(jié)點覆蓋范圍內存在多個廣播節(jié)點的情況,對發(fā)現(xiàn)時延邊界進行研究與分析。該模型可以靈活地調整廣播間隔參數(shù)與廣播包的大小,但只適用于連續(xù)掃描(即掃描間隔等于掃描窗口大?。┑那闆r。文獻[19]同樣針對1:N的網絡(一個掃描節(jié)點,N個廣播節(jié)點)情況,提出一種廣播間隔優(yōu)化方法,降低整個網絡的發(fā)現(xiàn)時延。但該模型仍然受到連續(xù)掃描以及掃描間隔大于廣播間隔的條件限制。
考慮低功耗藍牙網絡中廣播節(jié)點數(shù)量對鄰居發(fā)現(xiàn)時延與可靠性的影響,文獻[20]在理論研究結論的基礎上提供了一個廣播節(jié)點數(shù)量大于200 的物聯(lián)網應用實驗評估。實驗結果表明,低功耗藍牙的多次廣播機制能夠保證在擁擠網絡環(huán)境中的鄰居發(fā)現(xiàn)可靠性。
Cho 等[21-22]提出一種基于充足剩余時間的低功耗藍牙鄰居發(fā)現(xiàn)性能分析模型。文獻[21-22]假設掃描節(jié)點第一次接收到廣播包的時間為t0,從t0到掃描窗口結束為剩余時間,在連續(xù)掃描的情況下,通過計算在各個信道上能夠實現(xiàn)充足剩余時間的概率得出平均時延。該模型克服了有效掃描窗口模型的條件限制,但是由于模型中假設廣播包被3 個信道接收的概率是一個常數(shù),影響了模型結果的準確性。
上述模型均是通過基于概率的方法來表示廣播節(jié)點與掃描節(jié)點相互發(fā)現(xiàn)的可能性,從而解決異步鄰居發(fā)現(xiàn)協(xié)議的不確定性,但是也受限于一定的適用或者假設條件。文獻[23]提出一種將有效掃描窗口模型離散化的方法,同時采用中國剩余定理計算各個參數(shù)條件下2 個節(jié)點相互發(fā)現(xiàn)時間槽。該方法有效地將無限不確定問題轉變?yōu)橛邢迒栴},并用中國剩余定理保證了異步情況下兩節(jié)點一定能夠互相發(fā)現(xiàn),但是有效掃描窗口模型的有效性受到廣播間隔必須小于掃描窗口時長限制的問題仍然存在,且該模型仍基于藍牙4.2 協(xié)議設計,缺少對藍牙5.0 技術標準中擴展廣播包時延的考慮。文獻[24]在藍牙5.0 的協(xié)議框架下對低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議的時延進行了建模分析,在文獻[23]的基礎上考慮了藍牙5.0 協(xié)議中的擴展廣播包的接收時延與接收概率。然后,由于文獻[24]沿用了文獻[23]中所提出的建模方法,因此,模型的有效性仍然受到參數(shù)設置的限制,同時也未考慮到參考設置導致掃描窗口之間有覆蓋情況下對發(fā)現(xiàn)時延的影響。
文獻[25]針對具有周期性間隔的鄰居發(fā)現(xiàn)協(xié)議時延分析進行了建模分析,提出一種能夠在任何給定占空比的情況下,給出一組優(yōu)化參數(shù)設置從而使鄰居發(fā)現(xiàn)協(xié)議最優(yōu)的優(yōu)化算法。然而,該算法是針對單信道情況下具有周期性間隔特征的鄰居發(fā)現(xiàn)協(xié)議,對于低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議在3 個信道上廣播的優(yōu)化還需進一步改進與研究。
文獻[26]對具有異步性的輪詢鄰居發(fā)現(xiàn)協(xié)議時延進行建模與分析,通過將離散時間槽中的整數(shù)時間間隔改進為廣域非整數(shù)模型來降低異步鄰居發(fā)現(xiàn)協(xié)議的時延。該方法針對鄰居發(fā)現(xiàn)協(xié)議的周期性輪詢與異步性給出了時延建模的解決方案,但針對低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議的多信道特征缺少考慮。
從以上研究現(xiàn)狀可以發(fā)現(xiàn),目前已有的低功耗藍牙鄰居發(fā)現(xiàn)模型多針對藍牙4.2 協(xié)議進行建模,文獻[27]利用智能手機對藍牙4.2 協(xié)議的理論模型進行了驗證,實驗表明基于智能手機的低功耗藍牙發(fā)現(xiàn)時延水平與現(xiàn)有理論模型的預測結果相當,但廣播間隔對平均發(fā)現(xiàn)時延的影響仍具有較高的可變性。
藍牙5.0 協(xié)議相比藍牙4.2 協(xié)議在鄰居發(fā)現(xiàn)過程增加了擴展廣播信道與擴展廣播包的設置,同時拓寬了鄰居發(fā)現(xiàn)協(xié)議參數(shù)的設置范圍,導致目前已有的理論分析模型均將不再適用于對低功耗藍牙5.0 鄰居發(fā)現(xiàn)協(xié)議。本文研究分析了基于藍牙5.0 標準的鄰居發(fā)現(xiàn)協(xié)議,提出了低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議在不同信道上掃描窗口之間有覆蓋與無覆蓋2 種情況,針對不同情況提出基于中國剩余定理的低功耗藍牙鄰居發(fā)現(xiàn)時延分析模型,從理論上給出了鄰居發(fā)現(xiàn)協(xié)議參數(shù)配置與發(fā)現(xiàn)時延之間的關系,為網絡部署提供參數(shù)配置指導。
低功耗藍牙網絡鄰居發(fā)現(xiàn)協(xié)議具有異步性、多信道以及周期性的特點。鄰居發(fā)現(xiàn)過程中的多個初始化參數(shù)均對鄰居發(fā)現(xiàn)時延具有重要影響。為了建立多參數(shù)與發(fā)現(xiàn)時延之間的關系,本節(jié)將基于藍牙5.0 協(xié)議的規(guī)范內容,對低功耗藍牙節(jié)點的鄰居發(fā)現(xiàn)過程進行分析。表1 總結了本文所使用到的縮略詞和符號。
表1 縮略詞和符號含義
鄰居發(fā)現(xiàn)是節(jié)點設備建立連接的第一步。根據(jù)藍牙5.0 標準[7],鄰居發(fā)現(xiàn)過程主要包括2 個事件,廣播事件與掃描事件。廣播事件又分成廣播階段與擴展廣播階段,分別在主信道和輔信道上完成?;谒{牙5.0 標準的鄰居發(fā)現(xiàn)過程如下:廣播設備在主信道(信道37~39)上按照固定的廣播間隔(AdvInterval )依次發(fā)送廣播數(shù)據(jù)包(ADV_EXT_IND);掃描節(jié)點在 3 個掃描間隔(Scanning Interval)內同樣按照主信道37~39 的順序依次掃描廣播數(shù)據(jù)包,掃描節(jié)點僅在掃描窗口(Scan Window)時間內能夠接收廣播數(shù)據(jù)包。一旦掃描節(jié)點與廣播節(jié)點處于同信道,同時接收到從廣播節(jié)點發(fā)送出的ADV_EXT_IND 數(shù)據(jù)包與AuxPTR數(shù)據(jù)包,即可獲取AUX_ADV_IND 數(shù)據(jù)包的相關信息。如圖1 所示,AuxPTR 數(shù)據(jù)包中包括信息偏移量AuxOffset 和偏移單位大小 Offsetunit(將AuxOffset 與單位偏移值進行相乘后得到偏移值Offset,以下均統(tǒng)一使用Offset 代表偏移值),以及數(shù)據(jù)傳輸信道(CHx)等。通過信道偏移值Offset,掃描設備獲得接收AUX_ADV_IND 數(shù)據(jù)包的時間信息。而數(shù)據(jù)傳輸信道(CHx)則是從除了3 個主信道之外的37 個信道(信道0~36)中隨機選擇一個產生。根據(jù)信道偏移時間,掃描節(jié)點在信道CHx上等待接收AUX_ADV_IND 數(shù)據(jù)包,完成接收后,掃描節(jié)點發(fā)送連接請求給廣播節(jié)點,并等待接收connect_req_ACK,從而掃描節(jié)點與廣播節(jié)點在信道CHx 上完成鏈路層連接。
圖1 基于藍牙 5.0 的低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議
目前,已有的對鄰居發(fā)現(xiàn)協(xié)議時延建模大部分是基于藍牙4.2 協(xié)議進行研究。藍牙4.2 鄰居發(fā)現(xiàn)協(xié)議中,廣播節(jié)點與掃描節(jié)點的數(shù)據(jù)交換在廣播數(shù)據(jù)包被發(fā)現(xiàn)的廣播信道完成。即廣播節(jié)點發(fā)送廣播數(shù)據(jù)包后,等待掃描節(jié)點響應,若掃描節(jié)點在廣播等待時間內發(fā)出了連接請求,廣播節(jié)點及時響應請求,從而完成節(jié)點的發(fā)現(xiàn)過程。由此可以看出,藍牙5.0 鄰居發(fā)現(xiàn)過程與藍牙4.2 協(xié)議最主要的區(qū)別在于增加了擴展廣播包與擴展廣播信道,將廣播信道從原來的37~39 信道擴展至0~39 信道,從而減小鄰居發(fā)現(xiàn)過程中的信道沖突問題。
通過上述分析可知,主信道上的廣播節(jié)點在一個廣播間隔(AdvInterval,Tadv)內分別在3 個信道上進行廣播包發(fā)送;掃描節(jié)點在一個掃描間隔(Scanning Interval,Tsin)內僅在某一信道上進行掃描。由于每一個信道上發(fā)送廣播數(shù)據(jù)包的時長(da)以及等待時間(dch)的存在,掃描節(jié)點在各信道上的有效掃描窗口根據(jù)信道不同會發(fā)生變化。以37信道為例,若廣播節(jié)點發(fā)送廣播包的開始時間距離37 信道上的掃描間隔結束時間小于37 信道上的廣播發(fā)送時長,則廣播包不可能被掃描節(jié)點及時接收,即無法實現(xiàn)鄰居發(fā)現(xiàn)。相反,在38 信道上,如果廣播包的發(fā)送時刻距離38 信道的掃描開始時間小于一個廣播包的發(fā)送與等待時間,掃描節(jié)點仍能夠有效接收到38 信道的廣播數(shù)據(jù)包。以此推算,39 信道上仍存在提前的有效掃描時間(dearly)與無效的滯后掃描時間(dlate)。對3 個信道的提前有效掃描時間與滯后無效掃描時間進行整合后,可得到基于有效掃描窗口的低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議模型,如圖2 所示。
根據(jù)圖2 可知,掃描節(jié)點在3 個主信道上的有效掃描窗口(de)可以表示為de=ωSW?dlate+dearly,其中,SWω為掃描窗口時長。圖2 所示的有效掃描窗口模型具有一個典型特征,即3 個主信道之間的提前有效掃描時間與前一個掃描窗口之間無覆蓋情況。無覆蓋情況下的主信道有效窗口參數(shù)如表2 所示。
圖2 無覆蓋情況下基于有效窗口的低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議模型
表2 無覆蓋情況下主信道有效窗口參數(shù)
在37 信道上,不存在提前有效掃描時間,滯后有效掃描時間為一個廣播包的發(fā)送時間da;38信道的提前有效掃描時間是一個廣播包的發(fā)送時間加上一個信道的等待時間即da+dch,滯后有效掃描時間為2 個廣播包的發(fā)送時間加上一個信道的等待時間即2da+2dch;39 信道的提前有效掃描時間是2 個廣播包的發(fā)送時間加上2 個信道的等待時間即2da+2dch,滯后有效掃描時間為3 個廣播包的發(fā)送時間加上2 個信道的等待時間即2da+2dch。根據(jù)上述有效掃描窗口的計算式,可以得到3 個信道上的有效掃描窗口均為ωSW?da。
上述無覆蓋情況下的基于有效窗口的低功耗藍牙鄰居發(fā)現(xiàn)模型被用于多篇鄰居發(fā)現(xiàn)性能分析方法[10,13,23]。然而由于該模型只適用于無覆蓋情況,因此針對該模型的性能分析僅在掃描間隔大于廣播間隔的條件下有效。有覆蓋情況下的鄰居發(fā)現(xiàn)協(xié)議模型將在3.3 節(jié)中詳細介紹。
本文考慮掃描節(jié)點的有效掃描窗口在3 個信道上產生覆蓋的情況,可以得出基于有效窗口的有覆蓋低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議模型,如圖3 所示。
圖3 有覆蓋情況下基于有效窗口的低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議模型
通過推論可知,當滿足掃描間隔與掃描窗口的差值小于一個廣播包等待時間時,即Tsin?ωSW≤dch,后一個信道的提前有效掃描時間與前一個信道的掃描窗口會產生重合。產生重合有效掃描時長為do=dch?(Tsin?ωSW)。同時,由于重合有效掃描時長的存在,主信道上的有效掃描窗口相比于無覆蓋情況產生了變化。以38 信道為例,當覆蓋存在時,38 信道的提前有效時間處于37 信道的掃描窗口內,而同一時刻下掃描節(jié)點只能在一個信道(37信道)上進行掃描,因此,38 信道的提前掃描時長因為重合部分而減小,進而減小了38 信道的有效掃描窗口。覆蓋情況下的有效掃描窗口de'可表示為=dearly+ωSW?dlate?do。由此,表3 給出了覆蓋情況下3 個信道上有效掃描窗口參數(shù)。在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 覆蓋情況下主信道有效窗口參數(shù)
本節(jié)將中國剩余定理應用到前述的基于有效掃描窗口的鄰居發(fā)現(xiàn)模型中,通過中國剩余定理得到低功耗藍牙節(jié)點在主信道上的相互發(fā)現(xiàn)時間,再根據(jù)藍牙5.0 鄰居發(fā)現(xiàn)協(xié)議的輔信道發(fā)現(xiàn)過程,對低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議時延進行建模與分析。
中國剩余定理又稱中國余數(shù)定理,用于求解一次同余式組。該定理假設兩整數(shù)ni、nj互質,則對任意整數(shù)mi、mj,式(1)存在解x=x0+kni n j,k∈Ζ+。
利用中國剩余定理,假設兩節(jié)點異步鄰居發(fā)現(xiàn)協(xié)議周期互質,則在兩節(jié)點喚醒時間不同步的情況下,也一定存在互相發(fā)現(xiàn)的時刻[28]。同樣,針對低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議,若假設廣播節(jié)點與掃描節(jié)點在同一信道上的周期互質,則對于兩節(jié)點任意開始廣播事件與掃描事件時刻,兩節(jié)點一定能在某一時刻互相發(fā)現(xiàn)。
假設低功耗藍牙廣播節(jié)點開始廣播的時刻為t0,掃描節(jié)點開始掃描的時刻為t1,根據(jù)圖2 與表2,可以得到在無覆蓋情況下廣播節(jié)點在37~39 信道上有效開始廣播的時刻為t0;掃描節(jié)點在37~39 主信道上的有效開始時刻分別為t1,。且每個信道上具有相同的廣播間隔與掃描間隔,分別為Tadv和3Tsin。此時,可分別得到3 個主信道上的方程組
根據(jù)中國剩余定理的使用條件,當Tadv和3Tsin互質時,則存在3 個方程組的解分別可表示各信道上在時刻t廣播節(jié)點與掃描節(jié)點互相發(fā)現(xiàn),相應的解可表示為
同時,掃描開始時間t1∈[0,Tsin?da]。由于解中的參數(shù)需滿足無覆蓋情況下的條件,因此該解只適用于Tsin?ωSW>dch且Tsin≤3da+2dch的情況。
當Tsin?ωSW≤dch且Tsin>3da+2dch時,基于有效窗口的鄰居發(fā)現(xiàn)協(xié)議模型會發(fā)生后一信道上的有效掃描窗口與前一信道時刻重疊的問題。假設低功耗藍牙廣播節(jié)點開始廣播的時刻為t0,掃描節(jié)點開始掃描的時刻為t1,根據(jù)圖3 和表3,可以得到有覆蓋情況下廣播節(jié)點在37~39 信道上的有效開始時刻為t0;掃描節(jié)點在37~39 主信道上的有效開始時刻分別為t1、t1+ωSW?da、t1+ωSW+Tsin?dch?2da,且每個信道上具有相同的廣播間隔與掃描間隔,分別為Tadv和3Tsin。此時,可得到在有覆蓋情況下各信道上廣播節(jié)點與掃描節(jié)點在時刻t相互發(fā)現(xiàn)得到的解
為便于后續(xù)計算,將2 種情況下得到的解進行合并后,可表示為
其中,t1∈[0,Tsin?da]。
此時,用η(t,L)表示在以上3 個信道的解中所能得到的第L個最小時刻的解,即為廣播節(jié)點與掃描節(jié)點在主信道上相互發(fā)現(xiàn)的最早時刻。η(t,L)可表示為
廣播節(jié)點與掃描節(jié)點在主信道完成發(fā)現(xiàn)后,根據(jù)圖1 可知,掃描節(jié)點接收到ADV_EXT_IND 數(shù)據(jù)包后,獲得偏移值Offset 以及信道CHx,并等到Offset 時長后在CHx 等待接收AUX_ADV_IND 數(shù)據(jù)包,從而與廣播節(jié)點建立連接,完成鄰居發(fā)現(xiàn)。假設掃描節(jié)點在輔信道成功接收到AUX_ADV_IND 數(shù)據(jù)包的概率為PAUX_SUC,在考慮有干擾節(jié)點選擇了相同輔信道的情況下數(shù)據(jù)包發(fā)生沖突的概率為
其中,TAUX表示AUX_ADV_IND 數(shù)據(jù)包的發(fā)送時長。同時,假設在掃描節(jié)點的有效通信范圍內廣播節(jié)點數(shù)量為M,由于廣播設備彼此獨立地操作,并且附近有M?1 個廣播設備,因此在有M個節(jié)點的情況下沖突概率為
若將輔信道上AUX_ADV_IND 數(shù)據(jù)包的丟包率表示為PAUX_LOSE,則PAUX_SUC可表示為
根據(jù)藍牙5.0 鄰居發(fā)現(xiàn)協(xié)議,考慮輔信道上的偏移值以及數(shù)據(jù)包的發(fā)送時間,可以得到廣播節(jié)點在輔信道上完成AUX_ADV_IND 數(shù)據(jù)包接收的時刻Γ(t,L)。若主信道的發(fā)現(xiàn)信道為37,則廣播節(jié)點從開始發(fā)送廣播數(shù)據(jù)包到掃描節(jié)點在輔信道上接收到AUX_ADV_IND 數(shù)據(jù)包的時間Γ(t,L)可表示為
若主信道的發(fā)現(xiàn)信道為38,則有
若主信道的發(fā)現(xiàn)信道為39,則有
由此,可以得到從廣播節(jié)點開始廣播事件時刻t0到掃描節(jié)點完成AUX_ADV_IND 數(shù)據(jù)包的時延D(t,L)為
由于每個AUX_ADV_IND 的接收失敗情況獨立發(fā)生,根據(jù)幾何分布,掃描設備的第L個接收的數(shù)據(jù)包是第一個非錯誤PDU(即第一次成功接收)的概率為。從廣播節(jié)點啟動到掃描節(jié)點成功掃描并接收到所有數(shù)據(jù)包的發(fā)現(xiàn)時延D(t) 可表示為
由于掃描設備在3 個信道(37~39)上以周期3Tsin重復其掃描過程,因此本文假設廣播設備以相同的概率在[0,3Tsin]內的任何時刻開始廣播,而不會失去一般普適性,則低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議的發(fā)現(xiàn)時延平均值為
本文所提出的基于中國剩余定理的低功耗藍牙鄰居發(fā)現(xiàn)時延分析模型偽代碼如算法1 所示。
算法1基于中國剩余定理的低功耗藍牙鄰居發(fā)現(xiàn)時延分析模型
輸入Tsin,da,dch,ωSW,Tadv,PAUX_LOSE,TAUX,Offset(輸入要求Tadv與3Tsin互質)
輸出發(fā)現(xiàn)時延
為了驗證本文提出的模型有效性,本節(jié)設置了5 組實驗,通過本文提出的基于中國剩余定理的低功耗藍牙鄰居發(fā)現(xiàn)時延分析模型,分別給出了低功耗藍牙網絡在廣播間隔、掃描間隔、掃描窗口、干擾節(jié)點數(shù)量影響下基于藍牙5.0 協(xié)議的鄰居發(fā)現(xiàn)平均時延,并在相同實驗設置環(huán)境下將本文所提出的模型結果與文獻[10]中的結果進行對比,將基于藍牙5.0 與藍牙4.2 協(xié)議的鄰居發(fā)現(xiàn)時延受節(jié)點數(shù)量的影響進行了對比。
具體實驗設置如下:廣播節(jié)點與掃描節(jié)點分別在[0,Tadv]和[0,3Tsin]內隨機開始廣播事件與掃描事件。在5 組實驗中,發(fā)送廣播數(shù)據(jù)包的時長da為4 ms,等待時間dch為2 ms,丟包率PAUX_LOSE為0.05,AUX_ADV_IND 數(shù)據(jù)包的發(fā)送時長TAUX為400 ms,偏移時長Offset 為200 ms。
圖4 給出平均發(fā)現(xiàn)時延隨廣播間隔的變化情況。本實驗中設置掃描窗口為1.28 s,節(jié)點數(shù)量為10。廣播間隔在0~81.92 s 變化,每次實驗自動選取該范圍內滿足廣播間隔Tadv與3Tsin互質的值,在每組取值內重復實驗80 次后計算相應取值下的平均發(fā)現(xiàn)時延。由圖4 結果可知,平均發(fā)現(xiàn)時延隨廣播間隔的增大出現(xiàn)周期性峰值,且峰值呈現(xiàn)逐漸增大的趨勢。該結果的周期性同時受到廣播事件與掃描事件本身周期性的影響,主要作用于模型中CRT 的解。根據(jù)圖4 所示,不同的掃描間隔對平均發(fā)現(xiàn)時延的波動范圍具有一定的影響。當掃描間隔設置為1.28 s 時,平均發(fā)現(xiàn)時延僅在0~20 ms 波動。隨著掃描間隔的增大,平均發(fā)現(xiàn)時延的波動范圍增加,最高峰值可達25 s。通過分析可以發(fā)現(xiàn),當掃描窗口與掃描間隔相等時,即掃描節(jié)點處于連續(xù)掃描狀態(tài)。此時,實驗設置參數(shù)滿足條件Tsin?ωSW≤dch且Tsin>3da+2dch,即此時后續(xù)信道上的有效掃描窗口與前一信道掃描窗口時刻重疊。在有覆蓋情況下,廣播間隔由小變大的過程中,節(jié)點均能快速建立連接。但由于掃描節(jié)點沒有休眠時間,對掃描節(jié)點的能耗也提出了更高的要求。而當掃描間隔較大、掃描窗口較小時,實驗設置條件滿足Tsin?ωSW>dch且Tsin≤3da+2dch,即無覆蓋情況下,如若在某一掃描窗口時長內未能接收到廣播數(shù)據(jù)包,掃描節(jié)點需等待更長時間才能進入下一次掃描,因此造成了鄰居發(fā)現(xiàn)的高時延。
圖4 平均發(fā)現(xiàn)時延隨廣播間隔變化情況(掃描窗口為1.28 s,節(jié)點數(shù)量為10)
圖4 中同時給出了文獻[10]中的模型在掃描間隔分別為1.28 s、2.56 s 和5.12 s 時的平均發(fā)現(xiàn)時延。從圖4 中可以看出,文獻[10]所提出的模型在3 種實驗設置的條件下,實驗結果僅能反映出平均發(fā)現(xiàn)時延隨廣播間隔增大而增大的變化趨勢,未能給出不同參數(shù)設置下可能出現(xiàn)的時延峰值與時延低谷情況。通過分析可知,文獻[10]中將有效掃描窗口在3 倍掃描間隔中的占比作為節(jié)點能夠被發(fā)現(xiàn)的概率,進而利用統(tǒng)計方法推算出平均發(fā)現(xiàn)時延。該模型中有效窗口時長僅考慮了無覆蓋情況下的取值,當掃描間隔與掃描窗口相等時,其結果與真實情況會產生偏差;同時,采用統(tǒng)計方法對平均發(fā)現(xiàn)時延的推算平滑了節(jié)點在鄰居發(fā)現(xiàn)過程中因為參數(shù)設置發(fā)生的耦合問題,導致模型結果不能有效反映出廣播節(jié)點由于開始時間沒能落入有效掃描窗口導致的時延激增情況。
圖5給出了本文模型計算出的平均發(fā)現(xiàn)時延隨掃描間隔變化結果。本實驗中設置廣播間隔為5.12 s,節(jié)點數(shù)量為10,掃描間隔在掃描窗口至40.96 s 之間變化。掃描窗口分別設置為1.28 s、5.12 s 與10.24 s 進行實驗。固定廣播間隔,掃描窗口自動選取掃描間隔變化過程中與廣播間隔互質的值,基于模型計算鄰居發(fā)現(xiàn)時延,重復80 次實驗后計算平均時延。從圖5 的實驗結果可以看出,當掃描間隔與掃描窗口相等時,時延最小,該結果與圖4 實驗相符。隨著掃描間隔越來越大,平均時延呈現(xiàn)出周期性的峰值變化,且峰值大小按線性遞增。同時可以看出,當掃描窗口與廣播間隔相等時,平均時延的峰值與最小值之間波動最大;當掃描窗口比廣播間隔大時,平均時延的波動范圍最小,且3 種情況下的最小平均時延接近。由此分析得出,在廣播間隔確定的情況下,較大的掃描窗口可以避免高時延,但在避免時延峰值的情況下,準確的掃描間隔設定同樣可以達到快速發(fā)現(xiàn)的目的。
圖5 平均發(fā)現(xiàn)時延隨掃描間隔的變化情況(廣播間隔為5.12 s,節(jié)點數(shù)量為10)
圖6 是平均發(fā)現(xiàn)延時隨掃描窗口變化的結果。在實驗中,將掃描間隔設置為5.68 s,掃描窗口在0至掃描間隔的范圍內變化,將廣播間隔設置成1.28 s、2.56 s 和5.12 s。在廣播間隔與3 倍掃描間隔互質的情況,隨機選取廣播節(jié)點與掃描節(jié)點的開始時間重復實驗后計算平均發(fā)現(xiàn)時延。從圖6 的結果中可以發(fā)現(xiàn),在掃描窗口的變化過程中,3 種情況下均有最快平均時延的參數(shù)取值,但當廣播間隔較小時,能夠達到快速發(fā)現(xiàn)的參數(shù)組合更多,且時延峰值小于其他2 種情況。
圖6 平均發(fā)現(xiàn)時延隨掃描窗口的變化情況(掃描間隔為5.68 s,節(jié)點數(shù)量為10)
圖7 顯示了在不同鄰居發(fā)現(xiàn)協(xié)議參數(shù)的情況下,平均發(fā)現(xiàn)時延隨著節(jié)點數(shù)增多的變化情況。實驗中設置多個干擾節(jié)點,節(jié)點總數(shù)在0~1 000 變化。實驗將鄰居發(fā)現(xiàn)協(xié)議參數(shù)設置為3 組,掃描間隔為3 s,掃描窗口為2 s,廣播間隔分別為1 s、5 s、10 s。在相同實驗參數(shù)條件下,將本文所提出的模型結果與文獻[24]中的實驗結果進行了對比。在該實驗中需要說明的是,由于節(jié)點數(shù)量極大地影響計算結果,導致節(jié)點互相發(fā)現(xiàn)后在輔信道上AUX_ADV_IND 數(shù)據(jù)包成功接收率降低。因此,本文將AUX_ADV_IND 數(shù)據(jù)包的發(fā)送次數(shù)上限定為10 次,在該條件下計算平均發(fā)現(xiàn)時延。從圖7 的結果中可以看出,3 種參數(shù)設置的條件下,隨著節(jié)點數(shù)量的增大,平均發(fā)現(xiàn)時延出現(xiàn)不同程度的增長。本模型在3 組參數(shù)設置下的平均發(fā)現(xiàn)時延隨節(jié)點數(shù)量的變化具有一定差異性。首先,當廣播間隔小于掃描間隔時,平均發(fā)現(xiàn)時延即使在節(jié)點數(shù)量較大的情況下,仍保持在一個較低的水平,即第10 次發(fā)現(xiàn)但未成功接收AUX_ADV_IND 數(shù)據(jù)包的時延仍在10 s 以內。當廣播間隔大于掃描間隔時,隨著節(jié)點數(shù)量的增加,平均發(fā)現(xiàn)時延增加,但增加幅度與時延均較為接近。相比于文獻[24]的仿真結果可以發(fā)現(xiàn),本文模型所預測的平均發(fā)現(xiàn)時延變化趨勢與文獻[24]貼合,實驗結果均表明廣播間隔的增大會增加平均發(fā)現(xiàn)時延的大小,但本文模型結果對節(jié)點數(shù)量的大小更為敏感,特別是當節(jié)點數(shù)量大于200個后,平均發(fā)現(xiàn)時延增長迅速,而文獻[24]的預測結果則均較為平緩。綜上,在設置合適的鄰居發(fā)現(xiàn)協(xié)議參數(shù)的基礎上,通信范圍內干擾節(jié)點數(shù)量維持在200 個節(jié)點以內時對平均發(fā)現(xiàn)時延的影響較弱。
圖7 平均發(fā)現(xiàn)時延隨節(jié)點數(shù)量增多的變化(掃描間隔為3 s,掃描窗口為2 s)
為了驗證本文模型的有效性,本文采用文獻[23]中的模型給出了藍牙4.2 鄰居發(fā)現(xiàn)協(xié)議在相同參數(shù)設置條件下的平均發(fā)現(xiàn)時延,并與本文模型進行了對比。實驗參數(shù)設置為2 組,分別是廣播間隔為5 s、掃描窗口和掃描間隔為7 s,以及廣播間隔為10 s、掃描窗口為2 s 和掃描間隔為3 s。節(jié)點數(shù)量在0~2 000 變化。從圖8 中可以看出,藍牙5.0 協(xié)議的鄰居發(fā)現(xiàn)時延在節(jié)點數(shù)量增大的過程中維持在100 s以內,而藍牙4.2 協(xié)議下的平均發(fā)現(xiàn)時延隨著節(jié)點數(shù)量的增大顯著增加。同時可以看出,當節(jié)點數(shù)量在700 個以內時,連續(xù)掃描的情況下的2 個模型給出的平均發(fā)現(xiàn)時延接近,但隨著節(jié)點數(shù)量的增加,本文模型給出的平均發(fā)現(xiàn)時延與藍牙4.2 協(xié)議模型的差距越來越大。這是由于藍牙5.0 的鄰居發(fā)現(xiàn)協(xié)議增加了擴展廣播信道與擴展廣播包,解決了藍牙4.2 協(xié)議在節(jié)點密度較大的情況下發(fā)生的信號沖突問題。由此可以看出,本文所提出的鄰居發(fā)現(xiàn)時延模型能夠較好地預測低功耗藍牙網絡在藍牙5.0 協(xié)議下的鄰居發(fā)現(xiàn)性能。
圖8 平均發(fā)現(xiàn)時延隨節(jié)點數(shù)量增多的變化
通過對以上仿真結果的分析,在掃描節(jié)點能耗資源富裕的條件下,采用連續(xù)掃描的參數(shù)設置可以實現(xiàn)節(jié)點的快速鄰居發(fā)現(xiàn);同時,相對固定的廣播數(shù)據(jù)包發(fā)送時間,較小的廣播間隔與較大的掃描窗口可將發(fā)現(xiàn)時延維持在低水平;但在設置鄰居發(fā)現(xiàn)協(xié)議參數(shù)時,應避開會造成時延峰值的情況;最后,應根據(jù)對時延的敏感性相應控制同一節(jié)點通信范圍內的網絡節(jié)點數(shù)量。
本文針對低功耗藍牙網絡的鄰居發(fā)現(xiàn)時延問題進行研究,分析了基于藍牙5.0 協(xié)議的鄰居發(fā)現(xiàn)過程,考慮協(xié)議參數(shù)設置范圍,將基于有效掃描窗口的低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議模型分成無覆蓋與有覆蓋2 種情況,避免了模型有效性受到參數(shù)設置范圍的影響;在此基礎上,提出一種基于中國剩余定理的低功耗藍牙鄰居發(fā)現(xiàn)的時延模型,解決了低功耗藍牙鄰居發(fā)現(xiàn)協(xié)議由于其異步性與周期性帶來的不確定問題。實驗結果表明,協(xié)議中的廣播間隔、掃描間隔以及掃描窗口大小設置極大地影響著鄰居發(fā)現(xiàn)時延性能。本文所提出的模型能夠有效預測參數(shù)配置對時延大小的影響。
本文所提出的模型能夠覆蓋低功耗藍牙協(xié)議標準中推薦的參數(shù)配置范圍,但由于受到中國剩余定理的條件約束,廣播間隔與3 倍的掃描間隔互質是應用本模型的參數(shù)設置前提。在后續(xù)的研究中,如何進一步解決異步性導致的不確定問題將是作者繼續(xù)探索的方向。