薛偉, 宋成君
(江南大學(xué)物聯(lián)網(wǎng)工程學(xué)院,江蘇無錫214122)
基于卡爾曼濾波的認(rèn)知無線網(wǎng)絡(luò)路由算法
薛偉, 宋成君
(江南大學(xué)物聯(lián)網(wǎng)工程學(xué)院,江蘇無錫214122)
針對認(rèn)知無線網(wǎng)絡(luò)中頻譜的動(dòng)態(tài)性及節(jié)點(diǎn)移動(dòng)性,提出一種基于卡爾曼濾波的認(rèn)知無線網(wǎng)絡(luò)路由算法,以提高鏈路的穩(wěn)定性。該算法綜合考慮主用戶的頻譜空閑概率與節(jié)點(diǎn)間的距離,兼顧端到端傳輸時(shí)延,對路由尺度進(jìn)行設(shè)計(jì),選擇穩(wěn)定度較高的路徑進(jìn)行通信;在路由維護(hù)階段,通過卡爾曼濾波對節(jié)點(diǎn)移動(dòng)速度進(jìn)行預(yù)測,在鏈路斷裂之前啟動(dòng)路由修復(fù)。最后通過NS2進(jìn)行仿真,結(jié)果表明該算法在鏈路通信的穩(wěn)定性、分組投遞率、吞吐量等方面有明顯的改善,提高了網(wǎng)絡(luò)的整體性能。
認(rèn)知無線網(wǎng)絡(luò);卡爾曼濾波;鏈路穩(wěn)定性;路由尺度;鏈路預(yù)測
在認(rèn)知無線網(wǎng)絡(luò)中,認(rèn)知用戶通過對所處頻譜環(huán)境的感知,當(dāng)主用戶未使用授權(quán)頻段時(shí),認(rèn)知用戶可以在不對授權(quán)用戶造成有害干擾的情況下伺機(jī)使用這些空閑頻段,而當(dāng)主用戶再次出現(xiàn)在該頻段時(shí),認(rèn)知用戶必須無條件退避,避免影響主用戶的通信。由此改變了以往的靜態(tài)頻譜分配策略,實(shí)行動(dòng)態(tài)的頻譜接入方式,有效地解決了無線頻譜資源緊缺的問題。
由于在認(rèn)知無線電網(wǎng)絡(luò)中所使用的頻譜資源是通過檢測的方式獲得的,具有頻譜動(dòng)態(tài)性、頻譜差異性以及頻譜多樣性,而認(rèn)知無線網(wǎng)絡(luò)所具有的這些新的特點(diǎn),使得認(rèn)知無線電環(huán)境下的路由算法和協(xié)議面臨新的問題,需要設(shè)計(jì)能夠反映認(rèn)知無線電網(wǎng)絡(luò)特點(diǎn)及適應(yīng)于在認(rèn)知無線電網(wǎng)絡(luò)中工作的路由算法和協(xié)議?,F(xiàn)階段國內(nèi)外很多學(xué)者都針對認(rèn)知無線網(wǎng)絡(luò)下路由協(xié)議及路由尺度進(jìn)行了研究: Sharma S等[1]以信道未被主用戶占用的概率作為次用戶路由穩(wěn)定性的評價(jià)指標(biāo);Abbagnale[2]提出了一種基于連通性的路由策略,在選擇路徑時(shí)避免選擇效率低不穩(wěn)定的瓶頸鏈路,但并未給出具體的算法;Islam Beltagy等[3]提出一種基于路線親密度的路由選擇指標(biāo),提高端到端吞吐量和減少延遲。黃宓等[4]提出基于容量滿足度和鏈路穩(wěn)定度的認(rèn)知無線電路由度量,從認(rèn)知網(wǎng)絡(luò)的角度衡量鏈路的優(yōu)劣;王尚等[5]綜合考慮頻譜管理與路徑選擇問題,對路由度量進(jìn)行研究并以端到端時(shí)延為指標(biāo)對路由協(xié)議性能進(jìn)行分析;MAO R等[6]提出了在認(rèn)知無線網(wǎng)絡(luò)中使用備用路由以解決次用戶業(yè)務(wù)流因主用戶到達(dá)而產(chǎn)生的中斷,但對于移動(dòng)性較大的網(wǎng)絡(luò)會因?yàn)楣?jié)點(diǎn)位置的變化,使得備用路由不適用。
上述文獻(xiàn)中只考慮頻譜的動(dòng)態(tài)變化,卻忽略了節(jié)點(diǎn)的移動(dòng)性,或假設(shè)節(jié)點(diǎn)是靜止的,同時(shí)也未解決認(rèn)知節(jié)點(diǎn)通信時(shí)的耳聾問題[7],在頻譜動(dòng)態(tài)變化和拓?fù)浣Y(jié)構(gòu)變化的共同作用下,加劇了鏈路的不穩(wěn)定,因此需要考慮節(jié)點(diǎn)的移動(dòng)性對路由的影響。
文中針對認(rèn)知無線網(wǎng)絡(luò)中頻譜的動(dòng)態(tài)性及節(jié)點(diǎn)的移動(dòng)性,沿用AODV協(xié)議基本流程,對路由尺度進(jìn)行設(shè)計(jì),提出了一種基于卡爾曼濾波的認(rèn)知無線網(wǎng)絡(luò)路由算法,并且結(jié)合CRCN Simulator詳細(xì)闡述協(xié)議的實(shí)現(xiàn)過程。
1.1 頻譜的動(dòng)態(tài)性
針對頻譜的動(dòng)態(tài)性,在認(rèn)知無線網(wǎng)絡(luò)中每個(gè)認(rèn)知用戶能夠準(zhǔn)確、動(dòng)態(tài)地感知可用的空閑信道并對空閑信道的空閑概率進(jìn)行預(yù)測,形成頻譜機(jī)會集合(Spectrum Opportunities,SOPs)。
1.2 節(jié)點(diǎn)的移動(dòng)性
針對節(jié)點(diǎn)的移動(dòng)性,采用TwoRayGround無線傳輸模型對相對運(yùn)動(dòng)的節(jié)點(diǎn)間的距離進(jìn)行計(jì)算:
式中:pr,pt分別為節(jié)點(diǎn)的接收功率與發(fā)射功率;hr, ht分別為接收與發(fā)射節(jié)點(diǎn)天線高度;Gr,Gt分別為接收與發(fā)射節(jié)點(diǎn)天線高度;d為節(jié)點(diǎn)間距離;L為路徑損耗;設(shè)網(wǎng)絡(luò)中節(jié)點(diǎn)的pt相同,Gt,Gr,hr,ht,L均為常數(shù)。
為保證數(shù)據(jù)的正確接受,設(shè)置最小接收功率閾值Pthred,通過Pthred及無線傳輸模型可以得到節(jié)點(diǎn)的有效傳輸半徑d0,接收節(jié)點(diǎn)可以通過接收功率計(jì)算與上游節(jié)點(diǎn)間的距離,在路由維護(hù)階段以此對鏈路穩(wěn)定性進(jìn)行預(yù)測。
1.3 節(jié)點(diǎn)配置
由于頻譜動(dòng)態(tài)性、頻譜差異性以及頻譜多樣性,認(rèn)知無線網(wǎng)絡(luò)中節(jié)點(diǎn)間通信所使用的信道可能各不相同,難以通過感知到的授權(quán)信道建立公共控制信道,故使用一根傳統(tǒng)天線專用于公共控制信道,以此進(jìn)行信息交互和協(xié)同;一根全雙工認(rèn)知天線通過調(diào)整工作頻率切換信道進(jìn)行數(shù)據(jù)收發(fā),以解決中間節(jié)點(diǎn)與上、下游節(jié)點(diǎn)通信時(shí)使用不同的信道帶來的耳聾問題,同時(shí)減少信道切換延時(shí)。
CRCN Simulator中節(jié)點(diǎn)構(gòu)件的配置如圖1所示。
圖1 CRCN Simulator中節(jié)點(diǎn)構(gòu)件的配置Fig.1 Configuration of the node com ponent in a CRCN simulator
由于CRCN Simulator中節(jié)點(diǎn)的每個(gè)無線接口配置的信道數(shù)是相同的,而接口0只用于控制信道,所以接口0的channel_(當(dāng)前接口所處信道)始終處于信道0,接口1,2用于數(shù)據(jù)通信。
針對認(rèn)知無線網(wǎng)絡(luò)環(huán)境下頻譜的特性以及節(jié)點(diǎn)的移動(dòng)性,文中從鏈路穩(wěn)定性的角度提出了一種基于卡爾濾波的認(rèn)知無線網(wǎng)絡(luò)路由協(xié)議SAODV(Stability Ad hoc On-Demand Vector routing),沿用并修改AODV協(xié)議基本流程,設(shè)計(jì)適用于認(rèn)知環(huán)境下的路由協(xié)議。
2.1 路由發(fā)現(xiàn)
認(rèn)知無線網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)與路由建立進(jìn)程如圖2所示。
圖2 認(rèn)知無線網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)與路由建立過程Fig.2 CRN topology and routing establish process
當(dāng)源節(jié)點(diǎn)需要與目的節(jié)點(diǎn)通信時(shí),首先檢查路由表中是否有到達(dá)目的節(jié)點(diǎn)的路由,沒有則發(fā)送路由請求RREQ(Routing Request),將本節(jié)點(diǎn)感知的可用頻譜集合SOPs(包含頻譜空閑率)添加到RREQ,然后通過控制信道廣播出去;中間節(jié)點(diǎn)的物理層接收到請求包后,通過TwoRayGround模型計(jì)算與發(fā)送節(jié)點(diǎn)間穩(wěn)定傳輸距離d0-di(di表示第i條鏈路中兩節(jié)點(diǎn)簡的距離,見圖2)并添加到RREQ中,然后檢查本節(jié)點(diǎn)與RREQ中上一節(jié)點(diǎn)是否有頻譜交集,沒有則丟棄;最后更新路由表,建立到源節(jié)點(diǎn)的反向路由,將本節(jié)點(diǎn)的頻譜集合添加到RREQ中并轉(zhuǎn)發(fā)。
2.2 路由應(yīng)答
1)AODV協(xié)議是以最短跳數(shù)為原則選擇路由,而實(shí)際應(yīng)用中是根據(jù)最先到達(dá)的RREQ建立路由,這樣雖然減少了時(shí)延,但在移動(dòng)性較大和頻譜動(dòng)態(tài)變化的認(rèn)知無線網(wǎng)絡(luò)中通信鏈路極容易斷裂,導(dǎo)致分組投遞率、吞吐量下降,增加路由開銷。文中通過修改路由請求的回路檢查,中間節(jié)點(diǎn)可以接受來自同級(相同的轉(zhuǎn)發(fā)次數(shù))以下節(jié)點(diǎn)轉(zhuǎn)發(fā)過來的RREQ,使路由請求以源節(jié)點(diǎn)為中心向外擴(kuò)散的同時(shí)目的節(jié)點(diǎn)可以接受更多來自不同路徑的請求。圖2中,該部分偽代碼描述如下:
2)目的節(jié)點(diǎn)收到第一個(gè)RREQ時(shí)開始定時(shí),只接受定時(shí)范圍內(nèi)的RREQ,然后對通過不同路徑轉(zhuǎn)發(fā)過來RREQ中的信息進(jìn)行分析。針對頻譜的動(dòng)態(tài)性與節(jié)點(diǎn)移動(dòng)性設(shè)計(jì)路由尺度選擇鏈路最穩(wěn)定路徑:
式中:ξi為鏈路i的移動(dòng)性穩(wěn)定度,
其中,Sj為綜合考慮動(dòng)態(tài)性及移動(dòng)性提出的路徑穩(wěn)定性指標(biāo)。然而,該指標(biāo)趨向于選擇跳數(shù)最多的路徑,增加了傳輸時(shí)延。對于移動(dòng)速度高的認(rèn)知無線網(wǎng)絡(luò),較多的跳數(shù)保證了鏈路穩(wěn)定性,對于移動(dòng)速度低的認(rèn)知無線網(wǎng)絡(luò)卻增加了不必要的時(shí)延。故文中通過加權(quán)值綜合考慮鏈路穩(wěn)定性與時(shí)延:
其中:Qj為第j條路徑穩(wěn)定性能指標(biāo);k,K分別為路徑中鏈路數(shù)和跳數(shù);i為路徑中第i個(gè)鏈路;pimax為鏈路i中兩節(jié)點(diǎn)頻譜交集空閑概率最大值;a為加權(quán)值。由上述可知,網(wǎng)絡(luò)中節(jié)點(diǎn)移動(dòng)速度越大,a應(yīng)越大,反之亦然。
根據(jù)路由尺度選擇路徑后,按此前建立的反向路由發(fā)送路由響應(yīng)報(bào)文RREP(Routing Rep ly),報(bào)文中包含中間節(jié)點(diǎn)與上、下游節(jié)點(diǎn)通信信道;中間節(jié)點(diǎn)接收到RREP后,找到對應(yīng)本節(jié)點(diǎn)ID的控制信息(與上、下游節(jié)點(diǎn)通信所使用的授權(quán)信道),并使天線切換到相應(yīng)信道準(zhǔn)備通信;最后更新路由表,建立到目的節(jié)點(diǎn)的前向路由并轉(zhuǎn)發(fā)RREP,當(dāng)源節(jié)點(diǎn)接收到路由應(yīng)答后路由就建立了。該部分偽代碼算法描述如下:
if(rq→rq_dst=index)//RREQ到達(dá)目的節(jié)點(diǎn)
中間節(jié)點(diǎn)接受RREP的處理過程:
2.3 路由維護(hù)
路由建立后,鏈路節(jié)點(diǎn)間的通信可能會因?yàn)橹饔脩舻某霈F(xiàn)和節(jié)點(diǎn)之間的相對移動(dòng)導(dǎo)致信道頻繁切換及鏈路斷裂,嚴(yán)重影響網(wǎng)絡(luò)性能。
針對移動(dòng)性,在路由維護(hù)階段通過對節(jié)點(diǎn)相對距離的測量,預(yù)測節(jié)點(diǎn)移動(dòng)速度,最終對鏈路的穩(wěn)定性進(jìn)行預(yù)測;在超出傳輸范圍之前啟動(dòng)路由修復(fù),因此需要對節(jié)點(diǎn)下一時(shí)刻的狀態(tài)進(jìn)行預(yù)測;同時(shí)由于節(jié)點(diǎn)間的信號干擾造成測量值有誤差,因此,卡爾曼濾波[8]是解決這一問題的有效算法。卡爾曼濾波的離散過程方程和觀測方程如下:
卡爾曼濾波時(shí)間更新方程:
卡爾曼濾波測量更新方程:
其中:wk,vk為均值為零,相互獨(dú)立的過程白噪聲和測量白噪聲;Q,R為相應(yīng)的協(xié)方差矩陣,由于Q,R難以準(zhǔn)確獲得,可根據(jù)網(wǎng)絡(luò)中節(jié)點(diǎn)移動(dòng)的速度進(jìn)行取值??柭鼮V波通過時(shí)間更新方程與測量更新方程,不斷地對目標(biāo)狀態(tài)及協(xié)方差進(jìn)行預(yù)測、修正,不需要存儲大量的觀測數(shù)據(jù),根據(jù)實(shí)時(shí)得到的數(shù)據(jù)進(jìn)行濾波預(yù)測。具體實(shí)現(xiàn)如下:
1)設(shè)置危險(xiǎn)傳輸范圍,當(dāng)節(jié)點(diǎn)在危險(xiǎn)傳輸范圍時(shí),啟動(dòng)穩(wěn)定性預(yù)測(見圖2):
2)將從上游節(jié)點(diǎn)接收到的數(shù)據(jù)進(jìn)行分組,由TowRay傳輸模型,計(jì)算節(jié)點(diǎn)之間距離dk。根據(jù)上一分組接收時(shí)計(jì)算的距離dk-1及接收時(shí)間間隔Δtk,以接收節(jié)點(diǎn)為參考節(jié)點(diǎn),計(jì)算兩節(jié)點(diǎn)的相對運(yùn)動(dòng)速度:
卡爾曼遞推過程初值:
3)節(jié)點(diǎn)在危險(xiǎn)傳輸范圍時(shí)啟動(dòng)卡爾曼預(yù)測,從v2開始,卡爾曼濾波不斷地對進(jìn)行預(yù)測、估計(jì)、修正,提高狀態(tài)估計(jì)精度。
4)需要判斷節(jié)點(diǎn)是否超出傳輸范圍,若
則接收節(jié)點(diǎn)發(fā)送鏈路斷裂消息包到發(fā)送節(jié)點(diǎn),發(fā)送節(jié)點(diǎn)提前啟動(dòng)路由修復(fù);式(9)中ttx_delay為發(fā)送節(jié)點(diǎn)接收到鏈路斷裂消息包后,隊(duì)列中緩存的分組發(fā)送完后的延時(shí),可以根據(jù)具體網(wǎng)絡(luò)負(fù)載大小對時(shí)延進(jìn)行設(shè)置。
針對頻譜動(dòng)態(tài)性,當(dāng)認(rèn)知用戶感知到主用戶出現(xiàn),而認(rèn)知用戶正在使用主用戶的授權(quán)信道,則啟動(dòng)路由修復(fù),對轉(zhuǎn)發(fā)過來的數(shù)據(jù)分組緩存,同時(shí)認(rèn)知節(jié)點(diǎn)發(fā)送包含當(dāng)前可用信道的信道策略報(bào)文與下游節(jié)點(diǎn)溝通協(xié)商選擇空閑信道(見圖1),切換信道以避免對主用戶的干擾。
目前,針對認(rèn)知無線網(wǎng)絡(luò)路由協(xié)議的仿真大多采用Roman模型[9],而Roman模型中信道數(shù)與接口數(shù)是相同的,因此該模型從成本與算法實(shí)際可實(shí)現(xiàn)性考慮是不合適的。文中采用基于NS2[10]平臺CRCN模擬器(支持信道數(shù)與接口數(shù)不同,見圖1)對協(xié)議仿真,仿真環(huán)境參數(shù)見表1。
仿真結(jié)果如圖3~圖6所示。其中AODV協(xié)議支持認(rèn)知無線網(wǎng)絡(luò)環(huán)境下多信道通信。
表1 仿真環(huán)境參數(shù)Tab.1 Simulation parameter
圖3 認(rèn)知無線網(wǎng)絡(luò)環(huán)境下網(wǎng)絡(luò)吞吐量比較Fig.3 Throughput com parison in the CRN environment
圖3反映了吞吐量在鏈路斷裂前后的變化。由于鏈路斷裂之前對鏈路穩(wěn)定性進(jìn)行卡爾曼預(yù)測,提前啟動(dòng)路由修復(fù),建立路由,恢復(fù)通信,提升了網(wǎng)絡(luò)吞吐量。
圖4 吞吐量在不同加權(quán)值下隨速度的變化Fig.4 Throughput under different weight along w ith speed
由圖4可以看出,隨著加權(quán)a的減小,選擇的路徑跳數(shù)較少,導(dǎo)致鏈路相對容易斷裂,使網(wǎng)絡(luò)吞吐量減小。
圖5 平均傳輸時(shí)延在不同加權(quán)值下隨速度的變化Fig.5 Average transm ission delay under different weight along w ith speed
由圖5可以看出,在節(jié)點(diǎn)速度低的網(wǎng)絡(luò)中,加權(quán)a的減小導(dǎo)致選擇的路徑跳數(shù)較少,但減少了傳輸時(shí)延;但隨著節(jié)點(diǎn)移動(dòng)速度的增加,由于較少的跳數(shù)使得鏈路容易斷裂,傳輸時(shí)延反而較大。
圖6 分組投遞率比較Fig.6 Packet delivery ratio com parison
由圖6可以看出,由于SAODV協(xié)議對節(jié)點(diǎn)間鏈路穩(wěn)定性進(jìn)行預(yù)測,使上游節(jié)點(diǎn)對分組進(jìn)行緩存,并建立新的路由,減少了鏈路斷裂后造成的分組丟失;而AODV協(xié)議是基于最短跳數(shù),鏈路容易斷裂,同時(shí)沒有預(yù)測機(jī)制,節(jié)點(diǎn)移動(dòng)速度較大的情況下分組丟失嚴(yán)重。
文中針對認(rèn)知環(huán)境下無線網(wǎng)絡(luò)中的差異性與共同特征,綜合考慮頻譜的動(dòng)態(tài)性與節(jié)點(diǎn)的移動(dòng)性對路由協(xié)議及路由尺度進(jìn)行設(shè)計(jì),對鏈路穩(wěn)定性進(jìn)行預(yù)測,通過實(shí)驗(yàn)結(jié)果顯示,對分組投遞率、網(wǎng)絡(luò)吞吐量等性能有提升。
[1]Sharma S,YIShi,HOU Y T,et al.Joint flow routing and relay node assignment in cooperative multi-hop networks[J].IEEE Journal on Selected Areas in Communications,2012,30(2):254-262.
[2]Abbagnale A,Guomo F.Connectivity-driven routing for cognitive radio ad-hocnetworks[C]//Sensor Mesh and Ad Hoc Communications and Networks(SECON).Boston:IEEE,2010:1-9.
[3]Islam Beltagy,Moustafa Youssef,Magdy Abd.Channel assignment with closeness multipath routing in cognitive networks[J]. Alexandria Engineering Journal,2013,52(4):665-670.
[4]黃宓,韓慶文.基于遺傳算法的認(rèn)知無線電網(wǎng)絡(luò)路由策略研究[D].重慶:重慶大學(xué),2012.
[5]王尚,汪一鳴.認(rèn)知無線電Ad Hoc網(wǎng)絡(luò)路由算法的研究與實(shí)現(xiàn)[D].蘇州:蘇州大學(xué),2013.
[6]MAO R,LIH.Protecting cognitive radio networks against primary users:a backup path approach[C]//Global Telecommunications Conference(GLDBECOM2001).Houston:IEEE,2011:1-6.
[7]MA Huisheng,ZHENG Lili,MA Xiao.Spectrum aware routing for multi-hop cognitive radio networks with a single transceiver [C]//Proceedings of Third Intemational Conerence on Cognitive Radio Oriented Wireless Networks and Communications. Singapore:IEEE,2008.
[8]Kalman R E.A new approach to linear filtering and prediction problem[J].Transaction of the ASME Journal of Basic Engineering,1960,82(4):34-45.
[9]Roman A C.Addingmultiple interfoue support in NS-2[EB/OL].(2007-01-01)[2013-12-15].http://personales.unican.es/ aguerocr/
[10]徐雷鳴,龐博,趙耀.NS與網(wǎng)絡(luò)模擬[M].北京:人民郵電出版社,2003.
(責(zé)任編輯:邢寶妹)
Routing Protocol Based on the Kalm an Filter for Congnitive Radio Networks
XUEWei, SONG Chengjun
(School of Internet of Things Engineering,Jiangnan University,Wuxi214122,China)
A routing algorithm based on the Kalman filter for cognitive radio networks is proposed to solve the problem of dynamic spectrum in cognitive radio networks and nodemobility and to improve the stability of the link.Consider the spectrum idle probability of primary users and the distance between nodes,designs routing metrics select a higher stability path to communicate.In the routing maintenance phase,predict the relative distance of the upstream to the downstream node through the Kalman filter and start the routing repair to repair broken link.NS2-based platform CRCN simulation results show that the algorithm in the stability of the communication link,packet delivery ratio,throughput, etc has obvious improvement on the overall performance of the network.
cognitive radio networks,Kalman filter,link stability,routingmetric,link prediction
Email:xwxhy911@163.com
TP 393
A
1671-7147(2015)03-0253-06
2014-11-05;
2014-12-10。
國家自然科學(xué)基金項(xiàng)目(61374047)。
薛 偉(1963—),男,江蘇海門人,副教授,碩士生導(dǎo)師。主要從事無線網(wǎng)絡(luò)與嵌入式系統(tǒng)應(yīng)用等研究。