物聯(lián)網(wǎng)是指通過(guò)部署具有一定感知、計(jì)算、執(zhí)行和通信等能力的各種設(shè)備,獲得物理世界的信息或?qū)ξ锢硎澜绲奈矬w進(jìn)行控制,通過(guò)網(wǎng)絡(luò)實(shí)現(xiàn)信息的傳輸、協(xié)同和處理,從而實(shí)現(xiàn)人與物通信、物與物通信的網(wǎng)絡(luò)。目前,物聯(lián)網(wǎng)已經(jīng)逐漸被人們所熟悉并應(yīng)用到生產(chǎn)、生活中的各個(gè)方面,比如自動(dòng)抄表、智能農(nóng)業(yè)、智能家居、智慧城市等,其實(shí)各個(gè)領(lǐng)域的應(yīng)用具有一定的共性,例如智能農(nóng)業(yè)和智能家居都會(huì)用到狀態(tài)監(jiān)測(cè)和遠(yuǎn)程控制等功能,但是現(xiàn)有的應(yīng)用都比較獨(dú)立,在一個(gè)行業(yè)同一個(gè)業(yè)務(wù)中甚至存在多套物聯(lián)網(wǎng)業(yè)務(wù)系統(tǒng),各個(gè)系統(tǒng)之間由于標(biāo)準(zhǔn)不統(tǒng)一,存在數(shù)據(jù)不統(tǒng)一、無(wú)法復(fù)用、資源浪費(fèi)等問(wèn)題,新建一個(gè)業(yè)務(wù)系統(tǒng)的時(shí)候需要自底向上全部構(gòu)建,這些問(wèn)題嚴(yán)重阻礙了物聯(lián)網(wǎng)統(tǒng)一有序發(fā)展,有必要構(gòu)建一個(gè)物聯(lián)網(wǎng)綜合業(yè)務(wù)平臺(tái),各個(gè)應(yīng)用可以通過(guò)調(diào)用平臺(tái)中包含的基本功能來(lái)實(shí)現(xiàn)業(yè)務(wù)目標(biāo),從而有效推動(dòng)物聯(lián)網(wǎng)業(yè)務(wù)快速發(fā)展。
1.現(xiàn)狀分析
對(duì)于物聯(lián)網(wǎng)平臺(tái),業(yè)界尚未有標(biāo)準(zhǔn)的定義和架構(gòu)。近年來(lái)國(guó)內(nèi)外科研單位和企業(yè)進(jìn)行了大量的研究和實(shí)踐。國(guó)內(nèi)三大電信運(yùn)營(yíng)商主要側(cè)重于為用戶(hù)提供物聯(lián)網(wǎng)數(shù)據(jù)“管道”功能的M2M(Machine-to-Machine)平臺(tái)建設(shè),大唐電信、華為、中興等具備研發(fā)實(shí)力的公司也在積極參與物聯(lián)網(wǎng)平臺(tái)的研發(fā),主要是將M2M平臺(tái)作為產(chǎn)品進(jìn)行銷(xiāo)售。在通信協(xié)議方面,中國(guó)移動(dòng)制定了其M2M平臺(tái)通信協(xié)議——WMMP(Wireless M2M Protocol),中國(guó)電信制定了M2M終端監(jiān)測(cè)控制協(xié)議(M2M Device Management Protocol,MDMP)。在平臺(tái)技術(shù)研究方面,楊斌等提出基于面向服務(wù)架構(gòu)(SOA)的物聯(lián)網(wǎng)企業(yè)應(yīng)用基礎(chǔ)框架;程冬梅等提出了一個(gè)基于表達(dá)性狀態(tài)轉(zhuǎn)移(REpresent State Transfer,REST)架構(gòu)風(fēng)格的物聯(lián)網(wǎng)服務(wù)平臺(tái),將傳感節(jié)點(diǎn)等嵌入式設(shè)備和感知數(shù)據(jù)看作資源供上層應(yīng)用調(diào)用;王平等設(shè)計(jì)和實(shí)現(xiàn)了基于 6LoWPAN 協(xié)議的物聯(lián)網(wǎng)開(kāi)發(fā)平臺(tái);錢(qián)小聰?shù)忍岢隽艘环N物聯(lián)網(wǎng)業(yè)務(wù)運(yùn)營(yíng)支撐平臺(tái)(Business Operation Support Platform,BOSP)架構(gòu),站在電信運(yùn)營(yíng)商的角度上對(duì)平臺(tái)各個(gè)層次的功能進(jìn)行了論述。國(guó)外針對(duì)物聯(lián)網(wǎng)平臺(tái)的研究起步較早,以O(shè)range、Vodafone為主的電信運(yùn)營(yíng)商和Wyless為代表的物聯(lián)網(wǎng)服務(wù)商已經(jīng)針對(duì)物聯(lián)網(wǎng)業(yè)務(wù)建立了相應(yīng)的業(yè)務(wù)管理平臺(tái),他們主張將網(wǎng)絡(luò)層和應(yīng)用層功能融合在一起,統(tǒng)一在一個(gè)管理平臺(tái)中進(jìn)行維護(hù)。一些學(xué)者也提出了將云計(jì)算技術(shù)引入物聯(lián)網(wǎng)平臺(tái)中的方案,并建立了可以提供狀態(tài)監(jiān)測(cè)和聯(lián)動(dòng)報(bào)警功能的通用平臺(tái)。
以上研究主要關(guān)注物聯(lián)網(wǎng)的感知層和網(wǎng)絡(luò)層,解決了如何為物聯(lián)網(wǎng)應(yīng)用提供統(tǒng)一、靈活、可靠數(shù)據(jù)的問(wèn)題,但是對(duì)物聯(lián)網(wǎng)應(yīng)用的邏輯實(shí)現(xiàn)關(guān)注較少。如何對(duì)各類(lèi)數(shù)據(jù)進(jìn)行合理的分析處理,在數(shù)據(jù)層之上構(gòu)建出通用的綜合服務(wù)層,并且提供給用戶(hù)更為人性化的服務(wù),是物聯(lián)網(wǎng)發(fā)展中迫切需要解決的問(wèn)題。陳海明等對(duì)物聯(lián)網(wǎng)體系結(jié)構(gòu)與實(shí)現(xiàn)方法進(jìn)行了比較分析,指出物聯(lián)網(wǎng)體系結(jié)構(gòu)是設(shè)計(jì)與實(shí)現(xiàn)物聯(lián)網(wǎng)系統(tǒng)的首要基礎(chǔ),從功能的角度將目前已經(jīng)提出的物聯(lián)網(wǎng)體系結(jié)構(gòu)分為“后端集中式”和“前端分布式”兩種類(lèi)型,為本文的設(shè)計(jì)提供了很好的參考。
2.企業(yè)服務(wù)總線
企業(yè)服務(wù)總線(EntERPrise Service Bus,ESB)是從面向服務(wù)架構(gòu)發(fā)展而來(lái)的,圖1為ESB架構(gòu)圖。
圖1 ESB架構(gòu)圖
面向服務(wù)架構(gòu)(Service 0riented Architecture,SOA)是一種定義基于服務(wù)的軟件應(yīng)用方法,通過(guò)調(diào)用和組合實(shí)現(xiàn)業(yè)務(wù)流程。ESB是通過(guò)標(biāo)準(zhǔn)的整合技術(shù),將SOA、WebServices和XML技術(shù)融合到統(tǒng)一的分布式架構(gòu)中,搭建易于部署、可管理的整合基礎(chǔ)設(shè)施。它既可集成新的應(yīng)用服務(wù),也可以包裝原有的系統(tǒng),使其提供服務(wù)接口,從而繼承已有的功能,ESB充當(dāng)了服務(wù)消費(fèi)者和服務(wù)提供者之間的中介,實(shí)現(xiàn)服務(wù)組合和業(yè)務(wù)流程的自動(dòng)化管理。
ESB提供了開(kāi)放的、基于標(biāo)準(zhǔn)的消息機(jī)制,通過(guò)適配器實(shí)現(xiàn)與其他組件的互通,在數(shù)據(jù)交換過(guò)程中提供了基于服務(wù)協(xié)議的服務(wù)查找、訪問(wèn)、路由功能。ESB就是試圖將多種邏輯處理過(guò)程遷移到總線上,從而為各項(xiàng)應(yīng)用提供統(tǒng)一服務(wù)。近年來(lái),隨著企業(yè)信息化程度的提高和面向服務(wù)體系結(jié)構(gòu)(SOA)的深入應(yīng)用,ESB(企業(yè)服務(wù)總線)在理論和應(yīng)用方面成為軟件開(kāi)發(fā)、集成與部署的關(guān)鍵技術(shù)。
3.平臺(tái)設(shè)計(jì)方案
本文所提出的物聯(lián)網(wǎng)綜合業(yè)務(wù)平臺(tái)不是傳統(tǒng)意義上的系統(tǒng)集成,也不僅僅滿(mǎn)足提供底層數(shù)據(jù)“管道”的功能,主要側(cè)重于對(duì)物聯(lián)網(wǎng)各個(gè)具體業(yè)務(wù)的支撐。以滿(mǎn)足現(xiàn)有物聯(lián)網(wǎng)業(yè)務(wù)的實(shí)際需求為基礎(chǔ),從宏觀角度抽取各物聯(lián)網(wǎng)業(yè)務(wù)共性特征,對(duì)物聯(lián)網(wǎng)綜合業(yè)務(wù)平臺(tái)的各項(xiàng)基本功能進(jìn)行分析、提煉,并采用層次結(jié)構(gòu)思想對(duì)物聯(lián)網(wǎng)綜合業(yè)務(wù)平臺(tái)進(jìn)行功能層次劃分。平臺(tái)的建設(shè)也不是一蹴而就的,隨著物聯(lián)網(wǎng)應(yīng)用的范圍不斷擴(kuò)大,平臺(tái)應(yīng)該具備高度的可擴(kuò)展性,能夠快速集成新的物聯(lián)網(wǎng)基本業(yè)務(wù),供各行業(yè)應(yīng)用系統(tǒng)自由調(diào)用。
3.1 平臺(tái)總體架構(gòu)
圖2為物聯(lián)網(wǎng)綜合業(yè)務(wù)平臺(tái)總體架構(gòu)。
平臺(tái)架構(gòu)遵循劉云浩提出的物聯(lián)網(wǎng)四層架構(gòu),即感知識(shí)別層、網(wǎng)絡(luò)構(gòu)建層、管理服務(wù)層、綜合應(yīng)用層,將綜合應(yīng)用層中的公共業(yè)務(wù)應(yīng)用適當(dāng)下移到管理服務(wù)層中,并在管理服務(wù)層引入企業(yè)服務(wù)總線(EntERPrise service Bus,ESB)架構(gòu),利用WebService、XML、JMS等技術(shù),將公共功能以服務(wù)組件的形式向平臺(tái)注冊(cè),把綜合業(yè)務(wù)層各業(yè)務(wù)作為服務(wù)消費(fèi)者,通過(guò)ESB向各個(gè)消費(fèi)者提供調(diào)用服務(wù)。平臺(tái)將具體應(yīng)用與服務(wù)邏輯、感知數(shù)據(jù)相隔離,對(duì)業(yè)務(wù)系統(tǒng)透明,上層業(yè)務(wù)系統(tǒng)的更改不影響平臺(tái)的內(nèi)容和架構(gòu),且多個(gè)業(yè)務(wù)系統(tǒng)可共享同一服務(wù),實(shí)現(xiàn)物聯(lián)網(wǎng)業(yè)務(wù)的統(tǒng)一支撐服務(wù)。
圖2 物聯(lián)網(wǎng)綜合業(yè)務(wù)平臺(tái)總體架構(gòu)
3.2 平臺(tái)功能
平臺(tái)各層次主要功能描述如下:
1)感知識(shí)別層:主要負(fù)責(zé)將物聯(lián)網(wǎng)子網(wǎng)中的感知節(jié)點(diǎn)信息接人平臺(tái),同時(shí)向上層提供訪問(wèn)具體接入子網(wǎng)的接口,接人控制器主要負(fù)責(zé)傳感和視頻類(lèi)數(shù)據(jù)的統(tǒng)一接人,根據(jù)實(shí)際場(chǎng)景選擇無(wú)線或有線方式,RHD掃描裝置主要向管理服務(wù)層提供電子標(biāo)簽中的數(shù)據(jù),并接受管理服務(wù)層的控制,向標(biāo)簽中寫(xiě)入數(shù)據(jù)。感知識(shí)別層是整個(gè)物聯(lián)網(wǎng)的構(gòu)建基礎(chǔ),同時(shí)也是綜合業(yè)務(wù)平臺(tái)數(shù)據(jù)的根本來(lái)源。
2)網(wǎng)絡(luò)構(gòu)建層:主要提供可用的網(wǎng)絡(luò)服務(wù)和可靠、實(shí)時(shí)的傳輸機(jī)制,提供不同類(lèi)型設(shè)備通信接口,便于感知識(shí)別層各類(lèi)子網(wǎng)數(shù)據(jù)的接入和傳遞管理服務(wù)層向感知識(shí)別層發(fā)送的命令,還需根據(jù)具體的應(yīng)用協(xié)議增加數(shù)據(jù)的編解碼模塊。
3)管理服務(wù)層:主要功能將物聯(lián)網(wǎng)公共業(yè)務(wù)模塊以及未來(lái)發(fā)展中出現(xiàn)的新的業(yè)務(wù)模塊以服務(wù)的形式向ESB服務(wù)總線中注冊(cè),同時(shí)采用統(tǒng)一的業(yè)務(wù)描述語(yǔ)言對(duì)應(yīng)用層物聯(lián)網(wǎng)具體業(yè)務(wù)進(jìn)行描述,并向下層提供有關(guān)該業(yè)務(wù)的具體實(shí)現(xiàn),使加載的業(yè)務(wù)能被平臺(tái)所識(shí)別,從而完成一個(gè)具體業(yè)務(wù)的支撐。為保證系統(tǒng)的安全性,加入統(tǒng)一身份認(rèn)證模塊,該模塊作為ESB上的一個(gè)特定服務(wù),作為服務(wù)提供者和服務(wù)消費(fèi)者之間的中介?紤]到某些行業(yè)信息化建設(shè)的需要,在該層還設(shè)計(jì)出外部接口,便于和其他系統(tǒng)(GIS、視頻會(huì)議、調(diào)度電話等)互聯(lián)。由于該層需要完成公共業(yè)務(wù)的注冊(cè)和物聯(lián)網(wǎng)具體業(yè)務(wù)的統(tǒng)一認(rèn)證和承載,所以該層是整個(gè)平臺(tái)的核心,也是本文的重點(diǎn)研究?jī)?nèi)容。
4)綜合應(yīng)用層:包括了物聯(lián)網(wǎng)各個(gè)應(yīng)用領(lǐng)域的具體應(yīng)用,也是ESB架構(gòu)中的服務(wù)消費(fèi)者,業(yè)務(wù)開(kāi)發(fā)者通過(guò)綜合服務(wù)層所提供的統(tǒng)一、開(kāi)放的標(biāo)準(zhǔn)接口獲取接入平臺(tái)的能力,可以直接調(diào)用綜合服務(wù)層中的各項(xiàng)服務(wù)提供給用戶(hù),也可以在各項(xiàng)服務(wù)的基礎(chǔ)上進(jìn)行定制化開(kāi)發(fā)。
4.平臺(tái)關(guān)鍵技術(shù)
ESB作為綜合服務(wù)層的核心,完成了連接服務(wù)提供者(基礎(chǔ)公共、基礎(chǔ)業(yè)務(wù)等模塊)和服務(wù)消費(fèi)者(應(yīng)用層各業(yè)務(wù))的功能。在處理服務(wù)接人和請(qǐng)求時(shí),都是通過(guò)SOAP/XML完成的。平臺(tái)需要處理的服務(wù)主要包括新建功能模塊的接入、已經(jīng)接入的模塊通過(guò)平臺(tái)進(jìn)行資源交換和發(fā)送資源到綜合業(yè)務(wù)層各個(gè)具體應(yīng)用。所以綜合服務(wù)層需要解決兩個(gè)主要問(wèn)題:1)在UDDI中注冊(cè)服務(wù);2)設(shè)計(jì)統(tǒng)一身份認(rèn)證策略。
4.1 接入服務(wù)
接入服務(wù)就是把服務(wù)的信息存入到數(shù)據(jù)庫(kù)中,在數(shù)據(jù)庫(kù)中作持久化處理,將接收到的SOAP信息經(jīng)過(guò)分析存人數(shù)據(jù)庫(kù)中。需要對(duì)上文中所述的三種服務(wù)分別進(jìn)行處理。圖3是服務(wù)選擇流程。
圖3 服務(wù)選擇流程
服務(wù)描述和封裝實(shí)現(xiàn)的XML代碼片段如下:
<?xml Version=”1.0”encoding=”ISO-8859-l”?>
<Service>
<Service Attribte>
<servicetype value=”Tempmonitor>
</servicetype> //服務(wù)類(lèi)別
<Serviceld value=”T_01001”>
</Serviceld> //服務(wù)流水號(hào)
</Service Attribte>
<ServiceData>
<Servicetype value=“01”>
</servicetype> //服務(wù)類(lèi)別代碼
<servicename value=”溫度監(jiān)測(cè)”>
</Servicename> //服務(wù)名稱(chēng)
<ServiceForm value=”平臺(tái)自身模塊”>
</ServiceForm> //服務(wù)來(lái)源
<Servicetime value=”2013-05-10”>
</ServiceTime> //服務(wù)注冊(cè)時(shí)間
<ServiceDatasource value=“subatation_xs”>
</ServiceDatasource> //服務(wù)數(shù)據(jù)來(lái)源
</ServiceData>
</Service>
4.2 統(tǒng)一身份認(rèn)證
物聯(lián)網(wǎng)的安全與隱私對(duì)參與方有著較大的影響,需要建立相應(yīng)的安全機(jī)制實(shí)現(xiàn)數(shù)據(jù)保密、訪問(wèn)控制等功能。統(tǒng)一身份認(rèn)證是平臺(tái)綜合應(yīng)用層各項(xiàng)具體業(yè)務(wù)和平臺(tái)管理服務(wù)層之間交互的中介,綜合服務(wù)層通過(guò)標(biāo)準(zhǔn)接口發(fā)布服務(wù),采用SOAP封裝請(qǐng)求和調(diào)用。把綜合業(yè)務(wù)層各具體業(yè)務(wù)看作用戶(hù),當(dāng)用戶(hù)通過(guò)統(tǒng)一身份驗(yàn)證后,ESB查找請(qǐng)求的服務(wù)并返回給用戶(hù)。本文采用基于證書(shū)的統(tǒng)一認(rèn)證協(xié)議來(lái)實(shí)現(xiàn)統(tǒng)一身份認(rèn)證。
4.2.1 交互流程
綜合業(yè)務(wù)層各業(yè)務(wù)使用用戶(hù)憑證以web形式登錄統(tǒng)一認(rèn)證,身份認(rèn)證成功后,統(tǒng)一認(rèn)證服務(wù)創(chuàng)建安全斷言標(biāo)記語(yǔ)言(Security Assertion Makup Language,SAML)令牌,并返回SAML令牌給用戶(hù),用戶(hù)就可以攜帶這個(gè)SAML令牌訪問(wèn)服務(wù)。圖4是業(yè)務(wù)系統(tǒng)與統(tǒng)一身份認(rèn)證之間的交互流程。綜合業(yè)務(wù)層各業(yè)務(wù)用戶(hù)攜帶SAML令牌訪問(wèn)ESB,決策執(zhí)行點(diǎn)(Policy Enforcement Point,PEP)把服務(wù)消費(fèi)者的SAML令牌交給策略決策點(diǎn)(Policy Decision Point,PDP)進(jìn)行驗(yàn)證,PDP根據(jù)用戶(hù)SAML令牌及相關(guān)參數(shù)對(duì)用戶(hù)進(jìn)行授權(quán)。
圖4 業(yè)務(wù)系統(tǒng)與統(tǒng)一身份認(rèn)證之間的交互流程
4.2.2 統(tǒng)一認(rèn)證協(xié)議
綜合應(yīng)用層具體業(yè)務(wù)(B)與統(tǒng)一身份認(rèn)證(UIA)之間基于證書(shū)的統(tǒng)一認(rèn)證協(xié)議具體步驟如下:
1)具體業(yè)務(wù)到統(tǒng)一身份認(rèn)證(B→UIA)。
RB,Request,CertB,sigB{Request}
B向UIA發(fā)送認(rèn)證請(qǐng)求。RB為B產(chǎn)生的隨機(jī)數(shù),Reuest為B發(fā)出的請(qǐng)求,CertB為B的加密證書(shū),SigB{Request}為B利用證書(shū)私鑰對(duì)Request的簽名。
2)統(tǒng)一身份認(rèn)證到具體業(yè)務(wù)(UIA—B)。
RB,CertU,SigU(Response),EB(Tokensaml)
UIA收到消息后,首先驗(yàn)證用戶(hù)證書(shū)有效性,并驗(yàn)證請(qǐng)求簽名;然后發(fā)送應(yīng)答消息返回B。其中:RB為接收到B的隨即數(shù),certuU為UlA的證書(shū),sigU(Response)為UIA利用證書(shū)私鑰對(duì)Response的簽名,EB(Tokensaml)表示利用B的證書(shū)公鑰加密的Tokenaml。
3)具體業(yè)務(wù)到統(tǒng)一身份認(rèn)證(B→UIA)。
B將對(duì)UIA的驗(yàn)證結(jié)果發(fā)給UIA。
經(jīng)過(guò)以上步驟,應(yīng)用層其體業(yè)務(wù)和UIA實(shí)現(xiàn)了雙向身份認(rèn)證和令牌協(xié)商,共享SAML令牌Tokensaml。
5.平臺(tái)業(yè)務(wù)協(xié)作
每個(gè)公共業(yè)務(wù)模塊都可以看作是獨(dú)立的系統(tǒng),它們被ESB中適配器封裝成服務(wù)并添加到注冊(cè)表中,當(dāng)服務(wù)消費(fèi)者發(fā)送來(lái)服務(wù)請(qǐng)求時(shí),協(xié)議適配器就從該消息中獲取SOAP消息,然后經(jīng)過(guò)統(tǒng)一身份認(rèn)證,認(rèn)證通過(guò)后會(huì)該消息會(huì)被繼續(xù)轉(zhuǎn)發(fā)至ESB中,ESB根據(jù)SOAP消息,在服務(wù)注冊(cè)表中進(jìn)行查找,查找與之相匹配的WSDL,并返回相應(yīng)的服務(wù)調(diào)用信息,最后服務(wù)代理者根據(jù)相應(yīng)的信息調(diào)用服務(wù)。圖5是業(yè)務(wù)協(xié)作流程。
圖5 業(yè)務(wù)系統(tǒng)協(xié)作流程
6.結(jié)語(yǔ)
物聯(lián)網(wǎng)“大平臺(tái)”化對(duì)于我國(guó)物聯(lián)網(wǎng)建設(shè)具有重要意義,隨著信息化程度的不斷提高,企業(yè)或個(gè)人對(duì)生產(chǎn)、生活各個(gè)環(huán)節(jié)的質(zhì)量要求也越來(lái)越高,全流程監(jiān)控,以及服務(wù)整合將是未來(lái)的發(fā)展方向,物聯(lián)網(wǎng)綜合業(yè)務(wù)平臺(tái)為物聯(lián)網(wǎng)應(yīng)用的快速實(shí)現(xiàn)提供了有利的保障。本文提出了基于ESB的物聯(lián)網(wǎng)綜合業(yè)務(wù)平臺(tái)架構(gòu),構(gòu)建一個(gè)高效、松耦合、易擴(kuò)展、逐步趨于完善的平臺(tái),使其可以支持更多的業(yè)務(wù)應(yīng)用,并對(duì)其中各層的功能及關(guān)鍵技術(shù)進(jìn)行了闡述。本文為物聯(lián)網(wǎng)信息服務(wù)系統(tǒng)的研究和建設(shè)提供了一定借鑒。目前,本系統(tǒng)尚處于原型開(kāi)發(fā)階段,尚有逐多功能需要完善,如平臺(tái)大數(shù)據(jù)如何合理存儲(chǔ)、數(shù)據(jù)挖掘算法的豐富等。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:基于ESB的物聯(lián)網(wǎng)綜合業(yè)務(wù)平臺(tái)設(shè)計(jì)
本文網(wǎng)址:http://www.ezxoed.cn/html/support/11121513128.html