任凱強,謝 波,鄭力明(暨南大學 信息科學技術(shù)學院電子工程系,廣東 廣州510632)
移動蜂窩通信系統(tǒng)推動了人類通信技術(shù)的快速發(fā)展,在全世界獲得了廣泛的商業(yè)部署,改變了人們的生產(chǎn)生活方式。然而隨著人們交流越來越頻繁,對通信質(zhì)量的要求越來越高,現(xiàn)有 GSM (global system for mobile communications)移動蜂窩系統(tǒng)的一些不足不斷呈現(xiàn),難以滿足日益增長的需求。
Ad-h(huán)oc網(wǎng)絡具有高度靈活性、自組織性、分布式控制、動態(tài)網(wǎng)絡拓撲等特點,是目前移動通信領(lǐng)域研究的一大熱點。有學者提出,Ad-h(huán)oc網(wǎng)絡具有許多移動蜂窩網(wǎng)絡不具備的優(yōu)點,將其應用到蜂窩網(wǎng)絡,能較好地彌補蜂窩網(wǎng)絡的缺陷,如彌補覆蓋缺陷、實現(xiàn)流量的動態(tài)合理分配、形成局域子網(wǎng)傳輸局部業(yè)務等,是目前移動通信網(wǎng)絡發(fā)展的趨勢[1]。
本文致力于前人已有研究,鑒于目前新一代手機技術(shù)和功能的不斷完善,設計一種融合Ad-h(huán)oc和移動蜂窩網(wǎng)絡的中繼設備,可以廣泛用于人口密度大,通信鏈路堵塞嚴重的熱點小區(qū),以及一些內(nèi)部局域網(wǎng),輔助現(xiàn)有移動蜂窩網(wǎng)絡,提高通話質(zhì)量,并節(jié)省通話成本。
iCAR (integrated cellular and Ad-h(huán)oc relaying system)是由紐約州立大學Hongyi Wu等人提出的一種新型無線融合網(wǎng)絡系統(tǒng)[2],將傳統(tǒng)蜂窩移動通信網(wǎng)和Ad-h(huán)oc轉(zhuǎn)發(fā)技術(shù)相結(jié)合,解決蜂窩移動通信系統(tǒng)中由于負載不均衡導致的擁塞問題的系統(tǒng)。iCAR系統(tǒng)通過使用Ad-h(huán)oc中繼節(jié)點(Ad hoe relay station,ARS)將負載從一個小區(qū)動態(tài)轉(zhuǎn)移到其它小區(qū),有效地平衡小區(qū)間的負載,不僅增加了系統(tǒng)的容量,還可以減少移動節(jié)點的發(fā)送功率,并且擴大了系統(tǒng)的覆蓋范圍。系統(tǒng)原理如圖1所示。
圖1 iCAR系統(tǒng)原理
如圖1所示,處于熱點小區(qū) (BTS1)中的移動主機MHX在小區(qū)信道擁塞 (沒有可用的空閑信道)的情況下想要和位于遠方的X’通信,可以通過兩個ARS與相鄰的小區(qū)BTS建立通信鏈路,從而使用相鄰小區(qū)的空閑信道。如果X和X’在同一小區(qū),則可直接通過小區(qū)內(nèi)ARS建立鏈路進行通信。每個ARS都有2個空中接口:同BTS進行通信的C(蜂窩)接口和同其它ARS或者MH進行通信的R(中繼)接口;同樣每個MH也必須有2個空中接口:同BTS進行通信的C接口和同ARS進行通信的R接口。這2個接口工作在不同的頻段,R接口的 MAC(media access control)層同一般Ad-h(huán)oc網(wǎng)絡的 MAC層相同。一條鏈路中進行中繼的ARS可能有多個,與BTS直接通信的可以看作網(wǎng)關(guān),同時使用C接口和R接口并且要占用基站的數(shù)據(jù)信道,而與MH或者其它ARS通信的可以看作中繼器,只使用R接口。在此系統(tǒng)中,移動主機也可以為別的節(jié)點進行中繼,但是此方法在計費、保密等方面有諸多不便,而利用專門節(jié)點進行中繼的好處在于能較好地解決安全,認證和計費等問題。
由以上分析可知,在iCAR系統(tǒng)中要求移動終端是雙模的,既要有接入GSM網(wǎng)絡的C接口也要有接入Ad-h(huán)oc網(wǎng)絡的R接口。而目前移動手機技術(shù)已經(jīng)非常成熟,功能相當強大,眾多手機都支持 WiFi(wireless fidelity),支持WAPI (wireless LAN authentication and privacy infrastructure),支持802.11b/g協(xié)議,即同時擁有C接口和R接口,為iCAR系統(tǒng)的實現(xiàn)提供了良好的條件。
在本文的研究中,Ad-h(huán)oc網(wǎng)絡采用基于802.11b/g協(xié)議的無線 Wi-Fi技術(shù)[3],傳輸速率理論上可以達到54MB/s,室外通信半徑達400m,基本能夠滿足研究和一般通信距離的需要。
中繼節(jié)點ARS同樣需要擁有同時接入GSM網(wǎng)絡的C接口和接入Ad-h(huán)oc網(wǎng)絡的R接口,而且必須有同時作為Ad-h(huán)oc中繼器和網(wǎng)橋的雙重功能,還需要實現(xiàn)對接口的選擇進行切換控制、數(shù)據(jù)協(xié)議轉(zhuǎn)換、路由等功能。同時它還要能對允許接入的終端屬性進行設置,只有鑒權(quán)成功的終端才可以通過ARS訪問相應的網(wǎng)絡。
ARS的硬件結(jié)構(gòu)如圖2所示。
圖2 ARS硬件結(jié)構(gòu)
在硬件選擇上,綜合考慮處理速度、總線寬度、集成度以及性價比,我們最終選用基于ARM920T內(nèi)核的S3C2440控 制 芯 片 作 為 主 控 制 器[4],Motorola ColdFire 5272(MCF5272)為主控CPU。MCF5272是 Motorola推出的一款高集成度的32位ColdFire微處理器,有很強的通信處理能力和較高的性能價格比,且集成了豐富的外圍設備和接口,很適合應用于中小型網(wǎng)絡的控制設備[5]。
GSM接口 (C接口)的硬件實現(xiàn)采用GPRS通訊模塊[6],它是GPRS無線終端的無線數(shù)據(jù)收發(fā)模塊,用于把從CPU接收到的PPP幀格式的數(shù)據(jù)和從基站接收的GPRS分組數(shù)據(jù)進行相應的協(xié)議處理后再轉(zhuǎn)發(fā)。GPRS通訊模塊采用西門子公司推出的MC35,它支持語音通訊,具有GPRS,CSD (circuit switched data)等數(shù)據(jù)傳輸方式以及SMS (short messaging service)和FAX功能。MC35可以工作在EGSM900和GSM 1800兩個頻段,具有40腳的ZIF接口、標準 RS232雙向串口、SIM (subscriber identity module)卡3V接口和模擬語音接口等。
Ad-h(huán)oc網(wǎng)絡實現(xiàn)采用基于802.11b/g協(xié)議的 Wi-Fi技術(shù),WLAN (wireless local area network)通信模塊使用 DLink公司的嵌入式無線網(wǎng)卡模塊DWL-G122,采用USB接口,可以支持IEEE 802.11b/g協(xié)議,傳輸速率理論上可以達到54MB/s,室內(nèi)傳輸距離達到100m左右,室外有效傳輸距離接近400m,在Linux系統(tǒng)下通過無線網(wǎng)卡驅(qū)動可以工作在AP (access point)和Ad-h(huán)oc模式,能夠滿足我們實驗的需要。
ARS軟件總體結(jié)構(gòu)如圖3[7]所示。
圖3 ARS軟件總體結(jié)構(gòu)
系統(tǒng)采用嵌入式Linux作為節(jié)點的操作系統(tǒng),采用層次化的軟件結(jié)構(gòu)。主要的軟件設計工作包括Uboot和Linux內(nèi)核移植[8]、所涉及的硬件驅(qū)動及配置和支持程序設計等。
Uboot和Linux內(nèi)核移植在開發(fā)板光盤里有詳細敘述,此處不做詳述。硬件驅(qū)動主要包括網(wǎng)卡驅(qū)動和串口驅(qū)動,配置無線網(wǎng)絡工作主要通過iwconfig命令完成,可以設置無線網(wǎng)卡的網(wǎng)絡地址、通信信道,同時把無線網(wǎng)卡的工作模式設置成Ad-h(huán)oc模式[9]。由于篇幅原因,驅(qū)動編寫不做詳述,下面將對接口的實現(xiàn)、核心控制模塊等做詳細說明。
3.2.1 蜂窩網(wǎng)接口設計的實現(xiàn)
蜂窩網(wǎng)接口模塊的軟件部分主要負責通過GPRS Modem建立與ISP (internet service provider)之間的通信鏈路,是軟件設計的核心部分,它們的連接基于點對點協(xié)議(point to point protocol,PPP)[10];在鏈路建立后,將接收到的PPP數(shù)據(jù)幀解析,根據(jù)協(xié)議字段將數(shù)據(jù)信息交由不同的上層模塊進行處理;根據(jù)系統(tǒng)的需要,將上層模塊傳來的信息打包成不同的PPP數(shù)據(jù)幀發(fā)送出去。PPP協(xié)議作為GPRS在物理層之上的唯一指定的數(shù)據(jù)鏈路層協(xié)議,通過CRC (cyclic redundancy check)校驗、確認等手段將原始的GPRS物理層連接改造成無差錯的數(shù)據(jù)鏈路,主要用在串行鏈路上提供一個簡單高效的數(shù)據(jù)鏈路,并能承載高層的網(wǎng)絡協(xié)議[11]。
在Linux開發(fā)包中包含對PPP協(xié)議的支持,在編譯內(nèi)核時需將PPP support開啟。首先進入內(nèi)核編譯主菜單,然后進入 “Device Drivers--->”,在進入 “Network device support--->”,將 “PPP (point to point protocol)”極其下級菜單全部以built-in的方式選中,如圖4所示。
圖4 PPP協(xié)議配置
配置好內(nèi)核后進行pppd撥號的配置,并編寫撥號腳本:在文件系統(tǒng)中添加配置文件/etc/resolv.conf,在其中寫入所用到的域名服務器的域名或IP地址;
添加配置文件/etc/nsswitch.conf, 并寫入 hosts:files dns;
在/lib目錄下添加文件庫libnss_dns.so和libresolv-2.1.2.so,并添加必要的鏈接;
編輯配置文件/etc/ppp/options,在其中添加lock、crtscts、defaultroute、noauth這4個選項;
最后編寫兩個撥號命令文件pppdial和撥號選項文件chatoption,再運行pppdial和ifconfig命令,彈出一個新端口,蜂窩網(wǎng)接口便得以實現(xiàn)。
3.2.2 核心控制模塊
核心控制模塊主要處理下層硬件驅(qū)動和上層通信協(xié)議、配置和支持程序之間的交互。核心控制模塊的基本流程如圖5所示。
系統(tǒng)在啟動后首先初始化各個模塊,設置工作模式、啟動相應協(xié)議棧以及設置其它一些基本參數(shù)。程序采用I/O多路轉(zhuǎn)接技術(shù)對多個描述符的讀寫進行管理,事先構(gòu)造一張所有描述符的表,然后調(diào)用select()函數(shù),直到最少有一個描述符準備好才返回,并告知內(nèi)核哪一個描述符已經(jīng)準備好交換數(shù)據(jù)[12]。此后,程序偵聽等待各模塊的數(shù)據(jù),處理PPP撥號連接請求等,并對數(shù)據(jù)經(jīng)由協(xié)議解析后送至相應終端。
為實現(xiàn)核心控制模塊在系統(tǒng)啟動時的自動加載,使其以應用程序control_module的形式存在,在系統(tǒng)啟動腳本/etc/rc文件中加入對control_module的調(diào)用。
3.2.3 改進后的基于信號強度的切換算法
由于在Ad-h(huán)oc與蜂窩網(wǎng)絡融合系統(tǒng)中引入了全新的通信鏈路,為使移動終端在各個接入網(wǎng)之間實現(xiàn)無縫漫游和切換,需要更加智能的切換算法來判決應該進行何種類型的切換。針對以往的基于信號強度算法和切換算法的研究[13],本文在這基礎上提出一種更加高效、迅速的切換判決算法,基本流程如圖6所示。
圖5 核心控制模塊流程
圖6 基于信號強度切換算法流程
當移動終端 (mobile terminal,MT)接入 Ad-h(huán)oc網(wǎng)絡時,與其相連的代理ARS通過Ad-h(huán)oc網(wǎng)絡路由算法來尋找一條到達非擁塞小區(qū)基站的路徑,節(jié)點首先向外廣播“查詢路由”消息到所有可達的鄰居ARS,具有到達非擁塞小區(qū)基站的ARS(此處稱中繼ARS)返回路由表中的信息,然后代理ARS選擇一個花費最少的最優(yōu)路徑,并發(fā)送“建立路由”消息到這條鏈路上的中繼ARS。中繼ARS根據(jù)所收到的路由信息中繼 “建立路由”消息直到到達網(wǎng)關(guān)ARS(最終與目標基站連通的ARS)。最后網(wǎng)關(guān)ARS向基站請求分配一個專用信道,并且發(fā)送確認消息返回到移動終端,至此中繼路由的建立完成[14]。移動節(jié)點收到確認消息,立刻通過R接口切換到Ad-h(huán)oc網(wǎng)絡傳送數(shù)據(jù)。此路由過程跟一般Ad-h(huán)oc網(wǎng)絡路由基本相同,根據(jù)實際需求不同有不同的選擇[15]。通過使用該算法,不管信號處于何種狀態(tài)下都能夠很好地切換網(wǎng)絡,并繼承了傳統(tǒng)蜂窩網(wǎng)絡先切后換的軟切換方式,保證通信的連續(xù)性。
為了測試該中繼節(jié)點ARS的性能,在實驗室環(huán)境下,使用一臺裝有無線網(wǎng)卡的筆記本、一臺帶WiFi的手機終端和一臺普通手機以及上面設計的中繼設備組成一個系統(tǒng),通過將無線網(wǎng)卡的工作模式設置為Ad-h(huán)oc模式模擬一個Ad-h(huán)oc網(wǎng)絡。筆記本操作系統(tǒng)為Windows XP。
在該條件下,利用筆記本的無線網(wǎng)卡與該中繼設備建立連接,通過GPRS模塊接入中國移動接入點cmnet訪問Internet并測試相關(guān)數(shù)據(jù)。設置好參數(shù)并啟動無線連接后,在筆記本DOC模式下運行tracert m.baidu.com命令,顯示IP路徑如圖7所示。
圖7 IP路徑顯示
由圖7可以看出從Ad-h(huán)oc網(wǎng)絡上的節(jié)點 (筆記本電腦)至internet上的站點,先經(jīng)過了中繼節(jié)點 (Ad-h(huán)oc接口的IP地址為192.168.0.1)的轉(zhuǎn)發(fā),由此可見,此設計的中繼節(jié)點能夠連通兩個網(wǎng)絡,可以為內(nèi)部Ad-h(huán)oc網(wǎng)絡的節(jié)點轉(zhuǎn)發(fā)數(shù)據(jù),起到橋接內(nèi)網(wǎng)與GSM網(wǎng)的作用。
再對該設備進行丟包率測試,運行ping-n 100-w 100 m.baidu.com,連續(xù)發(fā)送100個ICMP測試包,等待回復時間測試為1s,結(jié)果如圖8所示。
由圖8可以看出丟包率為10%。該數(shù)據(jù)與設備硬件性能和Ad-h(huán)oc網(wǎng)絡信號的好壞有關(guān)。
再用一臺支持WiFi的手機通過上述設計的設備接入G網(wǎng)與另一臺普通手機通話,測試其通話質(zhì)量,結(jié)果如圖9所示。
通過以上實驗的測試,可以看出該中繼設備能夠較好地鏈接內(nèi)部Ad-h(huán)oc局域網(wǎng)和移動蜂窩網(wǎng),同時也能較好地完成對兩個網(wǎng)絡的橋接,基本滿足設計目標。
本文對Ad-h(huán)oc和移動蜂窩網(wǎng)絡的融合進行了深入研究,設計了一種基于Ad-h(huán)oc和移動蜂窩網(wǎng)絡融合技術(shù)的中繼設備。在ARM920T嵌入式開發(fā)平臺的基礎上通過擴展無線網(wǎng)絡模塊和GPRS模塊實現(xiàn)了Ad-h(huán)oc網(wǎng)絡和移動蜂窩網(wǎng)絡互聯(lián),詳細說明了蜂窩網(wǎng)絡接口的實現(xiàn)方法,介紹了系統(tǒng)的設置和PPP撥號腳本的實現(xiàn),并提出了改進的基于信號強度的切換算法。該設備在實驗室環(huán)境下進行了測試,實現(xiàn)了兩種網(wǎng)絡的相互連通、達到了預期的效果。本文設計的設備能廣泛應用于室內(nèi)外通信熱點地區(qū),能有效改善通信質(zhì)量、節(jié)省開銷,具有一定的實用價值。
[1]Gaurav Kumar Tak,Navin Badge,Pranay Manwatkar,et al.Integration of MANET in cellular networks to enhance the performance [C].Second International Conference on Computer Engineering and Applications,2010:590-594.
[2]XU Zhaoji,HU Nan,HE Zhiqiang.Call dropping and blocking probability of the integrated cellular Ad hoc relaying system[J].IEEE Globecom,2008,30 (4):1-6.
[3]Erna Sri Sugesti,Purnomo Sidi Priambodo,Kalamullah Ramli,et al.Delay bound analysis for hybrid networks:Interoperable IEEE 802.11b/g WLAN over fiber [C].International Congress on Ultra Modern Telecommunications and Control Systems and Workshops,2010:1017-1020.
[4]HE Hongjiang,ZHANG Yamin.Research on automobile driving state real-time monitoring system based on ARM [C].International Conference on Computer Engineering and Technology,2009:361-365.
[5]Ignacio Salcedo,F(xiàn)rancisco Javier Rodriguez.Calling all cars:Motorola’s early police radios [C].Second IEEE Region 8Conference on the History of Telecommunications Conference,2010:1-5.
[6]Rajappa Velur,Jabeer Ahmed,Shoeb Ahmed,et al.New authentication architecture for GPRS networks [C].International Conference on Complex Intelligent and Software Intensive Systems,2010:649-655.
[7]ZHU Zhijian.Research of broadband access equipment and its key technology which based on the heterogeneous network integration [D].Nanjing:Southeast University,2007 (in Chinese).[朱志堅.基于異構(gòu)網(wǎng)絡融合的寬帶接入設備研制及關(guān)鍵技術(shù)研究 [D].南京:東南大學,2007.]
[8]WEI Dongshan.Well guide of embedded Linux application de
velopment [M].Beijing:People Posts&Telecom Press,2008:293-333 (in Chinese).[韋東山.嵌入式 Linux應用開發(fā)完全手冊 [M].北京:人民郵電出版社,2008:293-333.]
[9]SONG Baohua.Explain of Linux device driver development[M].Beijing:Eople Posts & Telecom Press,2008:88-395(in Chinese).[宋寶華.Linux設備驅(qū)動開發(fā)詳解 [M].北京:人民郵電出版社,2008:88-395.]
[10]LI Lihua,WEI Shuquan,LU Ling.PPP security mechanism analysis and improvement [C].Information Technology and Computer Science,2010:409-412.
[11]ZHOU Juan,JIANG Dengfeng,ZENG Qiyong.The realization of accessing Internet through GPRS based on PPP [J].Micro Computer Information,2009,25 (1-3):132-134 (in Chinese). [周娟,蔣登峰,曾其勇.基于PPP協(xié)議實現(xiàn)GPRS模塊無線接入Internet方式 [J].微計算機信息,2009,25 (1-3):132-134.]
[12]Richard Stevens W,Bill Fenner,Andrew M,et al.Internet programming of UNIX [M].Beijing:People Posts&Telecom Press,2010:122-132 (in Chinese). [Richard Stevens W,Bill Fenner,Andrew M,等.UNIX網(wǎng)絡編程 [M].北京:人民郵電出版社,2010:122-132.]
[13]LU Jiajia.Ad-h(huán)oc and cellular network integration and handoff algorithm [D].Nanjing:Nanjing University of Posts and Telecommunications,2007 (in Chinese).[陸佳佳.Ad-h(huán)oc與移動蜂窩網(wǎng)絡融合及其切換算法 [D].南京:南京郵電大學,2007.]
[14]LU Weifeng,WU Meng.Handoff algorithms for the integrated Ad-h(huán)oc and mobile cellular network systems [J].ZTE Communications,2007,13 (5):37-43 (in Chinese).[魯蔚鋒,吳蒙.集成Ad-h(huán)oc和移動蜂窩網(wǎng)絡系統(tǒng)的切換算法[J].中興通訊技術(shù),2007,13 (5):37-43.]
[15]HUANG Songhua,WU Xiaobing,HUANG Hao,et al.Fasthandover algorithms formultihomed and nested network mobility [J].Journal of Chinese Computer Systems,2010,31 (1):22-25 (in Chinese). [黃松華,吳小兵,黃皓,等.多穴嵌套網(wǎng)絡移動的快速切換算法 [J].小型微型計算機系統(tǒng),2010,31 (1):22-25.]