物聯(lián)網(wǎng)技術(shù)的快速發(fā)展和云服務(wù)的推動使得云計算模型已經(jīng)不能很好的解決現(xiàn)在的問題,于是,這里給出一種新型的計算模型——邊緣計算。
邊緣計算指的是在網(wǎng)絡(luò)的邊緣來處理數(shù)據(jù),這樣能夠減少請求響應(yīng)時間、提升電池續(xù)航能力、減少網(wǎng)絡(luò)帶寬同時保證數(shù)據(jù)的安全性和私密性。
這篇文章會通過一些案例來介紹邊緣計算的相關(guān)概念,內(nèi)容包括云卸載、智能家居、智慧城市和協(xié)同邊緣節(jié)點實現(xiàn)邊緣計算。希望這篇文章能夠給你一些啟發(fā)并讓更多的人投入邊緣計算的研究中來。
一
簡介
物聯(lián)網(wǎng)的快速發(fā)展讓我們進入了后云時代,在我們的日常生活中會產(chǎn)生大量的數(shù)據(jù)。物聯(lián)網(wǎng)應(yīng)用可能會要求極快的響應(yīng)時間,數(shù)據(jù)的私密性等等。
如果把物聯(lián)網(wǎng)產(chǎn)生的數(shù)據(jù)傳輸給云計算中心,將會加大網(wǎng)絡(luò)負載,網(wǎng)路可能造成擁堵,并且會有一定的數(shù)據(jù)處理延時。
隨著物聯(lián)網(wǎng)和云服務(wù)的推動,我們假設(shè)了一種新的處理問題的模型,邊緣計算,在網(wǎng)絡(luò)的邊緣產(chǎn)生、處理、分析數(shù)據(jù)。
二
為什么需要邊緣計算?
云服務(wù)的推動:云中心具有強大的處理性能,能夠處理海量的數(shù)據(jù)。但是,將海量的數(shù)據(jù)傳送到云中心成了一個難題。
云計算模型的系統(tǒng)性能瓶頸在于網(wǎng)絡(luò)帶寬的有限性,傳送海量數(shù)據(jù)需要一定的時間,云中心處理數(shù)據(jù)也需要一定的時間,這就會加大請求響應(yīng)時間,用戶體驗極差。
物聯(lián)網(wǎng)的推動:現(xiàn)在幾乎所有的電子設(shè)備都可以連接到互聯(lián)網(wǎng),這些電子設(shè)備會后產(chǎn)生海量的數(shù)據(jù)。
傳統(tǒng)的云計算模型并不能及時有效的處理這些數(shù)據(jù),在邊緣結(jié)點處理這些數(shù)據(jù)將會帶來極小的響應(yīng)時間、減輕網(wǎng)絡(luò)負載、保證用戶數(shù)據(jù)的私密性。
終端設(shè)備的角色轉(zhuǎn)變:終端設(shè)備大部分時間都在扮演數(shù)據(jù)消費者的角色,比如使用智能手機觀看愛奇藝、刷抖音等。
然而,現(xiàn)在智能手機讓終端設(shè)備也有了生產(chǎn)數(shù)據(jù)的能力,比如在淘寶購買東西,在百度里搜索內(nèi)容這些都是終端節(jié)點產(chǎn)生的數(shù)據(jù)。
下面兩幅圖,圖1是傳統(tǒng)云計算模型下的范式,最左側(cè)是服務(wù)提供者來提供數(shù)據(jù),上傳到云中心,終端客戶發(fā)送請求到云中心,云中心響應(yīng)相關(guān)請求并發(fā)送數(shù)據(jù)給終端客戶。終端客戶始終是消費者的角色。
圖2是現(xiàn)在物聯(lián)網(wǎng)快速發(fā)展下的邊緣計算范式。邊緣結(jié)點(包括智能家電、手機、平板等)產(chǎn)生數(shù)據(jù),上傳到云中心,服務(wù)提供商也產(chǎn)生數(shù)據(jù)上傳到云中心。邊緣結(jié)點發(fā)送請求到云中心,云中心返還相關(guān)數(shù)據(jù)給邊緣結(jié)點。
圖1 云計算范式
圖2 邊緣計算范式
三
什么是邊緣計算?
邊緣計算指的是在網(wǎng)絡(luò)邊緣結(jié)點來處理、分析數(shù)據(jù)。這里,我們給出邊緣結(jié)點的定義,邊緣結(jié)點指的就是在數(shù)據(jù)產(chǎn)生源頭和云中心之間任一具有計算資源和網(wǎng)絡(luò)資源的結(jié)點。
比如,手機就是人與云中心之間的邊緣結(jié)點,網(wǎng)關(guān)是智能家居和云中心之間的邊緣結(jié)點。在理想環(huán)境中,邊緣計算指的就是在數(shù)據(jù)產(chǎn)生源附近分析、處理數(shù)據(jù),沒有數(shù)據(jù)的流轉(zhuǎn),進而減少網(wǎng)絡(luò)流量和響應(yīng)時間。
四
邊緣計算的優(yōu)點
在人臉識別領(lǐng)域,響應(yīng)時間由900ms減少為169ms。
把部分計算任務(wù)從云端卸載到邊緣之后,整個系統(tǒng)對能源的消耗減少了30%-40%,數(shù)據(jù)在整合、遷移等方面可以減少20倍的時間。
五
案例研究
云卸載
在傳統(tǒng)的內(nèi)容分發(fā)網(wǎng)絡(luò)中,數(shù)據(jù)都會緩存到邊緣結(jié)點,隨著物聯(lián)網(wǎng)的發(fā)展,數(shù)據(jù)的生產(chǎn)和消費都是在邊緣結(jié)點,也就是說邊緣結(jié)點也需要承擔(dān)一定的計算任務(wù)。把云中心的計算任務(wù)卸載到邊緣結(jié)點這個過程叫做云卸載。
舉個例子,移動互聯(lián)網(wǎng)的發(fā)展,讓我們得以在移動端流暢的購物,我們的購物車以及相關(guān)操作(商品的增刪改查)都是依靠將數(shù)據(jù)上傳到云中心才能得以實現(xiàn)的。
如果將購物車的相關(guān)數(shù)據(jù)和操作都下放到邊緣結(jié)點進行,那么將會極大提高響應(yīng)速度,增強用戶體驗。通過減少延遲來提高人與系統(tǒng)的交互質(zhì)量。
視頻分析
隨著移動設(shè)備的增加,以及城市中攝像頭布控的增加,利用視頻來達成某種目的成為一種合適的手段,但是云計算這種模型已經(jīng)不適合用于這種視頻處理,因為大量數(shù)據(jù)在網(wǎng)絡(luò)中的傳輸可能會導(dǎo)致網(wǎng)絡(luò)擁塞,并且視頻數(shù)據(jù)的私密性難以得到保證。
因此,提出邊緣計算,讓云中心下放相關(guān)請求,各個邊緣結(jié)點對請求結(jié)合本地視頻數(shù)據(jù)進行處理,然后只返回相關(guān)結(jié)果給云中心,這樣既降低了網(wǎng)絡(luò)流量,也在一定程度上保證了用戶的隱私。
舉例而言,有個小孩兒在城市中丟失,那么云中心可以下放找小孩兒這個請求到各個邊緣結(jié)點,邊緣結(jié)點結(jié)合本地的數(shù)據(jù)進行處理,然后返回是否找到小孩兒這個結(jié)果。相比把所有視頻上傳到云中心,并讓云中心去解決,這種方式能夠更快的解決問題。
智能家居
物聯(lián)網(wǎng)的發(fā)展讓普通人家里的電子器件都變得活潑了起來,僅僅讓這些電子器件連上網(wǎng)絡(luò)是不夠的,我們需要更好的利用這些電子元件產(chǎn)生的數(shù)據(jù),并利用這些數(shù)據(jù)更好的為當(dāng)前家庭服務(wù)。
考慮到網(wǎng)絡(luò)帶寬和數(shù)據(jù)私密保護,我們需要這些數(shù)據(jù)最好僅能在本地流通,并直接在本地處理即可。我們需要網(wǎng)關(guān)作為邊緣結(jié)點,讓它自己消費家庭里所產(chǎn)生的數(shù)據(jù)。
同時由于數(shù)據(jù)的來源有很多(可以是來自電腦、手機、傳感器等任何智能設(shè)備),我們需要定制一個特殊的OS,以至于它能把這些抽象的數(shù)據(jù)揉和在一起并能有機的統(tǒng)一起來。
智慧城市
邊緣計算的設(shè)計初衷是為了讓數(shù)據(jù)能夠更接近數(shù)據(jù)源,因此邊緣計算在智慧城市中有以下幾方面優(yōu)勢:
海量數(shù)據(jù)處理:在一個人口眾多的大城市中,無時無刻不在產(chǎn)生著大量的數(shù)據(jù),而這些數(shù)據(jù)如果通通交由云中心來處理,那么將會導(dǎo)致巨大的網(wǎng)絡(luò)負擔(dān),資源浪費嚴重。
如果這些數(shù)據(jù)能夠就近進行處理,在數(shù)據(jù)源所在的局域網(wǎng)內(nèi)進行處理,那么網(wǎng)絡(luò)負載就會大幅度降低,數(shù)據(jù)的處理能力也會有進一步的提升。
低延遲:在大城市中,有很多服務(wù)是要求具有實時特性的,這就要求響應(yīng)速度能夠盡可能的進一步提升。
比如醫(yī)療和公共安全方面,通過邊緣計算,將減少數(shù)據(jù)在網(wǎng)絡(luò)中傳輸?shù)臅r間,簡化網(wǎng)絡(luò)結(jié)構(gòu),對于數(shù)據(jù)的分析、診斷和決策都可以交由邊緣結(jié)點來進行處理,從而提高用戶體驗。
位置感知:對基于位置的一些應(yīng)用來說,邊緣計算的性能要由于云計算。比如導(dǎo)航,終端設(shè)備可以根據(jù)自己的實時位置把相關(guān)位置信息和數(shù)據(jù)交給邊緣結(jié)點來進行處理、邊緣結(jié)點基于現(xiàn)有的數(shù)據(jù)進行判斷和決策。
整個過程中的網(wǎng)絡(luò)開銷都是最小的。用戶請求得以極快的得到響應(yīng)。
邊緣協(xié)作
由于數(shù)據(jù)隱私性問題和數(shù)據(jù)在網(wǎng)絡(luò)中傳輸?shù)某杀締栴},有一些數(shù)據(jù)是不能由云中心去處理的,但是這些數(shù)據(jù)有時候又需要多個部門協(xié)同合作才能發(fā)揮它最大的作用。
于是,我們提出了邊緣協(xié)同合作的概念,利用多個邊緣結(jié)點協(xié)同合作,創(chuàng)建一個虛擬的共享數(shù)據(jù)的視圖,利用一個預(yù)定義的公共服務(wù)接口來將這些數(shù)據(jù)進行整合,同時,通過這個數(shù)據(jù)接口,我們可以編寫應(yīng)用程序為用戶提供更復(fù)雜的服務(wù)。
舉個多個邊緣結(jié)點協(xié)同合作共贏的例子。
比如流感爆發(fā)的時候,醫(yī)院作為一個邊緣結(jié)點與藥房、醫(yī)藥公司、政府、保險行業(yè)等多個結(jié)點進行數(shù)據(jù)共享,把當(dāng)前流感的受感染人數(shù)、流感的癥狀、治療流感的成本等共享給以上邊緣結(jié)點。
藥房通過這些信息有針對性的調(diào)整自己的采購計劃,平衡倉庫的庫存;醫(yī)藥公司則能通過共享的數(shù)據(jù)得知哪些為要緊的藥品,提升該類藥品生產(chǎn)的優(yōu)先級;政府向相關(guān)地區(qū)的人們提高流感警戒級別。
此外,還可以采取進一步的行動來控制流感爆發(fā)的蔓延;保險公司根據(jù)這次流感程度的嚴峻性來調(diào)整明年該類保險的售價??傊吘壗Y(jié)點中的任何一個節(jié)點都在這次數(shù)據(jù)共享中得到了一定的利益。
六
機遇和挑戰(zhàn)
以上是邊緣計算在解決相關(guān)問題的潛力和展望,接下來會分析在實現(xiàn)邊緣計算的過程中將要面臨的機遇和挑戰(zhàn)。
編程可行性
在云計算平臺編程是非常便捷的,因為云有特定的編譯平臺,大部分程序都可以在云上跑。但是邊緣計算下的編程就會面臨一個問題,平臺異構(gòu)問題,每一個網(wǎng)絡(luò)的邊緣都是不一樣的,有可能是ios系統(tǒng),也有可能是安卓或者linux等等,不同平臺下的編程又是不同的。
因此我們提出了計算流的概念,計算流是數(shù)據(jù)傳播路徑上的函數(shù)序列/計算序列,可以通過應(yīng)用程序指定計算發(fā)生在數(shù)據(jù)傳播路徑中的哪個節(jié)點。
計算流可以幫助用戶確定應(yīng)該完成哪些功能/計算,以及在計算發(fā)生在邊緣之后如何傳播數(shù)據(jù)。通過部署計算流,可以讓計算盡可能的接近數(shù)據(jù)源。
命名
命名方案對于編程、尋址、事物識別和數(shù)據(jù)通信非常重要,但是在邊緣計算中還沒有行之有效的數(shù)據(jù)處理方式。
邊緣計算中事物的通信是多樣的,可以依靠wifi、藍牙、2.4g等通信技術(shù),因此,僅僅依靠Tcp/ip協(xié)議棧并不能滿足這些異構(gòu)的事物之間進行通信。
邊緣計算的命名方案需要處理事物的移動性,動態(tài)的網(wǎng)絡(luò)拓撲結(jié)構(gòu),隱私和安全保護,以事物的可伸縮性。
傳統(tǒng)的命名機制如DNS(域名解析服務(wù))、URI(統(tǒng)一資源標(biāo)志符)都不能很好的解決動態(tài)的邊緣網(wǎng)絡(luò)的命名問題。
目前正在提出的NDN(命名分發(fā)網(wǎng)絡(luò))解決此類問題也有一定的局限性。在一個相對較小的網(wǎng)絡(luò)環(huán)境中,我們提出一種解決方案,如圖3所示,我們描述一個事物的時間、地點以及正在做的事情,這種統(tǒng)一的命名機制使得管理變得非常容易。
當(dāng)然,當(dāng)環(huán)境上升到城市的高度的時候,這種命名機制可能就不是很合適了,還可以進行進一步的討論。
圖3 命名機制
數(shù)據(jù)抽象
在物聯(lián)網(wǎng)環(huán)境中會有大量的數(shù)據(jù)生成,并且由于物聯(lián)網(wǎng)網(wǎng)絡(luò)的異構(gòu)環(huán)境,生成的數(shù)據(jù)是各種格式的,把各種各樣的數(shù)據(jù)格式化對邊緣計算來說是一個挑戰(zhàn)。
同時,網(wǎng)絡(luò)邊緣的大部分事物只是周期性的收集數(shù)據(jù),定期把收集到的數(shù)據(jù)發(fā)送給網(wǎng)關(guān),而網(wǎng)關(guān)中的存儲是有限的,他只能存儲最新的數(shù)據(jù),因此邊緣結(jié)點的數(shù)據(jù)會被經(jīng)常刷新。
利用集成的數(shù)據(jù)表來存儲感興趣的數(shù)據(jù),表內(nèi)部的結(jié)構(gòu)可以如圖4所示,用Id、時間、名稱、數(shù)據(jù)等來表示數(shù)據(jù)。
圖4 相應(yīng)表結(jié)構(gòu)
如果篩選掉過多的原始數(shù)據(jù),將導(dǎo)致邊緣結(jié)點數(shù)據(jù)報告的不可靠,如果保留大量的原始數(shù)據(jù),那么邊緣結(jié)點的存儲又將是新的問題;同時這些數(shù)據(jù)應(yīng)該是可以被引用程序讀寫和操作的,由于物聯(lián)網(wǎng)中事物的異構(gòu)性,導(dǎo)致數(shù)據(jù)庫的讀寫和操作會存在一定的問題。
服務(wù)管理
邊緣結(jié)點的服務(wù)管理我們認為應(yīng)該有以下四個特征,包括差異化、可擴展性、隔離性和可靠性,進而保證一個高效可靠的系統(tǒng)。
差異化:隨著物聯(lián)網(wǎng)的發(fā)展,會有這種各樣的服務(wù),不同的服務(wù)應(yīng)該有差異化的優(yōu)先級。
比如,有關(guān)事物判斷和故障警報這樣的關(guān)鍵服務(wù)就應(yīng)該高于其它一般服務(wù),有關(guān)人類身體健康比如心跳檢測相關(guān)的服務(wù)就要比娛樂相關(guān)服務(wù)的優(yōu)先級要高一些。
可擴展性:物聯(lián)網(wǎng)中的物品都是動態(tài)的,向物聯(lián)網(wǎng)中添加或刪除一件物品都不是那么容易的,服務(wù)缺少或者增加一個新的結(jié)點能否適應(yīng)都是待解決的問題,這些問題可以通過對邊緣os的高擴展和靈活的設(shè)計來解決。
隔離性:所謂隔離性是指,不同的操作之間互不干擾。舉例而言,有多個應(yīng)用程序可以控制家庭里面的燈光,有關(guān)控制燈光的數(shù)據(jù)是共享的,當(dāng)有某個應(yīng)用程序不能響應(yīng)時,使用其他的應(yīng)用程序依然能夠控制燈光。
也就是說這些應(yīng)用程序之間是相互獨立的,互相并沒有影響;隔離性還要求用戶數(shù)據(jù)和第三方應(yīng)用是隔離的,也就是說應(yīng)用不應(yīng)該能夠跟蹤用戶的數(shù)據(jù)并記錄下來,為了解決該問題,應(yīng)當(dāng)添加一種全新的應(yīng)用訪問用戶數(shù)據(jù)的方式。
可靠性:可靠性可以從服務(wù)、系統(tǒng)和數(shù)據(jù)三方面來談?wù)摗?/p>
從服務(wù)方面來說,網(wǎng)絡(luò)拓撲中任意節(jié)點的丟失都有可能導(dǎo)致服務(wù)的不可用,如果邊緣系統(tǒng)能夠提前檢測到具有高風(fēng)險的節(jié)點那么就可以避免這種風(fēng)險。
較好的一種實現(xiàn)方式是使用無線傳感器網(wǎng)絡(luò)來實時監(jiān)測服務(wù)器集群。
從系統(tǒng)角度來看,邊緣操作系統(tǒng)是維護整個網(wǎng)絡(luò)拓撲的重要一部分內(nèi)容。節(jié)點之間能夠互通狀態(tài)和診斷信息。這種特征使得在系統(tǒng)層面部署故障檢測、節(jié)點替換、數(shù)據(jù)檢測等十分的方便。
從數(shù)據(jù)角度來看,可靠性指的是數(shù)據(jù)在傳感和通信方面是可靠地。邊緣網(wǎng)絡(luò)中的節(jié)點有可能會在不可靠的時候報告信息,比如當(dāng)傳感器處于電量不足的時候就極有可能導(dǎo)致傳輸?shù)臄?shù)據(jù)不可靠。為解決此類問題可能要提出新的協(xié)議來保證物聯(lián)網(wǎng)在傳輸數(shù)據(jù)時的可靠性。
私密性
現(xiàn)存的提供服務(wù)的方法是手機終端用戶的數(shù)據(jù)并上傳到云端,然后利用云端強大的處理能力去處理任務(wù),在數(shù)據(jù)上傳的過程中,數(shù)據(jù)很容易被別有用心的人收集到。
為了保證數(shù)據(jù)的私密性,我們可以從以下這些方面入手。
最優(yōu)化指標(biāo)
在邊緣計算當(dāng)中,由于節(jié)點眾多并且不同節(jié)點的處理能力是不同的,因此,在不同的節(jié)點當(dāng)中選擇合適的調(diào)度策略是非常重要的。接下來從延遲、帶寬、能耗和花費這四個方面來討論最優(yōu)化的指標(biāo)。
延遲:很明顯云中心具有強大的處理能力,但是網(wǎng)絡(luò)延遲并不單單是處理能力決定的,也會結(jié)合數(shù)據(jù)在網(wǎng)路中傳輸?shù)臅r間。
拿智慧城市距離來說,如果要尋找丟失的小孩兒信息,在本地的手機處理,然后把處理結(jié)果返回給云明顯能加快響應(yīng)速度。
當(dāng)然,這種事情也是相對而言的,我們需要放一個邏輯判斷層,來判斷把任務(wù)交給哪一個節(jié)點處理合適,如果此時手機正在打游戲或者處理其他非常重要的事情,那么手機就不是很適合處理這種任務(wù),把這種任務(wù)交給其他層次來處理會更好些。
帶寬:高帶寬傳輸數(shù)據(jù)意味著低延遲,但是高帶寬也意味著大量的資源浪費。數(shù)據(jù)在邊緣處理有兩種可能,一種是數(shù)據(jù)在邊緣完全處理結(jié)束,然后邊緣結(jié)點上傳處理結(jié)果到云端;另外一種結(jié)果是數(shù)據(jù)處理了一部分,然后剩下的一部分內(nèi)容將會交給云來處理。
以上兩種方式的任意一種,都能極大的改善網(wǎng)路帶寬的現(xiàn)狀,減少數(shù)據(jù)在網(wǎng)絡(luò)中的傳輸,進而增強用戶體驗。
能耗:對于給定的任務(wù),需要判定放在本地運算節(jié)省資源還是傳輸給其他節(jié)點計算節(jié)省資源。如果本地空閑,那么當(dāng)然在本地計算是最省資源的,如果本地正在忙碌狀態(tài),那么把計算任務(wù)分給其他節(jié)點會更合適一些。
權(quán)衡好計算消耗的能源和網(wǎng)絡(luò)傳輸消耗的能源是一件非常重要的事情。一般當(dāng)網(wǎng)絡(luò)傳輸消耗的資源遠小于在本地計算消耗的能源時,我們會考慮使用邊緣計算把計算任務(wù)卸載到其他空閑的節(jié)點上,幫助實現(xiàn)負載均衡,保證每一個結(jié)點的高性能。
花費:目前在邊緣計算上的花費包括但不限于邊緣結(jié)點的構(gòu)建和維護、新型模型的開發(fā)等。利用邊緣計算的模型,大型的服務(wù)提供商在處理相同工作的情況下能夠獲取到更大的利潤。
小結(jié):
物聯(lián)網(wǎng)的發(fā)展和云計算的推動使得邊緣計算的模型出現(xiàn)在社區(qū)之中。在邊緣結(jié)點處理數(shù)據(jù)能夠提高響應(yīng)速度,減少帶寬,保證用戶數(shù)據(jù)的私密性。
這篇文章當(dāng)中,我們提出了邊緣計算可能在以后的生活中一些相關(guān)場景的運用,也提到了邊緣計算以后發(fā)展的展望和挑戰(zhàn)。希望以后有更多的有識之士能夠關(guān)注到這一領(lǐng)域。
-
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2909文章
44557瀏覽量
372754 -
智能家居
+關(guān)注
關(guān)注
1928文章
9553瀏覽量
184923 -
云服務(wù)
+關(guān)注
關(guān)注
0文章
818瀏覽量
38908
原文標(biāo)題:什么是邊緣計算,這是我見過最深刻詳細的解讀!
文章出處:【微信號:Iotchannel,微信公眾號:聯(lián)動原素】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論