全浩宇,張青苗,趙軍輝
(華東交通大學 信息工程學院,江西 南昌330013)
近幾年來,隨著移動互聯(lián)網(wǎng)技術的發(fā)展和5G網(wǎng)絡的普及,互聯(lián)網(wǎng)中來自移動端的流量呈現(xiàn)出爆炸式的增長,并逐漸占據(jù)了互聯(lián)網(wǎng)的主導地位,而移動設備也成為了人們?nèi)粘蕵?、社交的主要載體,在日常生活中扮演著重要的角色。據(jù)統(tǒng)計,截止2021年12月,我國網(wǎng)民使用手機上網(wǎng)比例達99.7%,遠超使用臺式機、筆記本電腦和平板電腦上網(wǎng)的比例[1]。然而隨著人們需求的不斷提升,移動設備的計算、存儲能力已經(jīng)無法滿足現(xiàn)有的計算密集型和時延敏感型任務,例如智慧城市、自動駕駛等。此外,電池技術也沒有取得令人滿意的突破,這也是當下移動通信行業(yè)發(fā)展的瓶頸之一[2]。為了應對日益增長的業(yè)務需求,研究人員開始將云計算的計算模式引入移動通信領域,移動云計算(Mobile Cloud Computing,MCC)應運而生[3]。
MCC是指通過移動網(wǎng)絡,將云計算中心的計算、存儲資源分配給移動設備的計算方式,是移動通信和云計算相結合的一類應用。MCC的優(yōu)勢在于:移動設備可以通過連接云服務器,訪問遠程云計算中心強大的計算、存儲資源,并將某些待處理的任務遷移至云服務器上運行。這樣做的好處是可以大幅降低移動設備自身的計算、存儲和能源開銷,只需要負責數(shù)據(jù)的傳輸和結果的接收。這樣不僅可以很好地彌補移動設備在計算、存儲能力和電池容量等方面的天然弱勢,還可以讓移動設備運行更多的計算密集型應用[4-5]。然而,MCC的計算模式需要將任務所需的數(shù)據(jù)通過無線網(wǎng)絡傳輸?shù)竭h程云服務器上,這一方面會造成較高的服務時延;另一方面,從網(wǎng)絡拓撲的角度來看,如此龐大的數(shù)據(jù)流也會給核心網(wǎng)帶來較大的負載,從而影響網(wǎng)絡整體的性能[6],并降低用戶隱私數(shù)據(jù)的安全性。
為了解決上述問題,研究人員提出了首個將計算、存儲資源靠近移動設備的概念Cloudlet[7]。Cloudlet的原理是將具有強大計算、存儲能力的服務器放置在移動網(wǎng)絡的各個關鍵節(jié)點,從而為周邊的移動設備提供高效的計算和存儲服務。相較于限制性較大的Cloudlet,思科于2012年提出的霧計算概念更加廣為人知,甚至被視為物聯(lián)網(wǎng)和大數(shù)據(jù)應用的關鍵技術[8-9]。霧計算的典型架構是由云層、霧層和設備層構成的3層體系。其中霧層可以根據(jù)實時需求拓展為多層,而霧節(jié)點可以是小型基站、WiFi接入點甚至用戶終端。通過霧計算,可以有效降低移動用戶使用云計算時的數(shù)據(jù)傳輸時延,并應用在更為廣泛的場景中。
由于Cloudlet和霧計算模式的計算、存儲資源都不是天然集成在移動網(wǎng)絡架構中的,因此在網(wǎng)絡拓撲比較復雜的情況下,用戶的服務質量(Quality of Service,QoS)仍難以保證。為了解決移動用戶的云計算需求問題,2014年移動邊緣計算(Mobile Edge Computing,MEC)應運而生[10]。相較于傳統(tǒng)的網(wǎng)絡架構和模式,MEC能有效改善傳統(tǒng)網(wǎng)絡架構和模式下時延高、效率低、網(wǎng)絡負載大等諸多問題。也正是這些優(yōu)勢,使得 MEC 被認為是未來5G的關鍵技術[11-14]。
本文對近年來有關MEC技術的文獻進行了廣泛調(diào)研,從不同角度分析了MEC與傳統(tǒng)云計算技術的差異,重點敘述了MEC中的任務遷移技術,并對其研究現(xiàn)狀進行了分類與總結。最后,對未來MEC與人工智能技術相融合做出了展望。
MEC是一種新型的計算范式,更是新一代智慧城市、智慧交通中的重要部分[15-17],其應用場景如圖1所示。移動設備通過拓展來自邊緣服務器的計算、存儲資源,能顯著優(yōu)化用戶的日常體驗,并提升設備續(xù)航。
圖1 移動邊緣計算應用場景
當前MEC的優(yōu)勢主要集中在以下幾個方面:
① 低時延:MEC通過將計算和存儲能力“下沉”到網(wǎng)絡邊緣,拉近了與用戶之間的距離,如圖2所示。用戶請求由部署在本地的MEC服務器直接處理并響應用戶,從而有效降低通信時延。MEC的低時延特性在自動駕駛[18]等時延敏感型應用中表現(xiàn)尤為明顯。
圖2 移動邊緣計算網(wǎng)絡結構
② 大容量:通過部署在移動網(wǎng)絡邊緣的MEC服務器對流量數(shù)據(jù)進行就近卸載,可以有效降低傳輸網(wǎng)的帶寬負載,并減少發(fā)生鏈路擁塞和故障的可能性,從而改善系統(tǒng)容量。
③ 低功率:對于設備而言,能量消耗主要包括任務計算耗能和數(shù)據(jù)傳輸耗能兩部分。據(jù)不完全統(tǒng)計,我國僅云計算中心所消耗的電能就已超過匈牙利和希臘兩國的用電量總和[19]。由于邊緣服務器自身具有一定的計算和存儲資源,因此能夠在本地進行部分任務的計算,從而有效降低數(shù)據(jù)傳輸能耗。另一方面,隨著資源緩存技術的發(fā)展,存儲資源相較于傳輸資源的成本逐漸降低。MEC是一種以存儲換取帶寬的方式,通過內(nèi)容的本地存儲可以極大減少遠程傳輸?shù)谋匾裕瑥亩档驮O備的數(shù)據(jù)傳輸能耗。
④ 重隱私:當用戶使用社交網(wǎng)絡和自動駕駛等隱私服務時,用戶的地理位置等隱私數(shù)據(jù)通常會被上傳至云服務器進行處理,這會增加用戶隱私數(shù)據(jù)泄露的風險。MEC通過使用近用戶端的邊緣服務器對數(shù)據(jù)進行直接處理,能有效縮短數(shù)據(jù)流通路徑,降低隱私數(shù)據(jù)泄露風險[20]。
MCC與MEC技術對比如表1所示。盡管MEC技術理論上能有效提高用戶體驗,但是在實際應用中還是會面臨諸多問題。例如移動設備的高動態(tài)性就對MEC的任務遷移與調(diào)度提出了很高的要求,同時用戶分布的不均勻特性也對邊緣服務器的資源分配帶來了巨大挑戰(zhàn)[21]。因此,一個好的任務處理方案就顯得非常重要[22]。
表1 移動云計算與移動邊緣計算技術對比
在資源受限的移動設備上運行計算密集型任務會消耗大量的能量,而且運行效率往往也難以滿足應用的時延等需求,這對安全性要求極高的應用,如自動駕駛,是難以接受的。為了解決此類問題,研究人員們提出了任務遷移概念。MEC通過將移動設備的任務遷移到附近的邊緣服務器上執(zhí)行,可以有效降低移動設備的電量開銷,同時借助邊緣服務器強大的計算能力,可以顯著提升任務的處理速度,以達到縮短服務時延的目的[23]。
移動邊緣計算的任務遷移主要包括環(huán)境感知、任務劃分、遷移決策、數(shù)據(jù)傳輸、任務執(zhí)行、結果返回六大步驟[24],其中環(huán)境感知、任務劃分和遷移決策是整個遷移流程中最為核心的步驟。具體的任務遷移流程[25]如圖3所示。
圖3 移動邊緣計算的遷移流程
2.1.1 環(huán)境感知
環(huán)境感知發(fā)生在任務遷移的準備階段,用于為后續(xù)的遷移方案提供參考信息。當任務需要進行遷移時,首先需要對本地運行環(huán)境和外部運行環(huán)境進行感知,主要包括移動設備自身以及所有MEC邊緣服務器的計算、存儲和通信資源,這些信息將對后面的遷移流程起到?jīng)Q定性的作用。
2.1.2 任務劃分
任務劃分所解決的是在什么時間,對什么任務進行遷移的問題,根據(jù)其關注的指標,主要可以分為以下幾類:
按需求劃分需求劃分主要是按照任務的計算需求將任務劃分成時延敏感型任務和時延不敏感型任務。其中時延敏感型任務通常要求較低的服務時延,因此在資源充足的情況下將優(yōu)先在本地計算;而時延不敏感型任務則傾向于在滿足最大時延要求的情況下遷移到云上進行計算。
按粒度劃分已有的粒度劃分主要分為細粒度和粗粒度劃分[26]。細粒度劃分的對象主要是方法、類、對象、線程級的,而粗粒度劃分一般都是應用、虛擬機級的。其中細粒度劃分雖然可以最大程度優(yōu)化系統(tǒng)的資源分配情況,但是存在隨著劃分任務數(shù)量的增加,解算法復雜度呈現(xiàn)出指數(shù)增長。因此在實際應用中,通常是將任務采用粗粒度劃分的方式,以虛擬機的形式部署在邊緣服務器上。
2.1.3 遷移決策
遷移決策是任務遷移流程最核心的環(huán)節(jié),主要功能是解決任務是否遷移、往何處遷移、通過何種方式遷移等問題。具體來講,這個環(huán)節(jié)會根據(jù)任務對環(huán)境的感知和任務劃分,通過合適的決策算法,選擇出最優(yōu)的遷移目標與遷移路線。此環(huán)節(jié)在整個任務遷移流程中起著至關重要的作用,也是行業(yè)內(nèi)的研究熱點。
移動設備的任務遷移和調(diào)度是MEC的一個重要內(nèi)容,可以使移動設備在有限的續(xù)航時間內(nèi)體驗更好的服務。通過向移動設備提供部署在網(wǎng)絡邊緣的計算、存儲資源,能在保證服務時延的同時,加快計算速度,節(jié)約設備能源,提高用戶的QoS。任務遷移的核心調(diào)度是通過遷移方案來控制的,主要取決于以下幾個指標[27-28]。
2.2.1 服務時延
在對移動設備任務進行遷移的過程中,遷移方案首要的準則就是需要保證遷移后的服務時延在用戶期望時延閾值內(nèi)。由于大多數(shù)應用中任務處理后回傳的結果數(shù)據(jù)量很小,因此服務時延主要由任務數(shù)據(jù)傳輸時延和任務處理時延決定。對于這些時間,可以表示為:
(1)
式中,C為遷移任務的計算規(guī)模,fm為所選擇MEC邊緣服務器的計算能力,Ds為運行任務所需的數(shù)據(jù)大小,Ru為移動設備和邊緣服務器之間上傳鏈路的傳輸速率。
若任務的回傳數(shù)據(jù)量較大,如視頻資源請求等,則需考慮回傳時延,此時服務時延表示為:
(2)
式中,Dr為運行任務結果的數(shù)據(jù)大小,Rd為移動設備和邊緣服務器之間下載鏈路的傳輸速率。
2.2.2 能源開銷
任務在進行邊緣計算的過程中,不僅會帶來相應的服務時延,也會給移動設備自身和邊緣服務器帶來一定的電量消耗。對于移動設備而言,任務遷移過程中主要的能源消耗為傳輸任務所需的能耗,可以表示為:
(3)
式中,Pu為移動設備發(fā)送信號的功率,只存在于任務遷移的數(shù)據(jù)上傳階段。Pc為移動設備固有的電路功率,存在于整個任務遷移的過程中[29]。而對于邊緣服務器而言,任務遷移過程中主要的能源開銷為CPU計算任務所帶來的計算能耗,一般表示為:
(4)
式中,κ為CPU的有效電容常數(shù),一般取10-27。
2.2.3 系統(tǒng)負載
移動設備在進行任務遷移的同時不僅要考慮任務的時延閾值,也需要考慮MEC系統(tǒng)的任務負載情況。所選中的遷移方案要能在滿足用戶QoS的同時,盡可能地實現(xiàn)MEC系統(tǒng)處于負載均衡狀態(tài),以此來保障整個MEC系統(tǒng)的穩(wěn)定性,并提高MEC系統(tǒng)的可靠性和容量。目前,運營商通常是將邊緣服務器劃分成虛擬機(Virtual Manufacturing,VM)的形式來實現(xiàn)多任務資源分配和處理的,對于每一個需要遷移到邊緣服務器上的應用,服務器都會為其生成一個對應的VM用于處理該任務[30]。邊緣服務器的總負載可以直接根據(jù)其部署VM占據(jù)的資源總和來計算。
假設邊緣服務器PMj上部署的虛擬機數(shù)量為n,虛擬機VMi占用的計算資源為ci,則該邊緣服務器PMj上的總資源占用Oj可以表示為:
(5)
式中,ri用于判斷虛擬機VMi是否處于運行狀態(tài),可以表示為:
(6)
假設邊緣服務器PMj的總資源量為Tj,則有邊緣服務器PMj的使用率為:
(7)
(8)
而MEC的總體負載情況μ通常使用邊緣服務器的負載均方差來表示:
(9)
實際研究中,任務是否能進行遷移是由MEC系統(tǒng)為遷移所付出的開銷相較于任務遷移前后的用戶QoS提升是否能被接受所決定的。具體來說,對于時延不敏感任務,例如文件資源請求等任務,任務遷移所帶來用戶的QoS提升不足以彌補遷移過程中系統(tǒng)的開銷,所以此時遷移方案應傾向于保持當前狀態(tài)。而對于時延敏感任務,例如自動駕駛相關的計算,通過任務遷移降低時延帶來的好處,遠高于遷移過程中的開銷,因此遷移方案傾向于遷移該任務。
綜上所述,常見的任務遷移方案按照其優(yōu)化指標通??梢苑譃閮深怺31]:最小化時延和最小化開銷,這兩類的區(qū)別如表2所示。
表2 任務遷移方案的兩類優(yōu)化準則
2.3.1 最小化開銷
文獻[32]解決了兼顧任務計算和文件傳輸能量消耗的優(yōu)化問題,為了最小化卸載系統(tǒng)的能量消耗,并考慮5G異構網(wǎng)絡的特性[33],作者提出了一種高效節(jié)能的任務遷移(EECO)方案。文獻[34]提出了一種多任務場景下的遷移決策方案,作者通過將任務建模成一個具有約束的馬爾可夫問題,并將時間劃分成均勻的時間片,旨在滿足任務時延需求的同時最小化系統(tǒng)的開銷。文獻[35]則考慮多蜂窩小區(qū)的場景,提出賦予小型蜂窩基站增強云能力的場景,并在滿足最大時延要求的基礎上,提出了一種基于凸優(yōu)化的分布式迭代算法來對通信資源和計算資源進行聯(lián)合優(yōu)化。實驗結果表明,這種方案聯(lián)合優(yōu)化的結果顯著高于對通信資源或者計算資源單獨優(yōu)化的結果。文獻[36]則重點關注聯(lián)合優(yōu)化所有任務的卸載決策和計算、通信資源的分配,旨在使所有用戶的能量成本、計算成本和時延的加權總和最小。作者先將問題表述為一個非凸二次約束的二次規(guī)劃問題,并由此提出了一種由半定松弛、交替優(yōu)化和順序優(yōu)化組成的高效三步算法。結果證明,此方法總是能計算一個局部最優(yōu)解,并在合適的參數(shù)設置下給出接近最優(yōu)的性能。
2.3.2 最小化時延
文獻[37]提出采用馬爾可夫決策過程來處理計算任務調(diào)度的方案,通過分析每個任務的平均時延和設備功耗,對功率約束條件下的時延進行建模,并提出了一種高效的一維搜索算法來尋找最優(yōu)的任務調(diào)度策略。實驗結果表明,所提出的方案在任務平均時延方面相較于貪婪算法等方案都有著更好的表現(xiàn)。文獻[38]提出一種基于在線Lyapunov優(yōu)化的動態(tài)任務遷移算法,實現(xiàn)了在任何時間節(jié)點,都無需計算通信資源和任務計算請求的統(tǒng)計信息,就能求得確定性優(yōu)化問題的最優(yōu)解。文獻[39]針對移動邊緣云計算中多個移動設備用戶的任務遷移決策問題,提出一種博弈論方法,并推導出了計算收斂時間上界的公式。仿真結果表明,該方案具有較好的卸載性能,而且隨著系統(tǒng)內(nèi)用戶數(shù)量的增加,算法也具有更好的適應性。
MEC作為未來移動通信系統(tǒng)中重要的功能,吸引了國內(nèi)外大量研究人員的關注。但目前的MEC仍然是一項不完善的技術,有著較多的問題需要解決,其中的挑戰(zhàn)主要來自以下幾點:
① 與傳統(tǒng)邊緣計算相比,MEC中用戶的分布具有高動態(tài)的特性,這就要求MEC系統(tǒng)在任務遷移的實時決策上有較好的性能表現(xiàn)[40];
② 在實際應用場景中,用戶的分布往往隨著時間,在不同位置呈現(xiàn)出錯峰聚集的特性,這就對邊緣服務器部署提出了較高要求;
③ 不同的任務在到來時間、時延閾值以及對不同類型資源的要求上具有較大差異,這就對邊緣服務器的資源分配方案提出了巨大的挑戰(zhàn)。
隨著近些年人工智能領域的崛起,行業(yè)內(nèi)已經(jīng)有越來越多的研究人員開始嘗試將人工智能技術與MEC技術結合,希望通過人工智能來解決MEC所面臨的問題。文獻[27]提出使用非支配排序遺傳算法,通過合理構建MEC的系統(tǒng)資源模型,并根據(jù)多目標決策準則,來實現(xiàn)在保證任務執(zhí)行時間的同時,對邊緣服務器進行負載均衡優(yōu)化。
文獻[41]提出了一種基于多智能體算法MADDPG的任務卸載方案,通過建立邊緣系統(tǒng)主導下的聯(lián)合任務時延約束和多維資源管理模型,實現(xiàn)了以任務執(zhí)行總時間最小為目標的多任務多目標的聯(lián)合優(yōu)化。文獻[42]中通過量化遠程通信開銷與VM遷移開銷,構建了VM遷移開銷模型,并利用DQN算法實現(xiàn)了VM遷移決策模型的訓練。
對于單用戶的MEC系統(tǒng)而言,用戶在遷移前后都能獨占MEC服務器的全部計算資源,因此不用考慮來自其他用戶的通信、計算、存儲資源競爭,可以很方便地得到遷移決策。但隨著車聯(lián)網(wǎng)和物聯(lián)網(wǎng)的發(fā)展,越來越多的設備將接入MEC系統(tǒng),這就對MEC系統(tǒng)提出了非常高的要求。MEC系統(tǒng)需要靈活利用有限的通信、計算、存儲資源來滿足多用戶場景下的多任務并行處理。本文就融合了人工智能算法DDPG的MEC動態(tài)任務遷移機制做了簡單仿真,具體仿真參數(shù)如表3所示。圖4為融合了人工智能算法的MEC系統(tǒng)性能表現(xiàn),其中圖4(a)為訓練過程中系統(tǒng)容量相較于基線的表現(xiàn),圖4(b)為訓練過程中任務服務時延相較于基線的表現(xiàn)。各項實驗結果表明,融合了人工智能技術的MEC系統(tǒng)能有效降低任務的服務時延并提升系統(tǒng)容量,相信這也是未來MEC研究領域的一個重要方向。
表3 仿真參數(shù)
(a) 系統(tǒng)容量表現(xiàn)
隨著移動互聯(lián)網(wǎng)領域的迅猛發(fā)展,越來越多的計算密集型應用出現(xiàn)在了人們的日常生活中。受限于移動設備資源的匱乏,MEC技術便成為了解決當下困境的突破口。然而,復雜的移動場景又為MEC系統(tǒng)提出了各種新挑戰(zhàn)。本文對MEC技術的研究進行了全面綜述,首先回顧了MEC概念提出之前,行業(yè)內(nèi)的其他移動云計算技術;然后分析了傳統(tǒng)移動云計算技術在當前環(huán)境中存在的不足,并由此引出了MEC的概念。介紹了MEC在當前環(huán)境下的優(yōu)勢與MEC任務遷移的相關技術與指標;最后對最新的研究做了總結,并進一步對MEC與人工智能相融合的發(fā)展方向做出了展望和仿真。