《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 物聯(lián)網開放環(huán)境下新型傳感網關
物聯(lián)網開放環(huán)境下新型傳感網關
2015年微型機與應用第14期
周 嚴
(南京郵電大學 通信與信息工程學院,江蘇 南京 210003)
摘要: 物聯(lián)網開放環(huán)境下有更加面向服務的趨勢,應用層對于感知層的靈活控制需求日益凸顯,傳統(tǒng)的上傳下達的網關已經很難適應。著眼于一種基于SDN-OpenFlow理念的傳感網關的設計,根據開放環(huán)境及OpenFlow的不足進行適當?shù)母倪M,并提出針對數(shù)據信息的封裝格式,以適應網關的流表處理機制。進而物聯(lián)網應用層可以通過控制通道對數(shù)據通道進行配置,實現(xiàn)網關對傳感網的開放環(huán)境的適應和對物聯(lián)網業(yè)務層的各種服務進行更好的支撐。此外設計主要還包括對網關結構分析、軟硬件實現(xiàn)等。最后分別從功能性和穩(wěn)定性兩個方面驗證了系統(tǒng)的有益特性。
Abstract:
Key words :

  摘  要物聯(lián)網開放環(huán)境下有更加面向服務的趨勢,應用層對于感知層的靈活控制需求日益凸顯,傳統(tǒng)的上傳下達的網關已經很難適應。著眼于一種基于SDN-OpenFlow理念的傳感網關的設計,根據開放環(huán)境及OpenFlow的不足進行適當?shù)母倪M,并提出針對數(shù)據信息的封裝格式,以適應網關的流表處理機制。進而物聯(lián)網應用層可以通過控制通道對數(shù)據通道進行配置,實現(xiàn)網關對傳感網的開放環(huán)境的適應和對物聯(lián)網業(yè)務層的各種服務進行更好的支撐。此外設計主要還包括對網關結構分析、軟硬件實現(xiàn)等。最后分別從功能性和穩(wěn)定性兩個方面驗證了系統(tǒng)的有益特性。

  關鍵詞: 傳感網關;OpenFlow;數(shù)據封裝

0 引言

  物聯(lián)網,也即萬物互聯(lián)技術,而物聯(lián)網的開放環(huán)境則是指網絡體系更加面向服務,包括整個網絡的資源整合,提供給用戶公共的資源公開的信息、多元和個性化的業(yè)務等[1]。本文主要著眼于傳感網所在的感知層的網關設備展開設計的論述。在物聯(lián)網開放環(huán)境中,面向服務的應用層對于底層數(shù)據平面的控制需求愈加強烈,網關的角色不再是上傳下達的郵差[2-3]。而且傳感網的應用囊括各種日常和惡劣場景:大面積信息感知、傳感節(jié)點動態(tài)組網、傳感網拓撲多變等,在這些情況下傳統(tǒng)的網關已經很難適應了。而目前在對網關設備的研究上主要分為如下幾個方向:(1)對網關的硬件設計;(2)對網關的工作協(xié)議和軟件的研究[4];(3)對網關設備的功能和屬性的研究;(4)具體場景型網關的研究。物聯(lián)網開放環(huán)境對網關提出了更高的要求[5]:(1)對物聯(lián)網應用層的控制開放和對感知層的感知開放;(2)對網絡的適應性;(3)豐富的業(yè)務的開展,對于控制管理的要求也更加突出。

  本文將在計算機網絡領域的軟件定義網絡技術引入網關設備,參考OpenFlow協(xié)議,并將其引入網關設備與平臺之間的通信過程[6];設計一種對感知層傳感網信息的封裝和通信協(xié)議來實現(xiàn)對各種傳感網協(xié)議的統(tǒng)一適配,并給出了網關的實力實現(xiàn)方式。

1 網關關鍵技術

  傳統(tǒng)的傳感網網關往往接口單一、邏輯固化、數(shù)據操作簡單、缺乏面向上層后臺部分的接口和支撐,已經很難滿足物聯(lián)網技術對底層的信息感知的需求。將在軟件定義網絡技術引入網關設備,參考OpenFlow協(xié)議,并將其引入網關設備與平臺之間的通信過程,實現(xiàn)平臺層直接處理原生的感知信息。設計一種對感知層傳感網信息的封裝和通信協(xié)議來實現(xiàn)對各種傳感網協(xié)議的統(tǒng)一適配。

  1.1 SDN-OpenFlow的引入

  將物聯(lián)網環(huán)境應用層的數(shù)據平臺類比SDN網絡控制器,將網關設備類比SDN網絡數(shù)據設備,從而參考OpenFlow來實現(xiàn)數(shù)據平臺和網關之間的通信。

  OpenFlow協(xié)議針對的計算機網絡設備往往配有多個以太網口[7-8],為了將OpenFlow協(xié)議的理念融入傳感網網關中,就需要針對網關設備的特點對協(xié)議進行一些改良。

  (1)根據地理位置和平臺的信息分割區(qū)域進行流表瘦身。傳感網節(jié)點之間的通信主要是傳感網節(jié)點與上層數(shù)據平臺的通信,不同部署區(qū)的傳感網節(jié)點之間很少會有通信需求。這個特點為數(shù)據流區(qū)域的劃分提供了可能。將整個物聯(lián)網開放環(huán)境下的感知層的傳感網進行數(shù)據流區(qū)域切割,不同區(qū)域之間的網關設備沒有直接通信的需求,流表幾乎沒有關聯(lián),可以很好地達到流表瘦身的效果。當不同區(qū)域的網關或者傳感網節(jié)點出現(xiàn)通信需求時,則要借助上層的數(shù)據平臺。

 ?。?)將流水線結構的流表改良為索引式結構。OpenFlow協(xié)議中的流水線式的流表匹配操作往往需要經歷多個流表才能查詢到。網關設備的數(shù)據流往往是固定的幾個類別,比如上行和下行數(shù)據流,因此可以按照這個特點改變原有的流水線式的流表組織,使用索引式流表組織使得每種數(shù)據流使用單獨的流表。每個索引對應的流表可以是異構的,可以將最常用的表項放在一張表,將支持擴展功能的擁有更細顆粒度的表項放在另外一張索引對應的流表中。流表組織結構如圖1所示,圖中按照數(shù)據流的類型(諸如版本號、上下行數(shù)據等)來作為區(qū)分的種類,只作為示例。

001.jpg

  在N張表中,每張表有a個表項的情況下,級聯(lián)的流表查找效率是:平均查找深度為(N+1)/2,存儲單元為N*a個,而索引式結構流表在同等存儲損耗的情況下,查找深度為2。在嵌入式備中索引式無疑是較好的選擇。

  1.2 數(shù)據適配與協(xié)議封裝

  為使流表的適配高效,數(shù)據流的格式越統(tǒng)一越簡單越好,但網關需要適配的協(xié)議種類是繁多的。比較常用的協(xié)議有TCP/IP、ZigBee、6LoWPAN、藍牙等[9],這給流表的適配帶來了很大難度。

  為了解決上述問題,使用32位/128位虛擬地址封裝數(shù)據載荷。因為很多處理器位寬都是32位,可以一次尋址讀取32位數(shù)據,128是32的整數(shù)倍,將所有的協(xié)議分為32位封裝和128位封裝兩種,32位封裝面向IPv4和ZigBee等,128位封裝面向IPv6和未壓縮6LoWPAN地址等。對于IPv4協(xié)議,不用任何處理即可;對于ZigBee地址,這里使用16位的網絡號和16位的節(jié)點地址作為標識符;對于IPv6協(xié)議和6LoWPAN協(xié)議不需要處理。版本號用以區(qū)分虛擬地址的長度是32位還是128位,還可以做流表選擇的索引功能。

2 網關系統(tǒng)設計

  2.1 結構設計

002.jpg

  本文提出一種針對上述若干關鍵技術的網關結構,如圖2所示,模塊之間的3條黑色虛線表示邏輯的控制通道。

  設備結構上分為若干模塊,感知信息數(shù)據從各種底層物理接口進入網關設備,進行統(tǒng)一適配或協(xié)議封裝,交由交換/路由單元模塊進行流表的匹配操作(流表就在交換/路由模塊),或交由通信適配模塊進入互聯(lián)網或轉發(fā)給其他網關等,同樣從互聯(lián)網或者數(shù)據平臺的數(shù)據信息也是類似邏輯機制;管理員可以通過近端控制單元對設備進行現(xiàn)場配置、管理,也可以通過控制通道與控制管理單元通信,配置底層通信適配模塊和交換/路由模塊以改變設備的工作方式或者轉發(fā)策略協(xié)同工作等。

  2.2 硬件設計

  網關的硬件平臺選擇了ARM平臺,它擁有更豐富的接口和軟件支持性[10]。

  核心部分主要包括處理器和存儲器,在這里存儲器分為Flash和RAM,分別用來數(shù)據存儲和運行內存。外圍接口部分主要負責為核心部分擴展接口,豐富接入屬性,主要包括電源、串口、USB和網卡等模塊。串口模塊主要是面向低速率的近距離的通信,USB(通用串行總線)模塊的主要作用就是通信組件的擴展,比如無線網卡等[11]。以太網卡模塊,一顆DM9000的百兆網絡適配芯片以實現(xiàn)網關穩(wěn)定的網絡接入。

  2.3 軟件設計

  選擇了嵌入式Linux作為軟件環(huán)境[12]。下面給出網關的核心部分的軟件實現(xiàn)。

  (1)流表的實現(xiàn)

  流表主要存在于交換/路由模塊。在索引式結構流表中,分為索引表和每個索引對應的頁流表,在本次實現(xiàn)中使用版本號作為索引表,頁表中每個表項包括包頭域、計數(shù)域和操作域。表項的操作域由枚舉類型組成,每個參數(shù)對應一個函數(shù)指針,其指向的函數(shù)正進行相關的操作。每個流表設置8個表項,多個流表通過樹狀鏈表呈索引形式締結起來。而且索引式的流表可以實現(xiàn)異構的流表,比如最常用的數(shù)據流的操作放在某一張流表的最前面,而且包頭域十分簡潔以保證匹配速度,另外一個索引對應的流表可能較少用到,但是支持擴展的功能,比如端口號、用戶ID和優(yōu)先級等,這種索引式的流表更好地權衡了效率和多樣性。

  實現(xiàn)流表的代碼如下:

 ?。?)數(shù)據封裝的實現(xiàn)

  在實現(xiàn)過程中需要針對地址格式的不同提供至少兩種封裝的頭部,結構體中包含一個指針指向數(shù)據凈負荷,使用指針的方式避免了數(shù)據的復制操作,使得處理過程更加高效。而且在不考慮字節(jié)對齊的情況下只占用了10 B。

  實現(xiàn)數(shù)據封裝的代碼如下:

3 系統(tǒng)驗證與分析

003.jpg

  這里通過一個應用場景來對網關進行分析評價:一個多任務動態(tài)感知的情景,如圖3所示,每個虛線圓圈內部的加點表示一個物理上的節(jié)點網絡。

  實驗中構建了一個簡單的類似圖3的環(huán)境,網關G2、G3直接連接6LoWPAN傳感網(N1、N2、N3分別為3個傳感網的協(xié)調節(jié)點),G1通過Wi-Fi與G2、G3連接并作為其上層網關提供互聯(lián)網接入。這里僅通過整個系統(tǒng)對流量的控制和時延兩個方面來驗證網關系統(tǒng)的功能性和穩(wěn)定性。從網關G1通過G2向N1發(fā)送PING包,原路返回,其間附上節(jié)點的時間。實驗5次,時間曲線繪制如圖4(a)所示。可見在網關與傳感網之間的通信時延較大,但是總體時延控制在500 ms以內且時延抖動小。G2網關采集N1和N3的數(shù)據,G3網關采集N2的數(shù)據,N1和N3數(shù)據量很大,所以G2網關的下行接口隨時都有可能堵塞,這時G2向數(shù)據平臺反饋,數(shù)據平臺反饋N3改道G3網關,從而避免了G2的堵塞,流量監(jiān)測如圖4(b)所示。

004.jpg

4 結論

  網關具有以下特點:重量體積輕巧,低功耗;電路板采用DC 5V-2A供電,發(fā)熱量少;常溫下主芯片最高43℃。在測試的一周內,各個模塊都無異常。

  上述的網關設計具有如下有益效果:(1)為物聯(lián)網開放環(huán)境的數(shù)據平臺的資源整合及控制傳感網提供了有效的支撐;(2)從傳統(tǒng)網關中提煉出控制面,能夠在運行中根據數(shù)據平臺的調度或者不同的需求更改網絡通信特性和適配特性;(3)流表及其控制機制的引入易于實現(xiàn)資源的調度。

  參考文獻

  [1] 張光河.物聯(lián)網概論[M].北京:人民郵電出版社,2014.

  [2] MARA K, ABDEEN M, HASHEM M. A gateway-based framework for transparent interconnection between WSN and IP network[J]. EUROCON 2009, EUROCON′09, IEEE, 2009:1775-1780.

  [3] Wu Lili, RIIHIJARVI J, MAHONEN P. A modular wireless sensor network gateway design[J]. Second International Conference on Communications and Networking in China, 2007 (CHINACOM 07), IEEE Press, 2007:882-886.

  [4] 陳國峰.多網關協(xié)同下的無線網絡規(guī)劃優(yōu)化研究[J].信息通信,2013(10):243.

  [5] Zhu Qian, Wang Ruicong, Chen Qi, et al. IOT gateway: bridging wireless sensor networks into Internet of Things[J]. 2010 IEEE/IFIP 8th International Conference on Embedded and Ubiquitous Computing (EUC), IEEE, 2010:347-352.

  [6] 龔向陽,王文東.一種面向多樣化網絡業(yè)務融合的SDN網絡結構[J].中興通訊技術,2013,19(5):16-21.

  [7] 劉誠明.軟件定義網絡技術及應用[M].北京:人民郵電出版社,2013.

  [8] NADEAU T D, GRAY K.軟件定義網絡:SDN與OpenFlow解析[M].畢軍主,譯.北京:人民郵電出版社,2014.

  [9] 李文仲,段朝玉.ZigBee無線網絡技術入門與實戰(zhàn)[M].北京:北京航空航天大學出版社,2007.

  [10] 黃志偉,鄧月明,王彥.ARM9嵌入式系統(tǒng)設計基礎教程[M].北京:北京航空航天大學出版社,2008.

  [11] 楊斌.嵌入式系統(tǒng)應用開發(fā)實踐教程[M].北京:科學出版社,2014.

  [12] 文全剛.嵌入式Linux操作系統(tǒng)原理與應用[M].北京:北京航空航天大學出版社,2014.


此內容為AET網站原創(chuàng),未經授權禁止轉載。