張 慾,敖永霞
(福建農林大學計算機與信息學院,福建 福州 350002)
現今社交網絡以及移動互聯網等相關業務的快速發展,數據中心作為所有業務發展的基礎,已經發生了重大變化。數據中心規模的不斷增加,網絡業務開始向著多樣化以及復雜化發展,促使網絡流量增長速度增加。因此,數據中心網絡的流量調度已經成為當前研究的熱點話題[1,2]。
國內相關專家針對寬帶流量調度的問題得出了一些較好的研究成果,王耀民等人[3]將FTO算法嵌入到分析預測以及在線調度中,最終獲取網絡流量調度的最優解和多個具有價值的次優解。臧韋菲等人[4]優先在算法中引入松弛時間的相關概念,根據松弛時間計算傳輸時延寬容度以及時間流完成時間,同時借助最小累積發送量優先策略對網絡流量進行調度。由于以上兩種模型未能對可用帶寬流量進行特征提取,導致吞吐量、能量節省率等指標下降,計算時延增加。
為改善以上文獻方法存在的應用弊端,構建一種大數據網絡可用帶寬流量調度模型,經實驗測試證明:所提模型能夠全面提升寬帶流量調度的吞吐量、能量節省率以及內存利用率,同時模型的時延問題也得到了有效降低。
為實現大數據網絡環境下可用帶寬流量的特征提取,首先需要構建時間序列,分析不同流量序列之間的結構關系。設定可用帶寬流量的時間序列本體O為式(1)的形式
O={C,I,P,Hc,R,A0}
(1)
式中,C、I、P、Hc、R以及A0分別代表不同的子時間序列。
在可用帶寬流量數據傳輸結構模型的基礎上,需要對可用帶寬流量特征進行自適應提取[5,6]。


(2)

將各個流量時間序列按照Taylor級數進行展開,獲取概率密度函數f(x),同時設定可用帶寬流量時間序列的第一特征函數為Φ(ω),將其表示為式(3)的形式

(3)
式中,ω代表權重取值;E代表累積量。
將隨機變量的高階矩ck和高階累積量ψ(ω)k兩者進行自適應分解,進而得到兩者之間的關系,如式(4)所示

(4)
式中,ψk代表分數階等級;ωk代表第k階導數的權重取值;ψ(ω)代表片段集合總數。
通過流量時間序列特征函數對已有的流量時間序列進行變換,獲取網絡坐標原點的k階累積量最大值,則對應的第一特征函數mk可以表示為以下的形式

(5)
對于零均值的隨機變量而言,可用帶寬流量時間序列的k階中心距和k階原點距兩者是等價的。當可用帶寬流量時間序列屬于準平穩隨機序列時,則說明累積量中只包含k-1個獨立單元,同時滿足設定的約束條件,對應的四階累積量c4x(τ1,τ2,τ3)可以通過以下形式完成估算
c4x(τ1,τ2,τ3)

(6)
式中,x(i)代表二階累積量。
其中,可用帶寬流量的四階累積量自適應提取的特征g(n)可以表示為以下的形式

(7)
在上述分析的基礎上,需要對可用帶寬流量完成擬合,有效提取四階累積量特征,將提取到的特征設定為后置聚焦算子,為后續流量特征提取奠定基礎[7,8]。
利用四階累積量后置聚焦可以對可用帶寬流量中的噪聲進行有效濾除。假設大數據網絡可用帶寬流量時間序列中的噪聲項為w(n),對應的表達式為
w(n)=c4(n,τ)
(8)
假設w(n)為非高斯色噪聲,需要提取大數據網絡中可用帶寬流量的約束指向特征,同時采用多普勒實現信號調制,最終獲取四階混合累積量切片算子cw(τ),對應的計算式如下

(9)
式中,γ代表噪聲產生過程中的峰度;h(j)和h(j+τ)分別代表不同的數據振蕩頻率。
對可用帶寬流量時間序列進行核變換Kp(t,u),具體的表達形式如下

(10)
式中,δ代表線性積分;t代表變換用時;u代表算子。
通過四階累積量對可用帶寬流量特征進行自適應提取,具體計算式如下

(11)
流量分布不均勻是造成網絡負載不均衡的主要原因,因此對于可用帶寬中的小流主要通過靜態路由算法ECMP進行調度[9,10],詳細的操作步驟如下所示:
1)當交換機收到主機發送的數據流時,需要通過目的地址判斷是否需要進行直連,假設需要,則直接向下轉發;反之,則需要對流量進行判別。
2)當交換機中判別流屬于小流時,則需要借助ECMP進行調度;反之,則需要向控制器發送對應的消息。
3)控制器根據在交換機獲取的拓撲、負載以及時延等相關信息,采用ECMP對大流轉發路徑進行計算,同時將流表信息進行下發,交換機主要通過下發的流表對大流依次進行轉發。
當進行大流轉發路徑計算時,需要通過交換機獲取對應的網路信息,其中需要將控制器作為判定依據。在大數據網絡中,可用帶寬流量中變量φ的計算式為

(12)
式中,b2和b1代表大數據網絡中的交換機總數;B代表可用帶寬流量的速率。
根據實時監測網絡中各個端口和對應鏈路的流量信息,設定共有P條路徑中包含n條鏈路,則路徑P的實時負載Load可以表示為以下的形式
Load=max{load1,load2,load3,…,loadi,…,loadn}
(13)
各條鏈路上傳輸時延Num的獲取主要是通過LLDP數據包和Echo數據包的時延經過計算得到,具體的計算式為
Num=max{num1,num2,…,muni,…,numn}
(14)
控制器主要獲取的信息為依據,將最小計算時延和最大內存利用率設定為目標函數,建立大數據網絡可用帶寬流量調度模型Delay,如式(15)所示

(15)
為了獲取最優調度路徑,需要求解構建的調度模型,以下主要采用蟻群優化算法。蟻群算法[11,12]主要具有分布式計算以及穩健性等相關特點,被廣泛應用于不同的研究領域中,利用圖1給出蟻群算法的具體操作流程圖。

圖1 蟻群算法操作流程圖
在蟻群優化算法中[13,14],螞蟻會在走過的路徑下留下一定量的信息素。距離食物越近,釋放的信息素就越多,但是信息素會隨著時間的流逝而逐漸揮發。在蟻群中的其它螞蟻也可以感知到信息素,其中,螞蟻選取路徑的策略如式(16)所示

(16)

以下詳細給出蟻群算法對模型進行求解的過程[15]:
1)通過大流的源交換機地址以及目的交換機地址,采用信息統計模塊計算獲取k條最短路徑,組成最短路徑集SP,螞蟻在SP中獲取最優路徑,路徑的選擇依據為輪盤賭法,具體計算式如下

(17)

2)將路徑上的大流數目和實時負載作為判斷大數據網絡傳輸路徑負載情況的依據,通過路徑上的大流數目對路徑負載估算。
3)當m只螞蟻完成搜索后會在各條路徑上釋放信息度。通過信息素更新方式得到路徑解集合,進而達到提升收斂速度的目的。其中,信息素的更新公式如下
τi(t+n)=(1-ρ)*τi(t)+Δτi(t)
(18)
式中,τi(t+n)代表路徑i信息素濃度變化情況;Δτi(t)代表在t時間段內路徑i上的信息素增量。
4)重復上述操作過程,在已有的路徑集中選擇最優調度路徑,同時對各個路徑上的信息素進行更新。當算法滿足設定的迭代次數,直接輸出可用帶寬流量最優調度路徑;反之,則返回至步驟2)。
為了驗證所提大數據網絡可用帶寬流量調度模型的有效性,采用20臺普通物理PC機構建實驗集群。為了確定參數θ(步長)的具體取值范圍,實驗主要選取吞吐量、計算時延、能量節省率以及內存利用率作為基準測試指標進行實驗分析:
1)吞吐量測試結果分析/(103tuple·s-1)
選取文獻[3]模型和文獻[4]模型作為測試對象,將吞吐量作為測試指標,分析不同步長下各個模型的吞吐量變化情況。
分析圖2中的實驗數據可知,隨著步長的不斷增加,各個模型的吞吐量也會相應增加。但是當步長的取值較小時,各個調度模型的吞吐量明顯更高一些。和另外兩種調度模型相比,所提模型的吞吐量明顯更高一些,由于模型建立前期,對大數據網絡可用帶寬流量進行特征提取,這樣可以更好完成流量調度,進而提升吞吐量。

圖2 不同模型的吞吐量測試結果對比
2)計算時延測試結果分析/ms
在吞吐量不斷增加的過程中,需要盡可能將計算時延降至最低,這樣才能有效保證調度方法的性能。為了進一步驗證θ的取值,將計算時延作為測試指標,分析各個模型在不同參數θ下的計算時延變化情況,結果如圖3所示。

圖3 不同模型的計算時延測試結果對比
分析圖3中的實驗數據可知,當θ的取值較小時,計算時延明顯較低。同時和已有的另外兩種調度模型相比,所提模型的計算時延明顯更低一些。
3)能量節省率測試結果分析/%
根據上述兩組實驗,確定了θ的具體取值范圍。以下實驗使用該取值分別對比三種不同調度模型的能量節省率,詳細的實驗結果如圖4所示。

圖4 不同調度模型的能量節省率測試結果對比
分析圖4中的實驗數據可知,當θ的取值為0.10時,三種調度模型的能量節能率達到最佳狀態,且所提模型的能量節省率明顯優于另外兩種模型,更進一步驗證了所提模型的優越性。
4)內存利用率測試結果分析/%
為了進一步驗證所提模型的調度性能,實驗對比不同節點上三種模型的內存利用率變化情況,具體實驗結果如表1所示。

表1 不同調度模型的內存利用率測試結果
分析表1中的實驗數據可知,所提模型對集群性能具有一定優化作用,可以有效提升每一個節點的內存利用率,合理完成負載均衡,具有良好的調度性能。
針對傳統調度模型存在的一系列問題,設計并提出一種大數據網絡可用帶寬流量調度模型。和已有的調度模型相比,所提模型能夠有效提升吞吐量、能量節省率以及內存利用率,同時還能夠降低計算時延。
由于受到多方面因素的限制,所提模型仍然存在一定的不足,需進一步提升網絡質量,同時考慮如何制定更加具體和完善的調度方案。且由于研究的數據規模比較大,采用單一的SDN控制器無法達到設定的要求,因此下一階段將重點研究信息部署和共享問題。