摘 要: 分析了藍牙微微網(wǎng)" title="微微網(wǎng)">微微網(wǎng)間不同跳頻" title="跳頻">跳頻區(qū)段工作原理,,以及不同區(qū)段跳頻碰撞數(shù)對實際吞吐量的影響,,提出了不同微微網(wǎng)間跳頻區(qū)段重疊數(shù)的推算方法及網(wǎng)絡(luò)吞吐量計算公式,。仿真結(jié)果表明微微網(wǎng)區(qū)段重疊數(shù)是影響吞吐量的主要因素,。
關(guān)鍵詞: 藍牙 微微網(wǎng) 吞吐量 跳頻碰撞
藍牙(Bluetooth)無線通信技術(shù)為各種通信設(shè)備和計算機外設(shè)提供了短距離,、低代價,、低功耗的無線解決方案,。藍牙網(wǎng)絡(luò)是一種多信道模式的拓撲網(wǎng)絡(luò),。藍牙裝置彼此之間能夠在通信范圍內(nèi)建立點對點連接,,也可共享信道而形成微微網(wǎng)(Piconet)[1~2],,還可以同時加入多個Piconet,連成散射網(wǎng)(Scatternet),。每個Piconet都使用獨立的跳頻序列,,Piconet內(nèi)部設(shè)備的跳頻序列是正交的,不會產(chǎn)生干擾,。但不同Piconet間會因頻率重疊而產(chǎn)生跳頻碰撞(Hopping collision)干擾,,導(dǎo)致傳送信息包" title="信息包">信息包的遺失,進而降低網(wǎng)絡(luò)的吞吐量,。而這種碰撞會隨著Piconet數(shù)量的增加而增加,。Piconet中設(shè)備可分為主設(shè)備(Master)和從設(shè)備(Slave)。Master在偶數(shù)的時隙" title="時隙">時隙(Slot)開始傳送信息包給Slave,,而Slave則在奇數(shù)時隙回傳信息包給Master,。每個Piconet最多由8個活動設(shè)備(Active device)組成。在任一時段,,只能有一個設(shè)備作為Master,,其余的設(shè)備當作Slave。Master與Slave之間的角色能夠彼此互換[3],。Bluetooth跳頻碰撞是由跳頻區(qū)段的重疊造成,,文獻[4]給出了一個Piconet間干擾分析模型。文獻[5]用概率分析方法提出了藍牙網(wǎng)絡(luò)的同信道碰撞包錯誤概率上界和吞吐量下界,。本文基于藍牙跳頻原理,,構(gòu)建了藍牙跳頻仿真平臺,分別就不同信息包長度和不同的Piconet的組合,,以及Piconet間跳頻區(qū)段重疊數(shù)進行了吞吐量分析,。證實了吞吐量下降是由Piconet間跳頻區(qū)段重疊造成的,但時隙長度對吞吐量的影響較小,當微微網(wǎng)數(shù)大于10時,,頻率利用率低于50%,。本研究對構(gòu)建低碰撞,、高吞吐量的藍牙Scatternet提供了重要研究價值,。根據(jù)分析結(jié)果研究低碰撞Piconet網(wǎng)絡(luò)選擇算法。
1 藍牙跳頻原理與碰撞分析
1.1 頻率選擇原理
Bluetooth有五種型態(tài)的跳頻序列(Hopping sequence),,包括:尋呼跳頻序列(Page hopping sequence),、尋呼響應(yīng)序列(Page response sequence)、詢問序列(Inquiry sequence),、詢問響應(yīng)序列(Inquiry response sequence)和信道跳頻序列(Channel hopping sequence),。其中前四項主要用于Bluetooth設(shè)備間如何建立聯(lián)機的階段,而信道跳頻序列則是用于Bluetooth設(shè)備間聯(lián)機后的操作狀態(tài),。
跳頻選擇原理的框圖如圖1所示,。該選擇過程由二個程序來完成:首先選擇一個序列,再將該序列對應(yīng)(Mapping)到跳頻索引,。而Master的藍牙設(shè)備地址(BD_ADDR)用于決定跳頻序列,,Master的CLK用于決定跳頻序列的相位(Phase),再將序列的跳頻序號對應(yīng)到79-hops寄存器的通道,。在聯(lián)機的操作狀態(tài)下,,跳頻選擇的原理具體過程是:先決定目前跳頻的區(qū)段,每個區(qū)段中有32個連續(xù)的信道,,而以不同的信道為此區(qū)段的起始信道,,共可分為79個跳頻系統(tǒng)區(qū)段;將該區(qū)段中的32個信道重新安排,,形成一個跳頻的序列,。每32個Master時隙后,會跳到下一個區(qū)段,,而連續(xù)兩個區(qū)段間則位移16個信道,,也就是前一個區(qū)段之后16個信道與下一個區(qū)段之前16個信道是重疊的。而在同一時隙內(nèi),,Master與Slave傳送所使用的區(qū)段則位移32個信道,,亦即Master與Slave傳送所使用的區(qū)段是沒有重疊的。重復(fù)如此的位移,,經(jīng)過79次的位移,,亦即經(jīng)過79×32 Master時隙后又回到原先的跳頻區(qū)段。
1.2 藍牙跳頻碰撞分析
1.2.1 跳頻碰撞重疊數(shù)算法
在Bluetooth網(wǎng)絡(luò)內(nèi),,可以同時有兩個以上Piconet存在,。由于每個Piconet有自己的跳頻區(qū)段,且其跳頻序列是獨立的,,所以Piconet內(nèi)部設(shè)備不會發(fā)生碰撞,。但Piconet都使用相同的頻率范圍,,當兩個Piconet跳到相同的跳頻序號時,跳頻頻率就會碰撞而產(chǎn)生干擾,。Piconet間區(qū)段重疊示意圖如圖2所示,。兩個Piconet之間的跳頻區(qū)段重疊數(shù)越大,其相互之間的碰撞干擾次數(shù)的概率越大,;反之,,如果跳頻區(qū)段沒有重疊時,則不會發(fā)生跳頻碰撞,。
設(shè)d表示區(qū)段位移距離,,IA表示Piconet A的起始索引號,IB表示Piconet B的起始索引號,,Os表示2個Piconet間重疊數(shù),,mod M表示模M運算。則兩個Piconet間跳頻區(qū)段的重迭數(shù)的計算方法為:
(1)d=|IA-IB|mod 79,;
(2)當0≤d<32時,,Os=32-d;
(3)當47<d≤78時,,Os=d-47,;
(4)其他情況,即32≤d≤47時,,區(qū)段的重疊數(shù)為0,。
1.2.2 跳頻區(qū)段總重疊數(shù)算法
(1)跳頻區(qū)段最大" title="最大">最大總重疊數(shù)算法
設(shè)n個設(shè)備間的兩兩重疊組合數(shù)為:Cn2=n(n-1)/2。而兩個設(shè)備間的跳頻區(qū)段重疊數(shù)最大為32,,因此,,n個設(shè)備的最大總重疊數(shù)為32Cn2。
(2)3個以上設(shè)備間跳頻區(qū)段最小重疊數(shù)算法
由于每個跳頻區(qū)段有32個信道,,因此n個設(shè)備總信道數(shù)為32n,,跳頻總信道數(shù)為79。令Rn=32n mod 79,,Yn=|32n/79| ,,|x|表示對x取整運算。則n個設(shè)備最小總重疊數(shù)為:
2 藍牙跳頻網(wǎng)絡(luò)吞吐量算法
當產(chǎn)生跳頻頻率碰撞時,,將發(fā)生時隙損失,,從而造成吞吐量下降。設(shè)mct表示Master時隙碰撞次數(shù),;sct表示Slave時隙碰撞次數(shù),;K(i)表示設(shè)備數(shù);M表示跳頻執(zhí)行次數(shù);Slotn表示藍牙包占用時隙長度,,則:
3 仿真實驗與分析
使用Simulink構(gòu)造仿真平臺,,假設(shè)整個藍牙網(wǎng)絡(luò)是同步的,對每個重疊數(shù)做100種組合仿真,,每種組合跳頻執(zhí)行2×106時隙,。圖3給出了2個設(shè)備跳頻區(qū)段重疊數(shù)是0~32時,碰撞次數(shù)與吞吐量的關(guān)系,。圖4給出了3個設(shè)備且重疊數(shù)為17~96時碰撞數(shù)與吞吐量關(guān)系,。兩者都說明Piconets間跳頻區(qū)段重疊數(shù)越大,跳頻碰撞次數(shù)也越多,,網(wǎng)絡(luò)系統(tǒng)的吞吐量也隨之下降。
圖5給出了信息包長度分別為1 slot,、3 slots,、5 slots,在最小跳頻區(qū)段重疊數(shù)和最大跳頻區(qū)段重疊數(shù)時,,Piconet數(shù)和吞吐量的仿真曲線圖,。結(jié)果表明:(1)在同樣的信息包長度下,最小重疊數(shù)的吞吐量要大于最大重疊數(shù)的吞吐量,,且隨著Piconet的增多,,表現(xiàn)更為明顯;(2)Piconet數(shù)越少,,吞吐量越高,;(3)最小跳頻區(qū)段重疊或最大跳頻區(qū)段重疊時的系統(tǒng)吞吐量與信息包長度幾乎無關(guān)。此外,,可以看出當Piconet數(shù)在10以內(nèi)時,,Scatternet網(wǎng)絡(luò)頻寬有效利用率達到50%以上,但在最小重疊區(qū)段時,,網(wǎng)絡(luò)吞吐量可達80%以上,。
本文分析了藍牙跳頻微網(wǎng)間碰撞和區(qū)段選擇原理,發(fā)現(xiàn)當2個Piconets的區(qū)段有重疊時,,將可能產(chǎn)生跳頻頻率碰撞,。而跳頻碰撞與跳頻區(qū)段重疊數(shù)大小有關(guān),跳頻區(qū)段重疊數(shù)愈大,,Bluetooth跳頻碰撞的概率越高,,網(wǎng)絡(luò)吞吐量越小,但信息包大小對吞吐量貢獻較小,。要提高藍牙網(wǎng)絡(luò)吞吐量必須減少跳頻區(qū)段的重疊數(shù),。所以,當Bluetooth網(wǎng)絡(luò)設(shè)備數(shù)增加時,必須采用合適的區(qū)段重疊選擇算法,,以減少區(qū)段重疊數(shù),,提高網(wǎng)絡(luò)吞吐量。
參考文獻
1 Haartsen J C.The Bluetooth radio system[J].IEEE Pers Com-mun,,2000,;(7):28~36
2 Johansson P.Bluetooth:An enabler for personal area network-ing[J].Network IEEE,2001,;15(5):28~37
3 朱剛.藍牙技術(shù)原理與協(xié)議[M].北京:清華大學(xué)出版社,,2002
4 Howitt I.Mutual interference between independent bluetooth piconets[J].IEEE Transactions On Vehicular Technology,2003,;52(3):708~718
5 Hoiydi A E.Interference between bluetooth networks-upper bound on the packet error rate[J].IEEE Communications Letters,,2001;5(6):245~247