本申請(qǐng)涉及流量檢測(cè)領(lǐng)域,特別涉及一種部署在云平臺(tái)的流量監(jiān)測(cè)方法及系統(tǒng)。
背景技術(shù):
云平臺(tái)提供云計(jì)算,是近年來(lái)最為熱門的話題,被認(rèn)為是繼互聯(lián)網(wǎng)之后的又一次信息技術(shù)變革。開發(fā)者開發(fā)互聯(lián)網(wǎng)應(yīng)用從以前需要自己租用服務(wù)器以及配置維護(hù)服務(wù)器,到云平臺(tái)時(shí)代,只需要將業(yè)務(wù)或者應(yīng)用遷移到云平臺(tái),即可使用。開發(fā)者無(wú)需關(guān)心服務(wù)器的一系列問(wèn)題,只關(guān)注開發(fā)業(yè)務(wù)本身,提高開發(fā)速度,提升開發(fā)質(zhì)量。同時(shí)也是互聯(lián)網(wǎng)時(shí)代信息基礎(chǔ)設(shè)施與應(yīng)用服務(wù)模式的重要形態(tài),也是新一代信息技術(shù)運(yùn)用集約化發(fā)展的必然趨勢(shì)。
在云平臺(tái)運(yùn)行的程序,或者是使用云平臺(tái)提供服務(wù)都會(huì)對(duì)云平臺(tái)帶來(lái)不同方向的流量,有的是數(shù)據(jù)中心的外部用戶和內(nèi)部服務(wù)器之間交互的流量,被稱之為南北向流量;有的是數(shù)據(jù)中心的內(nèi)部服務(wù)器之間交互的流量,被稱之為東西向流量,也叫做橫向流量。互聯(lián)網(wǎng)普及的同時(shí),云平臺(tái)接收的東西向、南北向流量越來(lái)越多,隨之而來(lái)的東西向、南北向的異常流量的攻擊也越來(lái)越多,給云平臺(tái)帶來(lái)了嚴(yán)重的潛在威脅,影響到云平臺(tái)的正常服務(wù)的運(yùn)行。
其中,異常流量對(duì)云平臺(tái)的危害主要體現(xiàn)在以下幾個(gè)方面:第一,占用大量的網(wǎng)絡(luò)資源,導(dǎo)致租戶的正常業(yè)務(wù)無(wú)資源可用;第二,到時(shí)云平臺(tái)的網(wǎng)絡(luò)擁堵,從而使數(shù)據(jù)包的時(shí)延增大,甚至導(dǎo)致云平臺(tái)的服務(wù)不可用。而且,隨著攻擊者的技術(shù)越來(lái)越純熟,異常流量數(shù)據(jù)的模式越復(fù)雜,更難以識(shí)別。
因此,如何分類識(shí)別異常數(shù)據(jù),對(duì)云平臺(tái)流量檢測(cè)顯得尤為重要,是本領(lǐng)域技術(shù)人員的重要研究課題。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)的目的是提供一種可以解決異常流量分類識(shí)別問(wèn)題,以面對(duì)模式復(fù)雜,多變的異常流量數(shù)據(jù)。
為解決上述技術(shù)問(wèn)題,本發(fā)明提供一種流量檢測(cè)方法,所述方法包括:
將抓取預(yù)定數(shù)量的數(shù)據(jù)包進(jìn)行分類處理,得到正常流量數(shù)據(jù)矩陣和異常流量數(shù)據(jù)矩陣;
利用所述正常流量數(shù)據(jù)矩陣和所述異常流量數(shù)據(jù)矩陣對(duì)初始邏輯回歸模型進(jìn)行訓(xùn)練,獲得邏輯回歸模型;
利用所述邏輯回歸模型檢測(cè)流量數(shù)據(jù),以將所述流量數(shù)據(jù)分類為正常流量數(shù)據(jù)和異常流量數(shù)據(jù)。
可選的,所述將抓取預(yù)定數(shù)量的數(shù)據(jù)包進(jìn)行分類處理,得到正常流量數(shù)據(jù)矩陣和異常流量數(shù)據(jù)矩陣,包括:
在云平臺(tái)中,抓取預(yù)定數(shù)量的數(shù)據(jù)包;
根據(jù)k-均值聚類方法分類所述數(shù)據(jù)包,得到正常流量數(shù)據(jù)包和異常流量數(shù)據(jù)包;
對(duì)所述正常流量數(shù)據(jù)包和所述異常流量數(shù)據(jù)包進(jìn)行屬性分解,得到正常流量數(shù)據(jù)矩陣和異常流量數(shù)據(jù)矩陣。
可選的,根據(jù)k-均值聚類方法分類所述數(shù)據(jù)包,得到正常流量數(shù)據(jù)包和異常流量數(shù)據(jù)包,包括:
選擇所述數(shù)據(jù)包內(nèi)的任意的兩個(gè)向量分別作為第一組聚類中心;
計(jì)算所述數(shù)據(jù)包內(nèi)其他的每個(gè)向量到所述第一組聚類中心的每個(gè)的聚類中心的距離之和,把每個(gè)向量歸類到所述距離之和最小的那個(gè)聚類中心對(duì)應(yīng)的類別中,得到第一分類結(jié)果;
選擇所述數(shù)據(jù)包內(nèi)其他的任意的兩個(gè)向量分別作為第二組聚類中心,并計(jì)算得到第二分類結(jié)果;
判斷所述第一分類結(jié)果與第二分類結(jié)果是否一致,如果是,輸出所述第一分類結(jié)果或第二分類結(jié)果;如果否,將第二分類結(jié)果作為第一分類結(jié)果,并重新選擇其他的向量作為第二組聚類中心,計(jì)算第二分類結(jié)果,直到所述第一分類結(jié)果與第二分類結(jié)果一致,輸出第一分類結(jié)果或者第二分類結(jié)果。
可選的,利用所述正常流量數(shù)據(jù)矩陣和所述異常流量數(shù)據(jù)矩陣對(duì)初始邏輯回歸模型進(jìn)行訓(xùn)練,獲得邏輯回歸模型,包括:
選取第一預(yù)定比例的所述正常流量數(shù)據(jù)矩陣和第二預(yù)定比例的所述異常流量數(shù)據(jù)矩陣,對(duì)所述初始邏輯回歸模型進(jìn)行訓(xùn)練,獲得基本邏輯回歸模型;
選取第三預(yù)定比例的所述正常流量數(shù)據(jù)矩陣和第四預(yù)定比例的所述異常流量數(shù)據(jù)矩陣,對(duì)所述基本邏輯回歸模型進(jìn)行校驗(yàn),獲得所述邏輯回歸模型。
可選的,本技術(shù)方案還包括當(dāng)所述分類出現(xiàn)所述異常流量數(shù)據(jù)時(shí)報(bào)警。
可選的,本技術(shù)方案還包括當(dāng)所述分類出現(xiàn)所述異常流量數(shù)據(jù)時(shí),使用所述異常流量數(shù)據(jù)對(duì)所述邏輯回歸模型進(jìn)行更新。
本申請(qǐng)還提供一種流量檢測(cè)的系統(tǒng),所述系統(tǒng)包括:
分類處理單元,用于將抓取預(yù)定數(shù)量的數(shù)據(jù)包進(jìn)行分類處理,得到正常流量數(shù)據(jù)矩陣和異常流量數(shù)據(jù)矩陣;
訓(xùn)練單元,用于所述正常流量數(shù)據(jù)矩陣和所述異常流量數(shù)據(jù)矩陣對(duì)初始邏輯回歸模型進(jìn)行訓(xùn)練,獲得邏輯回歸模型;
檢測(cè)單元,用于所述邏輯回歸模型檢測(cè)流量數(shù)據(jù),以將所述流量數(shù)據(jù)分類為正常流量數(shù)據(jù)和異常流量數(shù)據(jù)。
可選的,所述分類處理單元包括:
數(shù)據(jù)包抓取子單元,用于在云平臺(tái)中,抓取預(yù)定數(shù)量的數(shù)據(jù)包;
分類子單元,用于根據(jù)k-均值聚類方法分類所述數(shù)據(jù)包,得到正常流量數(shù)據(jù)包和異常流量數(shù)據(jù)包;
屬性分解子單元,用于對(duì)所述正常流量數(shù)據(jù)包和所述異常流量數(shù)據(jù)包進(jìn)行屬性分解,得到正常流量數(shù)據(jù)矩陣和異常流量數(shù)據(jù)矩陣。
可選的,所述訓(xùn)練單元包括:
初始訓(xùn)練子單元,選取第一預(yù)定比例的所述正常流量數(shù)據(jù)矩陣和第二預(yù)定比例的所述異常流量數(shù)據(jù)矩陣,對(duì)所述初始邏輯回歸模型進(jìn)行訓(xùn)練,獲得基本邏輯回歸模型;
校驗(yàn)子單元,用于選取第三預(yù)定比例的所述正常流量數(shù)據(jù)矩陣和第四預(yù)定比例的所述異常流量數(shù)據(jù)矩陣,對(duì)所述基本邏輯回歸模型進(jìn)行校驗(yàn),獲得所述邏輯回歸模型。
可選的,本技術(shù)方案還包括:
自學(xué)習(xí)單元,用于當(dāng)所述分類出現(xiàn)異常流量數(shù)據(jù)時(shí),使用所述異常流量數(shù)據(jù)對(duì)所述邏輯回歸模型進(jìn)行更新。
本申請(qǐng)所提供的流量檢測(cè)方法,通過(guò)抓取預(yù)定數(shù)量的數(shù)據(jù)包,分類處理后的正常數(shù)據(jù)矩陣和異常數(shù)據(jù)矩陣,以訓(xùn)練初始邏輯回歸模型,再使用訓(xùn)練后的邏輯回歸模型檢測(cè)流量數(shù)據(jù)。從分類后的數(shù)據(jù)入手,本申請(qǐng)使用部分分類數(shù)據(jù)對(duì)初始的邏輯回歸模型進(jìn)行訓(xùn)練,對(duì)后續(xù)的用邏輯回歸模型檢測(cè)識(shí)別的過(guò)程中提高了識(shí)別效率和準(zhǔn)確度。
此外,當(dāng)檢測(cè)識(shí)別出現(xiàn)異常流量數(shù)據(jù)時(shí),本申請(qǐng)方案的技術(shù)對(duì)所述異常流量數(shù)據(jù)進(jìn)行處理后,根據(jù)所述的異常流量數(shù)據(jù)對(duì)所述邏輯回歸模型進(jìn)行更新。本申請(qǐng)技術(shù)方案確保了模型識(shí)別對(duì)實(shí)時(shí)變化的流量模型的檢測(cè)識(shí)別,具有自我學(xué)習(xí)能力,面對(duì)更復(fù)雜的流量環(huán)境可以做到自我更新模型數(shù)據(jù)以適應(yīng)環(huán)境。
本申請(qǐng)還提供了一種檢測(cè)流量系統(tǒng),并且該系統(tǒng)的有益效果與所述方法的有益效果相同,在此不做贅述。
附圖說(shuō)明
為了更清楚地說(shuō)明本申請(qǐng)實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請(qǐng)的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
圖1為本申請(qǐng)實(shí)施例所提供的流量檢測(cè)方法的流程圖;
圖2為本申請(qǐng)實(shí)施例所提供的分類處理的流程圖;
圖3為本申請(qǐng)實(shí)施例所提供的k-均值聚類方法分類的流程圖;
圖4為本申請(qǐng)實(shí)施例所提供的訓(xùn)練過(guò)程的流程圖;
圖5為本申請(qǐng)實(shí)施例所提供的流量檢測(cè)系統(tǒng)框圖;
圖6為本申請(qǐng)實(shí)施例所提供的分類處理單元的框圖;
圖7為本申請(qǐng)實(shí)施例所提供的訓(xùn)練單元的框圖。
具體實(shí)施方式
本申請(qǐng)的核心是提供一種流量檢測(cè)方法及系統(tǒng),具體解決流量檢測(cè)問(wèn)題。本申請(qǐng)技術(shù)方案通過(guò)抓取預(yù)定數(shù)量的數(shù)據(jù)包,分類處理后的正常數(shù)據(jù)矩陣和異常數(shù)據(jù)矩陣,以訓(xùn)練初始邏輯回歸模型,再使用訓(xùn)練后的邏輯回歸模型檢測(cè)流量數(shù)據(jù)。具有較好的識(shí)別效率和準(zhǔn)確度。
為使本申請(qǐng)實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
請(qǐng)參考圖1,圖1為本申請(qǐng)實(shí)施例所提供的流量檢測(cè)方法的流程圖。
s100,分類處理抓取到的預(yù)定數(shù)量的數(shù)據(jù)包,得到正常流量數(shù)據(jù)矩陣和異常流量數(shù)據(jù)矩陣。
其中,本實(shí)施例對(duì)于預(yù)定數(shù)量不做限定,可以根據(jù)所訓(xùn)練的模型的使用環(huán)境和其預(yù)定準(zhǔn)確度而做不同的修改,而且邏輯回歸模型的識(shí)別準(zhǔn)確度隨著訓(xùn)練用的數(shù)據(jù)量的增加而增加,但當(dāng)?shù)搅艘欢〝?shù)據(jù)量后邏輯回歸模型的識(shí)別準(zhǔn)確度的增加沒(méi)有那么顯著的變化。因此,所抓取的數(shù)據(jù)包的數(shù)量應(yīng)根據(jù)預(yù)期確定的預(yù)定準(zhǔn)確度設(shè)置所抓取的數(shù)據(jù)包的數(shù)量。數(shù)據(jù)包處理后變?yōu)閿?shù)據(jù)矩陣,是將數(shù)據(jù)包按屬性進(jìn)行分解歸類,變成計(jì)算機(jī)可讀的形式,以方便后續(xù)的初始模型對(duì)原始數(shù)據(jù)進(jìn)行讀取。
s200,利用正常流量數(shù)據(jù)矩陣和異常流量數(shù)據(jù)矩陣對(duì)初始邏輯回歸模型進(jìn)行訓(xùn)練,獲得邏輯回歸模型。
其中,對(duì)于訓(xùn)練過(guò)程具有一個(gè)訓(xùn)練目標(biāo),一般來(lái)說(shuō)是以訓(xùn)練后的準(zhǔn)確度作為目標(biāo)的判定,因此,在訓(xùn)練前設(shè)定一個(gè)預(yù)定準(zhǔn)確度。訓(xùn)練的預(yù)定準(zhǔn)確度不做限定,可以根據(jù)檢測(cè)識(shí)別的準(zhǔn)確度的要求做適應(yīng)性的修改。在此實(shí)施例中,考慮到檢測(cè)時(shí)對(duì)識(shí)別度的要求初始邏輯回歸模型的預(yù)定準(zhǔn)確度被設(shè)置在90%,當(dāng)訓(xùn)練的準(zhǔn)確度達(dá)90%時(shí)確定該邏輯回歸模型達(dá)到要求,可以被加載到相應(yīng)位置檢測(cè)流量,但此時(shí)的邏輯回歸模型并非是封裝不可更改狀態(tài),為了面對(duì)復(fù)雜多變的環(huán)境此模型還可以根據(jù)實(shí)時(shí)的識(shí)別的流量進(jìn)行學(xué)習(xí),當(dāng)然,也可以將此模型分裝起來(lái)使其不可改變。
s300,利用邏輯回歸模型檢測(cè)流量數(shù)據(jù),以將流量數(shù)據(jù)分類為正常流量數(shù)據(jù)和異常流量數(shù)據(jù)。
需要強(qiáng)調(diào)的是,利用邏輯回歸模型進(jìn)行檢測(cè)的過(guò)程本質(zhì)上是對(duì)實(shí)時(shí)的流量進(jìn)行識(shí)別分類的過(guò)程,但此識(shí)別分類過(guò)程區(qū)別于上述分類處理過(guò)程。上述分類處理過(guò)程利用的是封閉的數(shù)據(jù),此時(shí)數(shù)據(jù)量是固定不變的,其數(shù)據(jù)的特征屬性也是不變的,而此識(shí)別分類的過(guò)程是面對(duì)不斷變化的數(shù)據(jù),其數(shù)量變化特征屬性也變化。因此,這兩個(gè)分類過(guò)程面對(duì)的對(duì)象不同,其分類方式也不同。
此外,為了提示該檢測(cè)結(jié)果,方便操作人員實(shí)時(shí)觀察流量數(shù)據(jù),當(dāng)該檢測(cè)過(guò)程中分類識(shí)別出異常流量數(shù)據(jù)時(shí),系統(tǒng)給出相應(yīng)的提示,可以是報(bào)警,也可以是亮燈或者提示信息,在此不做限定。
基于上述技術(shù)方案,本申請(qǐng)實(shí)施例提供的流量檢測(cè)方法,通過(guò)抓取預(yù)定數(shù)量的數(shù)據(jù)包,分類處理后的正常數(shù)據(jù)矩陣和異常數(shù)據(jù)矩陣,以訓(xùn)練初始邏輯回歸模型,再使用訓(xùn)練后的邏輯回歸模型檢測(cè)流量數(shù)據(jù)。其中的邏輯回歸模型可以更準(zhǔn)確的反映該流量數(shù)據(jù)的特征,在檢測(cè)識(shí)別時(shí)可以更準(zhǔn)確的識(shí)別出正常流量數(shù)據(jù)和異常流量數(shù)據(jù)。
請(qǐng)參考圖2,圖2為本申請(qǐng)實(shí)施例所提供的分類處理的流程圖?;谏鲜鰧?shí)施例,其具體步驟如下:
s101,在云平臺(tái)中,抓取預(yù)訂數(shù)量的數(shù)據(jù)包。
s102,根據(jù)k-均值聚類方法分類數(shù)據(jù)包,得到正常流量數(shù)據(jù)包和異常流量數(shù)據(jù)包。
其中,在數(shù)據(jù)包分類處理的流程中,可以根據(jù)對(duì)準(zhǔn)確率,速度和負(fù)載的不同要求選擇其他的聚類方法,在此實(shí)施例中,優(yōu)選的是k-均值聚類方法分類數(shù)據(jù)包。該方法在所需的準(zhǔn)確度下可以以更快的速度和更小的負(fù)載完成要求。
s103,對(duì)正常流量數(shù)據(jù)包和異常流量數(shù)據(jù)包進(jìn)行屬性分解,得到正常流量數(shù)據(jù)矩陣和異常流量數(shù)據(jù)矩陣。
需要說(shuō)明的是,數(shù)據(jù)包的屬性分解,是指通過(guò)抓取網(wǎng)絡(luò)數(shù)據(jù)包的形式,記載其抓取過(guò)程中產(chǎn)生tcp/ip連接的屬性記錄。這些記錄的格式如下:
r(tsrc.ipsrc.portdst.ipdst.portflag)
其中,t代表數(shù)據(jù)包連接時(shí)間,src.ip代表源ip,src.port代表源端口,dst.ip代表目的ip,dst.port代表目的端口,flag標(biāo)識(shí)tcp/ip的連接狀態(tài)。
將以上每組屬性,寫到一個(gè)向量r中,因此,一個(gè)向量r即可代表一個(gè)tcp/ip連接。
上述異常流量數(shù)據(jù)包和正常流量數(shù)據(jù)包進(jìn)行屬性分解的向量以矩陣的形式組合,以形成正常流量數(shù)據(jù)矩陣和異常流量數(shù)據(jù)矩陣。
請(qǐng)參考圖3,圖3為本申請(qǐng)實(shí)施例所提供的k-均值聚類方法分類的流程圖。基于上述實(shí)施例,其分類處理步驟中k-均值聚類方法如下:
s1021,選擇數(shù)據(jù)包內(nèi)的任意的兩個(gè)向量分別作為第一組聚類中心。
s1022,計(jì)算數(shù)據(jù)包內(nèi)的其他的每個(gè)向量到第一組聚類中心的每個(gè)聚類中心的距離之和,把每個(gè)向量歸類到距離之和最小的那個(gè)類中,得到第一分類結(jié)果。
特別強(qiáng)調(diào)的是,上述距離計(jì)算使用的公式是歐幾里得距離計(jì)算公式:
計(jì)算后得到每個(gè)向量對(duì)應(yīng)兩個(gè)聚類中心的兩個(gè)距離數(shù)據(jù),根據(jù)距離數(shù)據(jù)的大小劃分其每個(gè)向量的歸類,將距離數(shù)據(jù)較小的聚類中心的類別作為其歸類。
s1023,選擇數(shù)據(jù)包內(nèi)的任意的其他的兩個(gè)向量分別作為第二組聚類中心,并計(jì)算得到第二分類結(jié)果。
s1024,判斷第一分類結(jié)果與第二分類結(jié)果是否一致,如果是,輸出第一分類結(jié)果或第二分類結(jié)果;如果否,將第二分類結(jié)果作為第一分類結(jié)果,并重新選擇其他的向量作為第二組聚類中心,計(jì)算第二分類結(jié)果,直到第一分類結(jié)果與第二分類結(jié)果一致,輸出第一分類結(jié)果或者第二分類結(jié)果。
也就是說(shuō),分類開始時(shí),選擇兩個(gè)向量作為第一組聚類中心的兩個(gè)聚類中心,計(jì)算每個(gè)向量分別到兩個(gè)聚類中心的距離,并把該向量歸類到距離最近的那個(gè)聚類中心對(duì)應(yīng)的那個(gè)類中,得到上述第一聚類結(jié)果。然后從已選作為聚類中心的向量外再選擇新的向量作為第二組聚類中心,其選擇的也是兩個(gè)向量,并計(jì)算得到第二分類結(jié)果。判斷分類結(jié)果是否一致,如果一致,則是分類結(jié)果不再發(fā)生變化,可以輸出分類結(jié)果。如果不一致,則是所計(jì)算的兩個(gè)分類結(jié)果沒(méi)有反應(yīng)最終的分類結(jié)果,還需再次分類,因此,重新選擇聚類中心,判斷是否一致,直到分類結(jié)果不再發(fā)生變化時(shí)輸出分類結(jié)果。
其中,對(duì)于判斷過(guò)程,對(duì)比的對(duì)象是第一分類結(jié)果和第二分類結(jié)果,該兩個(gè)分類結(jié)果都為兩個(gè)關(guān)于所有向量的集合,因此,其對(duì)比過(guò)程是比較兩個(gè)集合中的元素是否一一對(duì)應(yīng)。且上述第一分類結(jié)果和第二分類結(jié)果其結(jié)果都是包含分類后的異常流量數(shù)據(jù)包和正常流量數(shù)據(jù)包。
在選擇聚類中心時(shí),確定第二組聚類中心的向量選擇不包含在已被當(dāng)作聚類中心的向量中。也就是說(shuō)優(yōu)選的每個(gè)向量至多被選作一次聚類中心。
值得一提的是,上述方法他的目標(biāo)是尋找使得下式滿足的聚類si
請(qǐng)參考圖4,圖4為本申請(qǐng)實(shí)施例所提供的訓(xùn)練過(guò)程的流程圖。基于上述實(shí)施例,在對(duì)初始邏輯回歸模型進(jìn)行訓(xùn)練時(shí),主要分為訓(xùn)練和校驗(yàn)兩個(gè)步驟:
s201,選取第一預(yù)定比例的正常流量數(shù)據(jù)矩陣和第二預(yù)定比例的異常流量數(shù)據(jù)矩陣,對(duì)初始邏輯回歸模型進(jìn)行訓(xùn)練,獲得基本邏輯回歸模型;
s203,選取第三預(yù)定比例的正常流量數(shù)據(jù)矩陣和第四預(yù)定比例的異常流量數(shù)據(jù)矩陣,對(duì)基本邏輯回歸模型進(jìn)行校驗(yàn),獲得邏輯回歸模型。
需要強(qiáng)調(diào)的是,訓(xùn)練過(guò)程的原理是,首先尋找一個(gè)合適的預(yù)測(cè)函數(shù),用h表示,他就是邏輯回歸模型的分類函數(shù),輸入關(guān)于流量數(shù)據(jù)的向量r得到一個(gè)輸出結(jié)果,根據(jù)結(jié)果就可以判斷此流量數(shù)據(jù)的向量r的歸類。
預(yù)測(cè)函數(shù)h為:
然后需要根據(jù)已知的第一預(yù)定比例的正常流量數(shù)據(jù)矩陣和第二預(yù)定比例的異常流量數(shù)據(jù)矩陣,計(jì)算出預(yù)測(cè)函數(shù)的相關(guān)參數(shù)值。因此,構(gòu)造損失函數(shù),該函數(shù)表示預(yù)測(cè)的輸出與訓(xùn)練函數(shù)的偏差,將損失求和或者求平均,用j(θ)表示。
損失函數(shù)j(θ)為:
最后,尋找損失函數(shù)j(θ)的最小值,利用梯度下降法,迭代求解θ的值:
至此,得到其預(yù)測(cè)函數(shù)的相關(guān)參數(shù),帶入到預(yù)測(cè)函數(shù),再輸入第三預(yù)定比例的正常流量數(shù)據(jù)矩陣和第四預(yù)定比例的異常流量數(shù)據(jù)矩陣到預(yù)測(cè)函數(shù),根據(jù)已知的分類結(jié)果和預(yù)測(cè)函數(shù)得到的預(yù)測(cè)結(jié)果,校驗(yàn)其參數(shù)。并實(shí)時(shí)計(jì)算其正確率,當(dāng)正確率達(dá)到預(yù)定準(zhǔn)確度時(shí),可以認(rèn)定此訓(xùn)練過(guò)程結(jié)束。在此實(shí)施例中,設(shè)置預(yù)定準(zhǔn)確度為90%,可以根據(jù)不同的要求和使用環(huán)境做修改。
需要注意的是其中第一預(yù)定比例、第二預(yù)定比例、第三預(yù)定比例和第四預(yù)定比例設(shè)置方法,可以根據(jù)不同的要求設(shè)置不同的比例,例如依次設(shè)置為70%、70%、30%和30%,也可以依次設(shè)置為70%、70%、20%和20%。需要注意的是為了提高數(shù)據(jù)使用率,優(yōu)選的設(shè)置方法可以遵守以下原則,第一預(yù)定比例和第三預(yù)定比例相加為100%,同樣的,第二預(yù)定比例和第四預(yù)定相加也為100%。因此,在此實(shí)施例中,將上述預(yù)定比例依次設(shè)置為80%、80%、20%和20%,可以使訓(xùn)練更有效率的達(dá)到模型的預(yù)定準(zhǔn)確度。
此外,基于上述任意技術(shù)方案,為了面對(duì)特征不斷變化的異常流量數(shù)據(jù),同時(shí)減少技術(shù)人員對(duì)該系統(tǒng)的維護(hù)和更新頻率,且提高邏輯回歸模型的識(shí)別能力以及識(shí)別可靠性和準(zhǔn)確性,進(jìn)一步設(shè)置自學(xué)習(xí)功能。即優(yōu)選的,當(dāng)檢測(cè)出現(xiàn)異常流量數(shù)據(jù)時(shí),邏輯回歸模型根據(jù)異常流量數(shù)據(jù)的特征,對(duì)自身的檢測(cè)函數(shù)更新。
基于上述技術(shù)方案,本申請(qǐng)實(shí)施例提供的流量檢測(cè)方法,通過(guò)使用k-均值聚類方法,使分類過(guò)程快捷高效。在訓(xùn)練后使用剩余的分類好的數(shù)據(jù)包校驗(yàn)邏輯回歸模型,使其準(zhǔn)確度達(dá)到預(yù)定標(biāo)準(zhǔn),從而具有更高的準(zhǔn)確度。
下面對(duì)本申請(qǐng)實(shí)施例提供的系統(tǒng)進(jìn)行介紹,下文描述的流量檢測(cè)系統(tǒng)與上文描述的流量檢測(cè)方法可相互對(duì)應(yīng)參照。
請(qǐng)參考圖5,圖5為本申請(qǐng)實(shí)施例所提供的系統(tǒng)框圖。該系統(tǒng)可以包括:
分類處理單元100,用于將抓取預(yù)定數(shù)量的數(shù)據(jù)包進(jìn)行分類處理,得到正常流量數(shù)據(jù)矩陣和異常流量數(shù)據(jù)矩陣;
訓(xùn)練單元200,用于正常流量數(shù)據(jù)矩陣和異常流量數(shù)據(jù)矩陣對(duì)初始邏輯回歸模型進(jìn)行訓(xùn)練,獲得邏輯回歸模型;
檢測(cè)單元300,用于邏輯回歸模型檢測(cè)流量數(shù)據(jù),以將流量數(shù)據(jù)分類為正常流量數(shù)據(jù)和異常流量數(shù)據(jù)。
請(qǐng)參考圖6,圖6為本申請(qǐng)實(shí)施例所提供的分類處理單元的框圖。
基于上述系統(tǒng)實(shí)施例,該分類處理單元100可以包括:
數(shù)據(jù)包抓取子單元101,用于在云平臺(tái)中,抓取預(yù)定數(shù)量的數(shù)據(jù)包;
分類子單元102,用于根據(jù)k-均值聚類方法分類數(shù)據(jù)包,得到正常流量數(shù)據(jù)包和異常流量數(shù)據(jù)包;
屬性分解子單元103,用于對(duì)正常流量數(shù)據(jù)包和異常流量數(shù)據(jù)包進(jìn)行屬性分解,得到正常流量數(shù)據(jù)矩陣和異常流量數(shù)據(jù)矩陣。
請(qǐng)參考圖7,圖7為本申請(qǐng)實(shí)施例所提供的訓(xùn)練單元的框圖。
基于上述系統(tǒng)實(shí)施例,該訓(xùn)練單元200可以包括:
初始訓(xùn)練子單元201,選取第一預(yù)定比例的正常流量數(shù)據(jù)矩陣和第二預(yù)定比例的異常流量數(shù)據(jù)矩陣,對(duì)初始邏輯回歸模型進(jìn)行訓(xùn)練,獲得基本邏輯回歸模型;
校驗(yàn)子單元202,用于選取第三預(yù)定比例的正常流量數(shù)據(jù)矩陣和第四預(yù)定比例的異常流量數(shù)據(jù)矩陣,對(duì)基本邏輯回歸模型進(jìn)行校驗(yàn),獲得邏輯回歸模型。
基于上述任一系統(tǒng)實(shí)施例,還可以包括:
自學(xué)習(xí)單元,用于當(dāng)分類出現(xiàn)異常流量數(shù)據(jù)時(shí),使用異常流量數(shù)據(jù)對(duì)邏輯回歸模型進(jìn)行更新。
說(shuō)明書中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見即可。對(duì)于實(shí)施例公開的系統(tǒng)而言,由于其與實(shí)施例公開的方法相對(duì)應(yīng),所以描述的比較簡(jiǎn)單,相關(guān)之處參見方法部分說(shuō)明即可。
專業(yè)人員還可以進(jìn)一步意識(shí)到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來(lái)實(shí)現(xiàn),為了清楚地說(shuō)明硬件和軟件的可互換性,在上述說(shuō)明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來(lái)執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來(lái)使用不同方法來(lái)實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
結(jié)合本文中所公開的實(shí)施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來(lái)實(shí)施。軟件模塊可以置于隨機(jī)存儲(chǔ)器(ram)、內(nèi)存、只讀存儲(chǔ)器(rom)、電可編程rom、電可擦除可編程rom、寄存器、硬盤、可移動(dòng)磁盤、cd-rom、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。
以上對(duì)本申請(qǐng)所提供的流量檢測(cè)方法及系統(tǒng)進(jìn)行了詳細(xì)介紹。本文中應(yīng)用了具體個(gè)例對(duì)本申請(qǐng)的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本申請(qǐng)的方法及其核心思想。應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本申請(qǐng)?jiān)淼那疤嵯?,還可以對(duì)本申請(qǐng)進(jìn)行若干改進(jìn)和修飾,這些改進(jìn)和修飾也落入本申請(qǐng)權(quán)利要求的保護(hù)范圍內(nèi)。