遲江波, 劉利波
(新疆輕工職業技術學院 繼續教育學院, 烏魯木齊 830021)
計算機和互聯網技術在人們日常工作及生活中的應用不斷普及,給人們生活水平的提高和社會的進步發展帶來了巨大的改變,由此網絡安全問題也逐漸成為人們研究的熱點。目前,在網絡安全問題的表現中,一個主要的表現就是網絡異常變化。部分網絡安全學者認為,網絡入侵或導致網絡流量異常,因此網絡異常檢測的核心,就是網絡異常檢測模型。目前,針對網絡異常檢測模型的選擇中,比較常見的算法包括小波分析、SVM支持向量機、決策樹等算法。如吳銳(2017)等則提出了一種基于SVM的電信網絡異常檢測方法,從而通過SVM的分類,完成對網絡異常的監測[1];崔嘉(2017)則采用決策樹判斷方法,完成了對P2P網絡異常的監測[2]。本文則結合當前的網絡異常檢測模型,提出一種基于動態Vague集的網絡流量異常監控,并對該方法的可行性進行了詳細的驗證。
自模糊集理論誕生以來,通常將其應用于對不確定性信息的處理,即在信息不完備的情況下,采用模糊集的方式來進行描述。但由于模糊集僅能描述集合中各元素對于該集合的隸屬度,因此難以反映對命題的否定與模糊程度。針對這一問題,K. Atanassov于上世紀八十年代提出直覺模糊集理論,即Vague Set理論。該理論的核心思想是通過構建隸屬度與非隸屬度來計算得到對命題的支持及反對的度量[3-5]。在本研究中,討論的是在流數據不完備的情況下對網絡異常進行判斷,即可以采用直覺模糊集的方式,完成對網絡異常的描述,進而選擇此異常方法。由此,對于任意x∈U,若可計算出{〈x,μA(x),νA(x)〉:x∈U},則得到一個論域U上的Vague Set,其中,μA為對論域U上的命題A的支持度量,νA為反對度量,支持度量和反對度量兩者滿足以下關系,如式(1)—式(3)。
μA:U→[0,1]νA:U→[0,1]
(1)
μA(x)+νA(x)≤1
(2)
πA(x)=1-μA(x)-νA(x)
(3)
式(3)中,πA(x)表示對論域U上的命題A認知的不確定性。
綜上所述,Vague集就是通過0~1之間的兩個數定義一個區間,描述反映所收集的信息對命題A的支持度量與反對度量,從而為決策者提供有力的信息支持。
目前,雖然部分網絡異常流量監控模型取得好的檢測效果,但是在流數據如果不完備的情況下,赫熙煦(2018)認為傳統模型很容易造成識別率低的問題,從而會導致對異常檢測的誤判,最終不利于網絡異常的監測[6]。同時,在異常檢測中,考慮到時間因素是分析及解決問題的關鍵維度之一,對規則或知識的變化有著極大的影響作用。對此,在本文中則結合時間溫度,進而構成一個動態Vague集,然后運用認知模型中的真假隸屬函數來完成對Vague集數的構建。
假設時間變量為t,動態Vague變量為α(t)=μα(t),να(t),πα(t)),對于在確定的時間變量t下,滿足以下關系如式(4)。
μα(t)∈[0,1],να(t)∈[0,1],μα(t)+να(t)≤1,
πα(t)=1-μα(t)-να(t)
(4)
從上述定義可以看到,假設有t=t1,t2,…,tp個時間段,則得到p個Vague集數α(t1),α(t2),…,α(tp)。而通過以上的定義,得到了一個關于時間因素的Vague集。
除了時間因素以外,事件發生頻度同樣是分析及解決問題的關鍵維度之一。比如通過統計在同一個IP地址下出現攻擊的次數,那么我們可以判斷其發生網絡異常的概率。因此,本文則引入頻度因子,以挖掘網絡運行中發生異常的潛在規律或者是因果關系。而在頻度因子中,平均間隔時間t0和平均次數n0是衡量頻度的重要指標。頻度動態因子計算為式(5)[7-10]。
FParamdynamic=
(5)
式中,t0為某類事件的平均發生間隔,n0該類事件平均發生次數。
為提高異常監控識別判斷的準確率,引入事件相關因子。在相關因子計算中,相關聯度r與關聯頻度f是關鍵參數。前者描述不同事件間的關聯性,與后者結合得到相關因子,以提高判別的準確性。具體計算為式(6)。
RParamdynamic=
(6)

通過以上的定義,為當前Vague集的描述增加了一個新的角度。而從認知理論的角度認為,任意事件都是獨立的,在對事件的分析中,我們采用時間因素和相關因素作為加權因子,從而對事件進行分析。因此,在對動態Vague集認知模型的構建中,由基礎認知集數和動態認知權值來共同對事件進行描述,以提高識別的準確率。
基礎認知Vague集數定義為式(7)、式(8)[11-13]。
{〈x,μC(x),νC(x)〉:x∈U}
(7)
動態認知的權值:
α(t)=(χ(t),λ(t))
(8)
動態認知為一個整體函數,因此在計算的過程中,需要對基礎認知Vague集數進行修正。式(8)中,χ(t)和λ(t)分別描述了動態認知對于真實隸屬函數和虛假隸屬函數的證據支持度。
將基礎認知與動態認知結合后,得到動態認知Vague集數,以此反映對最終決策信息的支持度式(9)。
Vaguedynamic={1-(1-μC(x))χ(t),νC(x)λ(t),
(1-μC(x))χ(t)-νC(x)λ(t)}
(9)
由此,通過以上的構建, 我們將動態認知的Vague 集網絡異常監控算法設計為如圖1所示。

圖1 基于動態認識的Vague集網絡異常監控算法
為了驗證上述算法的有效性,本文以比較傳統的Kddcup99數據集進行挖掘,然后使用IPv6實際的網絡流量數據進行分析,并將其與部分廠商的監測結果進行對比,以驗證上述算法的可行性。
Kddcup99數據集目前普遍應用于網絡安全算法的驗證中,而為了驗證動態Vague算法,以當前主流的SVM分類算法來進行比較。評價指標則選擇準確識別率和運行時間。在試驗平臺選擇方面,使用酷睿i7,內存大小8G的windows7操作系統作為試驗平臺。通過對Kddcup99數據的預處理,對數據進行離散化,進而得到服從正態分布的數據集[14-16]。同時分別應用動態Vague算法和SVM算法對網絡流量異常數據進行識別,從而得到表1和表2的結果。

表1 識別準確率數據

表2 運行執行時間
從以上結果看到:與SVM相比,本文提出的動態Vague算法的運行時間更長,說明本文算法在運行時間上,不具備其優勢。
在不完備Kddcup99數據集的情況下對算法進行驗證,得到在缺失率分別為10%、25%,采樣率分別為10%、30%下的實驗結果,具體如表3所示。

表3 不完備Kddcup99數據集實驗結果
從表3所示可以看到:在同一缺失率的情況下,SVM與動態Vague算法在10%、25%采樣率下的準確率只存在極小的差異;相較而言,在10%采樣率下的準確率略低于在30%采樣率下的準確率;SVM在25%缺失率與10%缺失率下的準確率相比,有著較大的下降幅度;動態Vague在不同缺失率的情況下,準確率未出現顯著變化。由此說明,本文構建的算法在缺失率越大的情況下,其結果差異不大,說明其準確率越高。
上述的分析是以Kddcup99數據集作為試驗,缺乏對真實環境下的網絡流量異常監控。對此,本文則以我職業院校在2018年1月~2018年4月的真實流量數據作為基礎,分別運用SVM算法和本文構建的算法進行對比,如圖3所示。

圖3 不同算法下的識別記錄數
通過上述的對比看出,本文構建的算法與網絡安全設備識別的網絡異常記錄非常接近,說民本文算法的有效性。
本文針對現有網絡流量異常監控方法在不完備數據和流數據處理方面所存在的問題,在動態Vague集基礎上,構建了頻度因子與相關因子,得到動態認知Vague 集。該方法能夠充分考慮到時間因素的影響,并通過相關度來提高識別準確率。實驗結果說明,該算法能夠準確有效地處理不完備數據和流數據。此外,該算法在運行效率方面仍有較大的優化改進空間。