段粘粘
摘要:霧計算(Fog Computing)的概念在2011年由思科(Cisco)的Ginny Nichols提出,目前在高校信息化系統(tǒng)中是比較新穎的研究方向。霧計算有個很形象的名稱,即“接近地面的云”。霧計算和云計算(Cloud Computing)有很多相似之處,如它們都基于虛擬化技術(shù),從共享資源庫中,為多用戶提供資源。但它們也有很多不同,如位置(網(wǎng)絡(luò)拓撲中的位置)、構(gòu)成單位數(shù)量(數(shù)據(jù)節(jié)點量)及地域分布(廣泛性)等。霧計算介于物聯(lián)網(wǎng)(Internet of Things,IoL)和云計算之間,能夠解決物聯(lián)網(wǎng)和云計算結(jié)合帶來的終端節(jié)點反饋延時長、云服務(wù)器負擔重、帶寬壓力大等問題。近幾年來,霧計算在現(xiàn)實生活中各個方面都有涉及,如高校智能機房、智慧教育、智能交通、智能電網(wǎng)等。該文討論了在高校信息化系統(tǒng)中霧計算的特點、可提供的服務(wù)及未來發(fā)展前景。
關(guān)鍵詞:霧計算;云計算;物聯(lián)網(wǎng);信息化系統(tǒng)
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2018)02-0021-02
1 介紹
隨著物聯(lián)網(wǎng)(IoT)的發(fā)展,學(xué)校機房里面使用的傳感器越來越多,因此傳感器會產(chǎn)生大量的數(shù)據(jù)。為了智能的研究這些數(shù)據(jù),云計算被引入并用于執(zhí)行存儲、處理和數(shù)據(jù)分析,隨即刮出一股“云—云計算—大數(shù)據(jù)”熱潮[1]。云計算里面的“即付即用”(Pay as You go)模式為面向web應(yīng)用程序、擁有批處理的客戶和管理私有數(shù)據(jù)中心(Data Center,DC)提供有效的代替方案。因此,云計算可以免費為企業(yè)和最終用戶提供滿意的解決方案,使之從眾多細節(jié)條框協(xié)議中逃脫出來[2]。
云概念是基于“云計算”技術(shù),實現(xiàn)各種終端設(shè)備之間的互聯(lián)互通。云端后臺的存儲和運算能力比較強大,為用戶提供所有享受資源和應(yīng)用程序。物聯(lián)網(wǎng)設(shè)備的一個基本特征是連接性,旨在確保進入物聯(lián)網(wǎng)交互設(shè)備環(huán)境中的計算設(shè)備能夠通過單點或多點進行相互通信。然而,云的收集任務(wù)相當難以執(zhí)行,原因如下:
1) 延遲敏感性:當云與客戶之間的距離相對較遠時,云計算無法解決一些應(yīng)用程序的“延遲敏感性”問題。為了降低云計算的運營成本,云服務(wù)器供應(yīng)商大多選擇將數(shù)據(jù)中心建立在成本較低的地方。因此,偏遠地方成了首選之地,但也會伴隨著數(shù)據(jù)傳輸延遲等弊端。
2) 云負擔:隨著物聯(lián)網(wǎng)(IoT)的發(fā)展,數(shù)據(jù)和數(shù)據(jù)節(jié)點量不斷增加,導(dǎo)致云負擔不斷增加。物聯(lián)網(wǎng)作為一個復(fù)雜的網(wǎng)絡(luò)物理系統(tǒng),LoT將各種感知、識別、通信、網(wǎng)絡(luò)和信息管理設(shè)備集成到一個基于人與物聯(lián)系的云端系統(tǒng)中,進而能實現(xiàn)實時發(fā)送和接受信息[3]。由于IoT生成的數(shù)據(jù)量巨大,不僅占用了大量的網(wǎng)絡(luò)帶寬,而且增加了數(shù)據(jù)中心的負擔,數(shù)據(jù)傳輸和信息分發(fā)成為云負擔中最大的問題。
云不能滿足物聯(lián)網(wǎng)中服務(wù)質(zhì)量(Quality of Service,QoS)的所有要求,因此需要一種新的架構(gòu)。新架構(gòu)需要對底層設(shè)備的反應(yīng)快速,并可以減輕云端的負擔。在考慮如何使設(shè)備本身或“中間設(shè)備”存儲和處理IoT生成的大量數(shù)據(jù)時,霧計算的定義被很多學(xué)者提出來。霧計算就是本地化的云計算,主要思想是利用大量的霧節(jié)點將一些數(shù)據(jù)中心的任務(wù)遷移到服務(wù)器的邊緣。因此,霧計算具有數(shù)據(jù)傳輸速率高的優(yōu)點,并能大大減少用戶響應(yīng)時間。霧計算的到來標志著科技向前推動一大步,為人體局域網(wǎng)絡(luò)(body area network,BAN)、車輛移動網(wǎng)絡(luò)和智能電網(wǎng)等領(lǐng)域解決了很多難題。文章結(jié)構(gòu)如下:第2節(jié)討論了霧計算及其特點;第3節(jié)描述了霧計算提供的服務(wù)。第4節(jié)描述了霧計算未來的作用。第5節(jié)是結(jié)論。
2 霧計算
為了解決上述問題,思科2011年提出了霧計算。霧是靠近“地面”的云,實際上更靠近終端設(shè)備。云計算強調(diào)計算的方式,而霧計算更強調(diào)計算的位置,如果說云計算是廣域網(wǎng)(Wide Area Network,WAN)計算,那么霧計算就是局域網(wǎng)(Local Area Network,LAN)計算[2]。
霧計算是一種構(gòu)建在邊緣服務(wù)器上的新穎體系架構(gòu),它為終端設(shè)備和傳統(tǒng)云計算數(shù)據(jù)中心之間的分布式提供有限的計算、存儲和網(wǎng)絡(luò)服務(wù)。它為終端設(shè)備提供邏輯智能,并對數(shù)據(jù)中心的數(shù)據(jù)進行篩選、過濾,降低IoT應(yīng)用程序中延遲敏感的可預(yù)測延遲,在高校信息化系統(tǒng)及醫(yī)療保健領(lǐng)域中應(yīng)用比較廣泛。
霧計算是個很形象的框架,提出它的Ginny Nichols提了一個有趣的說法“霧是接近地面的云”。霧處于終端設(shè)備和云之間,每個智能物體都連接到一個霧節(jié)點,框架結(jié)構(gòu)如圖1所示。
霧節(jié)點,連接一些網(wǎng)絡(luò)邊緣、性能差的分散設(shè)備,執(zhí)行存儲、互聯(lián)網(wǎng)資源和分布式計算等任務(wù),如圖2所示。霧在本質(zhì)上異構(gòu)的,范圍從高端服務(wù)器、邊緣路由器、接入點、機頂盒到終端設(shè)備,諸如移動電話、蘋果手表和傳感器等[3]。
霧計算的實施是將云計算范式擴展到網(wǎng)絡(luò)的邊緣[3]。云和霧都為最終用戶提供存儲、計算和網(wǎng)絡(luò)服務(wù)。在該服務(wù)中,云和霧的物理位置(Physical Location)和服務(wù)質(zhì)量(Quality of Service,QoS)不同。
霧計算雖作為一種新的體系結(jié)構(gòu),但許多特點表明霧計算是云的延伸:
1) 相鄰的物理位置。如圖1,霧計算是比較靠近地面的,可作為相鄰的匯點進行局部部署,而云計算的位置比較靠云端。由于云遠離終端設(shè)備,終端設(shè)備需通過各種路由器和網(wǎng)絡(luò)設(shè)備連接到云端,因此網(wǎng)絡(luò)設(shè)備的瓶頸將不可避免地導(dǎo)致不可預(yù)知的延誤。隨著敏感信息量的大量增加,延遲敏感數(shù)據(jù)無法實時處理,最終導(dǎo)致嚴重問題。
霧節(jié)點部署在網(wǎng)絡(luò)邊緣,它們可以大大減少時間延遲。如圖3所示,如果終端設(shè)備處于相同的局域網(wǎng)(LAN)中,與廣域網(wǎng)(WAN)或因特網(wǎng)相比,可以減少傳輸延遲。當各種各樣或動態(tài)生成的數(shù)據(jù)到達霧時,它們將根據(jù)其類型和緊急程度自動進行存儲和處理。endprint
2) 支持在線分析。霧對終端設(shè)備上數(shù)據(jù)的存儲和計算有很大作用。由于霧可以為終端設(shè)備提供存儲和計算,因此它能為其提供實時分析并給予相應(yīng)的響應(yīng)動作。霧化基于其內(nèi)存提供分布式本地存儲?;贐igtable,HBase,NoSQL等開放源碼,分布式和非關(guān)系型數(shù)據(jù)庫的快速發(fā)展,云計算可以支持海量數(shù)據(jù)存儲。相反,霧只需要支持少量數(shù)據(jù)的存儲。數(shù)據(jù)可能包括監(jiān)測數(shù)據(jù)范圍廣泛、元數(shù)據(jù)、計算策略等。由于數(shù)據(jù)的多樣性,霧必須支持不同類型的存儲策略,例如用于監(jiān)視數(shù)據(jù)的臨時存儲或較高級的半永久性存儲[4]。
根據(jù)各種QoS,云服務(wù)器通過多臺服務(wù)器為大數(shù)據(jù)提供并行計算和智能分析,實現(xiàn)有限計算和在線分析。霧節(jié)點在數(shù)據(jù)采集和數(shù)據(jù)處理中起著重要作用[2]。
3) 服務(wù)由智能但不強大的設(shè)備提供。霧節(jié)點僅執(zhí)行有限的計算。因此,他們不需要使用強大的計算機,只需要使用路由器、機頂盒、接入點、手機和其他便宜的終端設(shè)備。然后,數(shù)據(jù)挖掘和長期分析的工作可以分配給遙遠的云。從物理角度來看,傳統(tǒng)云由服務(wù)器驅(qū)動,而霧可以由我們周圍的現(xiàn)有“智能設(shè)備”驅(qū)動,如個人電腦,手機,網(wǎng)關(guān)等。
4) 支持各種通信網(wǎng)絡(luò)。終端設(shè)備有不同的特點,并且被廣泛的通信網(wǎng)絡(luò)所支持。在物聯(lián)網(wǎng)中,有大型傳感器網(wǎng)絡(luò)來監(jiān)控環(huán)境。當不同的傳感器連接到互聯(lián)網(wǎng)時,涉及不同類型的協(xié)議。如圖4所示,一些協(xié)議由Fog支持,如ZigBee,WiFi,2G / 3G / 4G,WiMax,6Lowpan等。然而,云支持的網(wǎng)絡(luò)是單一的,即TCP/IP協(xié)議。
5) 分布式計算。霧計算以分散的方式工作,而不是集中的方式。霧計算在提供服務(wù)過程中,將其大量的計算工作分解成許多較小的部分,然后把許多計算工作分配給霧節(jié)點進行處理。與之相比,云將這些計算結(jié)果放在一起,或作為最終結(jié)果進行更復(fù)雜的計算。
隨著數(shù)據(jù)量的增加和異質(zhì)性以及不可預(yù)測性,除了延遲之外,帶寬將成為一個問題。霧計算中的霧節(jié)點負責處理區(qū)域數(shù)據(jù),因此分布式計算策略有助于降低計算復(fù)雜度,從而提高計算速率。最后,由霧節(jié)點轉(zhuǎn)發(fā)的計算數(shù)據(jù)被連續(xù)上傳到云端,有助于解決帶寬問題。
3 霧計算的服務(wù)
在上一章節(jié)中討論了霧計算的主要特點,本章節(jié)介紹了霧計算為網(wǎng)絡(luò)邊緣和各種應(yīng)用程序提供豐富的新服務(wù)及平臺。霧,被構(gòu)建成一個統(tǒng)一的平臺,提供新興的服務(wù),并開發(fā)新的應(yīng)用程序。圖5展示的霧模型,部署在邊緣的所有本地設(shè)備,傳感器連接到本地霧和云端,最終生成的數(shù)據(jù)將發(fā)送到霧節(jié)點。霧在收到這些數(shù)據(jù)后進行一些處理,然后轉(zhuǎn)發(fā)到云端。云主要做大數(shù)據(jù)存儲和數(shù)據(jù)挖掘,并將一些計算結(jié)果反饋給霧。霧根據(jù)計算結(jié)果來控制終端設(shè)備并下達相應(yīng)的指令。該過程中的霧節(jié)點可以與網(wǎng)關(guān)設(shè)備相似,但功能強大的方式使用。總而言之,霧的主要工作可概述為:切換網(wǎng)絡(luò)、推送服務(wù)和核心服務(wù)。
1) 切換網(wǎng)絡(luò)
霧計算需要支持許多協(xié)議,如ZigBee,WiFi,2G/3G/4G,WiMax,6LOWPAN等,但云只支持TCP/IP協(xié)議。眾所周知,不同的通信協(xié)議以不同的格式傳輸數(shù)據(jù)。因此,霧計算的首要任務(wù)就是在物聯(lián)網(wǎng)和云端之間切換網(wǎng)絡(luò)。
2) 推送服務(wù)
霧作為終端設(shè)備和云之間的中介,需要為它們推送各種各樣的服務(wù),主要包括接收和上傳數(shù)據(jù)。終端設(shè)備在生成數(shù)據(jù)后將數(shù)據(jù)上傳到霧。最后,霧提取這些數(shù)據(jù),將處理后的數(shù)據(jù)更新傳送到云端,以便長時間存儲并用于深入挖掘。
3) 核心服務(wù)
切換網(wǎng)絡(luò)和推送服務(wù)兩個功能是支持霧進行一些存儲和計算的基礎(chǔ)。霧的主要任務(wù)是在性能較差的設(shè)備中實現(xiàn)本地數(shù)據(jù)處理,存儲和計算。
不是所有的數(shù)據(jù)都需要上傳到云端,如一些設(shè)備接連到互聯(lián)網(wǎng)上生成的數(shù)據(jù),在某些階段不需要上傳至云端。為此,將IoT連接到云的霧應(yīng)該具有額外的功能,可以在將其發(fā)送到Internet并最終到達云端之前進行一些處理,如過濾和聚合。霧必須決定應(yīng)該發(fā)送什么(內(nèi)容),如何發(fā)送(數(shù)據(jù)格式)以及何時發(fā)送(時間)。在這個過程中,霧還需要刪除一些冗余或無效的數(shù)據(jù),并在空間和時間維度上聚合補充和冗余數(shù)據(jù)。
過濾和聚合數(shù)據(jù)需要一些策略,在線分析需要一些實際或相關(guān)數(shù)據(jù)。霧應(yīng)支持短暫和半永久性儲存[5]。霧應(yīng)該處理好幾個問題,比如哪些數(shù)據(jù)要存儲在網(wǎng)絡(luò)邊緣,以及如何以有限的存儲容量達到存儲數(shù)據(jù)的最佳境界。
4 霧計算的作用(角色)
如前所述,霧計算在終端設(shè)備和傳統(tǒng)云之間提供計算、存儲和網(wǎng)絡(luò)服務(wù)。它對終端設(shè)備執(zhí)行邏輯分析,并對數(shù)據(jù)中心(DCs)的數(shù)據(jù)進行過濾。
霧計算在物聯(lián)網(wǎng)中的作用。霧計算將收集和處理由終端設(shè)備生成的大量數(shù)據(jù),為當前環(huán)境提供在線分析和本地決策。終端設(shè)備不斷收集數(shù)據(jù)以監(jiān)視環(huán)境,因此霧節(jié)點需要從端節(jié)點獲取實時數(shù)據(jù)。在一些應(yīng)用中,例如人體局域網(wǎng)(body area networks),傳感器將經(jīng)常上傳大量數(shù)據(jù)。霧節(jié)點需要對數(shù)據(jù)進行一些處理,如數(shù)據(jù)過濾,數(shù)據(jù)聚合等。例如,如果ECG(electrocardiogram)傳感器上傳緊急數(shù)據(jù),則霧節(jié)點將根據(jù)本地策略立即處理它們。圖6以簡單的方式展示了這些過程。由于霧可以支持本地數(shù)據(jù)存儲,因此可以對這些數(shù)據(jù)進行一些計算和智能分析,根據(jù)策略將一些決策分配給當前環(huán)境,以提供更好的服務(wù)。
霧計算在數(shù)據(jù)中心中的作用。當設(shè)備連接到互聯(lián)網(wǎng)并生成數(shù)據(jù)時,由于現(xiàn)有冗余數(shù)據(jù),有可能在某些階段將數(shù)據(jù)上傳到云或同步設(shè)備[4]。隨著霧模型的發(fā)展,云保持了中央“智囊”的作用(分析數(shù)據(jù)并做出所有的全球決策)。然而,云也可以將部分任務(wù)分配給霧節(jié)點,因為霧通常對局部分析和邊緣決策更有意義。此外,如果霧不需要進行深入的分析,只是主動過濾本地數(shù)據(jù),并有選擇地將數(shù)據(jù)傳輸?shù)皆芠6]。因此,對于廣泛分布的傳感器網(wǎng)絡(luò),霧可以顯著提高傳輸效率。
5 結(jié)論和未來的工作
在本文中,討論了霧計算的視角和關(guān)鍵特征。霧計算平臺以分布式方式提供有限的計算,存儲和聯(lián)網(wǎng)服務(wù),以解決由物聯(lián)網(wǎng)造成的延遲問題并與云協(xié)作。霧作為統(tǒng)一架構(gòu),是在服務(wù)器邊緣執(zhí)行數(shù)據(jù)中心任務(wù)的一部分,最終實現(xiàn)對延遲敏感的IoT應(yīng)用程序新開發(fā)。在未來的工作中,將研究本地存儲和計算策略,在BAN,車輛網(wǎng)絡(luò)等領(lǐng)域?qū)嵤╈F化計算。
參考文獻:
[1] Cico.Cisco Global Cloud Index:Forecast and Methodology 2013-2018 white paper[OL].https://www.cisco.com/c/en/us/support/security/anyconnect-secure-mobility-client/tsd-products-support-series-home.html
[2] F.Bonomi,R.Milito, J.Zhu,andS.Addepalli.Fog computing and its role in the internet of things[C].MCC Workshop on Mobile Cloud Computing,2012:13-16.
[3] 孫利民,沈杰,朱紅松.從云計算到海計算:論物聯(lián)網(wǎng)的體系結(jié)構(gòu)[J].中興通訊技術(shù),2011,17(1):3-7.
[4] 程冬梅,李志.基于霧計算的醫(yī)院信息服務(wù)系統(tǒng)[A].計算機科學(xué),2015:170-190.
[5] AazamM,HungP,HuhE.Smart gateway based communication for cloud of things[C].IEEE,2014:1-6.
[6] 李治.霧計算環(huán)境下數(shù)據(jù)安全關(guān)鍵技術(shù)研究[D].北京科技大學(xué),2017.endprint