霧計算是什么鬼?作為云計算的延伸擴(kuò)展有何玄機(jī)
雷鋒網(wǎng) (搜索“雷鋒網(wǎng)”公眾號關(guān)注) 按:本文作者夏曄,法國電信博士研究生,關(guān)注霧計算、云計算、分布式計算領(lǐng)域。
隨著科技進(jìn)步,各種技術(shù)名詞也在快速發(fā)展。云計算、 物聯(lián)網(wǎng) 、霧計算,相信這些名詞早已進(jìn)入大家的視野。其中,霧計算的概念2011年由Cisco提出 [1] ,相對較新。時至今日,霧計算已經(jīng)成為研究的熱點和重點,并被業(yè)界寄予厚望。
然而,筆者仍能看到對霧計算沒有根據(jù)的質(zhì)疑,無外乎兩種:
不就是本地服務(wù)器嗎?
云里霧里的,炒作呢吧?
霧計算遠(yuǎn)遠(yuǎn)不止那么簡單,它是對數(shù)以萬計的“本地服務(wù)器”整體性的考量。它是一個平臺而不是單獨一臺機(jī)器。在后續(xù)內(nèi)容中,我們會深入探討。
看看世界上的科技巨頭們選擇的方向吧,以下所有項目都與霧計算有莫大關(guān)聯(lián)。他們花費大筆資金精力聘用頂級科學(xué)家來炒作?
Arm、Cisco、Dell、Intel、Microsoft以及普林斯頓大學(xué)共同投資創(chuàng)辦的霧計算研究項目OpenFog [2]? 。
Orange (法國電信) 與Inria(法國國立計算機(jī)及自動化研究院)共同主導(dǎo)的霧計算與大規(guī)模分布式云研究項目Discovery [3] 。
華為的“全面云化”戰(zhàn)略 [4]
Intel的“Cloud Computing at the Edge”項目 [5] 。
NTT的“Edge Computing”項目 [6] 。
AT&T的“Cloud 2.0”項目。
對于這種質(zhì)疑,筆者希望用本文揭示霧計算的重大價值。
從物聯(lián)網(wǎng)說起
智慧城市、智能家庭,種種可預(yù)見的物聯(lián)網(wǎng)應(yīng)用在未來將極大地方便人們的生活。然而目前市場上智能終端設(shè)備的智能程度普遍令人不滿。那么這個“智能”應(yīng)來自哪里?怎樣才能保障設(shè)備的智能呢?
計算機(jī)智能的基礎(chǔ)就在于其背后的資源,如CPU、內(nèi)存、硬盤、網(wǎng)絡(luò)帶寬等計算資源(更確切的說法,會將CPU、內(nèi)存歸類于計算資源;硬盤歸于存儲資源;帶寬歸于通信資源。本文為了簡化,統(tǒng)一將它們稱作計算資源);視頻、溫度、光線強(qiáng)度等傳感器提供的數(shù)據(jù)資源;當(dāng)然還有電力等等。
在這些資源中最核心的就是計算資源,通過計算提取數(shù)據(jù)中的知識、做出決策;通過存儲來保存知識庫,從而根據(jù)歷史經(jīng)驗保證決策準(zhǔn)確,做出預(yù)測;通過通信完成設(shè)備間的溝通,實現(xiàn)知識與決策的分發(fā)。基于以上,才能給用戶智能的服務(wù)與體驗。
那么現(xiàn)在設(shè)備的不夠智能,癥結(jié)是否在于設(shè)備的CPU不強(qiáng),內(nèi)存硬盤不夠大呢?
終端的不足
我們無法想象把基站安裝在每部手機(jī)上,同樣的,我們無法想象每臺設(shè)備都擁有大量資源,這將大幅度提高成本,無法形成有效的解決方案。
當(dāng)資源不足時,一個直觀的想法是將計算任務(wù)交給其他計算能力強(qiáng)的設(shè)備。物聯(lián)網(wǎng)中有大量的終端設(shè)備,它們無法在本地完成計算做出決策,那么應(yīng)該由誰來解決終端設(shè)備的資源不足呢?大家想到了云。
云的不足
云計算平臺為云用戶提供數(shù)據(jù)中心中的資源。近十年來,云計算充分的向人們展示了它的優(yōu)越性:
“無限”的資源池
大量用戶共享資源池帶來的廉價資源
隨時隨地用任何網(wǎng)絡(luò)設(shè)備訪問
“快速”重新部署,彈性的資源租用
按需購買,自助服務(wù)
服務(wù)提供商把特定服務(wù)部署在云中,終端設(shè)備發(fā)送信息給服務(wù),服務(wù)完成運算后將結(jié)果發(fā)回給終端,并將必要數(shù)據(jù)在云端存儲。通過這種形式,云充分滿足了終端設(shè)備的資源期待,也成為物聯(lián)網(wǎng)生態(tài)系統(tǒng)中不可缺少的一環(huán)。
為了服務(wù)不同地理位置的用戶,在互聯(lián)網(wǎng)的多層次結(jié)構(gòu)中,數(shù)據(jù)中心位于核心網(wǎng)絡(luò)。核心網(wǎng)絡(luò)距離終端用戶較遠(yuǎn),用戶消息需要經(jīng)過若干跳才能夠到達(dá)。下圖是簡化的一部分網(wǎng)絡(luò)拓?fù)洹?/p>
圖1 互聯(lián)網(wǎng)網(wǎng)絡(luò)拓?fù)鋱D示
數(shù)據(jù)中心提供了高度集中的大量資源,然而只有云仍有一些不足。
高延遲: 離用戶較遠(yuǎn)的距離導(dǎo)致了較高的網(wǎng)絡(luò)延遲。對實時性要求高的應(yīng)用難以部署在云中。
網(wǎng)絡(luò)擁塞: 根據(jù) Cisco 的預(yù)測,到2020年,全球?qū)⒂?00億智能設(shè)備。相較而言,網(wǎng)絡(luò)帶寬的增長速度遠(yuǎn)遠(yuǎn)滯后。如果大量的物聯(lián)網(wǎng)應(yīng)用部署在云中,將會有數(shù)量龐大的傳感器原始數(shù)據(jù)時刻不斷的涌入核心網(wǎng)絡(luò),帶來核心網(wǎng)絡(luò)擁塞。
較低可靠性: 安全,生命相關(guān)的物聯(lián)網(wǎng)應(yīng)用,一旦遇到應(yīng)用失效,數(shù)據(jù)中心失效,或從終端用戶到云平臺的任何一段網(wǎng)絡(luò)失效,都將帶來重大的安全隱患。從終端到云的通信通路較長,失效風(fēng)險較大;而在云中部署服務(wù)備份的成本也較高。
可見,對實時性,大數(shù)據(jù),可靠性要求高的應(yīng)用,云并不適合。 人們需要新的計算模型來滿足未來的應(yīng)用,彌補(bǔ)云的不足。霧計算正是在這種背景下被提出的。
霧計算
霧計算是個很形象的名稱,提出它的Ginny Nichols提了一個有趣的說法“霧是接近地面的云”。
這句話有兩層含義:
霧計算和云計算有很多相似。如它們都基于虛擬化技術(shù),從共享資源池中,為多用戶提供資源。
接近地面。這也指出了霧和云第一個不同——位置。更具體些,是它們在網(wǎng)絡(luò)拓?fù)渲械奈恢谩?/span>
圖2 霧計算原始定義圖示
上圖是根據(jù)Cisco對霧計算的原始定義 [1] 所作的圖示。在Cisco的定義中, 霧主要使用邊緣網(wǎng)絡(luò)中的設(shè)備。這些設(shè)備可以是傳統(tǒng)網(wǎng)絡(luò)設(shè)備(早已部署在網(wǎng)絡(luò)中的路由器、交換機(jī)、網(wǎng)關(guān)等等),也可以是專門部署的本地服務(wù)器。
一般來說,專門部署的設(shè)備會有更多資源,而使用有寬裕資源的傳統(tǒng)網(wǎng)絡(luò)設(shè)備則可以大幅度降低成本。這兩種設(shè)備的資源能力都遠(yuǎn)小于一個數(shù)據(jù)中心,但是它們龐大的數(shù)量可以彌補(bǔ)單一設(shè)備資源的不足。
霧平臺由數(shù)量龐大的霧節(jié)點(即上文中霧使用的硬件設(shè)備以及設(shè)備內(nèi)的管理系統(tǒng))構(gòu)成。這些霧節(jié)點可以各自散布在不同地理位置,與資源集中的數(shù)據(jù)中心形成鮮明對比。
根據(jù)以上內(nèi)容,可以總結(jié)出霧計算與云計算的不同:
更低: 霧節(jié)點在網(wǎng)絡(luò)拓?fù)渲形恢酶停瑩碛懈〉木W(wǎng)絡(luò)延遲(總延遲=網(wǎng)絡(luò)延遲+計算延遲),反應(yīng)性更強(qiáng)。
更多: 相比較云平臺的構(gòu)成單位——數(shù)據(jù)中心,霧節(jié)點數(shù)量龐大。
更廣: 霧節(jié)點擁有廣泛的地域分布。
更輕: 霧節(jié)點更輕量,計算資源有限。
這些不同給霧帶來哪些優(yōu)點,是什么使它成為物聯(lián)網(wǎng)生態(tài)中又一不可或缺的部分呢?
霧的優(yōu)點
除了上文中提到的低延遲,霧計算還有以下優(yōu)點:
省核心網(wǎng)絡(luò)帶寬: 霧作為云和終端的中間層,本就在用戶與數(shù)據(jù)中心的通信通路上。霧可以過濾,聚合用戶消息(如不停發(fā)送的傳感器消息),只將必要消息發(fā)送給云,減小核心網(wǎng)絡(luò)壓力。
高可靠性: 為了服務(wù)不同區(qū)域用戶,相同的服務(wù)會被部署在各個區(qū)域的霧節(jié)點上。這也使得高可靠性成為霧計算的內(nèi)在屬性,一旦某一區(qū)域的服務(wù)異常,用戶請求可以快速轉(zhuǎn)向其他臨近區(qū)域。
背景信息了解: 因為分布在不同區(qū)域,霧計算中的服務(wù)可以了解到區(qū)域背景信息,如本區(qū)域帶寬是否緊張,根據(jù)這一知識,一個視頻服務(wù)可以及時決策是否降低本地區(qū)視頻質(zhì)量,來避免即將到來的卡頓;而對一個地圖應(yīng)用,則可將本地區(qū)地圖緩存,提高用戶體驗。
省電: 數(shù)據(jù)中心的電力消耗已經(jīng)成為重要成本,其中冷卻系統(tǒng)占有不可忽視的比重。霧計算節(jié)點因為地理位置分散,不會集中產(chǎn)生大量熱量,并不需要額外的冷卻系統(tǒng),從而減少耗電。
基于以上優(yōu)點,霧能夠彌補(bǔ)云的不足,并和云相互配合,協(xié)同工作。
云+霧
霧計算自提出就是作為云計算的延伸擴(kuò)展,而不是云計算的替代。 如前文所述,在物聯(lián)網(wǎng)生態(tài)中,霧可以過濾,聚合用戶消息;匿名處理用戶數(shù)據(jù)保證隱秘性;初步處理數(shù)據(jù),做出實時決策;提供臨時存儲,提升用戶體驗。
相對地,云可以負(fù)責(zé)大運算量,或長期存儲任務(wù)(如:歷史數(shù)據(jù)保存、數(shù)據(jù)挖掘、狀態(tài)預(yù)測、整體性決策等等),從而彌補(bǔ)單一霧節(jié)點在計算資源上的不足。
這樣,云和霧共同形成一個彼此受益的計算模型,這一新的計算模型能更好的適應(yīng)物聯(lián)網(wǎng)應(yīng)用場景。
用例
目前的城市道路監(jiān)控系統(tǒng),從監(jiān)控探頭到本地中心機(jī)房的通信跳數(shù)一般在3~4跳甚至更高,如果系統(tǒng)需要做出實時決策會面臨網(wǎng)絡(luò)延遲的挑戰(zhàn)。
圖3 用例——智能交通燈系統(tǒng)
圖中所示是一個智能交通燈系統(tǒng),除了監(jiān)控探頭作為傳感器,還有交通燈作為執(zhí)行器。霧計算的引入將為這一系統(tǒng)帶來更多的可能性。如:
監(jiān)控過程中,相比上一幀畫面,通常只有一部分畫面變化,而另一部分不變,非常適于壓縮處理。對于需要人為監(jiān)控的畫面,霧節(jié)點將視頻流直接轉(zhuǎn)發(fā) 給中心機(jī)房;而其他監(jiān)控視頻只需要存儲,對實時性要求不高,可以在霧節(jié)點處緩存若干幀畫面,壓縮后再傳向中心機(jī)房。這樣從霧節(jié)點到機(jī)房的網(wǎng)絡(luò)帶寬將得到緩 解。
在霧節(jié)點處,可判斷監(jiān)控畫面中是否有救護(hù)車頭燈閃爍,做出實時決策發(fā)送給對應(yīng)交通燈,協(xié)助救護(hù)車通過。
上例僅是智慧城市中的一個具體縮影,霧計算在智能電網(wǎng), 車聯(lián)網(wǎng) ,智慧家庭等領(lǐng)域的應(yīng)用場景不勝枚舉。
挑戰(zhàn)
霧計算帶來新的可能性的同時,也在安全性,高效利用資源,API等方面帶來了新的挑戰(zhàn)。霧使用大量分散設(shè)備,使中心化的控制變得困難;霧節(jié)點的資源 相對受限,需要節(jié)點間的協(xié)同配合,才能優(yōu)化各服務(wù)的部署;“何時將服務(wù)遷移至何處”則是應(yīng)對移動終端設(shè)備,動態(tài)的應(yīng)用場景需要考量的問題。
隨著霧計算概念的發(fā)展,霧被進(jìn)一步擴(kuò)展到“地面上”。霧節(jié)點不再僅限于網(wǎng)絡(luò)邊緣層,還包括擁有寬裕資源的終端設(shè)備。
圖4 霧計算發(fā)展定義圖示
終端設(shè)備與用戶直接交互,數(shù)量龐大,在豐富霧的設(shè)備種類的同時,也帶來更多動態(tài)屬性,如電池電量,霧節(jié)點移動性等問題需要解決。
結(jié)語
本文從物聯(lián)網(wǎng)的應(yīng)用場景出發(fā),由終端設(shè)備的資源限制談到對云的需求,再由云在網(wǎng)絡(luò)中的位置造成的限制談到霧。和大家共同探討了云霧的對比,云霧的結(jié)合,霧的優(yōu)點,霧的應(yīng)用,霧的挑戰(zhàn)。希望以此文拋磚引玉,和大家共同關(guān)注科技發(fā)展趨勢。
參考文獻(xiàn)
[1] Fog Computing and Its Role in the Internet of Things. Flavio Bononi and al, Cisco. ACM SIGCOMM International Conference on Mobile Cloud Computing, August 2012.
[2] http://www.openfogconsortium.org/
[3] http://beyondtheclouds.github.io/dcc.html
[4]? 華為推進(jìn)“全面云化”戰(zhàn)略,使能行業(yè)數(shù)字化轉(zhuǎn)型
[5] Increasing Network ROI with Cloud Computing at the Edge. Intel Solution Brief, 2014.
[6] Announcing the“Edge computing”concept and the“Edge accelerated Web platform”prototype to improve response time of cloud. NTT Press Release, January 2014.