◆杜 濤
(山西晉中學院遠程教育學院 山西 030600)
基于BP神經網絡技術的網絡流量預測模型
◆杜 濤
(山西晉中學院遠程教育學院 山西 030600)
隨著計算機網絡技術的不斷發展,互聯網在帶給人們便利性的同時也面臨著諸多安全威脅。計算機網絡流量作為一個重要的網絡安全參數,受到越來越多的重視。建立網絡流量預測模型,不僅可以為網絡性能分析、流量管控等提供支持,還可以更好地解決網絡效率、安全等方面的問題。基于此,本文提出了神經網絡流量預測模型,并相應地驗證了模型的正確性。
網絡流量;BP神經網絡;預測模型
隨著網絡信息技術的飛速發展,越來越多的用戶和產品加入到網絡中來。據聯合國相關機構發布的數據,2016年全球互聯網用戶將達到34億人,占世界人口總數的45%。據思科公司預計,到2016年,全球網絡一年的流量將達到 1.8 ZB。海量的用戶和流量,使得網絡結構變得日趨復雜。在這種情況下,建立準確的網絡流量預測模型就可以為網絡性能分析、流量控制、網絡拓撲結構規劃等提供理論支持,更好地解決網絡效率、安全等問題,改善和保障網絡運行。
網絡流量是指一定時間內通過網絡或網絡端口的數據大小。現實中的網絡流量模型呈現出復雜的非線性關系,受到多種外因的影響。常見的描述網絡流量的模型有FARIMA[1]、灰色模型、SVM、神經網絡模型等。
1.1 FARIMA模型
FARIMA(p,d,q)模型是一種時間序列模型,是ARIMA(p,d,q)模型(Autoregressive Integrated Moving Average Model)的演變[1]。FARIMA模型可以同時對線性和非線性的相關建模,但是不能對突發性等網絡外界因素進行捕捉,計算量大。
1.2 灰色模型
灰色模型的建立基于灰色系統理論,通過找出系統中典型的變化關系建立系統模型。這種模型所需的樣本數據少,精度高,但是容錯性較差,當系統發生任何變化時,灰色模型都需要重新建立。
1.3 神經網絡模型
神經網絡模型是通過模擬自然界中生物復雜的神經元而構造出來的數學模型,是對人腦的一種簡單抽象模擬。神經網絡模型具有較強的容錯性和自主的學習能力,當前廣泛地應用于網絡流量預測、網絡安全預測等方面。
2.1 BP神經網絡
BP神經網絡由輸入層、隱含層和輸出層三部分組成,是一種誤差反傳的前饋多層神經網絡[2]。BP神經網絡每層中各神經元之間不能連通,上下層之間神經元全連通。
BP神經網絡是一種具有自主學習能力的算法,學習過程分為信號正向傳播和誤差逆向傳播兩部分[3]。第一階段信號通過網絡結構和迭代的閥值和權值,從第一層開始正向傳輸,最終從輸出層得到結果。系統會判斷結果是否符合預期,如果不符合則啟動第二階段,這是信號的方向發生逆轉,從輸出層開始逐層調整閥值和權值,如此往復,直到輸出值滿足我們要求為止[4]。
由于神經元的同層不連接性,所以單個神經元具有在任意節點都具有單一的輸出值。設神經元接收其它神經元的值為Xi,相互作用強度即權值為Wi,i=0,1,2,3……n-1,閥值為θ,則這個神經元的輸入為:

相應的輸出為:

式中f()為激發函數,一般為(0,1)內連續取值Sigmoid函數。
預測誤差為:

其中yn(i)為實際流量數據,y(i)為預測輸出。
神經網絡的權值和閥值根據預測誤差不斷修正,其公式為:

2.2 網絡流量預測模型系統實現
流量預測模型的實現步驟如下:
第一步截取網絡流量數據,并初始化相關數據;
第二步基于MATLAB 7.0構建BP神經網絡,并初始化;
第三步對神經網絡進行訓練;
第四步用訓練好的網絡進行預測,對預測數據進行比對。
具體實現過程如圖所示:

圖1 網絡流量預測模型流程圖
在確定模型結構之后,通過華三公司的智能管理中心采集晉中學院校園網接口流量數據作為本論文實驗數據。自2016年3月5日至7日兩天內每10分鐘采集的流量數據信息,共獲得288個流量數據,其中278個做為訓練數據,10個為驗證數據。

圖2 晉中學院48小時流量圖
通過MATLAB 7.0計算機仿真軟件構建網絡流量預測模型,取隱含層節點數為n=5,訓練最大次數取500,學習算法采用梯度下降法函數traingd。
核心代碼如下: