馬偉 王磊 朱睿明
摘 要:農(nóng)牧業(yè)是我國部分民族地區(qū)的支柱產(chǎn)業(yè),然而,部分民族地區(qū)基礎設施欠發(fā)達,農(nóng)牧業(yè)監(jiān)控網(wǎng)絡部署條件差、集中管控難度大,農(nóng)牧區(qū)智能化、自動化、移動性、低成本監(jiān)控問題亟需解決。文章探索面向民族地區(qū)農(nóng)牧監(jiān)控的物聯(lián)網(wǎng)應用平臺:OVS Pi(安裝OVS交換機的樹莓派),結合軟件定義網(wǎng)絡技術,以幫助相關部門對農(nóng)牧區(qū)的管理,促進民族地區(qū)農(nóng)牧業(yè)的建設。
關鍵詞:民族地區(qū);農(nóng)牧業(yè);軟件定義網(wǎng)絡;物聯(lián)網(wǎng)
我國少數(shù)民族地區(qū)具有地廣人稀的特征,經(jīng)濟發(fā)展較為落后,農(nóng)牧區(qū)面積較大且有監(jiān)控需求,但往往由于經(jīng)費受限,難以搭建起農(nóng)牧區(qū)的監(jiān)控系統(tǒng)。例如西藏地區(qū)因為其獨特的地理環(huán)境和生態(tài)環(huán)境,使得草原分布零散和生態(tài)環(huán)境脆弱,而農(nóng)牧區(qū)人民的生活主要是依托放牧為基礎,但氣候等因素變化造成草原環(huán)境多變,由于西藏草原變化基本處于無人檢測的狀態(tài),一方面牧民找不到合適的草場放牧[1],另一方面由于過度放牧造成草場退化日益嚴重[2],而目前難以找到一種低成本且動態(tài)監(jiān)測草原變化的設備應用于農(nóng)牧區(qū),基于對以上原因的深入分析,迫切需要一種能夠時刻動態(tài)監(jiān)測草原變化的設備。
1 平臺設計及功能實現(xiàn)
1.1 OVS Pi節(jié)點的構建
OVS Pi由于構建較為復雜,因此以其實現(xiàn)的不同功能為劃分,將OVS Pi節(jié)點分為3個層次,分別為設備層、系統(tǒng)層、交換層。如圖1所示。
1.1.1 設備層
設備層提供移動性和對物理世界的感知能力,提供基礎的物聯(lián)網(wǎng)節(jié)點能力。OVS Pi在設備層增加了智能小車作為節(jié)點移動性支持,智能小車可通過編程的方式使其驅(qū)動并支持和樹莓派的底層的通信。除此之外,小車上還搭載了一個高清攝像頭,可供OVS Pi調(diào)用配合小車實現(xiàn)移動監(jiān)控的物聯(lián)網(wǎng)應用。由于樹莓派通過Arduino板與小車建立底層通信,所以OVS Pi可直接通過小車已有的驅(qū)動接口來實現(xiàn)小車驅(qū)動的控制。在攝像頭的畫面捕捉方面,通過在OVS Pi的Raspbian系統(tǒng)上安裝Opencv模塊實現(xiàn)計算機視覺感知功能,從而調(diào)用小車的攝像頭進行移動監(jiān)控。
1.1.2 系統(tǒng)層
OVS Pi的系統(tǒng)層提供組網(wǎng)能力、計算能力和存儲能力,包含完整的TCP/IP協(xié)議棧和MANET協(xié)議棧,建立Ad Hoc形式的自組織網(wǎng)絡實現(xiàn)OVS Pi間底層的網(wǎng)絡通信,并具有一定的靈活性。同時系統(tǒng)層還提供了可觀的計算能力和存儲能力,此系統(tǒng)層上相當于物聯(lián)網(wǎng)中中間件的作用,不僅支持感知和移動能力,進行物聯(lián)網(wǎng)感知,還能為上層提供計算服務和通信基礎。系統(tǒng)層還能安裝SDN控制器,為OVS Pi節(jié)點組成的網(wǎng)絡進行集中高效的管理。并且可以編寫腳本為上層和底層的通信提供一個應用編程接口。
1.1.3 交換層
交換層提供SDN數(shù)據(jù)平面,受控于SDN控制器,達到對整個節(jié)點的集中式管控的目的。為使具備了物聯(lián)網(wǎng)感知能力和MANET自組織組網(wǎng)能力的OVS Pi實現(xiàn)Software-Defined Ad Hoc IoT的功能,需要將OVS交換機安裝到樹莓派上實現(xiàn)交換層的功能。在這個層次OVS作為SDN的交換設備,搭建基于OpenFlow的邏輯網(wǎng)絡是系統(tǒng)實現(xiàn)的關鍵部分,其中利用VxLAN的技術搭建節(jié)點兩端的隧道實現(xiàn)OVS Pi各個節(jié)點之間的OVS連接將重構原本的自組織網(wǎng)絡。
1.2 OVS擴展OpenFlow協(xié)議
項目擴充現(xiàn)有的OpenFlow協(xié)議中的“action”字段,以自定義action作為流表的指令—動作調(diào)用物聯(lián)網(wǎng)應用將把OpenFlow協(xié)議擴展到了物聯(lián)網(wǎng),把每個自定義的action對應一個相應的應用,在添加新的action后,添加的action由用戶態(tài)的ofctl組件將包含新action的流表推入vswitchd,在經(jīng)過識別和處理后傳入內(nèi)核模塊openvswitch.ko進行解析和處理,新的OVS模塊經(jīng)編譯組建后就可下發(fā)包含新添加的action的流表,OVS Pi節(jié)點在交換層收到新的action的流表后只需通過與物聯(lián)網(wǎng)應用的接口的運作便可進行物理世界的協(xié)作感知。
1.3 SDN控制器REST API與物聯(lián)網(wǎng)的接口
在OVS Pi的物聯(lián)網(wǎng)應用中,每個節(jié)點之間通過基于OpenFlow的邏輯網(wǎng)絡進行網(wǎng)絡通信,每個節(jié)點都可以解析Floodlight的REST API的URL,通過將流表的action字段解析來編寫物聯(lián)網(wǎng)應用程序的接口。當SDN下發(fā)的流表的action匹配到時,則執(zhí)行所對應的物聯(lián)網(wǎng)應用。
我們設計一個API以爬取Floodlight控制器北向REST API的URL來解析相應的SDN的信息,以控制器發(fā)給節(jié)點的流表作為分析的對象,解析出action字段的值進行相應物聯(lián)網(wǎng)應用執(zhí)行的匹配。
在實驗過程中,查看受控于Floodlight控制器的節(jié)點的dpid以及IP的地址后節(jié)點執(zhí)行API腳本監(jiān)聽,對目標節(jié)點發(fā)送流表如圖2所示。
節(jié)點作出響應,由控制器操控監(jiān)控節(jié)點,智能小車開始移動和實時監(jiān)控如圖3所示。
由實驗過程可以看出,利用設計出的API,可通過控制器下發(fā)流表來喚醒MANET節(jié)點的物聯(lián)網(wǎng)應用的功能,而一臺控制器操縱多個MANET節(jié)點的實現(xiàn)簡化MANET網(wǎng)絡具體的應用,對于數(shù)據(jù)采集和行為管理有了顯著的提升。
2 結語
本項目的總體研究目標是針對民族地區(qū)經(jīng)濟欠發(fā)達,網(wǎng)絡部署較差的現(xiàn)狀而搭建的一個實現(xiàn)農(nóng)牧區(qū)監(jiān)控的物聯(lián)網(wǎng)應用平臺。平臺還擴展了OpenFlow協(xié)議使其支持更多的“action”字段,以SDN的方式令OVS Pi進行物理世界相互協(xié)作的感知。本項目利用SDN、OVS以及樹莓派的OVS Pi,集中式管控由OVS Pi在農(nóng)牧區(qū)搭建的MANET網(wǎng)絡并生成全局拓撲來監(jiān)控農(nóng)牧區(qū)實時信息,實現(xiàn)對農(nóng)牧區(qū)生態(tài)環(huán)境的全面監(jiān)控,旨在解決少數(shù)民族經(jīng)濟欠發(fā)達地區(qū)農(nóng)牧區(qū)草場和牧群監(jiān)測困難的問題。
[參考文獻]
[1]章榮利,李琳彬.基于西藏農(nóng)牧區(qū)草原土壤溫濕度pH監(jiān)控系統(tǒng)[J].西藏科技,2014(5):76-78.
[2]魏興琥,楊萍,王亞軍,等.西藏那曲現(xiàn)行草場管理方式與草地退化的關系[J].草業(yè)科學,2003(9):49-53.