專利名稱:基于傳輸層特征的p2p網(wǎng)絡(luò)流量識(shí)別方法
技術(shù)領(lǐng)域:
本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種基于傳輸層特征的P2P網(wǎng) 絡(luò)流量的識(shí)別方法。
背景技術(shù):
P2P(Peer to Peer)網(wǎng)絡(luò)結(jié)構(gòu)是對(duì)等網(wǎng)絡(luò)結(jié)構(gòu),在P2P網(wǎng)絡(luò)中每一個(gè) 節(jié)點(diǎn)所擁有的權(quán)利和義務(wù)都是一樣的。它徹底改變了傳統(tǒng)的客戶/服務(wù)器 模式,即網(wǎng)絡(luò)以服務(wù)器為中心,各種各樣的資源都集中在服務(wù)器上,客戶 端通過(guò)網(wǎng)絡(luò)連到服務(wù)器上檢索、下載、上傳資料或請(qǐng)求運(yùn)算。而P2P網(wǎng)絡(luò) 結(jié)構(gòu)中不存在中心節(jié)點(diǎn)(或中心服務(wù)器),每一個(gè)節(jié)點(diǎn)(Peer)都同時(shí)扮演著 信息消費(fèi)者、信息提供者兩個(gè)角色。P2P技術(shù)以其并行傳輸?shù)奶攸c(diǎn),為用 戶提供了便捷和高質(zhì)量的用戶體驗(yàn),新的P2P應(yīng)用也在不斷的涌現(xiàn)。
近年來(lái)P2P網(wǎng)絡(luò)技術(shù)已經(jīng)廣泛應(yīng)用于互聯(lián)網(wǎng)用戶之間的數(shù)據(jù)共享和下 載領(lǐng)域,其產(chǎn)生的流量正在逐年上升。德國(guó)互聯(lián)網(wǎng)調(diào)研機(jī)構(gòu)ipoque稱, P2P已經(jīng)徹底統(tǒng)治了當(dāng)今的互聯(lián)網(wǎng),其中50-90%的總流量都來(lái)自P2P應(yīng) 用,已經(jīng)成為網(wǎng)絡(luò)帶寬的最大消費(fèi)者。與此同時(shí),由于P2P業(yè)務(wù)本身是一 種難以管理的流量,從現(xiàn)有的應(yīng)用情況看,其對(duì)帶寬的侵蝕性以及本身路 由的無(wú)管理性給網(wǎng)絡(luò)帶來(lái)了巨大的負(fù)擔(dān)和大量的低效流量。主要表現(xiàn)在使 得網(wǎng)絡(luò)增量不增收,給寬帶電信運(yùn)營(yíng)商可持續(xù)良性發(fā)展帶來(lái)了較大的壓 力。同時(shí)由于P2P網(wǎng)絡(luò)流量對(duì)帶寬的嚴(yán)重侵蝕,嚴(yán)重的影響了傳統(tǒng)的網(wǎng)絡(luò) 應(yīng)用,使得正常業(yè)務(wù)無(wú)法高效正常進(jìn)行。由此可見,有效識(shí)別P2P應(yīng)用所產(chǎn)生的流量對(duì)于網(wǎng)絡(luò)管理者來(lái)說(shuō)至關(guān)重要,目前的識(shí)別方法主要有下面 三類(l)基于網(wǎng)絡(luò)端口的識(shí)別技術(shù)早期的集中式P2P應(yīng)用通常有較為 固定的通信網(wǎng)絡(luò)端口號(hào),因此只要監(jiān)控各種P2P應(yīng)用相應(yīng)的網(wǎng)絡(luò)端口號(hào)就 可以比較容易的實(shí)現(xiàn)監(jiān)測(cè)和控制。然而目前網(wǎng)絡(luò)上廣泛應(yīng)用的P2P應(yīng)用多 采用動(dòng)態(tài)隨機(jī)網(wǎng)絡(luò)端口號(hào)的方法,使得網(wǎng)絡(luò)管理者無(wú)法獲得P2P應(yīng)用當(dāng)前
真正使用的網(wǎng)絡(luò)端口號(hào)。同時(shí)有些P2P應(yīng)用使用熟知網(wǎng)絡(luò)端口號(hào),例如80 端口等,P2P網(wǎng)絡(luò)流量將混藏在這些熟知網(wǎng)絡(luò)端口號(hào)相應(yīng)的其他網(wǎng)絡(luò)應(yīng)用 的網(wǎng)絡(luò)流量中。這些問(wèn)題使得基于網(wǎng)絡(luò)端口的識(shí)別技術(shù)失去了作用。
(2) 深度數(shù)據(jù)包識(shí)別技術(shù)即利用P2P應(yīng)用數(shù)據(jù)包的數(shù)據(jù)報(bào)文特征碼 來(lái)標(biāo)識(shí)P2P網(wǎng)絡(luò)流量,依據(jù)這些數(shù)據(jù)報(bào)文特征碼對(duì)通過(guò)網(wǎng)關(guān)設(shè)備的每一個(gè) 數(shù)據(jù)包進(jìn)行基于數(shù)據(jù)報(bào)文特征碼的數(shù)據(jù)報(bào)文檢測(cè), 一旦匹配上某類特征碼 就可以確定該數(shù)據(jù)包是P2P數(shù)據(jù)包。此方法可以很好的解決P2P應(yīng)用多 采用動(dòng)態(tài)隨機(jī)網(wǎng)絡(luò)端口號(hào)和熟知網(wǎng)絡(luò)端口號(hào)的問(wèn)題,識(shí)別的精確度較高。 但是由于需要對(duì)數(shù)據(jù)包的數(shù)據(jù)報(bào)文內(nèi)容進(jìn)行檢測(cè)分析,效率較低,很難在 大規(guī)模的網(wǎng)絡(luò)帶寬上實(shí)時(shí)在線應(yīng)用。同時(shí)對(duì)于數(shù)據(jù)報(bào)文加密的P2P應(yīng)用, 深度數(shù)據(jù)包識(shí)別技術(shù)也將無(wú)法奏效。
(3) 基于流統(tǒng)計(jì)特性的識(shí)別技術(shù)由于P2P技術(shù)并行傳輸?shù)奶攸c(diǎn),使 得P2P應(yīng)用通常伴隨著大量的TCP連接和UDP流產(chǎn)生,因此當(dāng)某臺(tái)主機(jī) 的TCP連接數(shù)和UDP流數(shù)大于某個(gè)設(shè)定閾值時(shí)可以判定為有P2P。該方式 能夠早期預(yù)警P2P網(wǎng)絡(luò)流量的發(fā)生,但是無(wú)法區(qū)分具體的P2P應(yīng)用類型, 而且誤報(bào)率和漏報(bào)率也較高。
發(fā)明內(nèi)容
本發(fā)明的目的在于解決現(xiàn)有P2P網(wǎng)絡(luò)流量識(shí)別技術(shù)中效率和準(zhǔn)確度較低的問(wèn)題,提供了一種基于傳輸層特征的P2P網(wǎng)絡(luò)流量識(shí)別方法。 本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案是-
步驟1:首先,建立雙向網(wǎng)絡(luò)流表,其表結(jié)構(gòu)的屬性包含P2P應(yīng)用 類型、協(xié)議類型、源IP、源端口、目的IP、目的端口、第1個(gè)數(shù)據(jù)包的 包方向、第1個(gè)數(shù)據(jù)包的數(shù)據(jù)報(bào)文長(zhǎng)度、…、第N個(gè)數(shù)據(jù)包的包方向、第 N個(gè)數(shù)據(jù)包的數(shù)據(jù)報(bào)文長(zhǎng)度;
步驟2:其次,將各種被監(jiān)控的P2P應(yīng)用雙向網(wǎng)絡(luò)流傳輸層的特征序 列存儲(chǔ)在P2P特征模板庫(kù)中;
步驟3:對(duì)接收到的數(shù)據(jù)包的包頭進(jìn)行解析,獲得此數(shù)據(jù)包的協(xié)議類 型、源IP、源端PI、目的IP、目的端口和數(shù)據(jù)報(bào)文長(zhǎng)度;
步驟4:在雙向網(wǎng)絡(luò)流表中查詢相同協(xié)議類型下是否存在雙向網(wǎng)絡(luò)流 記錄的源IP、源端口、目的IP和目的端口與數(shù)據(jù)包中的源IP、源端口、 目的IP和目的端口相同,或者雙向網(wǎng)絡(luò)流記錄的目的IP、目的端口、源 IP和源端口與數(shù)據(jù)包中的源IP、源端口、目的IP和目的端口相同;
步驟5:如果存在這樣的雙向網(wǎng)絡(luò)流,轉(zhuǎn)向步驟6;如果不存在,創(chuàng) 建新的雙向網(wǎng)絡(luò)流記錄并記錄此數(shù)據(jù)包的包方向和數(shù)據(jù)報(bào)文長(zhǎng)度載入此 雙向網(wǎng)絡(luò)流記錄的相應(yīng)位置中,轉(zhuǎn)向步驟3;
步驟6:判斷此雙向網(wǎng)絡(luò)流的P2P應(yīng)用類型是否已經(jīng)標(biāo)定,如果沒有 標(biāo)定,在此雙向網(wǎng)絡(luò)流中記錄此數(shù)據(jù)包的包方向和數(shù)據(jù)報(bào)文長(zhǎng)度載入網(wǎng)絡(luò) 流表中;如果已經(jīng)標(biāo)定,轉(zhuǎn)向步驟3;
步驟7:判斷此網(wǎng)絡(luò)數(shù)據(jù)流的數(shù)據(jù)包記錄有沒有達(dá)到設(shè)定的數(shù)據(jù)包數(shù)閾 值N,如果沒有,轉(zhuǎn)向步驟3;如果已經(jīng)達(dá)到閾值N表示此雙向網(wǎng)絡(luò)流的
特征序列已經(jīng)收集完畢,將此雙向網(wǎng)絡(luò)流的特征序列與P2P特征模板庫(kù)中相同協(xié)議類型下的特征序列模板進(jìn)行匹配,求取兩者的最長(zhǎng)公共子序列的 長(zhǎng)度,若兩者最長(zhǎng)公共子序列的長(zhǎng)度與此特征序列模板的長(zhǎng)度相同,則認(rèn) 為兩者相互匹配,由此可以識(shí)別出此流的P2P應(yīng)用類型;如果不存在能夠 匹配上的特征序列模板,則此雙向網(wǎng)絡(luò)流為被監(jiān)控P2P應(yīng)用外的其他網(wǎng)絡(luò)
應(yīng)用的數(shù)據(jù)流,標(biāo)記此雙向網(wǎng)絡(luò)流記錄的P2P應(yīng)用類型載入P2P特征模板 庫(kù)中,轉(zhuǎn)向步驟3。
本發(fā)明通過(guò)分析P2P應(yīng)用所產(chǎn)生的數(shù)據(jù)包特征,提取P2P應(yīng)用在傳輸 層的特征,根據(jù)傳輸層特征實(shí)現(xiàn)P2P應(yīng)用識(shí)別。雙向網(wǎng)絡(luò)流定義為本地主 機(jī)的某一端口與遠(yuǎn)端主機(jī)的某一端口之間在某種協(xié)議類型(TCP或UDP) 互相通信下所產(chǎn)生的數(shù)據(jù)包集合,如果設(shè)定時(shí)間閾值T內(nèi)無(wú)相應(yīng)的數(shù)據(jù)包, 則認(rèn)為該雙向網(wǎng)絡(luò)流己經(jīng)結(jié)束。
P2P應(yīng)用的雙向網(wǎng)絡(luò)流中都包含用于控制雙方網(wǎng)絡(luò)通信的數(shù)據(jù)包,此 類數(shù)據(jù)包多出現(xiàn)雙向網(wǎng)絡(luò)流的起始和結(jié)束階段。這些控制數(shù)據(jù)包報(bào)文的內(nèi) 容比較相似,而且長(zhǎng)度大小比較固定,因此可以通過(guò)識(shí)別此類控制數(shù)據(jù)包 來(lái)實(shí)現(xiàn)對(duì)相應(yīng)P2P應(yīng)用的識(shí)別。
本發(fā)明僅利用雙向網(wǎng)絡(luò)流的前N個(gè)數(shù)據(jù)包的傳輸層特征信息,從而實(shí) 現(xiàn)在P2P網(wǎng)絡(luò)流量建立初期快速高效識(shí)別的效果。同時(shí)由于僅僅利用數(shù)據(jù) 包的包頭信息,高效簡(jiǎn)單,無(wú)需逐報(bào)文檢測(cè),系統(tǒng)開銷小,可以實(shí)時(shí)在線 應(yīng)用。
圖1是本發(fā)明的結(jié)構(gòu)框圖2是圖1中雙向網(wǎng)絡(luò)流表的一條雙向網(wǎng)絡(luò)流記錄的數(shù)據(jù)結(jié)構(gòu)圖; 圖3是本發(fā)明基于傳輸層特征的P2P網(wǎng)絡(luò)流量識(shí)別方法的流程圖。
具體實(shí)施例方式
下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明。
參見圖1,本發(fā)明的數(shù)據(jù)包獲取模塊用于對(duì)被監(jiān)控網(wǎng)絡(luò)數(shù)據(jù)包的獲取, 并對(duì)數(shù)據(jù)包按照本文雙向網(wǎng)絡(luò)流的定義將其傳輸層特征存儲(chǔ)到雙向網(wǎng)絡(luò) 流表中相應(yīng)的雙向網(wǎng)絡(luò)流記錄中。定時(shí)更新模塊用于對(duì)雙向網(wǎng)絡(luò)流表進(jìn)行
定時(shí)更新,將超過(guò)規(guī)定時(shí)間閾值T內(nèi)無(wú)數(shù)據(jù)包出入的雙向網(wǎng)絡(luò)流做相應(yīng)的 結(jié)果輸出處理,將此雙向網(wǎng)絡(luò)流記錄清除。
P2P特征模板庫(kù)中存儲(chǔ)各種被監(jiān)控P2P應(yīng)用雙向網(wǎng)絡(luò)流傳輸層的特征 序列,向特征匹配模塊提供特征序列模板。
參照?qǐng)D2, P2P應(yīng)用類型記錄此雙向網(wǎng)絡(luò)流的P2P應(yīng)用類型,由于本 發(fā)明所提出的識(shí)別方法只利用雙向網(wǎng)絡(luò)流的前若干個(gè)數(shù)據(jù)包,因此在雙向 網(wǎng)絡(luò)流開始之初就可以判斷此網(wǎng)絡(luò)流的P2P應(yīng)用類型了,因此,當(dāng)正在處 理中的數(shù)據(jù)包査詢到對(duì)應(yīng)雙向網(wǎng)絡(luò)流記錄中的P2P應(yīng)用類型已經(jīng)斷定時(shí), 就不需要再做任何處理了,直接轉(zhuǎn)向下一個(gè)數(shù)據(jù)包的處理。
協(xié)議類型(TCP或UDP)記錄此雙向網(wǎng)絡(luò)流的傳輸層協(xié)議類型。源IP、 源端口、目的IP和目的端口對(duì)應(yīng)的記錄此雙向網(wǎng)絡(luò)流第一個(gè)數(shù)據(jù)包的源 IP、源端口、目的IP和目的端口。
對(duì)于每一個(gè)數(shù)據(jù)包只記錄數(shù)據(jù)包方向和數(shù)據(jù)報(bào)文長(zhǎng)度兩個(gè)特征。當(dāng)數(shù) 據(jù)包的源IP、源端口、目的IP和目的端口與對(duì)應(yīng)的雙向網(wǎng)絡(luò)流的源IP、 源端口、目的IP和目的端口對(duì)應(yīng)相同時(shí),數(shù)據(jù)包方向?yàn)檎?;?dāng)數(shù)據(jù)包的 源IP、源端口、目的IP和目的端口與對(duì)應(yīng)的雙向網(wǎng)絡(luò)數(shù)據(jù)流的目的IP、 目的端口、源IP和源端口對(duì)應(yīng)相同時(shí),數(shù)據(jù)包方向?yàn)樨?fù)。
P2P特征模板庫(kù)中主要包括目前國(guó)內(nèi)流行的P2P軟件,其中包括迅雷、Maze、 BT、 PPLIVE、沸點(diǎn)等,其雙向網(wǎng)絡(luò)流的特征如下所示
(1) 迅雷(Thunder)特征序列包括兩個(gè)特征序列+21 -13 +0 -134 和-75 +18 -0,協(xié)議類型均為TCP。
(2) Maze特征序列包括兩個(gè)特征序列-4 +0 -16 +4 -0 +8 -4 +0 +4 -0 +16 —4 +0 —16 +4和+4 -0 +16 —4 +0 —8 +4 —0 _4 +0 -16 +4 -0 +16 -4,協(xié)議類型均為TCP。
(3) BT特征序列特征序列僅有一個(gè)+68,協(xié)議類型為TCP。
(4) PPLIVE網(wǎng)絡(luò)電視特征序列+80 -80 +95 -95,協(xié)議類型為UDP。
(5) 沸點(diǎn)網(wǎng)絡(luò)電視特征序列+112 -116 +116,協(xié)議類型為UDP。 雙向網(wǎng)絡(luò)流及其傳輸層特征的生成。
本發(fā)明定義雙向網(wǎng)絡(luò)流第一個(gè)數(shù)據(jù)包的方向?yàn)檎?,相反的方向?yàn)樨?fù) 向。每個(gè)數(shù)據(jù)包只記錄數(shù)據(jù)包方向和數(shù)據(jù)報(bào)文長(zhǎng)度兩個(gè)特征,由于數(shù)據(jù)包 的長(zhǎng)度往往受到網(wǎng)絡(luò)環(huán)境的影響會(huì)有所變化,所以采取數(shù)據(jù)報(bào)文長(zhǎng)度作為 特征而不采取數(shù)據(jù)包長(zhǎng)度。因此每個(gè)數(shù)據(jù)包的特征最后可以歸結(jié)為一個(gè)數(shù) x, x的正負(fù)代表數(shù)據(jù)包的方向,x的絕對(duì)值代表數(shù)據(jù)報(bào)文的大小。
當(dāng)雙向網(wǎng)絡(luò)流記錄的數(shù)據(jù)包數(shù)達(dá)到設(shè)定閾值N時(shí),得到此雙向網(wǎng)絡(luò)流 的傳輸層特征序列,即長(zhǎng)度為N的數(shù)據(jù)序列。
將此雙向網(wǎng)絡(luò)流的傳輸層特征序列與P2P特征模板庫(kù)中相同協(xié)議類型 下的特征序列模板進(jìn)行匹配,求取兩者的最長(zhǎng)公共子序列的長(zhǎng)度。若兩者
最長(zhǎng)公共子序列的長(zhǎng)度相對(duì)特征序列模板的長(zhǎng)度的比值超過(guò)設(shè)定閾值e ,
則認(rèn)為兩者相互匹配,由此可以識(shí)別出此流的P2P應(yīng)用類型。如果不存在 能夠匹配上的特征序列模板,則此雙向網(wǎng)絡(luò)流為被監(jiān)控P2P應(yīng)用外的其他 網(wǎng)絡(luò)應(yīng)用的數(shù)據(jù)流參照?qǐng)D3,包括下面幾個(gè)步驟
步驟1:首先,建立雙向網(wǎng)絡(luò)流表,其表結(jié)構(gòu)的屬性包含P2P應(yīng)用 類型、協(xié)議類型、源IP、源端口、目的IP、目的端口、第1個(gè)數(shù)據(jù)包的 包方向、第1個(gè)數(shù)據(jù)包的數(shù)據(jù)報(bào)文長(zhǎng)度、…、第N個(gè)數(shù)據(jù)包的包方向、第 N個(gè)數(shù)據(jù)包的數(shù)據(jù)報(bào)文長(zhǎng)度;
步驟2:其次,將各種被監(jiān)控的P2P應(yīng)用雙向網(wǎng)絡(luò)流傳輸層的特征序 列存儲(chǔ)在P2P特征模板庫(kù)中;
步驟3:對(duì)接收到的數(shù)據(jù)包的包頭進(jìn)行解析,獲得此數(shù)據(jù)包的協(xié)議類 型、源IP、源端口、目的IP、目的端口和數(shù)據(jù)報(bào)文長(zhǎng)度;
步驟4:在雙向網(wǎng)絡(luò)流表中査詢相同協(xié)議類型下是否存在雙向網(wǎng)絡(luò)流 記錄的源IP、源端口、目的IP和目的端口與數(shù)據(jù)包中的源IP、源端口、 目的IP和目的端口相同,或者雙向網(wǎng)絡(luò)流記錄的目的IP、目的端口、源 IP和源端口與數(shù)據(jù)包中的源IP、源端口、目的IP和目的端口相同;
步驟5:如果存在這樣的雙向網(wǎng)絡(luò)流,轉(zhuǎn)向步驟6;如果不存在,創(chuàng) 建新的雙向網(wǎng)絡(luò)流記錄并記錄此數(shù)據(jù)包的包方向和數(shù)據(jù)報(bào)文長(zhǎng)度載入此 雙向網(wǎng)絡(luò)流記錄的相應(yīng)位置中,轉(zhuǎn)向步驟3;
步驟6:判斷此雙向網(wǎng)絡(luò)流的P2P應(yīng)用類型是否已經(jīng)^^定,如果沒有 標(biāo)定,在此雙向網(wǎng)絡(luò)流中記錄此數(shù)據(jù)包的包方向和數(shù)據(jù)報(bào)文長(zhǎng)度載入網(wǎng)絡(luò) 流表中;如果己經(jīng)標(biāo)定,轉(zhuǎn)向步驟3;
步驟7:判斷此網(wǎng)絡(luò)數(shù)據(jù)流的數(shù)據(jù)包記錄有沒有達(dá)到設(shè)定的數(shù)據(jù)包數(shù)閾 值N,如果沒有,轉(zhuǎn)向步驟3;如果已經(jīng)達(dá)到閾值N表示此雙向網(wǎng)絡(luò)流的 特征序列己經(jīng)收集完畢,將此雙向網(wǎng)絡(luò)流的特征序列與P2P特征模板庫(kù)中 相同協(xié)議類型下的特征序列模板進(jìn)行匹配,求取兩者的最長(zhǎng)公共子序列的長(zhǎng)度,若兩者最長(zhǎng)公共子序列的長(zhǎng)度與此特征序列模板的長(zhǎng)度相同,則認(rèn) 為兩者相互匹配,由此可以識(shí)別出此流的P2P應(yīng)用類型;如果不存在能夠 匹配上的特征序列模板,則此雙向網(wǎng)絡(luò)流為被監(jiān)控P2P應(yīng)用外的其他網(wǎng)絡(luò)
應(yīng)用的數(shù)據(jù)流,標(biāo)記此雙向網(wǎng)絡(luò)流記錄的P2P應(yīng)用類型載入P2P特征模板 庫(kù)中,轉(zhuǎn)向步驟3。
本發(fā)明利用動(dòng)態(tài)規(guī)劃(Dynamic Programming)的方法來(lái)求取雙向網(wǎng) 絡(luò)流傳輸層特征序列與P2P特征模板庫(kù)中特征序列模板最長(zhǎng)公共子序列的 長(zhǎng)度。我們定義"m,")為特征序列X = {^;c2,...,&}和特征序列 y-0^,h,…,jU最長(zhǎng)公共子序列的長(zhǎng)度,動(dòng)態(tài)規(guī)劃算法是一個(gè)逐步迭代的
過(guò)程,其迭代過(guò)程如下式所示
0 w = 0或者w = 0<formula>formula see original document page 11</formula>w>0并且jcm =^
Lmax(丄(nt-l,M),l(w,w-l》w,w>0并且x加
在實(shí)現(xiàn)過(guò)程中,利用數(shù)x來(lái)代表數(shù)據(jù)包的特征,x的正負(fù)號(hào)代表數(shù)據(jù)包
的方向,x的絕對(duì)值代表數(shù)據(jù)包的數(shù)據(jù)報(bào)文長(zhǎng)度。為了避免造成+0和-0
相互匹配的錯(cuò)誤結(jié)果,可以將雙向網(wǎng)絡(luò)流傳輸層特征序列和P2P特征模板
庫(kù)中特征序列模板中的+0和-0替換成+0. 5和-O. 5兩個(gè)數(shù)。
本發(fā)明所提出的基于傳輸層特征的P2P網(wǎng)絡(luò)流量識(shí)別方法,具有以下
有益效果
1、 提出基于雙向網(wǎng)絡(luò)流的傳輸層數(shù)據(jù)包方向和數(shù)據(jù)報(bào)文長(zhǎng)度兩個(gè)特 征來(lái)實(shí)現(xiàn),無(wú)需檢測(cè)數(shù)據(jù)報(bào)文內(nèi)容,系統(tǒng)開銷小,識(shí)別準(zhǔn)確度高,可以 實(shí)時(shí)在線應(yīng)用;
2、 由于識(shí)別只利用雙向網(wǎng)絡(luò)流的前N個(gè)數(shù)據(jù)包,可以及時(shí)迅速的發(fā) 現(xiàn)識(shí)別P2P網(wǎng)絡(luò)流量。
權(quán)利要求
1. 一種基于傳輸層特征的P2P網(wǎng)絡(luò)流量識(shí)別方法,其特征在于,包括以下步驟步驟1首先,建立雙向網(wǎng)絡(luò)流表,其表結(jié)構(gòu)的屬性包含P2P應(yīng)用類型、協(xié)議類型、源IP、源端口、目的IP、目的端口、第1個(gè)數(shù)據(jù)包的包方向、第1個(gè)數(shù)據(jù)包的數(shù)據(jù)報(bào)文長(zhǎng)度、…、第N個(gè)數(shù)據(jù)包的包方向、第N個(gè)數(shù)據(jù)包的數(shù)據(jù)報(bào)文長(zhǎng)度;步驟2其次,將各種被監(jiān)控的P2P應(yīng)用雙向網(wǎng)絡(luò)流傳輸層的特征序列存儲(chǔ)在P2P特征模板庫(kù)中;步驟3對(duì)接收到的數(shù)據(jù)包的包頭進(jìn)行解析,獲得此數(shù)據(jù)包的協(xié)議類型、源IP、源端口、目的IP、目的端口和數(shù)據(jù)報(bào)文長(zhǎng)度;步驟4在雙向網(wǎng)絡(luò)流表中查詢相同協(xié)議類型下是否存在雙向網(wǎng)絡(luò)流記錄的源IP、源端口、目的IP和目的端口與數(shù)據(jù)包中的源IP、源端口、目的IP和目的端口相同,或者雙向網(wǎng)絡(luò)流記錄的目的IP、目的端口、源IP和源端口與數(shù)據(jù)包中的源IP、源端口、目的IP和目的端口相同;步驟5如果存在這樣的雙向網(wǎng)絡(luò)流,轉(zhuǎn)向步驟6;如果不存在,創(chuàng)建新的雙向網(wǎng)絡(luò)流記錄并記錄此數(shù)據(jù)包的包方向和數(shù)據(jù)報(bào)文長(zhǎng)度載入此雙向網(wǎng)絡(luò)流記錄的相應(yīng)位置中,轉(zhuǎn)向步驟3;步驟6判斷此雙向網(wǎng)絡(luò)流的P2P應(yīng)用類型是否已經(jīng)標(biāo)定,如果沒有標(biāo)定,在此雙向網(wǎng)絡(luò)流中記錄此數(shù)據(jù)包的包方向和數(shù)據(jù)報(bào)文長(zhǎng)度載入網(wǎng)絡(luò)流表中;如果已經(jīng)標(biāo)定,轉(zhuǎn)向步驟3;步驟7判斷此網(wǎng)絡(luò)數(shù)據(jù)流的數(shù)據(jù)包記錄有沒有達(dá)到設(shè)定的數(shù)據(jù)包數(shù)閾值N,如果沒有,轉(zhuǎn)向步驟3;如果已經(jīng)達(dá)到閾值N表示此雙向網(wǎng)絡(luò)流的特征序列已經(jīng)收集完畢,將此雙向網(wǎng)絡(luò)流的特征序列與P2P特征模板庫(kù)中相同協(xié)議類型下的特征序列模板進(jìn)行匹配,求取兩者的最長(zhǎng)公共子序列的長(zhǎng)度,若兩者最長(zhǎng)公共子序列的長(zhǎng)度與此特征序列模板的長(zhǎng)度相同,則認(rèn)為兩者相互匹配,由此可以識(shí)別出此流的P2P應(yīng)用類型;如果不存在能夠匹配上的特征序列模板,則此雙向網(wǎng)絡(luò)流為被監(jiān)控P2P應(yīng)用外的其他網(wǎng)絡(luò)應(yīng)用的數(shù)據(jù)流,標(biāo)記此雙向網(wǎng)絡(luò)流記錄的P2P應(yīng)用類型載入P2P特征模板庫(kù)中,轉(zhuǎn)向步驟3。
全文摘要
一種基于傳輸層特征的P2P網(wǎng)絡(luò)流量識(shí)別方法,通過(guò)分析P2P應(yīng)用所產(chǎn)生的數(shù)據(jù)包特征,提取P2P應(yīng)用在傳輸層的特征,根據(jù)傳輸層特征實(shí)現(xiàn)P2P應(yīng)用識(shí)別。本方法僅利用網(wǎng)絡(luò)流的前若干數(shù)據(jù)包的特征信息,可以在網(wǎng)絡(luò)流建立初期實(shí)現(xiàn)P2P應(yīng)用的高效識(shí)別,有利于實(shí)現(xiàn)P2P應(yīng)用的控制。同時(shí)本方法僅僅用到傳輸層的數(shù)據(jù)包方向和數(shù)據(jù)包報(bào)文長(zhǎng)度兩個(gè)特征,簡(jiǎn)單方便,無(wú)需對(duì)數(shù)據(jù)包負(fù)載進(jìn)行分析檢測(cè),系統(tǒng)開銷小,可以實(shí)現(xiàn)實(shí)時(shí)在線應(yīng)用。
文檔編號(hào)H04L29/06GK101282331SQ20081001816
公開日2008年10月8日 申請(qǐng)日期2008年5月9日 優(yōu)先權(quán)日2008年5月9日
發(fā)明者王平輝, 濤 秦, 管曉宏 申請(qǐng)人:西安交通大學(xué)