劉經(jīng)緯,李 茜,韓仲華
(華北計算技術(shù)研究所,北京100083)
無線Mesh網(wǎng)絡(wireless mesh network,WMN)是近幾年出現(xiàn)的一種新興多跳無線網(wǎng)絡,相比目前依賴基礎(chǔ)設施的網(wǎng)絡(如傳統(tǒng)的蜂窩網(wǎng)絡),無線Mesh網(wǎng)絡中的各節(jié)點能夠以多跳方式快速構(gòu)成鏈狀、樹狀以及網(wǎng)狀等多種拓撲結(jié)構(gòu)的網(wǎng)絡。由于不需要基礎(chǔ)設施,無線Mesh網(wǎng)絡可作為一種臨時骨干網(wǎng)絡與應急通信手段,保證了其它多種末端網(wǎng)絡之間能夠互聯(lián)互通,并提供較大范圍內(nèi)的無線覆蓋能力。
無線Mesh 網(wǎng) 絡 涉 及 到 路 由[1,2,10]、組 網(wǎng)[8,9],以 及 信道分配[3-7]等多種技術(shù),而在射頻與天線技術(shù)方面,現(xiàn)有無線Mesh網(wǎng)絡多采用普通全向天線,其通信距離一般比較近,難以適用于大跨距的通信場合。
目前出現(xiàn)了一種基于多方向天線陣列的同步無線Mesh網(wǎng)絡,該網(wǎng)絡中所有節(jié)點均采用一種基于多方向的天線陣列技術(shù)[11],該技術(shù)中每根天線覆蓋45°扇區(qū),在滿足全向覆蓋的同時實現(xiàn)了天線的高增益,并支持天線動態(tài)切換,大幅度地提升了整個網(wǎng)絡的吞吐量和覆蓋范圍,天線任一時刻指向某個特定方位,也能夠大幅減輕來自其它方向上的干擾。多方向天線陣列結(jié)構(gòu)如圖1所示。
文中所研究的信標收發(fā)技術(shù)即應用在上述多方向天線陣列結(jié)構(gòu)基礎(chǔ)上。其中,將信標稱為Hello包,將網(wǎng)絡內(nèi)節(jié)點周期對外發(fā)送的信標稱為Hello請求包,而將未入網(wǎng)節(jié)點向選定的網(wǎng)絡內(nèi)節(jié)點發(fā)送的信標回應包稱為Hello響應包(下同)。
圖1 多方向天線陣列
該技術(shù)中的時間幀結(jié)構(gòu)如圖2所示。
圖2 幀結(jié)構(gòu)
該幀結(jié)構(gòu)中具有以下兩種時隙類型:Hello時隙;數(shù)據(jù)時隙。
其中,一個Hello時隙的時間長度為整個時間幀長度的1/1000,而每個時間幀中共有20個Hello時隙。
基于多方向天線陣列的同步無線Mesh 網(wǎng)絡協(xié)議中的所有與時間相關(guān)的Hello請求包收發(fā)規(guī)程、數(shù)據(jù)時隙中的帶寬申請規(guī)程以及數(shù)據(jù)時隙的普通數(shù)據(jù)收發(fā)規(guī)程均以該幀結(jié)構(gòu)為基礎(chǔ)。
1.2.1 多方向信標發(fā)送的問題
網(wǎng)絡內(nèi)節(jié)點需要在自己每根天線上均勻地對外發(fā)送Hello請求包,以便為未入網(wǎng)節(jié)點提供入網(wǎng)服務。
由于各節(jié)點均具有多方向天線陣列結(jié)構(gòu)并且均遵從時間幀結(jié)構(gòu),因此需要對各節(jié)點在Hello時隙所發(fā)送的Hello請求包的時間與所使用的天線號進行合理規(guī)劃,否則容易出現(xiàn)以下問題:
(1)鄰近的多個節(jié)點可能會在同一個Hello時隙內(nèi)發(fā)出Hello請求包。
(2)多個節(jié)點可能會使用具有相同天線號的天線發(fā)出Hello請求包。雖然由于各節(jié)點的隨機擺放能夠一定程度上避免各節(jié)點具有相同天線號的天線方向相同或相近,但仍需要在設計上使各節(jié)點在同一時間內(nèi)使用不同天線號的天線發(fā)送Hello請求包。
上述兩種情況容易使未入網(wǎng)節(jié)點在接收Hello請求包時發(fā)生錯誤。另外,為了保證網(wǎng)絡內(nèi)節(jié)點發(fā)出的Hello請求包能夠在各個方向上均有發(fā)出,應保證節(jié)點在每個時間幀內(nèi)在每根天線上各發(fā)出一個Hello請求包。
1.2.2 天線號序列生成算法
具有多方向天線陣列的同步無線Mesh 網(wǎng)絡節(jié)點發(fā)出Hello請求包時的時隙位置與所用天線號的規(guī)則如下:
(1)從每個時間幀內(nèi)的20個Hello時隙中等概率選擇8個用來發(fā)送Hello請求包,其余12個Hello時隙則用來隨機接收Hello請求包。
(2)8個用來發(fā)送Hello請求包的天線號序列由節(jié)點按[0,1,2,3,4,5,6,7]序列隨機生成其置換,其余12個執(zhí)行接收Hello請求包的天線號則等概率隨機生成。
由于節(jié)點本身是隨機部署的,這兩個節(jié)點在距離上可能較近,也可能較遠,因此,通過節(jié)點之間距離遠近的隨機性、節(jié)點部署時0號天線與絕對方向夾角大小的隨機性、天線號的隨機性以及發(fā)送Hello請求包所選擇的Hello時隙的隨機性,則能夠盡可能地減少了網(wǎng)絡內(nèi)所有節(jié)點在多方向天線陣列上全向發(fā)送Hello請求包時在未入網(wǎng)節(jié)點的接收上出錯的概率。
基于多方向天線陣列的同步無線Mesh 網(wǎng)絡協(xié)議中的Hello包結(jié)構(gòu)如圖3所示。
圖3 Hello包結(jié)構(gòu)
其中:第一層包頭共24字節(jié),其內(nèi)容與節(jié)點之間點對點的基本通信功能相關(guān),如基本數(shù)據(jù)包類型、目的節(jié)點地址、源節(jié)點地址、序列號等。
第二層包頭由協(xié)議中不同的功能模塊所定義,如模塊類型、該模塊內(nèi)的數(shù)據(jù)包類型以及QoS等。對于Hello包,則定義了Hello包的具體類型(包括Hello請求包、Hello響應包),Hello包,每種類型所對應的具體內(nèi)容。
Hello包內(nèi)容包括測距類信息、發(fā)送天線號信息、安全類信息等。
各節(jié)點對Hello時隙的使用有如下3種情況:(1)網(wǎng)絡內(nèi)節(jié)點周期對外發(fā)送Hello請求包
網(wǎng)絡內(nèi)節(jié)點在每個時間幀內(nèi)的8處Hello時隙上在自己每根天線上各發(fā)出一個Hello請求包,供未入網(wǎng)節(jié)點接入網(wǎng)絡。當網(wǎng)絡內(nèi)節(jié)點在當前Hello時隙內(nèi)發(fā)送Hello請求包完畢后,便立即在該Hello時隙的剩余時間里準備接收未入網(wǎng)節(jié)點回應的Hello響應包。該過程如圖4所示。
圖4 網(wǎng)絡內(nèi)節(jié)點周期對外發(fā)送Hello請求包
(2)未入網(wǎng)節(jié)點接收Hello請求包
未入網(wǎng)節(jié)點在入網(wǎng)前將進行Hello請求包的接收。在接收定時器超時前,未入網(wǎng)節(jié)點將在所有Hello時隙內(nèi)都執(zhí)行接收動作。該過程如圖5所示。
圖5 未入網(wǎng)節(jié)點接收Hello請求包
(3)未入網(wǎng)節(jié)點回應Hello響應包
當未入網(wǎng)節(jié)點的接收Hello請求包定時器超時后,未入網(wǎng)節(jié)點將對所接收到的Hello請求包進行排序,從中選擇信號質(zhì)量較好的網(wǎng)絡內(nèi)節(jié)點并嘗試從該節(jié)點入網(wǎng),該算法有專門論文進行論述,文中不再提及。未入網(wǎng)節(jié)點為自己選出合適的網(wǎng)絡內(nèi)節(jié)點后,將繼續(xù)在Hello時隙上執(zhí)行接收動作,當再次從該網(wǎng)絡內(nèi)節(jié)點處接收到Hello請求包后,便在當前Hello時隙的剩余時間里立即向該網(wǎng)絡內(nèi)節(jié)點回應一個Hello響應包。整個過程如圖6所示。
圖6 未入網(wǎng)節(jié)點向網(wǎng)絡內(nèi)節(jié)點回應Hello響應包
網(wǎng)絡內(nèi)節(jié)點周期性發(fā)送Hello 請求包的過程如圖7所示。
圖7 網(wǎng)絡內(nèi)節(jié)點周期性發(fā)送Hello請求包的過程
其中,生成Hello請求包的定時器時間周期設定為一個時間幀的長度。安排下一個時間幀內(nèi)的Hello時隙使用的天線號和收發(fā)狀態(tài)則依據(jù)1.2節(jié)所描述的算法,而生成下一個時間幀內(nèi)的Hello請求包格式則按照1.3節(jié)的信標格式填寫。
未入網(wǎng)節(jié)點在入網(wǎng)前接收Hello請求包時的天線選擇情況如圖8所示。
圖8 未入網(wǎng)節(jié)點搜索網(wǎng)絡過程
未入網(wǎng)節(jié)點在入網(wǎng)前需要依次使用自己的0~7號天線執(zhí)行這樣的搜索,每根天線上的搜索時間為時間幀的2倍,這樣未入網(wǎng)節(jié)點則在8根天線上總共監(jiān)聽的時間為時間幀的16倍。
圖9表示了網(wǎng)絡內(nèi)節(jié)點和未入網(wǎng)節(jié)點對Hello包的處理過程。
其中:左邊分支表示了未入網(wǎng)節(jié)點與網(wǎng)絡內(nèi)節(jié)點在收到Hello請求包時的不同處理過程。右邊分支為網(wǎng)絡內(nèi)節(jié)點收到來自未入網(wǎng)節(jié)點的Hello響應包時的處理過程情況,當網(wǎng)絡內(nèi)節(jié)點收到這樣的Hello響應包后,表明未入網(wǎng)節(jié)點的后續(xù)入網(wǎng)過程即將開始。
以下是某一個時間幀內(nèi)前5個Hello時隙中網(wǎng)絡內(nèi)節(jié)點周期發(fā)送Hello請求包與未入網(wǎng)節(jié)點接收Hello請求包以及后續(xù)某一個時間幀內(nèi)未入網(wǎng)節(jié)點發(fā)送Hello響應包的示例。
(1)網(wǎng)絡內(nèi)節(jié)點包含網(wǎng)關(guān)節(jié)點和骨干節(jié)點1,未入網(wǎng)節(jié)點為骨干節(jié)點2。
(2)為說明節(jié)點多方向信標發(fā)送的天線號序列生成算法的隨機性與降低未入網(wǎng)節(jié)點在接收Hello請求包時失敗的概率,特選擇網(wǎng)關(guān)節(jié)點與骨干節(jié)點1的0號天線方向完全相同,并且兩個節(jié)點在該時間幀內(nèi)均選擇了如下Hello請求包發(fā)送天線序列:[2,0,5,4,3,1,7,6]。
(3)各節(jié)點在該時間幀內(nèi)前5個Hello時隙的天線號與收發(fā)狀態(tài),分別如圖10~圖12所示。
(4)網(wǎng)絡內(nèi)節(jié)點在該時間幀內(nèi)的前5個Hello時隙收發(fā)Hello請求包分別如圖13~圖17所示。
(1)網(wǎng)絡內(nèi)節(jié)點包含網(wǎng)關(guān)節(jié)點和骨干節(jié)點1,未入網(wǎng)節(jié)點為骨干節(jié)點2。
(2)在上例中,未入網(wǎng)節(jié)點(即骨干節(jié)點2)在某個時間幀內(nèi)的20個Hello時隙內(nèi)收到的hello請求包中,來自網(wǎng)絡內(nèi)骨干節(jié)點1的2 號天線的Hello請求包的RSSI值最大,因此,骨干節(jié)點2選擇骨干節(jié)點1作為選定的網(wǎng)絡內(nèi)節(jié)點并嘗試從該節(jié)點入網(wǎng)。骨干節(jié)點2 仍然用0 號天線監(jiān)聽,當某個Hello時隙到來后再次收到來自骨干節(jié)點1的2號天線的Hello請求包后,便立即在該Hello時隙內(nèi)向骨干節(jié)點1回復Hello響應包。這兩個過程分別如圖18、圖19所示。
圖9 Hello包的處理過程
圖10 網(wǎng)關(guān)節(jié)點在該時間幀內(nèi)的Hello時隙情況
圖11 骨干節(jié)點1在該時間幀內(nèi)的Hello時隙情況
圖12 骨干節(jié)點2在該時間幀內(nèi)的Hello時隙情況
圖15 該時間幀內(nèi)第3個Hello時隙
圖16 該時間幀內(nèi)第4個Hello時隙
圖17 該時間幀內(nèi)第5個Hello時隙
圖18 骨干節(jié)點2在后續(xù)Hello時隙內(nèi)監(jiān)聽
圖19 骨干節(jié)點2回復Hello響應包
基于多方向天線陣列的同步無線Mesh 網(wǎng)絡在節(jié)點滿足全向覆蓋的同時實現(xiàn)了各方向天線的高增益與天線之間的動態(tài)切換,從而大幅提高整個網(wǎng)絡的吞吐量和覆蓋范圍。鑒于此,提出上述基于多方向天線陣列的同步無線Mesh網(wǎng)絡下的信標收發(fā)技術(shù),對時間幀結(jié)構(gòu)、節(jié)點多方向信標發(fā)送的天線號序列生成算法、信標結(jié)構(gòu)、Hello時隙的使用過程進行了詳細設計。通過該技術(shù)的使用,網(wǎng)絡內(nèi)所有已入網(wǎng)節(jié)點均能夠在每個發(fā)送信標的時刻安排合適的天線,盡可能降低了未入網(wǎng)節(jié)點在接收信標時出錯的概率。
[1]HAN Dong,YAN Chuping,WANG Zhiquan,et al.Research and implementation of wireless Mesh network protocol based on NDIS [J].Computer Engineering and Design,2011,32 (3):784-787 (in Chinese).[韓冬,鄢楚平,王志泉,等.基于NDIS的無線Mesh網(wǎng)絡協(xié)議的研究和實現(xiàn) [J].計算機工程與設計,2011,32 (3):784-787.]
[2]QIN Yingying.Research on routing protocols in wireless mesh networks[J].Software Guide,2012,11 (2):99-101 (in Chinese).[秦瑩瑩.無線Mesh網(wǎng)絡路由協(xié)議研究 [J].軟件導刊,2012,11 (2):99-101.]
[3]SU Jiayong,XU Lei,ZHOU Guo.Study on channel assignment problem of wireless mesh network [J].Radio Communications Technology,2009,33 (5):4-6 (in Chinese).[蘇家勇,許磊,周國.無線mesh網(wǎng)絡中的信道分配問題研究 [J].無線電通信技術(shù),2009,33 (5):4-6.]
[4]LIU He,ZHANG Luyong,CHEN Minggang,et al.Design on centralized channel assignment algorithm for wireless mesh networks[J].Radio Engineering,2011,41 (5):4-6 (in Chinese).[劉賀,張陸勇,陳明剛,等.無線Mesh網(wǎng)絡集中式信道分配算法設計[J].無線電工程,2011,41 (5):4-6.]
[5]LI Jia,ZHOU Jie.Design on centralized channel assignment algorithm for wireless mesh networks[J].Radio Engineering,2009,29 (12):3235-3237 (in Chinese).[李佳,周杰.無線Mesh網(wǎng)絡集中式信道分配算法設計 [J].無線電工程,2009,29 (12):3235-3237.]
[6]QIU Zhenmou,YAO Guoxiang,GUAN Quanlong,et al.Channel assignment algorithm for multicast in multi-channel wireless mesh network [J].Computer Engineering,2011,47
(18):85-87 (in Chinese). [邱振謀,姚國祥,官全龍,等.多信道無線Mesh網(wǎng)絡的多播信道分配算法 [J].計算機工程,2011,37 (6):107-109.]
[7]XIE Guifang,DUAN Sheng,LUO Yuling.Research on channel allocation in wireless mesh network [J].Computer Engineering and Applications,2011,47 (18):85-87 (in Chinese).[謝桂芳,段盛,羅玉玲.無線Mesh網(wǎng)絡信道分配研究 [J].計算機工程與應用,2011,47 (18):85-87.]
[8]LI Hesong,LENG Supeng.Novel multi-channel MAC protocol for wireless mesh networks[J].Computer Engineering and Applications,2011,47 (26):66-69 (in Chinese).[李鶴松,冷甦鵬.一種新型無線Mesh網(wǎng)絡多信道MAC 協(xié)議 [J].計算機工程與應用,2011,47 (26):66-69.]
[9]HE Pingshi,XU Ziping.Research on multi-channel MAC protocols using dual transreceivers in wireless Mesh networks[J].Application Research of Computers,2010,27 (1):327-329(in Chinese).[何萍實,徐子平.無線Mesh網(wǎng)絡中使用雙收發(fā)器的多信道MAC 協(xié)議研究 [J].計算機應用研究,2010,27 (1):327-329.]
[10]ZHANG Kefei,YANG Shoubao,HU Yun,et al.Research on multiple QoS constrained routing mechanism based on wireless Mesh network [J].Application Research of Computers,2009,26 (3):994-996 (in Chinese).[張克非,楊壽保,胡云,等.基于多QoS參數(shù)約束的無線Mesh網(wǎng)絡路由機制研究 [J].計算機應用研究,2009,26 (3):994-996.]
[11]LEI Xin,GUO Lin,HAN Zhonghua,et al.Design of multisector antenna array in broadband wireless mesh networks[J].Journal of China Academy of Electronics and Information Technology,2012,7 (4):178-181 (in Chinese). [雷昕,郭琳,韓仲華,等.寬帶無線Mesh網(wǎng)絡中的多扇區(qū)天線陣列設計[J].中國電子科學研究院學報,2012,7 (4):178-181.]