專(zhuān)利名稱(chēng):一種網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)領(lǐng)域,尤其涉及對(duì)點(diǎn)對(duì)點(diǎn)(P2P)協(xié)議進(jìn)行識(shí)別的協(xié)議識(shí)別設(shè)備和方法。
背景技術(shù):
P2P網(wǎng)絡(luò)技術(shù)目前正日益在網(wǎng)絡(luò)中獲得廣泛應(yīng)用,P2P是英文Peer-to-Peer (對(duì)等)的簡(jiǎn)稱(chēng),其又被稱(chēng)為“點(diǎn)對(duì)點(diǎn)”。在P2P網(wǎng)絡(luò)應(yīng)用中,所有的節(jié)點(diǎn)都是對(duì)等的,節(jié)點(diǎn)之間通過(guò)直接互連來(lái)共享信息資源或進(jìn)行文件交互而無(wú)需依賴集中式服務(wù)器。因此,利用P2P 技術(shù)可以更加方便快捷地共享和得到各類(lèi)資源。然而隨著P2P網(wǎng)絡(luò)技術(shù)的大范圍使用,P2P流量逐漸成為了互聯(lián)網(wǎng)流量的重要組成部分,網(wǎng)絡(luò)中的大量帶寬同時(shí)也被P2P流量占用,這樣引起了網(wǎng)絡(luò)的擁塞,并且妨礙了正常的網(wǎng)絡(luò)業(yè)務(wù)開(kāi)展和關(guān)鍵應(yīng)用,例如,嚴(yán)重影響了用戶正常的Web和電子郵件等應(yīng)用。另外,P2P網(wǎng)絡(luò)應(yīng)用穿透了現(xiàn)有的防火墻和安全代理,利用P2P網(wǎng)絡(luò)應(yīng)用,用戶可以通過(guò)并不安全的網(wǎng)絡(luò)環(huán)境獲得應(yīng)用程序并使用,這樣會(huì)使得病毒和惡意代碼得以躲過(guò)安全審查入侵到內(nèi)部網(wǎng)絡(luò)。因此,為了有效的管理網(wǎng)絡(luò)和合理的利用網(wǎng)絡(luò)資源,需要對(duì)采用P2P技術(shù)的網(wǎng)絡(luò)通信進(jìn)行精確識(shí)別以便加以控制和/或限制。目前存在有下列幾種用于對(duì)P2P網(wǎng)絡(luò)應(yīng)用所使用的P2P網(wǎng)絡(luò)協(xié)議進(jìn)行識(shí)別的技術(shù)
1、端口識(shí)別法,端口識(shí)別法根據(jù)TCP(傳輸控制協(xié)議)數(shù)據(jù)包或UDP (用戶數(shù)據(jù)報(bào)協(xié)議) 數(shù)據(jù)包首部的源端口號(hào)或目的端口號(hào)來(lái)識(shí)別P2P流量,然而隨著P2P網(wǎng)絡(luò)技術(shù)的發(fā)展,越來(lái)越多的P2P網(wǎng)絡(luò)應(yīng)用采用隨機(jī)的端口來(lái)建立連接,因此,端口識(shí)別法漏報(bào)P2P網(wǎng)絡(luò)連接的問(wèn)題也越來(lái)越大;
2、DPI(Deep Packet Inspection,深度包檢測(cè))識(shí)別法,DPI識(shí)別法通過(guò)數(shù)據(jù)包深層掃描而在TCP數(shù)據(jù)包或UDP數(shù)據(jù)包負(fù)載中查找一個(gè)協(xié)議區(qū)別于其它協(xié)議的特征字符串來(lái)識(shí)別 P2P協(xié)議,DPI識(shí)別法對(duì)于明文傳輸?shù)腜2P數(shù)據(jù)流具有較高的識(shí)別率,但是現(xiàn)在許多P2P協(xié)議都采用加密方式進(jìn)行傳輸,因此就無(wú)法利用DPI識(shí)別法來(lái)識(shí)別采用加密方式傳輸數(shù)據(jù)的 P2P協(xié)議;以及
3、基于行為特征識(shí)別法等幾種識(shí)別,基于行為特征識(shí)別法通過(guò)確定在一段時(shí)間內(nèi),用戶保持的TCP或UDP連接中,目的端口在IOM以上的連接數(shù)與目的端口在IOM以下的連接數(shù)的比值是否大于預(yù)定閥值來(lái)確定用戶是否正在使用P2P網(wǎng)絡(luò)應(yīng)用。然而諸如游戲和數(shù)據(jù)庫(kù)等應(yīng)用的流量在這方面的特征和P2P應(yīng)用的特征有些類(lèi)似,因此,基于行為特征存在較大的誤報(bào)風(fēng)險(xiǎn)。因此,目前還不存在一種可以高效地識(shí)別網(wǎng)絡(luò)應(yīng)用所采用的網(wǎng)絡(luò)協(xié)議,尤其是P2P 網(wǎng)絡(luò)應(yīng)用采用的P2P協(xié)議的協(xié)議識(shí)別技術(shù)。
發(fā)明內(nèi)容
鑒于上述問(wèn)題,提出了本發(fā)明以便提供一種克服上述問(wèn)題或者至少部分地解決或者減緩上述問(wèn)題的對(duì)諸如點(diǎn)對(duì)點(diǎn)(P2P)協(xié)議之類(lèi)的網(wǎng)絡(luò)協(xié)議進(jìn)行識(shí)別的協(xié)議識(shí)別設(shè)備和方法。根據(jù)本發(fā)明的一個(gè)方面,提供了對(duì)在客戶端和服務(wù)器之間傳輸網(wǎng)絡(luò)數(shù)據(jù)所采用的網(wǎng)絡(luò)協(xié)議進(jìn)行識(shí)別的網(wǎng)絡(luò)協(xié)議識(shí)別方法,包括步驟獲取在傳輸所述網(wǎng)絡(luò)數(shù)據(jù)時(shí)的同一會(huì)話中的多個(gè)數(shù)據(jù)包,并將所述多個(gè)數(shù)據(jù)包劃分為從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包和從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包;針對(duì)所述從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包,計(jì)算與所述數(shù)據(jù)包的大小相關(guān)的第一指標(biāo)以及與所述數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔相關(guān)的第二指標(biāo);針對(duì)所述從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包,計(jì)算與所述數(shù)據(jù)包的大小相關(guān)的第三指標(biāo)以及與所述數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔相關(guān)的第四指標(biāo);構(gòu)造包括所述第一指標(biāo)、第二指標(biāo)、第三指標(biāo)和第四指標(biāo)為其分量的特征向量;以及根據(jù)所述特征向量來(lái)確定傳輸所述網(wǎng)絡(luò)數(shù)據(jù)所采用的網(wǎng)絡(luò)協(xié)議。根據(jù)本發(fā)明的另一個(gè)方面,提供了一種網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備,包括數(shù)據(jù)接收器,配置為接收以待識(shí)別網(wǎng)絡(luò)協(xié)議在客戶端和服務(wù)器之間傳輸?shù)木W(wǎng)絡(luò)數(shù)據(jù);數(shù)據(jù)分類(lèi)器,配置為將數(shù)據(jù)接收器所接收的網(wǎng)絡(luò)數(shù)據(jù)根據(jù)其所屬的會(huì)話進(jìn)行分類(lèi);特征向量構(gòu)造器,配置為接收由所述數(shù)據(jù)分類(lèi)器分類(lèi)后屬于同一個(gè)會(huì)話的多個(gè)數(shù)據(jù)包,并將所述多個(gè)數(shù)據(jù)包劃分為從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包和從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包;針對(duì)所述從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包,計(jì)算與所述數(shù)據(jù)包的大小相關(guān)的第一指標(biāo)以及與所述數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔相關(guān)的第二指標(biāo);針對(duì)所述從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包,計(jì)算與所述數(shù)據(jù)包的大小相關(guān)的第三指標(biāo)以及與所述數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔相關(guān)的第四指標(biāo);以及構(gòu)造包括所述第一指標(biāo)、第二指標(biāo)、第三指標(biāo)和第四指標(biāo)為其分量的特征向量;協(xié)議識(shí)別器,接收所述特征向量構(gòu)造器所構(gòu)造的特征向量,并基于該特征向量確定待識(shí)別的網(wǎng)絡(luò)協(xié)議。
通過(guò)閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中
圖1示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的網(wǎng)絡(luò)協(xié)議識(shí)別方法的流程圖; 圖2示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的已知網(wǎng)絡(luò)協(xié)議特征值確定方法的流程圖3示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備的框圖;以及圖4示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的網(wǎng)絡(luò)協(xié)議識(shí)別系統(tǒng)。
具體實(shí)施例方式下面結(jié)合附圖和具體的實(shí)施方式對(duì)本發(fā)明作進(jìn)一步的描述。圖1示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的網(wǎng)絡(luò)協(xié)議識(shí)別方法100的流程圖。方法100始于步驟S110,其中獲取以待識(shí)別的網(wǎng)絡(luò)協(xié)議在客戶端和服務(wù)器之間傳輸?shù)木W(wǎng)絡(luò)數(shù)據(jù)。應(yīng)當(dāng)注意的是,在網(wǎng)絡(luò)傳輸領(lǐng)域,尤其是基于P2P協(xié)議的網(wǎng)絡(luò)傳輸中,服務(wù)器和客戶端屬于相對(duì)的概念,即參與網(wǎng)絡(luò)傳輸?shù)囊环皆谟行﹤鬏斨邪缪莘?wù)器的作用,而在另一些傳輸中扮演客戶端的作用,這在網(wǎng)絡(luò)傳輸領(lǐng)域是眾所周知的。因此,在本申請(qǐng)中,有關(guān)客戶端和服務(wù)器的限定是相對(duì)的,將發(fā)起請(qǐng)求的一方稱(chēng)為客戶端,而將接收請(qǐng)求并應(yīng)答該請(qǐng)求的一方稱(chēng)為服務(wù)器。在步驟SllO中,在獲取網(wǎng)絡(luò)數(shù)據(jù)時(shí),需要獲取屬于同一個(gè)會(huì)話 (session)的多個(gè)數(shù)據(jù)包。在網(wǎng)絡(luò)傳輸領(lǐng)域,會(huì)話是個(gè)公知的概念,其廣泛地在有狀態(tài)的網(wǎng)絡(luò)連接中使用,并包括多個(gè)相關(guān)聯(lián)的數(shù)據(jù)包。根據(jù)本發(fā)明的一個(gè)實(shí)施例,在步驟SllO中,獲取屬于同一個(gè)會(huì)話的多個(gè)數(shù)據(jù)包。隨后,在步驟S120中,根據(jù)所獲取數(shù)據(jù)包的傳輸方向,將數(shù)據(jù)包劃分為從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包和從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包。并且在步驟S130中,對(duì)于從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包,計(jì)算與數(shù)據(jù)包的大小相關(guān)的第一指標(biāo)以及與數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔相關(guān)的第二指標(biāo)。存在有多種第一指標(biāo)和第二指標(biāo),根據(jù)本發(fā)明的一個(gè)實(shí)施方式,第一指標(biāo)包括capsize,即客戶端向服務(wù)器發(fā)送的數(shù)據(jù)包的平均大小,以及Cs_sd_ psize,即客戶端向服務(wù)器發(fā)送的數(shù)據(jù)包的大小的標(biāo)準(zhǔn)差。第二指標(biāo)包括cS_ptime,即客戶端向服務(wù)器發(fā)送的數(shù)據(jù)包的到達(dá)時(shí)間的平均間隔,以及CS_Sd_ptime,即客戶端向服務(wù)器發(fā)送的數(shù)據(jù)包的到達(dá)時(shí)間的時(shí)間間隔的標(biāo)準(zhǔn)。隨后,在步驟S140中,對(duì)于從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包,計(jì)算與數(shù)據(jù)包的大小相關(guān)的第三指標(biāo)以及與所述數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔相關(guān)的第四指標(biāo)。類(lèi)似于第一和第二指標(biāo),也包括有多種第三指標(biāo)和第四指標(biāo),根據(jù)本發(fā)明的一個(gè)實(shí)施方式,第三指標(biāo)包括sc_psize,即服務(wù)器向客戶端發(fā)送的數(shù)據(jù)包的平均大小,以及sc_sd_psize,即服務(wù)器向客戶端發(fā)送的數(shù)據(jù)包的大小的標(biāo)準(zhǔn)差。第四指標(biāo)包括SC_ptime,即服務(wù)器向客戶端發(fā)送的數(shù)據(jù)包的到達(dá)時(shí)間的平均時(shí)間間隔,以及SC_Sd_ptime,即服務(wù)器向客戶端發(fā)送的數(shù)據(jù)包的到達(dá)時(shí)間的時(shí)間間隔的標(biāo)準(zhǔn)差。應(yīng)當(dāng)注意的是,上面針對(duì)第一、第二、第三和第四指標(biāo)給出了多個(gè)具體指標(biāo)值,但是應(yīng)當(dāng)理解,上面的具體指標(biāo)值僅僅是示例性的,所有可以反映數(shù)據(jù)包大小以及數(shù)據(jù)包到達(dá)目的地的時(shí)間間隔的任何指標(biāo)值都在本發(fā)明的保護(hù)范圍之內(nèi)。隨后,在步驟S150中,構(gòu)造包括第一指標(biāo)、第二指標(biāo)、第三指標(biāo)和第四指標(biāo)為其分量的特征向量P。由于第一、第二、第三和第四指標(biāo)中的每個(gè)可以包括不只一個(gè)指標(biāo)值, 因此,在步驟S150構(gòu)造的特征向量的維度也不僅僅局限為四維。例如,根據(jù)本發(fā)明的一個(gè)實(shí)施方式,所構(gòu)造的特征向量 P = cs_psize, cs_ptime, cs_sd_psize, cs_sd_ptime, sc_ psize, sc_ptime, sc_sd_psize, sc_sd_ptime)。接著,在步驟S160中,根據(jù)在步驟S150構(gòu)造的特征向量ρ來(lái)確定該會(huì)話,即網(wǎng)絡(luò)數(shù)據(jù)傳輸所采用的網(wǎng)絡(luò)協(xié)議。這可以通過(guò)將特征向量P和已知網(wǎng)絡(luò)協(xié)議的相應(yīng)特征向量 (即特征值)進(jìn)行比較來(lái)進(jìn)行。例如,根據(jù)本發(fā)明的一個(gè)實(shí)施方式,事先已經(jīng)獲悉了多種已知網(wǎng)絡(luò)協(xié)議的協(xié)議特征值,如果在步驟S150所構(gòu)造的特征向量P和某個(gè)已知網(wǎng)絡(luò)協(xié)議的協(xié)議特征值很接近,則可以確定網(wǎng)絡(luò)傳輸采用了該已知網(wǎng)絡(luò)協(xié)議??蛇x地,每個(gè)已知網(wǎng)絡(luò)協(xié)議都具有一個(gè)協(xié)議特征值以及與該協(xié)議特征值相關(guān)聯(lián)的特征范圍。將特征向量P到原點(diǎn)的歐幾里德距離確定為特征向量P的大小VpjP
22ι2ι222
Vp=sqrt (cs_psize +cs—ptime +cs_sd—psize +cs_sd—ptime +sc_psize +sc_ptime +sc_ Sd_pSize2+SC_Sd_ptime2)。如果特征向量ρ的大小Vp與該協(xié)議特征值的大小(即,該協(xié)議特征值到原點(diǎn)的距離)之差在與該協(xié)議特征值相關(guān)聯(lián)的特征范圍之內(nèi),則可以確定網(wǎng)絡(luò)傳輸采用了該已知網(wǎng)絡(luò)協(xié)議。還可以有其它方式來(lái)確定特征向量ρ是否與某個(gè)已知網(wǎng)絡(luò)協(xié)議的協(xié)議特征值很接近,例如可以計(jì)算該特征向量P和已知網(wǎng)絡(luò)協(xié)議的協(xié)議特征值之間的歐幾里德距離,并根據(jù)該距離值是否在預(yù)定范圍之內(nèi)來(lái)確定與特征向量P相對(duì)應(yīng)的網(wǎng)絡(luò)傳輸是否采用了該已知網(wǎng)絡(luò)協(xié)議。在上面參考圖1給出的網(wǎng)絡(luò)協(xié)議識(shí)別方法100中,在步驟S160中基于特征向量ρ 來(lái)確定網(wǎng)絡(luò)傳輸所采用的網(wǎng)絡(luò)協(xié)議時(shí),需要事先得知一些已知網(wǎng)絡(luò)協(xié)議的協(xié)議特征值,以及可選地,和這些協(xié)議特征值相關(guān)聯(lián)的特征范圍。圖2示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的已知網(wǎng)絡(luò)協(xié)議特征值確定方法200的流程圖。為了進(jìn)行如圖2所示的已知網(wǎng)絡(luò)協(xié)議特征值確定方法200,首先需要構(gòu)建穩(wěn)定的學(xué)習(xí)網(wǎng)絡(luò)環(huán)境,例如與外界網(wǎng)絡(luò)隔離以便僅僅在客戶端和服務(wù)器之間存在網(wǎng)絡(luò)傳輸?shù)木W(wǎng)絡(luò)環(huán)境,這樣當(dāng)利用已知網(wǎng)絡(luò)協(xié)議在客戶端和服務(wù)器之間進(jìn)行網(wǎng)絡(luò)傳輸時(shí),所獲取的、在客戶端和服務(wù)器之間傳輸?shù)木W(wǎng)絡(luò)數(shù)據(jù)都是利用該已知網(wǎng)絡(luò)協(xié)議的數(shù)據(jù)。方法200始于步驟S210,其中在所構(gòu)建的學(xué)習(xí)網(wǎng)絡(luò)環(huán)境中,以某個(gè)已知網(wǎng)絡(luò)協(xié)議在客戶端和服務(wù)器之間進(jìn)行網(wǎng)絡(luò)傳輸。隨后在步驟S220中,獲取在客戶端和服務(wù)器之間以該已知網(wǎng)絡(luò)協(xié)議傳輸?shù)亩鄠€(gè)會(huì)話,以及每個(gè)會(huì)話所包括的多個(gè)數(shù)據(jù)包??蛇x地,可以獲取每個(gè)會(huì)話所包括的全部數(shù)據(jù)包。隨后,在步驟S225中選擇在步驟S220所獲取的多個(gè)會(huì)話中的一個(gè)會(huì)話,并針對(duì)所選擇的會(huì)話,利用步驟S230-S260來(lái)計(jì)算與每個(gè)會(huì)話相對(duì)應(yīng)的特征向量0。步驟S230-S^0 的處理和上面參考圖1所描述的步驟S120-S150中的處理相同,這里就不再進(jìn)行贅述。隨后在步驟S270確定是否還有要處理的會(huì)話,如果有,則在步驟S275中新選擇要處理的會(huì)話, 并且返回到步驟S230以開(kāi)始對(duì)該會(huì)話的處理。如果在步驟S270確定對(duì)所有會(huì)話都進(jìn)行了處理,此時(shí)已經(jīng)獲得了與每個(gè)會(huì)話都相對(duì)應(yīng)的特征向量Pi (i=l, 2,…,N, N是會(huì)話數(shù)目)。隨后,在步驟S280中,根據(jù)所獲取的多個(gè)特征向量,來(lái)計(jì)算這些特征向量的特征中心,以作為與該已知網(wǎng)絡(luò)協(xié)議相對(duì)應(yīng)的協(xié)議特征值。可以存在有多種方法來(lái)根據(jù)多個(gè)特征向量來(lái)獲取這些特征向量的特征中心。根據(jù)本發(fā)明的一個(gè)實(shí)施方式,可以通過(guò)對(duì)所述多個(gè)特征向量進(jìn)行平均來(lái)獲得特征中心的位置和值。另外,根據(jù)本發(fā)明的另一個(gè)實(shí)施方式,可以利用K-means聚類(lèi)算法來(lái)從多個(gè)特征向量中獲取特征中心。k-means聚類(lèi)算法是聚類(lèi)算法之一,用于確定多個(gè)數(shù)據(jù)對(duì)象的數(shù)據(jù)中心,具體而言,該算法將η個(gè)數(shù)據(jù)對(duì)象劃分為預(yù)先確定的k個(gè)聚類(lèi)以便使得所獲得的聚類(lèi)滿足同一聚類(lèi)中的對(duì)象相似度較高;而不同聚類(lèi)中的對(duì)象相似度較小。其中聚類(lèi)相似度是利用各聚類(lèi)中對(duì)象的均值所獲得一個(gè)“中心對(duì)象”(引力中心)來(lái)進(jìn)行計(jì)算得到的。由于K-means聚類(lèi)算法是本領(lǐng)域常用的算法之一,對(duì)其具體流程就不再進(jìn)行贅述。在本發(fā)明的一個(gè)實(shí)施方式中,利用K-means聚類(lèi)算法來(lái)計(jì)算所獲取的多個(gè)特征向量的特征中心,并且可選地,還可以將利用K-means聚類(lèi)算法來(lái)計(jì)算特征中心時(shí)的偏差作為與該網(wǎng)絡(luò)協(xié)議相關(guān)聯(lián)的特征范圍,只要在當(dāng)上述協(xié)議識(shí)別方法中所確定的協(xié)議特征和特征中心的差在該特征范圍之內(nèi),就可以認(rèn)為該協(xié)議就是已知網(wǎng)絡(luò)協(xié)議。根據(jù)本發(fā)明的另一個(gè)實(shí)施方式,在步驟S280中,可以先為每個(gè)特征向量pi計(jì)算其到原點(diǎn)的歐基里德距離Oi (l<i<N)。隨后用K-mean聚類(lèi)算法算出一個(gè)聚類(lèi)中心值00, 以及與該聚類(lèi)中心值相關(guān)的范圍(00-0N,00+0N)。ON的大小與利用聚類(lèi)算法計(jì)算聚類(lèi)中心時(shí)的偏差相關(guān)。只要在當(dāng)上述協(xié)議識(shí)別方法中所確定的協(xié)議特征值的大小在該范圍 (00-0N, 00+0N)之內(nèi),就可以認(rèn)為該協(xié)議就是已知網(wǎng)絡(luò)協(xié)議。隨后,在步驟S290中,確定是否還有要確定其協(xié)議特征值的已知網(wǎng)絡(luò)協(xié)議,如果有,則在步驟S295中,利用該已知網(wǎng)絡(luò)協(xié)議在所構(gòu)建的學(xué)習(xí)網(wǎng)絡(luò)環(huán)境中的客戶端和服務(wù)器之間進(jìn)行網(wǎng)絡(luò)傳輸。并且返回到步驟S220來(lái)進(jìn)行對(duì)該已知網(wǎng)絡(luò)協(xié)議的處理。如果在步驟S290確定沒(méi)有更多的已知網(wǎng)絡(luò)協(xié)議要處理,則在步驟S297存儲(chǔ)所獲取的所有已知網(wǎng)絡(luò)協(xié)議的協(xié)議特征值以及可選的特征范圍,并結(jié)束該方法。 可選地,為了根據(jù)準(zhǔn)確地進(jìn)行如圖2所示的已知網(wǎng)絡(luò)協(xié)議特征值確定方法200,一般而言,要求在步驟S220中所獲取的會(huì)話具有一定的代表性,具體而言,需要在步驟S220 所獲取的會(huì)話包含一定數(shù)量的數(shù)據(jù)包。根據(jù)本發(fā)明的一個(gè)實(shí)施方式,當(dāng)一個(gè)會(huì)話所包含的數(shù)據(jù)包數(shù)量小于100個(gè)時(shí),將放棄該會(huì)話,即不再利用該會(huì)話進(jìn)行已知網(wǎng)絡(luò)協(xié)議特征值確定??蛇x地,當(dāng)會(huì)話中包括超過(guò)600個(gè)數(shù)據(jù)包時(shí),在步驟S220中僅僅獲取該會(huì)話中的600 個(gè)數(shù)據(jù)包來(lái)進(jìn)行后續(xù)處理。根據(jù)本發(fā)明的協(xié)議識(shí)別方法尤其適于對(duì)網(wǎng)絡(luò)中的各種P2P協(xié)議進(jìn)行識(shí)別。根據(jù)本發(fā)明的協(xié)議識(shí)別方法僅僅通過(guò)對(duì)數(shù)據(jù)流中的包大小、包時(shí)間間隔等信息進(jìn)行統(tǒng)計(jì)分析來(lái)進(jìn)行協(xié)議識(shí)別。而包大小和包時(shí)間間隔等信息與連接端口、數(shù)據(jù)包的具體特征或者客戶端連接TCP或UDP的個(gè)數(shù)無(wú)關(guān),所以不會(huì)出現(xiàn)因?yàn)殡S機(jī)端口而漏報(bào)誤報(bào)的問(wèn)題。另外,由于根據(jù)本發(fā)明的協(xié)議識(shí)別方法不需要對(duì)數(shù)據(jù)包進(jìn)行開(kāi)包檢測(cè),因此不會(huì)因?yàn)閿?shù)據(jù)包所承載的數(shù)據(jù)內(nèi)容無(wú)法讀出而導(dǎo)致無(wú)法識(shí)別的問(wèn)題,即根據(jù)本發(fā)明的協(xié)議識(shí)別方法可以用于對(duì)數(shù)據(jù)包內(nèi)容加密的協(xié)議進(jìn)行識(shí)別。圖3示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備300。如圖3 所示,網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備300包括數(shù)據(jù)接收器310、數(shù)據(jù)分類(lèi)器320、特征向量構(gòu)造器330和協(xié)議識(shí)別器340。數(shù)據(jù)接收器310接收以待識(shí)別網(wǎng)絡(luò)協(xié)議在客戶端和服務(wù)器之間傳輸?shù)木W(wǎng)絡(luò)數(shù)據(jù)。 應(yīng)當(dāng)注意的是,有關(guān)客戶端和服務(wù)器的限定是相對(duì)的,在本發(fā)明中,將發(fā)起請(qǐng)求的一方稱(chēng)為客戶端,而將接收請(qǐng)求并應(yīng)答該請(qǐng)求的一方稱(chēng)為服務(wù)器。數(shù)據(jù)分類(lèi)器320將數(shù)據(jù)接收器310接收的網(wǎng)絡(luò)數(shù)據(jù)根據(jù)其所屬的會(huì)話進(jìn)行分類(lèi)。 可選地,數(shù)據(jù)分類(lèi)器320選出屬于同一個(gè)會(huì)話的多個(gè)數(shù)據(jù)包。隨后,特征向量構(gòu)造器330 接收由數(shù)據(jù)分類(lèi)器320所選擇的同個(gè)會(huì)話的多個(gè)數(shù)據(jù)包,并構(gòu)造與該會(huì)話相對(duì)應(yīng)的特征向量。具體而言,特征向量構(gòu)造器330將多個(gè)數(shù)據(jù)包劃分為從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包和從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包。隨后,針對(duì)從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包,特征向量構(gòu)造器330計(jì)算與數(shù)據(jù)包的大小相關(guān)的第一指標(biāo)以及與數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔相關(guān)的第二指標(biāo)。針對(duì)從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包,特征向量構(gòu)造器330計(jì)算與數(shù)據(jù)包的大小相關(guān)的第三指標(biāo)以及與數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔相關(guān)的第四指標(biāo)。最后,特征向量構(gòu)造器330構(gòu)造包括第一指標(biāo)、第二指標(biāo)、第三指標(biāo)和第四指標(biāo)為其分量的特征向量作為與該會(huì)話相對(duì)應(yīng)的特征向量。如上所述,存在有多種第一指標(biāo)、第二指標(biāo)、第三指標(biāo)和第四指標(biāo)。根據(jù)本發(fā)明的一個(gè)實(shí)施方式,第一指標(biāo)包括cs_psize和cs_sd_psize。第二指標(biāo)包括cs_ptime和cs_ sd_ptime。第三指標(biāo)包括 sc_psize 禾口 sc_sd_psize。第四指標(biāo)包括 sc_ptime 禾口 sc_sd_ ptime。特征向量構(gòu)造器330構(gòu)造的特征向量為ρ = cs_psize, cs_ptime, cs_sd_psize, cs_ sd_ptime, sc_psize, sc_ptime, sc_sd_psize, sc_sd_ptime)。應(yīng)當(dāng)理解的是,上面針對(duì)第一、第二、第三和第四指標(biāo)給出了多個(gè)具體指標(biāo)值,但是應(yīng)當(dāng)理解,上面的具體指標(biāo)值僅僅是示例性的,所有可以反映數(shù)據(jù)包大小以及數(shù)據(jù)包到達(dá)目的地的時(shí)間間隔的任何指標(biāo)值都在本發(fā)明的保護(hù)范圍之內(nèi)。協(xié)議識(shí)別器340接收特征向量構(gòu)造器330所構(gòu)造的特征向量p,并基于該特征向量確定與該會(huì)話相對(duì)應(yīng)的網(wǎng)絡(luò)協(xié)議。協(xié)議識(shí)別器340可以通過(guò)將特征向量ρ和已知網(wǎng)絡(luò)協(xié)議的相應(yīng)特征向量(即特征值)進(jìn)行比較來(lái)確定與該會(huì)話相對(duì)應(yīng)的網(wǎng)絡(luò)協(xié)議。例如,根據(jù)本發(fā)明的一個(gè)實(shí)施方式,如果協(xié)議識(shí)別器340確定特征向量ρ和某個(gè)已知網(wǎng)絡(luò)協(xié)議的協(xié)議特征值很接近,則可以確定該會(huì)話,即網(wǎng)絡(luò)傳輸采用了該已知網(wǎng)絡(luò)協(xié)議??蛇x地,協(xié)議識(shí)別器340包括已知網(wǎng)絡(luò)協(xié)議特征值存儲(chǔ)器342和比較器344。已知網(wǎng)絡(luò)協(xié)議特征值存儲(chǔ)器342中存儲(chǔ)了一個(gè)或者多個(gè)已知網(wǎng)絡(luò)協(xié)議的已知網(wǎng)絡(luò)協(xié)議特征值以及與該已知網(wǎng)絡(luò)協(xié)議相關(guān)聯(lián)的預(yù)定閾值范圍。比較器344將特征向量ρ的大小與已知網(wǎng)絡(luò)協(xié)議特征值存儲(chǔ)器342中存儲(chǔ)的一個(gè)或者多個(gè)已知網(wǎng)絡(luò)協(xié)議特征值進(jìn)行比較,如果特征向量P與某個(gè)已知網(wǎng)絡(luò)協(xié)議相對(duì)應(yīng)的已知協(xié)議特征值的大小之差在與該已知網(wǎng)絡(luò)協(xié)議相關(guān)聯(lián)的預(yù)定閾值范圍之內(nèi),則認(rèn)為待識(shí)別的網(wǎng)絡(luò)協(xié)議為該已知網(wǎng)絡(luò)協(xié)議??蛇x地,每個(gè)已知網(wǎng)絡(luò)協(xié)議都具有一個(gè)協(xié)議特征值以及與該協(xié)議特征值相關(guān)聯(lián)的特征范圍。將特征向量P到原點(diǎn)的歐幾里德距離確定為特征向量P的大小VpjP
Vp=sqrt (cs_psize +cs—ptime +cs_sd—psize +cs_sd—ptime +sc_psize +sc_ptime +sc_ Sd_pSize2+SC_Sd_ptime2)。如果特征向量ρ的大小Vp與該協(xié)議特征值的大小(即,該協(xié)議特征值到原點(diǎn)的距離)之差在與該協(xié)議特征值相關(guān)聯(lián)的特征范圍之內(nèi),則可以確定網(wǎng)絡(luò)傳輸采用了該已知網(wǎng)絡(luò)協(xié)議。還可以有其它方式來(lái)確定特征向量ρ是否與某個(gè)已知網(wǎng)絡(luò)協(xié)議的協(xié)議特征值很接近,例如可以計(jì)算該特征向量P和已知網(wǎng)絡(luò)協(xié)議的協(xié)議特征值之間的歐幾里德距離,并根據(jù)該距離值是否在預(yù)定范圍之內(nèi)來(lái)確定與特征向量P相對(duì)應(yīng)的網(wǎng)絡(luò)傳輸是否采用了該已知網(wǎng)絡(luò)協(xié)議。在協(xié)議識(shí)別器340識(shí)別網(wǎng)絡(luò)協(xié)議時(shí),需要事先得知一些已知網(wǎng)絡(luò)協(xié)議的協(xié)議特征值,以及可選地,和這些協(xié)議特征值相關(guān)聯(lián)的特征范圍。為此,還可以將網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備 300部署在學(xué)習(xí)網(wǎng)絡(luò)環(huán)境中,以便通過(guò)獲取利用已知網(wǎng)絡(luò)協(xié)議傳輸?shù)木W(wǎng)絡(luò)數(shù)據(jù)來(lái)確定與該已知網(wǎng)絡(luò)協(xié)議相對(duì)應(yīng)的協(xié)議特征值。為此,數(shù)據(jù)接收器310接收以已知網(wǎng)絡(luò)協(xié)議傳輸?shù)木W(wǎng)絡(luò)數(shù)據(jù)。特征向量構(gòu)造器330 為每個(gè)學(xué)習(xí)會(huì)話構(gòu)造相應(yīng)的學(xué)習(xí)特征向量。并且網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備300還包括已知協(xié)議特征值確定裝置350,用于從特征向量構(gòu)造器330獲取多個(gè)學(xué)習(xí)會(huì)話的學(xué)習(xí)特征向量,并計(jì)算多個(gè)學(xué)習(xí)特征向量的特征中心,并且將特征中心確定為與已知網(wǎng)絡(luò)協(xié)議相對(duì)應(yīng)的已知協(xié)議特征值。可選地,如上參考圖2的步驟S280所述,可以存在有多種方法來(lái)根據(jù)多個(gè)特征向量來(lái)獲取這些特征向量的特征中心。根據(jù)本發(fā)明的一個(gè)實(shí)施方式,可以通過(guò)對(duì)多個(gè)特征向量進(jìn)行平均來(lái)獲得特征中心的位置和值。另外,根據(jù)本發(fā)明的另一個(gè)實(shí)施方式,可以利用 K-means聚類(lèi)算法來(lái)從多個(gè)特征向量中獲取特征中心。并且可選地,還可以將利用K-means 聚類(lèi)算法來(lái)計(jì)算特征中心時(shí)的偏差作為與該網(wǎng)絡(luò)協(xié)議相關(guān)聯(lián)的特征范圍。可以通過(guò)將網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備300部署在采用不同已知網(wǎng)絡(luò)協(xié)議的學(xué)習(xí)網(wǎng)絡(luò)環(huán)境中,來(lái)獲取與各個(gè)已知網(wǎng)絡(luò)協(xié)議相對(duì)應(yīng)的特征中心??蛇x地,為了準(zhǔn)確地確定已知網(wǎng)絡(luò)協(xié)議的特征中心,一般而言,要求網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備所獲取的會(huì)話具有一定的代表性,具體而言,需要所獲取的會(huì)話包含一定數(shù)量的數(shù)據(jù)包。根據(jù)本發(fā)明的一個(gè)實(shí)施方式,當(dāng)一個(gè)會(huì)話所包含的數(shù)據(jù)包數(shù)量小于100個(gè)時(shí),將放棄該會(huì)話,即不再利用該會(huì)話進(jìn)行已知網(wǎng)絡(luò)協(xié)議特征值確定??蛇x地,當(dāng)會(huì)話中包括超過(guò)600個(gè)數(shù)據(jù)包時(shí),則僅僅獲取該會(huì)話中的600個(gè)數(shù)據(jù)包來(lái)進(jìn)行后續(xù)處理。根據(jù)本發(fā)明的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備300特別適于對(duì)屬于P2P網(wǎng)絡(luò)協(xié)議的各種網(wǎng)絡(luò)協(xié)議進(jìn)行識(shí)別。另外,根據(jù)本發(fā)明的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備僅僅通過(guò)對(duì)數(shù)據(jù)流中的包大小、包時(shí)間間隔等信息進(jìn)行統(tǒng)計(jì)分析來(lái)進(jìn)行協(xié)議識(shí)別。而包大小和包時(shí)間間隔等信息與連接端口、數(shù)據(jù)包的具體特征或者客戶端連接TCP或UDP的個(gè)數(shù)無(wú)關(guān),所以不會(huì)出現(xiàn)因?yàn)殡S機(jī)端口而漏報(bào)誤報(bào)的問(wèn)題。另外,由于根據(jù)本發(fā)明的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備不需要對(duì)數(shù)據(jù)包進(jìn)行開(kāi)包檢測(cè), 因此不會(huì)因?yàn)閿?shù)據(jù)包所承載的數(shù)據(jù)內(nèi)容無(wú)法讀出而導(dǎo)致無(wú)法識(shí)別的問(wèn)題,即根據(jù)本發(fā)明的協(xié)議識(shí)別方法可以用于對(duì)數(shù)據(jù)包內(nèi)容加密的協(xié)議進(jìn)行識(shí)別。圖4示意性地示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的網(wǎng)絡(luò)通信系統(tǒng)400。該通信系統(tǒng)包括多個(gè)客戶端410,用于以各自的網(wǎng)絡(luò)協(xié)議與外部服務(wù)器420進(jìn)行網(wǎng)絡(luò)通信;以及根據(jù)本發(fā)明的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備300,用于獲取多個(gè)客戶端410和外部服務(wù)器420之間進(jìn)行通信的網(wǎng)絡(luò)數(shù)據(jù),并判斷這些網(wǎng)絡(luò)數(shù)據(jù)所采用的網(wǎng)絡(luò)協(xié)議,并基于此來(lái)采取進(jìn)一步的措施來(lái)控制客戶端410和外部服務(wù)器420之間的通信。例如,通信系統(tǒng)400可以限制以P2P網(wǎng)絡(luò)協(xié)議進(jìn)行網(wǎng)絡(luò)傳輸?shù)膸捔浚瑥亩_保其他網(wǎng)絡(luò)應(yīng)用的正常使用等??蛇x地,網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備300可以部署在網(wǎng)關(guān)430處,或者和網(wǎng)關(guān)430集成在一起,以便方便地獲取客戶端410和外部服務(wù)器420之間進(jìn)行通信的網(wǎng)絡(luò)數(shù)據(jù)。應(yīng)當(dāng)注意的是,在本發(fā)明的網(wǎng)絡(luò)協(xié)議設(shè)備設(shè)備300的各個(gè)部件中,根據(jù)其要實(shí)現(xiàn)的功能而對(duì)其中的部件進(jìn)行了邏輯劃分,但是,本發(fā)明不受限于此,可以根據(jù)需要對(duì)各個(gè)部件進(jìn)行重新劃分或者組合,例如,可以將一些部件組合為單個(gè)部件,或者可以將一些部件進(jìn)一步分解為更多的子部件。 本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP)來(lái)實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提 {共。 應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說(shuō)明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中, 不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來(lái)實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過(guò)同一個(gè)硬件項(xiàng)來(lái)具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱(chēng)。
權(quán)利要求
1.一種對(duì)在客戶端和服務(wù)器之間傳輸網(wǎng)絡(luò)數(shù)據(jù)所采用的網(wǎng)絡(luò)協(xié)議進(jìn)行識(shí)別的網(wǎng)絡(luò)協(xié)議識(shí)別方法,包括步驟獲取在傳輸所述網(wǎng)絡(luò)數(shù)據(jù)時(shí)的同一會(huì)話中的多個(gè)數(shù)據(jù)包,并將所述多個(gè)數(shù)據(jù)包劃分為從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包和從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包;針對(duì)所述從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包,計(jì)算與所述數(shù)據(jù)包的大小相關(guān)的第一指標(biāo)以及與所述數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔相關(guān)的第二指標(biāo);針對(duì)所述從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包,計(jì)算與所述數(shù)據(jù)包的大小相關(guān)的第三指標(biāo)以及與所述數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔相關(guān)的第四指標(biāo);構(gòu)造包括所述第一指標(biāo)、第二指標(biāo)、第三指標(biāo)和第四指標(biāo)為其分量的特征向量;以及根據(jù)所述特征向量來(lái)確定傳輸所述網(wǎng)絡(luò)數(shù)據(jù)所采用的網(wǎng)絡(luò)協(xié)議。
2.如權(quán)利要求1所述的網(wǎng)絡(luò)協(xié)議識(shí)別方法,其中根據(jù)所述特征向量來(lái)確定傳輸所述網(wǎng)絡(luò)數(shù)據(jù)所采用的網(wǎng)絡(luò)協(xié)議包括計(jì)算所述特征向量的大??;如果所述特征向量的大小和與已知網(wǎng)絡(luò)協(xié)議相對(duì)應(yīng)的已知協(xié)議特征值的大小之差在與該已知網(wǎng)絡(luò)協(xié)議相關(guān)聯(lián)的預(yù)定范圍之內(nèi),則認(rèn)為傳輸所述網(wǎng)絡(luò)數(shù)據(jù)所采用的網(wǎng)絡(luò)協(xié)議為所述已知網(wǎng)絡(luò)協(xié)議。
3.如權(quán)利要求1所述的網(wǎng)絡(luò)協(xié)議識(shí)別方法,還包括確定與已知網(wǎng)絡(luò)協(xié)議相對(duì)應(yīng)的已知協(xié)議特征值的步驟,所述確定與已知網(wǎng)絡(luò)協(xié)議相對(duì)應(yīng)的已知協(xié)議特征值的步驟包括以所述已知網(wǎng)絡(luò)協(xié)議在學(xué)習(xí)客戶端和學(xué)習(xí)服務(wù)器之間進(jìn)行網(wǎng)絡(luò)傳輸; 獲取所述網(wǎng)絡(luò)傳輸?shù)亩鄠€(gè)學(xué)習(xí)會(huì)話; 針對(duì)每個(gè)學(xué)習(xí)會(huì)話獲取同一個(gè)會(huì)話中的多個(gè)數(shù)據(jù)包,并且將所述多個(gè)數(shù)據(jù)包劃分為從客戶端發(fā)送到服務(wù)器的學(xué)習(xí)數(shù)據(jù)包和從服務(wù)器發(fā)送到客戶端的學(xué)習(xí)數(shù)據(jù)包;針對(duì)所述從客戶端發(fā)送到服務(wù)器的學(xué)習(xí)數(shù)據(jù)包,計(jì)算與所述學(xué)習(xí)數(shù)據(jù)包的大小相關(guān)的第五指標(biāo)以及與所述學(xué)習(xí)數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔相關(guān)的第六指標(biāo);針對(duì)所述從服務(wù)器發(fā)送到客戶端的學(xué)習(xí)數(shù)據(jù)包,計(jì)算與所述學(xué)習(xí)數(shù)據(jù)包的大小相關(guān)的第七指標(biāo)以及與所述學(xué)習(xí)數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔相關(guān)的第八指標(biāo);以及構(gòu)造包括所述第五指標(biāo)、第六指標(biāo)、第七指標(biāo)和第八指標(biāo)為其分量的學(xué)習(xí)特征向量;以及計(jì)算所述多個(gè)學(xué)習(xí)特征向量的特征中心,并且將所述特征中心確定為與所述已知網(wǎng)絡(luò)協(xié)議相對(duì)應(yīng)的已知協(xié)議特征值。
4.如權(quán)利要求3所述的網(wǎng)絡(luò)協(xié)議識(shí)別方法,其中計(jì)算所述多個(gè)學(xué)習(xí)特征向量的特征中心包括以聚類(lèi)算法來(lái)計(jì)算所述多個(gè)學(xué)習(xí)特征向量的聚類(lèi)中心作為所述特征中心。
5.如權(quán)利要求4所述的網(wǎng)絡(luò)協(xié)議識(shí)別方法,其中所述聚類(lèi)算法為K-means聚類(lèi)算法,而且與所述已知網(wǎng)絡(luò)協(xié)議相關(guān)聯(lián)的預(yù)定范圍為所述以K-means聚類(lèi)算法來(lái)計(jì)算所述多個(gè)學(xué)習(xí)特征向量的聚類(lèi)中心時(shí)的偏差。
6.如權(quán)利要求1-5中任意一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別方法,其中所述第一指標(biāo)和第三指標(biāo)包括所述數(shù)據(jù)包的平均大小和所述數(shù)據(jù)包的大小的標(biāo)準(zhǔn)差。
7.如權(quán)利要求1-6中任意一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別方法,其中所述第二指標(biāo)包括所述數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔的平均大小和所述數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔的標(biāo)準(zhǔn)差, 第四指標(biāo)包括所述數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔的平均大小和所述數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔的標(biāo)準(zhǔn)差。
8.如權(quán)利要求3-5中任意一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別方法,其中所述第五指標(biāo)和第七指標(biāo)包括所述學(xué)習(xí)數(shù)據(jù)包的平均大小和所述數(shù)據(jù)包的大小的標(biāo)準(zhǔn)差。
9.如權(quán)利要求3-5中的任意一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別方法,其中所述第六指標(biāo)包括所述學(xué)習(xí)數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔的平均大小和所述學(xué)習(xí)數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔的標(biāo)準(zhǔn)差,以及第八指標(biāo)包括所述學(xué)習(xí)數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔的平均大小和所述學(xué)習(xí)數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔的標(biāo)準(zhǔn)差。
10.如權(quán)利要求3-5任意一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別方法,其中針對(duì)每個(gè)學(xué)習(xí)會(huì)話獲取同一個(gè)會(huì)話中的多個(gè)數(shù)據(jù)包包括獲取同一個(gè)會(huì)話中的100到600個(gè)數(shù)據(jù)包。
11.如權(quán)利要求3-5任意一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別方法,還包括步驟如果學(xué)習(xí)會(huì)話具有少于100個(gè)數(shù)據(jù)包,則不對(duì)該學(xué)習(xí)會(huì)話進(jìn)行處理。
12.如權(quán)利要求3-5中的任意一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別方法,還包括步驟為多個(gè)已知網(wǎng)絡(luò)協(xié)議中的每個(gè)已知網(wǎng)絡(luò)協(xié)議確定與每個(gè)已知網(wǎng)絡(luò)協(xié)議相對(duì)應(yīng)的已知網(wǎng)絡(luò)協(xié)議特征值。
13.如權(quán)利要求1-12中的任意一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別方法,其中所述網(wǎng)絡(luò)協(xié)議屬于 P2P網(wǎng)絡(luò)協(xié)議。
14.一種網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備,包括數(shù)據(jù)接收器,配置為接收以待識(shí)別網(wǎng)絡(luò)協(xié)議在客戶端和服務(wù)器之間傳輸?shù)木W(wǎng)絡(luò)數(shù)據(jù);數(shù)據(jù)分類(lèi)器,配置為將數(shù)據(jù)接收器所接收的網(wǎng)絡(luò)數(shù)據(jù)根據(jù)其所屬的會(huì)話進(jìn)行分類(lèi);特征向量構(gòu)造器,配置為接收由所述數(shù)據(jù)分類(lèi)器分類(lèi)后屬于同一個(gè)會(huì)話的多個(gè)數(shù)據(jù)包,并將所述多個(gè)數(shù)據(jù)包劃分為從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包和從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包;針對(duì)所述從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包,計(jì)算與所述數(shù)據(jù)包的大小相關(guān)的第一指標(biāo)以及與所述數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔相關(guān)的第二指標(biāo);針對(duì)所述從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包,計(jì)算與所述數(shù)據(jù)包的大小相關(guān)的第三指標(biāo)以及與所述數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔相關(guān)的第四指標(biāo);以及構(gòu)造包括所述第一指標(biāo)、第二指標(biāo)、第三指標(biāo)和第四指標(biāo)為其分量的特征向量;協(xié)議識(shí)別器,接收所述特征向量構(gòu)造器所構(gòu)造的特征向量,并基于該特征向量確定待識(shí)別的網(wǎng)絡(luò)協(xié)議。
15.如權(quán)利要求14所述的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備,其中所述協(xié)議識(shí)別器包括已知網(wǎng)絡(luò)協(xié)議特征值存儲(chǔ)器,其中存儲(chǔ)了一個(gè)或者多個(gè)已知網(wǎng)絡(luò)協(xié)議的已知網(wǎng)絡(luò)協(xié)議特征值以及與該已知網(wǎng)絡(luò)協(xié)議相關(guān)聯(lián)的預(yù)定閾值范圍;以及比較器,配置為將由所述特征向量構(gòu)造器所構(gòu)造的特征向量的大小與所述已知網(wǎng)絡(luò)協(xié)議特征值存儲(chǔ)器中存儲(chǔ)的一個(gè)或者多個(gè)已知網(wǎng)絡(luò)協(xié)議特征值進(jìn)行比較,如果所述特征向量與某個(gè)已知網(wǎng)絡(luò)協(xié)議相對(duì)應(yīng)的已知協(xié)議特征值的大小之差在與該已知網(wǎng)絡(luò)協(xié)議相關(guān)聯(lián)的預(yù)定閾值范圍之內(nèi),則認(rèn)為傳輸所述網(wǎng)絡(luò)數(shù)據(jù)所采用的網(wǎng)絡(luò)協(xié)議為所述已知網(wǎng)絡(luò)協(xié)議。
16.如權(quán)利要求14所述的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備,其中所述數(shù)據(jù)接收器還被配置為接收以已知網(wǎng)絡(luò)協(xié)議在學(xué)習(xí)客戶端和學(xué)習(xí)服務(wù)器之間傳輸?shù)膶W(xué)習(xí)網(wǎng)絡(luò)數(shù)據(jù);以及所述特征向量構(gòu)造器還被配置成為所述學(xué)習(xí)網(wǎng)絡(luò)數(shù)據(jù)中的每個(gè)學(xué)習(xí)會(huì)話構(gòu)造相應(yīng)的學(xué)習(xí)特征向量;所述網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備還包括已知協(xié)議特征值確定裝置,用于從所述特征向量構(gòu)造器獲取多個(gè)學(xué)習(xí)會(huì)話的學(xué)習(xí)特征向量,并計(jì)算所述多個(gè)學(xué)習(xí)特征向量的特征中心,并且將所述特征中心的大小確定為與所述已知網(wǎng)絡(luò)協(xié)議相對(duì)應(yīng)的已知協(xié)議特征值。
17.如權(quán)利要求16所述的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備,其中所述已知協(xié)議特征值確定裝置被配置為以聚類(lèi)算法來(lái)計(jì)算所述多個(gè)學(xué)習(xí)特征向量的聚類(lèi)中心作為所述特征中心。
18.如權(quán)利要求17所述的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備,其中所述聚類(lèi)算法為K-means聚類(lèi)算法, 而且與所述已知網(wǎng)絡(luò)協(xié)議相關(guān)聯(lián)的預(yù)定范圍為所述以K-means聚類(lèi)算法來(lái)計(jì)算所述多個(gè)學(xué)習(xí)特征向量的聚類(lèi)中心時(shí)的偏差。
19.如權(quán)利要求14-18中任意一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備,其中所述第一指標(biāo)和第三指標(biāo)包括所述數(shù)據(jù)包的平均大小和所述數(shù)據(jù)包的大小的標(biāo)準(zhǔn)差。
20.如權(quán)利要求14-19中的任意一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備,其中所述第二指標(biāo)包括所述數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔的平均大小和所述數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔的標(biāo)準(zhǔn)差,第四指標(biāo)包括所述數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔的平均大小和所述數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔的標(biāo)準(zhǔn)差。
21.如權(quán)利要求16-20任意一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備,其中所述特征向量構(gòu)造器獲取同一個(gè)會(huì)話中的100到600個(gè)數(shù)據(jù)包進(jìn)行處理。
22.如權(quán)利要求16-21任意一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備,其中所述特征向量構(gòu)造器不對(duì)包括少于100個(gè)數(shù)據(jù)包的會(huì)話進(jìn)行處理。
23.如權(quán)利要求14-22中的任意一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備,其中所述網(wǎng)絡(luò)協(xié)議屬于P2P網(wǎng)絡(luò)協(xié)議。
24.—種網(wǎng)絡(luò)通信系統(tǒng),包括多個(gè)客戶端,用于以預(yù)定網(wǎng)絡(luò)協(xié)議與外部服務(wù)器進(jìn)行網(wǎng)絡(luò)通信;以及如權(quán)利要求14-23中的任一個(gè)所述的網(wǎng)絡(luò)協(xié)議識(shí)別設(shè)備,用于獲取所述多個(gè)客戶端和外部服務(wù)器之間進(jìn)行通信的網(wǎng)絡(luò)數(shù)據(jù),并判斷所述網(wǎng)絡(luò)數(shù)據(jù)所采用的預(yù)定網(wǎng)絡(luò)協(xié)議。
全文摘要
本發(fā)明公開(kāi)了一種對(duì)在客戶端和服務(wù)器之間傳輸網(wǎng)絡(luò)數(shù)據(jù)所采用的網(wǎng)絡(luò)協(xié)議進(jìn)行識(shí)別的網(wǎng)絡(luò)協(xié)議識(shí)別方法,包括步驟獲取在傳輸網(wǎng)絡(luò)數(shù)據(jù)時(shí)的同一會(huì)話中的多個(gè)數(shù)據(jù)包,并將數(shù)據(jù)包劃分為從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包和從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包;針對(duì)從客戶端發(fā)送到服務(wù)器的數(shù)據(jù)包,計(jì)算與數(shù)據(jù)包的大小相關(guān)的第一指標(biāo)以及與數(shù)據(jù)包到達(dá)服務(wù)器的時(shí)間間隔相關(guān)的第二指標(biāo);針對(duì)從服務(wù)器發(fā)送到客戶端的數(shù)據(jù)包,計(jì)算與數(shù)據(jù)包的大小相關(guān)的第三指標(biāo)以及與所述數(shù)據(jù)包到達(dá)客戶端的時(shí)間間隔相關(guān)的第四指標(biāo);構(gòu)造包括第一、第二、第三和第四指標(biāo)為其分量的特征向量;以及根據(jù)該特征向量來(lái)確定傳輸網(wǎng)絡(luò)數(shù)據(jù)所采用的網(wǎng)絡(luò)協(xié)議。本發(fā)明還涉及與該協(xié)議識(shí)別方法相對(duì)應(yīng)的協(xié)議識(shí)別設(shè)備以及采用該協(xié)議識(shí)別設(shè)備的網(wǎng)絡(luò)通信系統(tǒng)。
文檔編號(hào)H04L29/08GK102164182SQ20111009651
公開(kāi)日2011年8月24日 申請(qǐng)日期2011年4月18日 優(yōu)先權(quán)日2011年4月18日
發(fā)明者程利軍 申請(qǐng)人:北京神州綠盟信息安全科技股份有限公司