陸興華,黃浩瀚,邱紀濤,孫宜帆
(廣東工業大學華立學院,廣東 廣州 511325)
當下網絡應用規模不斷擴大,現有的以節點為核心的網絡架構已經在超負荷運作,異構網絡應運而生。所謂異構網絡,是由不同制造商生產的計算機、網絡設備和系統組成的[1],在大部分情況下運行在不同的協議上支持不同的功能或應用。異構網絡通過為用戶提供網絡數據,實現對數據可動態重構和擴展物理網絡的共享[2]。
文獻[3]提出了基于一對多匹配算法的異構網絡數據重構方法。在D2D高密度部署場景下,同時使多個用戶采用相同的蜂窩資源,完成數據重構;文獻[4]提出基于直覺模糊時間序列的網絡數據動態重構算法,根據IFCM平衡節點資源,根據節點反饋完成數據調度,據此完成網絡數據動態重構。以上方法在數據動態重構過程中,異構網絡資源的均衡度較低,數據重構算法有待優化。
針對現有的異構網絡數據動態重構算法存在的問題,設計一種基于節點拓撲感知的異構網絡數據動態重構算法。在時間復雜度內計算出節點位置和權重,建立異構網絡數據的目標矩陣模型,得到階矩陣與權矩陣,進而劃分出具體的節點核心區,設置路由器物理鏈路的帶寬約束優化數據重構資源的分配路徑,將節點核心區劃分為聚類節點來感知數據的動態變化,實現數據的動態重構。
異構網絡是將網絡拓撲與資源狀態等條件優化考慮,提供資源服務的承載網絡,其中,可重構數據可通過動態重構實現資源共享,其重構網絡示意圖如圖1所示。

圖1 重構網絡示意圖
如圖1所示,數據通過節點和鏈路實現動態重構,實現資源均衡,然而重構網絡資源的均衡度過低。其主要原因一是沒有完善的異構網絡數據的目標矩陣模型,二是對于資源分配路徑沒有動態優化措施。因此針對這兩個問題,重新設計基于節點拓撲感知的異構網絡數據動態重構算法。
通過模糊核聚類算法利用非線性變化將待挖掘數據樣本集映射至高維空間內,在高維空間內聚類目標數據,模糊核函數聚類目標函數公式如下:
(1)
其中,n表示數據目標分類數量,且滿足n≥2;T(xk)與Y(xi)分別表示樣本集合的聚類中心以及非線性變換函數。
令目標函數G最小值的聚類準則對樣本集合的聚類中心元素xk以及非線性變換函數元素xi的偏導數為零,可得公式如下:
(2)
(3)
選取符合Mercer條件的高斯核函數作為以上公式的核函數,具體公式為:
(4)
其中,δ表示數據多尺度參數。式(4)也可表示為:
Γ(xk)-Γ(xi)=K(xk,xi)
(5)
將核函數K(xk,xi)=〈Γ(xk),Γ(xi)〉與目標函數相結合,可得:
(6)
其中,Anew與Aold分別表示矩陣更新后與更新前。當‖Anew-Aold‖<δ時,停止迭代計算,通過以上步驟獲取樣本集合的聚類中心元素xk以及非線性變換函數元素xi,當‖Anew-Aold‖≥δ時,轉換至式(6)更新隸屬度矩陣重新計算,其中δ>0為迭代截止誤差值。
通過以上步驟將異構網絡的目標數據映射至高維空間,并利用符合Mercer條件的高斯核函數實現目標數據的有效聚類。
為構建異構網絡數據的目標矩陣,首先要將基礎物理網絡拓撲抽象成數學表達式:
Gs=(Ns,Ls,Cs)
(7)
式中,Ns表示基礎網絡中的節點集合,Ls表示基礎網絡中的鏈路集合,Cs表示基礎網絡的資源提供能力,主要包括節點資源與鏈路資源,節點資源主要包括內存與CPU性能,鏈路資源主要包括鏈路帶寬[5]。在通常情況下,整個網絡的布局規劃中,能夠在時間復雜度內計算出每個節點在網絡中的坐標位置,如表1所示。
在表1中,節點的x坐標為節點到固定邊框左邊界的距離,這時所有節點的權重為節點的寬度,節點的y坐標為節點到固定邊框下邊界的距離,節點的權重為節點的高度[6-7]。在得到各個節點坐標后,能夠建立異構網絡拓撲模型,如圖2所示。

表1 節點在網絡中所對應的坐標

圖2 異構網絡拓撲模型
在構建的模型中,要確定聚類節點的數目,也就是路由器的數目,這影響異構網絡的路由器數量和路由器之間的通信需求,對拓撲結構也有一定的影響。在構建的異構網絡拓撲模型中,其連接信息可以用權矩陣來表達[8],權矩陣本質上是一個包含節點之間連接權重的二維矩陣,其元素的生成方式如下式所示:
(8)
在構建的網絡模型中,構造出M×M的階矩陣A=(aij),其中節點i和節點j之間如果相連,對應的系數為1,否則,對應系數為0,即相同節點之間的對角線系數為0[9]。
上述簡易6節點異構網絡圖中的數據權矩陣模型可以表示為:

(9)
至此完成了異構網絡數據目標矩陣模型的構建。
在上文構建的異構網絡數據目標矩陣模型中,包含著一定數量的節點和布圖規劃,節點之間的數據重構資源的通信流分配路徑的優化成為設計的關鍵問題。數據重構資源通信流的路徑分配結果決定著異構網絡的資源均衡度[10],為了確保鏈路帶寬的負載平衡,在路徑分配過程中可以通過設置路由器物理鏈路的帶寬約束來實現。路由器頂點si∈S,其資源通信量大小的關系表達公式為:
(10)
si,sj均代表路由器節點,負責與矩陣模型中的節點進行數據重構的資源分配[11],節點之間的分配路徑如圖3所示。

圖3 節點核心區數據重構分配路徑
從圖3可以得知,6個節點核心區之間的資源數據流只需要通過總線進行通信。至此完成了數據重構資源分配路徑的優化。
在上述優化過的分配路徑中,為了實現數據的動態重構,需要將節點核心區通過特定的聚類方式劃分為3個聚類節點,即clu1、clu2和clu3,為每一個節點核心聚類節點拓撲感知一個路由器數據的動態變化,來實現全局的數據動態重構[12-13]。聚類節點的詳細劃分如圖4所示。

圖4 節點聚類
通過上述的節點聚類劃分,能夠完成全局范圍的動態配置,在資源感知和數據重構階段串行進行交替,減少資源的空閑時間,其公式化定義如下所示:

(11)
其中,fcap(i,j)表示任意兩個異構網絡數據之間的重構階段,對于一些約束條件的限制問題,可以通過拉格朗日乘子吸收到目標路徑中,減少了一些約束條件,轉化為拉格朗日乘子問題。至此完成了基于節點拓撲感知的異構網絡數據動態重構算法的設計[14-16]。
為驗證文中設計算法的有效性,設計仿真實驗。并采用文獻[3]方法和文獻[4]方法為實驗對照組,對3種算法的資源均衡度進行討論。實驗選取不同方法的節點均衡度以及鏈路均衡度作為測試指標,指標的計算方法在下文給出,具體實驗結果如下:
算法的資源均衡度主要包括兩個方面,一是節點均衡度,另一個是鏈路均衡度。為了使實驗結果更加具有說服力,需要將兩種算法的節點均衡度與鏈路均衡度分別進行比較。本實驗采用OPNET Technology公司的OPNET Modeler平臺進行仿真,它能夠提供三層建模機制,基本模型庫也相對齊全,提供了和網管系統、流量監測系統的接口,能夠方便地利用現有的拓撲和流量數據建立仿真模型,同時還可對仿真結果進行驗證。仿真網絡中的實驗測試用例以及參數如表2所示。

表2 實驗測試用例以及參數設置
在本實驗的網絡架構中,總的配置比特流長度為148 561 285 bits,當采用最大帶寬的配置模式,能夠計算出配置時間,并取10次獨立運行的平均值,進而計算出異構網絡中的節點均衡度和鏈路均衡度。
在構建異構網絡時,整個底層網絡上所用節點的平均處理能力與最大處理能力之比,為節點均衡度,其計算方程式為:
(12)


圖5 節點均衡度對比結果
從節點均衡度的對比結果可以看出,隨著構建請求數量的增多,兩種算法的節點均衡度都有所變化。在構建請求總數為80次的實驗中,文獻[3]算法的節點均衡度平均值為0.68,文獻[4]算法的節點均衡度平均值為0.52,文中算法的節點均衡度的平均值為0.93。根據上述實驗結果可以得出,文中算法的節點均衡度高于傳統算法。
整個底層網絡上所用鏈路的平均利用率與最大鏈路利用率之比,為鏈路均衡度,其計算方程式為:
(13)
式中,M為鏈路總數,Lj為單條鏈路的平均利用率,Lmax為最大鏈路利用率。實驗中隨著異構網絡構建數量的增加,計算并統計出3種算法的鏈路均衡度情況,如圖6所示。

圖6 鏈路均衡度對比結果
從鏈路均衡度的對比結果可以看出,隨著構建請求數量的增多,兩種算法的鏈路均衡度都有所變化。在構建請求總數為80次的實驗中,文獻[3]算法的鏈路均衡度的平均值為0.65,文獻[4]算法的鏈路均衡度的平均值為0.55,文中算法的鏈路均衡度的平均值為0.90,由此能夠得出,文中算法的鏈路均衡度高于傳統算法。
為進一步驗證所提算法的應用有效性,以數重構資源分配路徑作為實驗指標,對比不同算法的性能測試結果。數據重構資源分配路徑的精度越高,說明資源分配的越精準,算法的數據重構效果越好。具體實驗結果如圖7所示。

圖7 不同算法的數據重構資源分配路徑精度
根據圖7的實驗結果可知,所提算法下數據重構資源的分配路徑精度更高,平均精度水平在95%以上。而另外兩種算法的資源分配精度測試結果并不理想,說明傳統方法無法得以有效應用。
綜上所述,通過對三種算法的節點均衡度、鏈路均衡度以及數據重構資源分配路徑精度的比較,實驗結果顯示所提算法的節點均衡度比傳統算法高0.29,所提算法的鏈路均衡度比傳統算法高0.32,且該算法的數據重構資源分配路徑精度更高,因此可以得出結論,文中算法的數據重構效果優于傳統算法。
高效地利用異構網絡數據資源,使資源均衡度最大化,是數據動態重構算法的主要目標。通過聚類目標數據,建立異構網絡拓撲模型和優化資源分配路徑,對基于節點拓撲感知的異構網絡數據動態重構算法進行設計,實驗結果表明,設計的算法節點均衡度高于對比算法,鏈路均衡度同樣高于對比算法,因此可以得出,設計的算法的資源均衡度更優。