李維,張衛強,閆光來
(寧波大學 信息科學與工程學院,浙江 寧波 315211)
WiFi-Mesh網絡視頻監控系統的設計
李維,張衛強,閆光來
(寧波大學 信息科學與工程學院,浙江 寧波 315211)
針對當前有線視頻監控系統在山區、工業區等地區布線困難,3G無線視頻監控系統價格高,WiFi視頻監控系統覆蓋范圍小等弊端,結合WiFi技術和無線Mesh網絡技術的特性,在采用嵌入式Linux操作系統的基礎上,提出一種WiFi-Mesh網絡視頻監控系統的設計方案,該系統能彌補傳統視頻監控系統的不足。重點闡述了WiFi-Mesh網絡視頻監控設計的總體框架和功能,針對WiFi-Mesh網絡視頻監控系統的關鍵技術問題進行重點研究,并提出可行的解決方案。實驗結果表明,監控畫面顯示流暢。
視頻監控;嵌入式Linux;WiFi-Mesh網絡
隨著經濟、文化和科技的發展,越來越多的無線應用市場需求激發了無線技術的迅速發展,同時也促進了無線視頻監控系統的發展。WiFi-Mesh網絡[1]是基于WiFi技術而發展出來的一種新型的無線城域網解決方案。由于其具有自組網、自修復、自平衡、自動擴展、自管理、高帶寬、覆蓋范圍廣等特點,并且兼容WiFi[2],目前正在世界范圍內尤其是歐美等發達國家掀起應用熱潮。與傳統無線網絡完全不同,WiFi-Mesh大幅降低運營商對網絡部署的復雜程度和成本。
Linux是一種多硬件平臺支持、多任務、通信能力強、可移植裁剪的嵌入式操作系統,以其靈活性、移植性強等優點被廣泛使用,并在嵌入式領域占據著一席之地,基于Linux的諸多優點,很多硬件逐漸在Linux的平臺上運用起來,這使得嵌入式得到飛速的發展。與兩者相結合的WiFi-Mesh網絡視頻監控系統具備兩者優點,在未來各個行業中具有廣泛應用前景。
WiFi-Mesh網絡視頻監控系統結構框圖如圖1所示。系統由多個WiFi-Mesh終端路由節點和客戶端組成。多個WiFi-Mesh終端路由節點構成WiFi-Mesh網絡,終端路由節點呈網狀分布,都是采用點對點的方式通過無線WiFi中繼鏈路互聯,將傳統WiFi中的無線“熱點”擴展為大面積覆蓋的無線“熱區”,并將終端節點數據回傳至有線IP骨干網[3],從而實現遠距離數據傳輸。該終端節點具有視頻數據采集功能和數據接收轉發功能。
視頻數據采集和整理傳輸通過視頻服務器來實現;數據接收和轉發通過USB無線網卡實現;客戶端主要是接收網絡傳輸過來的視頻流,然后顯示終端節點的監控畫面。

圖1 WiFi-Mesh網絡視頻監控系統結構框圖
2.1 系統硬件設計
整個系統的硬件設計主要是WiFi-Mesh終端路由節點的設計,該終端節點既具有視頻數據采集功能又有數據接收轉發功能。系統硬件設計結構如圖2所示。

圖2 系統硬件設計結構圖
系統的核心控制器采用的是三星公司的S3C244A處理器,視頻數據的采集使用的是USB攝像頭,數據的接收和轉發采用的是USB無線網卡B-LINK 802.11N。由于開發板上只有一個USB接口,所以通過USB HUB將USB攝像頭和USB無線網卡連接到Mini 2440開發板的USB接口上。S3C2440A處理器將攝像頭采集到的數據通過USB無線網卡直接傳輸或經中繼轉發至TP-LINK路由器,TP-LINK路由器與PC直接相連,然后在PC機瀏覽器中顯示。
2.2 系統軟件設計
系統軟件設計主要是監控點視頻服務器、客戶端、相應底層驅動程序和AODV-UU路由協議[4],系統軟件設計結構框圖如圖3所示。

圖3 系統軟件設計結構框圖
系統中所有軟件設計都是基于Linux操作系統平臺,采用的是Linux-2.6.29內核版本。監控點視頻服務器采用開源的mjpg-streamer視頻服務器軟件,主要是為客戶端提供實時的視頻流,即采集視頻數據,然后向客戶端發送實時視頻數據。客戶端主要功能是接受視頻服務器通過網絡傳輸過來的視頻流,然后在瀏覽器上顯示監控畫面。
在整個系統正常運行中起著關鍵性作用是AODV-UU路由協議,它對數據傳輸鏈路以及數據的接收轉發起引導作用。
3.1 WiFi-Mesh路由節點設計
WiFi-Mesh網絡由終端路由節點構成,主要是承載視頻流的傳輸。WiFi-Mesh網絡結構采用的是無線Mesh網絡客戶端結構[5],系統使用USB無線網卡和S3C2440A微控制器及外圍器件構建WiFi-Mesh路由節點。該節點同時具有WiFi-Mesh路由器和WiFi-Mesh終端的功能,并支持WiFi-Mesh路由器的網關功能,將WiFi-Mesh網絡和有線網絡進行連接。
WiFi-Mesh網絡的正常運行需要路由協議的維持,由于無線Mesh網絡是移動Ad Hoc[6]網絡的一種特殊形態,所以應用于Ad Hoc中的路由協議也適用于無線Mesh網絡,而在Ad Hoc網絡中使用的比較典型的路由協議有AODV路由協議和DSR路由協議兩種[7]。
3.2 AODV-UU路由協議
采用AODV路由協議,路由協議軟件使用的是AODV-UU。AODV-UU是瑞典Uppsala University大學和愛立信公司開發并發布的一種開源路由協議。AODV-UU路由協議運行的體系結構[8]如圖4所示。

圖4 AODV-UU路由協議運行的體系結構
AODV-UU的組成包括應用程序aodvd和驅動內核模塊kaodv.ko兩部分。aodvd運行于用戶空間,負責路由的建立、路由的維護和Linux內核路由表的維護。kaodv.ko運行于內核空間,采用Netfilter來處理數據包,根據路由表的信息,將數據轉發到下一跳節點。
Netfilter架構是由Linux TCP/IP協議棧中不同點上的5個鉤子(hook)函數構成,Netfilter架構的5個hook點位置關系[9]如圖5所示。

圖5 Netfilter架構的5個hook點位置關系
Netfilter允許用戶在這些hook點位置注冊并實現自己定義的回調函數,經過hook點的數據分組會執行回調函數的操作,并把數據分組重定向到用戶自定義的函數中,而用戶自己定義的函數可以幫助用戶空間完成檢測、丟棄、過濾、修改或排隊等這些數據分組功能。
3.3 AODV-UU路由協議移植
本文使用的路由協議(AODV-UU)版本是aodvuu-0.9.6[10]。AODV-UU的運行是利用Linux內核中Netfilter架構功能,所以需要Linux內核的支持。
內核具體配置如下:
(1)勾選上Netfilter項,具體如下:

(2)設置路由協議編譯成內核模塊,具體如下:
①將aodv-uu-0.9.6/lnx目錄下的內容拷貝到內linux-2.6.29/net/ipv4/kaodv目錄下cp-rf lnx home/ 2014/linux-2.6.29/net/ipv4/kaodv
②修改linux-2.6.29/net/ipv4/Kconfig文件,在最后一行添加如下內容:

③修改linux-2.6.29/net/ipv4/Makefile文件,在最后一行添加如下內容:

④執行make menuconfig命令,使kaodv能編譯成內核模塊,具體如下:

(3)修改lnx目錄下的Makefile文件。
①添加內核路徑


②注釋掉Fedora內核模塊
編譯內核make zImage,編譯內核模塊make modules,最后得到kaodv.ko內核模塊。
通過編譯aodv-uu-0.9.6源碼生成應用程序aodvd,具體步驟如下:
(1)修改aodv-uu-0.9.6目錄下的Makefile文件。
①修改交叉編譯器ARM_CC=arm-linux-gcc
②注釋掉ARM_CCFLAGS=-mbig-endian
③修改內核路徑為自己內核所在路徑
KERNEL_DIR=/home/2014/linux-2.6.29
④注釋掉內核部分代碼。
(2)執行make命令編譯源碼,執行完后在當前目錄下生成應用程序aodvd。
將kaodv.ko和aodvd拷貝到根文件系統的/bin目錄下。在開發板上啟動內核并加載kaodv.ko內核模塊,再運行aodvd應用程序,這樣AODV路由協議就工作起來了,那么一個WiFi-Mesh路由節點也就搭建起來了,值得注意的是在無線與有線的交匯處,需要將該路由節點設置成具有網關作用的路由,使其能將各監控點的視頻數據傳輸到有線骨干網內。通過多個WiFi-Mesh終端路由節點組建成WiFi-Mesh網絡進行遠距離的數據傳輸。
系統測試是在實驗室中進行,采用3個WiFi-Mesh終端節點組建成一個小型的WiFi-Mesh網路,這些終端路由節點既具有接收和轉發數據的路由功能,又具有視頻數據的采集功能。終端節點的IP地址設置如表1所示。A一端通過RJ45與TP-LINK路由器連通外網,另一端通過無線網卡與B、C組成WiFi-Mesh網絡,然后開啟NAT功能,使B和C也能通過A訪問外網。

表1 終端節點的IP地址設置
因為實驗是在較小范圍內進行,所以B要實現多跳,需在A中添加iptables防火墻功能丟棄直接從B傳輸來的數據,保證B的數據只能經C轉發至A,不能直達A,即B-C-A,從而實現多跳功能。啟動開發板,分別運行路由協議,AODV-UU路由協議正常工作發現鄰節點并添加自己的路由表中,各個終端節點的攝像頭將采集到的數據經視頻服務器處理之后分別沿著各自建立好的路由鏈路進行傳輸,最終將視頻流數據傳輸到客戶端。在火狐瀏覽器中輸入終端節點的IP地址就能顯示相應終端節點視頻監控畫面。
WiFi-Mesh可以被看成是無線Mesh網絡和無線局域網(WLAN)的融合,采用WiFi技術實現每條WiFi鏈路的終端節點互聯,同時采用多跳的組網方式解決了傳統的WLAN的健壯性差和可擴展性差等諸多問題。在不擴大成本、添加有線基礎設施的情況下,將無線設備作為中繼路由器使用,對傳輸數據進行不斷中繼轉發,極大地擴展了無線信號的覆蓋范圍。基于此網絡下的視頻監控系統相對傳統視頻監控系統有著獨特的優勢,對未來無線視頻監控行業向前發展有著巨大推動作用。
[1]蒙波.WiFi Mesh網絡的特點和應用[J].科學時代,2011(1):220-221.
[2]余海,曹雷.基于WiFi的無線網狀網(Mesh)組網技術[J].現代電子技術,2011,10:120-122.
[3]高峰,高澤華,文柳,等.無線城市電信級Wi-Fi網絡建設與運營[M].北京:人民郵電出版社,2011:60-61.
[4]謝佳,徐山峰.AODV、AOMDV和AODV-UU路由協議性能仿真與分析[J].中國電子科學研究院學報,2011(06):592-596.
[5]鄭彥光,徐平平,常瑞.無線Mesh網絡技術及其應用[J].電力系統通信,2007(07):16-20.
[6]王成,劉金剛.Ad Hoc無線網絡及其路由協議分析[J].計算機應用與軟件,2006(08):87-89.
[7]Amit N.Thakare,Mrs.M.Y.Joshi.Performance Analysis of AODV&DSR Routing Protocol in Mobile Ad hoc Networks[J].International Journal of Computer Applications,2010:211-218.
[8]張美平,許力,沈金波.基于嵌入式Linux的無線自組織網絡實驗床設計[J].計算機系統應用,2008,12: 16-20.
[9]張愛民,梁書劍,馬志強.AODV-UU協議實現技術分析[J].信息技術,2011(06):119-121,126.
[10]王小康.Ad Hoc安全路由協議的研究及嵌入式實現[D].北京:中國科學院研究生院(長春光學精密機械與物理研究所),2013:63-65.
Design on Video Monitoring System based on WiFi-Mesh Network
LI Wei,ZHANG Wei-qiang,YAN Guang-lai
(College of Information Science and Engineering,Ningbo University,Ningbo Zhejiang 315211,China)
In order to overcome the difficulties in cable monitoring system routing in mountain and industrial areas and such disadvantages as high cost of 3G wireless video monitoring system and low coverage of WiFi video monitoring system,this paper combines the advantages of WiFi technology and wireless Mesh network,with the help of embedded Linux operation system,and proposes a design scheme of video monitoring system based on WiFi-Mesh network,which can cover the shortage of conventional monitoring system.This paper focuses on the general structure and function of video monitoring system based on WiFi-Mesh network,and proposes a series of applicable solutions based on detailed discussions on key technical issues of system.The final experimental results show that the monitoring videos can be fluently displayed on screens.
video monitoring;embedded Linux;WiFi-Mesh network
TP277;TP393
A
1003-3114(2015)05-07-4
10.3969/j.issn.1003-3114.2015.05.02
李維,張衛強,閆光來.WiFi-Mesh網絡視頻監控系統的設計[J].無線電通信技術,2015,41(5):07-10.
2015-05-04
國家自然科學基金項目(61271137)
李維(1988—),男,碩士研究生,主要研究方向:嵌入式系統設計與應用。張衛強(1963—),男,副教授,主要研究方向:嵌入式系統設計與應用。