張 慾,敖永霞
(福建農(nóng)林大學(xué)計(jì)算機(jī)與信息學(xué)院,福建 福州 350002)
現(xiàn)今社交網(wǎng)絡(luò)以及移動(dòng)互聯(lián)網(wǎng)等相關(guān)業(yè)務(wù)的快速發(fā)展,數(shù)據(jù)中心作為所有業(yè)務(wù)發(fā)展的基礎(chǔ),已經(jīng)發(fā)生了重大變化。數(shù)據(jù)中心規(guī)模的不斷增加,網(wǎng)絡(luò)業(yè)務(wù)開(kāi)始向著多樣化以及復(fù)雜化發(fā)展,促使網(wǎng)絡(luò)流量增長(zhǎng)速度增加。因此,數(shù)據(jù)中心網(wǎng)絡(luò)的流量調(diào)度已經(jīng)成為當(dāng)前研究的熱點(diǎn)話題[1,2]。
國(guó)內(nèi)相關(guān)專家針對(duì)寬帶流量調(diào)度的問(wèn)題得出了一些較好的研究成果,王耀民等人[3]將FTO算法嵌入到分析預(yù)測(cè)以及在線調(diào)度中,最終獲取網(wǎng)絡(luò)流量調(diào)度的最優(yōu)解和多個(gè)具有價(jià)值的次優(yōu)解。臧韋菲等人[4]優(yōu)先在算法中引入松弛時(shí)間的相關(guān)概念,根據(jù)松弛時(shí)間計(jì)算傳輸時(shí)延寬容度以及時(shí)間流完成時(shí)間,同時(shí)借助最小累積發(fā)送量?jī)?yōu)先策略對(duì)網(wǎng)絡(luò)流量進(jìn)行調(diào)度。由于以上兩種模型未能對(duì)可用帶寬流量進(jìn)行特征提取,導(dǎo)致吞吐量、能量節(jié)省率等指標(biāo)下降,計(jì)算時(shí)延增加。
為改善以上文獻(xiàn)方法存在的應(yīng)用弊端,構(gòu)建一種大數(shù)據(jù)網(wǎng)絡(luò)可用帶寬流量調(diào)度模型,經(jīng)實(shí)驗(yàn)測(cè)試證明:所提模型能夠全面提升寬帶流量調(diào)度的吞吐量、能量節(jié)省率以及內(nèi)存利用率,同時(shí)模型的時(shí)延問(wèn)題也得到了有效降低。
為實(shí)現(xiàn)大數(shù)據(jù)網(wǎng)絡(luò)環(huán)境下可用帶寬流量的特征提取,首先需要構(gòu)建時(shí)間序列,分析不同流量序列之間的結(jié)構(gòu)關(guān)系。設(shè)定可用帶寬流量的時(shí)間序列本體O為式(1)的形式
O={C,I,P,Hc,R,A0}
(1)
式中,C、I、P、Hc、R以及A0分別代表不同的子時(shí)間序列。
在可用帶寬流量數(shù)據(jù)傳輸結(jié)構(gòu)模型的基礎(chǔ)上,需要對(duì)可用帶寬流量特征進(jìn)行自適應(yīng)提取[5,6]。
(2)
將各個(gè)流量時(shí)間序列按照Taylor級(jí)數(shù)進(jìn)行展開(kāi),獲取概率密度函數(shù)f(x),同時(shí)設(shè)定可用帶寬流量時(shí)間序列的第一特征函數(shù)為Φ(ω),將其表示為式(3)的形式
(3)
式中,ω代表權(quán)重取值;E代表累積量。
將隨機(jī)變量的高階矩ck和高階累積量ψ(ω)k兩者進(jìn)行自適應(yīng)分解,進(jìn)而得到兩者之間的關(guān)系,如式(4)所示
(4)
式中,ψk代表分?jǐn)?shù)階等級(jí);ωk代表第k階導(dǎo)數(shù)的權(quán)重取值;ψ(ω)代表片段集合總數(shù)。
通過(guò)流量時(shí)間序列特征函數(shù)對(duì)已有的流量時(shí)間序列進(jìn)行變換,獲取網(wǎng)絡(luò)坐標(biāo)原點(diǎn)的k階累積量最大值,則對(duì)應(yīng)的第一特征函數(shù)mk可以表示為以下的形式
(5)
對(duì)于零均值的隨機(jī)變量而言,可用帶寬流量時(shí)間序列的k階中心距和k階原點(diǎn)距兩者是等價(jià)的。當(dāng)可用帶寬流量時(shí)間序列屬于準(zhǔn)平穩(wěn)隨機(jī)序列時(shí),則說(shuō)明累積量中只包含k-1個(gè)獨(dú)立單元,同時(shí)滿足設(shè)定的約束條件,對(duì)應(yīng)的四階累積量c4x(τ1,τ2,τ3)可以通過(guò)以下形式完成估算
c4x(τ1,τ2,τ3)
(6)
式中,x(i)代表二階累積量。
其中,可用帶寬流量的四階累積量自適應(yīng)提取的特征g(n)可以表示為以下的形式
(7)
在上述分析的基礎(chǔ)上,需要對(duì)可用帶寬流量完成擬合,有效提取四階累積量特征,將提取到的特征設(shè)定為后置聚焦算子,為后續(xù)流量特征提取奠定基礎(chǔ)[7,8]。
利用四階累積量后置聚焦可以對(duì)可用帶寬流量中的噪聲進(jìn)行有效濾除。假設(shè)大數(shù)據(jù)網(wǎng)絡(luò)可用帶寬流量時(shí)間序列中的噪聲項(xiàng)為w(n),對(duì)應(yīng)的表達(dá)式為
w(n)=c4(n,τ)
(8)
假設(shè)w(n)為非高斯色噪聲,需要提取大數(shù)據(jù)網(wǎng)絡(luò)中可用帶寬流量的約束指向特征,同時(shí)采用多普勒實(shí)現(xiàn)信號(hào)調(diào)制,最終獲取四階混合累積量切片算子cw(τ),對(duì)應(yīng)的計(jì)算式如下
(9)
式中,γ代表噪聲產(chǎn)生過(guò)程中的峰度;h(j)和h(j+τ)分別代表不同的數(shù)據(jù)振蕩頻率。
對(duì)可用帶寬流量時(shí)間序列進(jìn)行核變換Kp(t,u),具體的表達(dá)形式如下
(10)
式中,δ代表線性積分;t代表變換用時(shí);u代表算子。
通過(guò)四階累積量對(duì)可用帶寬流量特征進(jìn)行自適應(yīng)提取,具體計(jì)算式如下
(11)
流量分布不均勻是造成網(wǎng)絡(luò)負(fù)載不均衡的主要原因,因此對(duì)于可用帶寬中的小流主要通過(guò)靜態(tài)路由算法ECMP進(jìn)行調(diào)度[9,10],詳細(xì)的操作步驟如下所示:
1)當(dāng)交換機(jī)收到主機(jī)發(fā)送的數(shù)據(jù)流時(shí),需要通過(guò)目的地址判斷是否需要進(jìn)行直連,假設(shè)需要,則直接向下轉(zhuǎn)發(fā);反之,則需要對(duì)流量進(jìn)行判別。
2)當(dāng)交換機(jī)中判別流屬于小流時(shí),則需要借助ECMP進(jìn)行調(diào)度;反之,則需要向控制器發(fā)送對(duì)應(yīng)的消息。
3)控制器根據(jù)在交換機(jī)獲取的拓?fù)?、?fù)載以及時(shí)延等相關(guān)信息,采用ECMP對(duì)大流轉(zhuǎn)發(fā)路徑進(jìn)行計(jì)算,同時(shí)將流表信息進(jìn)行下發(fā),交換機(jī)主要通過(guò)下發(fā)的流表對(duì)大流依次進(jìn)行轉(zhuǎn)發(fā)。
當(dāng)進(jìn)行大流轉(zhuǎn)發(fā)路徑計(jì)算時(shí),需要通過(guò)交換機(jī)獲取對(duì)應(yīng)的網(wǎng)路信息,其中需要將控制器作為判定依據(jù)。在大數(shù)據(jù)網(wǎng)絡(luò)中,可用帶寬流量中變量φ的計(jì)算式為
(12)
式中,b2和b1代表大數(shù)據(jù)網(wǎng)絡(luò)中的交換機(jī)總數(shù);B代表可用帶寬流量的速率。
根據(jù)實(shí)時(shí)監(jiān)測(cè)網(wǎng)絡(luò)中各個(gè)端口和對(duì)應(yīng)鏈路的流量信息,設(shè)定共有P條路徑中包含n條鏈路,則路徑P的實(shí)時(shí)負(fù)載Load可以表示為以下的形式
Load=max{load1,load2,load3,…,loadi,…,loadn}
(13)
各條鏈路上傳輸時(shí)延Num的獲取主要是通過(guò)LLDP數(shù)據(jù)包和Echo數(shù)據(jù)包的時(shí)延經(jīng)過(guò)計(jì)算得到,具體的計(jì)算式為
Num=max{num1,num2,…,muni,…,numn}
(14)
控制器主要獲取的信息為依據(jù),將最小計(jì)算時(shí)延和最大內(nèi)存利用率設(shè)定為目標(biāo)函數(shù),建立大數(shù)據(jù)網(wǎng)絡(luò)可用帶寬流量調(diào)度模型Delay,如式(15)所示
(15)
為了獲取最優(yōu)調(diào)度路徑,需要求解構(gòu)建的調(diào)度模型,以下主要采用蟻群優(yōu)化算法。蟻群算法[11,12]主要具有分布式計(jì)算以及穩(wěn)健性等相關(guān)特點(diǎn),被廣泛應(yīng)用于不同的研究領(lǐng)域中,利用圖1給出蟻群算法的具體操作流程圖。
圖1 蟻群算法操作流程圖
在蟻群優(yōu)化算法中[13,14],螞蟻會(huì)在走過(guò)的路徑下留下一定量的信息素。距離食物越近,釋放的信息素就越多,但是信息素會(huì)隨著時(shí)間的流逝而逐漸揮發(fā)。在蟻群中的其它螞蟻也可以感知到信息素,其中,螞蟻選取路徑的策略如式(16)所示
(16)
以下詳細(xì)給出蟻群算法對(duì)模型進(jìn)行求解的過(guò)程[15]:
1)通過(guò)大流的源交換機(jī)地址以及目的交換機(jī)地址,采用信息統(tǒng)計(jì)模塊計(jì)算獲取k條最短路徑,組成最短路徑集SP,螞蟻在SP中獲取最優(yōu)路徑,路徑的選擇依據(jù)為輪盤賭法,具體計(jì)算式如下
(17)
2)將路徑上的大流數(shù)目和實(shí)時(shí)負(fù)載作為判斷大數(shù)據(jù)網(wǎng)絡(luò)傳輸路徑負(fù)載情況的依據(jù),通過(guò)路徑上的大流數(shù)目對(duì)路徑負(fù)載估算。
3)當(dāng)m只螞蟻完成搜索后會(huì)在各條路徑上釋放信息度。通過(guò)信息素更新方式得到路徑解集合,進(jìn)而達(dá)到提升收斂速度的目的。其中,信息素的更新公式如下
τi(t+n)=(1-ρ)*τi(t)+Δτi(t)
(18)
式中,τi(t+n)代表路徑i信息素濃度變化情況;Δτi(t)代表在t時(shí)間段內(nèi)路徑i上的信息素增量。
4)重復(fù)上述操作過(guò)程,在已有的路徑集中選擇最優(yōu)調(diào)度路徑,同時(shí)對(duì)各個(gè)路徑上的信息素進(jìn)行更新。當(dāng)算法滿足設(shè)定的迭代次數(shù),直接輸出可用帶寬流量最優(yōu)調(diào)度路徑;反之,則返回至步驟2)。
為了驗(yàn)證所提大數(shù)據(jù)網(wǎng)絡(luò)可用帶寬流量調(diào)度模型的有效性,采用20臺(tái)普通物理PC機(jī)構(gòu)建實(shí)驗(yàn)集群。為了確定參數(shù)θ(步長(zhǎng))的具體取值范圍,實(shí)驗(yàn)主要選取吞吐量、計(jì)算時(shí)延、能量節(jié)省率以及內(nèi)存利用率作為基準(zhǔn)測(cè)試指標(biāo)進(jìn)行實(shí)驗(yàn)分析:
1)吞吐量測(cè)試結(jié)果分析/(103tuple·s-1)
選取文獻(xiàn)[3]模型和文獻(xiàn)[4]模型作為測(cè)試對(duì)象,將吞吐量作為測(cè)試指標(biāo),分析不同步長(zhǎng)下各個(gè)模型的吞吐量變化情況。
分析圖2中的實(shí)驗(yàn)數(shù)據(jù)可知,隨著步長(zhǎng)的不斷增加,各個(gè)模型的吞吐量也會(huì)相應(yīng)增加。但是當(dāng)步長(zhǎng)的取值較小時(shí),各個(gè)調(diào)度模型的吞吐量明顯更高一些。和另外兩種調(diào)度模型相比,所提模型的吞吐量明顯更高一些,由于模型建立前期,對(duì)大數(shù)據(jù)網(wǎng)絡(luò)可用帶寬流量進(jìn)行特征提取,這樣可以更好完成流量調(diào)度,進(jìn)而提升吞吐量。
圖2 不同模型的吞吐量測(cè)試結(jié)果對(duì)比
2)計(jì)算時(shí)延測(cè)試結(jié)果分析/ms
在吞吐量不斷增加的過(guò)程中,需要盡可能將計(jì)算時(shí)延降至最低,這樣才能有效保證調(diào)度方法的性能。為了進(jìn)一步驗(yàn)證θ的取值,將計(jì)算時(shí)延作為測(cè)試指標(biāo),分析各個(gè)模型在不同參數(shù)θ下的計(jì)算時(shí)延變化情況,結(jié)果如圖3所示。
圖3 不同模型的計(jì)算時(shí)延測(cè)試結(jié)果對(duì)比
分析圖3中的實(shí)驗(yàn)數(shù)據(jù)可知,當(dāng)θ的取值較小時(shí),計(jì)算時(shí)延明顯較低。同時(shí)和已有的另外兩種調(diào)度模型相比,所提模型的計(jì)算時(shí)延明顯更低一些。
3)能量節(jié)省率測(cè)試結(jié)果分析/%
根據(jù)上述兩組實(shí)驗(yàn),確定了θ的具體取值范圍。以下實(shí)驗(yàn)使用該取值分別對(duì)比三種不同調(diào)度模型的能量節(jié)省率,詳細(xì)的實(shí)驗(yàn)結(jié)果如圖4所示。
圖4 不同調(diào)度模型的能量節(jié)省率測(cè)試結(jié)果對(duì)比
分析圖4中的實(shí)驗(yàn)數(shù)據(jù)可知,當(dāng)θ的取值為0.10時(shí),三種調(diào)度模型的能量節(jié)能率達(dá)到最佳狀態(tài),且所提模型的能量節(jié)省率明顯優(yōu)于另外兩種模型,更進(jìn)一步驗(yàn)證了所提模型的優(yōu)越性。
4)內(nèi)存利用率測(cè)試結(jié)果分析/%
為了進(jìn)一步驗(yàn)證所提模型的調(diào)度性能,實(shí)驗(yàn)對(duì)比不同節(jié)點(diǎn)上三種模型的內(nèi)存利用率變化情況,具體實(shí)驗(yàn)結(jié)果如表1所示。
表1 不同調(diào)度模型的內(nèi)存利用率測(cè)試結(jié)果
分析表1中的實(shí)驗(yàn)數(shù)據(jù)可知,所提模型對(duì)集群性能具有一定優(yōu)化作用,可以有效提升每一個(gè)節(jié)點(diǎn)的內(nèi)存利用率,合理完成負(fù)載均衡,具有良好的調(diào)度性能。
針對(duì)傳統(tǒng)調(diào)度模型存在的一系列問(wèn)題,設(shè)計(jì)并提出一種大數(shù)據(jù)網(wǎng)絡(luò)可用帶寬流量調(diào)度模型。和已有的調(diào)度模型相比,所提模型能夠有效提升吞吐量、能量節(jié)省率以及內(nèi)存利用率,同時(shí)還能夠降低計(jì)算時(shí)延。
由于受到多方面因素的限制,所提模型仍然存在一定的不足,需進(jìn)一步提升網(wǎng)絡(luò)質(zhì)量,同時(shí)考慮如何制定更加具體和完善的調(diào)度方案。且由于研究的數(shù)據(jù)規(guī)模比較大,采用單一的SDN控制器無(wú)法達(dá)到設(shè)定的要求,因此下一階段將重點(diǎn)研究信息部署和共享問(wèn)題。