[發明專利]高數據包投遞率與能量有效性的水聲傳感器網絡傳輸方法有效
| 申請號: | 202010481041.2 | 申請日: | 2020-05-31 |
| 公開(公告)號: | CN111641990B | 公開(公告)日: | 2022-08-02 |
| 發明(設計)人: | 趙瑞琴;李寧;申曉紅 | 申請(專利權)人: | 西北工業大學 |
| 主分類號: | H04W40/10 | 分類號: | H04W40/10;H04W40/12;H04W40/14;H04W84/18 |
| 代理公司: | 西安凱多思知識產權代理事務所(普通合伙) 61290 | 代理人: | 劉新瓊 |
| 地址: | 710072 *** | 國省代碼: | 陜西;61 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據包 投遞 能量 有效性 傳感器 網絡 傳輸 方法 | ||
1.一種高數據包投遞率與能量有效性的水聲傳感器網絡傳輸方法,其特征在于包括下述步驟:
傳輸機制用于傳感器節點的數據包轉發,包括三個部分:1)鄰居信標交互機制,幫助傳感器節點獲取鄰居數目,用于路由協議;2)機會路由機制,基于鄰居數目規劃最優數據包傳輸路徑;3)沖突容忍的MAC協議,對不同類型包安排對應的優先級與發射功率,減少對重要包的沖突;
一、鄰居信標交互機制;
網絡中所有傳感器節點在本地建立以下三個列表:
Q0:鄰居列表;存儲傳感器節點一跳范圍內的鄰居信息,列表格式如下:
發送節點ID i]]> j]]> k]]> … 接收時間戳 i]]> j]]> k]]> …
其中,Q0由兩行組成,發送節點ID為產生信標的傳感器節點ID,用n表示;接收時間戳為傳感器節點接收到信標時的絕對時間,用T表示;下標i、j、k用來區分不同節點;
Q1:數據包處理列表;存儲當前尚未轉發、正在處理的數據包信息;
數據包ID u]]> v]]> w]]> …
其中,數據包ID包括源節點ID與包序列號,作為該數據包的唯一標識,用p表示;源節點ID為生成數據包的傳感器節點ID,包序列號由1開始并隨生成包個數的增加而遞增;下標u、v、w用來區分不同數據包;
Q2:數據包完成列表;存儲已經通過傳感器節點轉發出去的數據包信息;
數據包ID x]]> y]]> z]]> …
其中,數據包ID的定義與Q1相同,下標x、y、z用來區分不同數據包;
網絡中所有傳感器節點周期性廣播信標,信標產生周期為TB_sensor,為減少信標間的沖突,所有傳感器節點在發送信標前添加一個0到1秒的隨機時間抖動;
傳感器節點發送的信標格式如下:
其中包類型用于標識不同類型的包,包括數據包、信標、通知包INFO;
傳感器節點在接收到來自鄰居的信標beacon后,獲取beacon中的“發送節點ID”ni,在鄰居列表Q0中是否存在與ni相同的發送節點ID;若不存在相同的發送節點ID,則將新獲取到的“發送節點ID”ni添加到Q0中,并在對應的“接收時間戳”中寫入當前時間;若存在相同的發送節點ID,則將Q0中beacon的“發送節點ID”對應的“接收時間戳”設為當前時間,并直接丟棄beacon;之后對Q0進行更新,用當前時間與Q0中所有“接收時間戳”相減,得到時間差,若時間差大于TB_sensor,則認為傳感器節點與對應的鄰居節點失去連接,此時將對應的“發送節點ID”從Q0中刪除;否則不做任何處理;
二、機會路由機制
步驟1:若網絡中某傳感器節點n0有數據包packet要發送或轉發,packet的包頭格式如下:
其中,當前包類型為數據包,包序列號與源節點ID組合成數據包ID,作為該數據包的唯一標識,源節點ID為生成packet的傳感器節點ID,當前發送或轉發節點n0將自身ID與X、Y坐標賦分別予packet對應字段“發送節點ID”、“發送節點X坐標”、“發送節點Y坐標”中,RCS標志位標明傳感器節點鄰居節點數目與鄰居數目門限Nth的關系,若鄰居節點數目大于Nth,則將RCS置1;否則將RCS置0,鄰居數目門限Nth為自定義常量;
另外,packet對應的INFO用于RCS中傳感器節點間的協調,格式如下:
其中,包類型為INFO,其余字段與packet相同;
首先傳感器節點n0判斷自身當前是否處于Sink的一跳范圍內,設Sink節點坐標為(xs,ys),傳感器節點n0的坐標為(x0,y0),計算n0到Sink的歐式距離為若Ls0小于節點通信距離R,即Ls0<R,則n0在Sink的一跳范圍內,此時傳感器節點n0生成packet對應的INFO,將packet包頭的“RCS標志位”置為1,并通過MAC層將INFO與packet發送出去,此后將packet的數據包ID添加到Q2中,并不再接收與packet具有相同數據包ID的數據包,并重新開始步驟1;若Ls0≥R,則n0在Sink的一跳范圍外,進入步驟2;
步驟2:判斷n0是否為空區節點;傳感器節點n0通過信標交互機制獲取當前鄰居數目nc0,即統計當前列表Q0中“發送節點ID”的個數,若nc0<2,認為n0為空區節點,即沒有比自己更靠近Sink的鄰居節點,此時nn直接丟棄packet,并將packet的數據包ID從Q1刪除,回到步驟1;若nc0≥2,進入步驟3;
步驟3:根據鄰居數目更新packet包頭的“RCS標志位”;預先設定常量“鄰居數目門限”Nth,Nth根據應用需求設定,網絡中節點越密集Nth設置越小,若nc0≤Nth,將packet中的“RCS標志位”置為0;否則置為1,進入步驟4;
步驟4:傳感器節點n0通過MAC層將INFO與packet發送出去,此后將packet的數據包ID添加到Q2中,并不再接收與packet具有相同數據包ID的數據包,繼續步驟5;
步驟5:若傳感器節點n0的某一鄰居節點n1接收到來自n0的packet或INFO,在判斷自身是否屬于n0的RCS前,首先進行以下步驟:
傳感器節點n1獲取packet或INFO包頭中的“數據包ID”,若該數據包ID在Q2中有記錄,說明之前已經完成對該數據包的轉發,此時直接丟棄接收到的packet或INFO,跳至步驟1;否則判斷該數據包ID在Q1中是否有記錄,判斷規則為:如在Q1無記錄,說明n1第一次接收到該數據包ID下的包,如果接收到的是INFO,直接將INFO丟棄,如果接收到的是packet,則將其“數據包ID”添加到Q1中,進入步驟6;若在Q1有記錄,說明正在處理該packet,此時直接跳至步驟8;
步驟6:判斷n1是否歸屬于n0的RCS,即RCS0;
首先n1解析packet包頭得到“RCS標志位”對應的值VRCS_0,若VRCS_0=0,說明n0鄰居數目小于等于鄰居數目門限值,此時n1屬于n0的RCS,即n1∈RCS0,繼續步驟7;若VRCS_0=1,n1判斷是否比n0更靠近Sink,n0的坐標從packet包頭字段“發送節點X坐標”與“發送節點Y坐標”獲取;若n0到Sink的歐氏距離小于n1,即Ls0<Ls1,此時直接丟棄packet,并將packet的數據包ID從Q1刪除,跳至步驟1;若Ls0≥Ls1,此時n1∈RCS0,進入步驟7;
步驟7:計算轉發packet前的等待時間并開始計時;n1在發送packet前等待一段時間Thold,Thold的長短反映了n1在RCS0中的優先級,Thold的計算方式如下:
其中T_delay為預先設定的最大時延;v為水聲傳播速度,取1500m/s;L01表示傳感器節點n1與n0之間的歐氏距離;公式(1)前一項反映傳感器節點的優先級,后一項是考慮聲信號到達不同節點的先后差異而設定的時間對齊;公式(1)最重要的部分是優先級系數δ,δ越小傳感器節點n1的優先級越高,計算方式如下:
其中R為傳感器節點通信半徑;設為傳感器節點n0到Sink節點的距離向量,為傳感器節點n0到n1的距離向量,θ為和之間的夾角;N為最大鄰居節點數目,N為常量且在所有傳感器節點中具有相同的值,nc1表示傳感器節點n1當前鄰居數目;
步驟8:傳感器節點n1在等待時間Thold內,如果接收到packet對應的ACK或與packet具有相同數據包ID的數據包,則停止計時,將packet丟棄,并將packet的數據包ID從Q1刪除;如果Thold超時,則準備繼續轉發packet以及對應的ACK,此時傳感器節點n1的角色變為n0,下一跳接收到packet的傳感器節點變為n1,繼續執行步驟1,直到數據包packet傳遞到Sin;
三、沖突容忍的MAC協議
在接收到來自路由層的INFO與packet后,傳感器節點首先將packet堆入緩沖區中,再檢測信道忙閑狀態;如果信道忙,等待信道空閑;如果信道空閑,立即將INFO發射出去;packet的發送參考列表Q1,如果packet之前沒有待處理的數據包,即packet的數據包ID在Q1的首項,此時傳感器節點在信道空閑后將packet發射出去,并將packet對應的數據包ID從Q1刪除;如果packet之前存在待處理的數據包,即數據包ID不在Q1的首項,在packet數據包ID成為Q1的首項前不能發射packet;
若傳感器節點正確接收到信號,則直接將接收到的內容傳輸到路由層,在每一次信道狀態發生改變后,重復MAC協議流程,直到傳感器節點失效。
2.根據權利要求1所述的一種高數據包投遞率與能量有效性的水聲傳感器網絡傳輸方法,其特征在于:
在所述MAC協議中,提高ACK的發射功率,進而增加換能器的通信距離;設換能器對數據包與信標的發射功率為P,通信距離為R;若保證能夠覆蓋所有RCS內的傳感器節點,INFO的通信距離應為2R,對應的發射功率為:
其中,Pinfo與P的單位為W;R的單位為m;a為吸收系數,計算公式如下:
其中a與載波頻率f有關。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西北工業大學,未經西北工業大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010481041.2/1.html,轉載請聲明來源鉆瓜專利網。





