去年,溫家寶總理在政府工作報告中明確提出“加快物聯(lián)網(wǎng)的研發(fā)應(yīng)用 ,再一次體現(xiàn)了政府高度重視物聯(lián)網(wǎng)的發(fā)展。在國家政策推動下,電信運營商積極介入物聯(lián)網(wǎng)業(yè)務(wù),把物聯(lián)網(wǎng)作為未來重要的贏利點。
1 物聯(lián)網(wǎng)體系結(jié)構(gòu)及現(xiàn)有EPC中間件設(shè)計特點
物聯(lián)網(wǎng)是通過射頻識別(RFID)、紅外感應(yīng)器、全球定位系統(tǒng)、激光掃描器等信息傳感設(shè)備,按約定的協(xié)議,把任何物品與互聯(lián)網(wǎng)連接起來,進行信息交換和通訊,以實現(xiàn)智能化識別、定位、跟蹤、監(jiān)控和管理的一種網(wǎng)絡(luò)。在業(yè)界,物聯(lián)剛一般被公認(rèn)為分成三個層次,底層是感知和收集前端數(shù)據(jù)的感知層,中間是傳輸和處理數(shù)據(jù)的網(wǎng)絡(luò)層,最上面是利用經(jīng)過分析處理的感知數(shù)據(jù),為用戶提供各種應(yīng)用服務(wù)的應(yīng)用層。物聯(lián)網(wǎng)系統(tǒng)架構(gòu)如圖1所示。
感知層是物聯(lián)網(wǎng)發(fā)展和應(yīng)用的基礎(chǔ),主要通過射頻識別(RFID)系統(tǒng)實現(xiàn)RFID標(biāo)簽的自動采集和識別。RFID標(biāo)簽附著于可跟蹤的物品上,從而實現(xiàn)全球流通,感知器與信息系統(tǒng)相連, 讀取標(biāo)簽中的電子代碼(Electronic Product Code,EPC),并將其輸入網(wǎng)絡(luò)信息系統(tǒng)。
物聯(lián)網(wǎng)的網(wǎng)絡(luò)層將建立在現(xiàn)有的移動通信網(wǎng)絡(luò)和互聯(lián)網(wǎng)基礎(chǔ)上,對感知層采集上傳的數(shù)據(jù)進行存儲、查詢、分析、挖掘、理解以及基于感知數(shù)據(jù)決策和行為,而實現(xiàn)這一系列數(shù)據(jù)管理和處理的核心是EPC中間件,它作為物聯(lián)網(wǎng)網(wǎng)絡(luò)層的重要組成部分,承前啟后,為應(yīng)用層提供各類服務(wù)基礎(chǔ)。
應(yīng)用層是物聯(lián)網(wǎng)發(fā)展的目的,軟件開發(fā)、智能控制技術(shù)將會為用戶提供豐富多彩的物聯(lián)網(wǎng)應(yīng)用,各種行業(yè)和家庭應(yīng)用的開發(fā)將會推動物聯(lián)網(wǎng)的普及,也給整個物聯(lián)網(wǎng)產(chǎn)業(yè)鏈帶來利潤。
從物聯(lián)網(wǎng)體系架構(gòu)來看,基于現(xiàn)有的資源,運營商的核心競爭力在物聯(lián)網(wǎng)網(wǎng)絡(luò)層這部分,既要發(fā)揮自己的優(yōu)勢,又要避免被局限在管道的角色上,運營商應(yīng)該把目光聚焦在EPC中間件上,成為物聯(lián)網(wǎng)巾間件服務(wù)提供商,把控網(wǎng)絡(luò)層的核心,占據(jù)物聯(lián)網(wǎng)產(chǎn)業(yè)鏈的價值高地。
物聯(lián)網(wǎng)企業(yè)信息交互的EPC中間件設(shè)計結(jié)合了傳統(tǒng)中間件的特點,利用基于CORBAR~RMI的J2EE技術(shù)實現(xiàn).程對象調(diào)用,能夠最大程度的實現(xiàn)分布式的軟件體系:構(gòu)。在中間件開發(fā)的后期,以SOA的形式通WebService發(fā)布在企業(yè)服務(wù)總線上,方便客戶端的調(diào)用。同時使用J2EE當(dāng)中的EJB技術(shù)明確的規(guī)范了事務(wù)操作和事務(wù)管理并且有相應(yīng)J2EE容器來對中間件當(dāng)中的事務(wù)進行管理。
EPC中間件能夠屏蔽應(yīng)用層和網(wǎng)絡(luò)協(xié)議的差異,為各種具體應(yīng)用提供多種通訊機制;并提供相應(yīng)的平臺以滿足不同領(lǐng)域的需要。因此,中間件為下層應(yīng)用提供了一個相對穩(wěn)定的上層服務(wù)環(huán)境。然而,傳統(tǒng)中間件所應(yīng)遵循的一些原則離實際還有較大差距,多數(shù)流行的中間件服務(wù)使用的API和協(xié)議都是專有的,使得應(yīng)用建立于不同廠家的產(chǎn)品很難實現(xiàn)互操作。有些中間件服務(wù)只提供部分平臺的實現(xiàn),從而限制了應(yīng)用在異構(gòu)系統(tǒng)之間的移植。應(yīng)用開發(fā)者在這些中間件服務(wù)之上建立自己的應(yīng)用還要承擔(dān)相當(dāng)大的風(fēng)險,隨著服務(wù)的延展往往還需重寫他們的應(yīng)用。盡管中間件服務(wù)提高了分布計算的抽象化程度,但應(yīng)用開發(fā)者還需面臨許多艱難的設(shè)計選擇,例如,開發(fā)者還需決定分布應(yīng)用在Client方和Server方的功能分配。通常將表示服務(wù)放在Cfient方以方便使用顯示設(shè)備,將數(shù)據(jù)服務(wù)放存Server方以靠近數(shù)據(jù)庫,但實際應(yīng)用中也并非總是如此,何況其它應(yīng)用功能如何分配也是不容易確定的。
針對上述不足,本文提出一個基于云計算平臺的EPC中間件體系架構(gòu),運營商可以利用云計算平臺抽象化計算與存儲資源,整合中間件服務(wù),動態(tài)的分配給需要使用的各項用戶或應(yīng)用,在其上開發(fā)業(yè)務(wù)應(yīng)用時只需要按照其應(yīng)用程序接口規(guī)范調(diào)用所需資源即可,其使用費用跟總的資源使用量成正比而不像以往跟系統(tǒng)吞吐撮成止比。如此用戶只需關(guān)心業(yè)務(wù)邏輯實現(xiàn),運營商可以把各種應(yīng)用服務(wù)部署到云計算平臺運行然后通過云計算平臺的控制面板或者接口提供應(yīng)用服務(wù)。
如此一來,物聯(lián)網(wǎng)中的應(yīng)用服務(wù)程序可通過共享同一個龐大的云計算資源池來獲得超大的系統(tǒng)吞吐能力以滿足用戶在某些情況下所需要的超高計算或者存儲資源請求,而付出的代價卻只是其總的資源使用量的費用。以上系統(tǒng)的動態(tài)擴展與收縮過程并不需要用戶干預(yù),系統(tǒng)會自動進行,開發(fā)者在其平臺上開發(fā)時除了按照其規(guī)范并遵循程序易于被橫向擴展的原則外,跟丌發(fā)本地應(yīng)用程序沒有太大區(qū)別,這給系統(tǒng)開發(fā)者與使用者都帶來了很大的實惠,而運營商也可以牢牢的控制中間件服務(wù)這一核心環(huán)節(jié)。
2 改進的EPC中間件體系結(jié)構(gòu)
EPC中間件系統(tǒng)基于云計算平臺,主要由邊界節(jié)點(Es)和內(nèi)部節(jié)點(Is)構(gòu)成,其中節(jié)點間多為異地分布。這一特點決定廠分布式的系統(tǒng)架構(gòu)應(yīng)該是一種必然的選擇,基于云計算技術(shù)的系統(tǒng)結(jié)構(gòu)則能夠最人限度地發(fā)揮分布式計算的優(yōu)勢。為此,本文提出 一種改進的EPC中間件系統(tǒng)結(jié)構(gòu),如圖2所示。
邊界節(jié)點中,RFID識讀器用于接受RFID標(biāo)簽的射頻信號,信息初步處理后,通過數(shù)據(jù)傳輸接口向相應(yīng)的內(nèi)部節(jié)點傳遞。
內(nèi)部節(jié)點由事件管理系統(tǒng)、任務(wù)管理系統(tǒng)、接口模塊組成。事件管理系統(tǒng)主要用于接收和處理從邊界節(jié)點得到的信息,并過濾得到所需的數(shù)據(jù);任務(wù)管理系統(tǒng)負(fù)責(zé)管理由上級中間件或企業(yè)應(yīng)用程序發(fā)送到本級中間件的任務(wù),這些任務(wù)代表用戶在EPC中間件端運行,運用SOAP服務(wù)器負(fù)責(zé)表明任務(wù)管理的功能和接口,它使任務(wù)管理器成為可以被所有系統(tǒng)統(tǒng)一訪問的SOAP服務(wù);接口模塊由面向企業(yè)具體應(yīng)用的接口、EPC信息服務(wù)(EPCIS)接口以及ONSH服務(wù)接口構(gòu)成,它是EPC中間件系統(tǒng)與外界交互的通道,通過使用云計算技術(shù),接口模塊向外部提供有狀態(tài)的Web Service,屏蔽了系統(tǒng)內(nèi)部各子系統(tǒng)實現(xiàn)的差異,統(tǒng)一了EPC中間件與外部環(huán)境之間的通信方式,模塊內(nèi)子系統(tǒng)采用SOA的設(shè)計思想,使整個模塊變得靈活而易于擴展,當(dāng)外部環(huán)境的業(yè)務(wù)邏輯改變時,只要Web Service接口不變,EPC中間件就無須作調(diào)整。
3 云計算的應(yīng)用
云計算平臺提供EPC中間件系統(tǒng)應(yīng)用服務(wù)的基本運行環(huán)境,滿足服務(wù)的定義、服務(wù)管理和服務(wù)調(diào)用等三個方面的要求。運行環(huán)境對服務(wù)的定義的支持,使用戶能進行服務(wù)定義來滿足業(yè)務(wù)的需求。服務(wù)管理主要提供對服務(wù)的組裝、編排、監(jiān)管等功能,以滿足特定業(yè)務(wù)流程的定義。而服務(wù)調(diào)用則為用戶提供的服務(wù)調(diào)用的統(tǒng)一接口,方便用戶使用云計算平臺中的服務(wù)。但在復(fù)雜企業(yè)運用方面,云計算并沒有很好的軟件架構(gòu)。從本質(zhì)上說,在抽象層次上,服務(wù)位于業(yè)務(wù)和技術(shù)中間。面向服務(wù)的軟件架構(gòu)設(shè)計一方面必須理解在業(yè)務(wù)需求和可以提供的服務(wù)之間的動態(tài)關(guān)系,另一方面,同樣要理解服務(wù)與提供這些服務(wù)的底層技術(shù)之間的關(guān)系。面向服務(wù)架構(gòu)(SOA)將其服務(wù)的IT架構(gòu)抽象出來,將其功能以粗粒度的服務(wù)形式表示出來,每種服務(wù)都清晰地表示其業(yè)務(wù)價值,那么,這些服務(wù)的顧客(可能在公司內(nèi)部,也可能是公司的某個業(yè)務(wù)伙伴)就可以得到這些服務(wù),而不必考慮其后臺實現(xiàn)的具體技術(shù)。更進一步,如果顧客能夠發(fā)現(xiàn)并綁定可用的服務(wù),那么在這些服務(wù)背后的IT系統(tǒng)能夠提供更大的靈活性。SOA強調(diào)服務(wù)第一,業(yè)務(wù)和IT對齊,為靈活而構(gòu)建的思想,這些都能很好的幫助云計算平臺快速應(yīng)對服務(wù)需求變化。所以考慮采用SOA與云計算相結(jié)合的方式,充分發(fā)揮各自優(yōu)勢,提供更加開放完善的EPC中間件體系架構(gòu)。
3.1應(yīng)用服務(wù)定義層設(shè)計
服務(wù)定義主要為用戶提供在平臺中定義服務(wù)的功能,包括兩個方面的含義,其一支持企業(yè)的目標(biāo)和戰(zhàn)略的服務(wù)設(shè)計。SOA的IT與業(yè)務(wù)對齊的思想可以實現(xiàn)滿足云計算的這種需求。其二是從編程角度上看,支持服務(wù)的設(shè)計與開發(fā),即具體服務(wù)的實現(xiàn)。
為了使用SOA構(gòu)建系統(tǒng),在應(yīng)用服務(wù)定義層將引用服務(wù)組件體系結(jié)構(gòu)(Service Component Architecture,SCA),SCA是一組規(guī)范,描述了用于使用面向服務(wù)的體系結(jié)構(gòu)來構(gòu)建應(yīng)用程序和系統(tǒng)的模型。在SCA中業(yè)務(wù)功能都是用服務(wù)來描述的,通過將這些服務(wù)進行組裝就可以提供新的業(yè)務(wù);在組裝的過程中,可能需要新開發(fā)一些服務(wù),也可能從企業(yè)己有的業(yè)務(wù)功能中抽取出服務(wù)進行重用。通常將構(gòu)建面向服務(wù)的應(yīng)用程序的步驟分為兩大部分:
·組件的實現(xiàn),提供服務(wù)和使用其他服務(wù)。
·為了構(gòu)建業(yè)務(wù)應(yīng)用程序?qū)M件集進行的組裝,通過將服務(wù)引用連接到服務(wù)來完成。
在服務(wù)定義層將服務(wù)實現(xiàn)和服務(wù)組裝從基礎(chǔ)設(shè)施功能細節(jié)以及用于調(diào)用服務(wù)的訪問方法細節(jié)分離開來,我們可以方便的將構(gòu)件的服務(wù)轉(zhuǎn)換為不同的調(diào)用協(xié)議,實現(xiàn)SOA中對各業(yè)務(wù)模塊間服務(wù)整合的功能。SCA組件在業(yè)務(wù)級別進行操作,只使用非常少的中間件API進行工作,同時它的接口是標(biāo)準(zhǔn)的,主要是WSDL接口和I a接口,可以通過組件容器提供QoS(quality of service)的服務(wù)。
3.2應(yīng)用服務(wù)管理層設(shè)計
服務(wù)管理主要提供組裝服務(wù)所需的流程編排服務(wù),統(tǒng)一事件支持, 以及相關(guān)的規(guī)則服務(wù)、任務(wù)調(diào)度、選擇器等。服務(wù)管理層提供的服務(wù)既可為系統(tǒng)內(nèi)部服務(wù)集成提供支持,也可以以Web Service或API的方式提供給外部程序調(diào)用,如服務(wù)編排和規(guī)則服務(wù)等,這也為平臺為用戶提供了更多服務(wù)選擇。
SOA中流程往往是跨系統(tǒng)的,通過流程編排與管理來協(xié)調(diào)服務(wù)之間的業(yè)務(wù)流轉(zhuǎn),監(jiān)控服務(wù)的運行狀況,并通過對流程的優(yōu)化提高服務(wù)對應(yīng)用的響應(yīng)時間,降低運營成本。此外,流程編排與管理負(fù)責(zé)把在流程協(xié)調(diào)的同時,產(chǎn)生的相關(guān)應(yīng)用開發(fā)人員的任務(wù),推送到個人工作臺。所以把流程服務(wù)提供給最終用戶是使用是平臺的不可或缺的功能,也是平臺的一大特色。
在管理層引入統(tǒng)一事件的支持,提供對業(yè)務(wù)事件的支持,幫助各服務(wù)模塊間實現(xiàn)松耦合。業(yè)務(wù)邏輯發(fā)出事件后不需要關(guān)心事件消費對象,為業(yè)務(wù)流程的組合帶來了很大的靈活性,而且可以實現(xiàn)服務(wù)間非侵入式的集成。在流程管理方面,統(tǒng)一事件支持還提供了業(yè)務(wù)流程的自動流轉(zhuǎn)的功能。
3.3應(yīng)用服務(wù)調(diào)用層設(shè)計
提供給外層使用的服務(wù)位于該層。提供的服務(wù)包括:支持開發(fā)用戶在平臺中開發(fā)運用的SDK,可供外部調(diào)用的Web Service,平臺提供的個性化軟件服務(wù),以及滿足用戶個性化需求的其它服務(wù)。
SDK提供在云平臺上開發(fā)的應(yīng)用工具,類似傳統(tǒng)開發(fā)中的API,但這里的SDK是經(jīng)過深度定制的,提供符合云計算平臺的架構(gòu)的應(yīng)用服務(wù)接口。提供SDK的主要目的是滿足企業(yè)對IT的個性化需求。在當(dāng)前企業(yè)自己管理軟件的模式中,當(dāng)企業(yè)需要一些個性化的軟件時,技術(shù)部門就會把這個應(yīng)用開發(fā)出來放到服務(wù)器上。如果有云計算平臺提供服務(wù)時,企業(yè)可以借助SDK來開發(fā)個性化應(yīng)用。
SDK提供支持企業(yè)應(yīng)用基本的API,包括存儲服務(wù),隊列服務(wù),安全認(rèn)證服務(wù)等。此外還提供調(diào)用Web Service和封裝成Web Service供外部調(diào)用的能力。
4 問題和對策
一直以來,安全問題都制約著云計算的發(fā)展,是云計算在企業(yè)中實施的最大障礙。本文總結(jié)了平臺面的安全問題并提出了相應(yīng)的對策。
(1)數(shù)據(jù)安全。平臺中的數(shù)據(jù)一般通過Internet傳輸,數(shù)據(jù)交由云服務(wù)管理后需要保住數(shù)據(jù)的安全,包括數(shù)據(jù)在服務(wù)器端的計算和數(shù)據(jù)備份問題。一般來說,企業(yè)數(shù)據(jù)都要求高安全性,如客戶資料,合同中的投標(biāo)規(guī)則等。但企業(yè)把這些數(shù)據(jù)提交給云計算平臺后,企業(yè)就失去了對數(shù)據(jù)的控制權(quán),無法確保數(shù)據(jù)的安全,增加了數(shù)據(jù)被泄露的可能性。
針對這個問題,當(dāng)數(shù)據(jù)在Internet上的傳輸時,可以通過建立SSL安全隧道,采用VPN技術(shù)等方式來保證數(shù)據(jù)安全傳輸;當(dāng)敏感數(shù)據(jù)保存到數(shù)據(jù)庫中時也可以通過加密處理有效的保證數(shù)據(jù)的安全。各企業(yè)應(yīng)用之間的隔離可以通過云計算的虛擬技術(shù)實現(xiàn),保證企業(yè)與企業(yè)之間的數(shù)據(jù)隔離開來。
(2)服務(wù)質(zhì)量。面對云計算服務(wù),企業(yè)用戶通常會對系統(tǒng)可靠性,可用性等方面持懷疑態(tài)度,擔(dān)心出現(xiàn)問題后無法得到服務(wù)商的及時解決,諸如此類都影響到了企業(yè)中云計算的全面應(yīng)用。
針對這個問題,可以引入SLA服務(wù)水平協(xié)議來為用戶提供可靠的服務(wù)。同時SLA可以進一步對云服務(wù)提供商進行約束,提高服務(wù)質(zhì)量,增加企業(yè)用戶對云服務(wù)的信心。
5 結(jié)論
運營商布局物聯(lián)網(wǎng)產(chǎn)業(yè),角色很關(guān)鍵,不能只做信息的透明通道,應(yīng)該在控制行業(yè)信息的基礎(chǔ)上拓展行業(yè)信息化解決方案,立足傳輸、傳感網(wǎng)絡(luò)和應(yīng)用網(wǎng)絡(luò)開展產(chǎn)業(yè)合作,并借助物聯(lián)網(wǎng)與3G網(wǎng)絡(luò)結(jié)合的機遇在產(chǎn)業(yè)鏈中占據(jù)更加重要的位置。