顧大剛 黃偉 鄒茜
(貴陽(yáng)學(xué)院 貴州省貴陽(yáng)市 550005)
我們發(fā)現(xiàn)由于近年來(lái)傳感器相關(guān)節(jié)點(diǎn)及網(wǎng)絡(luò)的快速發(fā)展,傳感器采集器的大小與成本已逐年減少,因此可以大量的把感測(cè)節(jié)點(diǎn)布置到所要采集信息的環(huán)境范圍,其放置的密度可以根據(jù)需求來(lái)設(shè)定,數(shù)量甚至可以達(dá)到數(shù)十萬(wàn)都有可能。由于傳感器可以任意的設(shè)置,且都是獨(dú)立的個(gè)體,在這么高密度且分布式的環(huán)境中,如何利用有限的資源在有限的時(shí)間內(nèi)有效率完成,且能管理整個(gè)數(shù)據(jù)采集非常具有挑戰(zhàn)價(jià)值[1]。
近年來(lái)科技的發(fā)展非常迅速,數(shù)據(jù)采集(data gathering)是無(wú)線傳感網(wǎng)絡(luò)中最基本的功能,所有采集裝置將采集到的數(shù)據(jù)經(jīng)過(guò)處理,然后直接傳輸或多步、多層次傳輸至某一個(gè)特定的匯聚節(jié)點(diǎn),等到匯聚節(jié)點(diǎn)收集并融合完所有的數(shù)據(jù)資料后再回傳至服務(wù)器或遠(yuǎn)程用戶。無(wú)線傳感網(wǎng)絡(luò)中最主要的能量消耗就是信息傳輸,如果每個(gè)信息采集器都直接將采集資料傳輸至總節(jié)點(diǎn)將會(huì)產(chǎn)生很大的能量消耗,所以當(dāng)某些傳感節(jié)點(diǎn)能量耗盡無(wú)法運(yùn)作時(shí),整個(gè)網(wǎng)絡(luò)所采集到的資料將不完整也不精確。因此,無(wú)線傳感網(wǎng)絡(luò)在資料收集中,必須控制傳感器能量的消耗[2][3]。
本文團(tuán)隊(duì)已對(duì)現(xiàn)有的無(wú)線傳感網(wǎng)絡(luò)節(jié)能方法及相關(guān)的節(jié)能優(yōu)、缺方式進(jìn)行了前期研究,并對(duì)相關(guān)的節(jié)能方法進(jìn)行了總結(jié)。
第一種方法是前期很多研究學(xué)者采用了集群式(cluster-based)的架構(gòu),也就是在應(yīng)用中,將使用特定的集群管理節(jié)點(diǎn)來(lái)管理整個(gè)無(wú)線傳感網(wǎng)路,其中可以通過(guò)集群管理節(jié)點(diǎn)的位置進(jìn)行區(qū)域劃分,不同的集群可以通過(guò)不同的算法及通道,直接或多步傳輸方式進(jìn)行數(shù)據(jù)的傳輸,然后將相關(guān)數(shù)據(jù)信息傳輸給集群管理節(jié)點(diǎn)[4]。集群管理節(jié)點(diǎn)同樣也可以通過(guò)相關(guān)算法,直接或間接的將指令、數(shù)據(jù)回傳到節(jié)點(diǎn)或遠(yuǎn)程用戶。集群管理方式架構(gòu)簡(jiǎn)單,但是會(huì)導(dǎo)致能量消耗不均衡,造成整體網(wǎng)絡(luò)的生命周期下降。
第二種方法就是采用樹(shù)(tree-based)形架構(gòu),這種架構(gòu)的特點(diǎn)就是將整個(gè)網(wǎng)絡(luò)的傳感節(jié)點(diǎn)采用樹(shù)形結(jié)構(gòu)進(jìn)行連接,并且傳輸信息時(shí)候采集數(shù)據(jù)信息并進(jìn)行傳輸時(shí)候是從樹(shù)形的底部進(jìn)行數(shù)據(jù)采集并依次上傳至根節(jié)點(diǎn)[5]。這種結(jié)構(gòu)有效的降低了系統(tǒng)的整體能耗,能有效延長(zhǎng)網(wǎng)絡(luò)的生命周期,但是由于根節(jié)點(diǎn)運(yùn)行時(shí)間較長(zhǎng),能耗消耗也比一般節(jié)點(diǎn)快,特別是越上層的節(jié)點(diǎn)能耗越多,所以這種結(jié)構(gòu)只在一些特定的場(chǎng)所使用。
第三種方法就是采用鏈路(chain-based)架構(gòu),這個(gè)結(jié)構(gòu)的特點(diǎn)就是將整個(gè)無(wú)線傳感網(wǎng)絡(luò)的傳感采集節(jié)點(diǎn)采用特定的算法鏈接成一條鏈路,這樣使得節(jié)點(diǎn)間的傳輸距離短,整個(gè)網(wǎng)絡(luò)架構(gòu)的能耗消耗比較平均,不過(guò)這樣的架構(gòu)會(huì)導(dǎo)致數(shù)據(jù)采集的時(shí)延較長(zhǎng),采集數(shù)據(jù)的準(zhǔn)確度下降。本研究在此基礎(chǔ)上,設(shè)計(jì)一個(gè)解決網(wǎng)絡(luò)時(shí)延的方法,使得鏈路架構(gòu)采集數(shù)據(jù)準(zhǔn)確性增加[6]。
通過(guò)前期研究表明一個(gè)存在大量傳感網(wǎng)絡(luò)節(jié)點(diǎn)分布的無(wú)線傳感網(wǎng)絡(luò)中,需要設(shè)計(jì)一個(gè)分層式的資料收集的架構(gòu),這能極大的提高信息采集與傳輸?shù)男?,提高網(wǎng)絡(luò)使用的范圍、周期。我們將無(wú)線傳感網(wǎng)絡(luò)的底層設(shè)計(jì)為許多條不等長(zhǎng)的鏈架構(gòu)組成,上層設(shè)計(jì)為各鏈路的管理節(jié)點(diǎn)組成的鏈路,各個(gè)管理節(jié)點(diǎn)能把所采集到的資料通過(guò)上層的鏈架構(gòu)依序進(jìn)行數(shù)據(jù)與資料的傳輸;設(shè)計(jì)無(wú)線傳感網(wǎng)絡(luò)的底層鏈路由不等長(zhǎng)的鏈路組成,由于不等長(zhǎng)的鏈路所以會(huì)發(fā)生無(wú)線傳感網(wǎng)絡(luò)在傳輸過(guò)程中的信息傳輸時(shí)間的不同,由此會(huì)有先后的進(jìn)行數(shù)據(jù)傳輸,由于在傳感鏈路中存在傳感管理節(jié)點(diǎn),有它對(duì)采集鏈路的數(shù)據(jù)信息進(jìn)行管理,并對(duì)采集數(shù)據(jù)的傳輸時(shí)間、傳輸大小進(jìn)行管理,可以有效管理無(wú)線傳感網(wǎng)絡(luò)的有效生命周期,所以這樣可以使得我們?cè)O(shè)計(jì)的鏈路結(jié)構(gòu)的整體傳輸時(shí)間的穩(wěn)定性[7]。
在很多的無(wú)線傳感網(wǎng)絡(luò)環(huán)境中,封包傳輸?shù)难舆t時(shí)間與能耗是一項(xiàng)非常重要的考慮指標(biāo)。通常為了要減少傳輸延遲時(shí)間,往往需要消耗較多的能量,所以需要進(jìn)行無(wú)線傳感網(wǎng)絡(luò)的能量均衡研究。因此,在能量損耗與傳輸延遲時(shí)間之間取得平衡便非常重要,我們亦針對(duì)Energy×Delay 作效能比較。研究的傳輸能耗,需要我們對(duì)提出的資料收集機(jī)制,在均衡節(jié)點(diǎn)方面,進(jìn)行一系列的效能模擬。
比如在仿真過(guò)程中進(jìn)行相關(guān)定義:
(1)網(wǎng)路延遲(Delay):每一個(gè)傳感網(wǎng)絡(luò)節(jié)點(diǎn),接收和傳輸?shù)却龝r(shí)間區(qū)段定義為一個(gè)網(wǎng)絡(luò)延遲單位時(shí)間,一個(gè)回合內(nèi)需要多少網(wǎng)絡(luò)延遲單位時(shí)間內(nèi)能把所有資料回傳至總結(jié)點(diǎn),無(wú)線傳感網(wǎng)絡(luò)延遲時(shí)間越少,代表感測(cè)網(wǎng)路系統(tǒng)所能運(yùn)作的效率越高。
(2)每回合總能量消耗(Energy consumption per round):其代表完成一個(gè)回合的數(shù)據(jù)采集過(guò)程,每個(gè)傳感采集信息節(jié)點(diǎn)所消耗的能量進(jìn)行相加。因此,一個(gè)有效的資料收集方法,其每回合總能量消耗會(huì)減小。
(3)Energy × Delay:其Energy 表示每回合系統(tǒng)的總能量消耗(如上),和Delay(如上)。
如圖1所示,我們以距離主節(jié)點(diǎn)最接近的節(jié)點(diǎn)作為建立整個(gè)鏈架構(gòu)的起始點(diǎn),因?yàn)槲覀兊姆椒ㄊ菍㈡溂軜?gòu)再分成多條子鏈路,透過(guò)距距離主節(jié)點(diǎn)最近的子鏈路,其子鏈路上的節(jié)點(diǎn)輪流把數(shù)據(jù)回傳至主節(jié)點(diǎn)。所以我們以距離主節(jié)點(diǎn)最近的節(jié)點(diǎn)開(kāi)始設(shè)計(jì)整條鏈路,讓鏈架構(gòu)的第一條子鏈路能較靠近住節(jié)點(diǎn)。在此我們利用greedy 的方式建立鏈架構(gòu),由距離主節(jié)點(diǎn)最近的節(jié)點(diǎn)尋找目前不在鏈架構(gòu)上且與其距離最短的節(jié)點(diǎn)加入鏈架構(gòu),而新加入的節(jié)點(diǎn)也依此方式尋找下一節(jié)點(diǎn)加入。
假設(shè)i 為目前節(jié)點(diǎn),j 為距離i 距離最近且不在鏈架構(gòu)的節(jié)點(diǎn),y 為距離 j 最接近且已在鏈架構(gòu)中的節(jié)點(diǎn),x 為y 的上一節(jié)點(diǎn),z 則為y 的下一節(jié)點(diǎn),具體設(shè)計(jì)思路如下:
(3)將x 的下一點(diǎn)由y 改成j,y 的上一點(diǎn)由x 改成j,并把j標(biāo)記為已在鏈架構(gòu)中(若是較短,且則修改y 的下一點(diǎn)為j,z 的上一點(diǎn)為j。
(4)若修改成功,i 繼續(xù)尋找未在鏈架構(gòu)的節(jié)點(diǎn)加入,反之,j 繼續(xù)尋找未在鏈架構(gòu)的節(jié)點(diǎn)。
假設(shè)整個(gè)網(wǎng)絡(luò)的無(wú)線傳感節(jié)點(diǎn)共有n 個(gè),當(dāng)鏈架構(gòu)建立完成后,我們從距離基地臺(tái)最近的節(jié)點(diǎn)開(kāi)始編號(hào),給予每一節(jié)點(diǎn)一個(gè)ID(identifier),從1 開(kāi)始依序加1 至n。然后我們開(kāi)始把鏈架構(gòu)分成k 條子鏈接,目前一般的方法都是直接把n 個(gè)點(diǎn)直接均分成k 條等長(zhǎng)的子鏈接。
在鏈路建立的算法及架構(gòu)是影響其效率的重要因素,所以本文在考慮鏈路建立時(shí)候?qū)ζ溥M(jìn)行遠(yuǎn)距離鏈接架構(gòu)設(shè)計(jì),考慮其傳輸距離的長(zhǎng)短進(jìn)行能耗的對(duì)比,找出建立子鏈路的能耗均衡鏈路,增強(qiáng)無(wú)線傳感網(wǎng)絡(luò)的生命周期。