金 娟 曹奇英* 沈士根 吳小軍
1(東華大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 上海 201620)2(紹興文理學(xué)院計(jì)算機(jī)科學(xué)與工程系 浙江 紹興 312000)3(東華大學(xué)信息科技與技術(shù)學(xué)院 上海 201620)
隨著半導(dǎo)體技術(shù)和通信技術(shù)的迅速發(fā)展,無(wú)線(xiàn)傳感器網(wǎng)絡(luò)WSNs在國(guó)防軍事、環(huán)境監(jiān)測(cè)、智能家居、健康檢測(cè)等方面都發(fā)揮著巨大的作用。由于WSNs中的傳感節(jié)點(diǎn)存儲(chǔ)了大量有價(jià)值的數(shù)據(jù)和信息,其安全性也備受學(xué)術(shù)界和工業(yè)界的關(guān)注[1]。根據(jù)瑞星發(fā)布的《2017年中國(guó)網(wǎng)絡(luò)安全報(bào)告》,瑞星“云安全”系統(tǒng)在去年一共截獲病毒樣本總量5 003萬(wàn)個(gè),病毒感染次數(shù)29.1億次,病毒總體數(shù)量比2016年同期上漲15.62%,其中新增的病毒占總量的一半以上。由此可見(jiàn),惡意程序數(shù)量依舊處于上漲趨勢(shì),惡意程序給WSNs的安全造成了巨大的威脅。
在一般的WSNs安全問(wèn)題研究中,往往假設(shè)網(wǎng)絡(luò)中的節(jié)點(diǎn)是同質(zhì)的,它們擁有相同的抗攻擊能力,因此節(jié)點(diǎn)被惡意程序攻擊成功的可能性只由其與其他節(jié)點(diǎn)通信的概率決定,節(jié)點(diǎn)連接度越大的節(jié)點(diǎn)受惡意程序感染的可能性越大,其被感染的概率越大。但是在實(shí)際的應(yīng)用中,異質(zhì)節(jié)點(diǎn)在WSNs中普遍存在,它們具有不同的節(jié)點(diǎn)度和脆弱性,構(gòu)成了現(xiàn)實(shí)中的異質(zhì)傳感網(wǎng)HWSNs[2](Heterogeneous Wireless Sensor Networks)。
HWSNs節(jié)點(diǎn)可用度表示該節(jié)點(diǎn)在網(wǎng)絡(luò)中能夠正常工作的概率[3],是度量HWSNs節(jié)點(diǎn)性能的重要指標(biāo)之一。在實(shí)際的計(jì)算中,通常用網(wǎng)絡(luò)達(dá)到穩(wěn)定狀態(tài)時(shí)可用狀態(tài)的概率來(lái)表示。對(duì)于HWSNs節(jié)點(diǎn),其達(dá)到穩(wěn)定狀態(tài)時(shí)的可用度與其自身的能量以及所處的環(huán)境等多種因素有關(guān)。要想對(duì)HWSNs網(wǎng)絡(luò)進(jìn)行可用度評(píng)估,首先要對(duì)其組成節(jié)點(diǎn)可用度進(jìn)行分析。因此,如何評(píng)估HWSNs節(jié)點(diǎn)的可用度是度量HWSNs性能的關(guān)鍵問(wèn)題之一。
目前,國(guó)內(nèi)外研究者已經(jīng)提出了一些分析,HWSNs節(jié)點(diǎn)異質(zhì)性和可用度的方法。Dmaso等[4]設(shè)計(jì)了一個(gè)全自動(dòng)的解決方案來(lái)設(shè)計(jì)功耗感知的WSN應(yīng)用和通信協(xié)議,對(duì)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)應(yīng)用和網(wǎng)絡(luò)堆棧的功耗進(jìn)行了精確估計(jì)。沈士根等[5]結(jié)合使用完全信息靜態(tài)博弈、Markov鏈和可靠性理論,給出了一種在惡意程序傳播環(huán)境下簇形傳感網(wǎng)的可生存性評(píng)估方法。Qu等[6]提出了相關(guān)易感-感染-易感(CSIS)模型,給出了無(wú)標(biāo)度網(wǎng)絡(luò)(SF網(wǎng)絡(luò))和隨機(jī)網(wǎng)絡(luò)(ER網(wǎng)絡(luò))下節(jié)點(diǎn)異質(zhì)性對(duì)HWSNs的影響。沈士根等[7]提出了一種可以評(píng)估面向惡意程序傳播的HWSNs穩(wěn)態(tài)可用度的方法,實(shí)現(xiàn)了星型和簇型兩種拓?fù)浣Y(jié)構(gòu)下的HWSNs穩(wěn)態(tài)可用度的評(píng)估。Keshri等[8]將WSNs節(jié)點(diǎn)分成高度節(jié)點(diǎn)和低度節(jié)點(diǎn),提出了一種簡(jiǎn)化無(wú)標(biāo)度網(wǎng)絡(luò)模型。Yang等[9]提出了一種加性非齊次泊松過(guò)程(NHPP)模型來(lái)描述帶子網(wǎng)的WSN故障過(guò)程。趙焱鑫等[10]研究了節(jié)點(diǎn)移動(dòng)速度、移動(dòng)持續(xù)時(shí)間、停留時(shí)間和轉(zhuǎn)動(dòng)角度異質(zhì)性對(duì)MANETs病毒傳播的影響,說(shuō)明了減少網(wǎng)絡(luò)中節(jié)點(diǎn)移動(dòng)異質(zhì)性,可以有效抑制MANETs病毒傳播。Essouifi等[11]將SIS模型擴(kuò)展為SIR-SIS混合模型,并將節(jié)點(diǎn)按節(jié)點(diǎn)度的大小分為兩類(lèi),節(jié)點(diǎn)度大的節(jié)點(diǎn)滿(mǎn)足SIR模型,節(jié)點(diǎn)度小的滿(mǎn)足SIS模型。Yue等[12]借鑒Monte Carlo方法提出了工業(yè)WSNs可靠度評(píng)估模型。Hu等[13]提出了適用于評(píng)估可用度的模糊Markov鏈模型。Shen等[14]建立了一個(gè)惡意程序擴(kuò)散的HWSNs可靠性評(píng)估機(jī)制。王泓剛等[15]提出了節(jié)點(diǎn)不可靠網(wǎng)絡(luò)可靠度的評(píng)估模型,并給出了算法。張曉花等[16]提出了用于可用度評(píng)估的離散概率模型,并提出相應(yīng)的算法。Kabadurmus等[17]提出了一種將網(wǎng)絡(luò)可靠性與網(wǎng)絡(luò)彈性相結(jié)合的新指標(biāo)來(lái)評(píng)估網(wǎng)絡(luò)的可靠性。
本文通過(guò)擴(kuò)展經(jīng)典傳染病模型和Markov鏈,基于節(jié)點(diǎn)異質(zhì)性給出了受惡意程序攻擊的HWSNs節(jié)點(diǎn)狀態(tài)分析方法,并研究了節(jié)點(diǎn)度對(duì)節(jié)點(diǎn)可用度的影響。首先,通過(guò)觀(guān)察實(shí)際網(wǎng)絡(luò)中節(jié)點(diǎn)度與節(jié)點(diǎn)抗攻擊能力的關(guān)系,給出了基于節(jié)點(diǎn)度差異的傳感節(jié)點(diǎn)異質(zhì)模型,并定義了感染率函數(shù)。然后,借鑒經(jīng)典傳染病模型,建立了SIRD狀態(tài)轉(zhuǎn)換模型[18],基于Markov鏈給出了異質(zhì)傳感節(jié)點(diǎn)各狀態(tài)間轉(zhuǎn)換的動(dòng)力學(xué)方程。最后,給出當(dāng)HWSNs達(dá)到動(dòng)態(tài)平衡狀態(tài)時(shí)的異質(zhì)節(jié)點(diǎn)可用度計(jì)算公式。
HWSNs節(jié)點(diǎn)可以分為兩大類(lèi):(1) 隨機(jī)分布在監(jiān)測(cè)區(qū)域內(nèi)部或邊界位置的傳感器節(jié)點(diǎn)(sensor node)。這類(lèi)節(jié)點(diǎn)數(shù)量較多,處理能力、存儲(chǔ)能力和通信能力都沒(méi)有很大的要求,往往由廉價(jià)微型傳感器組成,主要負(fù)責(zé)獲取數(shù)據(jù)和傳遞數(shù)據(jù)。(2) 用于數(shù)據(jù)匯總的網(wǎng)關(guān)節(jié)點(diǎn)(sink node)。這類(lèi)節(jié)點(diǎn)的能力比傳感器節(jié)點(diǎn)要強(qiáng),其對(duì)于整個(gè)HWSNs的影響也更大。傳感器節(jié)點(diǎn)將監(jiān)測(cè)到的數(shù)據(jù)沿著其他傳感器節(jié)點(diǎn)進(jìn)行傳輸,最終匯總到sink節(jié)點(diǎn)。對(duì)于大型HWSNs,由于需要部署的區(qū)域較大,節(jié)點(diǎn)間通信距離有限,通常需要部署多個(gè)傳感子網(wǎng),每個(gè)傳感子網(wǎng)都有自己的sink節(jié)點(diǎn),并由該子網(wǎng)的sink節(jié)點(diǎn)負(fù)責(zé)向上一級(jí)的sink節(jié)點(diǎn)進(jìn)行數(shù)據(jù)傳輸。圖1給出了一種典型的HWSNs結(jié)構(gòu)。
圖1 HWSNs結(jié)構(gòu)
在HWSNs中,節(jié)點(diǎn)度越小的節(jié)點(diǎn),其節(jié)點(diǎn)功能越小,相應(yīng)的安全機(jī)制往往不完善,被惡意程序攻擊成功的概率越大。相反,節(jié)點(diǎn)度越大的節(jié)點(diǎn),用戶(hù)會(huì)為其配置防火墻、訪(fǎng)問(wèn)限制等安全機(jī)制,使其被惡意程序攻擊成功的概率降低。記一個(gè)節(jié)點(diǎn)的度為k,定義其脆弱性函數(shù)為d(k),當(dāng)惡意程序攻擊成功概率越大時(shí),其d(k)值越大。也就是說(shuō),d(k)是一個(gè)單調(diào)遞減的函數(shù),其具體形式由HWSNs環(huán)境、HWSNs結(jié)構(gòu)等決定。
在實(shí)際HWSNs中,節(jié)點(diǎn)脆弱性影響了節(jié)點(diǎn)對(duì)惡意程序攻擊的抵抗力,從而影響其被惡意程序成功感染的概率。因此,可以用節(jié)點(diǎn)脆弱性函數(shù)來(lái)表示一個(gè)異質(zhì)傳感節(jié)點(diǎn)受惡意程序攻擊時(shí)的感染率。對(duì)于一個(gè)節(jié)點(diǎn)度為k的異質(zhì)傳感節(jié)點(diǎn)i,其被惡意程序感染的概率 可以定義為:
ζi(k)=c×d(k)
(1)
式中:c為歸一化常數(shù)。假設(shè)HWSNs中節(jié)點(diǎn)度服從分布Pr(K=k),節(jié)點(diǎn)度為k的概率為P(k),HWSNs中節(jié)點(diǎn)數(shù)為N,對(duì)式(1)兩邊取平均得到:
(2)
(3)
在HWSNs中,惡意程序通過(guò)感染易感節(jié)點(diǎn)獲取其數(shù)據(jù),并進(jìn)行傳播,這種傳播方式與傳染病傳播過(guò)程類(lèi)似。因此,本文借鑒經(jīng)典流行病理論中的SIRD模型來(lái)描述HWSNs惡意程序傳染過(guò)程中節(jié)點(diǎn)的狀態(tài)變化。其中:傳感節(jié)點(diǎn)的狀態(tài)分為易感狀態(tài)(Susceptible)、感染狀態(tài)(Infected)、免疫狀態(tài)(Recovered)、死亡狀態(tài)(Dead)。易感狀態(tài)指的是一個(gè)HWSNs節(jié)點(diǎn)存在安全漏洞但尚未被惡意程序感染,可能被惡意程序感染時(shí)所處的狀態(tài),簡(jiǎn)稱(chēng)狀態(tài)S,處于該狀態(tài)的節(jié)點(diǎn)為易感節(jié)點(diǎn);感染狀態(tài)指的是一個(gè)易感節(jié)點(diǎn)被惡意程序發(fā)現(xiàn)并感染,受惡意程序控制并具有傳染能力時(shí)所處的狀態(tài),簡(jiǎn)稱(chēng)狀態(tài)I,處于該狀態(tài)的節(jié)點(diǎn)為感染節(jié)點(diǎn);免疫狀態(tài)指的是一個(gè)節(jié)點(diǎn)的安全漏洞被發(fā)現(xiàn),或者感染過(guò)惡意程序并被清除之后安裝了安全補(bǔ)丁,因此獲得了免疫力時(shí)所處的狀態(tài),簡(jiǎn)稱(chēng)狀態(tài)R,處于該狀態(tài)的節(jié)點(diǎn)為免疫節(jié)點(diǎn);死亡狀態(tài)指的是一個(gè)節(jié)點(diǎn)因受到惡意程序攻擊或者能量耗盡導(dǎo)致節(jié)點(diǎn)失效時(shí)所處的狀態(tài),簡(jiǎn)稱(chēng)狀態(tài)D,處于該狀態(tài)的節(jié)點(diǎn)為死亡節(jié)點(diǎn)。異質(zhì)傳感節(jié)點(diǎn)狀態(tài)轉(zhuǎn)換模型如圖2所示。
圖2 HWSNs節(jié)點(diǎn)狀態(tài)轉(zhuǎn)換圖
HWSNs中的入侵檢測(cè)系統(tǒng)(IDS)可以對(duì)惡意程序進(jìn)行掃描和為異質(zhì)傳感節(jié)點(diǎn)安裝安全補(bǔ)丁。當(dāng)IDS發(fā)現(xiàn)節(jié)點(diǎn)i存在安全漏洞或節(jié)點(diǎn)i已經(jīng)被惡意程序感染時(shí),IDS可以為其安裝安全補(bǔ)丁,使其從狀態(tài)S或狀態(tài)I轉(zhuǎn)換成狀態(tài)R。假設(shè)IDS的檢測(cè)率和誤報(bào)率分別為μ和ν。一個(gè)異質(zhì)傳感節(jié)點(diǎn)存在能量耗盡或者被其他原因損壞的可能,節(jié)點(diǎn)i會(huì)從狀態(tài)S轉(zhuǎn)換為狀態(tài)D,將這種不是由于惡意程序破壞導(dǎo)致節(jié)點(diǎn)死亡的概率記為σ。
(4)
由圖2可知,當(dāng)節(jié)點(diǎn)i處于狀態(tài)I時(shí),不可能轉(zhuǎn)換成狀態(tài)S,但它可能被惡意程序損害,使其從狀態(tài)I轉(zhuǎn)換成狀態(tài)D,記這種被惡意程序損壞的概率為θ。當(dāng)節(jié)點(diǎn)i被IDS檢測(cè)到,IDS會(huì)為其安裝安全補(bǔ)丁,使其從狀態(tài)I轉(zhuǎn)換成狀態(tài)R。當(dāng)節(jié)點(diǎn)i被惡意程序殺死或者由于物理原因?qū)е鹿?jié)點(diǎn)死亡,節(jié)點(diǎn)i會(huì)從狀態(tài)I轉(zhuǎn)換成狀態(tài)D。因此,一個(gè)在t時(shí)刻處于狀態(tài)S的節(jié)點(diǎn)i的狀態(tài)轉(zhuǎn)換概率可以表示為:
(5)
對(duì)于處于狀態(tài)R的節(jié)點(diǎn)i,當(dāng)惡意程序發(fā)現(xiàn)了新的安全漏洞,則會(huì)使異質(zhì)傳感節(jié)點(diǎn)又有了被攻擊的可能性,使其從狀態(tài)R轉(zhuǎn)換為狀態(tài)S,記這種概率為δ。IDS可能發(fā)生誤報(bào),將處于狀態(tài)R的節(jié)點(diǎn)誤當(dāng)作感染節(jié)點(diǎn),使其從狀態(tài)R轉(zhuǎn)換為狀態(tài)I。同時(shí),節(jié)點(diǎn)i也存在因物理原因?qū)е滤劳龅目赡?。綜上分析可得出,在t時(shí)刻處于狀態(tài)R的節(jié)點(diǎn)i的狀態(tài)轉(zhuǎn)換概率可以表示為:
(6)
為了保障HWSNs的可用性,必須向HWSNs投入新的異質(zhì)傳感節(jié)點(diǎn)。為保持HWSNs中節(jié)點(diǎn)數(shù)量穩(wěn)定,假設(shè)單位時(shí)間內(nèi)用戶(hù)以概率η向HWSNs中加入新的健康節(jié)點(diǎn),并以概率η清除死亡節(jié)點(diǎn),新節(jié)點(diǎn)的初始狀態(tài)為R。因此,一個(gè)在t時(shí)刻處于狀態(tài)D的節(jié)點(diǎn)i的狀態(tài)轉(zhuǎn)換概率可以表示為:
(7)
由圖2可知,在t-1時(shí)刻處于S、R兩種狀態(tài)的節(jié)點(diǎn)可能在t時(shí)刻轉(zhuǎn)換成狀態(tài)S,處于S、I、R三種狀態(tài)的節(jié)點(diǎn)可能在t時(shí)刻轉(zhuǎn)換成狀態(tài)I,處于S、I、R、D四種狀態(tài)的節(jié)點(diǎn)可能在t時(shí)刻轉(zhuǎn)換成狀態(tài)R,處于S、I、R、D四種狀態(tài)的節(jié)點(diǎn)可能在t時(shí)刻轉(zhuǎn)換成狀態(tài)D。因此,節(jié)點(diǎn)i在t時(shí)刻各個(gè)狀態(tài)的概率可以表示為:
(8)
將式(4)-式(7)代入式(8),可以得到節(jié)點(diǎn)i在t時(shí)刻各個(gè)狀態(tài)間轉(zhuǎn)換的動(dòng)力學(xué)方程,化簡(jiǎn)得:
(9)
(10)
(11)
(12)
(13)
記一個(gè)異質(zhì)傳感節(jié)點(diǎn)i在達(dá)到穩(wěn)定狀態(tài)時(shí)處于各狀態(tài)的概率分別為χS(k)、χI(k)、χR(k)、χD(k),可以得到:
χS(k)+χI(k)+χR(k)+χD(k)=1
(14)
(15)
由式(14)和式(15)解方程組可得:
(16)
(17)
由式(14)和式(15)可知,節(jié)點(diǎn)i的穩(wěn)態(tài)可用度與多個(gè)參數(shù)有關(guān),其中節(jié)點(diǎn)度k只與節(jié)點(diǎn)本身有關(guān),μ和ν與IDS有關(guān),其余參數(shù)與節(jié)點(diǎn)所處的HWSNs拓?fù)浣Y(jié)構(gòu)、部署環(huán)境等有關(guān)。
圖3 HWSNs分別屬于ER網(wǎng)絡(luò)和SF網(wǎng)絡(luò)時(shí)節(jié)點(diǎn)度的分布概率
當(dāng)HWSNs屬于無(wú)標(biāo)度網(wǎng)絡(luò)(SF網(wǎng)絡(luò))時(shí),少數(shù)節(jié)點(diǎn)擁有大量連接,節(jié)點(diǎn)度較大,而大量節(jié)點(diǎn)度較小,通常符合zipf定律,其中節(jié)點(diǎn)度k服從冪律分布Pr(K=k)~k-λ,k∈[kmin,kmax],其中kmin是最小度數(shù),kmax是度數(shù)截?cái)?,λ是描述分布寬度的指?shù)且滿(mǎn)足λ>0。在實(shí)際的網(wǎng)絡(luò)中,指數(shù)λ通常在[2,3]的范圍內(nèi),因此假設(shè)指數(shù)λ=2.5,最小度kmin=1,最大度kmax=50,取N=104,
當(dāng)HWSNs屬于小世界網(wǎng)絡(luò)(WS網(wǎng)絡(luò))時(shí),節(jié)點(diǎn)在規(guī)則網(wǎng)絡(luò)的連接基礎(chǔ)上采用重連概率p對(duì)每條邊進(jìn)行重連,從而使得該網(wǎng)絡(luò)保持了規(guī)則網(wǎng)絡(luò)的群居性,又大大降低了規(guī)則網(wǎng)絡(luò)中平均路徑長(zhǎng)度。其中節(jié)點(diǎn)度k的分布與重連概率p有關(guān),當(dāng)p=1時(shí),網(wǎng)絡(luò)中的所有節(jié)點(diǎn)進(jìn)行隨機(jī)連接,即隨機(jī)網(wǎng)絡(luò)。取N=104,
圖4 HWSNs屬于WS小世界網(wǎng)絡(luò)時(shí)節(jié)點(diǎn)度在不同重連概率下的節(jié)點(diǎn)度分布概率
圖5 節(jié)點(diǎn)分布對(duì)節(jié)點(diǎn)感染率的影響
圖6 節(jié)點(diǎn)被成功感染概率
對(duì)于一個(gè)異質(zhì)傳感節(jié)點(diǎn)i,其節(jié)點(diǎn)的度主要在兩個(gè)方面影響其達(dá)到平衡狀態(tài)的可用度:(1) 節(jié)點(diǎn)度的大小決定了節(jié)點(diǎn)脆弱性大小,節(jié)點(diǎn)的度越大,該節(jié)點(diǎn)越強(qiáng)壯,越不容易被惡意程序感染;(2) 節(jié)點(diǎn)度的大小決定了其周?chē)c之通信節(jié)點(diǎn)的數(shù)量,節(jié)點(diǎn)和其可通信的鄰居節(jié)點(diǎn)數(shù)量越大,其接觸感染節(jié)點(diǎn)的概率越大,因此,節(jié)點(diǎn)被惡意程序感染的概率越大,這兩個(gè)方面的影響對(duì)于節(jié)點(diǎn)感染率的作用相反的。因此,第1方面的影響作用大于第2方面時(shí),其節(jié)點(diǎn)可用度與節(jié)點(diǎn)度的大小呈正相關(guān),反之呈負(fù)相關(guān)。圖7給出了4.2節(jié)中提出的四種脆弱性函數(shù)情形下節(jié)點(diǎn)度和節(jié)點(diǎn)可用度的關(guān)系。實(shí)驗(yàn)結(jié)果表明,當(dāng)節(jié)點(diǎn)度較小且節(jié)點(diǎn)脆弱性函數(shù)為冪函數(shù)時(shí),節(jié)點(diǎn)可用度最高;當(dāng)節(jié)點(diǎn)度較大且節(jié)點(diǎn)脆弱性函數(shù)滿(mǎn)足指數(shù)函數(shù)和冪函數(shù)時(shí),節(jié)點(diǎn)可用度較高。因此,構(gòu)建一個(gè)HWSNs網(wǎng)絡(luò)時(shí),根據(jù)節(jié)點(diǎn)的度大小來(lái)實(shí)現(xiàn)節(jié)點(diǎn)保護(hù),使得節(jié)點(diǎn)脆弱性函數(shù)滿(mǎn)足冪函數(shù)時(shí),可以使所有節(jié)點(diǎn)保持較高的可用度,從而使整個(gè)網(wǎng)絡(luò)更加穩(wěn)固。
圖7 HWSNs節(jié)點(diǎn)可用度
本文基于節(jié)點(diǎn)異質(zhì)性和節(jié)點(diǎn)度分布分析了惡意程序攻擊行為對(duì)HWSNs的影響,建立了節(jié)點(diǎn)異質(zhì)模型。借鑒流行病理論和Markov鏈,描述了異質(zhì)傳感節(jié)點(diǎn)各狀態(tài)間的轉(zhuǎn)換關(guān)系,給出了節(jié)點(diǎn)狀態(tài)轉(zhuǎn)換的動(dòng)力學(xué)方程,通過(guò)計(jì)算,得出了節(jié)點(diǎn)可用度的計(jì)算公式。實(shí)驗(yàn)結(jié)果給出了節(jié)點(diǎn)在不同節(jié)點(diǎn)度和不同節(jié)點(diǎn)脆弱性函數(shù)下節(jié)點(diǎn)感染率的分布,并且給出了不同脆弱性函數(shù)下節(jié)點(diǎn)度對(duì)節(jié)點(diǎn)可用度的影響。