王雨 劉琳琳



摘要:本文將機器學習算法應用于網絡優化過程,基于網絡流量分類提出一種快速準確的路由選路方案,可應用于多種復雜網絡環境。基于主成分分析及半監督聚類理論提出了一種基于QoS類別的網絡流量分類方案,根據分類結果進行路由選路,選路過程采用Q-Learning算法,通過對Q表的更新進行最佳路徑的選擇。實驗結果表明,該方案具有良好的網絡優化效果。
Abstract: In this paper, machine learning algorithm is applied to network optimization process, and a fast and accurate routing scheme based on network traffic classification is proposed, which can be applied to a variety of complex network environments. Based on principal component analysis and semi-supervised clustering theory, a network traffic classification scheme based on QoS categories is proposed. According to the classification results, the routing is selected. Q-learning algorithm is adopted in the routing process, and the optimal path is selected by updating the Q table. The experimental results show that the scheme has a good network optimization effect.
關鍵詞:機器學習;Q-Learning;SDN;QoS路由分配
Key words: machine learning;Q-Learning;SDN;QoS routing allocation
中圖分類號:TP18;TP391.41? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標識碼:A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文章編號:1006-4311(2020)29-0200-02
0? 引言
在傳統的網絡架構中,有很多的路由選路算法及轉發機制來保證網絡的服務質量[1,2]。近年來,由于網絡環境的復雜變化以及個人便攜式設備的多樣化發展,各種網絡環境中的流量數據迅速增長,傳統的網絡架構及現有的網絡服務保障機制已不足以為大增量的數據提供更好的服務保障。隨著人工智能技術的興起,機器學習等領域不斷展現出新的研究成果和好的應用效果。本文將機器學習理論與SDN網絡優化相結合,提出一種基于QoS類別的強化學習選路算法,將網絡流量按照QoS需求進行分類后,經由強化學習控制模塊進行路由選路,根據選路結果進行轉發,并對轉發后的各個參數進行加權計算,結合網絡流量的時延、丟包率、帶寬利用率等幾個方面判斷選路后的轉發效果。
1? 網絡流量分類
為實現網絡中的數據流量的合理轉發,首先要對數據流量的類別進行劃分。傳統的流量分類方法大多是在離線環境下進行的,不能適應網絡環境多變、數據流量類別日益復雜的發展趨勢。而在線網絡流量識別分類更適用于SDN網絡,在SDN網絡控制層中,采用SDN控制器對網絡流量進行實時分類。
網絡環境中的應用日趨復雜化,許多新型業務正不斷融入于網絡環境中,但大多具有相同或類似的QoS需求。因此,本文根據QoS需求的相似性進行流量分類,將SDN控制器中的不同網絡流量歸屬于特定的QoS類別,以便進行路由選擇。結合網絡現實環境及業務需求,將網絡中數據流量按照應用需求定義為三種QoS類別:INTERACTIVE(交互類流量)、BULK(數據類)、TRANSACTIONAL(會話類)。
在對流量分類器的訓練過程中,由于最初的分類模型僅可以對當前時間節點之前的數據進行集中訓練,而對于網絡中日趨龐大的數據,該模型的泛化性能較差,因此需要對SDN網絡中收集的數據進行增量訓練,從而完成對控制器中網絡流量的實時分類。
1.1 主成分分析
本文將SDN控制器中的網絡流量的統計特征作為分類標準,進行基于QoS類別的分類過程,目前的研究中都是采用對網絡流量特征進行選取的方法來減少訓練樣本維度,但樣本中特征不嚴格服從于獨立同分布,所以選取的特征不能很好的代表數據的實際情況,本文采用全特征數據集表示樣本,并通過主成分分析方法對樣本特征進行降維,在一定程度上減少了噪聲影響。
為了便于統計,對網絡數據中前n個數據流信息進行特征采集,得到248個統計特征,包括數據包最小最大值、平均數據包、端口信息等,經降維處理后得到28個新的統計特征以便于后續訓練分類模型。
主成分分析過程:
輸入:流量樣本集合D={?字1,?字2…?字m}
目標空間維度28
主成分分析過程:
②計算協方差矩陣XXT;
③對協方差矩陣XXT做特征值分解;
④取最大的7個特征值所對應的特征向量:?棕1…?棕28。
輸出:降維后的樣本集合W={?棕1…?棕28}
1.2 半監督K-Means聚類
在對網絡流量數據的特征進行降維后得到一系列可以在分類模塊進行訓練的數據集,分類模塊采用K-Means方法對數據進行聚類,以便將所有網絡流量按照前文規定的三種QoS類型進行分類處理。通過提取離線網絡流量的統計特征,從而計算出k均值算法的k個聚類中心,即三種QoS類別。
在分類模塊開始采用了離線數據進行模型的初始化,對后續的在線流量數據,SDN控制器采用半監督的方式進行擬合,對所有在線流量進行分類,并將分類后的流量進行標記,對分類器進行增量訓練,隨著數據的不斷增多,分類器的分類準確度將不斷趨于完美,能夠產生較好的聚類效果。
在聚類過程中,采用距離最短的方式來重復計算樣本與簇中心的距離,以便確定網絡流量所屬的類別,本文采用歐式距離的計算方式,設新的樣本為具有28個維度的樣本:?字i=(?字i1…?字i28),簇中心為uj=(uj1…uj28)(j=1,2,3),則新增樣本與簇中心的距離為:。
2? 路由優化
2.1 路由選擇評價標準
在經由流量分類模塊對流量進行分類后,通過路由選擇模塊進行路由選擇如圖1,以便于選擇最適合轉發的路徑進行轉發,對于轉發情況的優劣,本文從鏈路時延、分組丟失率及帶寬利用率三個方面來綜合考慮。
考慮到不同類型對以上三種評判指標要求不同,本文采用加權平均值作為評判轉發情況好壞的指標,并作為Q-Learning訓練過程中的獎勵值返回。權重賦值如表1所示。
Q-Learning中獎勵值函數為:
.2 Q-Learning路由選擇過程
在路由選路過程中,每種QoS類別流量各自維護一張Q表用于進行路由選擇,共計三張Q表共同對類別流量進行選擇性轉發,轉發后又上述評價標準對獎勵值進行加權計算,得到反饋的獎勵值,并對Q表進行更新。
Initialize? Q(s,a)arbitrarily
Repeat (for each episode):
Initialize s
Repeat (for each step of episode):
Choose a from s using policy derived from Q(e.g.,?著-greedy)
Take action a, observe r,s′
s←s′
Until s is terminal
3? 實驗結果分析
本文將Moore_set作為標準數據集進行模型實驗,并在同一個站點中,每隔3小時進行一次數據采集,所得到的全特征數據集進行前文所設計的SDN控制器中的分類模塊及路徑選擇模塊的實驗。
在流量分類模塊中首先對基于流的流量數據進行分類操作,得到結果如表2所示。
由于基于在SDN控制器中的基于半監督K-means聚類在初始化之后的一段時間內,數據集中的數據不能得到很好的聚類效果,所以在測試路由選擇模塊的轉發后果時,僅選取第三次采集之后的數據集作為測試數據集,結果如表3所示。
通過以上實驗結果可以得出,Q-Learning強化學習算法在SDN網絡中的路由選擇模塊中具有較好的轉發效果,且強化學習等方法可以在數據中不斷學習,轉發效果將隨時間呈正比例增長趨勢。
4? 結論
本文將機器學習方法引入到網絡優化過程中,設計了一種基于網絡流量分類的SDN環境中的路由選路方法,對比與傳統的路由選路及流量分類方法,本文中的方法可以更好的適用于復雜的網絡環境中,更能滿足用戶的QoS需求,將機器學習理論應用于網絡優化過程具有良好的發展前景。本文的研究也存在著一定的局限性,分類過程中,需要大量的數據擬合才能滿足較好的分類效果,在有限的時間內容易出現過擬合情況;選路過程中,Q表的維護需要巨大的內存開銷,在這方面仍存在不足之處,有待后續研究。
參考文獻:
[1]Seddiki M S, Shahbaz M, Donovan S, et al. FlowQoS: Per-Flow Quality of Service for BroadbandAccess Networks[J]. 2015.
[2]Ko N S, Heo H, Park J D, et al. OpenQFlow: Scalable OpenFlow with Flow-Based QoS[J]. Ieice Transactions on Communications, 2013, E96.B(2):479-488.
[3]YAN Jinyao, ZHANG Hailong, SHUAI Qianjun, et al. HiQoS:An SDN-Based Multipath QoS Solution[J]. 中國通信, 2015, 12(5):123-133.