一種傳感器網絡中移動Sink節(jié)點位置信息獲取方法
【專利摘要】本發(fā)明公開了一種傳感器網絡中移動Sink節(jié)點位置信息獲取方法,屬于無線傳感網絡的路由【技術領域】,通過設置代理位置服務器和臨時位置服務器的方法來降低路由更新負載和路由請求負載。本發(fā)明的方法在保證通信實時性和準確性的前提下,能夠極大地減小位置更新負載,亦即降低了整個傳感網絡的總負載,降低邊界節(jié)點的能量消耗,延長了傳感器網絡壽命。
【專利說明】—種傳感器網絡中移動Sink節(jié)點位置信息獲取方法
【技術領域】
[0001]本發(fā)明屬于無線傳感網絡【技術領域】,涉及無線傳感網絡的路由技術,具體涉及一種傳感器網絡中移動Sink節(jié)點位置信息獲取方法。
【背景技術】
[0002]無線傳感網(Wireless Sensor Networks, WSN)的典型工作方式為:大量的傳感器節(jié)點部署在監(jiān)測區(qū)域周圍,傳感器節(jié)點通過自組織的方式迅速的構建成一個網絡系統(tǒng)。如圖1所示,在傳感器網絡中,每個傳感器節(jié)點(Sensor node)將采集的探測信息通過接力傳輸的方式發(fā)送到匯聚節(jié)點(Sink node),最后通過互聯網或衛(wèi)星到達管理節(jié)點。用戶通過管理節(jié)點對傳感器網絡進行配置和管理,發(fā)布監(jiān)測任務以及收集監(jiān)測數據。
[0003]無線傳感網絡的路由技術一直都是業(yè)界的研究熱點,而基于地理位置信息路由算法因為協(xié)議簡單,可擴展性好,具有很高的魯棒性等特點,在近些年應用得越來越多。該路由技術中節(jié)點通過GPS或者其他定位方法來獲取自身位置信息,通過交互的方式獲得各自無線通信半徑范圍內節(jié)點的地理位置信息。當源節(jié)點向目的Sink節(jié)點傳輸數據時,將目的Sink節(jié)點的位置信息封裝在數據包中,當前節(jié)點根據目的節(jié)點的地理位置信息選擇鄰居節(jié)點當中距離Sink節(jié)點最近的節(jié)點作為下一跳,直至將數據包傳輸到Sink節(jié)點?;诘乩砦恢寐酚蓞f(xié)議的基本原理是利用Sink節(jié)點的位置信息來實現下一跳的路由選擇,因此源節(jié)點在向Sink節(jié)點發(fā)送數據之前必須預先獲取目的Sink節(jié)點的位置信息。當前國內外關于Sink節(jié)點位置獲取主要有三種典型算法XYLS,SLURP,和GLS算法。XYLS算法通過目的Sink節(jié)點向南北方向發(fā)送位置聲明數據包,源節(jié)點向東西方向發(fā)送位置請求數據包。通過此“中間人”節(jié)點,源節(jié)點獲取到目的節(jié)點的位置信息。但是當Sink節(jié)點頻繁更換位置時,請求信息必須通過邊界節(jié)點的反復轉發(fā)才能獲取,嚴重影響了邊界節(jié)點的能量消耗,縮短了網絡壽命。SLURP算法將網絡劃分為網格,并將目的Sink節(jié)點映射到某一個固定網格,該網格中的節(jié)點都存放Sink節(jié)點的信息。因此Sink節(jié)點移動到源節(jié)點附近時,源節(jié)點可能還是需要去離自己很遠的區(qū)域位置服務區(qū)請求位置信息。GLS算法將網絡區(qū)域劃分為許多小方形網格,然后將網格組織成樹型的網格結構。一級級的向上層請求位置信息。但是當節(jié)點移動的時候位置更新開銷較大。
【發(fā)明內容】
[0004]本發(fā)明所要解決的技術問題是,針對現有技術的不足,提供一種傳感器網絡中移動Sink節(jié)點位置信息獲取方法,在保證通信實時性和準確性的前提下,減少由于節(jié)點移動造成的位置更新負擔,減少節(jié)點位置信息請求路徑,降低邊界節(jié)點的能量消耗,延長傳感器網絡壽命。
[0005]為解決上述技術問題,本發(fā)明所采用的技術方案是:一種傳感器網絡中移動Sink節(jié)點位置信息獲取方法,該方法為:
[0006]I)將整個傳感器網絡劃分為若干個基本的單元網格,每一個單元網絡即一級網格;用KXK個一級網格組織成二級網格;所述一級網格邊長取值范圍為20?50m ;所述二級網格邊長取值范圍為1/3?1/4倍傳感器網格邊長;確定每一個二級網格的ID,并確定各二級網格內的一級網格的局部ID ;可以看出,當傳感器網絡大小確定后,根據上述描述可以確定K的大小。
[0007]2)為傳感器網絡中的每一個目的Sink節(jié)點分配一個ID,利用目的Sink節(jié)點的ID和靜態(tài)映射函數,將所述映射目的Sink節(jié)點的位置映射到二級網格,然后再映射到該二級網格中的一級網格中,該一級網格即目的Sink節(jié)點的位置服務器,同時以目的Sink節(jié)點所在的一級網格為代理位置服務器;
[0008]3)傳感器網絡掃描檢測傳感器網絡中節(jié)點的位置變化和位置請求信息,當傳感器網絡中目的Sink節(jié)點位置發(fā)生改變時,目的Sink節(jié)點發(fā)送一個位置更新信號,傳感器網絡檢測到位置更新信號時,進入4);若傳感器網絡中源節(jié)點要通過地理路由發(fā)送一個數據包到目的Sink節(jié)點,則源節(jié)點先請求目的Sink節(jié)點的確切的位置信息,然后發(fā)出一個位置請求信號,傳感器網絡檢測到位置請求信號時,進入5);
[0009]4)判斷目的Sink節(jié)點是否移動到代理位置服務器更新范圍外,若是,則將目的Sink節(jié)點移動后所在的一級網格為新的代理位置服務器,且更新前的代理位置服務器保存新的代理位置服務器的位置信息T時間,位置更新過程結束,進入3);否則,更新代理位置服務器中目的Sink節(jié)點的新位置信息,位置更新過程結束,進入3);所述代理位置服務器更新范圍是指以所述代理位置服務所在的一級網格為中心,邊長為I?1.5倍一級網格邊長的正方形區(qū)域;
[0010]5)源節(jié)點向臨時位置服務器請求目的Sink節(jié)點的新位置信息;
[0011]6)以源節(jié)點所在的二級網格中的一個一級網格為臨時位置服務器,所述臨時服務器對應的一級網格的局部ID與所述位置服務器對應的一級網格的局部ID相同,且所述臨時位置服務器的有效期為T,臨時位置服務器向位置服務器請求目的Sink節(jié)點的新的代理位置服務器的位置信息,并保存T時間;臨時位置服務器并不會在網絡中一直存在,只有當其所在的二級網格中有位置請求時,臨時位置服務器才會被建立,并且其有一個有效期T。建立臨時位置服務器時,臨時位置服務器會向位置服務器請求新的目的Sink節(jié)點的新代理位置服務器信息,并保存T時間。在T時間內當其所在二級網格內有位置請求時,只需直接向臨時位置服務器請求,就可以得到代理位置服務器的信息,如果超過T其所在二級網格內有位置請求,則需要建立臨時位置服務器;其中,T=KR/2v ;R為一級網格的邊長;v為目的Sink節(jié)點移動的速度;
[0012]7)判斷臨時位置服務器是否有效,若是,則源節(jié)點向臨時位置服務器請求其保存的代理位置服務器的信息(如果該代理位置服務器保存的位置信息為更新前的代理位置服務器位置信息,因為在T時間內,更新前的代理位置服務器會保存新的代理位置服務器的位置信息,所以源節(jié)點還是可以獲取到新的代理位置服務器信息,如果該代理位置服務器保存的位置信息為更新后的代理位置服務器的位置信息,則源節(jié)點直接向該代理位置服務器請求目的Sink節(jié)點的新位置信息),進入8);否則,臨時位置服務器向目的Sink節(jié)點的位置服務器請求新的代理位置服務器的位置信息,位置服務器回復新的代理位置服務器的位置信息后,臨時位置服務器保存該新的代理位置服務器位置位置信息T時間,并向該新的代理位置服務器請求目的Sink節(jié)點的位置信息,進入8);[0013]8)新的代理位置服務器將目的Sink節(jié)點的新位置信息回復給源節(jié)點,源節(jié)點位置請求結束,進入3)。
[0014]所述步驟I)中,二級網格的ID以及一級網格的局部ID的確定方法為:任一二級網格 B 的 ID,即 ID⑶定義為 ID(B) = (Ix,Iy);其中,4=.(^,%)為二級網格B的中心坐標;(Xc^ytl)為傳感器網絡的原點;R為一級網格的邊長;二級網格B中一級網格A的局部ID,即id(A)定義為id(A) = (ix,iy);其中Λ iT = iltYt(xa,ya)為一級網格A的中心坐標;L」表示向下取整數。
[0015]目的Sink節(jié)點的位置服務器的確定過程為:設目的Sink節(jié)點的ID為Is,二級網格ID映射函數為f2,一級網格局部ID映射函數為4,則:
[0016]ID (s2) =f2 (Is) = (g (nx), g (ny));
[0017]id (S1) =fi (Is) = (g (K), g (K));
[0018]其中,ID(S2)、id(Sl)分別為目的Sink節(jié)點的ID通過所述哈希函數得到的位置服務器所在的二級網格ID和一級網格局部ID ;nx和ny分別表示傳感器網絡的x方向和y方向的邊長對應的一級網格總數;s2和S1分別代表位置服務器所在的二級網格和一級網格;g(x)是以X為種子點的哈希函數。
[0019]與現有技術相比,本發(fā)明所具有的有益效果為:本發(fā)明的方法在保證通信實時性和準確性的前提下,能夠極大地減小位置更新負載,亦即降低了整個傳感網絡的總負載,降低邊界節(jié)點的能量消耗,延長了傳感器網絡壽命。
【專利附圖】
【附圖說明】
[0020]圖1為傳感器網絡示意圖;
[0021]圖2為本發(fā)明方法流程圖;
[0022]圖3為本發(fā)明實施例方法圖解;
[0023]圖4為本發(fā)明位置更新流程圖;
[0024]圖5為本發(fā)明位置請求流程圖;
[0025]圖6為不同算法的路由更新負載隨網絡邊長的變化圖;
[0026]圖7為不同算法的路由更新負載隨節(jié)點移動速度的變化圖;
[0027]圖8為不同算法的路由請求負載隨網絡邊長的變化圖;
[0028]圖9為不同算法的路由請求負載隨節(jié)點移動速度的變化圖。
【具體實施方式】
[0029]本發(fā)明通過設置代理位置服務器和臨時位置服務器的方法來降低路由更新負載和路由請求負載,本發(fā)明方法的主要流程為如圖2所示:
[0030]第一步、網格區(qū)域的劃分和編號:整個網絡劃分為若干個基本的單元網格,稱為一級網格,這里記為G個;然后每KXK個一級網格組織成二級網格。每個二級網格有唯一的二級網格ID,每個二級網格內的一級網格有一個唯一的局部ID。這樣二級網格ID和二級網格內一級網格的局部ID構建了全局每個一級網格唯一的ID。
[0031]如圖5于一個二級網格B,網格B的中心坐標(xb,yb),網絡空間中最左下角點(稱為原點)的坐標為(Xtl, y^,一級網格的邊長為R,二級網格由KXK個一級網格組成。則網格B的ID定義為:
[0032]ID⑶=(Ix, Iy)(I)
[0033]其中
[0034]
【權利要求】
1.一種傳感器網絡中移動Sink節(jié)點位置信息獲取方法,其特征在于,該方法為: 1)將整個傳感器網絡劃分為若干個基本的單元網格,每一個單元網絡即一級網格;用KXK個一級網格組織成二級網格;所述一級網格邊長取值范圍為20~50m ;所述二級網格邊長取值范圍為1/3~1/4倍傳感器網格邊長;確定每一個二級網格的ID,并確定各二級網格內的一級網格的局部ID ; 2)為傳感器網絡中的每一個目的Sink節(jié)點分配一個ID,利用目的Sink節(jié)點的ID和靜態(tài)映射函數,將所述映射目的Sink節(jié)點的位置映射到二級網格,然后再映射到該二級網格中的一級網格中,該一級網格即目的Sink節(jié)點的位置服務器,同時以目的Sink節(jié)點所在的一級網格為代理位置服務器; 3)傳感器網絡掃描檢測傳感器網絡中節(jié)點的位置變化和位置請求信息,當傳感器網絡中目的Sink節(jié)點位置發(fā)生改變時,目的Sink節(jié)點發(fā)送一個位置更新信號,傳感器網絡檢測到位置更新信號時,進入4);若傳感器網絡中源節(jié)點要通過地理路由發(fā)送一個數據包到目的Sink節(jié)點,則源節(jié)點先請求目的Sink節(jié)點的確切的位置信息,然后發(fā)出一個位置請求信號,傳感器網絡檢測到位置請求信號時,進入5); 4)判斷目的Sink節(jié)點是否移動到代理位置服務器更新范圍外,若是,則將目的Sink節(jié)點移動后所在的一級網格為新的代理位置服務器,且更新前的代理位置服務器保存新的代理位置服務器的位置信息T時間,位置更新過程結束,進入3);否則,更新代理位置服務器中目的Sink節(jié)點的新位置信息,位置更新過程結束,進入3);所述代理位置服務器更新范圍是指以所述代理位置服務所在的一級網格為中心,邊長為I~1.5倍二級網格邊長的正方形區(qū)域; 5)源節(jié)點向臨時位置服務器請求目的Sink節(jié)點的新位置信息; 6)以源節(jié)點所在的二級網格中的一個一級網格為臨時位置服務器,所述臨時服務器對應的一級網格的局部ID與所述位置服務器對應的一級網格的局部ID相同,且所述臨時位置服務器的有效期為T,臨時位`置服務器向位置服務器請求目的Sink節(jié)點的新的代理位置服務器的位置信息,并保存T時間;其中,T=KR/2v ;R為一級網格的邊長;v為目的Sink節(jié)點移動的速度; 7)判斷臨時位置服務器是否有效,若是,則源節(jié)點向臨時位置服務器請求其保存的代理位置服務器的信息,進入8);否則,臨時位置服務器向目的Sink節(jié)點的位置服務器請求新的代理位置服務器的位置信息,位置服務器回復新的代理位置服務器的位置信息后,臨時位置服務器保存該新的代理位置服務器位置位置信息T時間,并向該新的代理位置服務器請求目的Sink節(jié)點的位置信息,進入8); 8)新的代理位置服務器將目的Sink節(jié)點的新位置信息回復給源節(jié)點,源節(jié)點位置請求結束,進入3)。
2.根據權利要求1所述的傳感器網絡中移動Sink節(jié)點位置信息獲取方法,其特征在于,所述步驟I)中,所述一級網格邊長為40m。
3.根據權利要求1或2所述的傳感器網絡中移動Sink節(jié)點位置信息獲取方法,其特征在于,所述步驟I)中,二級網格的ID以及一級網格的局部ID的確定方法為:任一二級網格 B 的 ID,即 ID⑶定義為 ID⑶= (IX,Iy);其中,A5 (xb,yb)為二級網格B的中心坐標;(Xc^ytl)為傳感器網絡的原點;R為一級網格的邊長;二級網格B中一級網格 A 的局部 ID,即 icKA)定義為 icKA) = (ix,iy);其中,4=; (xa,ya)為一級網格A的中心坐標迚」表示向下取整數。
4.根據權利要求3所述的傳感器網絡中移動Sink節(jié)點位置信息獲取方法,其特征在于,所述步驟2)中,所述靜態(tài)映射函數為哈希函數。
5.根據權利要求4所述的傳感器網絡中移動Sink節(jié)點位置信息獲取方法,其特征在于,所述步驟2)中,目的Sink節(jié)點的位置服務器的確定過程為:設目的Sink節(jié)點的ID為Is,二級網格ID映射函數為f2,一級網格局部ID映射函數為,則: 其中,ID(S2)、id (S1)分別為目的Sink節(jié)點的ID通過所述哈希函數得到的位置服務器所在的二級網格ID和一級網格局部ID ;nx和ny分別表示傳感器網絡的x方向和y方向的邊長對應的一級網格總數;s2和S1分別代表位置服務器所在的二級網格和一級網格;g(x)是以X為種子點的哈希函數。
【文檔編號】H04W84/18GK103491612SQ201310421640
【公開日】2014年1月1日 申請日期:2013年9月16日 優(yōu)先權日:2013年9月16日
【發(fā)明者】于富財, 孔蒙蒙, 李光友, 胡光岷 申請人:電子科技大學