專利名稱:無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)惡意干擾的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及的是一種無線通信技術(shù)領(lǐng)域的方法,具體是一種基于IEEE 802. 15. 4 技術(shù)的無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)惡意干擾的方法。
背景技術(shù):
無線傳感器網(wǎng)絡(luò)綜合了傳感器、嵌入式計(jì)算、分布式處理和無線通信等技術(shù),是一 種全新的信息獲取和處理技術(shù)。無線傳感器網(wǎng)絡(luò)由隨機(jī)分布的集成傳感器、數(shù)據(jù)處理單元 和通信模塊的微小節(jié)點(diǎn)通過自組織的方式構(gòu)成。它借助于節(jié)點(diǎn)中內(nèi)置的形式多樣的傳感 器,協(xié)作地實(shí)時(shí)監(jiān)測、感知和采集各種環(huán)境或監(jiān)測對(duì)象的信息,對(duì)其進(jìn)行處理,并通過無線 和自組織多跳的網(wǎng)絡(luò)方式,將獲取到的信息送到終端用戶。隨著無線傳感器網(wǎng)絡(luò)的發(fā)展與應(yīng)用越來越廣泛,其安全問題也日益重要。同時(shí),受 限于傳感器結(jié)點(diǎn)本身計(jì)算能力、能量、傳輸媒介等的限制,無線傳感器網(wǎng)絡(luò)的安全問題比以 往的因特網(wǎng)上的安全問題更為棘手。在無線傳感器網(wǎng)絡(luò)中,結(jié)點(diǎn)之間通信使用的是開放而 且通信帶寬受限的信道,這樣使得干擾結(jié)點(diǎn)可以很容易地觀測并參與到網(wǎng)絡(luò)中正常結(jié)點(diǎn)的 通信。所以,干擾結(jié)點(diǎn)只要繞過MAC層(介質(zhì)訪問控制層)和物理層的一些相應(yīng)安全機(jī)制, 通過簡單地發(fā)送錯(cuò)誤的信息就可以誤導(dǎo)網(wǎng)絡(luò)中的正常結(jié)點(diǎn),從而影響整個(gè)傳感器網(wǎng)絡(luò)的正 常工作。這種干擾攻擊可以看成DoS攻擊(denial-of-service,拒絕服務(wù)攻擊)的一個(gè)特 例。經(jīng)文獻(xiàn)檢索發(fā)現(xiàn),作者Y. Law和P. Havinga在ISSNIP 2005的89-95頁上發(fā)表文 章"Howto secure a wireless sensor network,,,該文提至Ij的一些無線傳感器網(wǎng)絡(luò)中抗 干擾的方法,如基于物理層的HISS擴(kuò)頻技術(shù)和DHSS擴(kuò)頻技術(shù)(直接序列擴(kuò)頻技術(shù)),或者 設(shè)計(jì)新的MAC層協(xié)議。前者需要改變現(xiàn)有的傳感器結(jié)點(diǎn)的硬件設(shè)計(jì),成本比較高,后者與現(xiàn) 有的傳感器網(wǎng)絡(luò)不兼容。所以現(xiàn)在亟需發(fā)掘一些新的機(jī)制用于對(duì)干擾攻擊。這個(gè)機(jī)制需要 能達(dá)到一定的抗干擾能力,同時(shí)也需要能夠在現(xiàn)有的傳感器結(jié)點(diǎn)硬件上實(shí)現(xiàn)得了,并與當(dāng) 前的傳感器網(wǎng)絡(luò)互相兼容。
發(fā)明內(nèi)容
本發(fā)明針對(duì)現(xiàn)有技術(shù)存在的上述不足,提供一種無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)惡意干擾 的方法。本發(fā)明在IEEE 802. 15. 4協(xié)議的MAC層之上,通過引入相應(yīng)的機(jī)制,使無線傳感器 網(wǎng)絡(luò)具備抗干擾的能力而無須修改當(dāng)前的傳感器硬件設(shè)計(jì),并且可與當(dāng)前無線傳感器網(wǎng)絡(luò)
相兼容。本發(fā)明是通過以下技術(shù)方案實(shí)現(xiàn)的,本發(fā)明包括以下步驟步驟1、傳感器節(jié)點(diǎn)進(jìn)行丟失節(jié)點(diǎn)判斷后計(jì)算所有一跳鄰居節(jié)點(diǎn)中的最大包傳輸 成功率所述的丟失節(jié)點(diǎn)判斷是指傳感器結(jié)點(diǎn)通過廣播數(shù)據(jù)包至所有一跳鄰居結(jié)點(diǎn),并 根據(jù)收到的回復(fù)消息來更新其鄰居結(jié)點(diǎn)列表,當(dāng)原有的鄰居節(jié)點(diǎn)列表中有至少一個(gè)結(jié)點(diǎn)在更新后的鄰居表中不再出現(xiàn),則該鄰居節(jié)點(diǎn)為丟失節(jié)點(diǎn)并執(zhí)行步驟4。所述的廣播數(shù)據(jù)包的周期為50ms。所述的最大包傳輸成功率是指當(dāng)不存在丟失節(jié)點(diǎn)時(shí),傳感器結(jié)點(diǎn)分別統(tǒng)計(jì)其自 身及其鄰居結(jié)點(diǎn)的廣播數(shù)據(jù)包-回復(fù)消息的包傳輸成功率,并且得出包傳輸成功率中的最 大值作為最大包傳輸成功率。 所述的廣播數(shù)據(jù)包-回復(fù)消息的包傳輸成功率是指在一個(gè)時(shí)間窗口 W中,傳感器 結(jié)點(diǎn)統(tǒng)計(jì)成功發(fā)送的數(shù)據(jù)包的個(gè)數(shù)和成功到達(dá)目的地的數(shù)據(jù)包的個(gè)數(shù),二者的比值即為包 傳輸成功率Pdr ;其中W為2秒。步驟2、當(dāng)最大包傳輸成功率大于傳輸率閾值時(shí)返回步驟1,否則傳感器結(jié)點(diǎn)測量 當(dāng)前通信信道中的信號(hào)能量強(qiáng)度;所述的當(dāng)前通信信道中的信號(hào)能量強(qiáng)度通過以下方式獲得傳感器結(jié)點(diǎn)每隔 lms,連續(xù)50次讀取信道中的信號(hào)能量強(qiáng)度,并選取50個(gè)信號(hào)能量強(qiáng)度值中最大的三個(gè),取 平均后作為當(dāng)前通信信道中的信號(hào)能量強(qiáng)度。所述的傳輸率閾值為50%。步驟3、當(dāng)信號(hào)能量強(qiáng)度小于信號(hào)強(qiáng)度閾值時(shí)回到步驟1 ;否則傳感器結(jié)點(diǎn)將當(dāng)前 通信信道切換至保留信道,并在保留信道上等待重新連接,當(dāng)重新連接則回到步驟1 ;否則 傳感器結(jié)點(diǎn)搜索所有可用通信信道并依次在各個(gè)可用通信信道上等待重新連接,當(dāng)重新連 接則回到步驟1 ;否則傳感器節(jié)點(diǎn)將當(dāng)前通信信道切換至初始信道,并等待連接,一直到連 接上后回到步驟1 ;所述的保留信道為傳感器網(wǎng)絡(luò)中在初始化時(shí)就預(yù)先設(shè)定好的無干擾信道序列,該 保留信道通過以下方式得到對(duì)所有的信道進(jìn)行編碼,網(wǎng)絡(luò)中的每個(gè)傳感器結(jié)點(diǎn)共享同一 個(gè)密鑰用于產(chǎn)生一個(gè)相同的隨機(jī)數(shù)序列,當(dāng)需要獲得一個(gè)保留信道編號(hào)時(shí),按照所述的隨 機(jī)數(shù)序列進(jìn)行搜索得到的第一個(gè)空閑的信道即為保留信道。所述的空閑的信道是指當(dāng)信道中的信號(hào)能量強(qiáng)度低于閾值時(shí),則斷定信道為空 閑。步驟4、傳感器結(jié)點(diǎn)將當(dāng)前通信信道切換至保留信道,并在保留信道上廣播數(shù)據(jù)包 給所有一跳鄰居結(jié)點(diǎn),當(dāng)收到步驟1中所述丟失節(jié)點(diǎn)的回復(fù)則執(zhí)行下步驟5,否則傳感器結(jié) 點(diǎn)將當(dāng)前通信信道切換至初始信道并返回步驟1 ;步驟5、傳感器結(jié)點(diǎn)將當(dāng)前通信信道切換至初始信道,廣播即將切換通信信道的消 息,然后再將通信信道切換至保留信道上,返回步驟1。有益效果現(xiàn)在廣泛應(yīng)用在無線傳感器網(wǎng)絡(luò)中的IEEE 802. 15. 4技術(shù)中并沒有應(yīng) 對(duì)干擾的機(jī)制,而傳統(tǒng)的無線網(wǎng)絡(luò)抗干擾的方法不能在現(xiàn)有的傳感器結(jié)點(diǎn)上實(shí)現(xiàn)。本發(fā)明 在IEEE802. 15. 4技術(shù)的基礎(chǔ)上,提出來了一種無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)干擾的方法。通過 實(shí)驗(yàn)表明,這個(gè)方法能夠有效地應(yīng)對(duì)干擾,使得無線傳感器網(wǎng)絡(luò)在存在干擾的環(huán)境中正常 工作。在大多數(shù)情況下,其干擾檢測精度達(dá)到80%以上,其信道切換時(shí)延可控制在百毫秒 級(jí)別,足以滿足大部分現(xiàn)有的傳感器網(wǎng)絡(luò)應(yīng)用的需要。同時(shí)這個(gè)方法的額外計(jì)算復(fù)雜度是 0(1),基本不會(huì)影響到傳感器的正常工作。本發(fā)明采用了引入置信度檢驗(yàn)的包傳輸成功率 來進(jìn)行干擾檢測的判斷,這是這個(gè)抗干擾系統(tǒng)的基礎(chǔ),使之在擁有較高抗干擾能力的前提 下,也不至于對(duì)傳感器結(jié)點(diǎn)造成過大的額外負(fù)擔(dān)。
圖1是本發(fā)明流程示意圖。
具體實(shí)施例方式下面對(duì)本發(fā)明的實(shí)施例作詳細(xì)說明,本實(shí)施例在以本發(fā)明技術(shù)方案為前提下進(jìn)行 實(shí)施,給出了詳細(xì)的實(shí)施方式和具體的操作過程,但本發(fā)明的保護(hù)范圍不限于下述的實(shí)施 例。運(yùn)行本發(fā)明方法的設(shè)備為普通的傳感器結(jié)點(diǎn),具體的平臺(tái)型號(hào)是Telosb。發(fā)明方 法的具體實(shí)現(xiàn)平臺(tái)是=TinyOS 2操作系統(tǒng)。網(wǎng)絡(luò)中所使用的通信技術(shù)是IEEE 802. 15. 4技 術(shù)。通過修改TinyOS 2里原來實(shí)現(xiàn)IEEE 802. 15. 4技術(shù)的代碼,來把本發(fā)明應(yīng)用到實(shí) 際的傳感器結(jié)點(diǎn)中。具體步驟如下步驟1、傳感器結(jié)點(diǎn)如果收到切換信道的消息通知的話,就把信道切換到消息中所 述的信道中。否則傳感器結(jié)點(diǎn)通過在每次廣播beacon數(shù)據(jù)包給所有一跳鄰居結(jié)點(diǎn)時(shí),根據(jù) 收到的回復(fù)消息來更新其鄰居結(jié)點(diǎn)列表。如果結(jié)點(diǎn)沒有收到原來的某個(gè)鄰居結(jié)點(diǎn)列表上的 結(jié)點(diǎn)的回復(fù)消息,則傳感器結(jié)點(diǎn)可以斷定這個(gè)鄰居結(jié)點(diǎn)發(fā)生了丟失,接著轉(zhuǎn)步驟4繼續(xù)操 作,否則傳感器結(jié)點(diǎn)分別統(tǒng)計(jì)其自身及其鄰居結(jié)點(diǎn)的包傳輸成功率,并且得出包傳輸成功 率中的最大值作為最大包傳輸成功率,具體步驟包括1. 1)傳感器結(jié)點(diǎn)每隔t時(shí)間廣播一個(gè)beacon數(shù)據(jù)包至鄰居列表中的結(jié)點(diǎn),以保證 網(wǎng)絡(luò)中的數(shù)據(jù)流量不小于T
threshold‘ 其中T
threshold
取20個(gè)數(shù)據(jù)包/秒,t取值50ms ;1. 2)傳感器結(jié)點(diǎn)在每次調(diào)用發(fā)包函數(shù)時(shí),會(huì)統(tǒng)計(jì)成功發(fā)送的數(shù)據(jù)包的個(gè)數(shù)和成 功到達(dá)目的地的數(shù)據(jù)包的個(gè)數(shù),二者的比值即為包傳輸成功率(記為Pdr);最后在每個(gè) 長度為2秒的時(shí)間窗口內(nèi)都統(tǒng)計(jì)出它與自身鄰居結(jié)點(diǎn)之間的最大包傳輸成功率(記為 MaxPdr);步驟2、比較步驟1所得到的MaxPdr與Pthresh。ld,如果MaxPdr > Pthreshold,轉(zhuǎn)步驟 (1)繼續(xù)操作,否則傳感器結(jié)點(diǎn)測量得到當(dāng)前通信信道中的信號(hào)能量強(qiáng)度SS。具體步驟為 通過設(shè)置一個(gè)定時(shí)觸發(fā)的任務(wù),每隔Ims觸發(fā)一次,通過讀取硬件預(yù)備好存放在寄存器中 的信號(hào)能量強(qiáng)度數(shù)值;當(dāng)這個(gè)定時(shí)任務(wù)被觸發(fā)50次后,就不再被觸發(fā),同時(shí)返回這50次測 量中所獲得的數(shù)值里最大的前三個(gè)數(shù)值的平均值,這可以當(dāng)作是所要求獲得的信號(hào)能量強(qiáng) 度SS;其中,Pthresh。ld為根據(jù)需要設(shè)定的閾值,通過實(shí)驗(yàn),可以取為50%。步驟3、比較步驟2中所得到的SS與Sthresh。ld,如果SS < Sthreshold,轉(zhuǎn)步驟1繼續(xù)操 作,否則傳感器結(jié)點(diǎn)將當(dāng)前通信信道切換至保留信道,設(shè)置一個(gè)定時(shí)任務(wù),任務(wù)內(nèi)容是如果 當(dāng)前結(jié)點(diǎn)在T時(shí)間內(nèi)重新被其他結(jié)點(diǎn)連接上,就轉(zhuǎn)步驟1繼續(xù)操作,否則傳感器結(jié)點(diǎn)搜索所 有可用通信信道并依次在各個(gè)可用通信信道上等待重新連接,等待的最長時(shí)間為T,當(dāng)重新 連接則回到步驟1 ;否則傳感器節(jié)點(diǎn)將當(dāng)前通信信道切換至初始信道,并等待連接,一直到 連接上后回到步驟1 ;其中,Sthresh。ld為根據(jù)需要設(shè)定的閾值,與傳感器結(jié)點(diǎn)的硬件實(shí)現(xiàn)方法有關(guān),可以通過實(shí)驗(yàn)獲得一個(gè)合適的Sthresh。ld取值;在這里,Sthresh。ld可以取-82daii。所述的保留信道為傳感器網(wǎng)絡(luò)中在初始化時(shí)就預(yù)先設(shè)定好的無干擾信道序列,該 保留信道通過以下方式得到對(duì)所有的信道進(jìn)行編碼,網(wǎng)絡(luò)中的每個(gè)傳感器結(jié)點(diǎn)共享同一 個(gè)密鑰用于產(chǎn)生一個(gè)相同的隨機(jī)數(shù)序列。當(dāng)需要獲得一個(gè)保留信道編號(hào)時(shí),就按照這個(gè) 序列搜索,遇到的第一個(gè)空閑的信道就是所求的保留信道。其中,判斷信道空閑與否的方 法是通過測量信道中的信號(hào)能量強(qiáng)度SS2,測量方法與步驟2中測量SS值相同。當(dāng)SS2 < SS2threshold時(shí),就斷定信道為空閑。通常,SS\toesh。ld可以取-90cffim。步驟4、傳感器結(jié)點(diǎn)將當(dāng)前通信信道切換至保留信道;傳感器結(jié)點(diǎn)在保留信道上 廣播數(shù)據(jù)包給所有一跳鄰居結(jié)點(diǎn),如果有收到步驟1中所述在新的鄰居列表中消失的結(jié)點(diǎn) 的回復(fù)的話,則執(zhí)行下一個(gè)步驟,否則傳感器結(jié)點(diǎn)將當(dāng)前通信信道切換至初始信道并返回 步驟1;步驟5、傳感器結(jié)點(diǎn)將當(dāng)前通信信道切換至初始信道,廣播即將切換通信信道的消 息,然后再將通信信道切換至保留信道上,返回步驟1。
權(quán)利要求
1.一種無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)惡意干擾的方法,其特征在于,包括以下步驟步驟1、傳感器節(jié)點(diǎn)進(jìn)行丟失節(jié)點(diǎn)判斷后計(jì)算所有一跳鄰居節(jié)點(diǎn)中的最大包傳輸成功率步驟2、當(dāng)最大包傳輸成功率大于傳輸率閾值時(shí)返回步驟1,否則傳感器結(jié)點(diǎn)測量當(dāng)前 通信信道中的信號(hào)能量強(qiáng)度;步驟3、當(dāng)信號(hào)能量強(qiáng)度小于信號(hào)強(qiáng)度閾值時(shí)回到步驟1 ;否則傳感器結(jié)點(diǎn)將當(dāng)前通信 信道切換至保留信道,并在保留信道上等待重新連接,當(dāng)重新連接則回到步驟1 ;否則傳感 器結(jié)點(diǎn)搜索所有可用通信信道并依次在各個(gè)可用通信信道上等待重新連接,當(dāng)重新連接則 回到步驟1 ;否則傳感器節(jié)點(diǎn)將當(dāng)前通信信道切換至初始信道,并等待連接,一直到連接上 后回到步驟1 ;步驟4、傳感器結(jié)點(diǎn)將當(dāng)前通信信道切換至保留信道,并在保留信道上廣播數(shù)據(jù)包給所 有一跳鄰居結(jié)點(diǎn),當(dāng)收到步驟1中所述丟失節(jié)點(diǎn)的回復(fù)則執(zhí)行下步驟5,否則傳感器結(jié)點(diǎn)將 當(dāng)前通信信道切換至初始信道并返回步驟1 ;步驟5、傳感器結(jié)點(diǎn)將當(dāng)前通信信道切換至初始信道,廣播即將切換通信信道的消息, 然后再將通信信道切換至保留信道上,返回步驟1。
2.根據(jù)權(quán)利要求1所述的無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)惡意干擾的方法,其特征是,所述的 丟失節(jié)點(diǎn)判斷是指傳感器結(jié)點(diǎn)通過廣播數(shù)據(jù)包至所有一跳鄰居結(jié)點(diǎn),并根據(jù)收到的回復(fù) 消息來更新其鄰居結(jié)點(diǎn)列表,當(dāng)原有的鄰居節(jié)點(diǎn)列表中有至少一個(gè)結(jié)點(diǎn)在更新后的鄰居表 中不再出現(xiàn),則該鄰居節(jié)點(diǎn)為丟失節(jié)點(diǎn)并執(zhí)行步驟4。
3.根據(jù)權(quán)利要求1所述的無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)惡意干擾的方法,其特征是,所述的 廣播數(shù)據(jù)包的周期為50ms。
4.根據(jù)權(quán)利要求1所述的無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)惡意干擾的方法,其特征是,所述的 最大包傳輸成功率是指當(dāng)不存在丟失節(jié)點(diǎn)時(shí),傳感器結(jié)點(diǎn)分別統(tǒng)計(jì)其自身及其鄰居結(jié)點(diǎn) 的廣播數(shù)據(jù)包-回復(fù)消息的包傳輸成功率,并且得出包傳輸成功率中的最大值作為最大包 傳輸成功率。
5.根據(jù)權(quán)利要求4所述的無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)惡意干擾的方法,其特征是,所述的 廣播數(shù)據(jù)包-回復(fù)消息的包傳輸成功率是指在一個(gè)時(shí)間窗口 W中,傳感器結(jié)點(diǎn)統(tǒng)計(jì)成功發(fā) 送的數(shù)據(jù)包的個(gè)數(shù)和成功到達(dá)目的地的數(shù)據(jù)包的個(gè)數(shù),二者的比值即為包傳輸成功率Pdr ; 其中W為2秒。
6.根據(jù)權(quán)利要求1所述的無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)惡意干擾的方法,其特征是,所述的 當(dāng)前通信信道中的信號(hào)能量強(qiáng)度通過以下方式獲得傳感器結(jié)點(diǎn)每隔1ms,連續(xù)50次讀取 信道中的信號(hào)能量強(qiáng)度,并選取50個(gè)信號(hào)能量強(qiáng)度值中最大的三個(gè),取平均后作為當(dāng)前通 信信道中的信號(hào)能量強(qiáng)度。
7.根據(jù)權(quán)利要求1所述的無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)惡意干擾的方法,其特征是,所述的 保留信道為傳感器網(wǎng)絡(luò)中在初始化時(shí)就預(yù)先設(shè)定好的無干擾信道序列,該保留信道通過以 下方式得到對(duì)所有的信道進(jìn)行編碼,網(wǎng)絡(luò)中的每個(gè)傳感器結(jié)點(diǎn)共享同一個(gè)密鑰用于產(chǎn)生 一個(gè)相同的隨機(jī)數(shù)序列,當(dāng)需要獲得一個(gè)保留信道編號(hào)時(shí),按照所述的隨機(jī)數(shù)序列進(jìn)行搜 索得到的第一個(gè)空閑的信道即為保留信道。
8.根據(jù)權(quán)利要求1所述的無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)惡意干擾的方法,其特征是,所述的空閑的信道是指當(dāng)信道中的信號(hào)能量強(qiáng)度低于閾值時(shí),則斷定信道為空閑。
9.根據(jù)權(quán)利要求1所述的無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)惡意干擾的方法,其特征是,所述的 傳輸率閾值為50%。
全文摘要
一種無線通信技術(shù)領(lǐng)域的無線傳感器網(wǎng)絡(luò)中應(yīng)對(duì)惡意干擾的方法,通過最大包傳輸成功率和信號(hào)能量強(qiáng)度對(duì)鄰居節(jié)點(diǎn)列表進(jìn)行更新;并通過保留信道實(shí)現(xiàn)應(yīng)對(duì)惡意干擾的信息傳輸。本發(fā)明使無線傳感器網(wǎng)絡(luò)具備抗干擾的能力而無須修改當(dāng)前的傳感器硬件設(shè)計(jì),并且可與當(dāng)前無線傳感器網(wǎng)絡(luò)相兼容。
文檔編號(hào)H04W28/26GK102088741SQ201110050440
公開日2011年6月8日 申請(qǐng)日期2011年3月2日 優(yōu)先權(quán)日2011年3月2日
發(fā)明者朱燕民, 李文賢 申請(qǐng)人:上海交通大學(xué)