亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種數(shù)據(jù)特征提取的方法及裝置的制造方法

文檔序號:9791787閱讀:626來源:國知局
一種數(shù)據(jù)特征提取的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001 ]本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)特征提取的方法及裝置。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,新的應(yīng)用和服務(wù)不斷涌現(xiàn),應(yīng)用層協(xié)議層出不窮。這在帶給人們極大便利的同時,其安全性問題也日趨嚴(yán)重。各種新的應(yīng)用和未知協(xié)議導(dǎo)致網(wǎng)絡(luò)越來越復(fù)雜并且難以管理。對應(yīng)用層協(xié)議精確識別進(jìn)而根據(jù)識別結(jié)果進(jìn)行指定流量的管理是目前解決上述問題的主要方式,也是新一代防火墻的核心所在。目前,對應(yīng)用層協(xié)議的識別,使用最廣泛的技術(shù)為深度包檢測(Deep Packet Inspect1n,DPI)技術(shù),這也是最有效的技術(shù),因為DPI技術(shù)主要是基于應(yīng)用層特征的提取,根據(jù)提取的應(yīng)用層特征,進(jìn)行形成一定的規(guī)則,用于應(yīng)用識別,所以在指定流量中提取出有效的應(yīng)用層特征,是應(yīng)用識別的主要工作。
[0003]目前,可以通過對網(wǎng)絡(luò)流量的捕獲分析而得到應(yīng)用層特征,但現(xiàn)有技術(shù)中的應(yīng)用層特征提取都是采用簡單的自動化特征提取的方法,主要是針對通用應(yīng)用層協(xié)議的特征提取,例如,超文本傳送協(xié)議(Hypertext transfer protocol ,HTTP),而對于私有協(xié)議及加密流量的特征提取,目前還沒有比較有效的方法。

【發(fā)明內(nèi)容】

[0004]本發(fā)明實施例提供一種數(shù)據(jù)特征提取的方法及裝置,以解決現(xiàn)有技術(shù)中無法有效地提取私有協(xié)議和加密流量中的數(shù)據(jù)特征的問題。
[0005]本發(fā)明實施例提供的具體技術(shù)方案如下:
[0006]—種數(shù)據(jù)特征提取的方法,包括:
[0007]確定需要進(jìn)行數(shù)據(jù)特征提取的第一會話和第二會話,并從上述第一會話包含的報文中提取第一設(shè)定數(shù)目的報文信息,以及從上述第二會話包含的報文中提取第二設(shè)定數(shù)目的報文信息;其中,上述第一會話和第二會話是同一個應(yīng)用操作在不同時間所產(chǎn)生的,上述報文信息中至少包括報文應(yīng)用層負(fù)載字節(jié)序;
[0008]采用指定的匹配算法,依次根據(jù)從第一會話中提取的每一個報文應(yīng)用層負(fù)載字節(jié)序構(gòu)建相應(yīng)的狀態(tài)機,每構(gòu)建一個狀態(tài)機,將當(dāng)前構(gòu)建的狀態(tài)機與從第二會話中提取的每一個報文應(yīng)用層負(fù)載字節(jié)序依次進(jìn)行匹配,每執(zhí)行一次匹配,對當(dāng)前獲得的匹配結(jié)果進(jìn)行迭代合并,并根據(jù)預(yù)設(shè)規(guī)則計算當(dāng)前獲得的經(jīng)迭代合并后的匹配結(jié)果的權(quán)值,直到確定當(dāng)前獲得的權(quán)值不小于設(shè)定閾值為止,確定匹配成功并停止構(gòu)建狀態(tài)機及停止匹配,以及將當(dāng)前獲得的經(jīng)迭代合并后的匹配結(jié)果作為上述應(yīng)用操作的數(shù)據(jù)特征。
[0009]本發(fā)明實施例中,確定同一個應(yīng)用操作對應(yīng)的第一會話和第二會話,根據(jù)從第一會話提取的報文應(yīng)用層負(fù)載字節(jié)序和指定的匹配算法,構(gòu)建狀態(tài)機,并根據(jù)從第二會話中提取的報文應(yīng)用層負(fù)載字節(jié)序,進(jìn)行匹配,最后獲得應(yīng)用操作的數(shù)據(jù)特征,解決了對私有協(xié)議及加密流量的應(yīng)用特征提取難得問題,提高了效率,解放了人力,并且通過特征串迭代合并得到了強特征集合,提高了所提取特征串的有效性。
[0010]較佳的,從上述第一會話包含的報文中提取第一設(shè)定數(shù)目的報文信息,以及從上述第二會話包含的報文中提取第二設(shè)定數(shù)目的報文信息,具體包括:
[0011]依次從第一會話中讀取報文,每讀取一個報文,判斷當(dāng)前讀取的一個報文的應(yīng)用層負(fù)載長度是否大于0,且是否為重傳報文,并在確定上述一個報文的應(yīng)用層負(fù)載長度大于0,且不是重傳報文時,從上述一個報文中提取報文信息,直至提取到第一設(shè)定數(shù)目的報文信息為止,停止讀取報文;其中,報文信息中至少包括應(yīng)用層負(fù)載長度;
[0012]依次從第二會話中讀取報文,每讀取一個報文,判斷當(dāng)前讀取的一個報文的應(yīng)用層負(fù)載長度是否大于0,且是否為重傳報文,并在確定上述一個報文的應(yīng)用層負(fù)載長度大于0,且不是重傳報文時,從上述一個報文中提取報文信息,直至提取到第二設(shè)定數(shù)目的報文信息為止,停止讀取報文;其中,報文信息中至少包括應(yīng)用層負(fù)載長度。
[0013]這樣,在提取報文信息時,進(jìn)行預(yù)處理,即只對符合要求的報文進(jìn)行提取,縮小了進(jìn)行數(shù)據(jù)特征提取的報文的范圍,減少了大量報文匹配帶來的性能損耗。
[0014]較佳的,采用指定的匹配算法,根據(jù)從第一會話中提取的一個報文應(yīng)用層負(fù)載字節(jié)序構(gòu)建相應(yīng)的狀態(tài)機,具體包括:
[0015]基于從第一會話中提取的一個報文應(yīng)用層負(fù)載字節(jié)序,采用預(yù)設(shè)方式進(jìn)行處理,得到相應(yīng)的模式串集合;
[0016]基于上述模式串集合,采用指定的匹配算法構(gòu)建相應(yīng)的狀態(tài)機。
[0017]這樣,通過構(gòu)建模式串集合和多模式匹配,進(jìn)而得到應(yīng)用操作的數(shù)據(jù)特征,而不是使用逐字節(jié)序比較等方法,這樣顯著提升了匹配速度,也提高了匹配精度,排除了漏掉有效特征串的問題。
[0018]較佳的,基于從第一會話中提取的一個報文應(yīng)用層負(fù)載字節(jié)序,采用預(yù)設(shè)方式進(jìn)行處理,得到相應(yīng)的模式串集合,具體包括:
[0019]從上述一個報文應(yīng)用層負(fù)載字節(jié)序中的第一個字節(jié)開始,以2字節(jié)為單位進(jìn)行字節(jié)段提取,直到剩余字節(jié)的長度小于2為止,獲得第一提取結(jié)果;
[0020]從上述一個報文應(yīng)用層負(fù)載字節(jié)序中的第二個字節(jié)開始,以2字節(jié)為單位進(jìn)行字節(jié)段提取,直到剩余字節(jié)的長度小于2為止,獲得第二提取結(jié)果;
[0021]分別將第一提取結(jié)果和第二提取結(jié)果中包含的每一個字節(jié)段作為一個模式串,生成相應(yīng)的模式串集合,并保存每一個模式串在上述一個報文應(yīng)用層負(fù)載字節(jié)序中的起始位置值和結(jié)束位置值。
[0022]較佳的,將當(dāng)前構(gòu)建的狀態(tài)機與從第二會話中提取的任意一個報文應(yīng)用層負(fù)載字節(jié)序進(jìn)行匹配后,獲得相應(yīng)的匹配結(jié)果,在上述匹配結(jié)果中記錄有匹配得到的所有特征串,以及每一個特征串在第一會話中的報文應(yīng)用層負(fù)載字節(jié)序中的起始位置值和結(jié)束位置值,以及在第二會話中的報文應(yīng)用層負(fù)載字節(jié)序中的起始位置值和結(jié)束位置值;其中,上述特征串上述特征串為,上述當(dāng)前構(gòu)建的狀態(tài)機中的所有模式串中在上述從第二會話中提取的任意一個報文應(yīng)用層負(fù)載字節(jié)序中出現(xiàn)的任意一個模式串。
[0023]較佳的,將當(dāng)前構(gòu)建的狀態(tài)機與從第二會話中提取的任意一個報文應(yīng)用層負(fù)載字節(jié)序進(jìn)行匹配,獲得相應(yīng)的匹配結(jié)果,對當(dāng)前獲得的匹配結(jié)果進(jìn)行迭代合并,具體包括:
[0024]將當(dāng)前獲得的匹配結(jié)果中的每一個特征串按照每一個特征串在第二會話中的報文應(yīng)用層負(fù)載字節(jié)序中的起始位置值以及每一個特征串在第一會話中的報文應(yīng)用層負(fù)載字節(jié)序中的起始位置值,按照從小到大的順序進(jìn)行排序;
[0025]排序結(jié)束后,從第一個特征串開始,依次判斷相鄰的兩個特征串是否可以迭代合并,若是,則獲得合并后的特征串,否則,從下一個特征串開始,依次判斷相鄰的兩個特征串是否可以迭代合并,直到最后一個特征串為止;其中,迭代合并表示,相鄰的兩個特征串合并后,將合并后的特征串再和相鄰的下一個特征串進(jìn)行合并;
[0026]針對上述所有不能迭代合并的特征串,依次判斷每一個特征串在第二會話中的報文應(yīng)用層負(fù)載字節(jié)序中的起始位置值和在第一會話中的報文應(yīng)用層負(fù)載字節(jié)序中的起始位置值是否相等時,若是,則進(jìn)行保留,否則,進(jìn)行舍棄;
[0027]將經(jīng)迭代合并后的匹配結(jié)果中連續(xù)為0x00和Oxff的特征串舍棄
[0028]這樣,對匹配結(jié)果,進(jìn)行了優(yōu)化,舍棄弱特征,并通過特征串合并等操作得到了強特征集合,提高了所提取特征串的有效性,降低了數(shù)據(jù)特征提取中無效特征產(chǎn)生的噪聲。
[0029]較佳的,判斷相鄰的兩個特征串是否可以迭代合并,具體包括:
[0030]判斷相鄰的兩個特征串是否滿足預(yù)設(shè)條件;其中,上述預(yù)設(shè)條件為,相鄰的兩個特征串中的前一個特征串在第二會話中的報文應(yīng)用層負(fù)載字節(jié)序中的結(jié)束位置值不小于后一個特征串在第二會話中的報文應(yīng)用層負(fù)載字節(jié)序中的起始位置值,并且,后一個特征串在第二會話中的報文應(yīng)用層負(fù)載字節(jié)序中的結(jié)束位置值與前一個特征串在第二會話中的報文應(yīng)用層負(fù)載字節(jié)序中的起始位置值的第一差值,與,后一個特征串在第一會話中的報文應(yīng)用層負(fù)載字節(jié)序中的結(jié)束位置值與前一個特征串在第一會話中的報文應(yīng)用層負(fù)載字節(jié)序中的起始位置值的第二差值相等,以及,上述第一差值和第二差值都不小于2。
[0031]較佳的,根據(jù)預(yù)設(shè)規(guī)則計算當(dāng)前獲得的經(jīng)迭代合并后的匹配結(jié)果的權(quán)值,具體包括:
[0032]將經(jīng)迭代合并后的匹配結(jié)果中每一個長度為2的特征串的權(quán)值設(shè)置為I,并將每一個長度大于2的特征串的權(quán)值設(shè)置為2;
[0033]將經(jīng)迭代合并后的匹配結(jié)果中每一個特征串的權(quán)值進(jìn)行累加,獲得所有特征串的權(quán)值和,并上述權(quán)值和作為上述當(dāng)前獲得的迭代合并后的匹配結(jié)果的權(quán)值。
[0034]較佳的,進(jìn)一步包括:
[0035]根據(jù)上述報文信息和上述應(yīng)用操作的數(shù)據(jù)特征,構(gòu)建識別上述應(yīng)用操作的規(guī)則,其中,報文信息中至少包括,源端口、目的端口、報文在會話中的位置以及報文在會話中的流向ig息。
[0036]一種數(shù)據(jù)特征提取裝置,包括:
[0037]提取單元,用于確定需要進(jìn)行數(shù)據(jù)特征提取的第一會話和第二會話,并從上述第一會話包含的報文中提取第一設(shè)定數(shù)目的報文信息,以及從上述第二會話包含的報文中提取第二設(shè)定數(shù)目的報文信息;其中,上述第一會話和第二會話是同一個應(yīng)用操作在不同時間所產(chǎn)生的,上述報文信息中至少包括報文應(yīng)用層負(fù)載字節(jié)序;
[0038]匹配單元,用于采用指定的匹配算法,依次根據(jù)從第一會話中提取的每一個報文應(yīng)用層負(fù)載字節(jié)序構(gòu)建相應(yīng)的狀態(tài)機,每構(gòu)建一個狀態(tài)機,將當(dāng)前構(gòu)建的狀態(tài)機與從第二會話中提取的每一個報文應(yīng)用層負(fù)載字節(jié)序依次進(jìn)行匹配,每執(zhí)行一次匹配,對當(dāng)前獲得的匹配結(jié)果進(jìn)行迭代合并,并根據(jù)預(yù)設(shè)規(guī)則計算當(dāng)前獲得的經(jīng)迭代合并后的匹配結(jié)果的權(quán)值,直到確定當(dāng)前獲得的權(quán)值不小于設(shè)定閾值為止,確定匹配成功并停止構(gòu)建狀態(tài)機及停止匹配,以及將當(dāng)前獲得的經(jīng)迭代合并后的匹配結(jié)果作為上述應(yīng)用操作的數(shù)據(jù)特征。
[0039]本發(fā)明實施例中,確定同一個應(yīng)用操作對應(yīng)的第一會話和第二會話,根據(jù)從第一會話提取的報文應(yīng)用層負(fù)載字節(jié)序和指定的匹配算法,構(gòu)建狀態(tài)機,并根據(jù)從第二會話中提取的報文應(yīng)用層負(fù)載字節(jié)序,進(jìn)行匹配,最后獲得應(yīng)用操作的數(shù)據(jù)特征,解決了對私有協(xié)議及加密流量的應(yīng)用特征提取難得問題,提高了效率,解放了人力,并且,通過特征串迭代合并得到了強特征集合,提高了所提取特征串的有效性。
[0040]較佳的,從上述第一會話包含的報文中提取第一設(shè)定數(shù)目的報文信息,以及從上述第二會話包含的報文中提取第二設(shè)定數(shù)目的報文信息時,提取單元具體用于:
[0041]依次從第一會話中讀取報文,每讀取一個報文,判斷當(dāng)前讀取的一個報文的應(yīng)用層負(fù)載長度是否大于0,且是否為重傳報文,并在確定上述一個報文的應(yīng)用層負(fù)載長度大于0,且不是重傳報
當(dāng)前第1頁1 2 3 4 5 6 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1