專利名稱:一種基于投票機(jī)制的wsn抗攻擊節(jié)點(diǎn)定位方法
技術(shù)領(lǐng)域:
本發(fā)明涉及的是一種基于投票機(jī)制的WSN抗攻擊節(jié)點(diǎn)定位模型與方法。
背景技術(shù):
無線傳感器網(wǎng)絡(luò)作為新一代的傳感器網(wǎng)絡(luò),在醫(yī)療護(hù)理、軍事領(lǐng)域以及環(huán)境的監(jiān)測和保護(hù)方面都有著廣泛的應(yīng)用,給人類的生活和生產(chǎn)的各個領(lǐng)域帶來了深遠(yuǎn)的影響。而所有的應(yīng)用都是通過信息的采集完成的,采集到的數(shù)據(jù)只有在能夠確定感知對象的位置時才有意義。例如在野外災(zāi)難監(jiān)測的應(yīng)用中,救援人員只有在知道災(zāi)難發(fā)生的準(zhǔn)確位置才能實(shí)施他們的工作。而對于某些傳感器網(wǎng)絡(luò)的協(xié)議,位置信息也是必要因素之一,如基于地理位置的路由協(xié)議,就需要通過傳感器節(jié)點(diǎn)的位置來選擇其報文轉(zhuǎn)發(fā)的路由節(jié)點(diǎn)。因此,傳感器節(jié)點(diǎn)的位置確定在大多數(shù)應(yīng)用中起著關(guān)鍵作用。但是,在實(shí)際環(huán)境中WSN易受到多種不同形式的攻擊,這將不同程度的影響定位過程的準(zhǔn)確度,甚至使定位信息完全失去意義。所以定位過程的安全極為重要。
現(xiàn)有的安全定位方法主要分為兩大類消除惡意節(jié)點(diǎn)的安全定位算法和抗攻擊的安全定位算法。消除惡意節(jié)點(diǎn)的安全定位算法是指網(wǎng)絡(luò)中存在破壞定位過程的惡意節(jié)點(diǎn),通過使用各種不同的方法識別出該惡意節(jié)點(diǎn),讓定位過程在相對安全的環(huán)境中進(jìn)行,保證定位結(jié)果的準(zhǔn)確度。這種方法在定位過程中增加了對惡意節(jié)點(diǎn)的識別過程所以增加了網(wǎng)絡(luò)的計算開銷和通信開銷。但在定位精確度和網(wǎng)絡(luò)擴(kuò)展性上有一定的優(yōu)勢。抗攻擊的安全定位算法是指不識別網(wǎng)絡(luò)中的惡意節(jié)點(diǎn),通過抗攻安全機(jī)制的設(shè)計來容忍惡意攻擊對定位過程的破壞。這種方法雖然在定位精度上不及消除惡意節(jié)點(diǎn)的安全定位算法,但在能耗和成本以及定位復(fù)雜度上有一定的優(yōu)勢,適用于低功耗、低成本的無線傳感器網(wǎng)絡(luò)。
本發(fā)明是基于DV-Hop定位機(jī)制來設(shè)計的。DV-Hop定位機(jī)制由3個階段組成。首先使用典型的距離矢量交換協(xié)議,使網(wǎng)絡(luò)中所有節(jié)點(diǎn)獲得距信標(biāo)節(jié)點(diǎn)的跳數(shù)。第二階段,在獲得其他信標(biāo)節(jié)點(diǎn)位置信息和相隔跳距之后,信標(biāo)節(jié)點(diǎn)計算網(wǎng)絡(luò)平均每跳距離,然后將其作為一個校正值廣播至網(wǎng)絡(luò)中。校正值采用可控洪泛法在網(wǎng)絡(luò)中傳播,這意味著一個節(jié)點(diǎn)僅接受獲得的第1個校正值,而丟棄所有后來者,這個策略確保了絕大多數(shù)節(jié)點(diǎn)可從最近的信標(biāo)節(jié)點(diǎn)接收校正值。當(dāng)接收到校正值之后,節(jié)點(diǎn)根據(jù)跳數(shù)計算與信標(biāo)節(jié)點(diǎn)之間的距離。當(dāng)未知節(jié)點(diǎn)獲得與3個或更多信標(biāo)節(jié)點(diǎn)的距離時,則在第3階段利用三邊測量法或最小二乘法計算自身坐標(biāo)。
DV-Hop定位機(jī)制的實(shí)現(xiàn)依賴于信標(biāo)節(jié)點(diǎn)定位信息的傳播,因此易于受到各種攻擊,所以需要設(shè)計相應(yīng)的安全機(jī)制來確保其可靠性。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種抗攻擊性強(qiáng)、定位過程簡單,通信開銷小,無需增加額外硬件設(shè)備的一種基于投票機(jī)制的WSN抗攻擊節(jié)點(diǎn)定位方法。
本發(fā)明解決上述技術(shù)問題所采用的技術(shù)方案為第一階段使用典型的距離矢量交換協(xié)議,使網(wǎng)絡(luò)中所有節(jié)點(diǎn)獲得距信標(biāo)節(jié)點(diǎn)的最小跳數(shù)。第二階段信標(biāo)節(jié)點(diǎn)通過其他信標(biāo)節(jié)點(diǎn)的位置坐標(biāo)以及相隔的最小跳數(shù)來計算網(wǎng)絡(luò)平均每跳距離,并將其作為校正值廣播至網(wǎng)絡(luò)中。第三階段未知節(jié)點(diǎn)對部署區(qū)域進(jìn)行網(wǎng)格劃分,通過投票機(jī)制的建立,將位置參考集劃分成不同的位置參考子集,把這些子集中估算的位置信息映射到網(wǎng)格中,進(jìn)行網(wǎng)格投票。最后統(tǒng)計票數(shù),截取票數(shù)最大的區(qū)域,計算此區(qū)域的幾何中心,結(jié)果作為未知節(jié)點(diǎn)的位置。所述無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位模型框架通過以下步驟實(shí)現(xiàn) 步驟一使用典型的距離矢量交換協(xié)議,使網(wǎng)絡(luò)中所有節(jié)點(diǎn)獲得距信標(biāo)節(jié)點(diǎn)的最小跳數(shù)。
步驟二信標(biāo)節(jié)點(diǎn)通過獲得其他信標(biāo)節(jié)點(diǎn)的位置和相隔跳距來計算網(wǎng)絡(luò)平均每跳距離,并將其作為校正值廣播至網(wǎng)絡(luò)中。
步驟三未知節(jié)點(diǎn)收集信標(biāo)節(jié)點(diǎn)的位置參考信息,建立位置參考集,劃分子集,在子集中利用三邊測量法進(jìn)行位置估算。
步驟四未知節(jié)點(diǎn)對部署區(qū)域進(jìn)行網(wǎng)格劃分。將部署區(qū)域看成一個二維平面,并將其劃分成相同大小的網(wǎng)格,對每個網(wǎng)格進(jìn)行標(biāo)識。
步驟五未知節(jié)點(diǎn)將參考子集中的位置估算以投票的形式映射到網(wǎng)格中,對網(wǎng)格投票的結(jié)果進(jìn)行統(tǒng)計,篩選,將最大票數(shù)區(qū)域的幾何中心作為未知節(jié)點(diǎn)的估算位置。
上述步驟一的具體實(shí)現(xiàn)直接進(jìn)行自身定位計算的安全信標(biāo)數(shù)量至少為3個。信標(biāo)節(jié)點(diǎn)向鄰居節(jié)點(diǎn)廣播包含自身坐標(biāo)信息和跳數(shù)為0的信標(biāo)(數(shù)據(jù)包),鄰居節(jié)點(diǎn)接收到信標(biāo)后,將跳數(shù)加1并繼續(xù)向它的鄰居廣播(除了來源方向),如此通過泛洪的方式向整個網(wǎng)絡(luò)傳播。利用最短路徑算法,網(wǎng)絡(luò)中的所有節(jié)點(diǎn)都能得到各信標(biāo)節(jié)點(diǎn)的坐標(biāo),以及它到各信標(biāo)節(jié)點(diǎn)的最小跳數(shù)。
上述步驟二的具體實(shí)現(xiàn)每個信標(biāo)節(jié)點(diǎn)在獲得其它信標(biāo)節(jié)點(diǎn)位置和相隔跳數(shù)后,利用物理距離除于總跳數(shù)的方法計算網(wǎng)絡(luò)平均每跳距離,然后將其作為一個校正值廣播至網(wǎng)絡(luò)中。當(dāng)一個節(jié)點(diǎn)接收到了第一個校正值后,便丟棄所有后來者,這個策略確保了絕大多數(shù)節(jié)點(diǎn)從最近的信標(biāo)節(jié)點(diǎn)接收校正值,這就意味著該校正值能夠比較真實(shí)地反映出該節(jié)點(diǎn)周圍的平均每跳距離。
上述步驟三的具體實(shí)現(xiàn)未知節(jié)點(diǎn)通過信標(biāo)信號的接受,建立信標(biāo)節(jié)點(diǎn)的位置參考集。位置參考集中的每一個位置參考都是一個三元組,包括信標(biāo)節(jié)點(diǎn)的橫縱坐標(biāo)和信標(biāo)節(jié)點(diǎn)到未知節(jié)點(diǎn)的估計距離。將位置參考集中的每三個位置參考劃分成一個組合,在每個組合中利用三邊測量法可以產(chǎn)生一個近似的未知節(jié)點(diǎn)坐標(biāo)位置。
上述步驟四的具體實(shí)現(xiàn)部署區(qū)域劃分成的網(wǎng)格大小相同,并用網(wǎng)格四個頂點(diǎn)的坐標(biāo)確定網(wǎng)格的位置,同時每個網(wǎng)格都有自己惟一的標(biāo)識,即為網(wǎng)格編號。同時,每個網(wǎng)格內(nèi)設(shè)有投票變量。
上述步驟五的具體實(shí)現(xiàn)首先對該結(jié)果的橫坐標(biāo)x求網(wǎng)格上限值f_x和網(wǎng)格下限值c_x。再對縱坐標(biāo)y求網(wǎng)格上限值f_y和網(wǎng)格下限值c_y。通過以上計算,判斷計算結(jié)果所處網(wǎng)格的位置,然后對網(wǎng)格進(jìn)行投票。
通過對橫縱坐標(biāo)上下限值的計算判斷估算位置所處網(wǎng)格的位置,對網(wǎng)格進(jìn)行投票主要存在以下幾種情況(1)估算位置在網(wǎng)格內(nèi),則對該位置投票。(2)估算位置落在平行于X軸的兩網(wǎng)格交線上,給相交于該交線的兩網(wǎng)格各投一票。(3)估算位置落在平行于Y軸的兩網(wǎng)格交線上,給相交于該交線的兩網(wǎng)格各投一票。(4)估算位置落在網(wǎng)格頂點(diǎn)上,給相交于該頂點(diǎn)的四個網(wǎng)格各投一票。(5)估算位置在部署區(qū)域邊線上分為兩種情況第一種情況是估算位置落在網(wǎng)格的邊線上或部署區(qū)域的頂點(diǎn)上,只對相關(guān)網(wǎng)格投票。第二種情況是估算位置落在兩網(wǎng)格相交的頂點(diǎn)上,給該兩網(wǎng)格各投一票。
本發(fā)明是基于如下問題而設(shè)計的 現(xiàn)有的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位方法都是基于信標(biāo)節(jié)點(diǎn)位置信息正確的假設(shè),如果網(wǎng)絡(luò)受到攻擊,這些定位算法將無法工作,因此需要一種能夠在網(wǎng)絡(luò)受到各種惡意攻擊而使部分信標(biāo)節(jié)點(diǎn)定位信息失效的情況下,仍保證節(jié)點(diǎn)的定位精度,具有較強(qiáng)抗攻擊性的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位模型與方法。
本發(fā)明的優(yōu)點(diǎn)體現(xiàn)在 (1)定位過程具有抗攻擊性 現(xiàn)有的大多數(shù)無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位方法大多都在研究怎樣提高定位精度,但忽略了無線傳感器網(wǎng)絡(luò)是一個易受攻擊的網(wǎng)絡(luò),所以如何在開放、敵對的環(huán)境下安全的定位節(jié)點(diǎn)是一個值得研究的課題。本發(fā)明統(tǒng)計票數(shù)的過程實(shí)際上是排除惡意節(jié)點(diǎn)的過程。惡意節(jié)點(diǎn)分布在網(wǎng)絡(luò)的不同地方,其虛假的位置參考信息參與位置估算并投票時,獲得選票的方格將遠(yuǎn)離未知節(jié)點(diǎn)的真實(shí)位置而稀疏的分布在部署區(qū)域中,選取票數(shù)最大區(qū)域時將其排除,從而減輕了惡意位置信息對定位方法的破壞性,提高了定位精度,使系統(tǒng)更魯棒。
(2)定位過程簡單,通信開銷小,無需額外硬件設(shè)備 為了保證無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位的定位精度,定位系統(tǒng)往往會經(jīng)過復(fù)雜的計算,繁瑣的通信過程,或是增設(shè)額外的硬件設(shè)備,這就增大了定位過程的復(fù)雜度和網(wǎng)絡(luò)開銷。本發(fā)明是基于DV-Hop定位機(jī)制設(shè)計,這種定位機(jī)制的特點(diǎn)就是定位過程簡單,網(wǎng)絡(luò)開銷小,而且不需要額外的硬件設(shè)備,大大的提高了定位方法的實(shí)用性。
圖1節(jié)點(diǎn)抗攻擊定位方法的具體流程圖; 圖2網(wǎng)格劃分示意圖; 圖3三邊測量法圖示; 圖4估算位置落在網(wǎng)格中,網(wǎng)格投票示意圖; 圖5估算位置落在平行于X軸的兩網(wǎng)格交線上,網(wǎng)格投票示意圖; 圖6估算位置落在平行于Y軸的兩網(wǎng)格交線上,網(wǎng)格投票示意圖; 圖7估算位置落在網(wǎng)格頂點(diǎn)上,網(wǎng)格投票示意圖; 圖8估算位置落在部署區(qū)域邊線上,網(wǎng)格投票示意圖(一); 圖9估算位置落在部署區(qū)域邊線上,網(wǎng)格投票示意圖(二); 圖10DV-Hop與VDV-Hop在無攻擊情況下定位精度比較; 圖11DV-Hop與VDV-Hop抗攻擊性比較; 圖12信標(biāo)節(jié)點(diǎn)密度對VDV-Hop定位精度的影響; 圖13網(wǎng)格大小對VDV-Hop定位精度的影響; 圖14通信半徑對VDV-Hop定位精度的影響。
具體實(shí)施例方式 圖1顯示了整個的定位過程,下面結(jié)合附圖以及實(shí)施例對本發(fā)明做更詳細(xì)地描述 1、網(wǎng)絡(luò)模型初始化 在一個區(qū)域中隨機(jī)的部署了兩種節(jié)點(diǎn)信標(biāo)節(jié)點(diǎn)和未知節(jié)點(diǎn)。其中未知節(jié)點(diǎn)是自身位置未知的節(jié)點(diǎn),通過向信標(biāo)節(jié)點(diǎn)的請求定位服務(wù)估計自身的位置;信標(biāo)節(jié)點(diǎn)是網(wǎng)絡(luò)中已部署的靜態(tài)節(jié)點(diǎn),已知自身的位置。網(wǎng)絡(luò)中部分信標(biāo)節(jié)點(diǎn)受到惡意攻擊變成了惡意信標(biāo)節(jié)點(diǎn),其目的是向外發(fā)布虛假的位置參考信息,擾亂與破壞未知節(jié)點(diǎn)的定位過程。
2、獲取最小跳數(shù) 直接進(jìn)行自身定位計算的安全信標(biāo)數(shù)量至少為3個。開始時,信標(biāo)節(jié)點(diǎn)向鄰居節(jié)點(diǎn)廣播包含自身坐標(biāo)信息和跳數(shù)為0的信標(biāo)(數(shù)據(jù)包),鄰居節(jié)點(diǎn)接收到信標(biāo)后,將跳數(shù)加1并繼續(xù)向它的鄰居廣播(除了來源方向),如此通過泛洪的方式向整個網(wǎng)絡(luò)傳播。利用最短路徑算法,網(wǎng)絡(luò)中的所有節(jié)點(diǎn)都能得到各信標(biāo)節(jié)點(diǎn)的坐標(biāo),以及它到各信標(biāo)節(jié)點(diǎn)的最小跳數(shù)。
3、網(wǎng)絡(luò)校正值的產(chǎn)生 在獲得其他信標(biāo)節(jié)點(diǎn)位置和相隔跳距之后,信標(biāo)節(jié)點(diǎn)計算網(wǎng)絡(luò)平均每跳距離,然后將其作為一個校正值廣播至網(wǎng)絡(luò)中。校正值采用可控洪泛法在網(wǎng)絡(luò)中傳播,這意味著一個節(jié)點(diǎn)僅接受獲得的第1個校正值,作為網(wǎng)絡(luò)校正值,而丟棄所有后來者,這個策略確保了絕大多數(shù)節(jié)點(diǎn)可從最近的信標(biāo)節(jié)點(diǎn)接收校正值。在大型網(wǎng)絡(luò)中,可通過為數(shù)據(jù)包設(shè)置一個TTL域來減少通信量。
4、位置參考集的建立及子集劃分 未知節(jié)點(diǎn)利用網(wǎng)絡(luò)校正值和最小跳數(shù)計算出到每個信標(biāo)節(jié)點(diǎn)的估算距離,從而建立位置參考集。位置參考集中的每一個位置參考都是一個三元組(x,y,d),其中x是信標(biāo)節(jié)點(diǎn)的橫坐標(biāo),y是信標(biāo)節(jié)點(diǎn)的縱坐標(biāo),d是信標(biāo)節(jié)點(diǎn)到未知節(jié)點(diǎn)的估算距離。
當(dāng)未知節(jié)點(diǎn)獲得m個信標(biāo)節(jié)點(diǎn)的信標(biāo)信號時,可以構(gòu)成Cm3個組合,每個組合利用三邊測量法可以產(chǎn)生一個近似的未知節(jié)點(diǎn)坐標(biāo)位置。
(1)對于信標(biāo)節(jié)點(diǎn)位置參考集的子集劃分表示方法如下Be_partition={(a1,a2,a3),(a1,a2,a4),...,(a5,a6,a7)}。
(2)對于Be_partition中任何一個組合(ai,aj,ak),采用三邊測量法如公式(1)(2),求出由i、j、k三個信標(biāo)節(jié)點(diǎn)(ai,aj,ak)確定的未知節(jié)點(diǎn)n的坐標(biāo)為(xn,yn)。
三邊測量法如圖2所示,已知I、J、K三個節(jié)點(diǎn)的坐標(biāo)分別為(xi,yi)、(xj,yj)、(xk,yk),以及它們到未知節(jié)點(diǎn)N的距離分別為di,dj,dk,假設(shè)節(jié)點(diǎn)N的坐標(biāo)為(xn,yn)。
那么,存在下列公式 由式(1)可得未知節(jié)點(diǎn)N的坐標(biāo)為 5、部署區(qū)域的網(wǎng)格劃分 如圖3所示,無線傳感器節(jié)點(diǎn)仿真區(qū)域的起點(diǎn)坐標(biāo)為(0,0),把部署區(qū)域劃分成大小相同的網(wǎng)格,網(wǎng)格的邊長為cell-size。每個網(wǎng)格都有自己惟一的網(wǎng)格標(biāo)識,即為網(wǎng)格編號。通過每個網(wǎng)格的四個頂點(diǎn)坐標(biāo)惟一確定自己的位置,并且每個網(wǎng)格內(nèi)都設(shè)有投票變量note_num(i)(第i個網(wǎng)格的選票數(shù))。為了便于網(wǎng)格位置的確定,在計算網(wǎng)格四個頂點(diǎn)的坐標(biāo)時將每個網(wǎng)格看成一個點(diǎn),用(n,m)表示此網(wǎng)格在坐標(biāo)平面中的位置,即第n行m列上的一個網(wǎng)格。
6、網(wǎng)格投票 估算位置映射到網(wǎng)格中的過程如下首先對該結(jié)果的橫坐標(biāo)x求網(wǎng)格上限值f_x和網(wǎng)格下限值c_x。再對縱坐標(biāo)y求網(wǎng)格上限值f_y和網(wǎng)格下限值c_y。通過以上計算,判斷計算結(jié)果所處網(wǎng)格的位置,根據(jù)該位置投票主要存在以下幾種情況 (1)估算位置在網(wǎng)格內(nèi) 當(dāng)估算位置落在某一網(wǎng)格內(nèi)的某一點(diǎn)時,給該網(wǎng)格投票。如圖4所示估算位置A落在網(wǎng)格10中,則將網(wǎng)格10的選票數(shù)加1,即note_num(10)=note_num(10)+1。
(2)估算位置在平行于X軸的兩網(wǎng)格交線上 當(dāng)估算位置落在平行于X軸的兩網(wǎng)格交線上時,給相交于該交線的兩網(wǎng)格各投一票。如圖5所示,估算位置A落在網(wǎng)格10和網(wǎng)格6的交線上,則將網(wǎng)格10和網(wǎng)格6的選票數(shù)各加1,即note_num(10)=note_num(10)+1;note_num(6)=note_num(6)+1。
(3)估算位置落在平行于Y軸的兩網(wǎng)格交線上 當(dāng)估算位置落在平行于Y軸的兩網(wǎng)格交線上時,給相交于該交線的兩網(wǎng)格各投一票。如圖6所示,估算位置A落在網(wǎng)格10和網(wǎng)格11的交線上,則將網(wǎng)格10和11的選票數(shù)各加1,即note_num(10)=note_num(10)+1;note_num(11)=note_num(11)+1。
(4)估算位置落在網(wǎng)格頂點(diǎn)上 當(dāng)估算位置落在網(wǎng)格頂點(diǎn)上時,給相交于該頂點(diǎn)的四個網(wǎng)格各投一票,如圖7所示,估算位置A落在網(wǎng)格6、7、10、11的交點(diǎn)上,則給網(wǎng)格6、7、10、11各投一票,即note_num(10)=note_num(10)+1;note_num(11)=note_num(11)+1;note_num(6)=note_num(6)+1;note_num(7)=note_num(7)+1。
(5)估算位置在部署區(qū)域邊線上 估算位置在部署區(qū)域邊線上分為兩種情況第一種情況是估算位置落在網(wǎng)格的邊線上或部署區(qū)域的頂點(diǎn)上。如圖8所示,估算位置A、B落在部署區(qū)域的邊線上,分別給網(wǎng)格15、5投票,note_num(15)=note_num(15)+1;note_num(5)=note_num(5)+1。估算位置C落在部署區(qū)域的頂點(diǎn)上,給該頂點(diǎn)所在的網(wǎng)格投票,即note_num(4)=note_num(4)+1。第二種情況是估算位置落在兩網(wǎng)格相交的頂點(diǎn)上。如圖9所示估算位置E落在兩網(wǎng)格相交的頂點(diǎn)上,則給網(wǎng)格3、4投票,即note_num(3)=note_num(3)+1;note_num(4)=note_num(4)+1。
7、基于票數(shù)統(tǒng)計的位置估算 統(tǒng)計完票數(shù)之后,計算選票值最大幾何區(qū)域的中心,即為未知節(jié)點(diǎn)的位置。將幾何區(qū)域的頂點(diǎn)表示為R1,R2,...,Ri則位置節(jié)點(diǎn)的坐標(biāo)(Xest,Yest)計算公式 8、實(shí)驗(yàn)及分析 在實(shí)驗(yàn)過程中,80個網(wǎng)絡(luò)節(jié)點(diǎn)隨機(jī)分布在
*
范圍內(nèi),其中信標(biāo)節(jié)點(diǎn)和未知節(jié)點(diǎn)隨機(jī)產(chǎn)生。在實(shí)驗(yàn)中為了便于說明,基于投票機(jī)制的WSN抗攻擊節(jié)點(diǎn)定位模型與方法簡稱為VDV-Hop(Voting DV-Hop)。
為了驗(yàn)證VDV-Hop定位方法的有效性和可用性,對DV-Hop和VDV-Hop進(jìn)行了實(shí)驗(yàn)仿真,并對結(jié)果進(jìn)行分析。實(shí)驗(yàn)中,定位精度的計算公式如公式(4)所示。
其中N是傳感器節(jié)點(diǎn)集,(xi,yi)是傳感器節(jié)點(diǎn)的真實(shí)位置,(xj,yj)是傳感器節(jié)點(diǎn)的估算位置,r是通信半徑。進(jìn)行了如下幾個方面的實(shí)驗(yàn) (1)DV-Hop與VDV-Hop在無攻擊情況下定位精度比較 定位精度是定位技術(shù)首要的評價指標(biāo),一般用誤差值與節(jié)點(diǎn)無線射程的比例表示。如圖10所示,在不受任何攻擊的情況下,VDV-Hop比DV-Hop定位準(zhǔn)確度更高。這是因?yàn)樵贒V-Hop定位機(jī)制中,采用信標(biāo)節(jié)點(diǎn)之間的平均每跳距離作為未知節(jié)點(diǎn)到信標(biāo)節(jié)點(diǎn)的平均每跳跳距,通過每跳跳距與跳數(shù)的乘積來表示未知節(jié)點(diǎn)和信標(biāo)節(jié)點(diǎn)之間的距離。然而在實(shí)際網(wǎng)絡(luò)拓?fù)渲行艠?biāo)節(jié)點(diǎn)到未知節(jié)點(diǎn)往往不是直線路徑,這就給DV-Hop定位機(jī)制帶來了較大的距離誤差。而VDV-Hop定位方法能夠在統(tǒng)計票數(shù),估算未知節(jié)點(diǎn)位置的時候,將誤差過大的非惡意信標(biāo)節(jié)點(diǎn)的投票剔除,這就提高了節(jié)點(diǎn)的定位精度。
(2)抗攻擊性比較 已有的定位方法大多都假設(shè)網(wǎng)絡(luò)工作在一個較理想的環(huán)境里,但在真實(shí)應(yīng)用場合中常會有各種各樣的惡意攻擊存在,那么定位方法必須具有很強(qiáng)的抗攻擊性才能適應(yīng)環(huán)境,減小各種誤差的影響,以提高定位精度。如圖11所示,DV-Hop曲線表示了DV-Hop定位機(jī)制在不受攻擊時的定位精度。而DV-Hop Attack和VDV-Hop Attack曲線分別表示的是存在不同惡意信標(biāo)節(jié)點(diǎn)個數(shù)時,DV-Hop和VDV-Hop定位精度的變化情況。從圖中可以看出VDV-Hop定位方法在受到攻擊時具有更好的定位準(zhǔn)確性,即抗攻擊性好。
(3)信標(biāo)節(jié)點(diǎn)密度對定位精度的影響 信標(biāo)節(jié)點(diǎn)個數(shù)的增加往往會很大程度上提高整個網(wǎng)絡(luò)的價格,所以信標(biāo)節(jié)點(diǎn)密度也是評價定位方法性能的重要指標(biāo)之一。從圖12中可以看,對于VDV-Hop定位方法,信標(biāo)節(jié)點(diǎn)密度的增加,一定程度上能提高定位的精度。但是定位精度對信標(biāo)節(jié)點(diǎn)密度的依賴不大,所以適當(dāng)大小的信標(biāo)節(jié)點(diǎn)密度就可以使系統(tǒng)達(dá)到一個較高的定位精度。
(4)網(wǎng)格大小對定位精度的影響 網(wǎng)格大小作為本方法的一個重要參數(shù),它的設(shè)置直接影響到整個網(wǎng)絡(luò)的計算開銷和定位精度。網(wǎng)格邊長越長,整個部署區(qū)域劃分成的網(wǎng)格數(shù)就越少,這種情況稱之為粗劃分;網(wǎng)格邊長越短,整個部署區(qū)域劃分成的網(wǎng)格數(shù)就越多,這種劃分稱之為細(xì)化分。從圖13中可以看出粗劃分的定位精度比細(xì)劃分的定位精度低,并且細(xì)化分的抗攻擊性更好。但是劃分過細(xì)會給整個網(wǎng)絡(luò)帶來較大的計算開銷,所以選擇適當(dāng)大小的網(wǎng)格邊長是關(guān)鍵。
(5)通信半徑對定位精度的影響 節(jié)點(diǎn)密度通常以網(wǎng)絡(luò)的平均連通度(即平均每個節(jié)點(diǎn)的鄰居數(shù))來表示。相同的網(wǎng)絡(luò)場景下,我們通過改變節(jié)點(diǎn)的通信距離改變網(wǎng)絡(luò)密度,網(wǎng)絡(luò)密度以網(wǎng)絡(luò)的平均連通度表示。圖14顯示了DV-Hop和VDV-Hop在通信半徑不同時,定位精度的比較。從圖中可以看出當(dāng)通信半徑大時,定位精度高;當(dāng)通信半徑小時,定位精度低。這是因?yàn)橥ㄐ虐霃酱?,每個節(jié)點(diǎn)的鄰居節(jié)點(diǎn)就增多,網(wǎng)絡(luò)平均連通度也就高;而通信半徑小,每個節(jié)點(diǎn)的鄰居節(jié)點(diǎn)就減少,網(wǎng)絡(luò)平均連通度也就低。但是在相同網(wǎng)絡(luò)平均連通度的情況下,VDV-Hop比DV-Hop的定位精度更高。
綜上,實(shí)驗(yàn)數(shù)據(jù)進(jìn)一步證明了基于投票機(jī)制的WSN抗攻擊節(jié)點(diǎn)定位模型與方法能夠在網(wǎng)絡(luò)受到各種惡意攻擊而使部分信標(biāo)節(jié)點(diǎn)定位信息失效的情況下,仍保證節(jié)點(diǎn)的定位精度,具有較強(qiáng)的抗攻擊性。同時,該方法對信標(biāo)節(jié)點(diǎn)密度,網(wǎng)絡(luò)連通度以及額外硬件開銷方面沒有過多的要求,這就提高了該方法的實(shí)用性和穩(wěn)定性。
權(quán)利要求
1.一種基于投票機(jī)制的WSN抗攻擊節(jié)點(diǎn)定位方法,其特征包括有如下步驟
步驟一使用典型的距離矢量交換協(xié)議,使網(wǎng)絡(luò)中所有節(jié)點(diǎn)獲得距信標(biāo)節(jié)點(diǎn)的最小跳數(shù);
步驟二信標(biāo)節(jié)點(diǎn)通過獲得其他信標(biāo)節(jié)點(diǎn)的位置和相隔跳距來計算網(wǎng)絡(luò)平均每跳距離,并將其作為校正值廣播至網(wǎng)絡(luò)中;
步驟三未知節(jié)點(diǎn)收集信標(biāo)節(jié)點(diǎn)的位置參考信息,建立位置參考集,劃分子集,在子集中利用三邊測量法進(jìn)行位置估算;
步驟四未知節(jié)點(diǎn)對部署區(qū)域進(jìn)行網(wǎng)格劃分,將部署區(qū)域看成一個二維平面,并將其劃分成相同大小的網(wǎng)格,對每個網(wǎng)格進(jìn)行標(biāo)識;
步驟五未知節(jié)點(diǎn)將參考子集中的位置估算以投票的形式映射到網(wǎng)格中,對網(wǎng)格投票的結(jié)果進(jìn)行統(tǒng)計,篩選,將最大票數(shù)區(qū)域的幾何中心作為未知節(jié)點(diǎn)的估算位置。
2.根據(jù)權(quán)利要求1所述的一種基于投票機(jī)制的WSN抗攻擊節(jié)點(diǎn)定位方法,其特征是所述步驟一中信標(biāo)節(jié)點(diǎn)向鄰居節(jié)點(diǎn)廣播包含自身坐標(biāo)信息和跳數(shù)為0的信標(biāo),鄰居節(jié)點(diǎn)接收到信標(biāo)后,將跳數(shù)加1并繼續(xù)向它的鄰居廣播,如此通過泛洪的方式向整個網(wǎng)絡(luò)傳播,利用最短路徑算法,網(wǎng)絡(luò)中的所有節(jié)點(diǎn)都得到各信標(biāo)節(jié)點(diǎn)的坐標(biāo),以及它到各信標(biāo)節(jié)點(diǎn)的最小跳數(shù)。
3.根據(jù)權(quán)利要求2所述的一種基于投票機(jī)制的WSN抗攻擊節(jié)點(diǎn)定位方法,其特征是所述步驟二中每個信標(biāo)節(jié)點(diǎn)在獲得其它信標(biāo)節(jié)點(diǎn)位置和相隔跳數(shù)后,計算網(wǎng)絡(luò)平均每跳距離,然后將其作為一個校正值廣播至網(wǎng)絡(luò)中;當(dāng)一個節(jié)點(diǎn)接收到了第一個校正值后,便丟棄所有后來者。
4.根據(jù)權(quán)利要求3所述的一種基于投票機(jī)制的WSN抗攻擊節(jié)點(diǎn)定位方法,其特征是所述步驟三中未知節(jié)點(diǎn)利用網(wǎng)絡(luò)校正值和最小跳數(shù)計算出到每個信標(biāo)節(jié)點(diǎn)的估算距離,建立位置參考集,位置參考集中的每一個位置參考都是一個三元組,包括信標(biāo)節(jié)點(diǎn)的橫縱坐標(biāo)和未知節(jié)點(diǎn)到信標(biāo)節(jié)點(diǎn)的估計距離;對位置參考集劃分子集,每個子集中包含三個位置參考,利用三邊測量法在每個子集中進(jìn)行位置估算,產(chǎn)生一個近似的未知節(jié)點(diǎn)坐標(biāo)位置。
5.根據(jù)權(quán)利要求4所述的一種基于投票機(jī)制的WSN抗攻擊節(jié)點(diǎn)定位方法,其特征是所述步驟四中部署區(qū)域劃分成的網(wǎng)格大小相同,并且每個網(wǎng)格都有自己惟一的標(biāo)識,即為網(wǎng)格編號;同時,每個網(wǎng)格內(nèi)設(shè)有投票變量。
6.根據(jù)權(quán)利要求5所述的一種基于投票機(jī)制的WSN抗攻擊節(jié)點(diǎn)定位方法,其特征是所述步驟五中估算位置映射到網(wǎng)格中的過程如下首先對該結(jié)果的橫坐標(biāo)x求網(wǎng)格上限值f_x和網(wǎng)格下限值c_x。再對縱坐標(biāo)y求網(wǎng)格上限值f_y和網(wǎng)格下限值c_y;通過以上計算,判斷計算結(jié)果所處網(wǎng)格的位置,然后對網(wǎng)格進(jìn)行投票;
通過對橫縱坐標(biāo)上下限值的計算判斷估算位置所處網(wǎng)格的位置,對網(wǎng)格進(jìn)行投票主要存在以下幾種情況(1)估算位置在網(wǎng)格內(nèi),則對該位置投票;(2)估算位置落在平行于X軸的兩網(wǎng)格交線上,給相交于該交線的兩網(wǎng)格各投一票;(3)估算位置落在平行于Y軸的兩網(wǎng)格交線上,給相交于該交線的兩網(wǎng)格各投一票;(4)估算位置落在網(wǎng)格頂點(diǎn)上,給相交于該頂點(diǎn)的四個網(wǎng)格各投一票;(5)估算位置在部署區(qū)域邊線上分為兩種情況第一種情況是估算位置落在網(wǎng)格的邊線上或部署區(qū)域的頂點(diǎn)上,只對邊線或頂點(diǎn)所在的網(wǎng)格投票,第二種情況是估算位置落在兩網(wǎng)格相交的頂點(diǎn)上,給相交于該頂點(diǎn)的兩網(wǎng)格各投一票。
7.根據(jù)權(quán)利要求6所述的一種基于投票機(jī)制的WSN抗攻擊節(jié)點(diǎn)定位方法,其特征是所述的步驟五中未知節(jié)點(diǎn)的位置坐標(biāo)是通過對各網(wǎng)格的票數(shù)統(tǒng)計,篩選出票數(shù)最大的區(qū)域,計算該區(qū)域的幾何中心得到的。
全文摘要
本發(fā)明涉及一種基于投票機(jī)制的WSN抗攻擊節(jié)點(diǎn)定位方法。使用典型的距離矢量交換協(xié)議,使網(wǎng)絡(luò)中所有節(jié)點(diǎn)獲得距信標(biāo)節(jié)點(diǎn)的最小跳數(shù);信標(biāo)節(jié)點(diǎn)通過獲得其他信標(biāo)節(jié)點(diǎn)的位置和相隔跳距來計算網(wǎng)絡(luò)平均每跳距離,并將其作為校正值廣播至網(wǎng)絡(luò)中;未知節(jié)點(diǎn)收集信標(biāo)節(jié)點(diǎn)的位置參考信息,建立位置參考集,劃分子集,在子集中利用三邊測量法進(jìn)行位置估算;未知節(jié)點(diǎn)對部署區(qū)域進(jìn)行網(wǎng)格劃分。將部署區(qū)域看成一個二維平面,劃分成相同大小的網(wǎng)格,對每個網(wǎng)格進(jìn)行標(biāo)識;未知節(jié)點(diǎn)將參考子集中的位置估算映射到網(wǎng)格中,計算未知節(jié)點(diǎn)的位置坐標(biāo)。本發(fā)明具有較強(qiáng)的抗攻擊性,有效的解決了DV-Hop定位機(jī)制抗攻擊性弱,定位誤差大,精度低的問題。
文檔編號H04W12/00GK101772013SQ20101010107
公開日2010年7月7日 申請日期2010年1月26日 優(yōu)先權(quán)日2010年1月26日
發(fā)明者楊武, 王巍, 苘大鵬, 左冬梅, 玄世昌 申請人:哈爾濱工程大學(xué)