下一代無線網(wǎng)絡(luò)的通信實現(xiàn)方法
【專利摘要】本發(fā)明提供了一種下一代無線網(wǎng)絡(luò)的通信實現(xiàn)方法,所述無線網(wǎng)絡(luò)包括三類節(jié)點:坐標節(jié)點,已配置節(jié)點和新節(jié)點;所述無線網(wǎng)絡(luò)中包含四個坐標節(jié)點,分為稱為東坐標節(jié)點,南坐標節(jié)點,西坐標節(jié)點和北坐標節(jié)點,東坐標節(jié)點位于所述無線網(wǎng)絡(luò)東邊的邊界處,南坐標節(jié)點位于所述無線網(wǎng)絡(luò)南邊的邊界處,西坐標節(jié)點位于所述無線網(wǎng)絡(luò)西邊的邊界處,北坐標節(jié)點位于所述無線網(wǎng)絡(luò)北邊的邊界處;已配置節(jié)點為已經(jīng)配置地址的節(jié)點,新節(jié)點為沒有配置地址的節(jié)點;當(dāng)無線網(wǎng)絡(luò)發(fā)生分裂和合并時能夠確保網(wǎng)絡(luò)地址的唯一性和通信正確性。所述下一代無線網(wǎng)絡(luò)中的每個節(jié)點通過本發(fā)明所提供的通信實現(xiàn)方法,可擁有具有唯一性的地址,彼此之間實現(xiàn)正確的通信。
【專利說明】下一代無線網(wǎng)絡(luò)的通信實現(xiàn)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種通信實現(xiàn)方法,尤其涉及的是一種下一代無線網(wǎng)絡(luò)的通信實現(xiàn)方 法。
【背景技術(shù)】
[0002] 下-代無線網(wǎng)絡(luò)中的節(jié)點之間通信通過中間節(jié)點的轉(zhuǎn)發(fā)和路由來實現(xiàn),因此,每 個節(jié)點必須配有具有唯一性的地址來實現(xiàn)通信,因此,實現(xiàn)下一代無線網(wǎng)絡(luò)需要解決的關(guān) 鍵技術(shù)之一就是地址自動配置問題。
[0003] 目前的地址配置分為有狀態(tài)地址配置和無狀態(tài)地址配置兩種形式,有狀態(tài)地址配 置方案采用服務(wù)器/客戶端的通信方式分配地址,即節(jié)點向服務(wù)器提出申請地址的請求, 然后由服務(wù)器統(tǒng)一為無線網(wǎng)絡(luò)內(nèi)的節(jié)點分配地址。由于下一代無線網(wǎng)絡(luò)沒有任何基礎(chǔ)設(shè) 施,例如服務(wù)器,因此,有狀態(tài)地址配置方案無法應(yīng)用到下一代無線網(wǎng)絡(luò)中。在無狀態(tài)地址 配置方案中,每個被分配的地址都需要在整個無線網(wǎng)絡(luò)中進行重復(fù)地址檢測以確保它的唯 一性,導(dǎo)致了大量的控制包開銷,消耗了大量的無線網(wǎng)絡(luò)資源,因此也不適用于下一代無線 網(wǎng)絡(luò)使用。
[0004] 因此針對下一代無線網(wǎng)絡(luò)需要建立一種低開銷的地址自動配置方案來實現(xiàn)移動 通信。
【發(fā)明內(nèi)容】
[0005] 發(fā)明目的:本發(fā)明所要解決的技術(shù)問題是針對現(xiàn)有技術(shù)的不足,提供一種下一代 無線網(wǎng)絡(luò)的通信實現(xiàn)方法。
[0006] 技術(shù)方案:本發(fā)明公開了一種下一代無線網(wǎng)絡(luò)的通信實現(xiàn)方法,所述無線網(wǎng)絡(luò)包 括三類節(jié)點:坐標節(jié)點,已配置節(jié)點和新節(jié)點;所述無線網(wǎng)絡(luò)中包含四個坐標節(jié)點,分為稱 為東坐標節(jié)點,南坐標節(jié)點,西坐標節(jié)點和北坐標節(jié)點,東坐標節(jié)點位于所述無線網(wǎng)絡(luò)東邊 的邊界處,南坐標節(jié)點位于所述無線網(wǎng)絡(luò)南邊的邊界處,西坐標節(jié)點位于所述無線網(wǎng)絡(luò)西 邊的邊界處,北坐標節(jié)點位于所述無線網(wǎng)絡(luò)北邊的邊界處;已配置節(jié)點為已經(jīng)配置地址的 節(jié)點,新節(jié)點為沒有配置地址的節(jié)點;
[0007] 無線網(wǎng)絡(luò)啟動后,所有節(jié)點均為新節(jié)點,并選舉出東坐標節(jié)點,南坐標節(jié)點,西坐 標節(jié)點和北坐標節(jié)點;選舉出的東坐標節(jié)點,南坐標節(jié)點,西坐標節(jié)點和北坐標節(jié)點分別廣 播信標消息;無線網(wǎng)絡(luò)中的新節(jié)點根據(jù)接收到的坐標節(jié)點的信標消息確定自己的四元組坐 標,四元組坐標包括到達東坐標節(jié)點的跳數(shù),到達南坐標節(jié)點的跳數(shù),到達西坐標節(jié)點的跳 數(shù)以及到達北坐標節(jié)點的跳數(shù);其中,東坐標節(jié)點到達東坐標節(jié)點的跳數(shù)為0,南坐標節(jié)點 到達南坐標節(jié)點的跳數(shù)為0,西坐標節(jié)點到達西坐標節(jié)點的跳數(shù)為〇,北坐標節(jié)點到達北坐 標節(jié)點的跳數(shù)為〇 ;坐標節(jié)點廣播的信標消息的負載為自己的四元組坐標,無線網(wǎng)絡(luò)中的 新節(jié)點通過判斷坐標節(jié)點廣播的信標消息的負載判斷該消息來源于哪個坐標節(jié)點,從而計 算出相應(yīng)的坐標值;
[0008] 每個新節(jié)點用硬件ID作為臨時地址,例如MAC地址或者初始ID ;在一個新節(jié)點獲 取地址之前,由其臨時地址唯一標識;
[0009] 無線網(wǎng)絡(luò)中的每個新節(jié)點定期在一跳范圍內(nèi)廣播信標消息,消息源地址為其臨時 地址;一個節(jié)點通過現(xiàn)有技術(shù)(例如AoA算法)接收鄰居節(jié)點的信標消息獲取與該鄰居節(jié) 點的相對角度;
[0010] 新節(jié)點X根據(jù)下述方法判斷自己是否為坐標節(jié)點:
[0011] 1)如果新節(jié)點X與其所有鄰居節(jié)點的相對角度都在區(qū)間(270°,360° ]或者 (0°,90° ],那么新節(jié)點X則將自己標記為西坐標節(jié)點;
[0012] 2)如果新節(jié)點X與其所有鄰居節(jié)點的相對角度都在區(qū)間(180°,360° ],那么新 節(jié)點X則將自己標記為北坐標節(jié)點;
[0013] 3)如果新節(jié)點X與其所有鄰居節(jié)點的相對角度都在區(qū)間(90°,270° ],那么新 節(jié)點X則將自己標記為東坐標節(jié)點;
[0014] 4)如果新節(jié)點X與其所有鄰居節(jié)點的相對角度都在區(qū)間(0°,180° ],那么新節(jié) 點X則將自己標記為南坐標節(jié)點;
[0015] 如果上述坐標節(jié)點產(chǎn)生過程產(chǎn)生多于4個的坐標節(jié)點,那么采用下述算法確定無 線網(wǎng)絡(luò)內(nèi)最終4個坐標節(jié)點:每個節(jié)點將自己標記為坐標節(jié)點后,在無線網(wǎng)絡(luò)內(nèi)廣播一個 信標消息,當(dāng)一個西坐標節(jié)點收到另外一個西坐標節(jié)點廣播的信標消息后,對比自己的臨 時地址與接收到的信標消息的源地址,如果自己的臨時地址更大,則將自己重新標記為新 節(jié)點,最終地址最小的西坐標節(jié)點成為無線網(wǎng)絡(luò)中唯一的西坐標節(jié)點;當(dāng)一個東坐標節(jié)點 收到另外一個東坐標節(jié)點廣播的信標消息后,對比自己的臨時地址與接收到的信標消息的 源地址,如果自己的臨時地址更大,則將自己重新標記為新節(jié)點,最終只有地址最小的東坐 標節(jié)點成為無線網(wǎng)絡(luò)中唯一的東坐標節(jié)點;當(dāng)一個南坐標節(jié)點收到另外一個南坐標節(jié)點廣 播的信標消息后,對比自己的臨時地址與接收到的信標消息的源地址,如果自己的臨時地 址更大,則將自己重新標記為新節(jié)點,最終只有地址最小的南坐標節(jié)點成為無線網(wǎng)絡(luò)中唯 一的南坐標節(jié)點;當(dāng)一個北坐標節(jié)點收到另外一個北坐標節(jié)點廣播的信標消息后,對比自 己的臨時地址與接收到的信標消息的源地址,如果自己的臨時地址更大,則將自己重新標 記為新節(jié)點,最終只有地址最小的北坐標節(jié)點成為無線網(wǎng)絡(luò)中唯一的北坐標節(jié)點;
[0016] -個節(jié)點的地址由四部分組成,第一部分為i比特的無線網(wǎng)絡(luò)ID,一個無線網(wǎng)絡(luò) 中所有節(jié)點的無線網(wǎng)絡(luò)ID都相同,它唯一標識一個無線網(wǎng)絡(luò);第二部分為四元組坐標,四 元組坐標中的每個元素由j比特表示;第三部分為k比特的節(jié)點ID,用于區(qū)分一個無線網(wǎng) 絡(luò)中具有相同四元組坐標的節(jié)點;第四部分為m比特的新節(jié)點ID,用于在地址初始化之后 分配給新加入的新節(jié)點,i、j、k、m為正整數(shù)。這些變量可以根據(jù)實際應(yīng)用進行動態(tài)調(diào)整
[0017] 本發(fā)明所述方法中,無線網(wǎng)絡(luò)啟動后,進行無線網(wǎng)絡(luò)初始化;所有節(jié)點均為新節(jié) 點,無線網(wǎng)絡(luò)首先產(chǎn)生東坐標節(jié)點,南坐標節(jié)點,西坐標節(jié)點和北坐標節(jié)點,其中,西坐標節(jié) 點的初始四元組坐標為(1,1,〇, 1),東坐標節(jié)點的初始四元組坐標為(〇, 1,1,1),北坐標節(jié) 點的初始四元組坐標為(1,1,1,〇),南坐標節(jié)點的初始四元組坐標為(1,0,1,1),然后,每 個坐標節(jié)點在無線網(wǎng)絡(luò)內(nèi)廣播信標消息,信標消息負載為初始四元組坐標以及跳數(shù);其中, 西坐標節(jié)點隨機產(chǎn)生一個無線網(wǎng)絡(luò)ID,其廣播的信標消息負載還包括該無線網(wǎng)絡(luò)ID ;信標 消息負載中的跳數(shù)初始值為0,信標消息被轉(zhuǎn)發(fā)一次,跳數(shù)遞增1 ;
[0018]無線網(wǎng)絡(luò)中的新節(jié)點收到坐標節(jié)點廣播的信標消息后,根據(jù)信標消息中的四元組 坐標來判斷是東坐標節(jié)點,南坐標節(jié)點,西坐標節(jié)點還是北坐標節(jié)點,然后選擇到達東坐標 節(jié)點的最小跳數(shù),到達南坐標節(jié)點的最小跳數(shù),到達西坐標節(jié)點的最小跳數(shù),到達北坐標節(jié) 點的最小跳數(shù)來建立自己的四元組坐標;當(dāng)新節(jié)點收到西坐標節(jié)點廣播的信標消息后,記 錄下負載中的無線網(wǎng)絡(luò)ID,并與建立的四元組坐標構(gòu)建地址,其中,節(jié)點ID和新節(jié)點ID為 〇 ;
[0019] 新節(jié)點獲取地址后,如果地址的節(jié)點ID為q,新節(jié)點在一跳范圍內(nèi)廣播信標消息, 信標消息負載為空,信標消息源地址為自己配置的地址,新節(jié)點將自己標記為已配置節(jié)點; 新節(jié)點的鄰居新節(jié)點收到新節(jié)點廣播的信標消息后,如果鄰居新節(jié)點的四元組坐標等于新 節(jié)點的四元組坐標,那么鄰居新節(jié)點執(zhí)行賦值操作,q = q+Ι,然后鄰居新節(jié)點將自己的節(jié) 點ID設(shè)置為q,廣播信標消息,并將自己標記為已配置節(jié)點;新節(jié)點的所有鄰居新節(jié)點重復(fù) 上述配置過程,直到新節(jié)點所有鄰居新節(jié)點都轉(zhuǎn)換為已配置節(jié)點為止;
[0020] -個無線網(wǎng)絡(luò)內(nèi)具有相同四元組坐標的節(jié)點ID均不同。
[0021] 上述過程可以確保每個已配置節(jié)點地址在無線網(wǎng)絡(luò)中的地址唯一性,因此確保了 節(jié)點之間通信的正確性。
[0022] 本發(fā)明所述方法中,無線網(wǎng)絡(luò)初始化結(jié)束后,已配置節(jié)點在一跳范圍內(nèi)廣播信標 消息,信標消息負載為可分配新節(jié)點ID的長度;
[0023]新節(jié)點X加入無線網(wǎng)絡(luò)后,開始偵聽鄰居已配置節(jié)點的信標消息,然后選擇從可 分配新節(jié)點ID長度最大的鄰居己配置節(jié)點X2獲取地址,假設(shè)已配置節(jié)點X2的新節(jié)點ID 區(qū)間為[L,U],L和U為正整數(shù)且L〈U,新節(jié)點X從已配置節(jié)點X2獲取地址的過程為:
[0024] 步驟101 :開始;
[0025] 步驟102 :新節(jié)點X向已配置節(jié)點X2發(fā)送地址請求消息,地址請求消息源地址為 新節(jié)點X的臨時地址;
[0026] 步驟103 :已配置節(jié)點X2收到地址請求消息后,選擇一段新節(jié)點ID空間[L1,U], L<L1<U且L1為正整數(shù),然后向新節(jié)點XI返回地址響應(yīng)消息,消息負載為地址L1和U,然后 將自己的新節(jié)點ID空間更新為地址空間[L,L1-1];
[0027] 步驟104 :新節(jié)點X收到地址響應(yīng)消息后,將地址L1作為自己的新節(jié)點ID,然后與 已配置節(jié)點X2的無線網(wǎng)絡(luò)ID,四元組坐標和節(jié)點ID相結(jié)合形成地址,將自己標記為已配置 節(jié)點,同時將地址空間[L+l,L1]作為自己的新節(jié)點ID空間;
[0028] 步驟105 :結(jié)束。
[0029] 通過上述過程,新節(jié)點可以通過鄰居節(jié)點獲取具有唯一性的地址,從而進行正確 性。
[0030] 本發(fā)明所述方法中,當(dāng)已配置節(jié)點X的新節(jié)點ID長度為0時,其新節(jié)點ID空間記 做[0,0],并發(fā)起地址回收過程:
[0031] 步驟201:開始;
[0032] 步驟202 :已配置節(jié)點X廣播地址回收消息;
[0033] 步驟203 :無線網(wǎng)絡(luò)中與己配置節(jié)點X具有相同無線網(wǎng)絡(luò)ID,四元組坐標和節(jié)點 ID的節(jié)點收到地址回收消息后,向己配置節(jié)點X返回地址確認消息,地址確認消息負載為 自己的新節(jié)點ID范圍;
[0034] 步驟204 :在規(guī)定時間后,已配置節(jié)點X整理所收到的地址確認消息,選擇一段最 長的連續(xù)沒有被占用的新節(jié)點ID空間作為自己的新節(jié)點ID空間;
[0035] 步驟205:結(jié)束;
[0036] 步驟204中,規(guī)定時間設(shè)定為a · d · t,其中d為無線網(wǎng)絡(luò)直徑,t為一跳傳輸延 遲,α為調(diào)節(jié)參數(shù)。取值范圍一般為大于2的數(shù)值。
[0037] 上述過程實現(xiàn)了地址配置空間的回收,從而確保具有足夠的地址空間進行分配, 增加了地址配置成功率。
[0038] 本發(fā)明所述方法中,如果下述情況之一發(fā)生,則一個已配置節(jié)點X判定自己脫離 了原來的無線網(wǎng)絡(luò):
[0039] 第一種情況:已配置節(jié)點X在規(guī)定時間內(nèi)沒有收到任何節(jié)點廣播的信標消息,其 中規(guī)定時間設(shè)定為α ·(!·〖,其中d為無線網(wǎng)絡(luò)直徑,t為一跳傳輸延遲,α為調(diào)節(jié)參數(shù)。 α -般為大于2的數(shù)值。
[0040] 第二種情況:已配置節(jié)點收到的所有信標消息均來自新節(jié)點;
[0041] 第三種情況:已配置節(jié)點X收到的所有信標消息的無線網(wǎng)絡(luò)ID與自己的無線網(wǎng)絡(luò) ID都不同;
[0042] 在第一種情況下,已配置節(jié)點X保留原來的地址,并轉(zhuǎn)換為新節(jié)點;
[0043] 在第二種情況下,已配置節(jié)點X保留原來的地址,并執(zhí)行下述步驟:
[0044] 步驟301:開始;
[0045]步驟302 :已配置節(jié)點X產(chǎn)生一個新的無線網(wǎng)絡(luò)ID,并廣播一個地址更新消息,地 址更新消息負載為新產(chǎn)生的無線網(wǎng)絡(luò)ID和自己原來的無線網(wǎng)絡(luò)ID ;
[0046]步驟303 :無線網(wǎng)絡(luò)中的新節(jié)點收到該地址更新消息后,判斷自己原來地址的無 線網(wǎng)絡(luò)ID與已配置節(jié)點X原來地址的無線網(wǎng)絡(luò)ID是否相同,如果是,則進行步驟304,否則 進行步驟305 ;
[0047]步驟304 :無線網(wǎng)絡(luò)中的新節(jié)點將原來地址的無線網(wǎng)絡(luò)ID更新為地址更新消息中 新產(chǎn)生的無線網(wǎng)絡(luò)ID,地址其他部分保持不變,并將更新后的地址作為自己的地址并轉(zhuǎn)換 為已配置節(jié)點,進行步驟306;
[0048]步驟3〇5 :無線網(wǎng)絡(luò)中的新節(jié)點放棄原來的地址,并根據(jù)步驟101到步驟105重新 獲取地址并轉(zhuǎn)換為已配置節(jié)點;
[0049] 步驟306:結(jié)束;
[0050]在第三種情況下,已配置節(jié)點X檢測到自己脫離原來的無線網(wǎng)絡(luò)后,將自己標記 為新節(jié)點,然后在新的無線網(wǎng)絡(luò)執(zhí)行步驟101到步驟105獲取地址。
[0051]上述過程中,節(jié)點脫離了原來的網(wǎng)絡(luò)后,會重新獲取具有唯一性的地址,然后進行 正確的通信。
[0052]本發(fā)明所述方法中,如果下述情況之一發(fā)生,則已配置節(jié)點X判定自己的無線網(wǎng) 絡(luò)與其他無線網(wǎng)絡(luò)發(fā)生了合并:
[0053]第一種情況:已配置節(jié)點X收到了一條信標消息,該信標消息的源地址無線網(wǎng)絡(luò) ID與自己的無線網(wǎng)絡(luò)ID相同,同時已配置節(jié)點X也收到了一條信標信息,該信標消息的源 地址無線網(wǎng)絡(luò)ID與自己的無線網(wǎng)絡(luò)ID不同;
[0054]第二種情況:已配置節(jié)點X的地址與另外一個已配置節(jié)點的地址相同;
[0055] 在第一種情況下,假設(shè)已配置節(jié)點X位于無線網(wǎng)絡(luò)MANET1中,己配置節(jié)點Y位于 無線網(wǎng)絡(luò)MANET 2中,無線網(wǎng)絡(luò)ΜΑΝΕΤ1中的節(jié)點數(shù)量小于無線網(wǎng)絡(luò)MANET2中的節(jié)點數(shù)量; 當(dāng)已配置節(jié)點X收到已配置節(jié)點Y的信標消息并檢測到自己的無線網(wǎng)絡(luò)ID與已配置節(jié)點 Y的無線網(wǎng)絡(luò)ID不同時,已配置節(jié)點X發(fā)起下述合并操作:
[0056] 步驟401:開始;
[0057]步驟402 :已配置節(jié)點X向已配置節(jié)點Y發(fā)送一條合并消息;
[0058] 步驟4〇3 :已配置節(jié)點Y在無線網(wǎng)絡(luò)內(nèi)廣播合并消息,無線網(wǎng)絡(luò)MANET2中的已配 置節(jié)點收到該合并消息后,向已配置節(jié)點Y返回一個合并確認消息,無線網(wǎng)絡(luò)MANET1中的 已配置節(jié)點收到已配置節(jié)點Y的合并消息后,丟棄該合并消息;
[0059] 步驟404 :已配置節(jié)點Y查看所有合并確認消息,計算出無線網(wǎng)絡(luò)MANET2中節(jié)點 總數(shù)量以及無線網(wǎng)絡(luò)MANET2中的所有已配置節(jié)點的四元組坐標的第一個元素到達東坐標 節(jié)點的跳數(shù)的最大值E max,第二個元素到達南坐標節(jié)點的跳數(shù)的最大值S_,第三個元素到 達西坐標節(jié)點的跳數(shù)最大值W max,第四個元素到達北坐標節(jié)點的跳數(shù)的最大值Ν_,,然后向 己配置節(jié)點X返回一個合并初始化消息,合并初始化消息負載為無線網(wǎng)絡(luò)ΜΑΝΕΤ2的節(jié)點總 數(shù)量以及到達東坐標節(jié)點的跳數(shù)的最大值Ε_,到達南坐標節(jié)點的跳數(shù)的最大值S max,到達 西坐標節(jié)點的跳數(shù)的最大值W_和到達北坐標節(jié)點的跳數(shù)的最大值Ν_。;
[0060] 步驟405 :已配置節(jié)點X收到合并初始化消息后,由于無線網(wǎng)絡(luò)ΜΑΝΕΤ2中的節(jié)點 數(shù)量比無線網(wǎng)絡(luò)MANET1的節(jié)點數(shù)量多,已配置節(jié)點X在無線網(wǎng)絡(luò)中廣播合并地址消息,合 并地址消息負載為無線網(wǎng)絡(luò)ΜΑΝΕΤ2的無線網(wǎng)絡(luò)ID,以及到達東坐標節(jié)點的跳數(shù)的最大值 Ε·,到達南坐標節(jié)點的跳數(shù)的最大值S_,到達西坐標節(jié)點的跳數(shù)的最大值界_和到達北坐 標節(jié)點的跳數(shù)的最大值~_;
[0061] 步驟406 :無線網(wǎng)絡(luò)MANET1中的已配置節(jié)點XI收到已配置節(jié)點X的合并地址消 息后,將自己地址中的無線網(wǎng)絡(luò)ID更新為無線網(wǎng)絡(luò)MANET2的無線網(wǎng)絡(luò)ID,假設(shè)已配置節(jié) 點XI到達東坐標節(jié)點的跳數(shù)為E xl,到達南坐標節(jié)點的跳數(shù)為Sxl,到達西坐標節(jié)點的跳數(shù)為 WX1,到達北坐標節(jié)點的跳數(shù)為Ν?1,已配置節(jié)點XI執(zhí)行以下賦值操作:EX1 = Eu+E^+l,、= Sxi+Smax+1, ffxl = Wxl+wmax+l, Nxl = Nxl+Nmax+1 ;
[0062] 步驟407 :已配置節(jié)點XI判斷跳數(shù)Exl,Sxl, Wxl和Nxl的值是否都小于或者等于 2j_l,如果是,進行步驟408,否則進行步驟409 ;
[0063] 步驟408 :已配置節(jié)點XI將自己標記為新節(jié)點,并執(zhí)行步驟101到步驟105重新 獲取地址,執(zhí)行步驟410 ;
[0064]步驟4〇9 :已配置節(jié)點XI將地址中的四元組坐標更新為執(zhí)行步驟406后的四元組 坐標,從而獲得了無線網(wǎng)絡(luò)合并后新的地址;
[0065] 步驟410:結(jié)束;
[0066]通過上述過程,兩個網(wǎng)絡(luò)合并之后仍能確保每個節(jié)點的唯一性,從而確保了通信 的正確性。
[0067]在第二種情況下,假設(shè)無線網(wǎng)絡(luò)ID的長度為i比特,有X個無線網(wǎng)絡(luò),每個無線網(wǎng) 絡(luò)產(chǎn)生一個無線網(wǎng)絡(luò)ID,那么這些無線網(wǎng)絡(luò)的無線網(wǎng)絡(luò)ID沖突的概率p如公式(1)所示:
[0068] -if H ri)
[0069] 根據(jù)公式⑴,兩個無線網(wǎng)絡(luò)產(chǎn)生相同無線網(wǎng)絡(luò)ID的概率趨于0 ;
[0070] 由于分裂出去的無線網(wǎng)絡(luò)重新產(chǎn)生無線網(wǎng)絡(luò)ID,因此即使無線網(wǎng)絡(luò)分裂后再合 并,它們的無線網(wǎng)絡(luò)ID也不同。如果已配置節(jié)點X的地址檢測到與另外一個已配置節(jié)點的 地址相同,那么已配置節(jié)點X廣播初始化消息,當(dāng)無線網(wǎng)絡(luò)內(nèi)節(jié)點收到初始化消息后,將自 己轉(zhuǎn)變?yōu)樾鹿?jié)點,通過無線網(wǎng)絡(luò)初始化重新進行地址配置。
[0071] 有益效果:本發(fā)明提供了一種下一代無線網(wǎng)絡(luò)的通信實現(xiàn)方法,在本發(fā)明中,當(dāng)無 線網(wǎng)絡(luò)發(fā)生分裂和合并時能夠確保網(wǎng)絡(luò)地址的唯一性和通信正確性。所述下一代無線網(wǎng)絡(luò) 中的每個節(jié)點通過本發(fā)明所提供的通信實現(xiàn)方法,可擁有具有唯一性的地址,彼此之間實 現(xiàn)正確的通信。本發(fā)明可應(yīng)用于交通路況檢控及農(nóng)業(yè)工程化等諸多領(lǐng)域,具有廣泛的應(yīng)用 前景。
【專利附圖】
【附圖說明】
[0072] 下面結(jié)合附圖和【具體實施方式】對本發(fā)明做更進一步的具體說明,本發(fā)明的上述和 /或其他方面的優(yōu)點將會變得更加清楚。
[0073] 圖1為本發(fā)明所述的下一代無線網(wǎng)絡(luò)拓撲結(jié)構(gòu)示意圖。
[0074] 圖2為本發(fā)明所述節(jié)點地址結(jié)構(gòu)示意圖。
[0075]圖3為本發(fā)明所述新節(jié)點從已配置節(jié)點獲取地址的流程示意圖。
[0076] 圖4為本發(fā)明所述地址回收流程示意圖。
[0077] 圖5為本發(fā)明所述網(wǎng)絡(luò)分裂流程示意圖。
[0078] 圖6為本發(fā)明所述網(wǎng)絡(luò)合并流程示意圖。
【具體實施方式】:
[0079] 本發(fā)明提供了一種下一代無線網(wǎng)絡(luò)的通信實現(xiàn)方法,在本發(fā)明中,當(dāng)無線網(wǎng)絡(luò)發(fā) 生分裂和合并時能夠確保網(wǎng)絡(luò)地址的唯一性和通信正確性。所述下一代無線網(wǎng)絡(luò)中的每個 節(jié)點通過本發(fā)明所提供的通信實現(xiàn)方法,可擁有具有唯一性的地址,彼此之間實現(xiàn)正確的 通信。本發(fā)明可應(yīng)用于交通路況檢控及農(nóng)業(yè)工程化等諸多領(lǐng)域,具有廣泛的應(yīng)用前景。
[0080] 圖1為本發(fā)明所述的下一代無線網(wǎng)絡(luò)拓撲結(jié)構(gòu)示意圖。所述無線網(wǎng)絡(luò)1包括三 類節(jié)點:坐標節(jié)點2,已配置節(jié)點3和新節(jié)點4 ;所述無線網(wǎng)絡(luò)1中包含四個坐標節(jié)點2,分 為稱為東坐標節(jié)點,南坐標節(jié)點,西坐標節(jié)點和北坐標節(jié)點,東坐標節(jié)點位于所述無線網(wǎng)絡(luò) 1東邊的邊界處,南坐標節(jié)點位于所述無線網(wǎng)絡(luò)1南邊的邊界處,西坐標節(jié)點位于所述無線 網(wǎng)絡(luò)1西邊的邊界處,北坐標節(jié)點位于所述無線網(wǎng)絡(luò)1北邊的邊界處;已配置節(jié)點3為已經(jīng) 配置地址的節(jié)點,新節(jié)點4為沒有配置地址的節(jié)點。
[0081] 圖2為本發(fā)明所述節(jié)點地址結(jié)構(gòu)示意圖。無線網(wǎng)絡(luò)啟動后,所有節(jié)點均為新節(jié)點, 并選舉出東坐標節(jié)點,南坐標節(jié)點,西坐標節(jié)點和北坐標節(jié)點;選舉出的東坐標節(jié)點,南坐 標節(jié)點,西坐標節(jié)點和北坐標節(jié)點分別廣播信標消息;無線網(wǎng)絡(luò)中的新節(jié)點根據(jù)接收到的 坐標節(jié)點的信標消息確定自己的四元組坐標,四元組坐標包括到達東坐標節(jié)點的跳數(shù),到 達南坐標節(jié)點的跳數(shù),到達西坐標節(jié)點的跳數(shù)以及到達北坐標節(jié)點的跳數(shù);其中,東坐標節(jié) 點到達東坐標節(jié)點的跳數(shù)為0,南坐標節(jié)點到達南坐標節(jié)點的跳數(shù)為0,西坐標節(jié)點到達西 坐標節(jié)點的跳數(shù)為0,北坐標節(jié)點到達北坐標節(jié)點的跳數(shù)為〇 ;坐標節(jié)點廣播的信標消息的 負載為自己的四元組坐標,無線網(wǎng)絡(luò)中的新節(jié)點通過判斷坐標節(jié)點廣播的信標消息的負載 判斷該消息來源于哪個坐標節(jié)點,從而計算出相應(yīng)的坐標值;
[0082] 每個新節(jié)點用硬件ID作為臨時地址,例如MAC地址或者初始ID ;在一個新節(jié)點獲 取地址之前,由其臨時地址唯一標識;
[0083] 無線網(wǎng)絡(luò)中的每個新節(jié)點定期在一跳范圍內(nèi)廣播信標消息,消息源地址為其臨時 地址;一個節(jié)點通過現(xiàn)有技術(shù)(例如AoA算法)接收鄰居節(jié)點的信標消息獲取與該鄰居節(jié) 點的相對角度;
[0084] 新節(jié)點X根據(jù)下述方法判斷自己是否為坐標節(jié)點:
[0085] 1)如果新節(jié)點X與其所有鄰居節(jié)點的相對角度都在區(qū)間(270°,360° ]或者 (0°,90° ],那么新節(jié)點X則將自己標記為西坐標節(jié)點;
[0086] 2)如果新節(jié)點X與其所有鄰居節(jié)點的相對角度都在區(qū)間(180°,360° ],那么新 節(jié)點X則將自己標記為北坐標節(jié)點;
[0087] 3)如果新節(jié)點X與其所有鄰居節(jié)點的相對角度都在區(qū)間(90°,270° ],那么新 節(jié)點X則將自己標記為東坐標節(jié)點;
[0088] 4)如果新節(jié)點X與其所有鄰居節(jié)點的相對角度都在區(qū)間(0°,180° ],那么新節(jié) 點X則將自己標記為南坐標節(jié)點;
[0089] 如果上述坐標節(jié)點產(chǎn)生過程產(chǎn)生多于4個的坐標節(jié)點,那么采用下述算法確定無 線網(wǎng)絡(luò)內(nèi)最終4個坐標節(jié)點:每個節(jié)點將自己標記為坐標節(jié)點后,在無線網(wǎng)絡(luò)內(nèi)廣播一個 信標消息,當(dāng)一個西坐標節(jié)點收到另外一個西坐標節(jié)點廣播的信標消息后,對比自己的臨 時地址與接收到的信標消息的源地址,如果自己的臨時地址更大,則將自己重新標記為新 節(jié)點,最終地址最小的西坐標節(jié)點成為無線網(wǎng)絡(luò)中唯一的西坐標節(jié)點;當(dāng)一個東坐標節(jié)點 收到另外一個東坐標節(jié)點廣播的信標消息后,對比自己的臨時地址與接收到的信標消息的 源地址,如果自己的臨時地址更大,則將自己重新標記為新節(jié)點,最終只有地址最小的東坐 標節(jié)點成為無線網(wǎng)絡(luò)中唯一的東坐標節(jié)點;當(dāng)一個南坐標節(jié)點收到另外一個南坐標節(jié)點廣 播的信標消息后,對比自己的臨時地址與接收到的信標消息的源地址,如果自己的臨時地 址更大,則將自己重新標記為新節(jié)點,最終只有地址最小的南坐標節(jié)點成為無線網(wǎng)絡(luò)中唯 一的南坐標節(jié)點;當(dāng)一個北坐標節(jié)點收到另外一個北坐標節(jié)點廣播的信標消息后,對比自 己的臨時地址與接收到的信標消息的源地址,如果自己的臨時地址更大,則將自己重新標 記為新節(jié)點,最終只有地址最小的北坐標節(jié)點成為無線網(wǎng)絡(luò)中唯一的北坐標節(jié)點;
[0090] 一個節(jié)點的地址由四部分組成,第一部分為i比特的無線網(wǎng)絡(luò)ID,一個無線網(wǎng)絡(luò) 中所有節(jié)點的無線網(wǎng)絡(luò)ID都相同,它唯一標識一個無線網(wǎng)絡(luò);第二部分為四元組坐標,四 元組坐標中的每個元素由j比特表示;第三部分為k比特的節(jié)點ID,用于區(qū)分一個無線網(wǎng) 絡(luò)中具有相同四元組坐標的節(jié)點;第四部分為m比特的新節(jié)點ID,用于在地址初始化之后 分配給新加入的新節(jié)點,i、j、k、m為正整數(shù)。這些變量可以根據(jù)實際應(yīng)用進行動態(tài)調(diào)整;
[0091] 無線網(wǎng)絡(luò)啟動后,進行無線網(wǎng)絡(luò)初始化;所有節(jié)點均為新節(jié)點,無線網(wǎng)絡(luò)首先產(chǎn)生 東坐標節(jié)點,南坐標節(jié)點,西坐標節(jié)點和北坐標節(jié)點,其中,西坐標節(jié)點的初始四元組坐標 為(1,1,0, 1),東坐標節(jié)點的初始四元組坐標為(0, 1,1,1),北坐標節(jié)點的初始四元組坐標 為(1,1,1,0),南坐標節(jié)點的初始四元組坐標為(1,〇,1,1),然后,每個坐標節(jié)點在無線網(wǎng) 絡(luò)內(nèi)廣播信標消息,信標消息負載為初始四元組坐標以及跳數(shù);其中,西坐標節(jié)點隨機產(chǎn)生 一個無線網(wǎng)絡(luò)ID,其廣播的信標消息負載還包括該無線網(wǎng)絡(luò)ID ;信標消息負載中的跳數(shù)初 始值為〇,信標消息被轉(zhuǎn)發(fā)一次,跳數(shù)遞增1 ;
[0092] 無線網(wǎng)絡(luò)中的新節(jié)點收到坐標節(jié)點廣播的信標消息后,根據(jù)信標消息中的四元組 坐標來判斷是東坐標節(jié)點,南坐標節(jié)點,西坐標節(jié)點還是北坐標節(jié)點,然后選擇到達東坐標 節(jié)點的最小跳數(shù),到達南坐標節(jié)點的最小跳數(shù),到達西坐標節(jié)點的最小跳數(shù),到達北坐標節(jié) 點的最小跳數(shù)來建立自己的四元組坐標;當(dāng)新節(jié)點收到西坐標節(jié)點廣播的信標消息后,記 錄下負載中的無線網(wǎng)絡(luò)ID,并與建立的四元組坐標構(gòu)建地址,其中,節(jié)點ID和新節(jié)點ID為 〇 ;
[0093] 新節(jié)點獲取地址后,如果地址的節(jié)點ID為q,新節(jié)點在一跳范圍內(nèi)廣播信標消息, 信標消息負載為空,信標消息源地址為自己配置的地址,新節(jié)點將自己標記為已配置節(jié)點; 新節(jié)點的鄰居新節(jié)點收到新節(jié)點廣播的信標消息后,如果鄰居新節(jié)點的四元組坐標等于新 節(jié)點的四元組坐標,那么鄰居新節(jié)點執(zhí)行賦值操作,q = q+Ι,然后鄰居新節(jié)點將自己的節(jié) 點ID設(shè)置為q,廣播信標消息,并將自己標記為已配置節(jié)點;新節(jié)點的所有鄰居新節(jié)點重復(fù) 上述配置過程,直到新節(jié)點所有鄰居新節(jié)點都轉(zhuǎn)換為已配置節(jié)點為止;
[0094] 一個無線網(wǎng)絡(luò)內(nèi)具有相同四元組坐標的節(jié)點ID均不同。
[0095] 上述過程可以確保每個已配置節(jié)點地址在無線網(wǎng)絡(luò)中的地址唯一性,因此確保了 節(jié)點之間通信的正確性。
[0096] 圖3為本發(fā)明所述新節(jié)點從已配置節(jié)點獲取地址的流程示意圖。無線網(wǎng)絡(luò)初始 化結(jié)束后,已配置節(jié)點在一跳范圍內(nèi)廣播信標消息,信標消息負載為可分配新節(jié)點ID的長 度;
[0097] 新節(jié)點X加入無線網(wǎng)絡(luò)后,開始偵聽鄰居已配置節(jié)點的信標消息,然后選擇從可 分配新節(jié)點ID長度最大的鄰居已配置節(jié)點X2獲取地址,假設(shè)已配置節(jié)點X2的新節(jié)點ID 區(qū)間為[L,U],L和U為正整數(shù)且L〈U,新節(jié)點X從已配置節(jié)點X2獲取地址的過程為:
[0098] 步驟101 :開始;
[0099] 步驟102 :新節(jié)點X向己配置節(jié)點X2發(fā)送地址請求消息,地址請求消息源地址為 新節(jié)點X的臨時地址;
[0100] 步驟103 :已配置節(jié)點X2收到地址請求消息后,選擇一段新節(jié)點ID空間[L1,U], L<L1<U且L1為正整數(shù),然后向新節(jié)點XI返回地址響應(yīng)消息,消息負載為地址L1和U,然后 將自己的新節(jié)點ID空間更新為地址空間[L,L1-1];
[0101] 步驟104 :新節(jié)點X收到地址響應(yīng)消息后,將地址L1作為自己的新節(jié)點ID,然后與 已配置節(jié)點X2的無線網(wǎng)絡(luò)ID,四元組坐標和節(jié)點ID相結(jié)合形成地址,將自己標記為已配置 節(jié)點,同時將地址空間[L+l,L1]作為自己的新節(jié)點ID空間;
[0102] 步驟105 :結(jié)束。
[0103] 通過上述過程,新節(jié)點可以通過鄰居節(jié)點獲取具有唯一性的地址,從而進行正確 性。
[0104] 圖4為本發(fā)明所述地址回收流程示意圖。當(dāng)已配置節(jié)點X的新節(jié)點ID長度為0 時,其新節(jié)點ID空間記做[0, 0],并發(fā)起地址回收過程:
[0105] 步驟201:開始;
[0106] 步驟202 :已配置節(jié)點X廣播地址回收消息;
[0107] 步驟203 :無線網(wǎng)絡(luò)中與已配置節(jié)點X具有相同無線網(wǎng)絡(luò)ID,四元組坐標和節(jié)點 ID的節(jié)點收到地址回收消息后,向己配置節(jié)點X返回地址確認消息,地址確認消息負載為 自己的新節(jié)點ID范圍;
[0108] 步驟204 :在規(guī)定時間后,已配置節(jié)點X整理所收到的地址確認消息,選擇一段最 長的連續(xù)沒有被占用的新節(jié)點ID空間作為自己的新節(jié)點ID空間;
[0109] 步驟205:結(jié)束;
[0110] 步驟2〇4中,規(guī)定時間設(shè)定為a .cl.t,其中d為無線網(wǎng)絡(luò)直徑,t為一跳傳輸延 遲,α為調(diào)節(jié)參數(shù)。取值范圍一般為大于2的數(shù)值。
[0111] 上述過程實現(xiàn)了地址配置空間的回收,從而確保具有足夠的地址空間進行分配, 增加了地址配置成功率。
[0112] 圖5為本發(fā)明所述網(wǎng)絡(luò)分裂流程示意圖。如果下述情況之一發(fā)生,則一個已配置 節(jié)點X判定自己脫離了原來的無線網(wǎng)絡(luò):
[0113] 第一種情況:已配置節(jié)點X在規(guī)定時間內(nèi)沒有收到任何節(jié)點廣播的信標消息,其 中規(guī)定時間設(shè)定為α ·?!·?,其中d為無線網(wǎng)絡(luò)直徑,t為一跳傳輸延遲,α為調(diào)節(jié)參數(shù)。 α -般為大于2的數(shù)值。
[0114]第二種情況:已配置節(jié)點收到的所有信標消息均來自新節(jié)點;
[0115]第三種情況:已配置節(jié)點X收到的所有信標消息的無線網(wǎng)絡(luò)ID與自己的無線網(wǎng)絡(luò) ID都不同;
[0116]在第一種情況下,已配置節(jié)點X保留原來的地址,并轉(zhuǎn)換為新節(jié)點;
[0117]在第二種情況下,已配置節(jié)點X保留原來的地址,并執(zhí)行下述步驟:
[0118] 步驟301:開始;
[0119]步驟302 :已配置節(jié)點X產(chǎn)生一個新的無線網(wǎng)絡(luò)ID,并廣播一個地址更新消息,地 址更新消息負載為新產(chǎn)生的無線網(wǎng)絡(luò)ID和自己原來的無線網(wǎng)絡(luò)ID ;
[0120]步驟303 :無線網(wǎng)絡(luò)中的新節(jié)點收到該地址更新消息后,判斷自己原來地址的無 線網(wǎng)絡(luò)ID與已配置節(jié)點X原來地址的無線網(wǎng)絡(luò)ID是否相同,如果是,則進行步驟3〇4,否則 進行步驟305 ;
[0121]步驟304 :無線網(wǎng)絡(luò)中的新節(jié)點將原來地址的無線網(wǎng)絡(luò)ID更新為地址更新消息中 新產(chǎn)生的無線網(wǎng)絡(luò)ID,地址其他部分保持不變,并將更新后的地址作為自己的地址并轉(zhuǎn)換 為已配置節(jié)點,進行步驟306 ;
[0122]步驟305 :無線網(wǎng)絡(luò)中的新節(jié)點放棄原來的地址,并根據(jù)步驟1〇1到步驟1〇5重新 獲取地址并轉(zhuǎn)換為已配置節(jié)點;
[0123] 步驟306:結(jié)束;
[0124]在第三種情況下,已配置節(jié)點X檢測到自己脫離原來的無線網(wǎng)絡(luò)后,將自己標記 為新節(jié)點,然后在新的無線網(wǎng)絡(luò)執(zhí)行步驟101到步驟105獲取地址。
[0125]上述過程中,節(jié)點脫離了原來的網(wǎng)絡(luò)后,會重新獲取具有唯一性的地址,然后進行 正確的通信。
[0126]圖6為本發(fā)明所述網(wǎng)絡(luò)合并流程示意圖。如果下述情況之一發(fā)生,則已配置節(jié)點 X判定自己的無線網(wǎng)絡(luò)與其他無線網(wǎng)絡(luò)發(fā)生了合并:
[0127]第一種情況:已配置節(jié)點X收到了一條信標消息,該信標消息的源地址無線網(wǎng)絡(luò) ID與自己的無線網(wǎng)絡(luò)ID相同,同時已配置節(jié)點X也收到了一條信標信息,該信標消息的源 地址無線網(wǎng)絡(luò)ID與自己的無線網(wǎng)絡(luò)ID不同;
[0128] 第二種情況:已配置節(jié)點X的地址與另外一個已配置節(jié)點的地址相同;
[0129] 在第一種情況下,假設(shè)已配置節(jié)點X位于無線網(wǎng)絡(luò)MANET1中,已配置節(jié)點Y位于 無線網(wǎng)絡(luò)MANET2中,無線網(wǎng)絡(luò)MANET1中的節(jié)點數(shù)量小于無線網(wǎng)絡(luò)MANET2中的節(jié)點數(shù)量; 當(dāng)已配置節(jié)點X收到已配置節(jié)點Y的信標消息并檢測到自己的無線網(wǎng)絡(luò)ID與已配置節(jié)點 Y的無線網(wǎng)絡(luò)ID不同時,已配置節(jié)點X發(fā)起下述合并操作:
[0130] 步驟401:開始;
[0131] 步驟402 :已配置節(jié)點X向已配置節(jié)點Y發(fā)送一條合并消息;
[0132] 步驟403 :已配置節(jié)點Y在無線網(wǎng)絡(luò)內(nèi)廣播合并消息,無線網(wǎng)絡(luò)MANET2中的已配 置節(jié)點收到該合并消息后,向已配置節(jié)點Y返回一個合并確認消息,無線網(wǎng)絡(luò)MANET1中的 己配置節(jié)點收到已配置節(jié)點Y的合并消息后,丟棄該合并消息;
[0133] 步驟404 :已配置節(jié)點Y查看所有合并確認消息,計算出無線網(wǎng)絡(luò)MANET2中節(jié)點 總數(shù)量以及無線網(wǎng)絡(luò)MANET2中的所有已配置節(jié)點的四元組坐標的第一個元素到達東坐標 節(jié)點的跳數(shù)的最大值E max,第二個元素到達南坐標節(jié)點的跳數(shù)的最大值Snax,第三個元素到 達西坐標節(jié)點的跳數(shù)最大值W max,第四個元素到達北坐標節(jié)點的跳數(shù)的最大值Ν_,,然后向 己配置節(jié)點X返回一個合并初始化消息,合并初始化消息負載為無線網(wǎng)絡(luò)ΜΑΝΕΤ2的節(jié)點總 數(shù)量以及到達東坐標節(jié)點的跳數(shù)的最大值Ε_,到達南坐標節(jié)點的跳數(shù)的最大值S max,到達 西坐標節(jié)點的跳數(shù)的最大值W_和到達北坐標節(jié)點的跳數(shù)的最大值Nnax。;
[0134] 步驟405 :已配置節(jié)點X收到合并初始化消息后,由于無線網(wǎng)絡(luò)MANET2中的節(jié)點 數(shù)量比無線網(wǎng)絡(luò)MANET1的節(jié)點數(shù)量多,已配置節(jié)點X在無線網(wǎng)絡(luò)中廣播合并地址消息,合 并地址消息負載為無線網(wǎng)絡(luò)MANET 2的無線網(wǎng)絡(luò)ID,以及到達東坐標節(jié)點的跳數(shù)的最大值 Ε_,到達南坐標節(jié)點的跳數(shù)的最大值S_,到達西坐標節(jié)點的跳數(shù)的最大值L和到達北坐 標節(jié)點的跳數(shù)的最大值N_;
[0135] 步驟406 :無線網(wǎng)絡(luò)MANET1中的已配置節(jié)點XI收到已配置節(jié)點X的合并地址消 息后,將自己地址中的無線網(wǎng)絡(luò)ID更新為無線網(wǎng)絡(luò)MANET2的無線網(wǎng)絡(luò)ID,假設(shè)已配置節(jié) 點XI到達東坐標節(jié)點的跳數(shù)為E xl,到達南坐標節(jié)點的跳數(shù)為Sxl,到達西坐標節(jié)點的跳數(shù)為 Wxl,到達北坐標節(jié)點的跳數(shù)為Ν?1,已配置節(jié)點XI執(zhí)行以下賦值操作:EX1 = Exl+E_+l,Sxl = Sxi+Smax+1, ffxl = wxl+ffmax+l, Nxl = Nxl+Nmax+1 ;
[0136]步驟4〇7 :已配置節(jié)點Π 判斷跳數(shù)Exl,Sxl,Wxl和Nxl的值是否都小于或者等于 2j_l,如果是,進行步驟408,否則進行步驟409 ;
[0137]步驟408 :已配置節(jié)點XI將自己標記為新節(jié)點,并執(zhí)行步驟101到步驟105重新 獲取地址,執(zhí)行步驟410 ;
[0138]步驟409 :已配置節(jié)點XI將地址中的四元組坐標更新為執(zhí)行步驟406后的四元組 坐標,從而獲得了無線網(wǎng)絡(luò)合并后新的地址;
[0139] 步驟410:結(jié)束;
[0140]通過上述過程,兩個網(wǎng)絡(luò)合并之后仍能確保每個節(jié)點的唯一性,從而確保了通信 的正確性。
[0141]在第二種情況下,假設(shè)無線網(wǎng)絡(luò)ID的長度為i比特,有X個無線網(wǎng)絡(luò),每個無線網(wǎng) 絡(luò)產(chǎn)生一個無線網(wǎng)絡(luò)ID,那么這些無線網(wǎng)絡(luò)的無線網(wǎng)絡(luò)ID沖突的概率P如公式(1)所示:
[0142]
【權(quán)利要求】
1. 一種下一代無線網(wǎng)絡(luò)的通信實現(xiàn)方法,其特征在于,所述無線網(wǎng)絡(luò)包括三類節(jié)點: 坐標節(jié)點,已配置節(jié)點和新節(jié)點;所述無線網(wǎng)絡(luò)中包含四個坐標節(jié)點,分為稱為東坐標節(jié) 點,南坐標節(jié)點,西坐標節(jié)點和北坐標節(jié)點,東坐標節(jié)點位于所述無線網(wǎng)絡(luò)東邊的邊界處, 南坐標節(jié)點位于所述無線網(wǎng)絡(luò)南邊的邊界處,西坐標節(jié)點位于所述無線網(wǎng)絡(luò)西邊的邊界 處,北坐標節(jié)點位于所述無線網(wǎng)絡(luò)北邊的邊界處;已配置節(jié)點為已經(jīng)配置地址的節(jié)點,新節(jié) 點為沒有配置地址的節(jié)點; 無線網(wǎng)絡(luò)啟動后,所有節(jié)點均為新節(jié)點,并選舉出東坐標節(jié)點,南坐標節(jié)點,西坐標節(jié) 點和北坐標節(jié)點;選舉出的東坐標節(jié)點,南坐標節(jié)點,西坐標節(jié)點和北坐標節(jié)點分別廣播信 標消息;無線網(wǎng)絡(luò)中的新節(jié)點根據(jù)接收到的坐標節(jié)點的信標消息確定自己的四元組坐標, 四元組坐標包括到達東坐標節(jié)點的跳數(shù),到達南坐標節(jié)點的跳數(shù),到達西坐標節(jié)點的跳數(shù) 以及到達北坐標節(jié)點的跳數(shù);其中,東坐標節(jié)點到達東坐標節(jié)點的跳數(shù)為0,南坐標節(jié)點到 達南坐標節(jié)點的跳數(shù)為0,西坐標節(jié)點到達西坐標節(jié)點的跳數(shù)為0,北坐標節(jié)點到達北坐標 節(jié)點的跳數(shù)為0 ;坐標節(jié)點廣播的信標消息的負載為自己的四元組坐標,無線網(wǎng)絡(luò)中的新 節(jié)點通過判斷坐標節(jié)點廣播的信標消息的負載判斷該消息來源于哪個坐標節(jié)點,從而計算 出相應(yīng)的坐標值; 每個新節(jié)點用硬件ID作為臨時地址;在一個新節(jié)點獲取地址之前,由其臨時地址唯一 標識; 無線網(wǎng)絡(luò)中的每個新節(jié)點定期在一跳范圍內(nèi)廣播信標消息,消息源地址為其臨時地 址;一個節(jié)點通過接收鄰居節(jié)點的信標消息獲取與該鄰居節(jié)點的相對角度; 新節(jié)點X根據(jù)下述方法判斷自己是否為坐標節(jié)點: 1) 如果新節(jié)點X與其所有鄰居節(jié)點的相對角度都在區(qū)間(270 °,360° ]或者 (0°,90° ],那么新節(jié)點X則將自己標記為西坐標節(jié)點; 2) 如果新節(jié)點X與其所有鄰居節(jié)點的相對角度都在區(qū)間(180°,360° ],那么新節(jié)點 X則將自己標記為北坐標節(jié)點; 3) 如果新節(jié)點X與其所有鄰居節(jié)點的相對角度都在區(qū)間(90°,270° ],那么新節(jié)點 X則將自己標記為東坐標節(jié)點; 4) 如果新節(jié)點X與其所有鄰居節(jié)點的相對角度都在區(qū)間(0°,180° ],那么新節(jié)點X 則將自己標記為南坐標節(jié)點; 如果上述坐標節(jié)點產(chǎn)生過程產(chǎn)生多于4個的坐標節(jié)點,那么采用下述算法確定無線網(wǎng) 絡(luò)內(nèi)最終4個坐標節(jié)點:每個節(jié)點將自己標記為坐標節(jié)點后,在無線網(wǎng)絡(luò)內(nèi)廣播一個信標 消息,當(dāng)一個西坐標節(jié)點收到另外一個西坐標節(jié)點廣播的信標消息后,對比自己的臨時地 址與接收到的信標消息的源地址,如果自己的臨時地址更大,則將自己重新標記為新節(jié)點, 最終地址最小的西坐標節(jié)點成為無線網(wǎng)絡(luò)中唯一的西坐標節(jié)點;當(dāng)一個東坐標節(jié)點收到 另外一個東坐標節(jié)點廣播的信標消息后,對比自己的臨時地址與接收到的信標消息的源地 址,如果自己的臨時地址更大,則將自己重新標記為新節(jié)點,最終只有地址最小的東坐標節(jié) 點成為無線網(wǎng)絡(luò)中唯一的東坐標節(jié)點;當(dāng)一個南坐標節(jié)點收到另外一個南坐標節(jié)點廣播的 信標消息后,對比自己的臨時地址與接收到的信標消息的源地址,如果自己的臨時地址更 大,則將自己重新標記為新節(jié)點,最終只有地址最小的南坐標節(jié)點成為無線網(wǎng)絡(luò)中唯一的 南坐標節(jié)點;當(dāng)一個北坐標節(jié)點收到另外一個北坐標節(jié)點廣播的信標消息后,對比自己的 臨時地址與接收到的信標消息的源地址,如果自己的臨時地址更大,則將自己重新標記為 新節(jié)點,最終只有地址最小的北坐標節(jié)點成為無線網(wǎng)絡(luò)中唯一的北坐標節(jié)點; 一個節(jié)點的地址由四部分組成,第一部分為i比特的無線網(wǎng)絡(luò)ID,一個無線網(wǎng)絡(luò)中所 有節(jié)點的無線網(wǎng)絡(luò)ID都相同,它唯一標識一個無線網(wǎng)絡(luò);第二部分為四元組坐標,四元組 坐標中的每個元素由j比特表示;第三部分為k比特的節(jié)點ID,用于區(qū)分一個無線網(wǎng)絡(luò)中 具有相同四元組坐標的節(jié)點;第四部分為m比特的新節(jié)點ID,用于在地址初始化之后分配 給新加入的新節(jié)點,i、j、k、m為正整數(shù)。
2. 根據(jù)權(quán)利要求1所述的下一代無線網(wǎng)絡(luò)的通信實現(xiàn)方法,其特征在于,無線網(wǎng)絡(luò)啟 動后,進行無線網(wǎng)絡(luò)初始化;所有節(jié)點均為新節(jié)點,無線網(wǎng)絡(luò)首先產(chǎn)生東坐標節(jié)點,南坐標 節(jié)點,西坐標節(jié)點和北坐標節(jié)點,其中,西坐標節(jié)點的初始四元組坐標為(1,1,〇, 1),東坐標 節(jié)點的初始四元組坐標為(〇, 1,1,1),北坐標節(jié)點的初始四元組坐標為(1,1,1,〇),南坐標 節(jié)點的初始四元組坐標為(1,〇, 1,1),然后,每個坐標節(jié)點在無線網(wǎng)絡(luò)內(nèi)廣播信標消息,信 標消息負載為初始四元組坐標以及跳數(shù);其中,西坐標節(jié)點隨機產(chǎn)生一個無線網(wǎng)絡(luò)ID,其 廣播的信標消息負載還包括該無線網(wǎng)絡(luò)ID ;信標消息負載中的跳數(shù)初始值為0,信標消息 被轉(zhuǎn)發(fā)一次,跳數(shù)遞增1 ; 無線網(wǎng)絡(luò)中的新節(jié)點收到坐標節(jié)點廣播的信標消息后,根據(jù)信標消息中的四元組坐標 來判斷是東坐標節(jié)點,南坐標節(jié)點,西坐標節(jié)點還是北坐標節(jié)點,然后選擇到達東坐標節(jié)點 的最小跳數(shù),到達南坐標節(jié)點的最小跳數(shù),到達西坐標節(jié)點的最小跳數(shù),到達北坐標節(jié)點的 最小跳數(shù)來建立自己的四元組坐標;當(dāng)新節(jié)點收到西坐標節(jié)點廣播的信標消息后,記錄下 負載中的無線網(wǎng)絡(luò)ID,并與建立的四元組坐標構(gòu)建地址,其中,節(jié)點ID和新節(jié)點ID為0 ; 新節(jié)點獲取地址后,如果地址的節(jié)點ID為q,新節(jié)點在一跳范圍內(nèi)廣播信標消息,信標 消息負載為空,信標消息源地址為自己配置的地址,新節(jié)點將自己標記為已配置節(jié)點;新節(jié) 點的鄰居新節(jié)點收到新節(jié)點廣播的信標消息后,如果鄰居新節(jié)點的四元組坐標等于新節(jié)點 的四元組坐標,那么鄰居新節(jié)點執(zhí)行賦值操作,q = q+Ι,然后鄰居新節(jié)點將自己的節(jié)點ID 設(shè)置為q,廣播信標消息,并將自己標記為已配置節(jié)點;新節(jié)點的所有鄰居新節(jié)點重復(fù)上述 配置過程,直到新節(jié)點所有鄰居新節(jié)點都轉(zhuǎn)換為已配置節(jié)點為止; 一個無線網(wǎng)絡(luò)內(nèi)具有相同四元組坐標的節(jié)點ID均不同。
3. 根據(jù)權(quán)利要求2所述的下一代無線網(wǎng)絡(luò)的通信實現(xiàn)方法,其特征在于,無線網(wǎng)絡(luò)初 始化結(jié)束后,已配置節(jié)點在一跳范圍內(nèi)廣播信標消息,信標消息負載為可分配新節(jié)點ID的 長度; 新節(jié)點X加入無線網(wǎng)絡(luò)后,開始偵聽鄰居已配置節(jié)點的信標消息,然后選擇從可分配 新節(jié)點ID長度最大的鄰居已配置節(jié)點X2獲取地址,假設(shè)已配置節(jié)點X2的新節(jié)點ID區(qū)間 為[L,U],L和U為正整數(shù)且L〈U,新節(jié)點X從已配置節(jié)點X2獲取地址的過程為: 步驟101 :開始; 步驟102 :新節(jié)點X向已配置節(jié)點X2發(fā)送地址請求消息,地址請求消息源地址為新節(jié) 點X的臨時地址; 步驟103 :已配置節(jié)點X2收到地址請求消息后,選擇一段新節(jié)點ID空間[L1,U], L〈L1〈U且L1為正整數(shù),然后向新節(jié)點XI返回地址響應(yīng)消息,消息負載為地址L1和U,然后 將自己的新節(jié)點ID空間更新為地址空間[L,L1-1]; 步驟104 :新節(jié)點X收到地址響應(yīng)消息后,將地址L1作為自己的新節(jié)點ID,然后與已配 置節(jié)點X2的無線網(wǎng)絡(luò)ID,四元組坐標和節(jié)點ID相結(jié)合形成地址,將自己標記為已配置節(jié) 點,同時將地址空間[L+l,L1]作為自己的新節(jié)點ID空間; 步驟105 :結(jié)束。
4. 根據(jù)權(quán)利要求3所述的下一代無線網(wǎng)絡(luò)的通信實現(xiàn)方法,其特征在于,當(dāng)已配置節(jié) 點X的新節(jié)點ID長度為0時,其新節(jié)點ID空間記做[0, 0],并發(fā)起地址回收過程: 步驟201 :開始; 步驟202 :已配置節(jié)點X廣播地址回收消息; 步驟203 :無線網(wǎng)絡(luò)中與已配置節(jié)點X具有相同無線網(wǎng)絡(luò)ID,四元組坐標和節(jié)點ID的 節(jié)點收到地址回收消息后,向已配置節(jié)點X返回地址確認消息,地址確認消息負載為自己 的新節(jié)點ID范圍; 步驟204 :在規(guī)定時間后,已配置節(jié)點X整理所收到的地址確認消息,選擇一段最長的 連續(xù)沒有被占用的新節(jié)點ID空間作為自己的新節(jié)點ID空間; 步驟205 :結(jié)束; 步驟204中,規(guī)定時間設(shè)定為α ·(! ·?,其中d為無線網(wǎng)絡(luò)直徑,t為一跳傳輸延遲,α 為調(diào)節(jié)參數(shù)。
5. 根據(jù)權(quán)利要求1所述的下一代無線網(wǎng)絡(luò)的通信實現(xiàn)方法,其特征在于,如果下述情 況之一發(fā)生,則一個已配置節(jié)點X判定自己脫離了原來的無線網(wǎng)絡(luò): 第一種情況:已配置節(jié)點X在規(guī)定時間內(nèi)沒有收到任何節(jié)點廣播的信標消息; 第二種情況:已配置節(jié)點收到的所有信標消息均來自新節(jié)點; 第三種情況:已配置節(jié)點X收到的所有信標消息的無線網(wǎng)絡(luò)ID與自己的無線網(wǎng)絡(luò)ID 都不同; 在第一種情況下,已配置節(jié)點X保留原來的地址,并轉(zhuǎn)換為新節(jié)點; 在第二種情況下,已配置節(jié)點X保留原來的地址,并執(zhí)行下述步驟: 步驟301 :開始; 步驟302 :已配置節(jié)點X產(chǎn)生一個新的無線網(wǎng)絡(luò)ID,并廣播一個地址更新消息,地址更 新消息負載為新產(chǎn)生的無線網(wǎng)絡(luò)ID和自己原來的無線網(wǎng)絡(luò)ID ; 步驟303 :無線網(wǎng)絡(luò)中的新節(jié)點收到該地址更新消息后,判斷自己原來地址的無線網(wǎng) 絡(luò)ID與已配置節(jié)點X原來地址的無線網(wǎng)絡(luò)ID是否相同,如果是,則進行步驟304,否則進行 步驟305 ; 步驟304 :無線網(wǎng)絡(luò)中的新節(jié)點將原來地址的無線網(wǎng)絡(luò)ID更新為地址更新消息中新產(chǎn) 生的無線網(wǎng)絡(luò)ID,地址其他部分保持不變,并將更新后的地址作為自己的地址并轉(zhuǎn)換為已 配置節(jié)點,進行步驟306 ; 步驟305 :無線網(wǎng)絡(luò)中的新節(jié)點放棄原來的地址,并根據(jù)步驟101到步驟105重新獲取 地址并轉(zhuǎn)換為已配置節(jié)點; 步驟306 :結(jié)束; 在第三種情況下,已配置節(jié)點X檢測到自己脫離原來的無線網(wǎng)絡(luò)后,將自己標記為新 節(jié)點,然后在新的無線網(wǎng)絡(luò)執(zhí)行步驟101到步驟105獲取地址。
6. 根據(jù)權(quán)利要求4所述的下一代無線網(wǎng)絡(luò)的通信實現(xiàn)方法,其特征在于,如果下述情 況之一發(fā)生,則已配置節(jié)點X判定自己的無線網(wǎng)絡(luò)與其他無線網(wǎng)絡(luò)發(fā)生了合并: 第一種情況:已配置節(jié)點X收到了一條信標消息,該信標消息的源地址無線網(wǎng)絡(luò)ID與 自己的無線網(wǎng)絡(luò)ID相同,同時已配置節(jié)點X也收到了一條信標信息,該信標消息的源地址 無線網(wǎng)絡(luò)ID與自己的無線網(wǎng)絡(luò)ID不同; 第二種情況:已配置節(jié)點X的地址與另外一個已配置節(jié)點的地址相同; 在第一種情況下,假設(shè)已配置節(jié)點X位于無線網(wǎng)絡(luò)MANET1中,已配置節(jié)點Y位于無線 網(wǎng)絡(luò)MANET2中,無線網(wǎng)絡(luò)MANET1中的節(jié)點數(shù)量小于無線網(wǎng)絡(luò)MANET2中的節(jié)點數(shù)量;當(dāng)已 配置節(jié)點X收到已配置節(jié)點Y的信標消息并檢測到自己的無線網(wǎng)絡(luò)ID與已配置節(jié)點Y的 無線網(wǎng)絡(luò)ID不同時,已配置節(jié)點X發(fā)起下述合并操作: 步驟401 :開始; 步驟402 :已配置節(jié)點X向已配置節(jié)點Y發(fā)送一條合并消息; 步驟403 :已配置節(jié)點Y在無線網(wǎng)絡(luò)內(nèi)廣播合并消息,無線網(wǎng)絡(luò)MANET2中的已配置節(jié) 點收到該合并消息后,向已配置節(jié)點Y返回一個合并確認消息,無線網(wǎng)絡(luò)MANET1中的已配 置節(jié)點收到已配置節(jié)點Y的合并消息后,丟棄該合并消息; 步驟404 :已配置節(jié)點Y查看所有合并確認消息,計算出無線網(wǎng)絡(luò)MANET2中節(jié)點總數(shù) 量以及無線網(wǎng)絡(luò)MANET2中的所有已配置節(jié)點的四元組坐標的第一個元素到達東坐標節(jié)點 的跳數(shù)的最大值Emax,第二個元素到達南坐標節(jié)點的跳數(shù)的最大值S max,第三個元素到達西 坐標節(jié)點的跳數(shù)最大值Wmax,第四個元素到達北坐標節(jié)點的跳數(shù)的最大值N max,,然后向已配 置節(jié)點X返回一個合并初始化消息,合并初始化消息負載為無線網(wǎng)絡(luò)MANET2的節(jié)點總數(shù)量 以及到達東坐標節(jié)點的跳數(shù)的最大值E max,到達南坐標節(jié)點的跳數(shù)的最大值Smax,到達西坐 標節(jié)點的跳數(shù)的最大值Wmax和到達北坐標節(jié)點的跳數(shù)的最大值N max。; 步驟405 :已配置節(jié)點X收到合并初始化消息后,已配置節(jié)點X在無線網(wǎng)絡(luò)中廣播合并 地址消息,合并地址消息負載為無線網(wǎng)絡(luò)MANET2的無線網(wǎng)絡(luò)ID,以及到達東坐標節(jié)點的跳 數(shù)的最大值Emax,到達南坐標節(jié)點的跳數(shù)的最大值S max,到達西坐標節(jié)點的跳數(shù)的最大值Wmax 和到達北坐標節(jié)點的跳數(shù)的最大值Nmax ; 步驟406 :無線網(wǎng)絡(luò)MANET1中的已配置節(jié)點XI收到已配置節(jié)點X的合并地址消息后, 將自己地址中的無線網(wǎng)絡(luò)ID更新為無線網(wǎng)絡(luò)MANET2的無線網(wǎng)絡(luò)ID,假設(shè)已配置節(jié)點XI 到達東坐標節(jié)點的跳數(shù)為Exl,到達南坐標節(jié)點的跳數(shù)為Sxl,到達西坐標節(jié)點的跳數(shù)為W xl, 到達北坐標節(jié)點的跳數(shù)為Nxl,已配置節(jié)點XI執(zhí)行以下賦值操作:Exl = Exl+Emax+1,Sxl = Sxi+Smax+1, ffxl = wxl+ffmax+l, Nxl = Nxl+Nmax+1 ; 步驟407 :已配置節(jié)點XI判斷跳數(shù)Exl,Sxl,Wxl和Nxl的值是否都小于或者等于f-1,如 果是,進行步驟408,否則進行步驟409 ; 步驟408 :已配置節(jié)點XI將自己標記為新節(jié)點,并執(zhí)行步驟101到步驟105重新獲取 地址,執(zhí)行步驟410 ; 步驟409 :已配置節(jié)點XI將地址中的四元組坐標更新為執(zhí)行步驟406后的四元組坐 標,從而獲得了無線網(wǎng)絡(luò)合并后新的地址; 步驟410 :結(jié)束; 在第二種情況下,假設(shè)無線網(wǎng)絡(luò)ID的長度為i比特,有X個無線網(wǎng)絡(luò),每個無線網(wǎng)絡(luò)產(chǎn) 生一個無線網(wǎng)絡(luò)ID,那么這些無線網(wǎng)絡(luò)的無線網(wǎng)絡(luò)ID沖突的概率p如公式(1)所示: r卜?-丄 p = ]-e ' 2 (1) i 根據(jù)公式(1),兩個無線網(wǎng)絡(luò)產(chǎn)生相同無線網(wǎng)絡(luò)ID的概率趨于0 ; 如果已配置節(jié)點X的地址檢測到與另外一個已配置節(jié)點的地址相同,那么已配置節(jié)點 X廣播初始化消息,當(dāng)無線網(wǎng)絡(luò)內(nèi)節(jié)點收到初始化消息后,將自己轉(zhuǎn)變?yōu)樾鹿?jié)點,通過無線 網(wǎng)絡(luò)初始化重新進行地址配置。
【文檔編號】H04L29/12GK104270479SQ201410557822
【公開日】2015年1月7日 申請日期:2014年10月20日 優(yōu)先權(quán)日:2014年10月20日
【發(fā)明者】王曉喃, 孫琪 申請人:常熟理工學(xué)院