摘 要:根據YD/T 2437-2012標準,給出了物聯網系統的應用開發平臺的設計。討論了為應用層的覆蓋網絡業務需求的實現取得網絡資源支持的途徑,為該網絡的拓撲結構的生成和維護提供了基礎。所得結果是解決物聯網系統應用開發問題的一種實用性方案。
關鍵詞:物聯網;YD/T 2437-2012;覆蓋網絡;應用開發平臺
中圖分類號:TP393 文獻標識碼:A 文章編號:2095-1302(2015)03-00-03
0 引 言
在國家標準YD/T 2437-2012[1]的體系結構中 [2]提出了涉及網絡/業務網絡層和應用層的覆蓋網絡子層。覆蓋網絡是通過虛擬化技術構建在網絡/業務網絡層之上應用層子層的虛擬網絡,它是物聯網應用的需求描述的平臺,是由虛擬節點通過虛擬鏈路連接構成的。網絡/業務網絡層中包括許多異構的基礎設施資源的實體節點,它們是由實體路徑連接起來的。虛擬節點的選擇涉及網絡/業務網絡層實體節點可分為三類:參考點Ia、參考點Ia”終端和參考點Ia”網關[1,2]。虛擬鏈路的確定依賴這三類實體節點各自的功能形成彼此之間相連接的實體路徑。覆蓋網絡的構建,還要有一個將一個具有虛擬節點和虛擬鏈路約束的覆蓋網絡映射到網絡/業務網絡層中的過程的映射方案,其中虛擬節點映射到網絡/業務網絡層中的實體節點上,虛擬鏈路映射到網絡/業務網絡層中的實體路徑上,而且滿足覆蓋網絡中虛擬節點和虛擬鏈路對資源需求的約束。使得覆蓋網絡中的虛擬節點及其被連接虛擬鏈路,可能對應于網絡/業務網絡層中的實體節點及其被連接的多個實體鏈路中的一個路徑。應用層的覆蓋網絡被要求具備兩方面的功能,既要為應用層實現業務需求提供網絡資源的途徑,又要生成并維護網絡/業務網絡層中網元的網絡拓撲結構。為了這兩方面的功能得到更清晰的表達,我們在文獻[1]的基礎上,基于YD/T 2437-2012體系結構,進一步給出物聯網系統的應用開發平臺。
1 應用開發平臺的框架設計
物聯網系統的應用開發平臺模型(圖1)是在提出了應用層的覆蓋網絡子層[2]的基礎上設計的。在應用開發平臺框架中,從網絡/業務網絡層的視角,把應用層的覆蓋網絡描述為虛擬網絡,網絡/業務網絡層中覆蓋網絡為應用支撐網,作為承載覆蓋網絡的基礎設施。應用支撐網的網元是將這三類實體節點的組合并加以封裝形成的。
圖1 根據YD/T2437-2012的應用開發平臺框架
具體講,應用層的虛擬覆蓋網絡是應用開發者或用戶完成應用開發提供業務需求描述的平臺。業務需求描述將通過專門的模型來提出的請求,并提出應該把哪些網元組合在一起生成網元的網絡拓撲結構來實現,即業務需求被解耦為兩個層面:虛擬覆蓋網絡上的業務需求模型和網元的網絡拓撲結構。實現模型提出來的這些請求,還要期待位于網絡/業務網絡層的應用支撐網承接虛擬網元的映射的響應,然后通過感知延伸代理,從組合節點容器那里獲得回答。
2 框架模型的主要成分的結構
根據YD/T2437-2012的應用開發平臺框架涉及應用支撐網、感知延伸代理和組合節點容器等。
2.1 節點組合容器
YD/T 2437-2012規定:感知延伸層由物聯網終端、物聯網端節點、感知延伸網、物聯網接入網關,以及傳感器、執行器、智能控制等部件構成。物聯網接入網關通常作為物聯網節點的代理,向物聯網網絡/業務層進行注冊、認證鑒權和信息交互等。具有信息采集、標識讀取、信息存儲、根據網絡/業務層指示執行特定動作等能力。感知延伸層實現物理世界信息的采集、自動識別和智能控制。并具體地通過參考點Ia,參考點Ia”, 參考點Id,參考點It和網絡層進行信息交互。這些節點,通常會利用各種近距離技術、自組織組網技術等,通過多跳轉發等方式,來實現節點間的信息傳遞。
大多數今天的應用程序是通過低層的服務(無論是基于REST 或基于 SOAP) 面向直接訪問資源和/或設備。實體的抽象,這是IoT-A的關鍵概念之一,主要介紹了來自處理低層資源的復雜性和以物聯網為中心的系統的簡單化實施的抽象。沿著同樣的路線,利用簡單的資源/設備和其他(物聯網外部)的服務為基元,我們將推動“實體服務”和“集成服務”作為更高層的抽象,從而隱藏(屏蔽)處理來自物聯網的開發者和用戶的復雜性[3-5]。因此,可以將物聯網終端、物聯網端節點、感知延伸網等節點,組合成節點構件。節點構件可以獨立部署或被組裝,并在此基礎上構建節點組合容器。在開發平臺框架的設計中,感知延伸層的部件及其相應的功能都將融入到節點組合容器和感知延伸代理這兩個主要成分中。由節點構件組裝而成的節點組合容器,具有傳感器、執行器等部件,通過感知延伸代理,響應網絡/業務層的業務請求,部署節點構件執行。節點構件向外暴露其接口,通過接口向外界提供服務,并根據環境變化動態調整自身行為。根據業務請求感知延伸代理,可以指示節點組合容器任意選擇或組裝節點構件。節點組合容器結構如圖2所示,包括:節點構件,節點構件服務管理兩部分。
圖2 節點組合容器結構圖
節點組合容器結構圖中,節點構件由節點構件實例和執行器組成;節點構件服務管理涉及傳感器和規則引擎、規劃引擎、命名服務、組合服務等功能模塊。在具體實現中,節點組合容器一方面管理節點構件服務的生命周期,為構件實例提供執行業務請求的運行環境,另一方面為構件訪問服務管理的功能模塊提供支持。每個構件實例的環境信息模塊,既要截取傳感器中相適應的外界信息,又要解析來自感知延伸代理轉發的業務請求。按照規則引擎、規劃引擎、命名服務、組合服務等預置的功能模塊,對節點構件實例提供的規則集、規劃集、行動集進行整合,然后交付執行器去實現。
2.2 感知延伸代理
對應YD/T 2437-2012的規定,感知延伸代理包涵物聯網接入網關、智能控制等部件。一方面感知延伸代理通常作為組合節點容器中節點構件及其組合的代理,能夠獲知容器中的通信狀態,并進行注冊、認證,如果需要,可以向網絡/業務層提供;另一方面,物聯網在由大量的連接異構的設備構成的一個迅速改變的環境內操作,滿足需求驅動的自適應能力的智能體成為必需[6,7]。感知延伸代理結構如圖3所示。
圖3 感知延伸代理結構圖
感知延伸代理作為有決策能力的自主的智能體,能截取來自物聯網網絡/業務層的消息,并向組合節點容器發起會話,也可根據需要選擇性的向具體節點構件透傳消息,特別應用層的消息,啟動執行應用程序所需的功能。因此,感知延伸代理要將節點構件接收到的環境狀態信息進行解釋和分類,并將其分配到相關的感知延伸代理的部件中,在解析業務請求后,需根據環境發生的變化做出決策,實現節點構件之間的動態協作,完成來自應用支撐網的網元的業務部署。因此,圖3給出的感知延伸代理的結構包含了協調控制器、監視傳遞模塊、推理決策模塊、感知適配器、和執行適配器等部件,具體體現該智能體在復雜動態的物聯網環境中,采取分布式的策略處理機制,實現感知、決策和執行的功能。
協調控制器的配置接口接收到業務請求時,通過查詢監視傳遞模塊和推理決策模塊提供的相關信息,來確定是否響應服務的請求。在接受請求的服務過程中,執行適配器將調用相關的節點構件組合。服務結束后,感知適配器將結果返回,通過協調控制器提供給服務請求者。感知適配器負責對節點組合容器提供相關的管理接口和功能接口。將異構性的各種不同節點構件,進行統一抽象后組裝成為各種組件動態注冊進行緩存,并創建、刪除和更新上傳各種組件標識,以及面向容器進行通信地址的解析。使協調控制器可以使用統一的標識符實現對異構資源的讀寫。執行適配器面對節點組合容器中節點構件,為了解決如何啟動它們有效地完成執行功能的問題,需要提供對容器中有限多個節點構件的選擇功能,支持感知適配器和容器之間各種組件的標識的協議適配和轉換,并與協調控制器的配置接口接收到的業務請求動態綁定。
2.3 應用支撐網
在開發平臺框架的設計中,應用支撐網位于網絡/業務層。YD/T 2437-2012規定,該層承擔支持和物聯網應用之間的交互,支持物聯網應用和物聯網感知延伸層的交互,以及向物聯網應用提供物聯網感知延伸層相關狀態;該層具有網絡的連接能力、支撐信息的雙向傳遞和控制能力,在此基礎上,物聯網網絡/業務層要提供網絡的互聯互通、路由的控制、業務的控制等功能。按規定網絡/業務層包括兩大部件:核心網絡(通信網、互聯網和行業專網)和物聯網應用支撐管理平臺,并涵蓋參考點In、參考點Ia和參考點Ia”。在此背景下,應用支撐網將通過該網絡的網元和組網結構來體現(圖4)。
圖4 應用支撐網的網元和組網結構
應用支撐網的網元上端接口安全接入物聯網應用層的覆蓋網絡,讀取該網絡的應用請求并寫入支撐網的網元。應用支撐網的網元下端接口,向感知延伸代理的協調控制器下達業務請求。把物聯網應用取決于它們的操作或部署狀態。當然,應用部署這個觀念意味著,在一個“事物”的上下文。如果它的關聯的“事物”被部署,一個應用也就被部署。這自然并不意味著該應用的實現,因此,部署和實際之間有必要區分[8]。加之,物聯網可以看成是智能物品的互聯。在物聯網環境下,作為智能體的感知延伸代理之間,可以通過自組織的模式建立更高級的協同智能模型[9]。因此,在覆蓋網絡上的應用一般抽象為活動間的業務邏輯組合,采用流程來表達,覆蓋網絡的網元可以視為截取流程的部分活動組成的子流程。應用支撐網的網元都對應的應用層覆蓋網絡的子流程,即該網元執行的應用層下達的某個特定任務。應用支撐網的網元由數據處理引擎、解析器、調度器、路由規則模塊、前置路由器和后繼路由器組成。下端接口接受到的感知延伸代理的協調控制器上傳的響應服務請求的相關信息,以及由上端接口下達的與業務請求有關的子流程的上下文,形成網元的運行環境。
然而,在物聯網上下文中,有兩個基本屬性:一個是,每個數字代理必須有且只有一個識別代表的對象的ID,數字代理和物理實體之間的關聯必須自動的建立;另一個是,環境變化影響數字代理的變化,在物理世界中的物理實體上得到體現[10]。因此,數據處理引擎需要根據網元的運行環境發生的變化,提供數據源和數據目的地間的映射,向應用層上傳流程配置、解析和執行的相關信息。解析器將子流程的描述解析為抽象語法,轉換為感知延伸代理,以及前置路由器接收的信息。調度器采用ECA(事件-條件-活動)規則審視是否執行路由規則預定的后繼路由。
3 結 語
基于YD/T 2437-2012體系結構的應用開發平臺由應用支撐網、感知延伸代理和組合節點容器三個主要成分構成。應用支撐網涵蓋了國家標準中的物聯網應用支撐管理平臺,方便應用開發者或用戶訪問;感知延伸代理被設計成智能體(Smart Object),它具有根據模型提出來請求自主向感知延伸層映射,調用相應的組合節點容器來滿足業務需求的功能。組合節點容器是聚合不同領域的物聯網傳感節點有限集或傳感網絡構成的獨立服務組件的抽象,隱藏了它們的異構性,其中每一個組合節點容器都能提供特定感知和執行的功能,是物聯網系統應用開發所必需的支撐環境,是物聯網服務能力的基礎設施的體現,滿足不同領域應用開發者差異化的實現對網絡資源的重復利用。此外,本文限于揭示開發平臺功能性,非功能方面的性能還待補充。
參考文獻
[1]中國工業和信息化部.物聯網總體框架與技術要求(YD/T 2437-2012)[S].北京:人民郵電出版社,2013.
[2] 魏歌.物聯網覆蓋網絡的層次定位及其構建的研究[J]. 物聯網技術, 2014,4(7) :15-16,19.
[3] Haller, S., The Things in the Internet of Things[C]. Proceedings of Internet of Things Conference 2010, Tokyo, 2010
[4] L. Richardson, S. Ruby. RESTful Web Services[M]. OReilly Media, May 2007.
[5] D. Guinard, V. Trifa, T. Pham,et al. Towards Physical Mashups in the Web of Things[C].IEEE Sixth International Conference on Networked Sensing Systems, Pittsburgh, USA, June 2009
[6] Marko Koprivica. Self-Adaptive Requirements-Aware Intelligent Things[J]. International Journal of Internet of Things, 2013, 2(1): 1-4.
[7] Furdík K, Lukác G. Events Processing and Device Interoperability in a Smart Office IoT Application[C].Proceedings of the 23rd Central European Conference on Information and Intelligent Systems (CECIIS 2012). University of Zagreb, Croatia. 2012: 387-394.
[8] G. Martin,et al. IoT-A Project Deliverable D2.1 - Resource Description Specification[R], 2012.
[9] 陳海明,崔莉,謝開斌. 物聯網體系結構與實現方法的比較研究[J].計算機學報,2013, 36 (1): 168-188.
[10] Serbanati A, Medaglia C M, Ceipidor U B. Building blocks of the internet of things: State of the art and beyond[M]. Deploying RFID-Challenges, Solutions, and Open Issues. C. Turcu, Ed., ed: InTech, 2011.