一種基于gm模型的無線傳感器網(wǎng)絡(luò)流量異常檢測方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,具體涉及一種基于GM模型的無線傳感器網(wǎng)絡(luò)流 量異常檢測方法。
【背景技術(shù)】
[0002] 隨著通信和計算機技術(shù)的發(fā)展,網(wǎng)絡(luò)已成為當(dāng)今世界發(fā)展的重要因素。無線傳感 器網(wǎng)絡(luò)(WirelessSensorNetworks,無線傳感器網(wǎng)絡(luò))作為重要的網(wǎng)絡(luò)技術(shù)之一,以其 魯棒性高、準(zhǔn)確性高、靈活性高及智能化強等優(yōu)點,被廣泛用于國防軍事、國家安全、環(huán)境監(jiān) 測、交通管理、醫(yī)療衛(wèi)生、制造業(yè)、反恐抗災(zāi)等領(lǐng)域,也是物聯(lián)網(wǎng)獲取信息的主要方式。無線 傳感器網(wǎng)絡(luò)能夠通過各種集成化的微型傳感器協(xié)作的實時監(jiān)測,感知和釆集各種環(huán)境或監(jiān) 測對象的信息,將這些信息通過無線方式發(fā)送,并以自組多跳的網(wǎng)絡(luò)方式傳送到用戶終端。
[0003] 目前,網(wǎng)絡(luò)應(yīng)用中存在許多不安全因素,主要表現(xiàn)為信息泄漏、信息篡改、非法使 用網(wǎng)絡(luò)資源、非法信息滲透等,網(wǎng)絡(luò)信息的安全與防范顯得越來越重要,并且受到各個國家 的重點關(guān)注,無線傳感器網(wǎng)絡(luò)同樣也不例外。無線傳感器網(wǎng)絡(luò)具有開放的環(huán)境、動態(tài)變化的 拓?fù)浣Y(jié)構(gòu)和資源受限的節(jié)點,這些獨特的網(wǎng)絡(luò)特征使得無線傳感器網(wǎng)絡(luò)易于受到各種惡意 攻擊。由于無線傳感器網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)是數(shù)據(jù)流,當(dāng)任意傳感器節(jié)點出現(xiàn)異?;蚴峭獠?人為的發(fā)起惡意入侵及攻擊時(尤其是危害極大的DoS攻擊),全網(wǎng)在流量行為上都會表現(xiàn) 為異常,通過設(shè)計算法檢測流量異常行為,便能對可能出現(xiàn)的大規(guī)模入侵、攻擊行為進行預(yù) 警。因此,無線傳感網(wǎng)流量異常檢測具有非常重要的意義。
[0004] 目前對于無線傳感器網(wǎng)絡(luò)流量異常檢測的方法主要包括⑶SUM算法、小波分析、 隱馬爾可夫模型、ARMA模型,以及使用免疫遺傳、神經(jīng)網(wǎng)絡(luò)等機器學(xué)習(xí)的智能算法,它們大 多準(zhǔn)確性較高,但因此帶來的復(fù)雜度也較高,并且需要較多的歷史流量數(shù)據(jù)進行建模、訓(xùn)練 等,這對節(jié)點能量、計算能力嚴(yán)格受限的無線傳感器網(wǎng)絡(luò)帶來了極大的挑戰(zhàn)。
[0005] 灰色系統(tǒng)理論由鄧聚龍教授提出,主要通過對部分已知信息的生成、開發(fā),提取有 價值的信息,實現(xiàn)對系統(tǒng)運行規(guī)律的正確認(rèn)識和確切描述,并據(jù)以進行科學(xué)預(yù)測?;疑到y(tǒng) 是指部分信息已知而部分信息未知的系統(tǒng),灰色模型是從灰色系統(tǒng)中抽象出來的模型,其 中最簡單的模型是GM(1,1)模型,它是時間序列的一階微分方程。由于GM(1,1)模型具有 所需建模數(shù)據(jù)少、運算速度快、預(yù)測值準(zhǔn)確等特點,被廣泛應(yīng)用在農(nóng)業(yè)、林業(yè)、水利、能源、交 通、經(jīng)濟等領(lǐng)域。雖然在計算機網(wǎng)絡(luò)領(lǐng)域應(yīng)用較少,但由于其模型準(zhǔn)確簡單的特點,有很大 的應(yīng)用前景。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明的目的是為了解決目前的無線傳感器網(wǎng)絡(luò)流量異常檢測方法普遍存在的 算法復(fù)雜度較大的缺陷,為了在保證檢測準(zhǔn)確性的前提下,做到更高效的流量異常實時檢 測,提出了一種基于GM模型的無線傳感器網(wǎng)絡(luò)流量異常檢測方法。
[0007] 本發(fā)明的技術(shù)方案是:一種基于GM模型的無線傳感器網(wǎng)絡(luò)流量異常檢測方法,具 體包括如下步驟:
[0008]Sl:確定滑動窗口的大小;
[0009] S2 :對滑動窗口內(nèi)流量數(shù)據(jù)進行級比檢驗,若滑動窗口內(nèi)流量數(shù)據(jù)未通過級比檢 驗,則給滑動窗口內(nèi)所有流量數(shù)據(jù)加上常數(shù)c,直至得到通過級比檢驗的流量數(shù)據(jù)序列;
[0010]S3 :根據(jù)步驟S2得到的流量數(shù)據(jù)序列、由該流量數(shù)據(jù)序列得到的一次累加生成序 列及由該一次累加生成序列得到的均值生成序列建立GM(1,1)的白化微分方程;
[0011]S4 :以窗口內(nèi)當(dāng)前時刻的流量值作為初始條件,求解GM(1,1)的白化微分方程,根 據(jù)最小二乘法估計GM(1,1)模型中的待定參數(shù);
[0012]S5 :對由步驟S4得到的GM(1,1)模型進行L步預(yù)測,并減去由步驟S2記錄的c得 到L步流量預(yù)測值,其中每一個預(yù)測值對應(yīng)一預(yù)測時刻,以時刻表存儲各預(yù)測值;
[0013]S6 :判斷當(dāng)前預(yù)測時刻在步驟S5中是否已存儲得L個數(shù)據(jù),若是則利用步驟S5中 累計得到的共計L個當(dāng)前預(yù)測時刻的預(yù)測值,進行類指數(shù)加權(quán)平均生成當(dāng)前預(yù)測時刻流量 預(yù)測值,然后執(zhí)行步驟S7 ;否則執(zhí)行步驟S8 ;
[0014]S7 :根據(jù)步驟S6所得的當(dāng)前預(yù)測時刻流量預(yù)測值,與當(dāng)前預(yù)測時刻出現(xiàn)的真實流 量值進行相對誤差判定,若超過設(shè)定閾值則判定出現(xiàn)流量異常;
[0015]S8 :窗口以設(shè)定步長向前滑動,并轉(zhuǎn)至步驟S1。
滑動窗口內(nèi)流量數(shù)據(jù)通過級比檢驗;否則未通過。
[0017] 更進一步地,當(dāng)滑動窗口內(nèi)流量數(shù)據(jù)未通過級比檢驗時,初始化c,將滑動窗口內(nèi) 數(shù)據(jù)加上C,若通過級比檢驗,則記錄下此時的C值;否則以等差值遞增或遞減得到新的C, 然后將滑動窗口內(nèi)數(shù)據(jù)加上新的C,直至所有數(shù)據(jù)通過級比檢驗,并記錄下此時的C值。
[0018] 更進一步地,所述c為常數(shù)。
[0019]進一步地,所述步驟S6具體包括以下分步驟:
[0020]S61 :判斷當(dāng)前預(yù)測時刻在步驟S5中是否已存儲L個數(shù)據(jù),若是則執(zhí)行步驟S62否 則執(zhí)行步驟S8 ;
[0021] S62:根據(jù)步驟S5累計得到的L個當(dāng)前預(yù)測時刻的預(yù)測值,進行類指數(shù)加權(quán)平均生 成當(dāng)前預(yù)測時刻流量預(yù)測值,然后執(zhí)行步驟S7。
[0024] 進一步的,所述步驟S7中的設(shè)定閾值范圍為:5%~15%。
[0025] 本發(fā)明的有益效果是:本發(fā)明的一種基于GM模型的無線傳感器網(wǎng)絡(luò)流量異常檢 測方法;
[0026] 1)使用GM(1,1)模型,具有使用歷史數(shù)據(jù)少、模型建立速度快、預(yù)測值準(zhǔn)確的特 點,非常使用于無線傳感器網(wǎng)絡(luò)節(jié)點能量、計算能力受限的條件;
[0027] 2)使用窗口大小合適的滑動窗口使歷史建模數(shù)據(jù)量固定,既保證了建模的快速 性,還保證了歷史數(shù)據(jù)的最新有效性;
[0028] 3)優(yōu)化了GM(1,1)模型的白化微分方程求解初始條件,使預(yù)測值更加準(zhǔn)確;
[0029] 4)對最終用于異常判定的下一時刻流量預(yù)測值由前L次的預(yù)測值指數(shù)加權(quán)平均 生成,這樣對流量的預(yù)測引入一定的"慣性",當(dāng)異常流量來臨時,不能輕易的改變正常的流 量預(yù)測模型,而能更好的得到正常流量的預(yù)測值,更輕易的檢測流量異常。
【附圖說明】
[0030] 圖1為本發(fā)明基于GM模型的無線傳感器網(wǎng)絡(luò)流量異常檢測方法流程示意圖。
[0031] 圖2為含有流量異常數(shù)據(jù)的無線傳感器網(wǎng)絡(luò)流量圖。
[0032] 圖3為短步長指數(shù)平均加權(quán)法示意圖。
[0033] 圖4為使用該發(fā)明方法進行流量異常檢測后的標(biāo)識圖。
【具體實施方式】
[0034] 下面結(jié)合附圖和具體實施例對本發(fā)明做進一步的說明:
[0035] 本發(fā)明的一種基于GM模型的無線傳感器網(wǎng)絡(luò)流量異常檢測方法,其方案流程示 意圖如圖1所示,下面使用如圖2所示的含有異常流量的無線傳感器網(wǎng)絡(luò)流量數(shù)據(jù)對該方 法做實例驗證,該流量數(shù)據(jù)由美國北卡大學(xué)收集,本例使用其中的濕度值數(shù)據(jù)流作分析,具 體包括以下步驟:
[0036] Sl:選定一大小為Wind的滑動窗口。
[0037]Wind值的選擇應(yīng)在保證建模準(zhǔn)確度的前提下盡可能的小,以減小算法復(fù)雜度。同 時由于GM(1,1)模型的最小建模長度為4,最終根據(jù)實測,選擇Wind= 5為宜,包含當(dāng)前時 刻及之前的4個歷史時刻流量數(shù)據(jù)。
[0038]S2:對滑動窗口內(nèi)流量數(shù)據(jù)進行級比檢驗,若級比檢驗不通過則需給窗口內(nèi)所有 數(shù)據(jù)加上常數(shù)c,使數(shù)據(jù)通過級比檢驗。
[0039] 設(shè)窗口內(nèi)數(shù)據(jù)序列為X(Q) =(X(Q)⑴,x(Q) (2),…,x(Q) (n)),則序列的級比為:
序列Xw通過級比檢驗,可用于GM(1,1)模型建模。
[0040]S3:根據(jù)步驟S2得到的流量數(shù)據(jù)序列、由該流量數(shù)據(jù)序列得到的一次累加生成序 列及由該一次累加生成序列得到的均值生成序列建立GM(1,1)的白化微分方程。
[0041]例如,由步驟S2得到的流量數(shù)據(jù)序列為:XW= (xw (1),Xw (2),…,Xw (n)),則其 一次累加生成序列為:X(1) =(X(1) (I),x(1) (2),…,x(1) (n));
[0042]其中,X丨"⑷=匕,⑴,= …
[0043]則X(I)的均值生成序列為:Z(1)= (z(1)⑵,z(1)(3),…,z(1)(n));
[0044]其中,z(1)(m) = 0.5x(1)(m)+0.5x(1)(m-l),m= 2,3,.",n。
[0045] 建立GM(1,I)模型的灰微分方程:x(°) (m)+azw(m)=b,m= 2, 3,…,n,其相應(yīng)的<