一種無線傳感網(wǎng)絡(luò)中考慮鏈路相關(guān)性的選擇發(fā)送端的方法
【專利摘要】本發(fā)明公開了一種無線傳感網(wǎng)絡(luò)中考慮鏈路相關(guān)性的選擇發(fā)送端的方法。本發(fā)明方法通過在每個節(jié)點上合并該節(jié)點所聽到的請求向量,計算每一個待發(fā)送數(shù)據(jù)包的有效接收量,進(jìn)而計算所有待發(fā)送數(shù)據(jù)包的總有效接收量,總有效接收量與待發(fā)送數(shù)據(jù)包總數(shù)的比值就是平均有效接收量,節(jié)點根據(jù)此平均有效接收量等待一段時間后開始發(fā)送請求的數(shù)據(jù)包,平均有效接收量越大,等待時間越短。本發(fā)明方法與現(xiàn)有發(fā)送端選擇方法相比,考慮了鏈路相關(guān)性的影響,從而選出更準(zhǔn)確的發(fā)送端。
【專利說明】一種無線傳感網(wǎng)絡(luò)中考慮鏈路相關(guān)性的選擇發(fā)送端的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于無線網(wǎng)絡(luò)與傳感網(wǎng)絡(luò)領(lǐng)域,涉及一種數(shù)據(jù)發(fā)送端的正確選擇方法,用于減少無線傳感網(wǎng)絡(luò)中數(shù)據(jù)分發(fā)過程中的沖突,減少傳輸開銷,減少完成時間,提高數(shù)據(jù)分發(fā)的效率。
【背景技術(shù)】
[0002]隨著現(xiàn)代信息技術(shù)的不斷發(fā)展,大規(guī)模無線傳感器網(wǎng)絡(luò)技術(shù)迅速發(fā)展并被廣泛應(yīng)用到軍事偵察、公共安全、智能交通、環(huán)境檢測、醫(yī)療保健等諸多領(lǐng)域。典型的無線傳感器網(wǎng)絡(luò)由大量微型傳感器節(jié)點組成,它們被部署在無人的或需要人類頻繁參與的環(huán)境中,并通過無線自組成網(wǎng),通過拓?fù)淇刂坪途W(wǎng)絡(luò)協(xié)議自動形成多跳網(wǎng)絡(luò)系統(tǒng),不受現(xiàn)有有線網(wǎng)絡(luò)基礎(chǔ)設(shè)施的限制。無線傳感器網(wǎng)絡(luò)使人們在任何時間、地點和環(huán)境條件下實時獲取大量詳實而可靠的信息,仿佛人類將遠(yuǎn)程神經(jīng)末梢伸向了世界的萬物。正因為無線傳感網(wǎng)規(guī)模之大覆蓋范圍之廣,使得傳感器節(jié)點上所運(yùn)行程序的代碼更新遇到很多挑戰(zhàn),代碼更新的過程是一個數(shù)據(jù)分發(fā)的過程,選擇正確的發(fā)送端能夠很好的減少數(shù)據(jù)沖突、傳輸開銷和完成時間?,F(xiàn)有的發(fā)送端選擇算法雖可以工作,但忽略了鏈路相關(guān)性存在的客觀事實,使得選出的發(fā)送端并不是更好的。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的目的是提供一種無線傳感網(wǎng)絡(luò)中考慮鏈路相關(guān)性選擇發(fā)送端的方法,用于實現(xiàn)無線傳感網(wǎng)絡(luò)中節(jié)點的快速代碼更新。
[0004]為實現(xiàn)上述目的,本發(fā)明所采取的技術(shù)方案包括如下步驟:
[0005]步驟一:無線傳感網(wǎng)絡(luò)中的接收端節(jié)點,在接收完當(dāng)前一輪數(shù)據(jù)后,向無線傳感網(wǎng)絡(luò)中廣播REQ消息,所述REQ消息包含發(fā)送該REQ消息的節(jié)點的ID、數(shù)據(jù)頁的序號和請求向量;
[0006]步驟二:發(fā)送端節(jié)點收聽REQ消息并獲取當(dāng)前REQ消息中的發(fā)送節(jié)點ID、數(shù)據(jù)頁的序號和請求向量,將當(dāng)前REQ消息中的發(fā)送節(jié)點的ID和請求向量存儲到結(jié)構(gòu)體數(shù)組中;
[0007]步驟三:發(fā)送端節(jié)點繼續(xù)收聽REQ消息并獲取當(dāng)前REQ消息中的發(fā)送節(jié)點ID、數(shù)據(jù)頁的序號和請求向量;
[0008]步驟四:發(fā)送端節(jié)點比較最新獲取的REQ消息中的數(shù)據(jù)頁的序號和當(dāng)前結(jié)構(gòu)體數(shù)組已存儲的數(shù)據(jù)頁的序號:
[0009]如果最新獲取的REQ消息中的數(shù)據(jù)頁的序號更大,則直接丟棄最新獲取的REQ消息;此時如果還有REQ消息需要收聽,則返回執(zhí)行步驟三,否則執(zhí)行步驟五;
[0010]如果最新獲取的REQ消息中的數(shù)據(jù)頁的序號更小,則清空當(dāng)前結(jié)構(gòu)體數(shù)組中的所有元素,再把最新獲取的REQ消息中的發(fā)送節(jié)點ID和請求向量存儲到當(dāng)前結(jié)構(gòu)體數(shù)組中;此時如果還有REQ消息需要收聽,則返回執(zhí)行步驟三,否則執(zhí)行步驟五;
[0011]如果最新獲取的REQ消息中的數(shù)據(jù)頁的序號和當(dāng)前結(jié)構(gòu)體數(shù)組已存儲的數(shù)據(jù)頁的序號相等,判斷最新獲取的REQ消息中的發(fā)送節(jié)點ID是否已經(jīng)存儲在當(dāng)前結(jié)構(gòu)體數(shù)組中,如果是,則直接將當(dāng)前結(jié)構(gòu)體數(shù)組中該發(fā)送節(jié)點ID所對應(yīng)的請求向量與最新獲取的REQ消息中的請求向量進(jìn)行按位或運(yùn)算,再使用按位或運(yùn)算后得到的請求向量去替換當(dāng)前結(jié)構(gòu)體數(shù)組的該發(fā)送節(jié)點ID所對應(yīng)的請求向量,此時如果還有REQ消息需要收聽,則返回執(zhí)行步驟三,否則執(zhí)行步驟五;
[0012]如果最新獲取的REQ消息中的發(fā)送節(jié)點ID未存儲在當(dāng)前結(jié)構(gòu)體數(shù)組中,則直接將該發(fā)送節(jié)點ID和最新獲取的REQ消息中的請求向量存儲到當(dāng)前結(jié)構(gòu)體數(shù)組中,此時如果還有REQ消息需要收聽,則返回執(zhí)行步驟三,否則執(zhí)行步驟五;
[0013]步驟五:在REQ消息接收過程結(jié)束過后,發(fā)送端節(jié)點將當(dāng)前結(jié)構(gòu)體數(shù)組中所存儲的各個發(fā)送節(jié)點ID所對應(yīng)的請求向量執(zhí)行按位或運(yùn)算,得到聯(lián)合請求向量;
[0014]發(fā)送端節(jié)點根據(jù)式(I)計算當(dāng)前結(jié)構(gòu)體數(shù)組中所存儲的各個節(jié)點ID所對應(yīng)的請求向量所對應(yīng)的各個數(shù)據(jù)包的有效接收量;根據(jù)式(2)得出聯(lián)合請求向量所對應(yīng)的待發(fā)送的數(shù)據(jù)包的總數(shù);進(jìn)而根據(jù)式(3)計算聯(lián)合請求向量所對應(yīng)的待發(fā)送數(shù)據(jù)包的平均有效接收量,計算出平均有效接收量后結(jié)構(gòu)體數(shù)組中的元素已經(jīng)失效,需要清空結(jié)構(gòu)體數(shù)組中的所有元素。然后啟動一個計時器,所述計時器的計時間隔如式(4)所示,當(dāng)計時器觸發(fā)時,發(fā)送端節(jié)點發(fā)送聯(lián)合請求向量所對應(yīng)的待發(fā)送數(shù)據(jù)包;
【權(quán)利要求】
1.一種無線傳感網(wǎng)絡(luò)中考慮鏈路相關(guān)性的選擇發(fā)送端的方法,其特征在于,包括如下步驟: 步驟一:無線傳感網(wǎng)絡(luò)中的接收端節(jié)點,在接收完當(dāng)前一輪數(shù)據(jù)后,向無線傳感網(wǎng)絡(luò)中廣播REQ消息,所述REQ消息包含發(fā)送該REQ消息的節(jié)點的ID、數(shù)據(jù)頁的序號和請求向量;步驟二:發(fā)送端節(jié)點收聽REQ消息并獲取當(dāng)前REQ消息中的發(fā)送節(jié)點ID、數(shù)據(jù)頁的序號和請求向量,將當(dāng)前REQ消息中的發(fā)送節(jié)點ID和請求向量存儲到結(jié)構(gòu)體數(shù)組中; 步驟三:發(fā)送端節(jié)點繼續(xù)收聽REQ消息并獲取當(dāng)前REQ消息中的發(fā)送節(jié)點ID、數(shù)據(jù)頁的序號和請求向量; 步驟四:發(fā)送端節(jié)點比較最新獲取的REQ消息中的數(shù)據(jù)頁的序號和當(dāng)前結(jié)構(gòu)體數(shù)組已存儲的數(shù)據(jù)頁的序號: 如果最新獲取的REQ消息中的數(shù)據(jù)頁的序號更大,則直接丟棄最新獲取的REQ消息;此時如果還有REQ消息需要收聽,則返回執(zhí)行步驟三,否則執(zhí)行步驟五; 如果最新獲取的REQ消息中的數(shù)據(jù)頁的序號更小,則清空當(dāng)前結(jié)構(gòu)體數(shù)組中的所有元素,再把最新獲取的REQ消息中的發(fā)送節(jié)點ID和請求向量存儲到當(dāng)前結(jié)構(gòu)體數(shù)組中;此時如果還有REQ消息需要收聽,則返回執(zhí)行步驟三,否則執(zhí)行步驟五; 如果最新獲取的REQ消息中的數(shù)據(jù)頁的序號和當(dāng)前結(jié)構(gòu)體數(shù)組已存儲的數(shù)據(jù)頁的序號相等,判斷最新獲取的REQ消息中的發(fā)送節(jié)點ID是否已經(jīng)存儲在當(dāng)前結(jié)構(gòu)體數(shù)組中,如果是,則直接將當(dāng)前結(jié)構(gòu)體數(shù)組中該發(fā)送節(jié)點ID所對應(yīng)的請求向量與最新獲取的REQ消息中的請求向量進(jìn)行按位或運(yùn)算,再使用按位或運(yùn)算后得到的請求向量去替換當(dāng)前結(jié)構(gòu)體數(shù)組中的該發(fā)送節(jié)點ID所對應(yīng)的請求向量,此時如果還有REQ消息需要收聽,則返回執(zhí)行步驟三,否則執(zhí)行步驟五; 如果最新獲取的REQ消息中的發(fā)送節(jié)點ID未存儲在當(dāng)前結(jié)構(gòu)體數(shù)組中,則直接將該發(fā)送節(jié)點ID和最新獲取的REQ消息中的請求向量存儲到當(dāng)前結(jié)構(gòu)體數(shù)組中,此時如果還有REQ消息需要收聽,則返回執(zhí)行步驟三,否則執(zhí)行步驟五; 步驟五:在REQ消息接收過程結(jié)束過后,發(fā)送端節(jié)點將當(dāng)前結(jié)構(gòu)體數(shù)組中所存儲的各個發(fā)送節(jié)點ID所對應(yīng)的請求向量執(zhí)行按位或運(yùn)算,得到聯(lián)合請求向量; 發(fā)送端節(jié)點根據(jù)式(I)計算當(dāng)前結(jié)構(gòu)體數(shù)組中所存儲的各個節(jié)點ID所對應(yīng)的請求向量所對應(yīng)的各個數(shù)據(jù)包的有效接收量;根據(jù)式(2)得出聯(lián)合請求向量所對應(yīng)的待發(fā)送的數(shù)據(jù)包的總數(shù);進(jìn)而根據(jù)式(3)計算聯(lián)合請求向量所對應(yīng)的待發(fā)送數(shù)據(jù)包的平均有效接收量,然后啟動計時器,所述計時器的計時間隔如式(4)所示,當(dāng)計時器觸發(fā)時,發(fā)送端節(jié)點發(fā)送聯(lián)合請求向量所對應(yīng)的待發(fā)送數(shù)據(jù)包;
2.根據(jù)權(quán)利要求1所述的方法,其特征是:所述REQ消息由發(fā)送節(jié)點的ID、數(shù)據(jù)頁的序號和請求向量組成。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征是:在步驟五中,計算出聯(lián)合請求向量所對應(yīng)的待發(fā)送數(shù)據(jù)包的平均有效接收量后,在啟動計時器之前,清空當(dāng)前結(jié)構(gòu)體數(shù)組中的所有元素。
【文檔編號】H04L1/18GK103780364SQ201410007781
【公開日】2014年5月7日 申請日期:2014年1月8日 優(yōu)先權(quán)日:2014年1月8日
【發(fā)明者】卜佳俊, 董瑋, 陳純, 趙志為, 王永剛 申請人:浙江大學(xué)