一種地理位置信息輔助的安全路由選擇方法
【技術(shù)領(lǐng)域】
[OOOU 本發(fā)明屬于網(wǎng)絡(luò)安全領(lǐng)域,特別設(shè)及一種Ad化C網(wǎng)絡(luò)中基于信任的地理位置信息 輔助的安全路由選擇方法。
【背景技術(shù)】
[0002] 近年來(lái),Ad化C網(wǎng)絡(luò)的安全路由協(xié)議研究取得了重大的進(jìn)展,大部分安全路由協(xié) 議主要采用主動(dòng)維護(hù)路由表或按需利用洪泛方式發(fā)現(xiàn)路由,并引入信任機(jī)制有效抵抗內(nèi)部 節(jié)點(diǎn)的惡意攻擊來(lái)實(shí)現(xiàn)安全路由,相比之下,按需路由比主動(dòng)式路由更適合動(dòng)態(tài)拓?fù)洵h(huán)境 下的應(yīng)用。由于Ad化C網(wǎng)絡(luò)信道資源受限和動(dòng)態(tài)拓?fù)鋀及節(jié)點(diǎn)能量不一,使得降低路由發(fā) 現(xiàn)和維護(hù)開(kāi)銷(xiāo)成為重要研究?jī)?nèi)容。因此,一個(gè)安全有效的按需路由選擇方法將直接影響整 個(gè)網(wǎng)絡(luò)的資源優(yōu)化配置。
[0003] 現(xiàn)有的安全按需路由協(xié)議主要采取廣播形式發(fā)送數(shù)據(jù)包,當(dāng)源節(jié)點(diǎn)想要和目的節(jié) 點(diǎn)建立連接時(shí),源節(jié)點(diǎn)首先在其傳輸范圍內(nèi)廣播數(shù)據(jù)包RREQ,然后鄰居節(jié)點(diǎn)判斷其是否是 合格的轉(zhuǎn)發(fā)節(jié)點(diǎn),如果不是則丟棄數(shù)據(jù)包RREQ,如果是則和源節(jié)點(diǎn)建立連接,該過(guò)程一直重 復(fù)直到將數(shù)據(jù)包傳送給目的節(jié)點(diǎn)。顯然,當(dāng)前節(jié)點(diǎn)在選擇下一跳轉(zhuǎn)發(fā)節(jié)點(diǎn)時(shí)勢(shì)必會(huì)選擇位 于當(dāng)前節(jié)點(diǎn)負(fù)向傳輸區(qū)域內(nèi)的節(jié)點(diǎn)作為中間轉(zhuǎn)發(fā)節(jié)點(diǎn),特別是在大型網(wǎng)絡(luò)中,該樣就會(huì)造 成網(wǎng)絡(luò)資源不必要的浪費(fèi)。地理位置信息輔助的路由協(xié)議LA0DV曾被提出W解決該個(gè)問(wèn) 題,但是它只采用了橫向前程值去選擇下一跳節(jié)點(diǎn),而縱向前程值也對(duì)節(jié)點(diǎn)的選擇有影響, 此外,該協(xié)議由于沒(méi)有考察節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)包的能力很容易引發(fā)自私節(jié)點(diǎn)的惡意攻擊。
[0004] 如何選擇一條安全可靠的路徑轉(zhuǎn)發(fā)數(shù)據(jù)包,并能最大限度的減少網(wǎng)絡(luò)資源的消耗 已經(jīng)成為網(wǎng)絡(luò)安全領(lǐng)域中的重要課題。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明的目的是解決現(xiàn)有方法存在路由開(kāi)銷(xiāo)大W及惡意節(jié)點(diǎn)攻擊的問(wèn)題,基于網(wǎng) 絡(luò)的運(yùn)行情況,提供一種地理位置信息輔助的安全路由選擇方法,該方法將信任機(jī)制和節(jié) 點(diǎn)的地理位置信息相結(jié)合,同時(shí)W信任值和前程值為衡量因子,解決了現(xiàn)有方法網(wǎng)絡(luò)資源 消耗量大,內(nèi)部惡意節(jié)點(diǎn)攻擊等弊端,實(shí)現(xiàn)了整個(gè)網(wǎng)絡(luò)資源的合理優(yōu)化配置。
[0006] 本發(fā)明方法的創(chuàng)造性主要表現(xiàn)在;將前程值拓展為二維變量,并和信任值結(jié)合起 來(lái),設(shè)計(jì)新的下一跳路由轉(zhuǎn)發(fā)節(jié)點(diǎn)的選取方法,獲得當(dāng)前通信的最佳路徑,完成數(shù)據(jù)包的傳 輸。
[0007] 本發(fā)明提供的地理位置信息輔助的安全路由選擇方法包含如下步驟:
[000引第一、源節(jié)點(diǎn)S在傳輸范圍內(nèi)廣播路由請(qǐng)求數(shù)據(jù)包RREQ;
[0009] 第二、源節(jié)點(diǎn)S的鄰居節(jié)點(diǎn)X。X2…X。收到路由請(qǐng)求數(shù)據(jù)包RREQ后,判斷是否滿足 RREQ中所攜帶信息的要求,是否在S的正向區(qū)域內(nèi),如果是,則計(jì)算前信任值Cx,如果不是, 則丟棄數(shù)據(jù)包RREQ;
[0010] 第;、源節(jié)點(diǎn)S選出CxG[A,U的節(jié)點(diǎn)X^X2…Xk,k《n作為中間轉(zhuǎn)發(fā)節(jié)點(diǎn),并 將路由請(qǐng)求數(shù)據(jù)包RREQ傳給轉(zhuǎn)發(fā)節(jié)點(diǎn)Xi,X2…Xk,跳數(shù)加1,其中A為選取Cx的最低口限 值,由網(wǎng)絡(luò)具體情況靈活設(shè)定;
[0011] 第四、轉(zhuǎn)發(fā)節(jié)點(diǎn)Xi,X2…Xk收到路由請(qǐng)求數(shù)據(jù)包RREQ后,更新路由請(qǐng)求數(shù)據(jù)包RREQ 中的目的節(jié)點(diǎn)的位置信息,此時(shí),轉(zhuǎn)發(fā)節(jié)點(diǎn)Xi,X2-Xk被視為新一輪路由選擇的源節(jié)點(diǎn),重復(fù) 第一個(gè)步驟直到數(shù)據(jù)包傳送給目的節(jié)點(diǎn)D,同時(shí),監(jiān)測(cè)模塊通過(guò)監(jiān)測(cè)信道獲知節(jié)點(diǎn)的轉(zhuǎn)發(fā)行 為的評(píng)價(jià)值,如果節(jié)點(diǎn)成功轉(zhuǎn)發(fā)了數(shù)據(jù)包,則信任值增加,相反,如果節(jié)點(diǎn)沒(méi)有轉(zhuǎn)發(fā)數(shù)據(jù)包, 那么該節(jié)點(diǎn)很有可能是惡意節(jié)點(diǎn),相應(yīng)信任值降低;
[001引第五、如果目的節(jié)點(diǎn)D收到第一個(gè)路由請(qǐng)求數(shù)據(jù)包RREQ,等待Td時(shí)間W獲取更 多的RREQ,最后從多條路徑中選取路徑總信任值最高的一條路徑作為最終的數(shù)據(jù)包傳輸路 徑,其中,Td根據(jù)AODV路由協(xié)議參數(shù)標(biāo)準(zhǔn)設(shè)定。
[0013] 本發(fā)明第一步路由請(qǐng)求數(shù)據(jù)包RREQ的形式為:
[0014] RREQ也Tf,L。,Hmax,ts),其中,Er表示節(jié)點(diǎn)的初始能量,Tr表示表示節(jié)點(diǎn)的信任口 限,Ld表示目的節(jié)點(diǎn)的位置信息,H表示路徑的最大跳數(shù),t康示路由的建立時(shí)間,源節(jié)點(diǎn) 選擇下一跳轉(zhuǎn)發(fā)節(jié)點(diǎn)時(shí)需判斷其鄰居節(jié)點(diǎn)是否滿足數(shù)據(jù)包RREQ中攜帶信息的要求。
[0015] 本發(fā)明第二步前信任值Cx的計(jì)算方法是:
[0016] ①選定目的節(jié)點(diǎn)所在的方向?yàn)檎较颍鲈垂?jié)點(diǎn)S和目的節(jié)點(diǎn)D的連線1,過(guò)S做 1的垂線1',1'將源節(jié)點(diǎn)S的傳輸范圍分為兩個(gè)區(qū)域,正方向上的區(qū)域就為S的正向區(qū)域, 劃定正向區(qū)域是為了保證數(shù)據(jù)包傳輸是一直向前的,該樣能夠減少網(wǎng)絡(luò)資源的消耗。
[0017] ②位于源節(jié)點(diǎn)S正向區(qū)域內(nèi)的鄰居節(jié)點(diǎn)計(jì)算投影在連線1上的二維前程值;橫向 前程值1濟(jì)縱向前程值1y,即;/jc= ~ '/>. =V馬V- ,其中,X為源節(jié)點(diǎn)S 的一個(gè)鄰居節(jié)點(diǎn),d表示源節(jié)點(diǎn)S和鄰居節(jié)點(diǎn)X之間的距離。
[0018] ⑨位于源節(jié)點(diǎn)S正向區(qū)域內(nèi)的鄰居節(jié)點(diǎn)綜合二維前程值1,和1y得到最終前程值 Lx,Lx=曰Xlx+(1-曰)XCXly,其中,曰是權(quán)重,曰G[0,1],C為常數(shù),最終前程值Lx越 大路由跳數(shù)越少,消耗的網(wǎng)絡(luò)資源越少;
[0019] ④為了預(yù)防內(nèi)部惡意節(jié)點(diǎn)的攻擊,該里引入信任值Tx篩選中間轉(zhuǎn)發(fā)節(jié)點(diǎn),綜合信 任值Tx和二維前程值LX得到最終前信任值CX,Cx=LxXT。其中,信任值Tx的計(jì)算方法為: Tx= 0XRx+(l-e)XQx,0是權(quán)重,0G[(U],Rx表示間接信任值,是X的鄰居節(jié)點(diǎn)對(duì)X 的行為評(píng)價(jià)的整體估計(jì)值,Qy表示直接信任值,是X的上一跳節(jié)點(diǎn)對(duì)X的行為直接觀察評(píng)價(jià) 值。
[0020] 本發(fā)明第五步路徑總信任值的計(jì)算方法是:
[0021] 路徑總信任值是指路徑上所有節(jié)點(diǎn)的信任值的乘積。例如,假設(shè)目的節(jié)點(diǎn)在寸 間內(nèi)建立了一條路徑,該路徑所經(jīng)過(guò)的節(jié)點(diǎn)是S,X,Y,Z,D,那么,該路徑的總信任值Txyzd= TxXTyXTzXT。。
[0022] 本發(fā)明的優(yōu)點(diǎn)與積極效果
[0023] 本發(fā)明公開(kāi)了一種地理位置信息輔助的安全路由選擇方法,該方法將信任機(jī)制和 節(jié)點(diǎn)的地理位置信息相結(jié)合,當(dāng)源節(jié)點(diǎn)需轉(zhuǎn)發(fā)數(shù)據(jù)包時(shí),在其傳輸范圍的正向區(qū)域中選擇 滿足信任值和二維前程值整體較優(yōu)的節(jié)點(diǎn)作為下一跳路由轉(zhuǎn)發(fā)節(jié)點(diǎn),本發(fā)明解決了現(xiàn)有方 法網(wǎng)絡(luò)資源消耗量大,內(nèi)部惡意節(jié)點(diǎn)攻擊等弊端,實(shí)現(xiàn)了整個(gè)網(wǎng)絡(luò)資源的合理優(yōu)化配置。
【附圖說(shuō)明】
[0024] 圖1是本發(fā)明公開(kāi)的一種地理位置信息輔助的安全路由選擇方法流程圖;
[0025] 圖2是本發(fā)明所設(shè)及的節(jié)點(diǎn)正向區(qū)域示意圖;
[0026] 圖3是本發(fā)明所設(shè)及的最大前程不意圖;
[0027] 圖4是本發(fā)明公開(kāi)的一種改進(jìn)的二維前向投影示意圖;
[002引圖5是本發(fā)明所設(shè)及的目的節(jié)點(diǎn)地理位置信息更新示意圖;
[0029] 圖6是本發(fā)明所設(shè)及的最終路徑選擇方法示意圖;
[0030] 圖7為本發(fā)明實(shí)施例中第一跳節(jié)點(diǎn)選擇示意圖。
[0031] 圖8為本發(fā)明實(shí)施例中源節(jié)點(diǎn)到目的節(jié)點(diǎn)路徑選擇示意圖。
[0032] 圖9為本發(fā)明實(shí)施例中節(jié)點(diǎn)廣播的數(shù)據(jù)包數(shù)量歸一化對(duì)比圖;
[0033] 圖10為本發(fā)明實(shí)施例中路徑總跳數(shù)對(duì)比圖。
[0034] 圖11為本發(fā)明實(shí)施例中路徑總信任值對(duì)比圖。
【具體實(shí)施方式】
[0035] W下將參照?qǐng)D1-11對(duì)本發(fā)明的實(shí)施方式進(jìn)行說(shuō)明。
[0036] W Ad化C網(wǎng)絡(luò)中兩個(gè)相離較遠(yuǎn)的節(jié)點(diǎn)之間的通信為例,如圖1所示,在實(shí)際網(wǎng)絡(luò) 通信中,必須解決S個(gè)問(wèn)題;一是源節(jié)點(diǎn)如何選取下一跳轉(zhuǎn)發(fā)節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)包RREQ ;二是 如何更新目的節(jié)點(diǎn)的地理位置信息;=是當(dāng)目的節(jié)點(diǎn)收到多條路徑時(shí),如何選取較好的一 條路徑傳遞信息。
[0037] 針對(duì)問(wèn)題一,源節(jié)點(diǎn)選擇下一跳轉(zhuǎn)發(fā)節(jié)點(diǎn)的方法包括下列步驟:
[003引步驟1、源節(jié)點(diǎn)在其傳輸范圍內(nèi)廣播路由請(qǐng)求數(shù)據(jù)包RREQ,數(shù)據(jù)包RREQ的形式為;RREQ(Ef,Tf,Ld,瓦",t,),其中,Ef表示節(jié)點(diǎn)的初始能量口限值,是根據(jù)整個(gè)網(wǎng)絡(luò)中節(jié)點(diǎn)能量 的平均值設(shè)定的,Tf表示節(jié)點(diǎn)的信任口限值,我們WTt= 0. 5為界限,節(jié)點(diǎn)信任值低于Tt就 認(rèn)為是惡意節(jié)點(diǎn),Ld表示目的節(jié)點(diǎn)的位置信息,定位系統(tǒng)的普遍應(yīng)用使得節(jié)點(diǎn)獲知自己的 地理位置成為可能,表示路徑的最大跳數(shù),的取值是由網(wǎng)絡(luò)區(qū)域大小及節(jié)點(diǎn)的通信 半徑?jīng)Q定的,t,表示路由的建立時(shí)間,它可W根據(jù)網(wǎng)絡(luò)的實(shí)際情況人為確定,也可W參照傳 統(tǒng)AODV路由協(xié)議的參數(shù)進(jìn)行設(shè)定。
[0039] 步驟2、源節(jié)點(diǎn)S的鄰居節(jié)點(diǎn)X。X2…X。收到數(shù)據(jù)包RREQ后,根據(jù)數(shù)據(jù)包中所攜帶 的能量Ef和信任口限值Tt判斷鄰居節(jié)點(diǎn)是否滿足要求,如果滿足要求,則繼續(xù)判斷是否在 S的正向區(qū)域內(nèi),圖2為節(jié)點(diǎn)正向區(qū)域示意圖,即;選定目的節(jié)點(diǎn)所在的方向?yàn)檎较颍鲈?節(jié)點(diǎn)S和目的節(jié)點(diǎn)D的連線,記為1,過(guò)S做1的垂線1',1'將源節(jié)點(diǎn)S的傳輸范圍分為兩 個(gè)區(qū)域,正方向上的區(qū)域就為S的正向區(qū)域,如圖2實(shí)線所示區(qū)域。
[0040] 步驟3、如果鄰居節(jié)點(diǎn)滿足要求且在正向區(qū)域內(nèi),則基于最大前程原理計(jì)算前信任 值Cx,如果不是,則丟棄數(shù)據(jù)包RREQ。
[0041] ①最大前程原理如圖3所示,源節(jié)點(diǎn)S選取在連線1上橫向前程值1,最大的鄰居 節(jié)點(diǎn)作為中間轉(zhuǎn)發(fā)節(jié)點(diǎn),W確保找到的路徑是最短路徑,其中,4 .wy-甜1X 為源節(jié)點(diǎn)S的一個(gè)鄰居節(jié)點(diǎn),d表示源節(jié)點(diǎn)S和鄰居節(jié)點(diǎn)X之間的距離。
[0042] ②本發(fā)明改進(jìn)了最大前程原理,將一維變量改為二維變量,因?yàn)槿绻麅蓚€(gè)節(jié)點(diǎn)橫 向前程值1, 一樣,那么源節(jié)點(diǎn)會(huì)選擇離1更近的節(jié)點(diǎn)作為下一跳轉(zhuǎn)發(fā)節(jié)點(diǎn)。因此,我們引 入縱向前程值ly,如圖4所示,其中,/y=機(jī),綜合二維前程值得到鄰居節(jié)點(diǎn)在1上的 最終前程值Lx,Lx=aXlx+a-a)XCXly,其中,a是權(quán)重,aG[0,l],C為常數(shù),投影 值Lx越大路由跳數(shù)越少,消耗的網(wǎng)絡(luò)資源越少;
[0043] ⑨為了預(yù)防內(nèi)部惡意節(jié)點(diǎn)的攻擊,該里引入信任值Tx篩選中間轉(zhuǎn)發(fā)節(jié)點(diǎn), 綜合該兩個(gè)因素得到前信任值Cx,Cx=LxXTx,其中,信任值Tx的計(jì)算方法為;Tx= 0XRx+(l-e)XQx,0是權(quán)重,0G[(U],Rx表示間接信任值,是X的鄰居節(jié)點(diǎn)對(duì)X的行 為評(píng)價(jià)的整體估計(jì)值,Qy表示直接信任值,是X的上一跳節(jié)點(diǎn)對(duì)X的行為直接觀察評(píng)