周海平,沈士根,馮 晟,黃龍軍,彭 華
(紹興文理學(xué)院計(jì)算機(jī)科學(xué)與工程系,紹興 312000)
無線傳感器網(wǎng)絡(luò)WSNs(Wireless Sensor Networks)是由大量具有無線通信和感知能力的傳感器節(jié)點(diǎn)組成的分布式通信系統(tǒng)。由于WSNs集感知、計(jì)算、通信等功能于一體,且價(jià)格便宜、部署方便,目前已經(jīng)在農(nóng)業(yè)、軍事、工業(yè)制造等眾多領(lǐng)域中得到了應(yīng)用[1-4]。然而,由于WSNs中的傳感器節(jié)點(diǎn)采用無線方式通信,且攜帶的電池能量有限,很容易受到惡意攻擊[5-7],常見的攻擊方式有信道干擾[8]、拒絕式服務(wù)DoS(Denial of Service)攻擊[9]、身份欺騙[10]、惡意程序傳播[11]等多種形式。相比其他攻擊方式,惡意程序傳播是一種影響范圍更大、破壞力更強(qiáng)的攻擊方式,因?yàn)閭鞲衅鞴?jié)點(diǎn)一旦被惡意程序感染,又會(huì)向其他節(jié)點(diǎn)傳播惡意程序,導(dǎo)致整個(gè)網(wǎng)絡(luò)迅速癱瘓[12-14]。
至今為止,人們已經(jīng)對(duì)WSNs的入侵檢測(cè)問題[15-16]和計(jì)算機(jī)網(wǎng)絡(luò)中的病毒傳播問題[17-18]做了大量研究,并取得了豐碩的成果,然而,對(duì)WSNs中惡意程序傳播問題的研究目前仍處于初級(jí)階段。與本文相關(guān)的研究成果包括:王小明等人利用元胞自動(dòng)機(jī)方法對(duì)移動(dòng)無線傳感器網(wǎng)絡(luò)中的惡意數(shù)據(jù)包傳播行為進(jìn)行模擬[19],揭示了不確定環(huán)境下惡意數(shù)據(jù)包傳播的時(shí)空特征。文獻(xiàn)[20]將傳統(tǒng)的傳染病傳播理論應(yīng)用于WSNs中的惡意程序傳播過程,作者將惡意程序和入侵檢測(cè)系統(tǒng)IDS(Intrusion Detection System)當(dāng)做兩種相互對(duì)抗的智能體,建立了二者之間的微分博弈模型,通過對(duì)博弈模型的分析和求解,得到了二者之間的均衡策略,該策略可以在抑制惡意程序的傳播的同時(shí)降低檢測(cè)代價(jià)。曹玉林等人將傳染病模型應(yīng)用于WSNs的病毒傳播研究[21],他們將易感節(jié)點(diǎn)的免疫比例和感染節(jié)點(diǎn)的恢復(fù)比例做為最優(yōu)控制變量,實(shí)現(xiàn)了最小成本開銷下最大程度遏制病毒傳播的目標(biāo)。文獻(xiàn)[22]對(duì)WSNs中的移動(dòng)代理被攻擊時(shí)病毒的傳播行為進(jìn)行了研究,發(fā)現(xiàn)在移動(dòng)代理被攻擊的情況下病毒更容易擴(kuò)散。文獻(xiàn)[23]提出了一個(gè)WSNs的蠕蟲病毒傳播模型,作者研究了通信半徑和節(jié)點(diǎn)分布密度對(duì)病毒傳播效果的影響。
盡管人們已經(jīng)分別對(duì)WSNs中的攻防博弈模型以及惡意程序傳播模型做過大量研究,但是目前這兩方面的工作大多是獨(dú)立開展的,而實(shí)際上,這兩個(gè)領(lǐng)域的研究問題是緊密聯(lián)系的。一方面,攻防雙方所采取的博弈策略會(huì)影響惡意程序的傳播結(jié)果。因?yàn)楫?dāng)惡意節(jié)點(diǎn)對(duì)合法節(jié)點(diǎn)發(fā)起攻擊時(shí),合法節(jié)點(diǎn)通常會(huì)采取一定的防御措施,這會(huì)影響惡意節(jié)點(diǎn)的攻擊成功率,從而影響惡意程序的傳播結(jié)果。另一方面,傳播結(jié)果也會(huì)反過來改變攻防雙方的博弈策略,這是因?yàn)椴┺碾p方會(huì)根據(jù)網(wǎng)絡(luò)中感染節(jié)點(diǎn)的比例來調(diào)整自己的策略。文獻(xiàn)[24]用博弈論的方法分析了攻防雙方的博弈策略,并依據(jù)博弈策略確定惡意程序的傳播概率,從而建立了WSNs的惡意程序傳播模型。然而,該文建立的博弈模型假定攻防雙方都知道對(duì)方的節(jié)點(diǎn)類型,且攻防雙方不會(huì)根據(jù)傳播結(jié)果動(dòng)態(tài)更新自己的策略,這顯然與真實(shí)情況存在差異。實(shí)際情況中,惡意節(jié)點(diǎn)會(huì)偽裝成合法節(jié)點(diǎn),因此攻防雙方不會(huì)知道對(duì)方的節(jié)點(diǎn)類型,此外,在惡意程序的傳播過程中,兩種節(jié)點(diǎn)的比例會(huì)發(fā)生變化,這會(huì)促使攻防雙方及時(shí)調(diào)整自己的策略,因此,需要用微分博弈的理論來描述動(dòng)態(tài)變化的博弈策略?;谝陨戏治?本文從攻防過程出發(fā),建立了基于不完全信息的微分博弈模型,并將其與惡意程序傳播模型耦合起來,從而探討博弈策略對(duì)惡意程序傳播結(jié)果的影響,并進(jìn)一步揭示博弈參數(shù)與傳播結(jié)果之間的關(guān)系,使人們有望通過控制博弈參數(shù)來抑制惡意程序的傳播。
本文的研究框架如下:首先,建立WSNs中惡意節(jié)點(diǎn)與合法節(jié)點(diǎn)之間的攻防博弈模型,并對(duì)博弈策略進(jìn)行分析與求解。其次,基于攻防雙方的博弈策略建立WSNs的惡意程序傳播模型,通過求解傳播模型得到系統(tǒng)的實(shí)時(shí)感染比例與博弈參數(shù)之間的關(guān)系。再次,用數(shù)值模擬方法及元胞自動(dòng)機(jī)模型對(duì)WSNs中的惡意程序傳播過程進(jìn)行模擬及仿真。最后,對(duì)數(shù)值模擬結(jié)果和元胞自動(dòng)機(jī)仿真結(jié)果進(jìn)行分析、比較及討論。
在WSNs中,合法節(jié)點(diǎn)為了防御惡意節(jié)點(diǎn)的攻擊,會(huì)啟動(dòng)入侵檢測(cè)系統(tǒng)IDS(Intrusion Detection System)對(duì)收到的信息進(jìn)行檢測(cè),但檢測(cè)過程需要消耗一定的能量,由于無線傳感器節(jié)點(diǎn)攜帶的電池能量十分有限,若每次收到信息時(shí)都進(jìn)行檢測(cè),則很快會(huì)因能量耗盡而無法工作??紤]到其大多數(shù)情況下收到的都是正常信息,合法節(jié)點(diǎn)只需以一定的概率隨機(jī)抽查一部分信息進(jìn)行檢測(cè)。同時(shí),對(duì)惡意節(jié)點(diǎn)來說,若其頻繁地發(fā)起攻擊,則很容易被合法節(jié)點(diǎn)發(fā)現(xiàn),為了掩飾自己的身份,惡意節(jié)點(diǎn)會(huì)經(jīng)常發(fā)送正常信息(不攻擊)。由此可見,惡意節(jié)點(diǎn)和合法節(jié)點(diǎn)在攻防博弈過程中會(huì)根據(jù)其所處的局勢(shì)采取對(duì)自己最有利的策略。在博弈過程中信息發(fā)送方和信息接收方互不知道對(duì)方的身份,但是知道對(duì)方為合法節(jié)點(diǎn)及惡意節(jié)點(diǎn)的概率,因?yàn)樵诂F(xiàn)實(shí)環(huán)境中,IDS會(huì)將每個(gè)時(shí)刻的檢測(cè)情況上報(bào)給管理中心,然后管理中心會(huì)以廣播的形式實(shí)時(shí)發(fā)布毒情報(bào)告(報(bào)告網(wǎng)絡(luò)的感染節(jié)點(diǎn)比例),基于以上特點(diǎn),本文采用不完全信息博弈模型對(duì)雙方的攻防策略進(jìn)行分析。
定義1WSNs中惡意節(jié)點(diǎn)與合法節(jié)點(diǎn)之間的不完全信息博弈模型可以表示為一個(gè)五元組Ξ=〈N,{Tj},p,{Sj},{uj}〉,其中:
①N為博弈參與者集合,對(duì)于本文來說,博弈在兩個(gè)參與者之間進(jìn)行,其中參與者1為信息發(fā)送者,參與者2為信息接收者,因此,N={信息發(fā)送者,信息接收者}。
②Tj為參與者j所屬的類型空間,在WSNs中,傳感器節(jié)點(diǎn)含有惡意節(jié)點(diǎn)和合法節(jié)點(diǎn)兩種類型,因此,Tj={惡意節(jié)點(diǎn),合法節(jié)點(diǎn)},j∈N。
③p為博弈參與者在類型空間上的概率分布,本文指惡意節(jié)點(diǎn)與合法節(jié)點(diǎn)所占的比例,該參數(shù)對(duì)所有參與者都是公開的。
④Sj為參與者j可采取的行動(dòng)集合,該行動(dòng)集合與參與者類型有關(guān)。本文中,當(dāng)參與者為信息發(fā)送方且為惡意節(jié)點(diǎn)時(shí),有“攻擊”和“不攻擊”兩種行動(dòng),記為S發(fā)送者,惡意節(jié)點(diǎn)={攻擊,不攻擊};當(dāng)參與者為信息接收方且為合法節(jié)點(diǎn)時(shí),有“檢測(cè)”和“不檢測(cè)”兩種行動(dòng),記為S接收者,合法節(jié)點(diǎn)={檢測(cè),不檢測(cè)};當(dāng)參與者為信息發(fā)送方且為合法節(jié)點(diǎn)時(shí),只有“不攻擊”一種行動(dòng),記為S發(fā)送者,合法節(jié)點(diǎn)={不攻擊};當(dāng)參與者為信息接收方且為惡意節(jié)點(diǎn)時(shí),只有“不檢測(cè)”一種行動(dòng),記為S接收者,惡意節(jié)點(diǎn)={不檢測(cè)}。需要特別指出的是,其中的“不攻擊”行動(dòng)不是指節(jié)點(diǎn)不發(fā)送信息,而是指其發(fā)送的是正常信息。
⑤uj為參與者j在博弈過程中獲得的收益,uj的值由所有博弈參與者的類型及策略組合決定。
表1給出了本文用到的一些符號(hào)的定義,表2給出了博弈雙方的收益矩陣。
表1 符號(hào)定義
表2 合法節(jié)點(diǎn)與惡意節(jié)點(diǎn)的博弈收益函數(shù)表
在博弈模型中,信息發(fā)送方和信息接收方都含有惡意節(jié)點(diǎn)和合法節(jié)點(diǎn),不論哪種節(jié)點(diǎn),在發(fā)送信息(惡意程序或正常信息)時(shí)都需要消耗代價(jià)為eM的能量。合法節(jié)點(diǎn)對(duì)收到的信息進(jìn)行檢測(cè)需要消耗代價(jià)為eD的能量,當(dāng)惡意節(jié)點(diǎn)向合法節(jié)點(diǎn)發(fā)起攻擊,合法節(jié)點(diǎn)又正好進(jìn)行檢測(cè)時(shí),合法節(jié)點(diǎn)會(huì)因成功檢測(cè)出惡意程序而獲得價(jià)值為a的收益,惡意節(jié)點(diǎn)則會(huì)因暴露身份而被修復(fù),從而造成代價(jià)為a的損失。當(dāng)惡意節(jié)點(diǎn)發(fā)起攻擊,而合法節(jié)點(diǎn)不進(jìn)行檢測(cè)時(shí),惡意節(jié)點(diǎn)會(huì)因成功傳播惡意程序獲得價(jià)值為b的收益,而合法節(jié)點(diǎn)則會(huì)因感染惡意程序造成代價(jià)為b的損失。另外,為了使博弈有意義,模型須滿足a≥eD及b≥eM這兩個(gè)條件。
另外值得指出的是,信息在WSNs的傳遞過程中可能需要經(jīng)過多跳才能到達(dá)目的節(jié)點(diǎn),但中間節(jié)點(diǎn)并不會(huì)參與博弈過程,因?yàn)橹虚g節(jié)點(diǎn)為了節(jié)約能量一般只參與對(duì)數(shù)據(jù)的轉(zhuǎn)發(fā),而不會(huì)對(duì)轉(zhuǎn)發(fā)的數(shù)據(jù)進(jìn)行檢測(cè),數(shù)據(jù)轉(zhuǎn)發(fā)之后會(huì)立即被中間節(jié)點(diǎn)刪除,因此惡意程序也不會(huì)對(duì)中間節(jié)點(diǎn)造成影響,所以博弈只在信息的發(fā)起節(jié)點(diǎn)和目的節(jié)點(diǎn)之間進(jìn)行。
由表2可知,作為信息發(fā)送方的合法節(jié)點(diǎn)和信息接收方的惡意節(jié)點(diǎn)都只有一種行動(dòng),不需要對(duì)它們的策略進(jìn)行分析,因此本文只需要對(duì)信息發(fā)送方的惡意節(jié)點(diǎn)和信息接收方的合法節(jié)點(diǎn)的策略進(jìn)行分析。合法節(jié)點(diǎn)在對(duì)收到的信息做出行動(dòng)時(shí),既要考慮對(duì)方的節(jié)點(diǎn)類型,也要考慮對(duì)方會(huì)采取哪種策略,若對(duì)方是惡意節(jié)點(diǎn)且發(fā)起攻擊,則合法節(jié)點(diǎn)就應(yīng)該進(jìn)行檢測(cè),反之,就不應(yīng)該檢測(cè);同理,若惡意節(jié)點(diǎn)面對(duì)的是合法節(jié)點(diǎn),當(dāng)對(duì)方開啟檢測(cè),就不應(yīng)該進(jìn)行攻擊,反之,就應(yīng)該發(fā)起攻擊。由此可見,惡意節(jié)點(diǎn)和合法節(jié)點(diǎn)之間的攻防博弈模型不存在純策略納什均衡解,下面從混合均衡策略的角度分析博弈雙方的攻防行為。
定理1WSNs中惡意節(jié)點(diǎn)與合法節(jié)點(diǎn)之間的不完全信息博弈模型存在混合納什均衡策略。
證明假設(shè)WSNs中合法節(jié)點(diǎn)的比例為s,惡意節(jié)點(diǎn)的比例為i,且兩種節(jié)點(diǎn)發(fā)送信息的頻率相同。另外,假設(shè)惡意節(jié)點(diǎn)以概率x進(jìn)行攻擊(傳播惡意程序),以概率1-x不進(jìn)行攻擊(傳播正常信息),合法節(jié)點(diǎn)以概率y進(jìn)行檢測(cè),以概率1-y不進(jìn)行檢測(cè),則根據(jù)收益矩陣,作為防御方的合法節(jié)點(diǎn)的期望收益Eus為:
EuS=ixy(a-eD)+i(1-x)y(-eD)+ix(1-y)(-b)+i(1-x)(1-y)·0+sy(-eD)+s(1-y)·0
(1)
作為攻擊方的惡意節(jié)點(diǎn)的期望收益EuI為:
EuI=sxy(-a-eM)+s(1-x)y(-eM)+sx(1-y)(b-eM)+s(1-x)(1-y)(-eM)+ix(-eM)+i(1-x)(-eM)
(2)
ix(a-eD)+i(1-x)(-eD)-ix(-b)+s(-eD)=0
(3)
將s+i=1代入方程(3),整理得:
(4)
sy(-a-eM)-sy(-eM)+s(1-y)(b-eM)-s(1-y)(-eM)=0
(5)
整理上式得:
(6)
在WSNs中,當(dāng)惡意節(jié)點(diǎn)向合法節(jié)點(diǎn)傳播惡意程序時(shí),若合法節(jié)點(diǎn)不進(jìn)行檢測(cè),則會(huì)被惡意程序感染,感染后的節(jié)點(diǎn)變?yōu)閻阂夤?jié)點(diǎn),并能進(jìn)一步向其他節(jié)點(diǎn)傳播惡意程序。反之,如果合法節(jié)點(diǎn)在遭受攻擊時(shí)開啟檢測(cè),則能阻止惡意程序的入侵并能清除惡意節(jié)點(diǎn)中的惡意程序,從而使惡意節(jié)點(diǎn)恢復(fù)為合法節(jié)點(diǎn)。假設(shè)WSNs中總共有N個(gè)節(jié)點(diǎn),其中惡意節(jié)點(diǎn)個(gè)數(shù)為NI,占總節(jié)點(diǎn)數(shù)的比例為i,合法節(jié)點(diǎn)個(gè)數(shù)為NS,占總節(jié)點(diǎn)數(shù)的比例為s。每個(gè)惡意節(jié)點(diǎn)會(huì)在單位時(shí)間內(nèi)隨機(jī)選擇一個(gè)其他節(jié)點(diǎn)發(fā)送信息,其中發(fā)送惡意程序的概率為x,發(fā)送正常信息的概率為1-x,合法節(jié)點(diǎn)會(huì)以概率y對(duì)收到的信息進(jìn)行檢測(cè)。根據(jù)上一節(jié)的分析,惡意節(jié)點(diǎn)與合法節(jié)點(diǎn)作為理性的智能體,會(huì)采用混合納什均衡策略作為各自的攻防策略,即x=x*,y=y*,因此,單位時(shí)間內(nèi)一個(gè)惡意節(jié)點(diǎn)成功感染一個(gè)合法節(jié)點(diǎn)的概率為x*(1-y*)s,而一個(gè)惡意節(jié)點(diǎn)被修復(fù)為合法節(jié)點(diǎn)的概率為x*y*s。于是單位時(shí)間內(nèi)整個(gè)網(wǎng)絡(luò)新增的惡意節(jié)點(diǎn)數(shù)為x*(1-y*)sNI,新增的合法節(jié)點(diǎn)數(shù)為x*y*sNI。WSNs中兩種節(jié)點(diǎn)隨時(shí)間的演化過程可以用微分方程組(7)表示:
(7)
方程組(7)兩邊同時(shí)除以N得:
(8)
于是有:
(9)
(10)
整理得:
(11)
令t0=0,并假設(shè)初始時(shí)刻的感染比例為i0,對(duì)方程(11)兩邊進(jìn)行積分得:
(12)
即
(13)
整理得:
(14)
由式(14)可知,網(wǎng)絡(luò)中惡意節(jié)點(diǎn)的感染比例與博弈模型中的收益參數(shù)有關(guān),博弈參數(shù)決定了系統(tǒng)隨時(shí)間的演化結(jié)果。
圖1 博弈雙方策略的變化對(duì)合法節(jié)點(diǎn)期望收益的影響
圖2 博弈雙方策略的變化對(duì)惡意節(jié)點(diǎn)期望收益的影響
微分方程組(8)描述了WSNs惡意程序傳播過程中網(wǎng)絡(luò)節(jié)點(diǎn)狀態(tài)隨時(shí)間的演化行為,式(14)給出了該系統(tǒng)的解析解,對(duì)式(14)進(jìn)行數(shù)值模擬,可得到網(wǎng)絡(luò)中感染節(jié)點(diǎn)比例隨時(shí)間的變化趨勢(shì),模擬結(jié)果如圖3至圖5所示,每張圖中的四條曲線分別刻畫了eD取不同值時(shí)系統(tǒng)的演化過程,從中可以看出博弈參數(shù)對(duì)傳播結(jié)果的影響。
圖3顯示,當(dāng)a>b時(shí),隨著時(shí)間的推移,網(wǎng)絡(luò)中的節(jié)點(diǎn)感染比例逐漸達(dá)到1,最終所有節(jié)點(diǎn)都處于感染狀態(tài)。此外,當(dāng)eD增大時(shí)能加速惡意程序的傳播,即合法節(jié)點(diǎn)的檢測(cè)能耗越大,惡意程序的傳播速度越快。解釋如下:①當(dāng)a>b時(shí),x*(1-y*)si>x*y*si,即單位時(shí)間內(nèi)新感染的節(jié)點(diǎn)多于恢復(fù)正常狀態(tài)的節(jié)點(diǎn),因此網(wǎng)絡(luò)中的感染節(jié)點(diǎn)比例會(huì)不斷增加,直至所有節(jié)點(diǎn)都被感染。②當(dāng)檢測(cè)能耗eD增大時(shí),由混合納什均衡策略可知,合法節(jié)點(diǎn)保持檢測(cè)概率不變,而惡意節(jié)點(diǎn)提高了攻擊概率,從而使惡意程序的傳播速度變快。
圖3 a>b時(shí)感染節(jié)點(diǎn)比例演化趨勢(shì)(a=3.0,b=2.0)
圖4顯示,當(dāng)a=b時(shí),網(wǎng)絡(luò)中感染節(jié)點(diǎn)的比例保持初始值不變。解釋:當(dāng)a=b時(shí),x*(1-y*)si=x*y*si,即單位時(shí)間內(nèi)新感染的節(jié)點(diǎn)數(shù)等于恢復(fù)正常狀態(tài)的節(jié)點(diǎn)數(shù),因此網(wǎng)絡(luò)中的感染節(jié)點(diǎn)比例會(huì)保持不變。
圖4 a=b時(shí)感染節(jié)點(diǎn)比例演化趨勢(shì)(a=2.0,b=2.0)
圖5顯示,當(dāng)a1-y*成立,即合法節(jié)點(diǎn)的檢測(cè)概率大于不檢測(cè)概率,此時(shí)惡意節(jié)點(diǎn)攻擊時(shí)被發(fā)現(xiàn)且被修復(fù)的概率大于不被發(fā)現(xiàn)的概率,當(dāng)eD增大時(shí),惡意節(jié)點(diǎn)發(fā)起攻擊的概率增大,因此其修復(fù)速度也變快了。
圖5 a
圖6 惡意節(jié)點(diǎn)的攻擊策略演化趨勢(shì)(eD=0.5)
前面的理論傳播模型基于一個(gè)假設(shè):WSNs中任意兩個(gè)節(jié)點(diǎn)之間可以直接通信。然而,在真實(shí)情況中,傳感器節(jié)點(diǎn)的發(fā)射功率一般與通信距離的平方成正比,為了節(jié)約能量,每個(gè)節(jié)點(diǎn)只能與其附近的節(jié)點(diǎn)進(jìn)行通信。由于理論模型無法處理這種情況,本文接下來用元胞自動(dòng)機(jī)方法對(duì)WSNs中的惡意程序傳播過程進(jìn)行研究,一方面可以對(duì)理論傳播模型的結(jié)論進(jìn)行驗(yàn)證,另一方面可以考查通信半徑及節(jié)點(diǎn)的移動(dòng)行為對(duì)傳播速度的影響。
3.3.1 仿真算法
步驟1生成一個(gè)如圖7所示的規(guī)格為100×100的網(wǎng)格,隨機(jī)選擇比例為pw的格子布設(shè)傳感器節(jié)點(diǎn)。
步驟2每個(gè)傳感器節(jié)點(diǎn)與距離自己半徑不超過r的節(jié)點(diǎn)產(chǎn)生連邊(組網(wǎng)),由此生成傳感器網(wǎng)絡(luò)。
步驟3在初始時(shí)刻t0=0,隨機(jī)選取比例為i0的節(jié)點(diǎn)設(shè)置為惡意節(jié)點(diǎn)。
步驟4每個(gè)惡意節(jié)點(diǎn)在自己的鄰居節(jié)點(diǎn)(可以與其直接通信的節(jié)點(diǎn))中隨機(jī)選擇一個(gè)節(jié)點(diǎn)發(fā)送信息,其中發(fā)送惡意信息的概率為x*,發(fā)送正常信息的概率為1-x*。
步驟5若惡意節(jié)點(diǎn)選中的節(jié)點(diǎn)也是惡意節(jié)點(diǎn),則信息會(huì)被直接丟棄。反之,若惡意節(jié)點(diǎn)選中的是合法節(jié)點(diǎn),則合法節(jié)點(diǎn)會(huì)以概率y*對(duì)收到的信息進(jìn)行檢測(cè),以概率1-y*不對(duì)信息進(jìn)行檢測(cè)。當(dāng)合法節(jié)點(diǎn)接收的是惡意程序信息且正好沒有啟動(dòng)檢測(cè)時(shí)則會(huì)被感染,感染后的節(jié)點(diǎn)就變成惡意節(jié)點(diǎn),并能繼續(xù)向其他節(jié)點(diǎn)傳播惡意程序;當(dāng)惡意節(jié)點(diǎn)向合法節(jié)點(diǎn)發(fā)送惡意程序,而合法節(jié)點(diǎn)又正好對(duì)其進(jìn)行檢測(cè)時(shí),惡意節(jié)點(diǎn)就會(huì)被識(shí)別,被識(shí)別的惡意節(jié)點(diǎn)會(huì)被修復(fù),從而又轉(zhuǎn)化為合法節(jié)點(diǎn)。
步驟6若t小于預(yù)設(shè)的模擬步數(shù),則t的值增加1,并轉(zhuǎn)入步驟4繼續(xù)執(zhí)行,否則,結(jié)束運(yùn)行。
圖7 無線傳感器節(jié)點(diǎn)分布圖(灰色為正常節(jié)點(diǎn), 黑色為惡意節(jié)點(diǎn),pw=0.1,i0=0.05)
3.3.2 仿真結(jié)果
設(shè)定參數(shù)pw=0.1,執(zhí)行上述模擬步驟,考查不同博弈參數(shù)下WSNs惡意程序的傳播過程,模擬結(jié)果如圖8~圖13所示。
圖8~圖10分別對(duì)應(yīng)的是a>b、a=b及ab時(shí),仿真過程惡意程序的擴(kuò)散速度要比理論模型慢;②a
圖8 a>b時(shí)感染節(jié)點(diǎn)比例演化趨勢(shì) (a=3.0,b=2.0,r=5.0)
圖9 a=b時(shí)感染節(jié)點(diǎn)比例演化趨勢(shì) (a=2.0,b=2.0,r=5.0)
圖10 a
圖11 惡意節(jié)點(diǎn)的攻擊策略演化趨勢(shì) (eD=0.5,r=5.0)
由于WSNs中惡意程序的傳播過程與通信半徑有關(guān),因此,我們進(jìn)一步研究了傳感器節(jié)點(diǎn)的通信半徑對(duì)惡意程序傳播速度的影響,在模擬過程中通過修改通信半徑的值,得到了不同通信半徑下惡意程序的傳播曲線,從圖12可以看出,在其他參數(shù)固定的情況下,惡意程序的傳播速度隨著通信半徑的增加而增大。
在某些實(shí)際情況中,有些WSNs中的節(jié)點(diǎn)能夠不斷移動(dòng),這會(huì)導(dǎo)致網(wǎng)絡(luò)結(jié)構(gòu)不斷變化,基于此,我們進(jìn)一步對(duì)節(jié)點(diǎn)移動(dòng)場(chǎng)景下的惡意傳播過程進(jìn)行仿真,仿真時(shí)只需在步驟5結(jié)束之后讓每個(gè)節(jié)點(diǎn)隨機(jī)選擇一個(gè)方向移動(dòng)一格,仿真結(jié)果如圖13所示。從圖中可以看出,節(jié)點(diǎn)移動(dòng)時(shí)惡意程序的傳播速度要高于靜態(tài)網(wǎng)絡(luò)。
圖12 通信半徑對(duì)惡意程序傳播速度的影響 (eD=2.0,a=3.0,b=2.0)
圖13 節(jié)點(diǎn)游動(dòng)對(duì)惡意程序傳播速度的影響 (a=3.0,b=2.0,r=4.0,eD=0.5)
盡管本文的理論模型和元胞自動(dòng)機(jī)仿真所得的研究結(jié)論整體上是一致的,但兩者之間仍然存在一些差異,例如:在a>b時(shí),理論模型中惡意程序的傳播速度要大于元胞自動(dòng)機(jī)仿真的傳播速度,這一點(diǎn)可以分別從圖3與圖8的比較中反映出來。導(dǎo)致這種差異的主要原因如下:①理論模型假設(shè)網(wǎng)絡(luò)中任意兩個(gè)節(jié)點(diǎn)都可以直接通信,而在元胞自動(dòng)機(jī)模型中,每個(gè)節(jié)點(diǎn)只能與距離它不超過r的節(jié)點(diǎn)通信,傳播范圍的限制降低了惡意程序的傳播速度。②在元胞自動(dòng)機(jī)模型中,由于惡意節(jié)點(diǎn)只能攻擊其附近的節(jié)點(diǎn),隨著時(shí)間的推移,就會(huì)導(dǎo)致大量惡意節(jié)點(diǎn)聚集成簇,這種聚集效應(yīng)使得大量惡意節(jié)點(diǎn)無法有效選擇合法節(jié)點(diǎn)進(jìn)行攻擊,從而降低了惡意程序的傳播效率。值得一提的是,當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)能夠隨機(jī)移動(dòng)時(shí)能降低成簇效應(yīng),從而可以提高惡意程序的傳播速度,圖13對(duì)節(jié)點(diǎn)移動(dòng)和靜止時(shí)的傳播速度進(jìn)行了比較,比較結(jié)果證實(shí)這一點(diǎn)。
基于本文的研究結(jié)果,可以制定相關(guān)的措施來減緩和抑制WSNs中惡意程序的傳播,具體措施可以如下:①加大對(duì)合法節(jié)點(diǎn)感染惡意程序的懲罰(增大b的值),使得b>a,促使其積極應(yīng)對(duì)惡意節(jié)點(diǎn)的攻擊,提高檢測(cè)命中率。②當(dāng)無法改變a>b的關(guān)系時(shí),可以通過優(yōu)化入侵檢測(cè)算法來降低合法節(jié)點(diǎn)的檢測(cè)能耗(減小eD的值),從而降低惡意程序的傳播速度。③適當(dāng)減小傳感器節(jié)點(diǎn)的通信半徑,這一方面可以降低惡意程序的傳播速度,另一方面也可以節(jié)約傳感器節(jié)點(diǎn)的能耗,延長(zhǎng)其使用壽命。
本文從博弈論的角度對(duì)WSNs中的惡意程序傳播問題進(jìn)行了研究,得到了以下結(jié)論:①惡意節(jié)點(diǎn)的攻擊策略是一個(gè)動(dòng)態(tài)策略,其值與網(wǎng)絡(luò)中節(jié)點(diǎn)的感染比例有關(guān),會(huì)隨時(shí)間動(dòng)態(tài)變化。②網(wǎng)絡(luò)中惡意程序的最終傳播結(jié)果由博弈參數(shù)決定,通過設(shè)計(jì)合適的博弈機(jī)制可以抑制WSNs中惡意程序的傳播。③惡意程序的傳播速度與通信半徑及節(jié)點(diǎn)的移動(dòng)行為有關(guān),通信半徑的增大及節(jié)點(diǎn)的移動(dòng)都能加快惡意程序的傳播速度。
本文建立的惡意程序傳播模型暫時(shí)只考慮了節(jié)點(diǎn)的兩種狀態(tài),在實(shí)際場(chǎng)景中,節(jié)點(diǎn)可能還會(huì)存在潛伏狀態(tài)、免疫狀態(tài)、死亡狀態(tài)等狀態(tài),甚至不同節(jié)點(diǎn)的攻擊或防御能力會(huì)存在差異,這種含多種狀態(tài)的復(fù)雜異質(zhì)網(wǎng)絡(luò)中的惡意程序傳播問題是我們未來研究的方向。