陳靜
摘 要: 針對(duì)當(dāng)前很多改進(jìn)的MapReduce調(diào)度算法都未將計(jì)算節(jié)點(diǎn)安全性考慮在內(nèi)的問題,通過分析云計(jì)算任務(wù)調(diào)度機(jī)制,基于Vague模糊集的理論知識(shí),將模糊決策理論引入到云計(jì)算安全調(diào)度應(yīng)用中,提出一種基于模糊決策的云計(jì)算安全模型。其基本思想是對(duì)云資源進(jìn)行篩選評(píng)判,同時(shí)考察多個(gè)節(jié)點(diǎn)的資源,動(dòng)態(tài)接受可信度高的資源池,拒絕可信度低的資源池。通過模糊評(píng)判選擇安全的節(jié)點(diǎn),同時(shí)結(jié)合云計(jì)算的調(diào)度運(yùn)算,從而達(dá)到資源的最佳利用率,同時(shí)兼顧云計(jì)算的安全問題,使得分布在云上的資源能滿足日益增長的安全需要。并在此基礎(chǔ)上進(jìn)行算法實(shí)現(xiàn)與實(shí)驗(yàn)分析,實(shí)驗(yàn)證明新安全模型對(duì)“危險(xiǎn)”云進(jìn)行識(shí)別,該模型滿足云計(jì)算的安全性、高效性,加強(qiáng)了云計(jì)算的安全環(huán)境。
關(guān)鍵詞: 云計(jì)算; 云安全; 模糊評(píng)判; Vague集
中圖分類號(hào): TN915.08?34; TP391 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2017)23?0089?04
Abstract: Currently, the security of the computing node isn′t considered into a lot of improved MapReduce algorithms. By analyzing the task scheduling mechanism of cloud computing and using the theory knowledge of Vague fuzzy set, the fuzzy decision theory is introduced into the application of the cloud computing safety scheduling to propose a cloud computing security model based on fuzzy decision. According to its basic thought, the cloud resource is screened and judged; the resources of multiple nodes are explored; the resource pool with high reliability is accepted dynamically, and the resource pool with low reliability is refused. The security node is selected by means of fuzzy evaluation and the cloud computing schedule operation is combined to realize the best utilization of resources. The cloud computing security issues are combined to make that the resources distributed on the cloud can meet the growing demand for security. The algorithm realization and experimental analysis were performed. The experimental results prove that the new security model can recognize the "dangerous" cloud, meet the security and efficiency requirements of cloud computing, and strengthen the secure environment of cloud computing.
Keywords: cloud computing; cloud security; fuzzy evaluation; Vague set
0 引 言
云計(jì)算是當(dāng)前IT領(lǐng)域最熱門的話題之一,代表了IT技術(shù)發(fā)展的方向,它最重要的理論就是“網(wǎng)絡(luò)即計(jì)算機(jī)”,將大規(guī)模、易用、可訪問的虛擬資源連接起來形成一個(gè)資源池(包括計(jì)算資源、存儲(chǔ)資源、軟件資源等),為終端計(jì)算機(jī)提供“召之即來,揮之即去”且似乎“能力無限”的IT服務(wù)[1?2]。雖然云計(jì)算代表了未來IT技術(shù)發(fā)展的方向,云計(jì)算確實(shí)能為社會(huì)創(chuàng)造巨大的價(jià)值,但是云計(jì)算的發(fā)展也面臨很多問題,例如安全問題。因?yàn)橹灰@個(gè)云計(jì)算的資源池越大,被終端用戶依賴的程度越高,那么訪問這個(gè)資源池所帶來的安全問題就越嚴(yán)峻。用戶的隱私、網(wǎng)絡(luò)節(jié)點(diǎn)抵御入侵的能力、選擇怎樣的云資源池更加安全等問題就值得關(guān)注。
本文提出一種基于模糊評(píng)判的云計(jì)算安全模型,主要對(duì)云資源進(jìn)行篩選評(píng)判,兼顧多個(gè)云節(jié)點(diǎn)的資源利用情況,動(dòng)態(tài)接受可信度高的資源池,拒絕可信度低的資源池。通過模糊評(píng)判選擇安全的節(jié)點(diǎn),結(jié)合云計(jì)算的調(diào)度運(yùn)算,提高云計(jì)算的安全性,同時(shí)綜合考慮云計(jì)算的效率問題,使得分布在云上的資源能滿足日益增長的安全需要。
1 算法及模型的理論依據(jù)及設(shè)計(jì)思想
1.1 Vague集
1.2 Vague關(guān)系
假設(shè)待模糊評(píng)判的云資源集合用[N]來表示,置信的安全云計(jì)算集合用[D]表示,模糊評(píng)判的結(jié)果集合用[B]表示,從而得出[B]就是一個(gè)由0~1數(shù)字元素組成的布爾值變量的集合,用1表示完全符合的云資源,0表示完全拒絕的云資源,云安全模型識(shí)別的結(jié)果依據(jù)于識(shí)別器[D]到檢測結(jié)果[B]的Vague關(guān)系集合,體現(xiàn)了模糊檢驗(yàn)的肯定以及否定的程度[3]。
設(shè)定識(shí)別器集合的Vague集合[D]與表示模糊檢驗(yàn)條件的Vague關(guān)系[RD→B,]對(duì)這兩個(gè)集合做max和min交并運(yùn)算可以得出表示模糊評(píng)判結(jié)果的Vague集合:[B:B=D?R]。其中,表示真假隸屬度的函數(shù)的計(jì)算規(guī)則用下面的公式[4]表示:endprint
1.3 云計(jì)算調(diào)度機(jī)制
MapReduce是云計(jì)算領(lǐng)域一種主流的模型,圖1顯示了MapReduce的任務(wù)調(diào)度流程。在MapReduce運(yùn)行過程中,用戶向云端發(fā)起的請(qǐng)求需要被主節(jié)點(diǎn)Map到相關(guān)的子節(jié)點(diǎn),子節(jié)點(diǎn)完成Reduce的功能。
一般情況下,Hadoop平臺(tái)中MapReduce的任務(wù)調(diào)度采用默認(rèn)的“先進(jìn)先出”(FIFO)的調(diào)度算法,主節(jié)點(diǎn)根據(jù)子節(jié)點(diǎn)的空閑情況來調(diào)度,總節(jié)點(diǎn)分配任務(wù)給空閑節(jié)點(diǎn),是按請(qǐng)求的先后順序來的,類似于隊(duì)列機(jī)制。按照這種算法,節(jié)點(diǎn)處理存在任務(wù)效率不高和資源占用高的問題。
對(duì)于這種FIFO算法的明顯不足,云計(jì)算領(lǐng)域也發(fā)展了很多改進(jìn)的算法,比較著名的有Facebook公司提出的平均調(diào)度算法(Fair Scheduler)[5]和雅虎公司提出的計(jì)算能力調(diào)度算法(Capacity Scheduler)[6],他們的共同特點(diǎn)是提高資源的利用效率,讓云環(huán)境中每個(gè)節(jié)點(diǎn)都保持高效。
這些算法都只關(guān)注了云計(jì)算的效率問題,對(duì)云計(jì)算的安全問題卻沒有引起足夠的重視,因此本文從這點(diǎn)出發(fā),結(jié)合模糊決策的基本算法,改進(jìn)云計(jì)算的任務(wù)調(diào)度算法。
2 新的云計(jì)算安全模型及實(shí)現(xiàn)
目前云計(jì)算領(lǐng)域發(fā)展了許多改進(jìn)模型,但是都未將計(jì)算節(jié)點(diǎn)安全性這個(gè)根本問題考慮在內(nèi)。本文針對(duì)這個(gè)問題,提出一種基于模糊評(píng)判的MapReduce任務(wù)調(diào)度算法對(duì)節(jié)點(diǎn)進(jìn)行安全性選擇。當(dāng)計(jì)算節(jié)點(diǎn)運(yùn)行任務(wù)時(shí),通過計(jì)算用戶程序與節(jié)點(diǎn)的模糊評(píng)判值,分析各節(jié)點(diǎn)的安全因素,當(dāng)主節(jié)點(diǎn)運(yùn)行Map時(shí),綜合考慮節(jié)點(diǎn)的資源利用情況,將顯著提高云計(jì)算的安全環(huán)境。
2.1 運(yùn)用Vague集合篩選云服務(wù)
通過前面Vague集的基礎(chǔ)定義,找到了將Vague應(yīng)用到云計(jì)算安全的一個(gè)途徑,即通過將安全的云劃分為一個(gè)集合,形成一個(gè)模糊的識(shí)別器,通過計(jì)算得出每個(gè)元素的子集合[{D1,D2,…,Dm},]其中[n=c3m,][n]是每個(gè)識(shí)別器的數(shù)量。檢測結(jié)果集合={1,0},假定云計(jì)算的檢驗(yàn)知識(shí)集就是一個(gè)定義在集合與集合之間Vague集關(guān)系的集合,設(shè)為:[R={R1,R2,…,Rn}]。
具體步驟如下:
(1) 計(jì)算云節(jié)點(diǎn)與用戶集合的匹配度,用Vague集表示;
(2) 將模糊檢驗(yàn)知識(shí)集的Vague集關(guān)系用二進(jìn)制代碼表達(dá);
(3) 通過求最大、最小的合成運(yùn)算得到檢測結(jié)果的Vague集合;
(4) 根據(jù)步驟(3)的Vague計(jì)算結(jié)果得出核函數(shù)值[S]和精確函數(shù)值[H;]
(5) 根據(jù)步驟(4)的返回結(jié)果值,得出最終的安全云計(jì)算值。
2.2 基于模糊評(píng)判的云計(jì)算安全模型
基于模糊決策的云安全模型如圖2所示。
2.3 基于模糊決策的云計(jì)算調(diào)度
通過對(duì)云(資源、軟件、存儲(chǔ))的參數(shù)化對(duì)任務(wù)調(diào)度模型進(jìn)行建模,下文通過偽代碼對(duì)算法的實(shí)現(xiàn)進(jìn)行描述。Hadoop[7?9]平臺(tái)下的MapReduce任務(wù)調(diào)度機(jī)制由云節(jié)點(diǎn)決定是否需要調(diào)度,受制于從節(jié)點(diǎn)的執(zhí)行情況,當(dāng)計(jì)算節(jié)點(diǎn)有空余的從節(jié)點(diǎn)時(shí),向主節(jié)點(diǎn)申請(qǐng)計(jì)算任務(wù)。主節(jié)點(diǎn)收到請(qǐng)求后,將任務(wù)調(diào)度到該計(jì)算節(jié)點(diǎn)。
為了研究大多數(shù)云環(huán)境的安全調(diào)度場景,同樣在上述Hadoop平臺(tái)進(jìn)行實(shí)現(xiàn),主要區(qū)別是:任務(wù)分配的算法替換成基于Vague的篩選模糊決策之后,再選擇合適的云進(jìn)行調(diào)度。
3 仿真實(shí)驗(yàn)
本文使用的云計(jì)算平臺(tái)為本實(shí)驗(yàn)室的私有云計(jì)算平臺(tái)。
3.1 實(shí)驗(yàn)系統(tǒng)設(shè)置
本實(shí)驗(yàn)主要針對(duì)兩種不同類型的調(diào)度模型進(jìn)行實(shí)驗(yàn)對(duì)比測試,即先進(jìn)先出(FIFO)算法和基于模糊決策的(FUZZY)算法對(duì)云端數(shù)據(jù)進(jìn)行云安全識(shí)別,從而得到帶有危險(xiǎn)信號(hào)的網(wǎng)絡(luò)數(shù)據(jù),樣本數(shù)據(jù)采用2013年雅虎公司使用的1 500多個(gè)slot計(jì)算節(jié)點(diǎn),其中含1 TB的數(shù)據(jù)。首先,本文收集了多達(dá)十幾個(gè)云服務(wù)器的15 GB數(shù)據(jù)作為測試樣例數(shù)據(jù),以匹配現(xiàn)實(shí)條件下的云安全環(huán)境。在保證實(shí)驗(yàn)硬件性能的前提下,設(shè)置slot節(jié)點(diǎn)值等于2。
3.2 實(shí)驗(yàn)步驟
首先,部署云計(jì)算Hadoop環(huán)境,其次在Hadoop平臺(tái)上執(zhí)行該項(xiàng)實(shí)驗(yàn)的測試用例腳本。由于上述“先進(jìn)先出”算法是Hadoop中的一個(gè)普遍應(yīng)用,因此在任何Hadoop平臺(tái)包中已經(jīng)含有了算法實(shí)現(xiàn)程序,所以直接調(diào)用即可。另外,基于本文提出的基于模糊決策算法的代碼命令如下:
$ hadoop jar hadoop?1.0.5?fuzzy.jar Map/Reduce/data15DB 15000000000 /terasort/input15GB
$ hadoop jar hadoop?1.0.5?fuzzy.jar Map/Reduce/data15DB /terasort/output15GB
如上所示,hadoop.jar為Hadoop平臺(tái)自帶的jar包,是用來執(zhí)行調(diào)度任務(wù)演示的測試包。第一個(gè)jar包用來生成待測試的數(shù)據(jù),并將這些數(shù)據(jù)存放在文件系統(tǒng)的data15DB的文件目錄中。調(diào)用第二個(gè)jar包,任務(wù)總調(diào)度服務(wù)程序?qū)膁ata15DB中讀取數(shù)據(jù),然后,將查找的結(jié)果輸出到data15DB中。
3.3 實(shí)驗(yàn)結(jié)果
(1) 與“先進(jìn)先出”調(diào)度算法對(duì)比資源開銷
通過對(duì)比實(shí)驗(yàn),首先對(duì)本文提出的模糊決策算法進(jìn)行驗(yàn)證,首先測試兩種算法對(duì)平臺(tái)的資源需求。先用調(diào)度任務(wù)執(zhí)行“先進(jìn)先出”算法,然后執(zhí)行基于模糊決策算法的調(diào)度任務(wù)程序,各自執(zhí)行27次之后,觀察兩組任務(wù)的資源開銷??傻贸鼋Y(jié)論:傳統(tǒng)的“先進(jìn)先出”調(diào)度模型是依次處理任務(wù),在執(zhí)行時(shí)幾乎占用全部的內(nèi)存和處理器資源,對(duì)硬盤I/O消耗也相當(dāng)大,當(dāng)進(jìn)出順序排列好后,一次性寫回云端處理,因此占用資源比較大。endprint
(2) 對(duì)比“先進(jìn)先出”調(diào)度算法
前面從資源開銷角度進(jìn)行了對(duì)比驗(yàn)證,發(fā)現(xiàn)傳統(tǒng)“先進(jìn)先出”算法只考慮了線性的排序處理,并未從全局出發(fā),考慮資源的使用率及效率問題,因此當(dāng)有危險(xiǎn)云處于云安全環(huán)境之中時(shí),往往使整個(gè)云平臺(tái)的安全調(diào)度產(chǎn)生問題。
通過安全云識(shí)別花費(fèi)的總時(shí)間和總?cè)蝿?wù)數(shù)來評(píng)判兩種算法的調(diào)度情況。圖3和圖4分別表示任務(wù)完成的時(shí)間和任務(wù)數(shù)。圖3顯示基于模糊決策的調(diào)度算法在最優(yōu)、最差、平均情況都要好于Hadoop的“先進(jìn)先出”調(diào)度算法。對(duì)比最優(yōu)用例,Hadoop的 “先進(jìn)先出”調(diào)度算法的任務(wù)耗時(shí)是7 848 s,基于模糊決策調(diào)度算法的耗時(shí)是6 020 s,可以看出本文提出的算法減少了21.09%的時(shí)間,即使在最差的情況下,模糊決策算法也提高了26.16%。從任務(wù)數(shù)來看,在最差的情況下,F(xiàn)uzzy模型比FIFO減少了調(diào)度任務(wù)數(shù)的25.29%。
設(shè)定云服務(wù)請(qǐng)求與這個(gè)識(shí)別器子集的Vague集合關(guān)系如表1所示,繼而通過計(jì)算得出核函數(shù)、精確函數(shù)的計(jì)算結(jié)果如表2所示。
由表2可以看出,User3是相對(duì)正常的云資源,并且User3可以適用于更多云資源的迭代運(yùn)算,也就是說,隨著云服務(wù)資源的增加,通過上述算法模型,可以計(jì)算出更加準(zhǔn)確的云資源來滿足用戶的安全需求。
4 結(jié) 語
本文引入Vague集理論的相關(guān)機(jī)制到云計(jì)算安全系統(tǒng)的設(shè)計(jì)中,提出一種模糊評(píng)判的云計(jì)算安全模型。新模型對(duì)“危險(xiǎn)”云進(jìn)行識(shí)別,該模型滿足了云計(jì)算的安全性、高效性。加強(qiáng)了云計(jì)算的安全環(huán)境,目前該模型的研究工作仍在進(jìn)行之中,尚有許多需要改進(jìn)的地方,如云計(jì)算系統(tǒng)的自適應(yīng)性、智能性等。
參考文獻(xiàn)
[1] 楊健,汪海航,王劍,等.云計(jì)算安全問題研究綜述[J].小型微型計(jì)算機(jī)系統(tǒng),2012,33(3):472?479.
[2] 閆曉麗.云計(jì)算安全問題[J].信息安全與技術(shù),2014(3):214?217.
[3] 盧建華,袁細(xì)國,符海東.基于Vague集的人工免疫模型[J].計(jì)算機(jī)工程與設(shè)計(jì),2007(12):2790?2792.
[4] ZADEH L A. Why the success of fuzzy logic is not paradoxical [J]. IEEE expert, 1994, 9(4): 43?46.
[5] DEAN J, GHEMAWAT S. MapReduce: simplifed data proces?sing on large clusters [C]// Proceedings of the 6th Conference on Operating System Design and Implementation. San Francisco: USENIX, 2004: 107?113.
[6] BURROWS M. The Chubby lock service for loosely?coupled distributed systems [C]// Proceedings of the 7th Symposium on Opera?ting Systems Design and Implementation. Seattle: USENIX, 2006: 335?350.
[7] BERLINSKA J, DROZDOWSKI M. Scheduling divisible MapReduce computations [J]. Journal of parallel and distributed computing, 2011, 3(71): 450?459.
[8] SANDHOLM T, LAI K. Dynamic proportional share scheduling in Hadoop [C]// Proceedings of the 15th International Confe?rence on Job Scheduling Strategies for Parallel Processing. Atlanta: Springer, 2010: 110?131.
[9] KAMBATLA K, PATHAK A, PUCHA H. Towards optimizing hadoop provisioning in the cloud [C]// Proceedings of the First Workshop on Hot Topics in Cloud Computing. San Diego: USENIX, 2009: 1?5.
[10] ZAHARIA M, BORTHAKUR D, SARMA J S, et al. Job scheduling for multi?user MapReduce clusters [EB/OL]. [2009?04?30]. http://www.icsi.berkeley.edu/pubs/techreports/ICSI_jobschedulingfor09.pdf.
[11] DOELITZSCHER F, SULISTIO A, REICH C, et al. Private cloud for collaboration and e?learning services: from IaaS to SaaS [J]. Computing, 2011, 91(2): 23?42.
[12] LIN J W, CHEN C H, LIN C Y. Integrating QoS awareness with virtualization in cloud computing systems for delay?sensitive applications [J]. Future generation computer systems, 2014, 37(7): 478?487.
[13] WANG C, WANG Q, REN K, et al. Privacy?preserving public auditing for data storage security in cloud computing [C]// Proceedings of 2010 INFOCOM. San Diego: IEEE, 2010: 59?60.
[14] KIM J, BENTLEY P J. Towards an artificial immune system for network intrusion detection: an investigation of dynamic clonal selection with negative selection operator [C]// Procee?dings of 2001 Congress on Evolutionary Computation. Seoul: IEEE, 2001: 739?747.
[15] MAJI P K, BISWAS, ROY A R. Fuzzy soft sets [J]. Journal of fuzzy mathematics, 2001, 9(3): 589?602.endprint