引言 近年來,一種新一代無線通信網——無線Mesh網(Wireless Mesh Network,WMN)技術引發業界的重視和研究。由于它具備組網迅速、結構靈活、傳輸速率大、可靠性強、成本低等突出的優點,適應了市場對網絡視頻監控的新需求,勢必拓寬視頻監控的應用范圍[1]。本文結合對網絡視頻監控的需求,深入分析了無線Mesh網絡的技術特點,提出了一種利用多個單獨視頻終端節點構建基于無線Mesh技術的視頻監控系統。 1 無線Me8h網絡的關鍵技術 wMN作為移動AdHoc網絡 (MANET)的一種特殊形態,融合了WLAN和AdHtoc:網絡優點,成為一種新型寬帶無線網絡。與傳統無線網絡技術相比,WMN的以下幾大關鍵技術更加適應網絡視頻監控的發展需要。 (1)網狀拓撲 WMN采用類似Internet.的網狀拓撲,包含了無線Mesh路由器和無線Mesh客戶端兩類基本設備,即骨干網Mesh結構和客戶端Mesh結構[2]。前者由無線路由器構成Mesh骨干網,提供一個大面積、高可靠性的覆蓋區域,無線客戶端通過路由器接入骨干網實現業務功能。后者通過在無線客戶端集成路由和配置功能,由多個客戶端直接構成WMN。無論采用哪種結構,一個節點的數據都可通過相鄰多個具有路由功能的節點到達目標節點,局部網絡的可靠性不受單一節點制約。網絡負載分散在多個節點實現,有效減少了節點的功耗,使采用便攜式電源成為可能。上述特點使得WMN的骨干網和客戶端同時具備了良好的移動性,成為真正意義上的無線網絡。本文采用多個Mesh終端節點來組建無線Mesh網絡,無需其他路由器。 (2)多跳鏈路 wMN的每個節點和鄰近節點互聯,形成多跳鏈路(multi- hop),通過增加源節點和目標節點間的路徑數量來提高網絡帶寬。多跳鏈路縮短了每個單跳的距離,一方面降低了信號衰減及外界干擾導致的誤碼和丟包;另一方面用低功率信號傳輸,減小不同路徑之間的信號互擾,提高了帶寬利用率和信道質量。不同路徑間的信號互擾較小,當使用定向天線時,同一頻段幾乎可在WMN 中無限制復用,提高了頻譜利用率[2]。因此,WMN與WLAN等單跳網絡相比,更易于實現寬帶視頻監控等應用。 (3)動態路由協議 網絡節點的移動性使WMN的拓撲結構處于動態變化中,使有線網上的距離矢量協議和鏈路狀態協議無法應用,只能用Ad Hoc網絡的協議。其驅動方式分表驅動路由協議和源啟動按需路由協議[4-5]。前者在網絡中每個節點都維持一個到其他節點的相對穩定的最新路由表,通過在網絡內廣播路由更新信息反映網絡拓撲的變化,包括DSDV(目的序列距離矢量路由協議)和WRP(無線路由協議);后者只有當節點需要時才建立并僅在通信過程中維持路由,通信完畢后路由自動拆除,通過不斷地發現路由、維持路由和拆除路由來適應拓撲的動態變化,主要包括DSR(動態源路由協議)和 AODV(Ad Hoc按需距離矢量路由協議)。已有仿真表明,基于DSR路由協議的WMN在相同負載條件下,與PMP星形網絡相比具有更大的吞吐量和更小的延時[6],能適應傳輸監控視頻的需求。AODV協議以DSDV為基礎,采用DSR中的按需路由思想進行改進。 (4)雙工多址接入和分組交換技術 WMN 的多跳鏈路要求節點應具有中繼和轉發功能,要采用雙工通信實現數據的雙向傳輸。此外,考慮到WMN中的非對稱業務傳輸占主流,采用TDD(時分雙工)方式和基于OFDM的多址技術OFDMA,能夠充分利用WMN的特點。WMN承載了包括寬帶IP接人、視頻點播、網絡會議在內的多種具有較高QoS要求的業務,通常在網絡層使用分組交換實現。 2 基于WMN的嵌入式視頻監控系統 考慮到業務功能的靈活性,本文實現一種較為通用的視頻監控網絡平臺,采用圖1所示的由單個Mesh終端節點結構搭建WMN。它由多個具有路由功能的無線終端節點互聯構成Mesh網,在各點接入范圍內分布有多個視頻監控終端,完成現場視頻采集和壓縮,并將視頻流經最近的AP傳輸到與監控主機相連的目標節點;監控主機匯集了所有監控終端的視頻流,進行解壓、處理和同步播放,同時實現本地存儲或通過Internet完成視頻轉發。 ![]() 2.1 硬件結構 視頻監控終端(客戶端)硬件結構如圖2所示。考慮到監控終端對視頻壓縮能力、無線移動特性和低功耗的要求,采用華恒公司的專用Freeseale處理器iMx21作為主控芯片。它集成了支持H.264 標準的硬件編解碼器和ARM9核,功耗僅為200 mW。復合視頻信號經SAA7113的模擬端子輸入,經過模數轉換、濾波和縮放后,生成BT.656格式的視頻,輸出到iMx21。它對視頻進行 H.264格式的壓縮編碼,將數據流經USB控制器擴展的USB2.O接口輸出到VT6656模塊。VT6656模塊包含一個集成了MAC和基帶處理器的芯片和一個集成了功率放大器和天線的芯片,支持IEEE 802.11b/g無線傳輸。 ![]() 2.2 軟件結構 視頻監控終端軟件框圖如圖3所示。 ![]() (1)Linux操作系統 Iinux操作系統采用成熟穩定的 2.6.23內核。配置時根據硬件資源選擇Flash和SRAM的大小,在網絡子項中選擇對TCP/IP和IEEE 802.1l協議的支持,同時去除不支持的選項以縮減內核體積,執行編譯后得到Linux的內核映像文件。 (2)底層設備驅動 Linux 操作系統通過調用驅動程序的接口函數實現硬件訪問請求。SAA7113和VT6656的驅動程序分別控制相應芯片完成視頻采集,USB接口控制和網絡傳輸控制功能,采用中斷觸發/響應機制協調工作。 (3)上層應用程序 應用程序包括視頻采集、視頻壓縮、網絡傳輸和網絡訪問控制模塊。監控終端通過網絡訪問控制程序接收來自主機的控制命令,并同步更新至配置文件保存。為保證指令的可靠傳輸,采用面向連接的TCP/IP協議在主機和終端間建立一個端到端的虛擬連接,并通過套接字編程實現[7]。視頻采集程序負責啟動SAA7113的視頻采集和模數轉換,產生BT.656格式的視頻數據。視頻壓縮程序根據配置文件設定視頻壓縮格式(D1/VGA/CIF/QVGA/QCIF)、編碼方式(CAVLC/CABAC)、碼流 (CBR/VBR)和碼率(最大10 Mb/s),以此為參數調用QPixel提供的API,完成H.264視頻壓縮。網絡傳輸程序完成數據包的封裝,再經AR5005傳送到鄰近的無線AP。為保證視頻流的實時性,采用UDP/IP和RTP/RTCP協議對壓縮數據進行封裝[8],使用IEEE 802.11b標準(最大11 Mb/s的數據傳輸率,室外500 m的通信距離)完成數據包的無線傳輸。 (4)AODV在嵌入式Linux下的設計 AODV 程序從邏輯上可分為兩個部分:系統接口和AODV算法模塊。 系統接口部分的主要功能是用Linux系統提供的各種接口,為實現AODV路由協議,提供所需的各種信息和服務。本文AODV程序用到的系統接口主要包括可加載模塊的管理、網絡過濾器Netfilter的使用、路由線程的產生、內核路由表的修改,及定時器機制等。這部分是AODV程序與Linux系統交互的主要途徑。 如圖4所示,網絡過濾器由處于Linux協議棧不同點上的5個鉤子(hook)組成。它允許用戶定義內核可加載模塊,來寄存回調函數在hook點上。回調函數屬于內核可加載模塊的一部分,流經hook 點的數據分組將執行回調函數定義的操作。在AODV協議的實現方案中,利用了3個hook點,分別是NF_IP_LOCAL_OUT、 NF_IP_PRE_ROUTING、NF_IP_POST_ROUTING。在hook點NF_IP_LOCALOUT上,可以對所有本地輸出的數據分組進行處理;在hook點NF_IP_PRE_ROUTING、NF_IP_POST_ROUTING上,分別對從其他節點來、到其他節點去的數據分組進行處理。 ![]() AODV算法模塊主要是執行AODV協議邏輯。該算法模塊的目標是根據通信的需求建立正確的路由,通過接收和處理AODV控制分組,來建立或改變路由。總的來說包括以下幾個模塊:路由建立、路由表記錄、鏈路檢測和路由維護。 如圖5所示,后臺進程aodvd實現的是路由功能模塊,即路由算法。它作為后臺進程在用戶空間執行,負責與其他節點進行信息交互,建立并維護路由。 kaodv.ko是一個內核可加載模塊。在kaodv.ko中定義回調函數,并將回調函數分別寄存在網絡過濾器的NF_IP_LOCAL_OUT、 NF_IP_PRE_ROUTING和NF_IP_POST_ROUT-ING三個hook點上。本地輸出的數據分組發往網絡接口前,在決定其路由時,如果內核路由表中存在與數據分組目的地址匹配的路由,數據分組就被投遞到相應的網絡接口;若不存在,就會被寄存在hook點NF_IP_LOcAL_OUT 上的回調函數處理,通過raw socket將數據分組送往用戶空間的數據分組緩沖區進行排隊。同時,后臺進程aodvd啟動路由查找功能。若查找到與被緩存的數據分組報頭目的地址匹配的路由,就將緩存在用戶空間的數據分組通過raw socket重新注入內核;如果路由未被發現,則緩存的數據分組將被丟棄,并釋放它使用的內存空間。每個進入和離開本地節點的數據分組在流經hook點 NF_IP_PRE_ROUTING、NF_IP_POST_ROUTING時,將被相應的回調函數檢查,記錄每條路由的使用時間,并通過netlink socket:將路由表的使用狀況發往用戶空間,告知后臺進程aodvd內核路由表的使用狀況。后臺進程aodvd據此重置路由緩沖表的定時器。同時,后臺進程aodvd通過netlink socket.刪除內核路由表中過時的路由條目,或添加新的路由。在后臺進程建立路由時,通過654號端口、UDPsocket發送RREQ、RREP等控制分組。 ![]() 2.3 系統測試 監控主機通過IEEE 802.11b/g標準的無線網卡接入Mesh骨干網,從具有固定IP的監控終端獲取H.264格式的視頻流,采用筆者開發的客戶端解碼播放軟件完成終端設置、視頻解碼和實時播放,借助壓縮效率極高的H.264編碼,系統在主機端支持最大720×480(D1)、30幀/s(NTSC)的視頻格式。 結語 新一代的無線Mesh網絡利用網狀拓撲,多跳鏈路和先進的路由協議,通過融合IEEE 802.11a/b/g等無線通信技術,可實現組網。其優點是:組網迅速,結構靈活,傳輸率高,移動性好,可靠性強,成本低,可極大拓寬網絡視頻監控的應用范圍。隨著無線。Mesh技術的發展和國際標準的建立,其獨特的優勢必將在包括視頻監控在內的多種領域發揮重要作用。 無線Mesh網絡下的視頻監控系統,目前除了幾個國外廠家做出產品外,國內在這方面還處于起步研發階段。筆者在標準尚未制定的情況下,根據無線AdHoc網絡的路由協議特點,在嵌入式平臺下實現了一個簡單實用的無線網狀網絡下的視頻監控系統。該視頻監控系統可以和外網連接,實現真正意義上的無縫連接。實驗系統傳輸距離在無線網狀網內室外條件下可以達到500 m左右。 參考文獻 1. Firetide An introduction to wireless mesh networking 2007 2. Akyildiz I F.Wang Xudong A Survey on Wireless Mesh Networks 2005(9) 3. 姜紅旗.康凱.林孝康 拓展寬帶接入的無線Mesh網技術 [期刊論文] -電信科學2005(1) 4. 張祿林.郎曉虹.李承恕 多跳無線網路由選擇協議及其性能比較 [期刊論文] -鐵道學報2000(4) 5. 任智.郭偉 多跳無線網路由協議研究進展 [期刊論文] -電信科學2003(8) 6. 解亞琦.張海林.趙力強.曾憲瑋 基于 WLAN的Mesh網絡和PMP網絡性能比較 [期刊論文] -現代電子技術2007(3) 7. 王楓.羅家融 Linux 下多線程Socket通訊的研究與應用 [期刊論文] -計算機工程與應用2004(16) 8. 孫宏偉 基于ARM9的遠程圖像無線監控系統 [期刊論文] -單片機與嵌入式系統應用2006(7) 作者:桂林電子科技大學 李君懿 趙利 來源:單片機與嵌入式系統應用 2009 (4) |