張 兵,戈 軍
(1.宿遷學院信息工程學院,江蘇 宿遷223800;2.江蘇大學計算機科學與通信工程學院,江蘇 鎮江 212013)
無線傳感器網絡規模較大,無線傳感器網絡是由眾多傳感器節點組成的網絡。無線傳感器網絡利用節點產生業務相關的信息內容,實現不同業務信息的傳輸[1]。無線傳感器網絡利用航空投遞等方式將眾多節點投放至待監控目標區域。無線傳感器節點可部署于人類無法進入區域,具有極高的應用性。無線傳感器網絡利用無線通信模塊實現數據傳輸[2],無線傳感器節點通常部署于復雜區域,信號質量較差時,容易出現終端節點無法傳送信息至目標節點的情況。無線傳感器網絡的傳輸協議極為重要,傳輸協議可保障數據的可靠傳輸。無線傳感器節點將所采集數據傳送至網關[3],網關將相應數據傳送至數據終端,通過數據終端處理以及存儲數據,實現無線傳感器網絡中數據的高效傳輸。
無線傳感器網絡常應用于軍事、航空等重要應用中,容易出現攻擊者惡意攻擊節點情況,檢測無線傳感器網絡中存在的惡意節點極為重要[4]。伴隨科技的高速發展,無線傳感器網絡的安全問題受到眾多研究學者的重視。攻擊者可將無線傳感器網絡中的節點控制為惡意節點,利用惡意節點攻擊無線傳感器網絡[5],威脅無線傳感器網絡正常運行。無線傳感器網絡中惡意節點的高效檢測性能極為重要。
目前針對無線傳感器網絡節點檢測的研究較多,盧光躍以及周海平等人分別將圖信號以及微分博弈方法應用于無線傳感器網絡異常節點檢測中[6,7],兩種方法均可有效檢測無線傳感器網絡中的惡意節點。無線傳感器網絡容易存在通信阻塞情況,通信阻塞導致網絡中正常節點傳輸數據存在延時情況[8],此種情況下以上兩種方法易將正常節點誤判為惡意節點,導致無線傳感器網絡中惡意節點檢測準確率較低。針對以上兩種方法的缺陷,研究基于增強LEACH協議的無線傳感器惡意節點檢測方法,對低功耗自適應集簇分層協議(Low Energy Adaptive Clustering Hierarchy, LEACH)實施增強處理,利用增強LEACH協議劃分無線傳感器網絡中的簇,利用完成簇劃分的無線傳感器網絡檢測惡意節點,提升無線傳感器網絡運行安全性。
將增強LEACH協議應用于無線傳感器網絡結構中,提升無線傳感器網絡的擴展性以及數據傳輸可靠性。無線傳感器網絡中的匯聚節點具有較高特殊性,無線傳感器網絡存在匯聚節點時,表示網絡可以正常通信;無線傳感器網絡中無匯聚節點時,網絡無法實現正常通信。合理利用匯聚節點[9],避免網絡中的節點出現能耗過高情況。
2.1.1 確定最佳簇類數量
選取當前生存節點數的最佳簇數改進機制獲取最佳簇類數量,計算過程如下:
用Nr表示網絡中生存的節點數量,設生存的節點存在于大小為M×2M的矩形區域中,設該區域中包含簇的數量為k,則各簇包含節點數量為Nr/k。
簇頭傳輸數據時能耗表達式如下

(1)

設各簇內的成員節點傳輸一個數據包時,僅需將數據傳送至簇頭節點中即可,可得簇成員節點傳輸數據的能耗表達式如下

(2)
所劃分的各簇所占無線傳感器網絡面積為2M2/k,設各簇所占據區域的密度分布為ρ(x,y)。簇成員節點至簇頭節點的平方距離在簇頭位于該簇區域中間時的表達式如下

(3)


(4)

(5)
將式(5)代入式(2)中,獲取表達式如下

(6)
通過以上公式獲取無線傳感器網絡數據傳輸中一個簇的能耗表達式如下

(7)
可得數據傳輸時,全部節點能耗表達式如下

(8)
利用所獲取結果F對k求導令其等于0,獲取理想簇頭數量表達式如下

(9)
用kopt表示最佳簇頭節點數量,簇頭節點數量與最佳簇類數量相同,存在表達式如下

(10)
2.1.2 集中式成簇
集中式成簇算法的成簇流程圖如圖1所示。

圖1 集中式成簇流程
通過集中式成簇算法利用所確定的最佳簇頭節點數量,完成無線傳感器網絡簇的最終劃分。圖2集中式成簇流程可以看出,利用網絡中的匯聚節點統計網絡中存活節點數量,將存活節點能量與全網平均能量相比[10]。節點能量高于全網平均能量時,將該節點加入簇頭節點集合中;匯聚節點通過模擬退火算法利用所獲取的最佳簇頭節點數量劃分簇;節點能量低于全網平均能量時,將該節點直接加入簇頭節點集合中。確定簇頭節點后,利用匯聚節點廣播各節點的身份,完成簇的劃分,實現無線傳感器網絡數據的穩定傳輸。
利用以上過程完成無線傳感器網絡簇的劃分,利用所劃分的各簇中的節點實現數據傳輸,提升網絡的數據傳輸可靠性。所劃分各簇內的簇頭節點以及簇內節點選取LEACH協議進行單跳通信[11],所劃分的各簇間通信利用LEACH協議轉化為多跳轉發方式,通過以上過程實現增強LEACH協議的無線傳感器網絡通信,為惡意節點精準檢測提供通信基礎。
計算利用增強LEACH協議所劃分無線傳感器網絡各簇內節點的信譽值,利用所獲取的節點信譽值實現惡意節點檢測。
2.2.1 直接信譽值
節點信譽值伴隨網絡狀態變化而不斷變化[12],選取貝葉斯方法利用所劃分各簇內不同節點間的通信成功率獲取節點的直接信譽值。貝葉斯公式表達式如下:

(11)
式(11)中,Dj與B分別表示節點集合以及節點集合內元素。
選取Beta分布擬合通信概率,用α與β分別表示節點傳送數據包至其它節點的成功數量以及失敗數量,獲取節點的Beta分布函數表達式如下
(12)
式(12)中,ψ表示標準化函數,λ表示分布系數。
節點信譽值結果數值區間為[0,1],數據傳輸次數增加時,利用概率轉化方法獲取最終節點直接信譽值表達式如下:
Tij=E(Beta(α,β))
(13)
2.2.2 節點間接信譽值
利用當前節點的相鄰節點數據量化該節點的信譽值即節點的間接信譽值。
通過所劃分相同簇內節點y與節點z獲取節點x的間接信譽值,節點x的間接信譽值表達式如下

(14)
式(14)中,Wxy與Wxz分別表示數據包通過節點y以及節點z傳輸時的信譽值。
2.2.3 綜合信譽值
結合節點的直接信譽值與間接信譽值,獲取節點綜合信譽值。無線傳感器網絡采用增強LEACH協議將節點劃分為各簇,完成簇的劃分后,無線傳感器網絡步入短暫穩定狀態[13]。此時,隨機節點的綜合信譽值表達式如下

(15)
式(15)中,c表示調節參數,其取值處于0-1間。無線傳感器網絡中,節點傳輸數據包的次數越多,其直接信譽值較高。
2.3.1 數據包解析
匯聚節點接收所傳輸的數據包m時,需解析數據包m,數據包解析流程圖如圖2所示。

圖2 數據包解析流程圖
數據包解析過程如下:
1)匯聚節點利用該節點的簇頭共享密鑰解密數據包m,解密結果用m′表示;
2)刪除m′的數據包編號、節點編號以及簇頭信譽值,所剩數據未加密時,判定該數據為源節點數據;
3)所剩數據僅部分加密時,搜尋該數據的傳輸路徑[14],獲取數據的上游傳輸節點,確定源節點后終止迭代;
4)父節點數據包無法匹配子節點數據包時,添加全部節點于可疑節點列表中;
5)數據包內的節點編號在解密過程中與密鑰未匹配時,將該節點加入可疑節點列表。
通過以上數據包解析過程建立可疑節點列表,利用可疑節點列表檢測惡意節點。
2.3.2 惡意節點檢測綜合決策
選取信譽判定算法利用所獲取的節點信譽值以及節點的數據傳輸行為,檢測該節點是否為惡意節點。利用信譽判定算法將各節點的信譽值與所設定閾值比較,檢測該節點是否為惡意節點。
信譽判定算法利用節點信譽值作為檢測基礎。設置信譽值閾值XTh為1.3,該閾值可獲取較高的惡意節點檢測率[15]。利用全部節點的綜合信譽值Xm,判定該節點是否為惡意節點。
惡意節點檢測過程如下:
1)Xm≥XTh時,節點m位于可疑節點列表中時,判定該節點為惡意節點;否則將該節點加入可疑節點列表中,便于下一輪檢測;
2)Xm 通過匯聚節點廣播檢測的惡意節點編號,刪除與該節點存在關系的全部節點編號。可疑節點列表中的節點在5輪檢測中均符合XM 選取OPNET 14.5仿真軟件模擬無線傳感器網絡,驗證本文方法檢測無線傳感器網絡惡意節點有效性。網絡層采用增強LEACH路由協議。采用仿真軟件模擬大小為300m×300m的平面無線傳感器網絡區域,采用隨機方法生成無線傳感器節點。數據包傳輸路徑利用追蹤文件跟蹤。設置無線傳感器網絡中簇頭節點數量占全部節點數量的1/4,惡意節點數量占全部節點數量的1/20。設置仿真過程中,無線傳感器網絡運行時間為800s,每隔3s傳輸一個數據包。 仿真軟件模擬的無線傳感器網絡參數設置結果如表1所示。 表1 參數設置結果 OPNET 14.5仿真軟件搭建無線傳感器網絡后,利用增強LEACH路由協議傳送數據包,選取Matlab軟件編程本文方法,處理實驗數據。 本文方法采用增強LEACH協議劃分網絡中的簇,統計不同簇頭數量時,無線傳感器網絡總能耗變化情況,統計結果如圖3所示。 圖3 不同簇頭數量時總能耗 圖3仿真測試結果可以看出,簇頭數量為6時,網絡總能耗最低。劃分無線傳感器網絡時簇的數量為6時,網絡具有最高的可靠性。設置本文方法采用增強LEACH協議劃分無線傳感器網絡時,劃分簇數量為6。 無線傳感器網絡節點的生命周期是衡量無線傳感器網絡傳輸性能的重要指標。無線傳感器網絡中的死亡節點越多時,其數據傳輸性能越差。統計無線傳感器網絡運行800s時,不同傳輸數據包大小時,網絡中的生存節點數,統計結果如圖4所示。 圖4 生存節點數 圖4仿真測試結果可以看出,本文方法在無線傳感器網絡運行800s后,傳輸不同數據包大小時,仍存在少量的存活節點。本文方法采用增強LEACH協議,通過簇間多跳路由實現簇的劃分,可避免節點過早死亡問題。伴隨節點傳輸數據量的增加,生存節點數有所下降。數據傳輸量對節點的生存周期存在較大影響。本文方法在傳輸數據包大小為3000B時,仍具有生存節點,驗證本文方法采用增強LEACH協議具有較高的劃分簇的能力,可提升網絡中節點的生存周期。 不同調節參數時,采用本文方法檢測惡意節點誤報率結果如圖5所示。 圖5 不同調節參數時檢測誤報率 圖5仿真測試結果可以看出,調節參數為0.7時,采用本文方法檢測無線傳感器網絡中惡意節點誤報率低于0.4%。說明調節參數為0.7時,采用本文方法所獲取的節點信譽值最精準,可獲取最佳的惡意節點檢測精度。采用本文方法檢測無線傳感器網絡惡意節點時,設置調節參數為0.7。 統計采用本文方法檢測無線傳感器網絡惡意節點,分別采用直接信譽值、間接信譽值以及綜合信譽值時,惡意節點的檢測精度,統計結果如圖6所示。 圖6 惡意節點檢測精度 圖6仿真測試結果可以看出,采用綜合信譽值檢測無線傳感器網絡惡意節點時,惡意節點檢測精度高于98%;采用直接信譽值檢測無線傳感器網絡惡意節點時,惡意節點檢測精度高于95%;采用間接信譽值檢測無線傳感器網絡惡意節點時,惡意節點檢測精度處于93%-95%之間。綜合分析圖6仿真測試結果,采用綜合信譽值檢測無線傳感器網絡惡意節點時,可獲取較高的檢測精度;采用直接信譽值檢測惡意節點的檢測精度高于采用間接信譽值檢測惡意節點的檢測精度。本文方法采用綜合信譽值實現惡意節點檢測,可獲取較高的檢測精度。 采用本文方法檢測無線傳感器網絡中的惡意節點,檢測輪數分別為10次、20次以及30次時,本文方法的惡意節點檢測結果如圖7所示。 圖7 不同檢測輪數時檢測結果 圖7仿真測試結果可以看出,檢測輪數為20次與檢測輪數為30次時,本文方法惡意節點檢測結果相同,說明本文方法可在20次內完成檢測迭代,獲取最終的惡意節點檢測結果。檢測輪數低于20次時,伴隨檢測輪數的增加,本文方法檢測惡意節點的檢測準確率有所提升,直至檢測輪數到達20次時,本文方法檢測惡意節點結果趨于穩定。伴隨檢測輪數的增加,無線傳感器網絡中的匯聚節點可接收大量的節點綜合信譽值,所獲取節點綜合信譽值更加精準,有助于本文方法精準判定惡意節點,提升了惡意節點檢測效率。 利用增強LEACH協議實現無線傳感器網絡惡意節點的有效檢測。增強LEACH協議可有效劃分無線傳感器網絡中的簇,為惡意節點精準檢測提供有效依據。仿真測試結果驗證,所研究方法具有較高的惡意節點檢測有效性,惡意節點檢測誤報率較低。利用增強LEACH協議劃分無線傳感器網絡中的簇,令網絡具有更高可靠性。3 仿真測試






4 結論