322 :利用隊(duì)列結(jié)構(gòu),首先將所述根節(jié)點(diǎn)放入隊(duì)列中;
[0127] 步驟S323 :從所述隊(duì)列取出一個節(jié)點(diǎn),若該節(jié)點(diǎn)為檢測點(diǎn),并且特征庫還沒進(jìn)行 更新,則對其特征庫進(jìn)行更新;若該節(jié)點(diǎn)為普通節(jié)點(diǎn),則將信息傳遞下去;
[0128] 步驟S324 :判斷所隊(duì)列是否為空,若為空則整個網(wǎng)絡(luò)中檢測點(diǎn)的特征庫更新完 成,結(jié)束,否則返回步驟S323。
[0129] 特別的,在本實(shí)施例中,所述廣度優(yōu)先搜索算法BFS具體采用以下代碼實(shí)現(xiàn):
[0130] S為初始點(diǎn)
[0131] R= {s},Q= {s},1 = 0
[0132] while
[0133] 從Q中選一個節(jié)點(diǎn)
[0134] if(這個節(jié)點(diǎn)是檢測點(diǎn))
[0135] 則特征庫更新
[0136] else
[0137] 以上所述僅為本發(fā)明的較佳實(shí)施例,凡依本發(fā)明申請專利范圍所做的均等變化與 修飾,皆應(yīng)屬本發(fā)明的涵蓋范圍。
【主權(quán)項(xiàng)】
1. 一種分布式異常檢測網(wǎng)絡(luò)數(shù)據(jù)流的方法,其特征在于包括以下步驟: 步驟SI:部署N個檢測點(diǎn):設(shè)終端設(shè)備與網(wǎng)絡(luò)的連接接口的一結(jié)點(diǎn)為普通結(jié)點(diǎn),所述檢 測點(diǎn)獨(dú)立于所述普通結(jié)點(diǎn)之外;所述檢測點(diǎn)與所述普通結(jié)點(diǎn)相連,每個檢測點(diǎn)監(jiān)測一普通 節(jié)點(diǎn),用以檢測普通節(jié)點(diǎn)處的終端設(shè)備發(fā)送的異常數(shù)據(jù)包同時防止該終端接收到網(wǎng)絡(luò)中的 異常數(shù)據(jù)包; 步驟S2 :檢測點(diǎn)監(jiān)測異常網(wǎng)絡(luò)數(shù)據(jù)流:采用三種檢測方法進(jìn)行層次化的異常檢測,第 一層檢測采用基于特征匹配的異常檢測方法,第二層檢測采用基于統(tǒng)計分析的異常檢測方 法,第三層采用基于機(jī)器學(xué)習(xí)與數(shù)據(jù)挖掘的異常檢測方法: 步驟S3 :檢測點(diǎn)進(jìn)行信息共享:利用普通結(jié)點(diǎn)進(jìn)行檢測點(diǎn)之間的信息共享,則所有檢 測點(diǎn)的特征庫進(jìn)行有效更新。2. 根據(jù)權(quán)利要求1所述的一種分布式異常檢測網(wǎng)絡(luò)數(shù)據(jù)流的方法,其特征在于:所述 步驟Sl具體包括以下步驟: 步驟Sll :提供N個終端設(shè)備以及與每個終端設(shè)備相連的路由器或交換機(jī),即存在N個 路由器或者交換機(jī),在每個路由器或交換機(jī)上均設(shè)置一個檢測點(diǎn),形成一檢測點(diǎn)集合D = {D」i = 1,2,3...N}; 步驟S12 :進(jìn)行特征庫設(shè)計,所述特征庫包括特征串與特征值;其中所述特征串為一 定長度的字符串,所述特征值為所述特征串中的每個字符進(jìn)行異或得到的結(jié)果;所述特征 庫設(shè)計采用鏈表設(shè)計,每種長度的特征串連成一個鏈表; 步驟S13 :初始化所有檢測點(diǎn),將已知的異常數(shù)據(jù)流的特征信息的特征庫布置到檢測 點(diǎn)中,并將所述檢測點(diǎn)連接到對應(yīng)的路由器或交換機(jī)上,則所述檢測點(diǎn)通過所連接的路由 器或交換機(jī)對網(wǎng)絡(luò)數(shù)據(jù)流進(jìn)行分析。3. 根據(jù)權(quán)利要求1所述的一種分布式異常檢測網(wǎng)絡(luò)數(shù)據(jù)流的方法,其特征在于:所述 步驟S2中第一層檢測采用基于特征匹配的異常檢測方法具體包括以下步驟: 步驟S211 :假設(shè)特征庫內(nèi)的特征集合用C = IC11 i = 0, 1,2···}表示; 步驟S212 :所述檢測點(diǎn)接收網(wǎng)絡(luò)數(shù)據(jù)流時,即所述網(wǎng)絡(luò)數(shù)據(jù)流通過檢測點(diǎn)檢測的路由 器或者交換機(jī)的時,所述檢測點(diǎn)提取數(shù)所述網(wǎng)絡(luò)數(shù)據(jù)流的特征串和特征值,所述特征串包 括IP地址、端口號以及協(xié)議類型;設(shè)定所述特征串長度為L,則將所述特征串總每個字符相 異或得到一對應(yīng)的特征值T,采用以下公式得到特征值Γ ::1 = …,其中所述特征 串L為AB……; 步驟S213 :假設(shè)特征庫中長度與特征值T相同的特征串有m個,則j = 1,2,3,···,!!!, 則Cu為該長度下的特征值;所述檢測點(diǎn)判斷Tecij是否為零,若Τθ?不等于〇,則所述特 征串與該特征值不匹配,忽略該特征串;若Cy等于0,則所述特征串與該特征值匹配,保 留該特征串,進(jìn)行下一次的完整匹配; 步驟S214 :經(jīng)過所述步驟S213的篩選,對保留下的特征串采用BF算法進(jìn)行完整匹配, 所述BF算法具體為將目標(biāo)特征串的第一個字符與模式特征串的第一個字符進(jìn)行匹配,判 斷兩者是否相等;若相等,則繼續(xù)比較所述目標(biāo)特征串的第二個字符與所述模式特征串的 第二個字符;若不相等,則比較所述目標(biāo)特征串的第二個字符和所述模式特征串的的第一 個字符,依次比較下去,直到得出最后的匹配結(jié)果;若所述目標(biāo)特征串與所述模式特征串匹 配成功,則該數(shù)據(jù)流為異常數(shù)據(jù)流,若未匹配成功則進(jìn)入下一層檢測。4.根據(jù)權(quán)利要求1所述的一種分布式異常檢測網(wǎng)絡(luò)數(shù)據(jù)流的方法,其特征在于:所述 步驟S2中第二層檢測采用基于統(tǒng)計分析分異常檢測方法具體包括以下步驟: 步驟S21 :檢測點(diǎn)對需要進(jìn)行檢測的網(wǎng)絡(luò)數(shù)據(jù)流進(jìn)行特征信息采集,所述特征信息包 括源IP、目的IP、源端口、目的端口以及數(shù)據(jù)容量大小。 步驟S222 :定義(Iu表示第i個特征信息的第j個值的大?。欢x一特征集S s= {d ^ I i =1,2, 3···ηι ; j = 1,2,3··ι},Y = {y; I i = 1,2, 3···ι?}是 m 個特征信息的統(tǒng)計集,y;表示 在統(tǒng)計的時間間隔內(nèi)不重復(fù)的特征i的個數(shù);定義第i個特征熵HQO其中S1表示統(tǒng)計的時間間隔內(nèi)第i個特征的總的分組數(shù); 步驟S223 :采用加權(quán)求平均數(shù)的方法消除統(tǒng)計時外界因素的干擾而導(dǎo)致的熵的隨機(jī) 波動,找出特征熵的總體發(fā)展趨勢,從而預(yù)測下個統(tǒng)計時間間隔內(nèi)的特征熵趨勢,預(yù)測公式 如下: yt= ax t !+ (l~a) yt 其中yt與y t i分別是在t時刻與t-i時刻,特征熵的預(yù)測值,a是加權(quán)因子其取值介于 0到1之間,Xt i是在t-l時亥I」,特征熵的測量值; 步驟S224 :根據(jù)所述步驟S223中的預(yù)測公式,則可采用加權(quán)求平均數(shù)對正常數(shù)據(jù)流的 特征參數(shù)進(jìn)行預(yù)測,記在第t個統(tǒng)計的時間間隔內(nèi)第i個特征的實(shí)際特征熵為Htl,在第t個 統(tǒng)計的時間間隔內(nèi)第i個特征的預(yù)測特征熵為#?則 ?其中k的定義為:選取k個統(tǒng)計時間間隔作為一個觀測周期,其值需要在實(shí)驗(yàn)中進(jìn)行調(diào) 整,以選取到最佳值;是相應(yīng)觀測周期內(nèi)的初始值,可直接用該時刻的觀測值進(jìn)行等 效;a為根據(jù)相應(yīng)的觀測時間間隔的變化特征來進(jìn)行選??; 步驟S225 :在第t個時間間隔內(nèi)第i個特征的特征熵的標(biāo)準(zhǔn)差記為〇 tl,在第t個時 間間隔內(nèi)第i個特征的特征熵的正常取值區(qū)間記為Ttl,則:若第t個統(tǒng)計時間間隔內(nèi)第i個特征的特征熵的取值落在時,則該時間間隔內(nèi)的網(wǎng)絡(luò)數(shù)據(jù)流為正常數(shù)據(jù)流,否則該時間間隔內(nèi)的網(wǎng)絡(luò)數(shù)據(jù)流為異常 數(shù)據(jù)流,將所述異常數(shù)據(jù)流進(jìn)入第三層進(jìn)行檢測。5. 根據(jù)權(quán)利要求1所述的一種分布式異常檢測網(wǎng)絡(luò)數(shù)據(jù)流的方法,其特征在于:所述 步驟S2中第三層檢測采用基于機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘的異常檢測方法包括機(jī)器學(xué)習(xí)與數(shù)據(jù) 挖掘兩部分;所述機(jī)器學(xué)習(xí)進(jìn)行異常數(shù)據(jù)流檢測時,通過對歷史數(shù)據(jù)的學(xué)習(xí)不斷更新特征 庫,進(jìn)而提高對異常數(shù)據(jù)流的檢測能力;所述數(shù)據(jù)挖掘采用聚類分析算法實(shí)現(xiàn)第三層的異 常數(shù)據(jù)流檢測具體包括以下步驟: 步驟S231 :輸入聚類的個數(shù)k,包含η個對象的數(shù)據(jù)庫,其輸出k個聚類,所述k個聚類 滿足方差最小的標(biāo)準(zhǔn); 步驟S232 :從η個數(shù)據(jù)對象中任意選擇k個作為初始聚類的中心; 步驟S233 :根據(jù)每個聚類對象的中心對象,計算每個對象與所述中心對對象的距離, 根據(jù)最小距離重新劃分相對應(yīng)的對象; 步驟S234 :重新計算有變化的聚類的中心對象 步驟S235 :計算標(biāo)準(zhǔn)測試函數(shù),若所述測試函數(shù)收斂,則終止算法;不滿足則返回所述 步驟S233。6. 根據(jù)權(quán)利要求1所述的一種分布式異常檢測網(wǎng)絡(luò)數(shù)據(jù)流的方法,其特征在于:經(jīng)過 所述步驟S2中的三層檢測后,若檢測點(diǎn)檢測出異常數(shù)據(jù)流是已知的,則檢測點(diǎn)直接通知網(wǎng) 絡(luò)管理者進(jìn)行處理;若檢測點(diǎn)檢測出的異常數(shù)據(jù)流出現(xiàn)數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí)得出新的異常 特征,則對特征庫進(jìn)行更新并實(shí)現(xiàn)所述步驟S3中的檢測點(diǎn)進(jìn)行信息共享,具體包括以下步 驟: 步驟S31 :對分析出新的異常特征的檢測點(diǎn)的自身特征庫進(jìn)行更新與擴(kuò)充,首先算出 新的特征串的長度L,將所述特征串歸類到該長度的鏈表分支中,再根據(jù)異或得出的所述特 征串的特征值,插入相應(yīng)特征值的鏈表中; 步驟S32 :在所述檢測點(diǎn)的特征庫的更新后,采用廣度優(yōu)先搜索算法BFS將新的特征信 息傳遞到所有的檢測點(diǎn)的特征庫中。7. 根據(jù)權(quán)利要求1所述的一種分布式異常檢測網(wǎng)絡(luò)數(shù)據(jù)流的方法,其特征在于:所述 廣度優(yōu)先搜索算法BFS具體包括以下步驟: 步驟S321 :將特征庫最先更新的檢測點(diǎn)作為BFS的根節(jié)點(diǎn); 步驟S322 :利用隊(duì)列結(jié)構(gòu),首先將所述根節(jié)點(diǎn)放入隊(duì)列中; 步驟S323 :從所述隊(duì)列取出一個節(jié)點(diǎn),若該節(jié)點(diǎn)為檢測點(diǎn),并且特征庫還沒進(jìn)行更 新,則對其特征庫進(jìn)行更新;若該節(jié)點(diǎn)為普通節(jié)點(diǎn),則將信息傳遞下去; 步驟S324:判斷所隊(duì)列是否為空,若為空則整個網(wǎng)絡(luò)中檢測點(diǎn)的特征庫更新完成,結(jié) 束,否則返回步驟S323。
【專利摘要】本發(fā)明涉及一種分布式異常檢測網(wǎng)絡(luò)數(shù)據(jù)流的方法,包括以下步驟:步驟S1:設(shè)終端設(shè)備與網(wǎng)絡(luò)的連接接口的一結(jié)點(diǎn)為普通結(jié)點(diǎn),每個檢測點(diǎn)監(jiān)測一普通節(jié)點(diǎn),用以檢測普通節(jié)點(diǎn)處是否存在異常數(shù)據(jù)包;步驟S2:采用三種檢測方法進(jìn)行層次化的異常檢測,第一層檢測采用基于特征匹配的異常檢測方法,第二層檢測采用基于統(tǒng)計分析的異常檢測方法,第三層采用基于機(jī)器學(xué)習(xí)與數(shù)據(jù)挖掘的異常檢測方法:步驟S3:利用普通結(jié)點(diǎn)進(jìn)行檢測點(diǎn)之間的信息共享,則所有檢測點(diǎn)的特征庫進(jìn)行有效更新。本發(fā)明可以減少檢測點(diǎn)的數(shù)量,同時使得各檢測點(diǎn)負(fù)載均衡,也可以有效保護(hù)終端設(shè)備,并減少網(wǎng)絡(luò)中異常包的數(shù)量,以及確保數(shù)據(jù)的精度。
【IPC分類】H04L29/06
【公開號】CN105187411
【申請?zhí)枴緾N201510506829
【發(fā)明人】藍(lán)友樞, 陳健, 張章學(xué), 葉松
【申請人】福建省海峽信息技術(shù)有限公司
【公開日】2015年12月23日
【申請日】2015年8月18日