潘俊虹
(武夷學院數學與計算機學院,福建武夷山354300)
?
基于工作流和QoS的物聯網服務組合技術研究
潘俊虹
(武夷學院數學與計算機學院,福建武夷山354300)
摘要:物聯網近年發展迅猛,由感知層RFID采集的數據經過傳輸層進行處理為應用層提供數據資源。但是海量的數據如何進行組合調度以及物聯網環境下對信息的整合都面臨較大的挑戰。采用Web Services技術,依據Qos指標建立了一種基于工作流的物聯網Web服務組合模型,并實現對Web服務的評價和動態組合,可以對物聯網Web服務進行重組和優化,從而提高物聯網Web服務組合調度的準確度、靈活性、可用性和智能化。
關鍵詞:工作流QoS;物聯網;Web服務;動態組合調度
物聯網(the internet of things,IOT)顧名思義就是物物相連的互聯網。主要是通過射頻識別(RFID)、紅外感應、激光掃描、全球定位系統等信息傳感設備,通過相應的協議,將各種物品互聯進行信息交換和通訊,實現智能化識別、定位、跟蹤、監控和管理的一種新型網絡[1]。物聯網基本架構可以分為三層:感知層、網絡層和應用層。感知層主要有RFID系統組成,感知層搜集物體或者環境信息通過網絡層進行數據轉發,為應用層提供必要的信息資源。為了增加RFID標記的物品可見性,需要創建具有關聯RFID的Web服務,將內部的Web服務連接到集成服務器,然后再通過SOA(service-oriented architecture,面向服務的體系結構)實現服務互聯化,最終在異構網絡間實現信息的采集、交換與共享。然而由于物聯網連接的目標是具有感知功能的物理設備,且企業各自建設的物聯網系統沒有統一的標準,服務所在環境動態變化等原因,用于傳統虛擬實體的Web服務標準無法直接應用現有物聯設備。所以需要對傳統Web服務模型進行擴展,通過物聯網應用中間件技術及多層關鍵技術融合與集成應用[2]。本文通過基于工作流和服務質量QoS (quaLity of service)動態組合技術構建了一種物聯網服務組合模型實現對物聯網服務的組合,提高服了服務的準確性和靈活性。物聯網Web服務架構如圖1所示:

圖1 物聯網Web服務架構
服務組合技術是基于軟件重用的理念,把系統中現有的Web服務,按照一定規則組合從而創建新的滿足用戶復雜功能需求的高質量服務。Web服務組合已經是業界研究的熱點,然而Web服務組合尚未有一個統一定義,研究者也從不同角度出發對其進行了大量研究,按照方法論的角度大致可以分為三種:基于工作流的服務組合、基于智能規劃的服務組合、基于軟件工程方法的服務組合。其中基于工作流的服務組合技術主要借鑒工作流技術中的建模方法,服務描述語言吸收了工作流模型的成果。目前,基于流服務組合研究主要集中Web執行流程,主要有:BPEL4WS (business process execution Language for Web services)、BPML(business process modeLing Language)、EFLOW等[3]。
基于工作流的系統執行過程實際上對分散的Web服務進行組合的過程。首先定義業務領域的數據、服務及流程模型。服務層數據模型定義了在服務間交換、提供服務請求所使用的業務層數據。流程模型定義采用了WS-BPEL方式實現業務流程。模型定義完畢后,系統可利用Web服務平臺,創建使用原子服務和合成服務的業務流程。Web服務平臺具有發現已有服務、注冊新的合成服務、安全訪問已有服務等功能[4]。基于工作流的Web服務組合參考模型如圖2所示:

圖2 工作流服務組合參考模型結構圖
3.1 工作流中的Web服務描述
在物聯網中,設備服務作為一個Web服務組件出現在網絡中,提供數據采集和設備控制功能。而工作流引擎或者其他上層應用通過建立在HTTP等協議之上的SOAP協議實現對設備接口的調用。在工作流引擎中需要對Web服務的操作、訪問該操作的服務位置信息、參數信息等進行描述。對參數的描述包括名稱、類型以及是否需要輸入參數和輸出結果等,以方便工作流引擎可以根據這些信息對各個活動節點進行綁定和對Web服務進行合理有序的調用。因此為了方便系統解讀,本文利用XML對Web服務進行如圖3所示代碼規范化描述:

圖3 物聯網Web服務描述
3.2 服務流程定義描述
本文通過一個四元組的形式對服務流程定義描述如下:
<Identity,Description,ActivitySet,TransitionSet>
其中:Identity表示服務流程定義的唯一標識;
Description表示對改流程定義的描述;
ActivitySet表示流程中的節點集合;
TransitionSet表示服務流程中服務組合的依賴關系。如下圖4所示代碼描述:

圖4 服務流程定義描述
3.3 QoS模型與計算
服務質量QoS(QuaLity of Service)是各種存在服務供需關系場合中普遍存在的概念。用于評估服務提供方滿足客戶服務需求的能力。在面向物聯網環境中,由于Web服務的未知性和隨意性,服務質量也就具有很強的不確定性,且隨著Web服務數量的不斷增加,服務請求在服務功能滿足需要的情況下,對服務質量要求越來越高[5]。本文在綜合分析了現有的QoS模型的基礎上,結合物聯網環境下服務的特點選擇執行成本(RC)、執行時間(RT)、服務聲譽(AC)、可靠性(RE)、可用性(AV)五個參數指標來衡量服務質量和動態組合新的服務。本文采用的QoS計算模型如下:

從上述模型中可以得出服務質量QoS的值為:
QoS=Wrc+Wrt+Wac+Wre+Wav;
W代表使用或定義服務的用戶憑借經驗構造的不同因素的值,值越大表示性能越優越。在服務查找過程中,用戶調用精確的匹配來查找符合要求的服務。在所有查詢得到的服務中再通過查詢每個服務包含的評價因素值,求得每個服務的QoS值,選取QoS值最大的服務進行綁定,最后在運行時實現調用。
3.4 工作流引擎
本文采用工作流引擎為Apache ODE,該引擎支持BPEL、Xforms、WebService,框架比較靈活。ODE BPEL編譯器、ODE BPEL運行時、ODE數據訪問對象(DAOs)、ODE集成層(ILs)和用戶工具之間耦合度低。引擎是驅動流程流動的主要部件,主要功能包括:流程定義的導入導出、同客戶端應用程序和工作列表處理程序之間的交互、軟件工具和應用程序的調用、不同工作流管理系統之間的協同工作、管理和監視功能。
在上述工作完成之后,本文就可以利用工作流引擎進行調度服務。工作流引擎主要任務是負責解析流程定義,管理流程創建,控制流程運行以及與外部應用系統協同工作。工作流引擎調度執行過程如圖5所示:

圖5 基于工作流的動態Web服務組合
引擎啟動后根據配置信息初始化引擎的配置,然后解析流程定義文件適配成流程模型,并存儲到數據庫中。引擎執行時首先創建并啟動流程實例,將活動節點綁定外部應用。一旦執行到應用活動,則會調用相應的外部處理程序處理并將結果數據返回存儲到流程變量然后繼續執行直到流程執行完畢。具體執行步驟如下:
(1)服務消費用戶提交服務需求,需求包含功能描述、輸出要求、參數、Qos信息等;
(2)查詢流程定義庫是否有相符的流程定義,若有則交給引擎執行,否則進入步驟3;
(3)分析用戶提交的服務描述,提取所需的Web服務及各Web服務之間的依賴關系;
(4)根據對流程定義的描述和Web服務之間的依賴關系建立流程模板;
(5)從UDDI服務注冊中心查找分析得到的Web服務,并根據QoS計算方法和Web服務依賴關系計算組合服務的QoS屬性,選擇滿足用戶需求的Web服務并綁定到流程模板。
(6)將完整的流程定義文件部署到工作流引擎中執行,執行完畢將結果返回用戶。
本文通過對基于工作流服務組合模型進行擴展,設計了基于流程的物聯網服務動態組合建模并實現Web服務的動態組合調度。這種基于流程的服務組合模板、QoS服務規則和服務自定義的策略能夠使得物聯網服務在中間件不變的情況下滿足企業業務邏輯的多樣性需求。通過本文的研究,可以建立基于業務的計算無關模型,來描述物聯網業務協同并將之轉換為一個平臺無關服務協同模型,從而達到提高物聯網Web服務的靈活性、穩定性和智能化的目的。
參考文獻:
[1]劉偉.工作流動態服務組合技術研究[D].西安∶西北大學,2007∶36-38.
[2]馬喜興.物聯網平臺中服務組合機制的設計與實現[D].北京∶北京郵電大學,2007∶28-32.
[3]黃杰.基于工作流的Web服務組合系統[J].電子測試.2013 (13)∶262-263.
[4]陳廷斌.面向SCM的物聯網動態服務及應用中間件技術.大連交通大學學報[J],2012(1)∶43-46.
[5]田加正.物聯網環境下基于Qos的Web服務組合研究[D].北京∶中國石油大學,2011∶11-14.
(責任編輯:夏婷婷)
A Reserch on IOT Web Service Composition Technology Based on Workflow and QoS
PAN Junhong
(SchooL of Mathematics and Computer Science,Wuyi University,Wuyishan,Fujian 354300)
Abstract:With fast deveLopment of the IOT,the data coLLected by the sensing Layer RFID can be processed to provide data resources for appLication Layer through transport Layer. But how the vast amounts of data are combined scheduLing and the integration of information under the IOT environment are facing greater chaLLenges. Adopting the Web Services technoLogy,the paper estabLished a basis of QoS indexes Internet Web service composition modeL based on workfLow and reaLize the combination of evaLuation and dynamic for Web Service on the IOT to restructure and optimize the Web service,so as to improve the accuracy of the Internet Web service composition scheduLing and fLexibiLity AvaiLabiLity and inteLLigent.
Key words:workfLow;QoS;IOT;Web service;dynamic combined scheduLing
中圖分類號:TP393
文獻標識碼:A
文章編號:1674-2109(2016)03-0059-04
收稿日期:2015-11-10
作者簡介:潘俊虹(1980-),男,漢族,講師,主要從事物聯網研究。