李 琴,張 帥
(濰坊工程職業(yè)學(xué)院 信息工程系,山東 青州 262500)
近年來,計算機(jī)網(wǎng)絡(luò)技術(shù)逐漸增強(qiáng),網(wǎng)絡(luò)中所有數(shù)據(jù)包和服務(wù)器的連接方式呈現(xiàn)出多樣化特征,網(wǎng)絡(luò)惡意攻擊導(dǎo)致數(shù)據(jù)泄露問題已經(jīng)成為網(wǎng)絡(luò)安全中存在的重要隱患[1]。當(dāng)前,經(jīng)常出現(xiàn)的網(wǎng)絡(luò)惡意攻擊方法有很多種,例如:網(wǎng)絡(luò)數(shù)據(jù)受木馬、病毒干擾,防火墻遭受黑客攻擊等現(xiàn)象,這些方法在通常情況下都會針對網(wǎng)絡(luò)安全漏洞來進(jìn)行攻擊。近幾年來,Clos網(wǎng)絡(luò)呈爆炸式增長,導(dǎo)致數(shù)據(jù)在傳輸?shù)倪^程中很容易發(fā)生擁堵的情況,如何針對Clos網(wǎng)絡(luò)分布式數(shù)據(jù)進(jìn)行調(diào)度[2-3]已成為當(dāng)前研究的熱點(diǎn)話題。但目前的網(wǎng)絡(luò)調(diào)度過程中,普遍存在調(diào)度完成總時間較長、能量消耗較大、平均帶寬利用率較低等問題。如何合理調(diào)度Clos網(wǎng)絡(luò)已成為當(dāng)今社會亟待解決的問題[4-5]。
文獻(xiàn)[6]提出了一種基于MVB網(wǎng)絡(luò)數(shù)據(jù)分布式調(diào)度優(yōu)化方法,該方法將網(wǎng)絡(luò)中最小負(fù)載作為目標(biāo)組建分布式調(diào)度模型,同時采用免疫遺傳算法對模型進(jìn)行求解,具有較快的收斂速度,但是耗時較長。文獻(xiàn)[7]提出了一種基于Storm網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)分布式調(diào)度方法,該方法結(jié)合網(wǎng)絡(luò)數(shù)據(jù)通信過程中存在的優(yōu)勢以及熱邊概念,有效降低網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臄?shù)量,提升Storm集群的性能,快速實現(xiàn)網(wǎng)絡(luò)分布式調(diào)度。該方法調(diào)度完成總時間較短,但是在數(shù)據(jù)調(diào)度過程中消耗了大量的能量。文獻(xiàn)[8]提出了一種基于加權(quán)最小連接數(shù)的分布式調(diào)度方法,通過網(wǎng)絡(luò)服務(wù)端中最小的連接數(shù)負(fù)載因子獲取網(wǎng)絡(luò)中不同服務(wù)器之間的最好的方案,并且選取最小的服務(wù)器進(jìn)行連接,以實現(xiàn)網(wǎng)絡(luò)分布式調(diào)度。該方法穩(wěn)定性較好,但是也存在耗時較長的問題。
針對上述方法存在的問題,提出一種基于貓群優(yōu)化算法的Clos網(wǎng)絡(luò)分布式調(diào)度方法。實驗結(jié)果表明,本文方法調(diào)度完成總時間較短、能量消耗較小、平均帶寬利用率較高。
引用分布式網(wǎng)絡(luò)攻擊檢測算法來求出Clos網(wǎng)絡(luò)中數(shù)據(jù)包的信任值,并通過對閾值的設(shè)定,構(gòu)建Clos網(wǎng)絡(luò)抵抗泄露模型,當(dāng)Clos網(wǎng)絡(luò)數(shù)據(jù)包信任值低于所設(shè)定的閾值時,則受到惡意攻擊,具體過程如下。
假設(shè)在Clos網(wǎng)絡(luò)系統(tǒng)中植入n個惡意病毒,并且使每個病毒都帶有自己獨(dú)特的特征,當(dāng)病毒集合為N={p1,p2,…,pn}時,所有病毒自己特征所對應(yīng)的特征集合為p={x1,x2,…,xn},Clos網(wǎng)絡(luò)系統(tǒng)中數(shù)據(jù)包集合為Ω={σ1,σ2,…,σn},這時每個Clos網(wǎng)絡(luò)中數(shù)據(jù)包都有自己所對應(yīng)的信任值,如公式(1)所示。
(1)
式中,C(σi)表示Clos網(wǎng)絡(luò)中數(shù)據(jù)包的初始容量大小,C(σi)′表示該網(wǎng)絡(luò)中數(shù)據(jù)包在產(chǎn)生一定改變之后的容量大小。
在Clos網(wǎng)絡(luò)系統(tǒng)中,所有數(shù)據(jù)包和它所對應(yīng)的IP地址都是一個隨機(jī)變量,在遭受到惡意因素(病毒、木馬)進(jìn)行攻擊時,這些惡意因素也將會隨機(jī)選擇網(wǎng)絡(luò)數(shù)據(jù)包和它所對應(yīng)的IP地址來進(jìn)行選擇性攻擊,在這個過程中,這個惡意因素也是一個隨機(jī)變量,并且每個變量之間都是相互獨(dú)立存在的,針對這個問題,引入概率密度函數(shù)(公式(2))來體現(xiàn)病毒的分布情況。
(2)
假設(shè)Clos網(wǎng)絡(luò)中含有xi個特征的惡意攻擊病毒pi從IP地址為ipj的服務(wù)器進(jìn)入,被入侵的Clos網(wǎng)絡(luò)數(shù)據(jù)包為σj,這時就會對ipt服務(wù)器進(jìn)行攻擊。利用公式(3)給出惡意攻擊病毒pi攻擊Clos網(wǎng)絡(luò)數(shù)據(jù)包σj之后,Clos網(wǎng)絡(luò)數(shù)據(jù)包信任值的變化情況。
(3)
式中,(ipt-ipj)表示Clos網(wǎng)絡(luò)IP地址的二進(jìn)制差值,對Clos網(wǎng)絡(luò)系統(tǒng)中數(shù)據(jù)包的信任值進(jìn)行閾值T(ω)設(shè)定,當(dāng)Clos網(wǎng)絡(luò)數(shù)據(jù)包的信任值小于T(ω)時,Clos網(wǎng)絡(luò)數(shù)據(jù)包受到病毒的惡意攻擊,將會導(dǎo)致Clos網(wǎng)絡(luò)數(shù)據(jù)泄露,利用公式(3)可以對Clos網(wǎng)絡(luò)攻擊的病毒進(jìn)行追擊,以此來查找出IP地址。
為了使后期的Clos網(wǎng)絡(luò)數(shù)據(jù)包信任值能夠通過Clos網(wǎng)絡(luò)系統(tǒng)確定出危險等級,這時就需要對惡意攻擊的危險等級進(jìn)行評估,當(dāng)病毒惡意攻擊危險等級越大時,病毒攻擊的危險性就越大,Clos網(wǎng)絡(luò)數(shù)據(jù)泄露的可能性就越大,結(jié)合Clos網(wǎng)絡(luò)系統(tǒng)中病毒惡意攻擊的危險等級,組建基于抵抗泄露攻擊的Clos網(wǎng)絡(luò)分布式調(diào)度模型。
Li=F(ipj)F(xi)F(ωj)
(4)
式中,F(ipj)表示Clos網(wǎng)絡(luò)中服務(wù)器IP地址為ipj的危險度函數(shù),F(xi)表示Clos網(wǎng)絡(luò)系統(tǒng)中含有xi個特征病毒的危險度函數(shù),F(ωj)表示Clos網(wǎng)絡(luò)數(shù)據(jù)包信任值ωj的危險度函數(shù)。
以1.1節(jié)構(gòu)建的Clos網(wǎng)絡(luò)抵抗泄露模型為依據(jù),結(jié)合最短實踐以及最優(yōu)數(shù)據(jù)流負(fù)載因素,組建貓群算法[9]適應(yīng)度函數(shù),獲取Clos網(wǎng)絡(luò)分布式最優(yōu)調(diào)度方案。
貓群算法是一種模擬貓的日常全部生活狀態(tài)的一種優(yōu)化算法,主要利用搜索以及跟蹤獲取最優(yōu)解。其基本操作流程如下。
(1)將貓群進(jìn)行初始化處理;
(2)通過分組率將貓群隨機(jī)劃分為跟蹤以及搜尋2種不同的形式;
(3)根據(jù)貓的規(guī)定值對它所追蹤的對應(yīng)算子重新進(jìn)行位置更新;
(4)分別計算每只貓的適應(yīng)度,同時保留適應(yīng)度最優(yōu)的貓;
(5)假設(shè)滿足約束條件,則終止算法;否則返回步驟(1)。
跟蹤模式是模擬貓?zhí)幱诟櫊顟B(tài)下組建的模型,在該模型下,通過改變各個貓的維度進(jìn)行位置更新,其中更新模式主要通過以下2個步驟實現(xiàn)。
(1)速度更新
每只貓都有自己當(dāng)前的速度,將其記為:
Vi={Vi1,Vi2,…,Vit}
(5)
每只貓主要通過公式(6)進(jìn)行速度更新,將Xbest(t)作為當(dāng)前貓群里經(jīng)歷的最優(yōu)位置,即適應(yīng)度最好的貓。
(6)
其中,d代表“貓在d維處的位置”,c代表“調(diào)節(jié)參數(shù)”,rand代表“(0,1)的隨機(jī)數(shù)”。
(2)位置更新
每只貓通過公式(7)進(jìn)行位置更新:
(7)
搜尋模式主要是模擬貓在搜索以及尋找下一個地點(diǎn)所組建的模型。在該種狀態(tài)下,每只貓通過適應(yīng)度取值的大小在記憶池中選取最佳位置,具體的操作步驟如下。
(1)將自身位置進(jìn)行復(fù)制;
(2)執(zhí)行變異算子;
(3)計算記憶池中各個貓的適應(yīng)度,同時采用適應(yīng)度取值最高的貓代替當(dāng)前的貓[10],實現(xiàn)位置更新。
采用貓群算法進(jìn)行模型求解的具體過程如下。
(1)將參數(shù)進(jìn)行初始化;
(2)將貓群進(jìn)行初始化處理,隨機(jī)得到不同的初始解;
(3)計算每只貓的適應(yīng)度,其中適應(yīng)度函數(shù)表示為:
F=∑xijdij
(8)
其中,xij代表“城市i到城市j的訪問次數(shù)”,dij代表“城市i到城市j的距離”;
(4)將所有貓隨機(jī)分布到搜尋模式組以及跟蹤模式組;
(5)確定出所有貓的模式組,判斷每只貓所處的模式,同時對各組內(nèi)貓的個體執(zhí)行對應(yīng)的模式算子,分別計算每只貓的適應(yīng)度,且更新全局最優(yōu)貓;
(6)當(dāng)更新完所有貓之后,如果沒有達(dá)到最大迭代次數(shù),則返回至步驟(4)重新計算,直到滿足最大迭代次數(shù)后結(jié)束進(jìn)化;
(7)獲取最優(yōu)Clos網(wǎng)絡(luò)分布式調(diào)度方案。
為了驗證基于貓群算法的Clos網(wǎng)絡(luò)分布式調(diào)度方法的綜合有效性,需要進(jìn)行實驗測試,實驗操作系統(tǒng)為Windows8,內(nèi)存為64 G,將本文方法與基于MVB網(wǎng)絡(luò)數(shù)據(jù)分布式調(diào)度優(yōu)化方法(方法1)和基于Storm網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)分布式調(diào)度方法(方法2)進(jìn)行對比實驗。
(1)調(diào)度完成總時間/s
調(diào)度完成總時間越長,說明任務(wù)調(diào)度越慢;反之,則說明任務(wù)調(diào)度速度越快。表1詳細(xì)給出了3種不同方法的調(diào)度完成總時間對比結(jié)果。
表1 3種方法調(diào)度完成總時間變化情況Tab. 1 Changes in scheduling completion total time of 3 different methods
分析表1數(shù)據(jù)可知,隨著測試樣本數(shù)量的增加,3種方法的調(diào)度完成總時間均隨之增加。與方法1及方法2相比,本文方法的調(diào)度完成總時間增加速度明顯慢一些,說明本文方法能夠在較短的時間內(nèi)實現(xiàn)任務(wù)調(diào)度。
(2)平均帶寬利用率/%
平均帶寬利用率α為Clos網(wǎng)絡(luò)系統(tǒng)中每條網(wǎng)絡(luò)數(shù)據(jù)實際獲得的帶寬和指定帶寬之比值的平均值,主要表示Clos網(wǎng)絡(luò)數(shù)據(jù)的均衡程度,α的取值越高,說明網(wǎng)絡(luò)負(fù)載越均衡,具體計算式為:
(9)
其中,rrf代表“網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)量”,arf代表“節(jié)點(diǎn)移動利率”。
圖1為3種方法的平均帶寬利用率對比結(jié)果。
圖1 不同方法平均帶寬利用率對比Fig. 1 Comparison of average bandwidth utilization of different methods
由圖1可知,當(dāng)數(shù)據(jù)流量負(fù)荷持續(xù)增加時,3種方法的平均帶寬利用率均呈現(xiàn)下降趨勢。其中本文方法充分考慮到Clos網(wǎng)絡(luò)中全部路徑數(shù)據(jù)負(fù)載情況之后進(jìn)行選擇,有效降低了網(wǎng)絡(luò)出現(xiàn)擁堵的概率,帶寬利用率明顯得到有效改善;方法1針對網(wǎng)絡(luò)中占有率最高的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行調(diào)度,在實際操作過程中忽視了對網(wǎng)絡(luò)服務(wù)質(zhì)量的需求,所以導(dǎo)致帶寬利用率下降。方法2采用網(wǎng)絡(luò)數(shù)據(jù)調(diào)度策略導(dǎo)致其發(fā)生數(shù)據(jù)的概率較大,促使帶寬利用率明顯偏低。3種方法中,本文方法的帶寬利用率明顯更高一些,說明本文方法具有更好的調(diào)度性能。
(3)調(diào)度能量消耗/J
對比3種方法的調(diào)度能量消耗,實驗結(jié)果如表2所示。
由表2可知,不同調(diào)度方法的能量消耗均會隨著測試樣本數(shù)量的增加而增加。本文方法的調(diào)度能量消耗明顯更低一些,這說明本文方法的綜合性能相比另外2種方法有了很大程度的提升,同時也充分驗證了本文方法的優(yōu)越性。
表2 3種方法調(diào)度能量消耗變化情況Tab. 2 Changes in scheduling energy consumption of 3 different methods
針對傳統(tǒng)的Clos網(wǎng)絡(luò)分布式調(diào)度方法中存在的各種不足,提出基于貓群優(yōu)化算法的Clos網(wǎng)絡(luò)分布式調(diào)度方法。利用該方法進(jìn)行網(wǎng)絡(luò)分布式調(diào)度可以節(jié)省調(diào)度時間,降低能量消耗,優(yōu)于其他傳統(tǒng)方法,具有一定的適用性。