1、前言
在工業(yè)應用中,低速率,大規(guī)模和長距離的無線自組織網(wǎng)絡一直沒有得到廣泛的部署,根本原因在于其穩(wěn)定性,可靠性和實時性一直無法得到良好的保證。在這種自組織網(wǎng)絡中,節(jié)點之間的跳轉(zhuǎn)關系大多是根據(jù)其相對位置和信號強度來決定的;由于安裝位置,部署密度,啟動時間等差異,其網(wǎng)絡拓撲往往會有比較明顯的不同,在網(wǎng)絡的某些分支,其跳數(shù)可能會比較淺,比如1-2跳,而有些分支則比較深,比如6-8跳。在這些網(wǎng)絡跳數(shù)比較淺的區(qū)域,其丟包率比較小,通訊延遲比較小,可靠性和實時性也比較好;而在那些網(wǎng)絡跳數(shù)比較深的區(qū)域,其丟包率也比較高,通訊延遲比較大,可靠性和實時性自然也就比較差。
2、業(yè)內(nèi)問題
作為一個上層的應用系統(tǒng),用戶在設定數(shù)據(jù)傳輸頻率(是每秒給目標節(jié)點發(fā)出去多少個應用層的數(shù)據(jù)包,不是網(wǎng)絡本身的無線通訊速率)的時候,往往是不太關心網(wǎng)絡的拓撲結(jié)構的;實際上這個也沒辦法關心,因為它本身就不太固定,因此在設定重傳的時間門限的時候,往往不能充分地考慮到不同的網(wǎng)絡跳數(shù)所導致的通訊延遲和丟包率。一旦設置不合理,就會形成嚴重的應答超時和通訊失敗;即便設置了正確的時間參數(shù),由于開放的無線信道經(jīng)常會受到外界的擾動,這個網(wǎng)絡拓撲可能還會發(fā)生變動,更別說因為用戶后期追加設備或者臨時對某些設備二次上電所導致的拓撲結(jié)構發(fā)生改變了。
從自組織網(wǎng)絡的基本工作原理,我們可以看出,網(wǎng)絡跳數(shù)的深淺是由部署環(huán)境和一些其他因素綜合決定的,存在較大的偶然性和不確定性。在網(wǎng)絡的某些物理分支,其網(wǎng)絡跳數(shù)必定比其他區(qū)域更深,這個區(qū)域的丟包率,通訊延遲也必然比其他的區(qū)域更大,帶來的可靠性和實時性也自然更差。這一點我們可以通過數(shù)學上的概率論予以解釋。
3、概率分析
在特定的電磁環(huán)境中,每種配置參數(shù)的無線通訊系統(tǒng)有一個大致確定的比特誤碼率 BER(Bit Error Rate) 和包誤碼率PER(Packet Error Rate),二者之間有下述關系:
PER=1 - ( 1 – BER )n
? ? ? 其中n 是這個數(shù)據(jù)包的長度,也就是總的比特數(shù)量。
考慮到無線自組網(wǎng)系統(tǒng)都是基于數(shù)據(jù)包作為基本的收發(fā)單元,因此本文選定 PER 作為分析的依據(jù)。為了敘述方便,我們假定丟包率PER為p,那么通訊成功的概率P1,也就是不丟包概率為100% - p,也就是 1-p;對于一個兩跳的無線網(wǎng)絡,要想實現(xiàn)端到端的成功傳輸,那么這連續(xù)兩跳都必須傳輸成功,依據(jù)概率論的知識,其成功的概率P2應該等于兩跳成功概率的乘積,也就是
P2? = P1 * P1 = P12 = ( 1 – p )2
? ? ? 同理,對于一個由n+1個節(jié)點組成 n 跳的多跳無線鏈路,最終的目標節(jié)點要想正確地接收到源節(jié)點發(fā)出來的數(shù)據(jù),要求從2號節(jié)點到n+1號節(jié)點的每一個中間節(jié)點都必須正確地收到上一跳發(fā)過來的數(shù)據(jù),只要有一個環(huán)節(jié)失敗了,最終的目標節(jié)點就無法正確地收到源節(jié)點發(fā)出來的數(shù)據(jù),因此其總的通訊成功率Pn,按照概率論的知識應該有下述關系:
Pn = ( P1 * P1 …. * P1 ) = P1n = ( 1 – p )n
? ? ? 為了更加直觀的說明真實的通訊效果,我們以包誤碼率 PER為10%,也就是 p=0.1 的電磁環(huán)境為例,計算出不同網(wǎng)絡跳數(shù)下的鏈路通訊成功率,具體如下表所示:
從上表我們看出,隨著網(wǎng)絡的跳數(shù)逐步增加,通訊成功率是明顯逐步降低的,到了第五跳 n=5,也就是第六個鏈路節(jié)點的時候,其成功率已經(jīng)低于人們的心理“及格線”60%了。很多人在這種情況已經(jīng)判定鏈路不穩(wěn)定了。事實上有不少的工程師朋友在現(xiàn)場調(diào)試ZigBee網(wǎng)絡的時候,就發(fā)現(xiàn)了這個現(xiàn)象,但很少有人思考其背后的數(shù)學原理。
4、總結(jié)
通過上文的分析,我們可以看出,在室外長距離的無線自組織網(wǎng)絡中,由于節(jié)點之間的鏈路損耗較大,其鏈路預算相對不足,因此其包誤碼率PER會相應升高,也就是丟包概率 p 會比較大;而在一個大規(guī)模網(wǎng)絡中,某些分支節(jié)點的通訊鏈路又會比較深,也就是網(wǎng)絡跳數(shù) n 比較大,在這種情況下其通訊成功率Pn自然也就顯著下降了,人們的切身感受就是這個鏈路不太穩(wěn)定。
說到這里,有的讀者朋友心里可能會想,這還不簡單,給我上 TCP 算法!加入端到端的數(shù)據(jù)重傳機制,那問題還不是立馬搞定?效果果真如此么?請看后續(xù)文章分解!