專利名稱:一種網絡異常事件分類方法
技術領域:
本發(fā)明屬于網絡技術領域,特別涉及一種網絡異常事件分類方法。
背景技術:
網絡異常事件表現為網絡中的流量行為相對其正常行為的偏離。它可能是網絡濫用,例如DoS攻擊、DDoS攻擊、端口掃描等;也可能是設備失效,例如路由器端口失效;還可能是合法的用戶行為,例如Flash Crowd等。為了在網絡異常事件發(fā)生時快速地制定出應急方案,降低異常事件的危害,實時地對網絡異常事件進行分類已成為近年來學術界廣泛關注的問題。目前,骨干網中的異常事件分類主要面臨以下困難1.骨干網中的流量巨大,要對如此巨大的流量進行逐包分析以便對網絡異常事件進行分類,勢必會消耗大量時間,無法滿足實時性要求。2.骨干網中的流量具有很強的動態(tài)變化性,同一異常在不同時刻的表現也不盡相同,這要求分類算法具有較強的動態(tài)適應性。3.骨干網中的異常種類很多,并且某些不同種類的異常具有相似的特征。例如, Point to Multipoint和網絡掃描均會引起單個數據源到多個目的地址的網絡流數量激增;DoS/DDoS攻擊和Alpha攻擊均會導致網絡中數據流的目的IP地址集中。因而,要找到統(tǒng)一的分類方法來區(qū)分不同種類的、具有相似特征的異常十分困難。目前,對網絡中的異常流量分類進行了大量研究,提出了很多方法。文獻“Kuai Xu, Zhi-Li Zhang,S.Bhattacharyya. Internet Traffic Behavior Profiling for Network Security Monitoring. IEEE/ACM Transactions on Networking,Dec· 2008,,中首先提取出網絡流量中的源/目的IP和端口號,對這4項特征參數分別聚類,接下來利用一種基于熵的方法來優(yōu)化基于各項特征參數的聚類,接著基于這些聚類構建異常行為模式, 從而實現異常事件分類;文獻 “A. Lakhina, M. Crovella, C. Diot. Mining Anomalies Using Traffic Feature Distributions. In Proceedings, the conference on applications, technologies, architectures, and protocols for computer communications,2005,, 提出使用k-means算法或分層聚類算法對異常點的源/目的IP和端口等特征參數的熵構成的向量進行聚類,并以歐氏距離作為算法中向量之間的距離,以實現異常分類;文獻“A. Lakhina,Μ. Crovella, C. Diot, Characterization of Network-Wide Anomalies in Traffic Flows. In Proceedings,the 4th ACM SIGCOMM conference on Internet measurement, 2004”提出了統(tǒng)計出網絡流量中的流數量、包數量和字節(jié)數,結合各異常時間點的流量中的主要IP和端口號(取出現概率超過0. 2的IP和端口號)來對異常進行分類; 文獻“Y. Yasami, S. P. Mozaffari. A Novel Unsupervised Classification Approach for Network Anomaly Detection by K-Means Clustering and ID3 Decision Tree Learning Methods. The Journal of Supercomputing,2010”提出一種基于主機的組合方法來對網絡中的ARP流進行異常分類,該方法首先用基于歐式距離的k-means方法對訓練數據進行聚類,然后對每個類建立ID3決策樹,之后將這兩種方法得出的結果相結合得到門限值,利用該門限值進行異常分類;文獻“基于神經網絡的入侵識別方法.計算機工程,Vol 29(3) 111-112,119. 2003. 3”提出在BP (Back-propagation)網絡的基礎上加入一些附加的、內部的反饋通道來生成內部回歸神經網絡,從而加快其學習速度,實現快速分類;文獻“楊岳湘, 王海龍,盧錫城.基于信息熵的大規(guī)模網絡流量異常分類.計算機工程與科學,Vol 29(2) 40-43,2007”提出了一種基于信息熵的大規(guī)模網絡流量異常分類方法,首先計算網絡流量中的源/目的IP和源/目的端口熵,然后先利用子空間方法進行映射,再用k-means方法進行聚類得到結果。以上的方法都僅利用當前時間點的特征參數值或變化率對異常進行分類,而未利用流量行為在時間上的相關性。由于骨干網中流量的動態(tài)變化性,使用單一時間點的特征參數值或變化率難以準確地、全面地反映網絡流量行為異常(如背景流量較大時和背景流量較小時,相同類型的異常事件可能具有相似的流量特征參數值變化趨勢,卻表現出迥然不同的流量特征參數值),限制了分類的性能。
發(fā)明內容
本發(fā)明的目的是為了解決現有的網絡異常事件分類方法存在的問題,提出了一種網絡異常事件分類方法。本發(fā)明的技術方案是一種網絡異常事件分類方法,具體包括如下步驟Si.從網絡設備中獲取網絡中的流數據,從流數據中提取流量特征參數;S2.根據檢測到的異常時間點確定歷史時間窗并構建異常特征多時間序列,即用異常時間點和它之前的若干個時間點構建歷史時間窗,提取歷史時間窗內各時間點的流特征參數并計算相對熵,利用相對熵構建各流量特征參數在歷史時間窗內的時間序列,并組合為異常特征多時間序列,S3.對于手工標記的訓練數據,根據凝聚分層聚類建立初始分類樹;S4.對于新捕獲的異常數據,計算該異常與當前分類樹各子樹的距離,找出與新異常距離最小的子樹,根據該子樹包含的異常種類進行分析以得到分類結果,并更新分類樹。本發(fā)明的有益效果本發(fā)明的方法首先從網絡流數據中提取流量特征參數,根據檢測到的異常時間點確定歷史時間窗并構建異常特征多時間序列,充分利用了流量行為在時間上的相關性,能有效提高骨干網異常事件分類的準確性;同時通過分析異常特征多時間序列之間的相似性,能有效區(qū)分不同種類的、具有相似特征的異常;利用信息熵處理海量數據,能保證骨干網異常事件分類的實時性要求。
圖1本發(fā)明網絡異常事件分類方法的流程示意圖。圖2實施例中構建初始分類樹流程示意圖。圖3實施例中凝聚分層聚類的示意圖。圖4實施例中對新捕獲的異常進行分類流程示意圖。
具體實施方式
下面結合附圖和具體的實施例對本發(fā)明作進一步的闡述。本發(fā)明的網絡異常事件分類方法首先從網絡流數據中提取已檢測出異常時間點的流特征參數,而后通過計算相對熵以及凝聚分層聚類等方法,按照提取流特征參數—— 異常特征的多時間序列表示——構建初始分類樹——找到與新捕獲的異常距離最小的子樹并進行分析的思路完成骨干網的異常分類。具體流程示意圖如圖1所示,下面進行具體說明。具體包括如下步驟Si.從網絡設備中獲取網絡中的流數據,從流數據中提取出流量特征參數;S2.根據檢測到的異常時間點確定歷史時間窗并構建異常特征多時間序列,即用異常時間點和它之前的若干個時間點構建歷史時間窗,提取歷史時間窗內各時間點的流特征參數并計算相對熵,利用相對熵構建各流量特征參數在歷史時間窗內的時間序列,并組合為異常特征多時間序列,S3.對于手工標記的訓練數據,根據凝聚分層聚類建立初始分類樹;S4.對于新捕獲的異常數據,計算該異常與當前分類樹各子樹的距離,找出與新異常距離最小的子樹,根據該子樹包含的異常種類進行分析以得到分類結果,并更新分類樹。在步驟Sl中,首先從網絡設備中獲取網絡中的流數據,在這里以Netflow數據為例進行說明。在本實施例中,選取了網絡流的五元組(源/目的IP,源/目的端口號,網絡協議)、每條流的平均包數量以及每個包的平均字節(jié)數作為流量特征參數。在選取的流量特征參數中,源/目的IP反映主機行為,源/目的IP反映服務行為, 網絡協議反映主機間的數據交換方式,平均包數量和平均字節(jié)數分別反映網絡層和物理層的流量特征。這些參數可以較完整地刻畫出網絡異常事件的特點,從而為異常事件分類提供依據。在步驟S2中,對于每個異常時間點,將其之前的若干個時間點(在實施例中,取之前的3個時間點)與它一起構成歷史時窗;提取歷史時窗內各時間點上的流特征參數, 并計算其相對熵,形成各流量特征參數的時間序列;將所有流量特征參數時間序列組合起來,構建異常特征多時間序列。關于如何確定異常時間點,經典的方法有基于小波的檢測方法(P. Barford, J. Kline, D. Plonka, and A. Ron. A Signal Analysis of Network Tra c Anomalies. In Proceedings of IMW, 2002),kalman 5 ! ' (A. Soule, K. Salamatian, and N. Taft. Combining Filtering and Statistical Methods for Anomaly Detection. InProceedings of IMC, 2005)等,在這里不再詳細描述。本步驟的流程如下現有的異常分類方法都僅利用當前時間點的特征參數值或變化率對異常進行分類,難以準確反映網絡行為引起的流量變化。為了解決這個問題,本發(fā)明的技術方案引入了歷史時窗,以便獲取一段時間內異常特征參數的變化趨勢,從而更加準確地描述異常事件并對其進行分類。信息熵標志著系統(tǒng)所含信息量的多少,是對系統(tǒng)不確定性的描述,具體定義如下
其中,X= (ni,i = 1,L,N}表示在參數X的值為i的實例數為
權利要求
1.一種網絡異常事件分類方法,具體包括如下步驟S1.從網絡設備中獲取網絡中的流數據,從流數據中提取流量特征參數;S2.根據檢測到的異常時間點確定歷史時間窗并構建異常特征多時間序列,即用異常時間點和它之前的若干個時間點構建歷史時間窗,提取歷史時間窗內各時間點的流特征參數并計算相對熵,利用相對熵構建各流量特征參數在歷史時間窗內的時間序列,并組合為異常特征多時間序列;S3.對于手工標記的訓練數據,根據凝聚分層聚類建立初始分類樹;S4.對于新捕獲的異常數據,計算該異常與當前分類樹各子樹的距離,找出與新異常距離最小的子樹,根據該子樹包含的異常種類進行分析以得到分類結果,并更新分類樹。
2.根據權利要求1所述的網絡異常事件分類方法,其特征在于,步驟Sl所述的流量特征參數具體為源/目的IP、源/目的端口號、網絡協議、每條流的平均包數量以及每個包的平均字節(jié)數。
3.根據權利要求1或2所述的網絡異常事件分類方法,其特征在于,步驟S3所述的建立初始分類樹的具體過程為對于手工標記的訓練數據,首先根據手工標記將異常按照類型不同進行分簇;而后計算任意兩個異常簇之間的距離;之后,比較各異常簇之間的距離, 將距離最小的兩個子樹相連,得到初始分類樹。
4.根據權利要求3所述的網絡異常事件分類方法,其特征在于,所述的計算任意兩個異常簇之間的距離的具體過程如下首先采用兩個時間序列相關系數的方法度量兩個序列的相似性相關系數的計算公式為
5.根據權利要求4所述的網絡異常事件分類方法,其特征在于,步驟S3所述的凝聚分層聚類的具體步驟如下1)將每個異常簇作為一個子樹,將距離最小的兩個子樹相連,形成新的子樹;2)檢查是否所有的簇均已加入同一樹中,若所有簇已全部加入到分類樹中,則分類樹初始化完畢;否則,繼續(xù);3)計算新生成的子樹與其它子樹的距離,返回步驟1)。
6.根據權利要求4或5所述的網絡異常事件分類方法,其特征在于,步驟S4所述的計算該異常與當前分類樹各子樹的距離的具體過程如下計算新異常與各子樹的距離的公式如下
全文摘要
本發(fā)明公開了一種網絡異常事件分類方法。本發(fā)明的方法首先從網絡流數據中提取流量特征參數,根據檢測到的異常時間點確定歷史時間窗并構建異常特征多時間序列,充分利用了流量行為在時間上的相關性,能有效提高骨干網異常事件分類的準確性;同時通過分析異常特征多時間序列之間的相似性,能有效區(qū)分不同種類的、具有相似特征的異常;利用信息熵處理海量數據,能保證骨干網異常事件分類的實時性要求。
文檔編號H04L12/26GK102271091SQ20111026199
公開日2011年12月7日 申請日期2011年9月6日 優(yōu)先權日2011年9月6日
發(fā)明者周穎杰, 胡光岷, 馬力 申請人:電子科技大學