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