專利名稱:一種異構(gòu)無線傳感器網(wǎng)絡(luò)及其專用的自恢復(fù)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及傳感器網(wǎng)絡(luò)領(lǐng)域;本發(fā)明還涉及無線傳感器網(wǎng)絡(luò)的自恢復(fù)方法。具體為一種嵌入自律反饋控制單元的異構(gòu)無線傳感器網(wǎng)絡(luò)及其基于自律計算技術(shù)實現(xiàn)自恢復(fù)的方法。
背景技術(shù):
無線傳感器網(wǎng)絡(luò)(Wir eless Sensor Network, WSN)是由具有感知、處理和無線通信能力的傳感器節(jié)點通過自組織方式形成的網(wǎng)絡(luò)。在過去的幾年中,WSN已經(jīng)成為計算機(jī)研究領(lǐng)域的熱點,其在軍事、環(huán)境、健康、家庭、商業(yè)以及空間探索和災(zāi)難拯救等方面有著廣闊的應(yīng)用前景。
傳感器網(wǎng)絡(luò)的部署方法和物理交流環(huán)境使其易受到攻擊,目前較為常見的預(yù)防攻擊的方法主要是加密和授權(quán),但是這兩項技術(shù)雖然能夠減少傳感器網(wǎng)絡(luò)中的攻擊,卻不能完全消除。具體表現(xiàn)為,加密和授權(quán)不能防護(hù)妥協(xié)節(jié)點,受到DoS攻擊的節(jié)點妥協(xié)后仍會發(fā)動攻擊,并妥協(xié)其它節(jié)點。此外,即使能夠有效地阻止妥協(xié),也難以避免產(chǎn)生故障節(jié)點。自恢復(fù)是指系統(tǒng)能偵測到運行中的錯誤,并且能自動修正錯誤,提高系統(tǒng)的可用性。為此,如何讓傳感器網(wǎng)絡(luò)檢測到受到DoS攻擊的妥協(xié)節(jié)點,并使其具有自我恢復(fù)的能力是一項必要和基礎(chǔ)性的研究。
現(xiàn)有的傳感器網(wǎng)絡(luò)的恢復(fù)方法主要有Gummadi Ramakrishna,Kothari Nupur 在 2007 年 6th International Conference on Aspect-Oriented Software Development-Research Track Proceedings 發(fā)表的 Declarative Failure Recovery for SensorNetworks提出的針對傳感器網(wǎng)絡(luò)的宏程序系統(tǒng)設(shè)計檢測點API (應(yīng)用編程接口)函數(shù),當(dāng)傳感器網(wǎng)絡(luò)應(yīng)用出現(xiàn)故障時,從所設(shè)置的檢測點重新執(zhí)行來實現(xiàn)本地節(jié)點的恢復(fù)。 但是這種恢復(fù)技術(shù)沒有實現(xiàn)能量的優(yōu)化,不但設(shè)置的檢測點增加了存儲開銷,且從檢測點進(jìn)行恢復(fù)增加了能量消耗,這對于節(jié)點資源受限的傳感器節(jié)點而言是致命的。Kamali, Maryam Sedighian, Saeed, Sharifi, Mohsen 2008 ^^ IS SNIP 2008-Proceedings of the 2008 International Conference on IntelIigentSensors, Sensor Networks and Information Processing發(fā)表的文章DistributedRecovery Mechanism for Actor-Actor Connectivity in Wireless Sensor Actor認(rèn)為異構(gòu)無線傳感器網(wǎng)絡(luò)中,當(dāng)有節(jié)點出現(xiàn)故障時,簇頭節(jié)點隔離故障節(jié)點,并讓最優(yōu)鄰居節(jié)點移動或拓?fù)渲貥?gòu)來代替故障節(jié)點,以保證網(wǎng)絡(luò)的正常連接。這種方法在一定程度上保證了網(wǎng)絡(luò)應(yīng)用的可靠性,但是目前傳感器節(jié)點的移動技術(shù)還遠(yuǎn)未成熟,網(wǎng)絡(luò)的穩(wěn)定性不強,不適宜目前的網(wǎng)絡(luò)狀況。Bai Li, Lynn Batten2009年在· Journal of Network and Computer Applications發(fā)表的Using mobile agents torecover from node and database compromise in path-based DoS attacks in wirelesssensor networks.提到在基于路徑的DoS攻擊中,利用移動Agent (代理)來實現(xiàn)傳感器網(wǎng)絡(luò)節(jié)點和數(shù)據(jù)庫妥協(xié)的恢復(fù)。Agent具有智能性,能檢測出攻擊并使妥協(xié)的節(jié)點有效的恢復(fù)。移動Agent搜集鄰居節(jié)點的“選舉”結(jié)果,得到妥協(xié)節(jié)點,并根據(jù)妥協(xié)節(jié)點數(shù)量的不同來執(zhí)行相應(yīng)的恢復(fù)方法,按妥協(xié)節(jié)點的數(shù)量從小到大依次為初級恢復(fù),中級恢復(fù)和高級恢復(fù)。在大規(guī)模的網(wǎng)絡(luò)中這種單純利用移動Agent的方法增加了恢復(fù)延時。與本設(shè)計相關(guān)的一項專利是專利號200710024100. 8“自主移動傳感器網(wǎng)絡(luò)動態(tài)建模與控制技術(shù)” 利用移動機(jī)器人來進(jìn)行可重復(fù)配置,節(jié)點移動時付出的能量開銷大,實現(xiàn)復(fù)雜,不適合當(dāng)前應(yīng)用的靜態(tài)傳感器網(wǎng)絡(luò)。
通過對已有的傳感器網(wǎng)絡(luò)的恢復(fù)方法的分析,可見目前傳感器網(wǎng)絡(luò)的恢復(fù)方法的研究與設(shè)計還出于初期階段,存在如下兩個問題 第一,傳感器節(jié)點的電源能量、通信能力、計算和存儲能力都有限制,當(dāng)節(jié)點恢復(fù)時,會因為能量耗盡而失效。
第二,在同構(gòu)傳感器網(wǎng)絡(luò)中,只有基站和大量的普通節(jié)點,在節(jié)點遍布廣泛的情況下,僅僅利用移動Agent通過路由選擇到達(dá)妥協(xié)的節(jié)點,進(jìn)行檢測和恢復(fù)處理,這樣增加了恢復(fù)延時,具有一定的局限性。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種節(jié)約存儲空間、能量消耗更小、自恢復(fù)更及時的異構(gòu)無線傳感器網(wǎng)絡(luò);本發(fā)明的目的還在于提供一種用于這種異構(gòu)無線傳感器網(wǎng)絡(luò)的專用自恢復(fù)方法。
本發(fā)明的目的是這樣實現(xiàn)的 本發(fā)明的這種異構(gòu)無線傳感器網(wǎng)絡(luò)為檢測代理連接決策代理、決策代理連接執(zhí)行代理,檢測代理、決策代理、執(zhí)行代理分別和知識庫連接形成自律反饋控制單元,自律反饋控制單元嵌入無線傳感器網(wǎng)絡(luò)中的簇頭節(jié)點和基站中。
本發(fā)明基于自律反饋控制單元執(zhí)行的自恢復(fù)方法,具體步驟如下 (1)異常檢測傳感器節(jié)點i向所在簇頭節(jié)點發(fā)送包Pack⑴={ID(i), Message},其中Message為發(fā)送的內(nèi)容,ID (i)為傳感器節(jié)點的物理位置,傳感器節(jié)點i發(fā)送包的數(shù)量為count (i),根據(jù)簇頭節(jié)點流量表中記錄的count (i)和ID (i),檢測代理檢測出所有傳感器節(jié)點信息,在知識庫中設(shè)立閾值M和標(biāo)志位submitted,其中M為簇頭節(jié)點接收到每個傳感器節(jié)點發(fā)送包的數(shù)量的最大值,submitted向決策代理提交異常檢測結(jié)果,若簇頭節(jié)點接收到每個傳感器節(jié)點包的數(shù)量大于M,則傳感器節(jié)點發(fā)生妥協(xié),標(biāo)志位submitted 置為1 ;若簇頭節(jié)點接收到每個傳感器節(jié)點包的數(shù)量不大于M,則submitted置為0 ; (2)異常決策Cn為時間間隔t內(nèi)submitted持續(xù)提交1的次數(shù),N為時間間隔t 內(nèi)submitted提交1的數(shù)量,C為時間間隔t中的另一個輔助標(biāo)志位,初始值為l,m為時間間隔t內(nèi)連續(xù)提交1的次數(shù)的閾值,η為時間間隔t內(nèi)總共提交1的次數(shù)的閾值,當(dāng)決策代理接收到檢測代理提交submitted時,C = C Λ submitted,若C為1,則傳感器節(jié)點異常, Cn和N都增加,否則Cn被置為0且C被置為1,當(dāng)Cn超出m時,則傳感器節(jié)點為嚴(yán)重妥協(xié), 決策代理告知執(zhí)行代理宏重啟該傳感器節(jié)點;當(dāng)Cn沒超出m但N的值超出了 η時,傳感器節(jié)點為一般妥協(xié),決策代理告知執(zhí)行代理微重啟該傳感器節(jié)點; (3)節(jié)點恢復(fù)決策代理得出應(yīng)執(zhí)行的恢復(fù)策略并提交給執(zhí)行代理,執(zhí)行代理根據(jù)自律傳感單元的知識庫選擇恢復(fù)方法,傳感器節(jié)點為一般妥協(xié)時,執(zhí)行微重啟恢復(fù)方法; 當(dāng)節(jié)點嚴(yán)重妥協(xié)時,執(zhí)行宏重啟恢復(fù)方法。
微重啟恢復(fù)方法為初始化元組數(shù)據(jù)共有I1, I2, · In個數(shù)據(jù),Ii為每個傳感器節(jié)點的屬性、事件,其對應(yīng)的功能函數(shù)為funi,fim2,· \ιηη,周期性更新的元數(shù)據(jù)分別為I' 1; I' 2,·Γ η,執(zhí)行代理根據(jù)每個傳感器節(jié)點更新到簇頭知識庫的元數(shù)據(jù)和知識庫中原有的元數(shù)據(jù)進(jìn)行比較,若對應(yīng)的Ii值改變,則執(zhí)行代理發(fā)送對應(yīng)功能函數(shù)的數(shù)據(jù)包給妥協(xié)節(jié)點, 使其恢復(fù)原來的數(shù)據(jù)值。
宏重啟恢復(fù)方法為執(zhí)行代理把初始化元組數(shù)據(jù)的功能函數(shù)發(fā)送給相關(guān)傳感器節(jié)點,進(jìn)行重啟,恢復(fù)節(jié)點的正常屬性值。
本發(fā)明有以下有益效果 本發(fā)明可以通過自律控制讓傳感器網(wǎng)絡(luò)自身檢測出受到DoS攻擊的妥協(xié)節(jié)點并自己恢復(fù)網(wǎng)絡(luò)的正常狀態(tài),不需要消耗普通節(jié)點額外的存儲空間,且能及時檢測并恢復(fù)。此夕卜,微重啟和宏重啟相結(jié)合的方法有助于降低節(jié)點恢復(fù)參數(shù)時的能量消耗,結(jié)構(gòu)簡單靈活, 可以適用于各種應(yīng)用的無線傳感器網(wǎng)絡(luò)。
圖1為具有自律反饋控制單元的傳感器節(jié)點結(jié)構(gòu); 圖2為異構(gòu)無線傳感器網(wǎng)絡(luò)自律反饋控制結(jié)構(gòu)圖; 圖3為恢復(fù)過程流程圖; 圖4為知識庫的結(jié)構(gòu)圖。
具體實施例方式下面結(jié)合附圖對本發(fā)明作進(jìn)一步說明 妥協(xié)節(jié)點不斷傳輸數(shù)據(jù),以盡快耗盡自己的能量,為此要讓妥協(xié)節(jié)點恢復(fù)其正常功能,以此保證網(wǎng)絡(luò)的正常性能,本發(fā)明充分利用了自律計算中的自律反饋控制結(jié)構(gòu)和智能Agent,來恢復(fù)發(fā)動DoS攻擊的妥協(xié)節(jié)點。
如圖1所示,首先在異構(gòu)無線傳感器網(wǎng)絡(luò)中,在資源相對較多的簇頭節(jié)點和基站中建立基于Agent的自律單元(Autonomic Element, AE),檢測代理MA(Monitoring Agent)、決策代理 DA (Deciding Agent)、執(zhí)行代理 EA(ExcusingAgent)和知識庫形成了一個自律反饋控制單元,它們之間相互合作來實現(xiàn)自律管理的功能。在此基礎(chǔ)上設(shè)計一個異構(gòu)無線傳感器網(wǎng)絡(luò)應(yīng)用自律反饋控制單元來實現(xiàn)自恢復(fù)的結(jié)構(gòu),如圖2所示。
當(dāng)出現(xiàn)傳感器節(jié)點妥協(xié)時,傳感器節(jié)點所在簇的自律反饋控制單元檢測出妥協(xié)節(jié)點,并進(jìn)行決策,實施相應(yīng)的恢復(fù)方法,如圖3所示其過程包括三個步驟異常檢測,異常決策和節(jié)點恢復(fù)。當(dāng)檢測到節(jié)點一般妥協(xié)時,對節(jié)點進(jìn)行微重啟;嚴(yán)重妥協(xié)時,執(zhí)行宏重啟, 以使網(wǎng)絡(luò)正常運作。
下面將基于圖2的結(jié)構(gòu)來實現(xiàn)傳感器網(wǎng)絡(luò)的自恢復(fù)方法,其中每個簇頭節(jié)點具有圖1的自律反饋控制單元,能夠自律管理簇內(nèi)傳感器節(jié)點。具體過程如下 1.異常檢測 根據(jù)三角測量的方法取得傳感器節(jié)點的物理位置,利用現(xiàn)有的空間三維坐標(biāo)方法對傳感器節(jié)點進(jìn)行標(biāo)注,如節(jié)點i的物理位置ID (i) = (30:40:3)表示經(jīng)度30,緯度40,高度3m。
檢測方法涉及到在簇頭節(jié)點自律反饋控制單元中的檢測代理在一定時間間隔內(nèi)檢測所收到簇內(nèi)傳感器節(jié)點發(fā)送的包的數(shù)量。傳感器節(jié)點i向所在簇的簇頭節(jié)點所發(fā)送的包標(biāo)記為Packet(i) = {ID(i) ,Message} ,Message為發(fā)送的內(nèi)容。傳感器節(jié)點i發(fā)送包的數(shù)量標(biāo)記為Cournt (i),通過流量表中記錄的Cournt (i)和Packet (i)的ID (i),檢測Agent 能檢測出所有傳感器節(jié)點的相關(guān)信息。以T = IOs的時間間隔監(jiān)測節(jié)點發(fā)送包的數(shù)量。為了區(qū)分傳感器節(jié)點是正?;蛲讌f(xié),在知識庫中設(shè)立一個閾值M和標(biāo)志位submitted,M為簇頭節(jié)點接收到包的數(shù)量最大值,submitted用來向DA提交異常檢測的結(jié)果。也就是說當(dāng)簇頭節(jié)點接收到每個傳感器節(jié)點包的數(shù)量大于給定閾值M時,傳感器節(jié)點被懷疑已經(jīng)發(fā)生妥協(xié),submitted標(biāo)志位置為1,代表異常,反之則置為O。
異常檢測階段的偽代碼如下
Procedure MonitoringOfNode—i() Set Count(i)=0,j=0
WhileG<=T) Il等待時間間隔的結(jié)束
Count(i)++
j++
End While
If(Count(i)<=M) // 正常狀態(tài) ID(i) to DA Submitted(O) to DA// 把狀態(tài)標(biāo)識 0 提交給 DA
End if
End Procedure Else//異常狀態(tài) ID(i) to DA
Submitted (1) to DA//把狀態(tài)標(biāo)識1提交給DA End else Update Count(i) End Procedure 2.異常決策 異常檢測完成后,決策代理需要對檢測結(jié)果做進(jìn)一步分析。Cn定義了時間間隔t 中節(jié)點持續(xù)提交1的次數(shù),N為時間間隔t中總共提交1的次數(shù),這兩個變量共同表示節(jié)點的妥協(xié)程度。此外,還包括3個輔助標(biāo)記位,C的初始值為1,m為時間間隔t內(nèi)連續(xù)提交1的次數(shù)的閾值,η為時間間隔t內(nèi)總共提交1的次數(shù)的閾值。當(dāng)DA接收到檢測代理的 submitted時,C = CA submitted。若C為1,則意味著傳感器節(jié)點異常,Cn和N都增加; 否則Cn被置為O且C被置為1。當(dāng)Cn超出m時,傳感器節(jié)點是嚴(yán)重妥協(xié),EA將被告知宏重啟節(jié)點。當(dāng)Cn沒超出m但N的值超出了 η時,傳感器節(jié)點一般妥協(xié),此時為了節(jié)省能量 ,EA 將被告知微重啟該傳感器節(jié)點。
異常決策階段的偽代碼如下
權(quán)利要求
1.一種異構(gòu)無線傳感器網(wǎng)絡(luò),其特征是檢測代理連接決策代理、決策代理連接執(zhí)行代理,檢測代理、決策代理、執(zhí)行代理分別和知識庫連接形成自律反饋控制單元,自律反饋控制單元嵌入無線傳感器網(wǎng)絡(luò)中的簇頭節(jié)點和基站中。
2.—種異構(gòu)無線傳感器網(wǎng)絡(luò)的自恢復(fù)方法,檢測代理連接決策代理、決策代理連接執(zhí)行代理,檢測代理、決策代理、執(zhí)行代理分別和知識庫連接形成自律反饋控制單元,自律反饋控制單元嵌入無線傳感器網(wǎng)絡(luò)中的簇頭節(jié)點和基站中構(gòu)成異構(gòu)無線傳感器網(wǎng)絡(luò),其特征是基于自律反饋控制單元執(zhí)行的自恢復(fù)方法具體步驟如下(1)異常檢測傳感器節(jié)點i向所在簇頭節(jié)點發(fā)送包Pack(i) = {ID⑴,Message},其中Message為發(fā)送的內(nèi)容,ID(i)為傳感器節(jié)點的物理位置,傳感器節(jié)點i發(fā)送包的數(shù)量為 count (i),根據(jù)簇頭節(jié)點流量表中記錄的count (i)和ID (i),檢測代理檢測出所有傳感器節(jié)點信息,在知識庫中設(shè)立閾值M和標(biāo)志位submitted,其中M為簇頭節(jié)點接收到每個傳感器節(jié)點發(fā)送包的數(shù)量的最大值,submitted向決策代理提交異常檢測結(jié)果,若簇頭節(jié)點接收到每個傳感器節(jié)點包的數(shù)量大于M,則傳感器節(jié)點發(fā)生妥協(xié),標(biāo)志位submitted置為1 ;若簇頭節(jié)點接收到每個傳感器節(jié)點包的數(shù)量不大于M,則submitted置為O ;(2)異常決策Cn為時間間隔t內(nèi)submitted持續(xù)提交1的次數(shù),N為時間間隔t內(nèi) submitted提交1的數(shù)量,C為時間間隔t中的另一個輔助標(biāo)志位,初始值為1,m為時間間隔t內(nèi)連續(xù)提交1的次數(shù)的閾值,η為時間間隔t內(nèi)總共提交1的次數(shù)的閾值,當(dāng)決策代理接收到檢測代理提交submitted時,C = C Λ submitted,若C為1,則傳感器節(jié)點異常,Cn 和N都增加,否則Cn被置為O且C被置為1,當(dāng)Cn超出m時,則傳感器節(jié)點為嚴(yán)重妥協(xié),決策代理告知執(zhí)行代理宏重啟該傳感器節(jié)點;當(dāng)Cn沒超出m但N的值超出了 η時,傳感器節(jié)點為一般妥協(xié),決策代理告知執(zhí)行代理微重啟該傳感器節(jié)點;(3)節(jié)點恢復(fù)決策代理得出應(yīng)執(zhí)行的恢復(fù)策略并提交給執(zhí)行代理,執(zhí)行代理根據(jù)自律傳感單元的知識庫選擇恢復(fù)方法,傳感器節(jié)點為一般妥協(xié)時,執(zhí)行微重啟恢復(fù)方法;當(dāng)節(jié)點嚴(yán)重妥協(xié)時,執(zhí)行宏重啟恢復(fù)方法。
3.根據(jù)權(quán)利要求2所述的一種異構(gòu)無線傳感器網(wǎng)絡(luò)的自恢復(fù)方法,其特征是所述的微重啟恢復(fù)方法為初始化元組數(shù)據(jù)共有I1,12, · In個數(shù)據(jù),Ii為每個傳感器節(jié)點的屬性、事件,其對應(yīng)的功能函數(shù)為偽叫,偽!^偽!^,周期性更新的元數(shù)據(jù)分別為〗'1;1' 2,·1' η, 執(zhí)行代理根據(jù)每個傳感器節(jié)點更新到簇頭知識庫的元數(shù)據(jù)和知識庫中原有的元數(shù)據(jù)進(jìn)行比較,若對應(yīng)的Ii值改變,則執(zhí)行代理發(fā)送對應(yīng)功能函數(shù)的數(shù)據(jù)包給妥協(xié)節(jié)點,使其恢復(fù)原來的數(shù)據(jù)值。
4.根據(jù)權(quán)利要求2所述的一種異構(gòu)無線傳感器網(wǎng)絡(luò)的自恢復(fù)方法,其特征是所述的宏重啟恢復(fù)方法為執(zhí)行代理把初始化元組數(shù)據(jù)的功能函數(shù)發(fā)送給相關(guān)傳感器節(jié)點,進(jìn)行重啟,恢復(fù)節(jié)點的正常屬性值。
全文摘要
本發(fā)明涉及傳感器網(wǎng)絡(luò)領(lǐng)域;本發(fā)明還涉及無線傳感器網(wǎng)絡(luò)的自恢復(fù)方法,具體為一種嵌入自律反饋控制單元的異構(gòu)無線傳感器網(wǎng)絡(luò)及其基于自律計算技術(shù)實現(xiàn)自恢復(fù)的方法。本發(fā)明由檢測代理連接決策代理、決策代理連接執(zhí)行代理,檢測代理、決策代理、執(zhí)行代理分別和知識庫連接形成自律反饋控制單元,自律反饋控制單元嵌入無線傳感器網(wǎng)絡(luò)中的簇頭節(jié)點和基站中形成異構(gòu)無線傳感器?;谶@種異構(gòu)無線傳感器網(wǎng)絡(luò)的自律反饋控制單元執(zhí)行的自恢復(fù)方法具體步驟包括異常檢測、異常決策、節(jié)點恢復(fù)。其中節(jié)點恢復(fù)包括微重啟恢復(fù)方法和宏重啟恢復(fù)方法。該發(fā)明有效節(jié)約了存儲空間、能量消耗更小、自恢復(fù)功能更及時。
文檔編號H04W24/04GK102186204SQ20111011234
公開日2011年9月14日 申請日期2011年5月3日 優(yōu)先權(quán)日2011年5月3日
發(fā)明者馬春光, 林相君, 呂宏武, 劉帥, 王九如 申請人:哈爾濱工程大學(xué)