王進華+蔡莉莉+錢海忠


DOI:10.16644/j.cnki.cn33-1094/tp.2016.07.005
摘 要: 物品萬維網采用標準的應用層http協議去替代傳輸層協議,實現傳感器設備與因特網相連,但是在物品萬維網上要實現用戶對資源的透明訪問及快速構建應用程序是一大挑戰。針對此問題提出了一種面向服務架構的物品萬維網的分布式框架,它能夠對聯入該框架的各類資源透明地管理、查找、訪問和控制,并對外提供面向終端用戶和智能軟件的接口。
關鍵詞: 傳感器萬維網; 語義萬維網; 萬維網服務; 物聯網; 物品萬維網
中圖分類號:TP393 文獻標志碼:A 文章編號:1006-8228(2016)07-16-04
SOA distributed framework for Web of Things
Wang Jinhua1, Cai Lili2, Qian Haizhong3
(1. Zhejiang Software Technology Co., Ltd., Zhejiang, Hangzhou 310053, China; 2. CEIE, Nanjing University of aeronautics & astronautics;
3. College of information technology, jinling institute of technology)
Abstract: Web of Things (WoT) uses a standard application protocol HTTP to provide the connection of sensors with Internet instead of the transport protocols. But it is a big challenge for users to realize the transparent access to resources and build applications quickly on WoT. For this problem, this paper presents a SOA distributed framework for WoT, it can manage, search, access and control all kinds of resources in the framework, and provide the interfaces to the end users and intelligent software.
Key words: Sensor Web; Semantic Web; Web Service; Internet of Things; Web of Things
0 引言
傳感器在人們的客觀世界及虛擬數字世界之間正扮演著重要的橋梁作用。傳感器萬維網、物聯網[1]、物品萬維網等一些新興領域應運而生,主要是為了實現物品與物品、人與物品、人與人之間隨時隨地的互聯、相互操作。但是由于當前各類異構的傳感器網絡都是面向特定應用領域,實現終端用戶通過因特網隨時隨地訪問各類異構的傳感器網絡資源,以及各類異構網絡系統智能交互是其最大的挑戰。
萬維網服務具有模塊化、自描述和自包含的特點,尤其是用戶能夠通過因特網協議方便訪問萬維網服務,因此它已成為一種集成各類同構或異構的分布式系統的有效手段。萬維網服務技術與傳感器技術相結合受到了越來越多的研究者關注。文獻[2]采用restful web[3]技術實現對設備功能接口進行封裝,便于用戶利用標準因特網協議進行訪問。傳感器萬維網[4]是傳感器網絡和萬維網這兩個技術融合的產物,但是傳感器萬維網只是實現了傳感器與因特網的互聯,其還存在一些不足:①面向特定的應用,各類傳感器應用中缺乏統一的數據表示形式,各類異構數據難以智能交互,不能有效被集成到別的相關應用中;②用戶難以快速的組織這些資源,構建面向特定需求的應用。因此傳感器萬維網還不能成為一個擁有眾多智能設備的協同系統。
物品萬維網當前面臨著與傳感器萬維網同樣的挑戰[3]:要建立抽象層面,可以獲取、處理以及管理所有物品數據;要能有效的管理物品的質量或是特性(或是服務質量);要能夠集成和融合來自各類物品網絡數據(如傳感器萬維網);要能夠識別和定位相關的物品資源;能夠快速創建應用。
本文采用面向服務架構(Service Oriented Architecture,SOA)技術,提出了一個面向物品萬維網的分布式架構(Distributed Framework for Web of Things,DFWoT),它為終端用戶提供了服務注冊、查找、訪問以及服務集成的功能。各類嵌入傳感器設備的物品以及各類面向特定應用的傳感器萬維網,它們的功能接口都會以萬維網服務技術來進行封裝,并注冊到DFWoT中。在DFWoT中,傳感器數據都會轉換成統一的數據表示方法,實現各類數據的統一處理,同時它在最上層提供兩類接口:①面向普通用戶的接口;②面向智能軟件的應用接口。
1 相關工作
傳感器萬維網、物聯網等眾多新興領域的興起,涌現出了眾多面向這些研究領域的分布式框架。傳感器萬維網框架(Sensor Web Enablement,SWE)是在傳感器萬維網中最為突出的一個,它通過萬維網來連接傳感器,構造基于萬維網的傳感器網絡和應用,能夠通過萬維網的標準協議來查找、訪問以及控制的數據中心。雖然SWE提供了一套協議標準和定義了相關服務規則,但是它還存在一些缺陷[4]。首先是SWE沒有利用本體對數據進行語義表述,語義交互難以實現;然后SWE過分注重數據的獲取,卻忽略了數據的過濾以及信息的過載;York大學GeoICT實驗室提出了GeoSWIFT[5],它是一個基于萬維網服務的框架,采用SWE標準對數據進行集成。它就像一個網關服務能夠對異構空間傳感器的數據進行融合與集成。該框架由三個層面組成,底層是傳感器層,包含了各類實際的傳感器設備;中間層為通信層,它實現數據以及控制信息在上下兩層進行交互;最上層為信息層主要是對傳感器資源進行存儲、分析、變換、管理以及顯示。文獻[6]提出了一種框架(IrisNet),它有兩個層面:感知智能體和組織智能體。感知智能體主要實現數據的獲取以及提供訪問傳感器的接口;組織智能體實現存儲服務。IrisNet最大的特點就是感知智能體層對數據進行預處理,減少了未處理的數據在傳感器之間的傳遞。組織智能體收集和分析從感知層面獲取的數據并響應終端用戶的應用請求。雖然眾多面向傳感器萬維網的框架被提出來,但是它們還難以滿足物品萬維網的需求,只能作為物品萬維網的一個子系統。文獻[7]提出了一個面向資源的物品萬維網框架,但是它只是把無線傳感器、嵌入式設備以及電子標記的物品利用萬維網技術進行封裝,便于用戶通過Web進行訪問,還不能有效的對物品資源進行管理。文獻[8]分析了物品萬維網的一些需求,并提出了webPlug的物品萬維網框架,它也只是提供了對采用restful機制聯入的設備進行訪問,還未能解決Web系統交互,物品數據語義處理,尤其是在其之上構建新的應用。
2 DFWoT分布式框架的設計
許多內嵌傳感器設備的物品可以直接聯入萬維網,但是有些資源必須通過類似網關節點的機制,才能聯入萬維網,如某些面向特定領域的傳感器網絡,它們節點功能只是采集數據功能。物品萬維網可看成是一個協同系統,是由眾多傳感器網絡等獨立系統組成,而不僅僅是單一獨立的網絡。本文提出采用面向服務架構的物品萬維網架構就是能夠把各類物品、各類傳感器網絡集成到一個平臺上,為上層的應用提供一個透明的、統一的服務接口[9]。終端用戶可以利用它方便的訪問、查找物品萬維網上的各類數據,同時也能夠利用這個框架的軟件接口快速構建應用程序。DFWoT的架構如圖1所示。
2.1 物理層
物理層主要是面向實際訪問的物品資源。由于大量低價的傳感器節點的部署,它不像傳統的計算機網絡,每個節點都有全球惟一ID標識,特別是那些撒播部署的節點。因此它們不太可能全部作為獨立的資源直接聯入DFWoT中。在DFWoT物理層主要處理兩類物品資源:一類是具有位置相對固定且具有較長生命周期的物品,如攝像機、監視器等;另一類是面向特定應用傳感器網絡節點,它們都會以網關節點的方式聯入DFWoT。對于各類傳感器萬維網資源,由于它們已采用萬維網機制,因此DFWoT將是這類資源的注冊中心和交互中心。
2.2 適配層
在物理層接收和處理的都是未經過處理的數據,它們都是面向特定的應用領域,因此數據格式呈多樣化。要實現異構系統自動交互及數據融合,就必須要有統一的數據表示格式,同時能夠使數據表示格式內涵一些語義信息[10]。雖然SWE的提出是針對傳感器萬維網的,但其標準是較為成熟的,本文采用SWE中的SML語言,并利用SWSDL本體標注方法來構建一個面向傳感器設備的統一數據表示格式,用來描述所有傳感器節點采集的數據。在本節,提出了一個虛節點的概念,它承擔類似網關節點的服務角色,管理物理層中兩類資源。物理層兩類資源只要聯入到DFWoT,都會有一個相應的虛節點與之對應。虛節點具有兩大功能:一是與物理傳感器連接及相互通信;另一個就是對收集的數據以統一格式進行轉換、對其進行語義標注并傳送到Web處理層;雖然加入DFWoT的傳感器資源屬于不同的組織或面向不同的應用領域,但是采用虛節點方式接入到因特網中具有明顯的優勢。各類傳感器接入時,它們只需實現本系統專用數據格式能與DFWoT的統一數據格式相互轉換功能,并且可以有選擇的向外提供服務;語義標注中所采用什么樣的領域本體庫是一直制約語義萬維網發展的瓶頸,因為難以實現滿足各類應用領域的統一本體庫。采用虛節點的方式,各類異構的傳感器網絡資源數據標注就可以采用它們所屬的領域本體庫。
2.3 Web處理層
Web處理層主要實現兩大功能[11]:服務注冊和數據預處理。為了能夠包容傳感器萬維網中的所有資源,DFWoT提供了兩類資源注冊服務:①傳感器網絡的實例注冊服務SIR(Sensor Instance Registry);②以Web服務形式對外提供服務的資源。這樣在DFWoT中就可構建于傳感器萬維網服務之上,形成一個協同系統。獨立的傳感器萬維網系統也是通過此種形式接入DFWoT中。
雖然適配層中的數據是采用SWE中的SML標準,但SML一般是面向傳感器網絡節點,因此在Web層增加了數據預處理功能。它能實現SML格式到RDFS格式、OWL格式的轉換,而Rdfs和OWL是當前語義萬維網采用的比較完備的數據表示方法。經過Web層的數據預處理模塊,知識層就可以對這些數據進行推理、分析。
2.4 知識層
語義網實現了海量數據智能處理,能對數據再分析,這樣就可以更快、更準確的滿足終端用戶的應用需求。在DFWoT的知識層中,最重要的一個功能單元就是語義處理功能組件。它集成了一些語義推理工具,如RACE、JENA等,能夠對從適配層傳來的數據進行語義推理、分析,獲取新知識[15]并存儲在關系數據庫或是相關本體知識庫中供終端用戶進行查詢。本體是實現語義智能的主體,因此本體庫的管理是知識層中重要模塊,它的主要功能是存儲那些面向各類特定領域的本體,如OWL-time Ontology。
2.5 應用層
實現終端用戶透明訪問物品萬維網上所有資源是物品萬維網最重要的目標之一。DFWoT在應用層內嵌了Web Server,提供了面向終端用戶接口,這樣,終端用戶可以通過現有絕大多數的Web瀏覽器就能通過因特網隨時隨地訪問DFWoT;通過調用萬維網服務接口,能實現各類應用軟件自動交互。為了能夠快速的構建滿足客戶多變需求的應用程序,在DFWoT提供了面向應用程序接口,由于都是采用了萬維網技術,DFWoT上的資源就可以看成一個個具有獨立單元功能的組件,便于用戶快速的建立應用程序。
3 家庭智能電器應用場景
物品萬維網正逐步被應用到各個相關領域,為了能夠更好地說明本文提出的分布式框架,我們以智能家庭為應用場景。在智能家庭眾多設備中,有些設備可以內嵌Web Server,它就可以直接利用Restful APIs并注冊到這個框架中成為DFWoT的一部分,而有些設備可能需要通過3.2節中提到類似網關節點的“虛節點”,來實現與DFWoT的聯接并實現協議的相互轉換,例如:Zigbee,bluetooth等。
家庭中一些電器設備被安裝上一個智能電卡(Plogg),它是一個支持藍牙技術的無線傳感器節點,適合作為電器設備的一部分。它能夠實時獲得設備的用電信息,也能按時間段統計用電量,但是為了能夠讓它聯入DFWoT,必須借助網關節點;家庭監控攝像頭由于內嵌一個Web Server服務器并以Web Service形式提供接口。如圖2所示。虛節點(網關節點)對應適配層功能,完成協議轉換以及數據轉換功能。為了能更好的聯接智能卡(Plogg), 本場景中虛節點模擬了PNC的相關功能。智能家庭所有設備通過這兩種方式都可以注冊到DFWoT并以服務的對外開放,用戶可以通過該分布式平臺訪問相關設備信息。
4 結束語
語義網、萬維網服務和面向服務架構等多種技術的融合為實現物品萬維網提供了一條有效的途徑。本文提出了一個面向服務架構的物品萬維網分布式框架,是為了能夠連接、管理與之互聯的物品資源。它既是一個注冊中心,同時也是一個服務提供中心。終端用戶與智能軟件都能通過它較為方便的訪問物品資源或是利用服務組合組件,快速集成各原子功能生成滿足客戶需求的新的應用程序。文中智能家庭應用場景雖然較為初級,但是由于相關的技術都較為成熟,DFWoT充分利用已有技術并對它們進行集成,因此它具有一定可行性和有效性。
參考文獻(References):
[1] Iera, A., Floerkemeier, C., Mitsugi, J., etc, The internet of
Things[J]. IEEE Wireless Communications,2010:17(6):8-9
[2] Dominique G., Vlad T.. Towards the Web of things: Web
mashups for Embedded devices[C].WWW2009, Madrid, Spain,2009.
[3] Corcho, O., Garcia-Castro, R., Five Challenges for the
Semantic Sensor Web, Semantic Web journal,2010.http://www.semantic-web-journal.net/sites/default/files/SWJ103.pdf.
[4] Moodley, D., Simonis,I.; A New Architecture for the
Sensor Web: The SWAP Framework[C], workshop of the 5th international Semantic web conference ISWC,2006.
[5] Liang, S. H. L., Croitoru, A., Tao, C. V., A distributed
geospatial infrastructure for Sensor Web[J]. Computers & Geosciences,2005.31(2):221-231
[6] Gibbons, Phillip B., Brad Karp, et al, IrisNet: An
Architecture for a Worldwide Sensor Web[J]. IEEE Pervasive Computing,2003.2(4):22-33
[7] Guinard D., Trifa V., Wilde E.; A resource oriented
architecture for the web of things[C]. internet of things 2010, Tokyo,2010:1-9
[8] Ostermaier B., Schlup F., Romer K.; WebPlug: A
framework for the web of things[C]. Pervasive computing and commnications workshops 2010, Mannheim,2010:690-695
[9] Hamblen, J.O., van Bekkum, G.M.E.. An Embedded
Systems Laboratory to Support Rapid Prototyping of Robotics and the Internet of Things[J]. IEEE Transactions on Education,2013.56(1):121-128
[10] Pfisterer, D., Romer, K., Bimschas, D., etc. SPITFIRE:
toward a semantic web of things[J]. IEEE Communications Magazine,2011.49(11):40-48
[11] Guinard, D., Trifa, V., Karnouskos, S., Spiess, P., Savio,
D.. Interacting with the SOA-Based Internet of Things:Discovery, Query, Selection, and On-Demand Provisioning of Web Services[J].IEEE Transactions on Services Computing,2010.3(3):223-235