張強(qiáng)++張宏莉
摘要:移動(dòng)設(shè)備自身固有的一些局限性,其中包括計(jì)算能力有限,存儲(chǔ)空間有限,環(huán)境感知力有限以及電量有限等局限性,使得許多應(yīng)用程序無法在移動(dòng)設(shè)備上高效的運(yùn)行。研究人員提出移動(dòng)云計(jì)算技術(shù)對(duì)移動(dòng)設(shè)備進(jìn)行資源擴(kuò)展。移動(dòng)云計(jì)算主要通過任務(wù)卸載來增強(qiáng)移動(dòng)設(shè)備的數(shù)據(jù)處理能力以及減少手機(jī)能耗。移動(dòng)云計(jì)算中的任務(wù)卸載是指把移動(dòng)設(shè)備的任務(wù)發(fā)送到云平臺(tái),然后由云平臺(tái)處理,最后云平臺(tái)向用戶返回任務(wù)結(jié)果。本文首先對(duì)移動(dòng)云計(jì)算中任務(wù)卸載策略和任務(wù)卸載性能的研究現(xiàn)狀進(jìn)行介紹,然后分析現(xiàn)有技術(shù)的局限性,最后討論未來熱點(diǎn)的研究方向。
關(guān)鍵詞:移動(dòng)云計(jì)算; 任務(wù)卸載; 卸載策略; 卸載性能
中圖分類號(hào): TP393
文獻(xiàn)標(biāo)志碼: A文章編號(hào): [HTSS]2095-2163(2016)06-0001-05[KH*1][HK][HT5SS]
0引言
云計(jì)算作為一種高效,按需的服務(wù)技術(shù)不僅改變了傳統(tǒng)的計(jì)算模型,而且極大地促進(jìn)了社會(huì)經(jīng)濟(jì)的發(fā)展和人們生活水平的提高。云服務(wù)提供者通過使用虛擬化、網(wǎng)絡(luò)存儲(chǔ)、分布式計(jì)算等多種技術(shù)把存儲(chǔ)、服務(wù)器、應(yīng)用軟件等資源轉(zhuǎn)化為資源共享池,用戶只需要與云服務(wù)提供者經(jīng)過簡(jiǎn)單的交互就可以實(shí)現(xiàn)資源的訪問和利用[1-2]。隨著科技的快速進(jìn)步和人們生活水平的顯著提高,手機(jī)變成了人們最常使用的移動(dòng)通信終端。國際電信聯(lián)盟在2012年1月份的報(bào)告顯示,全球手機(jī)用戶達(dá)到59億,移動(dòng)寬帶用戶約為12億,而在2015年年底的報(bào)告顯示,全球手機(jī)用戶數(shù)已達(dá)到71億,移動(dòng)寬帶用戶約為35億,從這些統(tǒng)計(jì)數(shù)據(jù)可以看出移動(dòng)互聯(lián)網(wǎng)業(yè)務(wù)正以飛快的速度迅猛增長。同時(shí),以蘋果公司的iOS系統(tǒng)和Google公司的Android系統(tǒng)為代表的移動(dòng)操作系統(tǒng)為移動(dòng)應(yīng)用程序的高效運(yùn)行提供了平臺(tái)支持。然而,由于手機(jī)自身固有的一些局限性,包括電池電量有限、CPU處理能力有限、存儲(chǔ)空間有限、環(huán)境感知能力有限等現(xiàn)實(shí)技術(shù)特點(diǎn),使得大量的應(yīng)用程序無法持續(xù)、流暢、高效地在手機(jī)端獲得運(yùn)行[3-4]。為了解決上述問題,研究人員提出了移動(dòng)云計(jì)算技術(shù),移動(dòng)云計(jì)算主要通過任務(wù)卸載來增強(qiáng)移動(dòng)設(shè)備的處理能力以及降低電量受限設(shè)備的能耗[5-6]。移動(dòng)云計(jì)算中的任務(wù)卸載是指把移動(dòng)設(shè)備的任務(wù)發(fā)送到云平臺(tái),然后由云平臺(tái)處理,最后云平臺(tái)向用戶返回任務(wù)結(jié)果。由于不同的任務(wù)具有不同的計(jì)算量和數(shù)據(jù)傳輸量,在執(zhí)行任務(wù)卸載操作之前,必須確定使用哪個(gè)云平臺(tái),這就需要任務(wù)卸載策略來做出相應(yīng)的決定。并且,任務(wù)卸載性能將直接影響移動(dòng)應(yīng)用程序最終的運(yùn)行性能。因此,改進(jìn)和完善任務(wù)卸載技術(shù),將對(duì)移動(dòng)應(yīng)用運(yùn)行效率和服務(wù)功能的提升起到重要作用,同時(shí)將進(jìn)一步推動(dòng)移動(dòng)云計(jì)算技術(shù)的發(fā)展。
1任務(wù)卸載策略研究
Lagerspetz等人研究了利用遠(yuǎn)程云平臺(tái)執(zhí)行移動(dòng)桌面搜索的優(yōu)點(diǎn)與不足[7]。該工作在不同的場(chǎng)景下,對(duì)任務(wù)卸載的能量平衡問題進(jìn)行了分析,并測(cè)量了對(duì)應(yīng)的手機(jī)能耗情況,對(duì)于手機(jī)的應(yīng)用性能卻未作分析和測(cè)量。使用的任務(wù)卸載策略只考慮了手機(jī)的能耗因素,即當(dāng)手機(jī)本地執(zhí)行任務(wù)的能耗大于任務(wù)卸載的能耗時(shí),就選擇卸載處理。
Huang 等人提出一個(gè)卸載算法來降低移動(dòng)設(shè)備的能耗,以及滿足應(yīng)用執(zhí)行時(shí)間的要求[8]。提出的DOA算法利用Lyapunov最優(yōu)化理論來解決卸載策略問題。該工作考慮移動(dòng)用戶的網(wǎng)絡(luò)連接是變化的,如果WiFi網(wǎng)絡(luò)連接存在,移動(dòng)設(shè)備會(huì)優(yōu)先選擇WiFi網(wǎng)絡(luò),否則選擇3G網(wǎng)絡(luò)。另一方面,作者假設(shè)在應(yīng)用請(qǐng)求執(zhí)行期間,可用的網(wǎng)絡(luò)連接將不再變化。該工作首先把一個(gè)移動(dòng)應(yīng)用分解成N個(gè)可卸載部件,然后采用一個(gè)加權(quán)有向圖來表示各個(gè)部件之間的關(guān)系,接著建立卸載對(duì)應(yīng)的能耗表達(dá)式,以及時(shí)間約束條件和系統(tǒng)穩(wěn)定條件,最后確定能耗最小值對(duì)應(yīng)的解。如果直接搜索能耗對(duì)應(yīng)的最優(yōu)解,時(shí)間復(fù)雜度將整合呈現(xiàn)為指數(shù)級(jí)。為了提升算法效率,作者使用1-opt本地搜索算法來求解上述的問題。實(shí)驗(yàn)使用了HELVM算法[9]作為對(duì)比方案,結(jié)果顯示DOA算法在手機(jī)能耗方面要優(yōu)于HELVM算法。另外,2個(gè)算法都能夠滿足時(shí)間約束條件,HELVM算法的應(yīng)用執(zhí)行時(shí)間要小于DOA算法。
Zhang等人研究了移動(dòng)云計(jì)算滿足時(shí)間約束的任務(wù)卸載策略問題,提出了一個(gè)任務(wù)調(diào)度策略來負(fù)責(zé)移動(dòng)設(shè)備和遠(yuǎn)程云平臺(tái)的協(xié)作執(zhí)行[10]。首先,在任務(wù)模型中,一個(gè)應(yīng)用由一系列的細(xì)粒度任務(wù)構(gòu)成,并且這些任務(wù)滿足線性拓?fù)?,即各個(gè)任務(wù)依次按順序執(zhí)行,當(dāng)前任務(wù)的輸出數(shù)據(jù)是下一個(gè)任務(wù)的輸入數(shù)據(jù)。另外,作者采用了Gilbert-Elliott信道模型,其中信道具有2種狀態(tài),即好狀態(tài)和壞狀態(tài)。信道在各個(gè)時(shí)隙對(duì)應(yīng)的狀態(tài)主要取決于當(dāng)時(shí)的信道增益情況。研究把移動(dòng)設(shè)備最小能耗的任務(wù)調(diào)度問題建模成一個(gè)有向無環(huán)圖的最短路徑問題,采用了LARAC算法[11]來獲得該優(yōu)化問題的近似解。通過求解預(yù)期最小延時(shí)、預(yù)期最小能耗和預(yù)期最小聚合開銷對(duì)應(yīng)的最短路徑問題來獲得任務(wù)的執(zhí)行策略。性能評(píng)測(cè)利用了現(xiàn)有的測(cè)試數(shù)據(jù)作為輸入數(shù)據(jù)進(jìn)行仿真實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明提出的任務(wù)調(diào)度策略與本地執(zhí)行策略,以及任務(wù)全部卸載策略相比,移動(dòng)設(shè)備的能耗更小。
Cuervo等人提出了一個(gè)支持細(xì)粒度代碼卸載的系統(tǒng)MAUI,該系統(tǒng)能夠根據(jù)移動(dòng)設(shè)備當(dāng)前的連接狀況來決定代碼卸載的策略[12]。MAUI使用了CLR(Common Language Runtime)技術(shù)而不是Java技術(shù)來實(shí)現(xiàn)托管代碼。MAUI把最大化節(jié)省移動(dòng)設(shè)備的能量問題建模成整數(shù)線性規(guī)劃問題,對(duì)應(yīng)的約束條件為響應(yīng)時(shí)間小于等于要求的時(shí)間。實(shí)驗(yàn)對(duì)不同網(wǎng)絡(luò)延時(shí)和計(jì)算負(fù)載要求的手機(jī)應(yīng)用進(jìn)行了測(cè)試。結(jié)果顯示,對(duì)于資源密集型應(yīng)用,例如人臉識(shí)別應(yīng)用,MAUI可以降低對(duì)應(yīng)的手機(jī)能耗。對(duì)于延時(shí)敏感的應(yīng)用,例如游戲應(yīng)用,MAUI可以提高手機(jī)屏幕的刷新速率。另外,MAUI還可以支持實(shí)時(shí)的語音翻譯應(yīng)用。
Zhang等人提出了移動(dòng)云系統(tǒng)中用于轉(zhuǎn)碼服務(wù)的任務(wù)卸載策略,該卸載策略的目標(biāo)是降低轉(zhuǎn)碼任務(wù)在移動(dòng)設(shè)備和云平臺(tái)的能耗,同時(shí)保證轉(zhuǎn)碼服務(wù)具有低延時(shí)[13]。作者把帶有延時(shí)期限的卸載策略問題建模成帶約束條件的最優(yōu)化問題,利用Lyapunov最優(yōu)化理論提出了一個(gè)REQUEST算法來為云平臺(tái)分配轉(zhuǎn)碼任務(wù)。由于云平臺(tái)的計(jì)算能耗在總能耗中占較大比例[14],因此對(duì)于云平臺(tái)的能耗作者只考慮了計(jì)算能耗。實(shí)驗(yàn)結(jié)果表明,與其它算法相比,REQUEST算法在各個(gè)時(shí)段對(duì)應(yīng)的平均能耗更小,同時(shí)保證了服務(wù)隊(duì)列的穩(wěn)定性。
Lee等人研究了在具有多個(gè)WiFi熱點(diǎn)的場(chǎng)景下移動(dòng)用戶的任務(wù)卸載策略問題[15]。作者首先根據(jù)各個(gè)用戶移動(dòng)模式的規(guī)律來建立其移動(dòng)模型,然后基于用戶的移動(dòng)模型提出了一個(gè)任務(wù)卸載策略以實(shí)現(xiàn)任務(wù)響應(yīng)時(shí)間小于本地執(zhí)行時(shí)間。具體來說,作者根據(jù)用戶使用不同WiFi熱點(diǎn)的概率和帶寬來計(jì)算卸載對(duì)應(yīng)的期望響應(yīng)時(shí)間,如果期望響應(yīng)時(shí)間小于本地執(zhí)行時(shí)間,就選擇卸載處理,否則選擇本地執(zhí)行。實(shí)驗(yàn)結(jié)果表明,當(dāng)用戶移動(dòng)強(qiáng)度較大時(shí),提出的卸載策略在響應(yīng)時(shí)間和手機(jī)能耗方面具有較好的性能。
Hyytia等人研究了在WLAN訪問點(diǎn)間歇可用的場(chǎng)景下移動(dòng)用戶的多任務(wù)卸載策略問題[16]。作者考慮了排隊(duì)延時(shí)開銷、能量開銷和資金開銷,利用馬爾科夫決策過程來制定卸載策略FPI,并且采用了M/G/1-FCFS隊(duì)列模型[17]來計(jì)算值函數(shù)。實(shí)驗(yàn)結(jié)果表明,與其它卸載策略相比,F(xiàn)PI策略對(duì)應(yīng)的任務(wù)平均延時(shí)更小。
[BT4]2任務(wù)卸載性能研究
Giurgiu等人提出了手機(jī)應(yīng)用模塊的分割算法,該算法可以識(shí)別和確定哪些應(yīng)用模塊需要在云平臺(tái)執(zhí)行,哪些應(yīng)用模塊需要在手機(jī)端執(zhí)行[18]。算法假設(shè)云平臺(tái)的資源是無限的,并且沒有考慮手機(jī)的能耗問題。該方法使用了模塊管理軟件R-OSGi[19]和模塊部署工具AlfredO[20]來實(shí)現(xiàn)應(yīng)用程序在手機(jī)和云平臺(tái)的分布式部署。
Chun等人提出了一個(gè)能夠自動(dòng)利用云平臺(tái)執(zhí)行移動(dòng)應(yīng)用的系統(tǒng)CloneCloud[21],該系統(tǒng)能夠卸載應(yīng)用程序中的部分線程到云平臺(tái)執(zhí)行,對(duì)應(yīng)的卸載機(jī)制以最優(yōu)化執(zhí)行時(shí)間或者手機(jī)能耗為目標(biāo)來確定應(yīng)用程序的分割點(diǎn)。云平臺(tái)采用了虛擬機(jī)技術(shù)來建立克隆的手機(jī)操作系統(tǒng)。實(shí)驗(yàn)部分對(duì)病毒掃描,圖像搜索和行為分析3個(gè)移動(dòng)應(yīng)用進(jìn)行了測(cè)試。實(shí)驗(yàn)結(jié)果表明,與手機(jī)單獨(dú)執(zhí)行程序相比,通過WiFi網(wǎng)絡(luò)使用CloneCloud的情況下,病毒掃描程序的運(yùn)行速度可以提升12倍,對(duì)應(yīng)的手機(jī)能耗可以降低12倍,圖像搜索程序的運(yùn)行速度可以提升20倍,對(duì)應(yīng)的手機(jī)能耗可以降低20倍,行為分析程序的運(yùn)行速度可以提升10倍,對(duì)應(yīng)的手機(jī)能耗可以降低8.8倍。
Luzuriaga等人對(duì)云平臺(tái)執(zhí)行手機(jī)應(yīng)用進(jìn)行了性能評(píng)測(cè)[22],測(cè)試的應(yīng)用為人臉識(shí)別應(yīng)用。作者使用了PCA技術(shù)[23]來對(duì)圖像數(shù)據(jù)降維,然后進(jìn)行識(shí)別。實(shí)驗(yàn)測(cè)試了本地執(zhí)行模式對(duì)應(yīng)的響應(yīng)時(shí)間和識(shí)別的準(zhǔn)確率,以及云平臺(tái)執(zhí)行應(yīng)用對(duì)應(yīng)的響應(yīng)時(shí)間和識(shí)別的準(zhǔn)確率。然而,對(duì)于手機(jī)能耗的情況,該工作沒有進(jìn)行性能評(píng)測(cè)。
Zhang等人提出了一個(gè)彈性移動(dòng)應(yīng)用模型[24],彈性應(yīng)用程序包含多個(gè)Weblet構(gòu)件,該模型實(shí)現(xiàn)了Weblet構(gòu)件在資源受限的移動(dòng)設(shè)備與云平臺(tái)之間的彈性處理模式。具體來說,彈性模式主要包括3種:復(fù)制模式、分割模式和聚合模式。該方法可以根據(jù)應(yīng)用程序自身的結(jié)構(gòu),將應(yīng)用程序配置成多種執(zhí)行結(jié)構(gòu)。作者提出了一個(gè)開銷計(jì)算模型,采用了基于機(jī)器學(xué)習(xí)的算法,通過最優(yōu)化多個(gè)目標(biāo)的整體開銷來選擇為應(yīng)用程序配置的執(zhí)行結(jié)構(gòu)。在實(shí)驗(yàn)部分,使用了關(guān)于圖像處理的應(yīng)用程序進(jìn)行測(cè)試,主要評(píng)測(cè)了手機(jī)的平均吞吐量和平均CPU使用率2項(xiàng)性能指標(biāo),對(duì)于應(yīng)用響應(yīng)時(shí)間和手機(jī)的能耗沒有評(píng)測(cè)。
Kemp等人提出了一個(gè)針對(duì)智能手機(jī)的計(jì)算卸載框架Cuckoo[25],該框架可以為程序開發(fā)人員提供一個(gè)簡(jiǎn)單的編程模型。具體來說,提出的編程模型能夠處理手機(jī)與云平臺(tái)的連接丟失,并且支持本地和遠(yuǎn)程的程序執(zhí)行。Cuckoo框架與現(xiàn)有的開發(fā)工具Eclipse進(jìn)行了整合,并且能夠讓用戶方便地搜集遠(yuǎn)程資源。對(duì)于卸載策略的問題,Cuckoo框架采用了全部卸載到遠(yuǎn)程執(zhí)行的策略,環(huán)境信息只考慮遠(yuǎn)程資源是否可用,可以看出其卸載策略不夠靈活,并且任務(wù)負(fù)載和能量消耗也沒有考慮。在實(shí)驗(yàn)部分,使用了物體識(shí)別應(yīng)用eyeDentify[26]和基于增強(qiáng)現(xiàn)實(shí)的游戲應(yīng)用PhotoShoot[27]進(jìn)行測(cè)試,給出了測(cè)試應(yīng)用程序使用Cuckoo框架的運(yùn)行效果,對(duì)于手機(jī)的能耗沒有評(píng)測(cè)。
Marinelli等人設(shè)計(jì)了一個(gè)移動(dòng)云計(jì)算平臺(tái)Hyrax[28],Hyrax平臺(tái)利用了Hadoop和MapReduce技術(shù)在Android手機(jī)上執(zhí)行分布式計(jì)算。由于Hyrax主要使用周圍的移動(dòng)設(shè)備執(zhí)行計(jì)算任務(wù),而不是利用遠(yuǎn)程云平臺(tái)處理任務(wù),因此該方法將受到較小的網(wǎng)絡(luò)限制。Hyrax能夠擴(kuò)展移動(dòng)設(shè)備的數(shù)量,并且可以容忍節(jié)點(diǎn)離開,從而實(shí)現(xiàn)了分布式資源的靈活使用。實(shí)驗(yàn)部分利用在多部Android手機(jī)上安裝Hyrax平臺(tái)并運(yùn)行Sort、Random Writer和Word Count等程序進(jìn)行性能評(píng)測(cè),同時(shí)實(shí)驗(yàn)還測(cè)試了這些程序在多臺(tái)Hadoop服務(wù)器上的運(yùn)行性能,并把兩者的性能進(jìn)行了比較和分析。
Huerta-Canepa等人提出了使用周圍用戶的手機(jī)作為虛擬移動(dòng)云計(jì)算服務(wù)提供者,這種框架主要用于處理移動(dòng)用戶無法與遠(yuǎn)程云平臺(tái)連接或者連接費(fèi)用過高的情況[29]。作者指出當(dāng)多個(gè)移動(dòng)用戶具有相同任務(wù)時(shí),可以把任務(wù)分割成多個(gè)子任務(wù),每個(gè)移動(dòng)用戶執(zhí)行一部分子任務(wù),將會(huì)節(jié)省各個(gè)移動(dòng)用戶的手機(jī)能耗。實(shí)驗(yàn)測(cè)試使用了Ipod Touch作為移動(dòng)設(shè)備,每臺(tái)Ipod Touch都安裝了Hadoop,Ipod Touch之間使用WiFi通信。測(cè)試的應(yīng)用為韓文OCR(Optical Character Recognition)應(yīng)用,該應(yīng)用需要讀取一個(gè)圖像,然后掃描出其中的韓文,最后把韓文翻譯成羅馬文。實(shí)驗(yàn)給出了執(zhí)行時(shí)間的測(cè)試結(jié)果,結(jié)果顯示把子任務(wù)卸載到移動(dòng)設(shè)備對(duì)應(yīng)的執(zhí)行時(shí)間要稍微大于任務(wù)在本地執(zhí)行對(duì)應(yīng)的時(shí)間,其原因是卸載準(zhǔn)備和等待占用了較長時(shí)間。
Klein等人提出移動(dòng)云計(jì)算中的無線智能接入方案[30],異構(gòu)接入管理器HAM根據(jù)移動(dòng)云控制器中用戶所處的環(huán)境信息和請(qǐng)求的服務(wù)信息為用戶做出網(wǎng)絡(luò)選擇和網(wǎng)絡(luò)切換的決定。在t時(shí)刻,對(duì)于任意一個(gè)用戶,異構(gòu)接入管理器HAM首先把需要考慮的n個(gè)環(huán)境信息素進(jìn)行歸一化。接著,用每個(gè)環(huán)境信息素對(duì)連接評(píng)測(cè)的相關(guān)度和可信度的乘積作為其歸一化數(shù)值的權(quán)重。下一步,計(jì)算n個(gè)帶權(quán)重的歸一化數(shù)值之和,進(jìn)而能夠確定可選連接中的最大值。為了獲得較好的連接收益,只有當(dāng)信息素最大值與當(dāng)前連接的信息素?cái)?shù)值之差大于給定閾值時(shí),才選擇網(wǎng)絡(luò)切換,這樣做可以實(shí)現(xiàn)網(wǎng)絡(luò)切換開銷(例如,移動(dòng)設(shè)備的能耗和網(wǎng)絡(luò)資源的開銷)與連接性能提升之間的平衡。作者實(shí)現(xiàn)了一個(gè)環(huán)境感知的無線網(wǎng)絡(luò)模擬器CORAS,沒有對(duì)異構(gòu)接入管理器HAM進(jìn)行性能評(píng)測(cè)。另一方面,該工作使用環(huán)境信息素計(jì)算模型來評(píng)測(cè)連接質(zhì)量存在一定缺陷。例如,某個(gè)連接方式的多個(gè)歸一化環(huán)境信息素中部分信息素具有較高的數(shù)值,而一小部分信息素具有較低的數(shù)值,那么根據(jù)信息素模型也會(huì)計(jì)算出較大的信息素求和值。雖然模型計(jì)算出的整體連接質(zhì)量較高,但是如果數(shù)值較低的信息素?zé)o法滿足用戶請(qǐng)求的服務(wù),則該連接也無法滿足用戶的請(qǐng)求。
Mei等人提出把移動(dòng)應(yīng)用外包給云平臺(tái)處理,并且基于Android平臺(tái)和Amazon EC2設(shè)計(jì)了一個(gè)外包的原型框架[31]。在該框架下,作者通過解析不同應(yīng)用在3種計(jì)算環(huán)境下(在移動(dòng)端本地執(zhí)行,通過WiFi連接云平臺(tái)處理,通過3G網(wǎng)絡(luò)連接云平臺(tái)處理)的行為,分析這種計(jì)算外包方式的潛能。實(shí)驗(yàn)使用基于圖像處理的應(yīng)用來進(jìn)行性能評(píng)測(cè),具體應(yīng)用包括:SimpleBlur、GaryScale和人臉識(shí)別應(yīng)用。云平臺(tái)使用Amazon EC2,移動(dòng)設(shè)備使用HTC Android系統(tǒng)手機(jī)。在各個(gè)環(huán)境下,資源的使用情況和執(zhí)行時(shí)間都將進(jìn)入監(jiān)控與分析。實(shí)驗(yàn)結(jié)果表明,SimpleBlur應(yīng)用通過WiFi連接云平臺(tái)處理與本地執(zhí)行相比,處理速度更快,速度提升的最大程度為27.7倍,對(duì)應(yīng)的手機(jī)能耗更小,并且手機(jī)CPU使用率也更低,只有在手機(jī)內(nèi)存消耗方面比較接近。GaryScale應(yīng)用利用云平臺(tái)處理與本地執(zhí)行相比,花費(fèi)的時(shí)間更多,手機(jī)能耗更大,這主要是因?yàn)镚aryScale應(yīng)用沒有較大的計(jì)算負(fù)載,應(yīng)用卸載帶來的通信開銷是導(dǎo)致性能較差的主要原因。人臉識(shí)別應(yīng)用的性能以及手機(jī)能耗情況,與輸入數(shù)據(jù)的大小和網(wǎng)絡(luò)連接情況相關(guān),不同的輸入數(shù)據(jù)大小具有明顯的性能差異。當(dāng)圖像為240×300時(shí),云平臺(tái)處理要比本地執(zhí)行更慢,手機(jī)能耗更大。當(dāng)圖像為450×450時(shí),通過WiFi連接云平臺(tái)處理要比本地執(zhí)行更快,手機(jī)能耗更小。
Barbera等人研究了手機(jī)利用云平臺(tái)進(jìn)行任務(wù)卸載的手機(jī)帶寬和能量消耗情況[32],該工作使用11部Android手機(jī)和Amazon EC2進(jìn)行測(cè)試。為了實(shí)現(xiàn)真實(shí)的性能測(cè)試,作者設(shè)計(jì)了一個(gè)日志記錄器來記錄手機(jī)發(fā)生的事件,并且日志記錄器可以獲得系統(tǒng)狀態(tài)和數(shù)據(jù)使用信息。實(shí)驗(yàn)結(jié)果表明,使用WiFi連接云平臺(tái)比使用3G網(wǎng)絡(luò)能耗更小,另外,隨著手機(jī)與云平臺(tái)同步操作頻率的提高,手機(jī)的流量開銷也會(huì)增長。然而,該工作沒有測(cè)試任務(wù)卸載對(duì)應(yīng)的響應(yīng)時(shí)間。
Wang等人研究了無線網(wǎng)絡(luò)帶寬和服務(wù)器計(jì)算能力的受限問題[33],提出了一種渲染自適應(yīng)技術(shù)來解決云平臺(tái)處理移動(dòng)游戲程序?qū)?yīng)的資源受限問題。作者確定了多個(gè)影響通信開銷和計(jì)算開銷的渲染參數(shù),其中包括逼真效果、視野距離、紋理細(xì)節(jié)、環(huán)境細(xì)節(jié)和渲染幀速率。作者提出了支持不同自適應(yīng)級(jí)別的最優(yōu)自適應(yīng)渲染配置,并且設(shè)計(jì)了一個(gè)級(jí)別選擇算法來完成自適應(yīng)的3D渲染。實(shí)驗(yàn)使用PlaneShift[34]作為測(cè)試應(yīng)用。對(duì)于移動(dòng)游戲的用戶體驗(yàn),作者使用GMOS[35]指標(biāo)來進(jìn)行評(píng)價(jià)。實(shí)驗(yàn)結(jié)果表明,提出的方法能夠應(yīng)對(duì)無線網(wǎng)絡(luò)帶寬受限,可以確保計(jì)算資源的伸縮性,而且能夠確??山邮艿挠脩趔w驗(yàn)。
Kosta等人提出了一個(gè)卸載手機(jī)應(yīng)用到云平臺(tái)的計(jì)算架構(gòu)ThinkAir[36],該架構(gòu)可以完成方法級(jí)別的計(jì)算卸載,同時(shí)ThinkAir利用了并行處理技術(shù)來提升可并行應(yīng)用的處理效率。ThinkAir主要包含3個(gè)構(gòu)件:執(zhí)行環(huán)境、應(yīng)用服務(wù)器和解析器。其中的應(yīng)用服務(wù)器主要由3部分構(gòu)成:客戶端控制器、云基礎(chǔ)設(shè)施和自動(dòng)并行組件。解析器主要包括:硬件解析器、軟件解析器和網(wǎng)絡(luò)解析器。實(shí)驗(yàn)測(cè)試了4種應(yīng)用程序,分別為[WT5”HX]N[WT5”BZ]皇后問題、人臉識(shí)別、病毒掃描和圖像融合。實(shí)驗(yàn)結(jié)果表明,當(dāng)輸入數(shù)據(jù)的大小達(dá)到要求時(shí),ThinkAir能夠降低測(cè)試應(yīng)用的執(zhí)行時(shí)間和對(duì)應(yīng)的手機(jī)能耗。
Ma等人提出了一個(gè)中間件系統(tǒng)eXCloud[37],該系統(tǒng)可以支持多級(jí)任務(wù)卸載,其中包括粗粒度的虛擬機(jī)和細(xì)粒度的運(yùn)行時(shí)棧幀。eXCloud使用SOD方法來實(shí)現(xiàn)移動(dòng)設(shè)備的計(jì)算卸載。對(duì)于任務(wù)卸載,作者指出對(duì)應(yīng)的經(jīng)典方法是進(jìn)程卸載。與進(jìn)程卸載不同,eXCloud只卸載頂部棧幀,堆區(qū)和代碼區(qū)將以按需的方式由eXCloud實(shí)現(xiàn)調(diào)度利用。實(shí)驗(yàn)使用JESSICA2和G-JavaMPI作為卸載對(duì)比方案,實(shí)驗(yàn)結(jié)果表明eXCloud在卸載開銷和卸載延時(shí)方面的性能要優(yōu)于對(duì)比方案,同時(shí)eXCloud在任務(wù)卸載過程中完成了較好的資源利用。
Gordon等人提出了一個(gè)多線程應(yīng)用卸載系統(tǒng)COMET[38],該系統(tǒng)通過卸載應(yīng)用程序的多個(gè)線程到多臺(tái)機(jī)器,來提升移動(dòng)設(shè)備的處理能力以及降低能耗。COMET利用DSM分布式共享內(nèi)存技術(shù)來實(shí)現(xiàn)多線程卸載,并且使用區(qū)域級(jí)粒度來管理內(nèi)存的一致性。實(shí)驗(yàn)測(cè)試了9種移動(dòng)應(yīng)用程序,實(shí)驗(yàn)結(jié)果表明COMET完成了2.88倍的幾何平均加速處理和1.51倍的手機(jī)能量節(jié)省。
[BT4]3結(jié)束語
[JP2]上述移動(dòng)云計(jì)算中任務(wù)卸載技術(shù)的研究,已經(jīng)能夠提升一些移動(dòng)應(yīng)用的運(yùn)行性能,然而這些研究工作仍然存在不足。目前,大多數(shù)的研究工作討論了只有單個(gè)云平臺(tái)提供服務(wù)的情況。當(dāng)云平臺(tái)的資源狀況無法滿足任務(wù)卸載要求時(shí),云平臺(tái)就無法提供相應(yīng)的云服務(wù)。例如,遠(yuǎn)程云平臺(tái)通過廣域網(wǎng)傳輸數(shù)據(jù),對(duì)應(yīng)的數(shù)據(jù)傳輸率較低,因此數(shù)據(jù)傳輸時(shí)間可能較長。如果遠(yuǎn)程云平臺(tái)完成任務(wù)卸載的響應(yīng)時(shí)間大于用戶要求的響應(yīng)時(shí)間,則該用戶不能獲得有效的云服務(wù)。另外,研究人員提出使用本地微云來提升數(shù)據(jù)傳輸率,但是微云仍具有局限性。由于微云的計(jì)算和存儲(chǔ)資源是有限的,當(dāng)大量的用戶向微云發(fā)送請(qǐng)求時(shí),微云很可能無法為所有用戶提供有效的云服務(wù)。為了解決上述問題,需要整合各種有用的資源來增強(qiáng)云平臺(tái)的服務(wù)能力,例如,整合車載單元中的資源。一旦各種資源獲得了整合與利用,整個(gè)云服務(wù)系統(tǒng)中將包含多個(gè)云平臺(tái)。即使某個(gè)云平臺(tái)不能滿足任務(wù)卸載要求,移動(dòng)用戶還可以嘗試使用其它云平臺(tái),這樣就增強(qiáng)了云服務(wù)的可用性。因此,整個(gè)云服務(wù)系統(tǒng)中可能會(huì)有多個(gè)云平臺(tái)同時(shí)滿足任務(wù)的卸載要求,那么如何選擇一個(gè)最優(yōu)云平臺(tái)來執(zhí)行任務(wù)也需要后續(xù)進(jìn)一步的深入研究。[JP]
參考文獻(xiàn):
[JP3]Armbrust M, Fox A, Griffith R, et al. Above the Clouds: A Berkeley View of Cloud Computing[R]. Berkeley :University of California, 2009.[JP]
[2] MELL P, GRANCE T. The NIST definition of cloud computing[J]. Communications of the ACM, 2011, 53(6):50.
[3] SATYANARAYANAN M, BAHL P, CACERES R, et al. The case for VMbased cloudlets in mobile computing[J]. IEEE Pervasive Computing, 2009, 8(4):14-23.
[4] VALLINARODRIGUEZ N, CROWCROFT J. Energy management techniques in modern mobile handsets[J]. IEEE Communications Surveys & Tutorials, 2012, 15(15):179-198.
[5] TILEVICH E, KWON Y W. Cloudbased execution to improve mobile application energy efficiency[J]. Computer, 2014, 47(1):75-77.
[6] KUMAR K, LU Y H. Cloud computing for mobile users: Can offloading computation save energy? [J]. Computer, 2010, 43(4):51-56.
[7] LAGERSPETZ E, TARKOMA S. Mobile search and the cloud: The benefits of offloading [C] //IEEE International Conference on Pervasive Computing and Communications Workshops (PERCOM Workshops). Seattle: IEEE, 2011:117-122.
[8] HUANG D, WANG P, NIYATO D. A dynamic offloading algorithm for mobile computing[J]. IEEE Transactions on Wireless Communications, 2012, 11(6): 1991-1995.
[9] OU S, YANG K, ZHANG J. An effective offloading middleware for pervasive services on mobile devices[J]. Pervasive & Mobile Computing, 2010, 3(4):362-385.
[10]ZHANG W, WEN Y, WU D O. Energyefficient scheduling policy for collaborative execution in mobile cloud computing [C] //IEEE INFOCOM. Turin: IEEE, 2013:190-194.
[11]JUTTNER A, SZVIATOVSKI B, MECS I, et al. Lagrange relaxation based method for the QoS routing problem [C] // IEEE INFOCOM. Anchorage: IEEE, 2010:859-868.
[12]CUERVO E, BALASUBRAMANIAN A, CHO D K, et al. MAUI: making smartphones last longer with code offload [C] //ACM Mobisys. San Francisco: ACM, 2010:49-62.
[13]ZHANG W, WEN Y, CHEN H H. Toward transcoding as a service: energyefficient offloading policy for green mobile cloud[J]. IEEE Network, 2014, 28(6):67-73.
[14]CHEN Y, DAS A, QIN W, et al. Managing server energy and operational costs in hosting centers[J]. ACM Sigmetrics Performance Evaluation Review, 2010, 33(1):303-314.
[15]LEE K, SHIN I. User mobilityaware decision making for mobile computation offloading [C] //IEEE 1st International Conference on CyberPhysical Systems, Networks, and Applications (CPSNA). Taipei: IEEE, 2013:116-119.
[16]HYYTIA E, SPYROPOULOS T, OTT J. Offload (only) the right jobs: Robust offloading using the Markov decision processes [C] //IEEE 16th International Symposium on a World of Wireless, Mobile and Multimedia Networks (WoWMoM). Boston: IEEE, 2015:1-9.
[17]HYYTIA E, PENTTINEN A, AALTO S. Sizeand stateaware dispatching problem with queuespecific job sizes[J]. European Journal of Operational Research, 2012, 217(2):357-370.
[18]GIURGIU I, RIVA O, JURIC D, et al. Calling the cloud: Enabling mobile phones as interfaces to cloud applications[J]. Lecture Notes in Computer Science, 2009, 5896:83-102.
[19][JP3]RELLERMEYER J S, ALONSO G, ROSCOE T. ROSGi: Distributed applications[JP] through software modularization[M] //CERQUEIRA R , CAMPBELL R H. Middleware 2007. Berlin Heidelberg:Springer, 2007:1-20.
[20][JP3]RELLERMEYER J S, RIVA O, ALONSO G. AlfredO: An architecture for flexible interaction[JP] with electronic devices [C] // ACM/Ifip/Usenix International Middleware Conference. Berlin Heidelberg :Springer-Verlag, 2008:22-41.
[21]CHUN B G, IHM S, MANIATIS P, et al. CloneCloud: Elastic execution between mobile device and cloud [C] //ACM EuroSys. New York: ACM, 2011:301-314.
[22]LUZURIAGA J, CANO J C, CALAFATE C, et al. Evaluating computation offloading trade-offs in mobile cloud computing: a sample application [C] //The Fourth International Conference on Cloud Computing, GRIDs, and Virtualization. Valencia, Spain: IARIA, 2013:138-143.[ZK)]
[HT5”SS][ST5”BZ][WT5”BZ][JY](下轉(zhuǎn)第8頁)[FL)]
[HT5”SS][ST5”BZ][WT5”BZ][JY](上接第4頁)
[FL(2K2]
[23][ZK(#〗
[HJ*2] GUO Y, ZHANG L, KONG J, et al. Jupiter: transparent augmentation of smartphone capabilities through cloud computing [C] //The 3rd ACM SOSP Workshop on Networking, Systems, and Applications on Mobile Handhelds. New York: ACM, 2011:1-6.
[24]ZHANG X, JEONG S, KUNJITHAPATHAM A, et al. Towards an elastic application model for augmenting computing capabilities of mobile platforms [C] //The Third International Conference on Mobile Wireless Middleware, Operating Systems, and Applications. Chicago: EAI, 2010:161-174.
[25][JP3]KEMP R, PALMER N, KIELMANN T, et al. Cuckoo: a[JP] computation offloading framework for smartphones[M] // GRIS M , YANG G .Mobile Computing, Applications, and Services. Berlin Heidelberg :Springer, 2010:59-79.
[26][JP3]KEMP R, PALMER N, KIELMANN T, et al. eyeDentify: Multimedia cyber[JP] foraging from a smartphone[C] //IEEE 11th International Symposium on Multimedia. San Diego: IEEE, 2009:392-399.
[27][JP3]KEMP R, PALMER N, KIELMANN T, et al. Opportunistic communication[JP] for multiplayer mobile gaming: lessons learned from PhotoShoot [C] //Proceedings of the Second International Workshop on Mobile Opportunistic Networking. New York: ACM, 2010:182-184.
[28][JP3]Marinelli E. Hyrax: Cloud Computing on Mobile Devices using Map Reduce[D].[JP] Pennsylvania, USA: Carnegie Mellon University, 2009.
[29]HUERTA-CANEPA G, LEE D. A virtual cloud computing provider for mobile devices [C] //Proceedings of the 1st ACM Workshop on Mobile Cloud Computing & Services. New York: ACM, 2010:1-5.
[30]KLEIN A, MANNWEILER C, SCHNEIDER J, et al. Access schemes for mobile cloud computing [C] //IEEE Eleventh International Conference on Mobile Data Management (MDM). Kansas City: IEEE, 2010:387-392.
[31]Mei C, Shimek J, Wang C, et al. Dynamic Outsourcing Mobile Computation to the Cloud[R]. Minneapolis: University of Minnesota, 2011.
[32]BARBERA M V, KOSTA S, MEI A, et al. To offload or not to offload? The bandwidth and energy costs of mobile cloud computing [C] //IEEE INFOCOM. Turin: IEEE, 2013:1285-1293.
[33]WANG S, DEY S. Rendering adaptation to address communication and computation constraints in cloud mobile gaming [C] //IEEE Global Telecommunications Conference (GLOBECOM). Miami: IEEE, 2010:1-6.
[34]PlaneShift. PlaneShift Team [EB/OL]. [2012-06-20]. http://www.planeshift.it/.
[35]WANG S, DEY S. Modeling and characterizing user experience in a cloud server based mobile gaming approach [C] //IEEE Global Telecommunications Conference (GLOBECOM). Honolulu: IEEE, 2009:1-7.
[36]KOSTA S, AUCINAS A, HUI P, et al. ThinkAir: Dynamic resource allocation and parallel execution in the cloud for mobile code offloading [C] //IEEE INFOCOM. Orlando: IEEE, 2012:945-953.
[37]MA R K K, LAM K T, WANG C L. eXCloud: Transparent runtime support for scaling mobile applications in cloud [C] //Proceedings of the International Conference on Cloud and Service Computing. Hong Kong: IEEE, 2011:103-110.
[38]GORDON M S, JAMSHIDI D A, MAHLKE S, et al. COMET: Code offload by migrating execution transparently [C] //Proceedings of the 10th USENIX conference on Operating Systems Design and Implementation. Hollywood: USENIX, 2012:93-106.[ZK)]
[FL)]