李菁菁,楊校林,李 俊,馬彤宇,尉書賓
1(中國科學院 計算機網絡信息中心,北京 100190)
2(中國科學院大學,北京 100049)
隨著互聯(lián)網成為社會生產生活所依賴的關鍵基礎設施,科研活動也越來越依賴網絡設施的深度支持.科研活動需要產生和處理的數據規(guī)模急劇增長,對網絡設施快速傳輸處理數據的需求也不斷提高.例如引力波的發(fā)現就有賴于科學家們長達5 個月的觀測和跨洲際高速網絡對觀測數據的采集和傳輸提供強有力支撐,科研活動越來越依賴數據、計算和網絡傳輸的深度融合,海量科研數據快速產生,需要科研專用高速網絡的支持.經過多年發(fā)展,國內外已建立了較為完善的科研專網長期服務科研活動,例如美國的ESNET[1]、Internet2[2]、歐洲GEANT[3],國內的科研專網有中國科技網CSTNet[4]和中國教育網CERNet[5].我國目前已建成和即將建成的大科學裝置基礎設施總量約為55 個左右,隨著大科學裝置運行活動頻度增加、科學采樣指標的擴展和采樣頻率加快,如FAST、BESIII、JUNO、LHAASO、散裂中子源等大科學裝置每年都將產生PB 級的海量異構化數據需要快速傳輸和處理,需要更高質量、大帶寬、低延遲的科研專網服務支撐,促進我國高能物理、氣象觀測、生物信息、生命科學、天文聯(lián)測、遙感觀測、高性能網格計算等科學領域不斷發(fā)展.隨著高速科研專網的建設和發(fā)展,支持了科研用戶實現從原有的自一級站點獲取數據轉化為與遍布世界各地的二級站點共享數據的戰(zhàn)略轉變.網絡節(jié)點數量和網絡流量規(guī)模的急劇膨脹,科研應用類型也越來越豐富多樣.傳統(tǒng)的IP 架構已無法應對高負載業(yè)務接入的需求,科研專網正不斷探索向軟件定義網絡(SDN)等新型架構演進的可行性,以使網絡具備更靈活的調度能力和擴展能力.軟件定義網絡技術通過數據平面和控制平面的分離為網絡管理控制提供了極大的自由度,而靈活的網絡控制能力與精準快速的網絡鏈路流量預測能力結合能為網絡運行管理提供更進一步降低人工干預需求的可能性.科研專網的鏈路流量預測對科研觀測傳輸窗口保障、帶寬資源預留配置、數據分發(fā)傳輸調度等方面起著至關重要的作用.建立有效的科研專網鏈路流量預測模型,能在更靈活數據轉發(fā)控制技術的輔助下更有效支持鏈路資源調度的更優(yōu)決策,還可以幫助科研專網動態(tài)評估當前鏈路中資源使用情況和網絡運行狀況、預測未來流量變化趨勢、對專網鏈路建設規(guī)劃提供決策輔助以及為科研用戶提供更好的傳輸服務質量.
鏈路流量是當前鏈路負載的一種數值表征,是鏈路所屬網絡節(jié)點間流量矩陣的最基本組成單元.鏈路流量預測的方法是根據流量特性設計流量模型以刻畫實際流量的突出特征,用以進行研究和分析.預測模型可以通過輸入歷史流量數據然后輸出對未來流量的預判.流量預測的本質是總結歷史流量特征,推演未來流量特征的過程.當前流量預測模型研究主要分為線性流量預測模型和非線性流量預測模型兩類.常見的線性流量預測模型有泊松模型[6]、馬爾科夫模型[7]、自回歸模型[8]等.互聯(lián)網發(fā)展早期,網絡節(jié)點數量少、規(guī)模小、拓撲簡單、應用單一,因此泊松模型等線性模型在此類場景下應用取得了一定的成績,但是隨著網絡流量復雜度的提高,泊松模型與流量觀察值出現明顯差異.馬爾科夫模型隨著時間尺度的拉大則趨向于一個穩(wěn)定的與初始無關的狀態(tài),使用馬爾科夫模型僅能對臨近的短時間段流量有效.自回歸模型是時間平穩(wěn)序列預測模型,在非時間平穩(wěn)序列中則準確率不高.線性預測模型的本質是刻畫網絡流量的短相關特征,短相關特性是在不同的時間尺度上有不同的特性,但是在長相關特性上有一定缺陷.隨著網絡規(guī)模繼續(xù)發(fā)展且流量組成復雜度增加,學術界發(fā)現了流量的自相似性,由此提出了各種非線性流量預測模型,常見比如有分形布朗運動模型[9]、分形自回歸整合移動平均模型[10]和基于小波的模型[11].分形布朗運動模型能夠完美描述流量的自相似性,但不能描述序列的短相關性,因此不能對同時具有長相關性和短相關性的序列建模.分形自回歸模型可以同時很好地描述流量的長相關性和短相關性,但該模型復雜且參數較多,計算資源開銷過大.小波分析模型可以突出研究對象的特征,但在選取小波基函數時需要滿足小波變換系數之間相互獨立,因此小波基的選取會影響模型的實際效果.隨著機器學習的蓬勃發(fā)展,學術界利用機器學習優(yōu)越的非線性映射能力應用于流量預測領域取得一定的效果,非線性流量模型進入了新的發(fā)展階段,比較典型的模型有支持向量機回歸[12]、循環(huán)神經網絡模型[13]等.支持向量機模型通過窮舉搜索和對比實驗進行模型尋優(yōu),這在很大程度上會影響支持向量機的泛化能力[14].由于梯度爆炸和梯度消失的存在,RNN 神經網絡不能完美的保持記憶,需要通過引入長期記憶和短期記憶解決梯度爆炸和梯度消失的問題[15,16].
互聯(lián)網系統(tǒng)經過多年發(fā)展到當前,網絡鏈路流量的組成更具多樣性和復雜性,流量特征不再表現為簡單的短相關,以往基于線性流量模型無法很好的描述和適配當前網絡流量特征.當前非線性的流量預測模型未過多考慮不同時刻間的數據特征之間的前后關系,在特定的網絡場景中,自變量解釋因變量的變化的能力不足,最終影響整個模型的擬合,導致模型效果一般,因此不能滿足復雜特征的鏈路流量預測.為了提取流量內部的深層細粒度特征,高效擬合特定網絡的流量特征,本文針對LSTM 模型加以改進,提出并實現了一種新的面向科研專網的鏈路流量預測模型:AE-棧式混合LSTM 模型,該模型由自編碼器、雙向LSTM 模型、單向LSTM 模型和全連接層組成.自編碼器可以壓縮輸入數據的特征維度,獲取輸入數據中最穩(wěn)定的特征,較大幅度提升了流量特征的提取能力,雙向LSTM 模型學習輸入不同時刻數據之間的前向聯(lián)系和后向聯(lián)系,構建更高級別的特征.通過自編碼器和雙向LSTM 模型的協(xié)同挖掘不同時刻的數據特征之間的前后依賴關系,LSTM 具有單元內部的自循環(huán)和隱藏層單元的外循環(huán),可更好適配時間序列的長期依賴性.
自編碼器(AutoEncoder,AE)是一種半監(jiān)督學習或無監(jiān)督學習的具備表征學習能力的神經網絡模型,可以被廣泛應用于異常檢測和輸入信息降維.自編碼器模型的功能是將輸入信息作為學習目標,利用反向傳播算法對輸入信息進行表征學習[17].此模型的關鍵特點在于輸出維度遠小于輸入維度,對序列數據的降維能力比較強大.自編碼器模型通過約束信息條件讓潛在特征空間中的潛在特征e(x)具有價值屬性,使得中間層從數據中發(fā)現更穩(wěn)健信息和更關鍵特征,防止模型僅僅學習輸入與輸出之間的恒等關系,即是在編碼器層面限制e(x)的特征維度使其小于輸入x的特征維度.自編碼器的這種高強度降維的轉換過程必然會使最后的輸出結果相對于輸入序列而言存在一定的信息損失,形成中間層的有損信息特征表示,但最終解碼器中的輸出特征是同自編碼器的輸入的特征大致相同,因此在編解碼的過程中,序列數據會經歷高低維度的線性轉換或者非線性轉換,自編碼器在數據經歷有損轉換和有損恢復的過程中,能夠學習到數據中的最重要且穩(wěn)定的特征,同時實現數據降噪.
為了解決科研專網鏈路流量的時序數據預測的問題,本文基于自編碼器的基礎模型優(yōu)化設計了“寬-窄-寬”的網絡結構,通過自監(jiān)督的學習方式完成鏈路網絡流量數據的特征轉換和特征表示.本文設計的自編碼器模型具體結構如圖1(a)所示,編碼器由前3 層全連接網絡組成,解碼器由后2 層全連接網絡組成,其中每一層全連接網絡的具體組成結構如圖1(b)所示,包含Batch Norm 層、全連接層和激活層.給定網絡流量數據x={x1,x2,···,xk,···,xn},其中xk為輸入網絡流量數據的第k個維度,給定特征空間H={h1,h2,···,hk,···,hm},其中,m 圖1 自編碼器AE 模型結構圖 LSTM 神經網絡模型是基于循環(huán)神經網絡進行改進的,在處理時間序列數據時具有比較好的效果.LSTM神經網絡模型的輸出信息與當前時刻的信息、當前時刻的期記憶和當前時刻細胞狀態(tài)(長期記憶)決定,因此在序列預測上得到了廣泛的應用.有研究證明,具有多個隱藏層的深層LSTM 體系結構可以構建更高級別的序列數據特征表示,從而可以更加高效地對序列數據進行預測[18].文獻[19]將BiLSTM 作為隱藏層單元來獲取不同時刻數據特征之間的前后依賴關系,進而進行對交通流量的預測.科研專網的鏈路流量預測需要預測模型更好的捕獲當前鏈路流量中的突發(fā)性、周期性和趨勢性的關鍵特征,同時還需要考慮鏈路流量的內部深層細粒度特征,兼顧不同時刻數據特征的前后依賴關系,為了更好的解決此問題,本文將自編碼器AE、單向LSTM 神經網絡、雙向LSTM 神經網絡和全連接BP 神經網絡組成一種綜合預測模型,用于挖掘科研專網鏈路流量中的深層顯著重要特征,模型的邏輯結構圖如圖2所示. 圖2中的自編碼器AE 模型的主要作用是對歷史鏈路流量進行有損壓縮和有損恢復,進而獲得輸入數據中最重要和最穩(wěn)定的信息;圖2的雙向LSTM(BiLSTM)層的具體結構如圖3所示,其主要作用是在自編碼器的基礎上,進一步學習數據的前后向依賴關系,從而構建更高級別的特征表示;圖2中的LSTM 網絡層的主要作用是在已構建的數據特征之上完成對鏈路流量的預測;全連接層的主要作用是通過降維的方式輸出預測結果,其中添加dropout 層的意義是可以有效緩解過擬合的發(fā)生,在一定程度上達到正則化的效果. 圖2 AE-棧式混合LSTM 模型邏輯結構示意圖 圖3 雙向LSTM 模型結構示意圖 本文實驗采用的科研專網真實的鏈路流量數據,數據采集來自中國科技網(CSTNet)的全國骨干網真實生產環(huán)境中隨機抽取的某一鏈路關聯(lián)節(jié)點的SNMP數據,采集時間周期跨度為315 天.SNMP 協(xié)議是互聯(lián)網工程任務組(Internet Engineering Task Force,IETF)定義的一套專門用來管理網絡設備的網絡管理協(xié)議.表1為中國科技網的SNMP 數據屬性,其中hostId 屬性和hostname 屬性唯一標識一臺監(jiān)測機器設備,portNo屬性標識端口號,inFlowValue 屬性是經過此設備端口的上行流量數目,outFlowValue 屬性是經過此設備端口的下行流量數目,inPackageValue 屬性是經過此設備端口的下行報文數目,outPackageValue 屬性是經過此設備端口下的下行報文數目,datetime 屬性是產生此條SNMP 數據的時間點. 表1 中國科技網(CSTNet)的SNMP 數據屬性 中國科技網CSTNet的監(jiān)測節(jié)點每5 min 生成一條SNMP 數據記錄,因此每天24 h 中產生288 條數據記錄.圖4為7 天內和2 天內的指定鏈路下行流量展示圖,如圖4所示,鏈路流量的特征在局部范圍內具有一定的隨機性、突發(fā)性甚至無序性,但是在全局范圍內具有一定的周期性、趨勢性和自相似性.在流量區(qū)間內,0:00–6:00 鏈路實時流量處于下降趨勢,6:00–8:00 網絡流量總量處于上升趨勢,8:00–21:00 在某個區(qū)間震蕩,21:00–24:00 處于下降趨勢. 圖4 鏈路網絡流量數據展示圖 實驗所采用數據均來源于中國科技網骨干網真實生產環(huán)境內某鏈路節(jié)點,采集過程符合隱私不可逆脫敏要求,僅提取設備端口數據包轉發(fā)的流量計數信息,不涉及和接觸數據包流向信息.經過數據整理和比對去除了少量異常數據點,同時對序列數據中的少量缺失值做了完整化處理,本文采用加權移動平均法對缺失點附近的前3 個時刻和后3 個時刻取值,然后取均值進行填充,經過數據預處理后,最終投入實驗的鏈路流量數據共有90 720 條. 數據采集集中后因為覆蓋的維度范圍較大,會使模型收斂時難以獲取全局最優(yōu)解,也會造成部分指標忽視,因此類數據需要使用進行歸一化處理才能使用.本文通過Min-Max 歸一化(Min-Max normalization)對輸入的采集數據進行處理,對集中的數據進行特征縮放,確保模型在求得最優(yōu)解過程中比較平緩,更容易收斂到模型的最優(yōu)解.Min-Max 歸一化也叫離差歸一化,具體公式見式(4),該方法沒有假設數據符合某種數學分布模型,是對原始數據的線性變化,將數據映射到[0,1]區(qū)間里. 在本應用場景下通過新型預測模型做目標鏈路的流量預測時,需要確定對預測模型的輸入和輸出的粒度尺度,也就是確定輸入已獲取的過去多長時間的鏈路流量給預測模型來期望預測模型輸出可用的未來多長時間內的預測結果.根據科研專網的實際運行需求,一般來說,預測結果的預期一般以一個完整的自然日為通常分析粒度,因此本文需要確定的是如果需要預測未來一個自然日的鏈路流量,則需要輸入的歷史數據的度量應為多少為宜.預測過程的特征選擇模式如圖5所示,圖5中上部的方塊“Model”表示本文提出的AE-棧式混合LSTM 模型.根據現有采集頻度,一天中目標鏈路獲取的SNMP 數據有288 條,所以第1–288條是第1 個自然日的鏈路網絡流量記錄,第289–576條是第2 天的鏈路網絡流量數據,以此類推;Seq_1,Seq_2,…,Seq_n表示每一次的預測,且步長為1.因此需要確定的k值則是所需確認的輸入粒度,同時需要確認模型中具體的參數才能使得本文提出的鏈路流量預測模型實現最優(yōu)的預測輸出. 圖5 特征選擇模式 本文中自編碼器AE 模型使用“寬-窄-寬”的網絡結構,第1 層網絡隱藏單元個數為16,第2 層網絡隱藏單元個數為8,第3 層網絡隱藏單元個數為4,第4 層網絡隱藏單元個數為8,第5 層網絡隱藏單元個數為16.其中的輸入參數為歸一化后的前k天的SNMP 數據的拼接,拼接方法表示為如下: [In flowt?k,Out flowt?k,Inpackaget?k, Outpackaget?k,···,In flowt?1,Out flowt?1, Inpackaget?1,Outpackaget?1] 自編碼器的輸出結果為棧式混合LSTM 模型的輸入參數,棧式混合LSTM 模型的具體參數如圖6所示,本模型由BiLSTM 網絡、LSTM 網絡、dropout 層,全連接層和激活層共同構成.在輸入參數經過的BiLSTM中,第1 個LSTM 網絡設置了96 個隱藏單元,第2 個LSTM 網絡設置了120 個隱藏單元.設置BiLSTM 網絡主要是為了進一步挖掘目標鏈路流量序列數據中的深層次高級特征,學習輸入序列數據的前后依賴關系;緊隨BiLSTM 網絡的是一個單向LSTM 網絡,該網絡設置了120 個隱藏單元;接著進入dropout 層,每次隨機刪掉20%的隱藏神經單元,輸出單元不變;最后一層進入全連接層經過ReLU 激活函數輸出. 圖6 棧式混合LSTM 結構示意圖 在本文中設計實驗來確定使用過去多少天的鏈路流量去預測未來一天的鏈路流量,使用k值表示過去的天數.下文闡述探究k的最優(yōu)值的過程,實驗中使用不同的模型性能評價指標,梯度下降算法選用Adagrad算法,Adagrad 算法是Duchi 在2011年提出的參數自適應梯度下降算法[20],該算法的主要思想是初始時需要設定一個全局的學習率,接下來會自適應且獨立地訓練模型中的參數,給偏導數大的參數設置較大的學習率,給偏導數小的參數設置較小的學習率.為了測試不同的初始學習率為模型訓練帶來的影響,本文中設置的初始學習率分別有0.001,0.002,0.01,0.02,同時數據集按照4:1的比例劃分訓練集和測試集.訓練過程有300 個epoch,每10 個epoch 在測試集上驗證模型效果. 接下來測試k的取值,將k的取值從2 變化至10,其中RMSE的變化如圖7所示.從圖7中可以明顯看出,當k值為4 時,本文的AE-棧式混合LSTM 模型的預測性能最好,同時也可以看出,模型的預測性能并不是隨著輸入參數維度的增加而不斷提升,當輸入維度增加至一定程度時,模型的預測性能將不再變化,甚至會變差. 圖7 k 值的取值測試 通過上述實驗過程以及討論分析,本文中的k值確定為4為最優(yōu)解,即確定預測模型輸入為使用前4 天的鏈路流量,然后模型輸出未來1 天的鏈路流量預測結果.當k值為4 時,模型訓練過程如圖8所示,最終模型在不同學習率下的性能指標參數如表2所示,當學習率為0.001和0.002 時,由于初始學習率過小,不會錯過局部最優(yōu)值,但是此時也意味著模型需要花費更多的時間進行收斂,圖8中顯示過小的學習率并沒有收斂到最優(yōu)值,當學習率(lr)為0.02 時,模型收斂效果最好. 表2 k=4 時的模型評價指標 圖8 k=4 時的不同學習率下的RMSE 對比圖 接下來模型設置參數k值為4 時,輸入中國科技網采集的真實流量數據,模型輸出具體的預測結果對比觀測值如圖9所示.圖9中展示了未來2 天內的鏈路網絡流量預測效果,AE-棧式混合LSTM 模型能夠擬合曲線的趨勢走向且流量預測值比較貼合于流量觀測值. 圖9 k=4 時AE-棧式混合LSTM 模型鏈路流量預測對比 鏈路流量預測是回歸類型問題的一種,在訓練模型和評價模型的階段,需要一系列可量化的指標來評價擬合訓練數據達到模型最優(yōu)解和評價該最優(yōu)解下模型的性能.預測問題多用真實值和預測值之間的差值指標來評價預測模型的優(yōu)劣,而常見的模型評價指標有均方誤差(mean squared error,MSE)、均方根誤差(root mean squared error,RMSE)、平均絕對誤差(mean absolute error,MAE)、平均絕對百分比誤差(mean absolute percentage error,MAPE)、對稱平均絕對百分比誤差(symmetric mean absolute percentage error,SMAPE)和可決系數(R-squared,R2).相關標準定義和計算方法如下. 均方誤差:是真實值與預測值之間誤差平方的期望值,是一種衡量平均誤差較方便的方法,式(5) 是MSE的定義.MSE經常被作為損失函數,在模型訓練和測試過程中,不斷降低MSE值是模型優(yōu)化的目標. 均方根誤差:用來衡量真實值與預測值之間的偏差,其本質是均方誤差的算術平方根,式(6)是RMSE的定義.RMSE經常被用來作為模型測試的指標,RMSE越小,表示模型擬合的越精準. 平均絕對誤差:用來衡量真實值與預測值之間的偏差絕對值,其定義如式(7)所示,相比均方根RMSE,平均絕對誤差MAE對離群點沒有那么敏感,對誤差樣本懲罰較小.MAE越小,模型越精準. 平均絕對百分比誤差:是一種常見的誤差測量統(tǒng)計方式,其定義如式(8)所示,其本質是平均絕對誤差MAE的標準化.MAPE的取值范圍是[0,+∞],MAPE越小,表示模型效果越好,當MAPE的值為0 時,表示該模型是完美模型;MAPE越大,表示模型效果越差,當MAPE的值等于或超過100%時,表示該模型是劣質模型. 對稱平均絕對百分比誤差:MAPE的取值范圍是[0,+∞],對于低預測,即預測值低于觀測值的情況,平均絕對百分比誤差MAPE不會超過100%,但是高預測,即預測值高于觀測值的情況,MAPE沒有預測上限.因此MAPE指標會對高預測施加更大的懲罰,即MAPE指標更加偏向于預測不足而不是過度預測的模型.MAPE是不對稱的,因此引入了能克服不對稱性問題的SMAPE指標加以解決,相關公式如式(9)所示. 可決系數:反映了因變量和自變量的關聯(lián)程度,也即可決系數反映了因變量隨自變量變化的可靠程度.上述的衡量方法的缺陷是沒有預測上限,可決系數的公式如式(10)所示,它的取值范圍是[0,1].可決系數R2越大,表示模型效果越好,當R2的值為1 時,表示自變量能夠完全解釋關于因變量的變化;可決系數R2越小,表示模型效果越差,當R2的值為0 時,表示自變量不能解釋關于因變量的變化. 針對本文提出的新型預測模型的效果評價,使用了標準LSTM 神經網絡、小波神經網絡和Seq2Seq 模型3 種不同類型的模型與之通過實驗進行對比驗證,具體過程和結果分析如下. 標準LSTM 神經網絡設置了120 個隱藏單元,最后由一個全連接層降維輸出預測結果.小波神經網絡為3 層網絡結構,第1 層和第2 層網絡的隱藏單元數量均為96,第3 層網絡的隱藏單元數量為1,作用為降維輸出結果,其中激活函數選用Morlet 母小波基函數,如式(11)所示.Seq2Seq 模型中的RNN 模型具體選用門控神經網絡GRU,其中的GRU 隱藏神經單元數量分別為96和16.對上述3 種模型均使用Adagrad 算法對模型進行訓練,設置300 個epoch,每10 個epoch在測試集上驗證模型效果. 本文提出的AE-棧式混合LSTM 模型與小波神經網絡、Seq2Seq 模型和LSTM 模型在同等設定條件下的驗證實驗結果按照不同的差值評價指標的對比情況如表3所示,結果顯示在中國科技網的驗證環(huán)境中,同等條件下本文提出的新型預測模型與其他3 種不同類型的預測模型相比,按6 種差值指標考察結果均為最優(yōu). 表3 模型性能對比 在R2指標上,新模型比小波神經網絡提高了0.14,比LSTM 模型提高了0.21,這表明新模型能夠更好的挖掘鏈路流量的內部深層細粒度特征,特征作為自變量能夠解釋鏈路流量的變化. 在SMAPE指標上,新模型相比于LSTM 模型下降了10.88%,說明新模型給出的流量預測值與流量觀測值之間的殘差較小,流量預測值更加接近流量觀測值,說明本新模型在科研專網的真實數據集上具有更優(yōu)的表現. 科研專網主要服務于各個不同學科的科研應用數據傳輸,流量特征相比通用大眾網絡而言流量特征更具復雜性,數據類型更具多樣性,應用面向更具廣泛性,傳輸質量要求更具敏感性.現有的預測模型不能很好地擬合業(yè)務流量的變化趨勢,針對這種不足,本文提出了一種新型的基于自編碼器的棧式混合LSTM 模型來針對科研專網的鏈路流量進行預測,在國內典型的科研專網CSTNet的真實生產網運行數據驗證環(huán)境中證明了與標準LSTM、小波模型、Seq2Seq 等其他預測模型相比較,預測結果的精度更優(yōu). 在新型科研范式的推動下,科研數據的流量特征仍然會發(fā)生更復雜的變化,AE-棧式混合LSTM 模型目前還不支持增量訓練,后續(xù)工作需要針對此點進行改進.對于科研專網不斷演化的數據,模型如能進一步支持增量訓練,使模型根據新數據按照周期自動地進行調整,更新模型相關參數時支持增量訓練可以節(jié)約更多的時間成本.2.2 AE-棧式混合LSTM 模型設計
3 模型實證分析
3.1 真實數據采集和數據集整理
3.2 模型實證過程
3.3 差值評價指標
3.4 效果驗證對比分析
4 結束語