專利名稱:一種基于arma模型和混沌時間序列模型的流量分析方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)流量控制與異常流量監(jiān)測,尤其涉及一種基于ARMA模型和混沌時間序列模型的流量分析方法,屬于網(wǎng)絡(luò)流量控制技術(shù)領(lǐng)域。
背景技術(shù):
如何提高大型骨干網(wǎng)絡(luò)的可用性,最大化地保證骨干網(wǎng)絡(luò)的可控性和有效性,已經(jīng)成為政府機構(gòu)、企業(yè)、服務(wù)提供商、數(shù)據(jù)中心等進行網(wǎng)絡(luò)安全建設(shè)時的重點和難點。對各種異常流量行為對網(wǎng)絡(luò)骨干的充斥,極大地增加了網(wǎng)絡(luò)資源的壓力,過多消耗了網(wǎng)絡(luò)資源, 在很大程度上影響到正常業(yè)務(wù)的運行。嚴(yán)重時,這些異常網(wǎng)絡(luò)行為會造成網(wǎng)絡(luò)癱瘓,正常業(yè)務(wù)的中斷。因此對于骨干網(wǎng)絡(luò)的運維提出了新的監(jiān)測分析的需求,主要體現(xiàn)在對于流量的預(yù)測,異常流量的檢測和流量控制。由于技術(shù)的不斷更新、需求的持續(xù)增長以及業(yè)務(wù)的不斷擴大,網(wǎng)絡(luò)的行為機制、管理模式的描述也更加困難。使用能夠準(zhǔn)確反映網(wǎng)絡(luò)狀態(tài)和行為的理論和模型來對網(wǎng)絡(luò)進行研究,并進行定量的分析與評估,已經(jīng)成為未來網(wǎng)絡(luò)急需優(yōu)先攻克的關(guān)鍵問題之一?;煦绗F(xiàn)象的發(fā)現(xiàn)開創(chuàng)了科學(xué)模型化的一個典范一方面,混沌現(xiàn)象所固有的確定性表明許多隨機現(xiàn)象實際上是可以預(yù)測的;另一方面,混沌現(xiàn)象所固有的對初值的敏感依賴性有意味著預(yù)測能力受到新的根本性限制,混沌現(xiàn)象是短期可以預(yù)測的,而長期是不能預(yù)測的。根據(jù)I^ckard等提出的重構(gòu)相空間理論可知,對于決定系統(tǒng)長期演化的任一變量的時間演化,均包含了系統(tǒng)所有變量長期演化的信息。因此,我們可以通過決定系統(tǒng)長期演化的任一單變量時間序列來研究系統(tǒng)的混沌行為。而吸引子的不變量——關(guān)聯(lián)維(系統(tǒng)復(fù)雜度的估計)jolmogorov熵(動力系統(tǒng)的混沌水平),Lyapunov指數(shù)(系統(tǒng)的特征指數(shù)) 等在表征系統(tǒng)的混沌性質(zhì)方面一直起著重要的作用。其中,Lyapimov指數(shù)——量化初始閉軌道的指數(shù)發(fā)散和估計系統(tǒng)的混沌量,它從整體上反映了動力系統(tǒng)的混沌量水平,因此,基于混沌時間序列的Lyapimov指數(shù)計算和預(yù)測顯得尤為重要。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于ARMA模型和混沌時間序列模型的流量分析方法能實現(xiàn)流量采集和特征提取、流量分析、流量預(yù)測和異常流量檢測。首先對流量進行監(jiān)聽和統(tǒng)計,通過計算Hurst指數(shù)、ARMA參數(shù)、分?jǐn)?shù)差分、關(guān)聯(lián)維度、時間延遲并估計Lyapimov指數(shù);根據(jù)流量分析提供的參數(shù)和預(yù)報公式對樣本點進行一定步長的預(yù)測,并根據(jù)Hurst指數(shù)的變化預(yù)警網(wǎng)絡(luò)中的異常流量。本發(fā)明的技術(shù)方案具體為一種基于ARMA模型和混沌時間序列模型的流量分析方法,其特征在于,包括以下各步驟步驟1 監(jiān)聽網(wǎng)絡(luò)中的流量,由網(wǎng)絡(luò)設(shè)備驅(qū)動截獲原始數(shù)據(jù)包,進行流量的統(tǒng)計、寫入數(shù)據(jù)庫和日志文件;步驟2:進行流量分析,計算Hurst指數(shù)、ARMA參數(shù)、分?jǐn)?shù)差分、關(guān)聯(lián)維度、時間延遲并估計Lyapunov才旨;步驟3 根據(jù)流量分析提供的參數(shù)和預(yù)報公式對樣本點進行基于誤差自反饋的 Lyapunov指數(shù)流量預(yù)測;步驟4 進行異常流量檢測,根據(jù)Hurst指數(shù)的變化預(yù)警網(wǎng)絡(luò)中的異常流量。相比現(xiàn)有的路由算法,本發(fā)明方法具有以下優(yōu)點一、以網(wǎng)絡(luò)流量的特性為起點,通過分析與研究網(wǎng)絡(luò)流量,實現(xiàn)了對網(wǎng)絡(luò)流量的預(yù)測與異常流量的檢測,具有很好的實際預(yù)測應(yīng)用價值;二、實時監(jiān)控網(wǎng)絡(luò)的流量,并用基于誤差自反饋的Lyapimov指數(shù)流量預(yù)測算法預(yù)測網(wǎng)絡(luò)流量,提高了預(yù)測的準(zhǔn)確性。三、通過對流量進行監(jiān)聽和統(tǒng)計,計算相關(guān)網(wǎng)絡(luò)流量特性指,并以此為基礎(chǔ)進行流量預(yù)測和異常流量預(yù)警,實現(xiàn)了網(wǎng)絡(luò)的可管理、可控制。
圖1為本發(fā)明的基于ARMA模型和混沌時間序列模型的流量分析方法框架圖。圖2為基于ARMA模型和混沌時間序列模型的流量分析方法流程圖。
具體實施例方式下面結(jié)合附圖對本發(fā)明的技術(shù)方案進行詳細(xì)說明如附圖1所示,本發(fā)明方法按照以下步驟進行流量控制與異常流量監(jiān)測步驟1 監(jiān)聽網(wǎng)絡(luò)中的流量,由網(wǎng)絡(luò)設(shè)備驅(qū)動截獲原始數(shù)據(jù)包,進行流量的統(tǒng)計、 寫入數(shù)據(jù)庫和日志文件。網(wǎng)絡(luò)流量的采集必須繞過操作系統(tǒng)的協(xié)議棧來訪問在網(wǎng)絡(luò)上傳輸?shù)脑紨?shù)據(jù)包,這就要求一部分運行在操作系統(tǒng)核心內(nèi)部,直接與網(wǎng)絡(luò)接口驅(qū)動交互。本方法使用了 Winpcap的兩個不同的庫paCket. dll和wpcap. dll。前者提供了一個底層API,伴隨著一個獨立于Microsoft操作系統(tǒng)的編程接口,這些API可以直接用來訪問驅(qū)動的函數(shù);后者導(dǎo)出了一組更強大的與Iibpcap —致的高層抓包函數(shù)庫。這些函數(shù)使得數(shù)據(jù)包的捕獲以一種與網(wǎng)絡(luò)硬件和操作系統(tǒng)無關(guān)的方式進行。網(wǎng)絡(luò)數(shù)據(jù)包首先在核心層被網(wǎng)絡(luò)設(shè)備驅(qū)動截獲,然后轉(zhuǎn)給用戶層的Packet, dll, 在轉(zhuǎn)發(fā)給Wpcap. dll,由Wpcap. dll通過統(tǒng)一的應(yīng)用程序接口提供給用戶程序。步驟2:進行流量分析,計算Hurst指數(shù)、ARMA參數(shù)、分?jǐn)?shù)差分、關(guān)聯(lián)維度、時間延遲并估計 Lyapunov(I)Hurst指數(shù)的估計。Hurst指數(shù)的估計方法主要分為時域的時間方差法,變標(biāo)度極差分析法,絕對值方差法,和變換域的周期圖法,小波分析法。這些方法的基本原理都是對時間序列進行多尺度分析,考察時間序列在不同尺度下的相似性。其中小波分析法由與其本身具備的多尺度分析和較強的抗噪聲性能,在估計自相似指數(shù)時具有較高的準(zhǔn)確性和較短的計算時間。(2) ARMA參數(shù)的提取。ARMA參數(shù)的提取涉及到ARMA模型階數(shù)、自回歸系數(shù)和滑動平均系數(shù)的估計。對于ARMA模型較為難判斷,一般采用由低階到高階逐個試探的方法,根據(jù)一定的準(zhǔn)則來選取階數(shù)。常用的定階準(zhǔn)則是赤池提出的AIC準(zhǔn)則。在確定了模型的自回歸和滑動平均階數(shù)后就可以對模型的自回歸系數(shù)和滑動平均系數(shù)進行估計。先估計出自回歸部分的參數(shù),根據(jù)自回歸系數(shù)和自相關(guān)函數(shù)的關(guān)系矩陣、樣本點的自相關(guān)函數(shù)的值,可以估計出自相關(guān)系數(shù);選取一組初始值,進行重復(fù)迭代,直到參數(shù)變化不大,達(dá)到精確要求的自回歸系數(shù)和滑動平均系數(shù)為止。(3)關(guān)聯(lián)維數(shù)的計算。關(guān)聯(lián)維數(shù)的計算方法采用Grassberger和Procaccia提出的G-P算法。時間延遲的選取方法主要有序列相關(guān)法(自相關(guān)法,互信息量法,高階相關(guān)法),相空間擴展法(填充因子法,擺動量法,平均位移法,SVF法)。其中G-P算法中雖然能夠較為準(zhǔn)確的計算出系統(tǒng)的關(guān)聯(lián)維數(shù),但是算法的時間復(fù)雜度為0((! -! )N2),m0和md為嵌入維數(shù),d為關(guān)聯(lián)維數(shù),N為樣本序列長度。在樣本序列比較大時,算法的計算時間較長。使用G-P算法對長度為5000的局域網(wǎng)流量樣本序列進行關(guān)聯(lián)維數(shù)的估計需要25 30個小時的時間,而且這是在3臺服務(wù)器上進行并行計算的時間,這極大地限制了混沌時間序列模型在小時間粒度上的應(yīng)用。經(jīng)過分析,G-P算法計算時間較長主要有以下四個原因(1)循環(huán)結(jié)構(gòu)多;(2)范數(shù)計算耗時;(3)存在著重復(fù)計算; (4) Matlab交互性運行環(huán)境計算效率較低。循環(huán)結(jié)構(gòu)一般是計算精確的需要,基本上無法減少。為了進一步縮短關(guān)聯(lián)維數(shù)的估計時間,本發(fā)明從相空間重構(gòu)的理論出發(fā),結(jié)合貪心算法的思想,提出了貪心G-P算法。貪心G-P算法的具體步驟為1)根據(jù)經(jīng)驗估計關(guān)聯(lián)維數(shù)的值,根據(jù)Nmm選取樣本序列;2)選擇時間延遲,范圍通常選擇為1 20 ;
N3)計算最大嵌入維數(shù)Wmax 二 ρ—(P的初始值為0.8)和次大嵌入維數(shù)
τ
N
=P一-1對應(yīng)的關(guān)聯(lián)維數(shù),如果相同則算法結(jié)束,否則轉(zhuǎn)步驟2 ; τ4)如果ρ = 1則算法結(jié)束;否則增大P,轉(zhuǎn)步驟2)。其中N為樣本序列長度,Nfflin為最小樣本序列長度,d為吸引子的維數(shù),τ為時間延遲。(4)Lyapunov指數(shù)的計算。Lyapimov指數(shù)(混沌系統(tǒng)的特征指數(shù))等在表征系統(tǒng)的混沌性質(zhì)方面一直起著重要的作用。它不僅可以用來判斷動力系統(tǒng)是否是混沌的, 而且可以對混沌時間序列進行預(yù)測。當(dāng)關(guān)聯(lián)維數(shù)和時間延遲確定以后,我們就可以重構(gòu)系統(tǒng)的相空間,并估計系統(tǒng)的Lyapimov指數(shù)。Lyapimov指數(shù)的估計方法主要有Wolf方法, Jocobian方法和小數(shù)據(jù)量方法。步驟3 根據(jù)流量分析提供的參數(shù)和預(yù)報公式對樣本點進行基于誤差自反饋的 Lyapunov指數(shù)流量預(yù)測。Lyapimov指數(shù)的計算需要使用關(guān)聯(lián)維數(shù)和時間延遲作為參數(shù),而計算關(guān)聯(lián)維數(shù)的G-P算法計算時間比較長(主要是其中的關(guān)聯(lián)積分的漸進時間復(fù)雜度為0(n2)),因此要實現(xiàn)Lyapimov指數(shù)的準(zhǔn)確實時計算幾乎是不可能的。在未發(fā)現(xiàn)計算關(guān)聯(lián)維數(shù)更加快捷的算法之前,本方法采用一種基于誤差自反饋的Lyapimov指數(shù)流量預(yù)測算法FLPA (Flow Lyapunov Prediction Algorithm)。核心思想是根據(jù)經(jīng)驗先確定關(guān)聯(lián)維數(shù)和時間延遲,并作為參數(shù)計算Lyapimov指數(shù),再根據(jù)Lyapimov指數(shù)預(yù)測后續(xù)的流量序列,然后計算估計偏差的總和,當(dāng)偏差總和大于設(shè)定的精度要求時,增大嵌入維數(shù)重新計算Lyapimov指數(shù),直到估計序列達(dá)到精度要求或者嵌入維數(shù)大于樣本序列個數(shù)所允許最大的值。步驟4 進行異常流量檢測,根據(jù)Hurst指數(shù)的變化預(yù)警網(wǎng)絡(luò)中的異常流量。Hurst指數(shù)是描述自相似特性的唯一參數(shù),當(dāng)網(wǎng)絡(luò)流量發(fā)生變化時,Hurst指數(shù)也會發(fā)生變化。但是在正常的網(wǎng)絡(luò)環(huán)境中,網(wǎng)絡(luò)流量基本上處在一個平穩(wěn)的變化階段,Hurst 指數(shù)的變化也在一個很小的范圍。當(dāng)網(wǎng)絡(luò)中出現(xiàn)DDOS攻擊或蠕蟲病毒時,Hurst指數(shù)的變化就會產(chǎn)生很大的變化。因此通過計算Hurst指數(shù)在一定時間間隔內(nèi)的變化量可以檢測網(wǎng)絡(luò)中的異常流量。當(dāng)Hurst指數(shù)超過一定的閾值時便告警異常流量。
權(quán)利要求
1.一種基于ARMA模型和混沌時間序列模型的流量分析方法,其特征在于,包括以下各步驟步驟1 監(jiān)聽網(wǎng)絡(luò)中的流量,由網(wǎng)絡(luò)設(shè)備驅(qū)動截獲原始數(shù)據(jù)包,進行流量的統(tǒng)計、寫入數(shù)據(jù)庫和日志文件;步驟2 進行流量分析,計算Hurst指數(shù)、ARMA參數(shù)、分?jǐn)?shù)差分、關(guān)聯(lián)維度、時間延遲并估 if Lyapunov 才旨數(shù);步驟3 根據(jù)流量分析提供的參數(shù)和預(yù)報公式對樣本點進行基于誤差自反饋的 Lyapunov指數(shù)流量預(yù)測;步驟4 進行異常流量檢測,根據(jù)Hurst指數(shù)的變化預(yù)警網(wǎng)絡(luò)中的異常流量。
2.如權(quán)利要求1所述的一種基于ARMA模型和混沌時間序列模型的流量分析方法,其特征在于,步驟2中的關(guān)聯(lián)維數(shù)的計算,具體按照以下步驟1)根據(jù)經(jīng)驗估計關(guān)聯(lián)維數(shù)的值,根據(jù)>力.(V^)"選取樣本序列;2)選擇時間延遲,范圍通常選擇為1 20;NN3)計算最大嵌入維數(shù)二P—(ρ的初始值為0. 8)和次大嵌入維數(shù)mvmax =p一-1對ττ應(yīng)的關(guān)聯(lián)維數(shù),如果相同則算法結(jié)束,否則轉(zhuǎn)步驟2 ;4)如果ρ= 1則算法結(jié)束;否則增大P,轉(zhuǎn)步驟2)。其中N為樣本序列長度,Nmin為最小樣本序列長度,d為吸引子的維數(shù),τ為時間延遲。
3.如權(quán)利要求1所述的一種基于ARMA模型和混沌時間序列模型的流量分析方法,其特征在于,步驟3中的基于誤差自反饋的Lyapimov指數(shù)流量預(yù)測算法FLPA (Flow Lyapunov Prediction Algorithm),具體按照以下步驟1)根據(jù)經(jīng)驗先確定關(guān)聯(lián)維數(shù)和時間延遲,并作為參數(shù)計算Lyapimov指數(shù);2)根據(jù)Lyapimov指數(shù)預(yù)測后續(xù)的流量序列;3)計算估計偏差的總和,當(dāng)偏差總和大于設(shè)定的精度要求時,增大嵌入維數(shù)重新計算 Lyapunov指數(shù),直到估計序列達(dá)到精度要求或者嵌入維數(shù)大于樣本序列個數(shù)所允許最大的
全文摘要
本發(fā)明公開了一種基于ARMA模型和混沌時間序列模型的流量分析方法。該方法能實現(xiàn)流量采集和特征提取、流量分析、流量預(yù)測和異常流量檢測。首先對流量進行監(jiān)聽和統(tǒng)計,通過計算Hurst指數(shù)、ARMA參數(shù)、分?jǐn)?shù)差分、關(guān)聯(lián)維度、時間延遲并估計Lyapunov指數(shù);根據(jù)流量分析提供的參數(shù)和預(yù)報公式對樣本點進行一定步長的預(yù)測,并根據(jù)Hurst指數(shù)的變化預(yù)警網(wǎng)絡(luò)中的異常流量。
文檔編號H04L12/56GK102404164SQ20111022779
公開日2012年4月4日 申請日期2011年8月9日 優(yōu)先權(quán)日2011年8月9日
發(fā)明者孫建, 張梅琴, 張順頤, 王攀 申請人:江蘇欣網(wǎng)視訊科技有限公司