邊緣計算是在靠近物或數據源頭的網絡邊緣側,融合網絡、計算、存儲、應用核心能力的開放平臺。邊緣計算與云計算互相協同,共同助力各行各業的數字化轉型。它就近提供智能互聯服務,滿足行業在數字化變革過程中對業務實時、業務智能、數據聚合與互操作、安全與隱私保護等方面的關鍵需求。
根據國際電信聯盟電信標準分局ITU-T的研究報告,到2020年,每個人每秒將產生1.7MB的數據,IoT可穿戴設備的出貨量將達到2.37億。IDC也發布了相關預測,到2018年,50%的物聯網網絡將面臨網絡帶寬的限制,40%的數據需要在網絡邊緣側分析、處理與儲存,到2025年,這一數字將超過50%。
圖1:邊緣計算與云計算的關系
一、邊緣計算的巨大價值
美國部署了3000余萬個監控攝像頭,每周生成超過40億小時的海量視頻數據。物聯網領域擁有海量的終端設備,如果這些設備產生的數據聚在一起,會是個天文數字。
海量數據的分析與儲存對網絡帶寬提出了巨大的挑戰,而邊緣計算的誕生,就是為了解決這一問題。
圖2:邊緣計算的特征
1).分布式和低延遲計算
云計算往往并不是最佳策略,計算需要在更加靠近數據源的地方執行。這個優點可以擴展到任何基于Web的應用程序上:包括 Foursqure和Google Now在內的APP能更快的做出響應,所以在移動用戶中變得越來越受歡迎。這說明在更靠近用戶的邊緣節點上,邊緣計算可以用于改進服務。
圖3:數據傳輸需要時間和代價,邊緣計算提供高效、低成本的數據處理
許多數據流由邊緣設備生成,但是通過“遠處”的云計算處理和分析,不可能做出實時決策。例如使用可穿戴式攝像頭的視覺服務,響應時間需要在25ms至50ms之間,使用云計算會造成嚴重的延遲;再比如工業系統檢測、控制、執行的實時性高,部分場景實時性要求在10ms以內,如果數據分析和控制邏輯全部在云端實現,則難以滿足業務要求;還有那些會生成龐大數據流的多媒體應用,如視頻或是基于云平臺的網絡游戲,依賴云計算也會為玩家造成類似于等待時間過長的問題,無法滿足用戶的需求。
作為云計算的有益補充,可以利用邊緣節點(例如,路由器或離邊緣設備最近的基站),用以減少網絡等待時間。
2).超越終端設備的資源限制
與數據中心的服務器相比,用戶終端(例如智能手機)的硬件條件相對受限。這些終端設備以文本、音頻、視頻、手勢或運動的形式獲得數據輸入,但由于中間件和硬件的限制,終端設備無法執行復雜的分析,而且執行過程也極為耗電。因此,通常需要將數據發送到云端,進行處理和運算,然后再把有意義的信息通過中繼返回終端。
然而,并非來自終端設備的所有數據都需要由云計算執行,數據可以利用適合數據管理任務的空閑計算資源,在邊緣節點處過濾或者分析。
3).可持續的能源消耗
大量研究顯示,云計算會消耗龐大的能源,未來十年數據中心所消耗的能源量可能是如今消耗量的3倍。隨著越來越多的應用轉移到云,能量需求會日益增長,甚至無法滿足。因此,采用能量效率最大化的計算策略顯得尤為迫切。
一些嵌入式小型設備的基礎信息采集處理完全可以在端完成,即手機傳感器把數據傳送到網關后,就通過邊緣計算進行數據過濾和處理,沒必要每條原始數據都傳送到云,這省去了大量的能源成本。
4).應對數據爆炸和網絡流量壓力
邊緣設備的數量正在超速增長——到2018年,世界上三分之一的人口將擁有智能手機或者可穿戴設備,到2020年,這些設備將生成43萬億GB的數據。處理這些數據需要進一步擴展數據中心,這再次引起了人們對網絡流量壓力的廣泛關注。
通過在邊緣設備上執行數據分析,可有效應對數據爆炸,減輕網絡的流量壓力。邊緣計算能夠縮短設備的響應時間,減少從設備到云數據中心的數據流量,以便在網絡中更有效的分配資源。
5).智能計算
不僅是消費級的物聯網終端,邊緣計算還將在工業應用中發揮重要作用。計算可以分層執行,利用網絡遠端的資源完成。例如,典型的生產流水線可以過濾設備上生成的數據,在傳輸數據的邊緣節點上執行部分分析工作,之后再通過云端執行更加復雜的計算任務。邊緣節點可以通過分擔云計算的部分任務,增強數據中心的計算能力。
業務流程優化、運維自動化與業務創新驅動業務走向智能,邊緣側智能能夠帶來顯著的效率提升與成本優勢。事實上,對于從事工業自動化工作的人而言,邊緣計算并不陌生。比如,在目前普遍采用的基于PLC、DCS、工控機和工業網絡的控制系統中,位于底層、嵌于設備中的計算資源,或多或少都是邊緣計算的資源。
圖4:霍尼韋爾公司Honeywell將工業領域劃分為6層架構
目前規模以上冶金企業,其信息化已經做得頗具成效,但缺少的恰恰是末端智能。冶金方面的數據經常會出現完整性和一致性的問題,俗稱“臟”數據。解決不好這方面的問題,會給能源管理和智能管理環節造成很大的困擾。邊緣計算在其中發揮著重要作用,成為工業物聯網技術的有效補充。
圖5:推進邊緣計算需要打破管理(IT)與控制(OT)的分層模式
二、邊緣計算所面臨的挑戰
邊緣計算仍處于起步階段,當前的云計算服務(如Amazon Web Service,Microsoft Azure和Google App Engine)可以支持數據密集型的應用程序,但在網絡邊緣進行實時的數據處理仍是一個有待開拓的領域。
此外,若想更好的在邊緣節點上部署應用程序的工作負載,需要考慮以下幾個方面:
部署策略:如何部署工作負載
連接策略:何時使用邊緣節點
異構性:如何處理不同類型的節點
圖6:邊緣計算面臨的機遇與挑戰
為了實現邊緣計算,我們認為在硬件、中間件和軟件層面,有以下5個挑戰需要解決。
挑戰1:邊緣節點上的通用計算能力
理論上,可以在位于邊緣設備和云平臺之間的某幾個節點上完成邊緣計算,包括接入點、基站、網關、業務節點、路由器、交換機等。例如,基站可以根據工作負載能力,執行數字信號處理(DSP)。但是在實踐中,基站可能并不適合處理分析工作,因為DSP并不是為通用計算設計的。此外,這些節點是否可以執行除了現有工作之外的計算還不太清楚。
由CAVIUM提供的OCTEON Fusion? Family是一個小型“芯片上基站”單元,可擴展從6個到14個的內核,以支持32到300+的用戶。這種基站可在非高峰時間使用多個計算核心的運算能力。
許多供應商也已經邁出了使用軟件解決方案實現邊緣計算的第一步。例如,諾基亞針對移動邊緣計算(MEC)的軟件解決方案旨在為基站站點提供邊緣計算能力。同樣,思科的IOx為其集成的服務路由器提供了一個邊緣計算環境。這些解決方案應用于特定硬件,因此不適合部署在異構環境中。
軟件解決方案面臨的一個挑戰是如何開發跨越不同環境的可移植的解決方案。某些公司正在研究升級邊緣節點,以支持通用計算需求。例如,可以升級無線家庭路由器以支持額外的計算任務。英特爾的Smart Cell Platform使用虛擬化技術,支持額外的計算任務。通用CPU替換專用DSP提供了另一種解決方案,但卻需要巨大的投資。
圖7:英特爾的物聯網網站www.Intel.com/IoT
挑戰2:發現邊緣節點
到2020年將有500億的終端和設備聯網,除了邊緣設備與終端聯網最大的“異構”特征之外,產品生命周期越來越短、個性化需求越來越高、全生命周期管理和服務化的趨勢越來越明顯,這些新趨勢都需要邊緣計算提供強大的技術支撐。
如何在分布式計算環境中發現資源和服務是一個有待拓展的領域。為了充分利用網絡的邊緣設備,需要建立某種發現機制,找到可以分散式部署的適當節點。因為可用設備的數量龐大,這些機制不能依靠人工手動。此外,還需要使用多種異構設備滿足最新的計算需求,比如大規模的機器學習任務。
這些機制必須在不增加等待時間或損害用戶體驗的前提下,實現不同層次和等級的計算工作流中無縫集成,原有的基于云計算的機制在邊緣計算領域不再適用。
挑戰3:分區和拆分任務
對于邊緣計算來說,最大的難點在于如何動態、大規模地部署運算和存儲能力以及云端和設備端如何高效協同、無縫對接。
不斷發展的分布式計算已經催生了許多技術用來促進在多個地理位置分區執行任務。任務分區通常在編程語言或管理工具中明確表示。
然而,利用邊緣節點來實現分區計算不僅僅帶來了有效分割計算任務的挑戰,對于如何能在不需要明確定義邊緣節點的能力或位置,以自動化的方式進行計算的問題上,也遇到了瓶頸。因此,需要一種新型的調度方式,以便將分割的任務部署到各個邊緣節點上。
挑戰4:高水準的服務質量(QoS)和服務體驗(QoE)
另一個挑戰是需要確保邊緣節點實現高吞吐量,并且在承接額外計算工作量時運行可靠。例如,當基站過載時,可能影響連接到基站的其他邊緣設備。
因此需要對邊緣節點的峰值時間全面了解,以便可以用靈活的方式來分割和調度任務。復雜的算法如何在云端和邊緣設備之間合理分解和整合,需要一個對云管端三者都有控制力的技術來實現。
挑戰5:開放和安全的使用邊緣節點
安全橫跨云計算和邊緣計算,需要實施端到端的防護。由于更貼近萬物互聯的設備,網絡邊緣側訪問控制與威脅防護的廣度和難度因此大幅提升。邊緣側安全主要包含設備安全、網絡安全、數據安全與應用安全。此外,關鍵數據的完整性、保密性是安全領域需要重點關注的內容。
如果把終端設備(例如交換機、路由器和基站)當作可共享接入的邊緣節點,則需要解決許多問題:
首先,需要定義邊緣設備使用者和擁有者相關聯的風險。
其次,當設備用于邊緣計算節點時,設備的原有的功能不能被損害。
第三,邊緣節點上的多重用戶都需要將安全性作為首要關注指標。
第四,需要向邊緣節點的用戶保證最低服務水平。
最后,需要考慮工作負載、計算能力、數據位置和遷移、維護成本和能源消耗,以便建立合適的定價模型。
三、邊緣計算的潛在機會
邊緣計算仍處于起步階段,有可能為更高效的分布式計算鋪平道路。盡管在實現邊緣計算時出現了不少挑戰,但邊緣計算將會催生更多的發展機遇,在此我們明確了5個潛在機會:
機會1:標準、基準和市場
統一數據連接和數據聚合是業務智能的基礎,面對當前工業現場存在的多樣化與異構的技術和標準,離不開跨廠商、跨領域的數據集成與互操作。網絡邊緣側的本地計算服務無疑會在異構環境中迎來IT廠商、IT方案商以及開發者集成融合服務的挑戰,標準化亟待形成。
許多組織正在定義各種邊緣計算標準,例如美國國家標準和技術協會(NIST)、IEEE標準協會、國際標準化組織(ISO)、云計算標準客戶委員會(CSCC)和國際電信聯盟(ITU)等。只有當邊緣節點的性能可以根據廣泛認可的度量指標可靠的進行基準測試時,才能形成標準。
機會2:架構和語言
隨著支持通用計算的邊緣節點不斷增加,開發框架和工具包的需求也會隨之增長。邊緣分析與現有流程不同,由于邊緣分析將在用戶驅動的應用程序中實現,現有框架可能不適合表達邊緣分析的工作流。
編程模型需要利用邊緣節點支持任務和數據的并行,并且同時在多個層級的硬件上執行計算。編程語言需要考慮工作流中硬件的異構性和各種資源的計算能力。這比云計算的現有模型更加復雜。
機會3:輕量級庫和算法
與大型服務器不同,由于硬件限制,邊緣節點不支持大型軟件。例如,Intel T3K并發雙模SoC的小型基站具有4核ARM的CPU和有限內存,不足以執行復雜的數據處理工作。再比如Apache Spark需要至少8核的CPU和8 GB的內存以獲得良好的性能。邊緣分析需要輕量級算法,可以進行合理的機器學習或數據處理任務。
例如,Apache Quarks是一種輕量級庫,可以在小型邊緣設備(如智能手機)上使用,以實現實時數據分析。但是Quarks支持的基本數據處理,例如過濾和窗口聚合,不足以滿足高級分析任務。消耗更少內存和使用更小磁盤的機器學習資源庫有利于實現邊緣節點的數據分析。TensorFlow是另一個支持深度學習算法并支持異構分布式系統的示例框架,但其邊緣分析的潛力仍有待探索。
機會4:微型操作系統和虛擬化
基于微型操作系統或微型內核的研究可以解決在異構邊緣節點上部署應用的挑戰。
圖8:開放OS簡化智能應用的開發和部署
有研究表明,跨越多個虛擬設備復用設備硬件的移動容器可以提供與本地硬件接近的性能。容器技術(如Docker)正在成熟,并且能夠在異構平臺上快速部署應用程序。
圖9:ARM可以提供全平臺、全過程、全要素的設備管理能力
機會5:產學研合作
邊緣計算為產業界和學術界提供了獨特的發展機會。邊緣計算領域的研究可以由行業合作伙伴(例如移動運營商和開發人員、軟件工具開發商和云服務提供商等)以及感興趣的學術合作伙伴共同驅動,以實現雙方的共同利益。