魏 歌
(長沙學院 計算機科學與技術系,湖南 長沙 410003)
覆蓋網絡上物聯網工作流框架的設計
魏 歌
(長沙學院 計算機科學與技術系,湖南 長沙 410003)
針對物聯網工作流系統的構建,文中提出一種通用的實現方法。遵照YD/T 2437—2012標準給出的框架,把網絡/業務網絡層中的應用支撐網,作為支撐虛擬的覆蓋網絡的基礎。在此框架中,覆蓋網絡被視為一種物聯網應用開發的支持平臺。在此基礎上,參照工作流管理聯盟對于工作流系統框架建立的要求,對該系統的建立、運行和實現的三個階段及其內部結構進行了設計。通過在此框架中的層次結構、功能及其相互關系等方面的問題逐一得到處理,這些方法得到了進一步的說明。
物聯網;工作流系統;覆蓋網絡;應用開發平臺
在物聯網的概念提出之前,工作流的技術路線發展已相當成熟。伴隨物聯網業務的拓展,近幾年來,已有一些文獻提及對工作流研發的需求。文獻[1]指出物理對象或“事物”的物理位置的改變,一定情況下提供工作流中的上下文相關特征。文獻[2]強調服務工作流在物聯網中起到了至關重要的作用。通過面向服務架構(SOA)的方法,使得業務過程的開發成為協調服務的工作流設計[3-4]。文獻[5]專注于物聯網中的面向服務計算,提出面向工作流屬性的訪問控制模型。物聯網工作流還必須是適應新的分散途徑業務流程的智能對象[6-7]。為此,物聯網中間件在現實企業應用中需要一個強有力的過程工作流和涉及互操作性的組織方面的相關語義Web服務的支持[8]。
結合物聯網的特點和工作流建模的要求,有的文獻選擇基于端對端的覆蓋網絡(P2P網絡)上的工作流設計途徑[3]。為了支持各種外部設備、傳感器和服務的互操作,并無縫集成進入到主流的企業系統中,文獻[8-10]提供了物聯網與服務方法的linksmart中間件平臺的設計。該平臺把面向服務架構、端對端(P2P)組網和Web語義服務技術開發進行了組合。但是,在已查閱的文獻中,基于物聯網系統的應用開發平臺,提供通用的工作流系統的開發實現途徑的研究,尚未被考慮。
物聯網工作流系統就是建立在物聯網上的一個軟件系統,它在物聯網上完成工作流的定義和管理,并按照計算機中預先定義好的工作流邏輯推進工作流實例的執行[11]。物聯網運行在異構環境下,系統前端的分布式使得物聯網資源存在多樣性,不能排除對工作流運行狀況造成影響。目前物聯網的研究聚焦在前端,對后端重視不夠,有學者建議需要有針對性地推進后端的研發[12]。物聯網工作流管理系統的建立,更多關注的是用計算機能理解和執行的形式對工作流的表達,主要依賴物聯網的后端。在物聯網的工作流框架模型的設計中,要求過程定義采用覆蓋網絡上的節點來表達。考慮物聯網的實際情況,工作流運行在異構環境下要面臨諸多的不確定性,所設計的物聯網工作流管理系統應該具備環境交互性和自適應性[13]。
多層網絡架構中,覆蓋網絡的設置與應用層較緊密。文獻[14]在需求描述層和底層之間建立虛擬的PSON,使得基于協議描述的需求可以平滑地映射到底層。應用被部署并不意味著該應用的實現[15]。從業務需求描述的視角,因為覆蓋網絡子層的提出,應用層的業務需求被解耦為業務需求模型和覆蓋網絡上的覆蓋網元及其拓撲結構。網元及其拓撲結構不是業務需求模型,而是為業務需求描述提供一個軟件支撐。從應用支撐網作為承載覆蓋網絡的基礎的視角,覆蓋網元的設計依賴下端接口接入的應用支撐網元。物聯網底層的基礎設施向應用支撐網提供所需的資源,使得覆蓋網元的業務活動轉化為應用支撐網元的業務實例成為可能。文獻[8]的應用層包含可定制的用戶應用程序,即包括工作流管理模塊。基于P2P的覆蓋網絡工作流系統是一種新的工作流管理系統,符合下一代工作流管理系統去中心化的發展趨勢,更好地反映了工作流的分布特性和群組協作的社會屬性[16]。所以,根據YD/T 2437—2012[17]的三層架構(見圖1),給出物聯網工作流框架模型。該模型由節點組合容器、感知延伸代理、應用支撐網和覆蓋網絡組成。圖1左側涉及工作流系統的三個階段:
(1)在建立階段考慮工作流的過程定義;
(2)在運行階段考慮工作流的執行與控制;
(3)在實現階段考慮工作流應用的實現。

圖1 YD/T 2437—2012物聯網上的工作流框架模型
圖1中,物聯網工作流定義依托在應用層的覆蓋網絡子層;物聯網工作流的執行與控制運行在網絡/業務網絡層中的應用支撐網,并通過感知延伸層的感知延伸代理獲得底層的支持;物聯網工作流的應用交付給感知延伸層的節點組合容器來實現。
物聯網工作流系統的三個階段及其內部結構如圖2所示。

圖2 物聯網工作流系統的三個階段及其內部結構
3.1 覆蓋網絡上的工作流定義
基于服務聚類的分布式工作流系統結構,業務流程中任務之間的邏輯關系被分布到各執行節點中[18]。在這里,沒有拘泥于工作流定義與工作流實例運行分離的傳統。為完成預定目標而定義工作流,由多個業務活動及它們之間的關聯所構成,可以映射到覆蓋網絡上,通過覆蓋網元及它們之間的連接來描述。定義在覆蓋網元上的業務活動,是業務需求的計算化表示形式,用來支持業務的自動化處理的最小邏輯單位。工作流定義工具依托覆蓋網絡上的業務活動,構建抽象的工作流。覆蓋網元的內部結構(見圖2右側上端)包括:使用邏輯標識符來表示的網元活動標識和生成工作流定義的活動程序模塊。活動程序模塊包含推理規則模板、開始結束與轉移條件,以及下端接口接入控制等程序。其中,推理規則模板負責綁定網元活動及其拓撲結構相應的程序,用以生成覆蓋網元上的業務活動的一個服務鏈,進行工作流的合成;開始結束與轉移程序,包括業務活動的開始條件、結束條件與轉移條件,執行隊列管理以及對它們的檢驗;下端接口/接入控制程序中,下端接口接入對應的應用支撐網元,接入控制給出該網元由此產生的業務實例。工作流定義工具負責識別用戶的請求,協調整個工作流模型中的各個業務活動,根據用戶的需要提交給相應的覆蓋網元。定義在覆蓋網元上的業務活動被組織起來,合成為工作流過程的定義。以覆蓋網元作為工作流過程的業務活動節點,在網元的活動程序模塊的開始結束與轉移程序上保存節點執行過程的執行隊列管理信息,并通過下端接口/接入控制程序將這些信息傳輸到對應的應用支撐網元。每當有應用支撐網元的業務實例執行完畢,返回執行狀態的信息到活動程序模塊,它將啟動結束或轉移的程序。如果需要進行下一輪運行時,按照工作流過程的定義,覆蓋網元將啟動轉移程序觸發新的覆蓋網元,開始新一輪的后繼應用支撐網元來執行相應的業務實例,從而實現業務的自動化處理進程。
3.2 物聯網上工作流的執行與控制
3.2.1 應用支撐網對工作流的執行與控制的支持
在物聯網網絡分層結構中,通常的覆蓋網絡被配置在網絡層,分簇的事件代理形成的拓撲結構[19-20]。在這里,將通常的覆蓋網絡剝離開來,形成應用層的覆蓋網絡和位于網絡/業務層的應用支撐網子層。按YD/T 2437—2012的規定,應用支撐網子層具有網絡的連接能力、支撐信息的雙向傳遞和控制的能力。實際上,這也就是直觀上說的物聯網,可以看成是智能物品的互聯[21]。通常它的網元也可以具有互聯網一致的IP或IPv6地址,具有端到端(P2P)的通信能力[22]。由于物聯網工作流本身所具有的分布性特征,要求相應的工作流管理系統能夠實現對工作流模型分布式執行的功能。把覆蓋網絡上的過程定義與應用支撐網元進行綁定,一方面,由于這種一一對應的關系,使得每一個應用支撐網元的業務實例能夠直接適應每一個業務活動。另一方面,覆蓋網元上存放有工作流過程定義的業務活動執行的信息。每一個覆蓋網元被激活后,都能獨立地啟動結束或轉移的程序,完成工作流的業務過程的自動執行。因此,覆蓋網元與應用支撐網元的綁定,能夠實現分布式工作流引擎的執行功能。
應用支撐網的功能將通過該網絡的網元結構(見圖2右側下端)和組網結構來體現。業務活動解析器是覆蓋網元的業務活動轉化為應用支撐網元的業務實例的入口。當應用支撐網的網元讀取到對應的覆蓋網元傳輸的業務活動執行過程信息,包括活動標識符、輸入與輸出的控制連接、開始結束與轉移條件等。通過業務活動解析器對覆蓋網元定義的業務活動進行解析,提供業務活動對應的應用支撐網元,進行初始化,并激活該應用支撐網元,業務實例管理工具負責執行的業務實例的取消、掛起、重新啟動等操作,并將執行狀態信息發送到路由選擇器,根據該業務活動過程列舉后繼應用支撐網元,形成路由選擇表保存到業務實例管理模塊。該模塊還承擔上傳下達的功能,對上下層間的數據通信格式進行統一,并且屏蔽底層及上層系統的異構性。完成業務實例后,業務實例管理模塊負責將業務實例執行相關的信息返回對應的覆蓋網元。如果覆蓋網元將啟動轉移程序觸發新的覆蓋網元,開始新一輪的后繼應用支撐網元來執行相應的業務實例時,路由選擇器負責將業務實例執行相關的信息傳輸到后繼應用支撐網元。因此,要求它實現多網絡間協議的轉換,封裝和解讀相關數據包。此外,還要啟動資源分配器分配具體執行需要的資源。資源分配器事先儲存來自感知/執行延伸代理中的資源項的信息,建立網元/資源項表,具有讀取和配置資源項的功能。當一個應用支撐網元被激活后,資源分配器負責讀取網元/資源項表,綁定應用支撐網元/資源項,完成資源分配的過程。系統涉及激活后應用支撐網元/資源項比較多時,必須開辟一個緩沖區,把最常使用的應用支撐網元/資源項進行記錄,以規范的文檔格式存儲在存儲日志管理模塊中,此外還涉及異常情況的記錄。
3.2.2 感知延伸代理對工作流的執行與控制
感知延伸代理具有物聯網網關的功能[23]。對應YD/T 2437—2012的規定,感知延伸層中物聯網的接入網關、智能控制等部件納入感知延伸代理。一方面將底層的節點組合接收到的環境狀態信息進行解釋和分類后,并將其分配到相關的部件中;另一方面截取來自物聯網網絡/業務層的消息,并向節點組合容器發起會話,實現節點構件之間的動態協作,完成來自應用支撐網的網元的業務部署。所以,物聯網工作流的執行與控制運行需要通過感知延伸代理獲得底層的支持;工作流的應用要通過感知延伸代理交付給感知延伸層的節點組合容器來實現。值得注意的是,覆蓋網元之間或者應用支撐網元之間涉及網絡/業務網絡層,存在數據傳輸的依賴關系。但是,位于感知延伸層的感知延伸代理相對獨立,是離散的,它們之間沒有數據傳輸的依賴性,控制問題主要體現在資源的分配與搜索,通過滿足條件的制定和限制,構建來自工作流定義的任務的實現策略。
感知延伸代理置于節點組合容器之上,包含兩個模塊(協調控制器和感知/執行適配器),并對節點組合容器提供相關的管理接口和功能接口(如圖2中部所示)。感知/執行適配器負責將節點組合容器中異構性的感知/執行資源描述文件核實,進行統一抽象,轉換成規范的資源功能描述格式進行緩存。然后,通過監視傳遞解析上報,由協調控制器發送到應用支撐網元進行注冊,建立網元/資源項表。執行資源調用時,將資源項發送到協調控制器。然后通過推理決策,轉換成相應的資源功能描述格式,感知/執行適配器將資源功能描述格式發送到節點組合容器,調用相關的節點組合。
3.3 基于節點組合容器的工作流應用的實現
物聯網工作流的執行到實現所關注的是用戶的業務過程請求怎樣才能獲得基礎設施的響應并在相應的實例中準確地獲得執行與實現,它更多地依賴物聯網系統的前端。前端的物聯網低層的異構的基礎設施資源存在多樣性,影響工作流實現時所執行工作流實例綁定的資源的要求。因此,屏蔽處理這些資源,是物聯網開發的關鍵之一。IoT-A以簡單設備和其他的(物聯網外部)服務為基元進行資源的復雜性處理和簡單化。同理,根據YD/T 2437—2012標準,提出節點組合容器的概念。將物聯網終端、物聯網端、感知延伸網等節點,按照業務功能進行節點組合。節點組合可以獨立部署或被組裝,并在此基礎上構建節點組合容器。物聯網的感知延伸層的部件及其相應功能,都將融入到節點組合容器和感知延伸代理這兩個主要成分中。為了有效指導物聯網軟件體系結構開發,文獻[24]提出了3個模型(物理模型、感執模型和應用模型)組成的架構設計。而節點組合容器就起著物理模型的作用(見文獻[25])。
家居智能系統是一個復雜的系統[26]。該系統需要組合服務來進行實時控制,可以采用工作流建模[27-28]。通過實踐,有如下體會。
4.1 家居智能的工作流定義
該定義涉及室內環境調節、室內燈光調節、安防監控和健康監護等多項并行的工作流的啟用、運行和停止的自動操作。實例中的覆蓋網元的構建關鍵是推理規則模板的設計。通過實踐,此項工作可以依托智能家居業務活動的需求和業務實例執行形成路由選擇表的歷史數據記錄,獲得業務活動上下文的拓撲結構的一個推理規則。
4.2 智能家居的應用支撐網
在家居智能系統中,要求克服兩個方面的困難。一個方面是業務活動解析器的設計。業務活動解析器是覆蓋網元的業務活動轉化為應用支撐網元的業務實例的入口。當應用支撐網的網元讀取到對應的覆蓋網元傳輸的業務活動執行的大量過程信息,業務活動解析器成為瓶頸。另一個方面是解決后繼應用支撐網元的觸發問題。完成業務實例后,如果覆蓋網元將啟動轉移程序觸發新的覆蓋網元,開始新一輪的后繼應用支撐網元來執行相應的業務實例時,路由選擇器負責將業務實例執行相關的信息,傳輸到后繼應用支撐網元。但應用支撐網元之間鏈路不存在。因此,要求訪問網內的其他中繼節點后到達。所以,該實例挖掘了應用支撐網系統,對每個節點添加了一個定位和路由協議,用于維護覆蓋網結構完整,確保完成后繼應用支撐網元的觸發。
4.3 智能家居的感知延伸代理
感知延伸代理是封裝好的具有智能家居系統控制功能的控制器硬件和軟件,支持對智能家居分子系統的節點組合容器的管理和控制,并支持來自應用支撐網元根據工作流定義的預先安排。一方面,在工作流執行前,感知延伸代理采集來自節點組合容器中的各種家庭服務資源的信息。通過感知/執行適配器負責核實,監視傳遞,統一描述格式,由協調控制器解析上報應用支撐網元,使得工作流的執行符合家庭服務的需要。另一方面,感知延伸代理還要具體執行家居工作流定義涉及的對服務資源的安排。在這種情況下,應用支撐網元將涉及家居智能系統的資源項發送到協調控制器。然后,通過推理決策,感知/執行適配器將相應的功能描述格式發送到節點組合容器,啟用、運行和停止相關的家庭資源節點組合,實現智能照明、家電控制、家庭安防、家庭能源管理等功能。
4.4 家居智能的節點組合容器
作為節點組合容器涉及的節點組合實例,可參照2012年中國室內裝飾協會智能化委員會提出的智能家居子系統分類。該分類分別列舉了它們的功能、實現的技術和組成。智能家居的子系統均采用單片機組裝在節點組合容器中來實現特定的感知和執行功能,它的資源描述模塊將這些獨立部署的感知/執行資源描述文件進行緩存。通過連接到的感知延伸代理,形成智能家居工作流實現的穩定的基礎結構。
文中基于覆蓋網絡的物聯網框架,將工作流系統涉及的三個階段納入物聯網的三層架構,提出了物聯網的工作流框架模型,給出了構建物聯網上工作流系統的設計方案。在此基礎上,分別對三個階段的設計進行了詳細的闡述,為開發者提供了一個通用的設計途徑。最后,通過家居智能系統設計的案例對該框架進行說明,對需要解決的關鍵問題進行了分析,進一步為應用開發提供借鑒。
構建物聯網工作流系統有利于物聯網后端的開發。然而,如何提供一種通用框架是尚未解決的問題之一。所以,該框架的構建對這個領域的探討提供了新的視角,希望有助于該系統更好地發展和完善。
[1] Sundmaeker H,Guillemin P,Friess P,et al.Vision and challenges for realising the internet of things[C]//Proc of CERP-IoT.[s.l.]:[s.n.],2010.
[2] Zhou Zude,Valerdi R,Zhou Shangming,et al.Guest editorial special section on IoT[J].IEEE Transactions on Industrial Informatics,2014,10(2):1413-1416.
[3] Atzori L,Iera A,Morabito G.The internet of things:a survey[J].Computer Networks,2010,54:2787-2805.
[4] 羅國濤,裴 廣,鄧祖樸,等.面向物聯網的工作流服務架構模型[J].計算機應用與軟件,2014,31(2):9-13.
[5] Zhang Guoping,Liu Jing.The study of access control for service-oriented computing in internet of things[J].International Journal of Wireless and Microwave Technologies,2012,2(3):62-68.
[6] Kortuem G,Kawsar F,Fitton D,et al.Smart objects as building blocks for the internet of things[J].IEEE Internet Computing,2010,14(1):44-51.
[7] Kunz S,Fabian B,Ziekow H,et al.From smart objects to smarter workflows-an architectural approach[C]//Proc of 15th IEEE international enterprise distributed object computing conference workshops.Helsinki:IEEE,2011:194-203.
[8] Kostelnik P,Sarnovsk M,Furdik K.The semantic middleware for networked embedded systems applied in the Internet of Things and Services domain[J].Computing:Practice and Experience,2011,12(3):307-315.
[9] Furdik K,Lukac G,Sabol T,et al.The network architecture designed for an adaptable IoT-based smart office solution[J].International Journal of Computer Networks and Communications Security,2013,1(6):216-224.
[10] 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.University of Zagreb,Croatia:[s.n.],2012:387-394.
[11] 范玉順,羅海濱,林慧蘋,等.工作流管理技術基礎[M].北京:清華大學出版社,2001.
[12] 韓燕波,趙卓峰,王桂玲,等.物聯網與云計算[J].中國計算機學會通訊,2010,6(2):58-62.
[13] 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.[s.l.]:[s.n.],2011.
[14] 李 揚,懷進鵬,郭慧鵬,等.一個基于服務層疊網的分層服務組合框架[J].軟件學報,2007,18(12):2967-2979.
[15] Meissner S,Nec D D,Tid G M.Internet of things architecture IoT-a project deliverable D2.1-resource description specification[R].[s.l.]:[s.n.],2012.
[16] 高 磊,曾廣周.SAN-EBON:一種基于結構化對等網的P2P工作流系統節點定位網絡[J].計算機學報,2010,33(12):2353-2363.
[17] 中國工業和信息化部.物聯網總體框架與技術要求(YD/T 2437-2012)[S].北京:人民郵電出版社,2013.
[18] 葉 雙,葉劍虹,劉傳才.分布式工作流管理系統中的一種資源搜索策略[J].計算機集成制造系統,2012,18(8):1719-1725.
[19] 趙志軍,沈 強,唐 暉,等.物聯網架構和智能信息處理理論與關鍵技術[J].計算機科學,2011,38(8):1-8.
[20] 喬秀全,章 洋,吳步丹,等.事件驅動、面向服務的物聯網服務提供方法[J].中國科學:信息科學,2013,43(10):1219-1243.
[21] 陳海明,崔 莉,謝開斌.物聯網體系結構與實現方法的比較研究[J].計算機學報,2013,36(1):168-188.
[22] 胡光武,陳文龍,徐 恪.一種基于IPv6的物聯網分布式源地址驗證方案[J].計算機學報,2012,35(3):517-528.
[23] 侯 琛,趙千川,李海濤,等.物聯網中的嵌入式終端[J].電子測量技術,2014,37(10):113-118.
[24] 謝開斌,陳海明,崔 莉.PMDA:一種物理模型驅動的物聯網軟件體系結構[J].計算機研究與發展,2013,50(6):1185-1197.
[25] 魏 歌.基于覆蓋網絡的物聯網系統的應用開發平臺[J].物聯網技術,2015,5(3):77-79.
[26] Karnouskos S.The cooperative internet of things enabled smart grid[C]//Proceedings of the 14th IEEE international symposium on consumer electronics.[s.l.]:IEEE,2010:7-10.
[27] 朱 匆,劉 宏,李文博.基于專家系統工作流技術在智能家居中的應用[J].計算機技術與發展,2008,18(9):205-208.
[28] 葉 林,湯 瀑,郭立鵬,等.基于混成系統的物聯網服務建模與驗證[J].小型微型計算機系統,2013,34(12):2263-2268.
Design of Internet of Things Workflow Framework on Overlay Network
WEI Ge
(Department of Computer Science & Technology,Changsha University,Changsha 410003,China)
In order to construct the workflow system on the Internet of Things (IoT),a general approach is put forward as the way of implementing it.According to given framework under the standard YD/T 2437—2012,the application supporting network in network layer/business network layer are regarded as the basis of supporting virtual overlay network.In this framework,the overlay network is considered a kind of the Internet of Things platform for the support of application development.And on this basis,according to the requirements of Workflow Management Coalition(WfMC)to establish workflow system framework,three stages of the system (the establishment,operation and implementation) and their internal structure are designed.These methods receive further explanation by problems with hierarchy,functions and their mutual relations in the framework to be tackled one by one.
IoT (Internet of Things);workflow system;overlay network;application development platform
2015-04-24
2015-08-12
時間:2016-07-29
湖南省教育廳科研基金項目(13C1085);長沙市科技計劃項目(K1309022-11)
魏 歌(1974-),男,碩士,高級實驗師,CCF會員,研究方向為計算機應用、無線傳感網、物聯網。
http://www.cnki.net/kcms/detail/61.1450.TP.20160729.1833.012.html
TP393
A
1673-629X(2016)08-0195-05
10.3969/j.issn.1673-629X.2016.08.042