專(zhuān)利名稱(chēng):應(yīng)用程序識(shí)別系統(tǒng)、裝置以及識(shí)別網(wǎng)絡(luò)應(yīng)用程序的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種識(shí)別應(yīng)用程序的系統(tǒng)及方法。
背景技術(shù):
網(wǎng)絡(luò)通信由多種應(yīng)用組成,包括互聯(lián)網(wǎng)應(yīng)用程序,比如網(wǎng)頁(yè),對(duì)等 (peer-to-peer, P2P)網(wǎng)絡(luò)應(yīng)用,即時(shí)消息(InstantMessage)等。最近幾年里,P2P文件共 享和IM得到了越來(lái)越廣泛的應(yīng)用。對(duì)P2P/IM不受約束的大量使用會(huì)造成許多問(wèn)題,例如 占用因特網(wǎng)服務(wù)提供商(Internet S ervice Provider, ISP)的帶寬,保密信息的泄漏,病 毒,蠕蟲(chóng)和間諜軟件等。因特網(wǎng)服務(wù)提供商可識(shí)別不同應(yīng)用程序發(fā)送的數(shù)據(jù)包,從而對(duì)網(wǎng)絡(luò) 進(jìn)行強(qiáng)制安全規(guī)范。因此,為保護(hù)網(wǎng)絡(luò)資源,可阻止未知的和可能有害的應(yīng)用程序發(fā)送的數(shù) 據(jù)包。過(guò)去,網(wǎng)絡(luò)應(yīng)用程序可通過(guò)使用靜態(tài)的和標(biāo)準(zhǔn)的端口來(lái)傳送數(shù)據(jù)包。于是,傳統(tǒng)的 基于端口的識(shí)別方法便可識(shí)別出來(lái)自不同應(yīng)用程序的數(shù)據(jù)包。網(wǎng)絡(luò)應(yīng)用程序還可通過(guò)使用 動(dòng)態(tài)的和非標(biāo)準(zhǔn)的端口來(lái)傳送數(shù)據(jù)包?;谔卣?signature)的識(shí)別方法檢測(cè)數(shù)據(jù)包是否 攜帶預(yù)設(shè)特征,從而判斷發(fā)送該數(shù)據(jù)包的源應(yīng)用程序。特征即“指紋”,用于描述數(shù)據(jù)包的一 組獨(dú)有特征。然而,一些網(wǎng)絡(luò)應(yīng)用程序可發(fā)送加密數(shù)據(jù)包,這些加密數(shù)據(jù)包可避免被基于端口 和基于特征的識(shí)別方法識(shí)別出。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題在于提供一種識(shí)別應(yīng)用程序的系統(tǒng)和方法,用以識(shí)別目 標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的非加密數(shù)據(jù)包和加密數(shù)據(jù)包。為解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種應(yīng)用程序識(shí)別系統(tǒng),其包括網(wǎng)絡(luò)接口, 用于接收網(wǎng)絡(luò)應(yīng)用程序發(fā)送的第一數(shù)據(jù)包和第二數(shù)據(jù)包;耦合于該網(wǎng)絡(luò)接口的特征監(jiān)測(cè) 器,用于根據(jù)該第一數(shù)據(jù)包識(shí)別網(wǎng)絡(luò)應(yīng)用程序,還用于產(chǎn)生表示第一數(shù)據(jù)包的狀態(tài)的監(jiān)測(cè) 數(shù)據(jù);耦合于特征監(jiān)測(cè)器的規(guī)則生成器,用于根據(jù)該監(jiān)測(cè)數(shù)據(jù)及根據(jù)表示該第一和第二數(shù) 據(jù)包之間的狀態(tài)轉(zhuǎn)換的狀態(tài)機(jī)產(chǎn)生規(guī)則;及耦合于該規(guī)則生成器的數(shù)據(jù)包登錄控制器,用 于當(dāng)?shù)诙?shù)據(jù)包具有與該規(guī)則匹配的內(nèi)容時(shí),識(shí)別出網(wǎng)絡(luò)應(yīng)用程序。本發(fā)明所述的應(yīng)用程序識(shí)別系統(tǒng),所述第一數(shù)據(jù)包包括非加密數(shù)據(jù)包,所述第二 數(shù)據(jù)包包括對(duì)應(yīng)的加密數(shù)據(jù)包。本發(fā)明所述的應(yīng)用程序識(shí)別系統(tǒng),還包括耦合于所述特征監(jiān)測(cè)器的特征數(shù)據(jù)庫(kù), 用于存儲(chǔ)分別表示多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序的多個(gè)預(yù)設(shè)特征,其中,所述特征監(jiān)測(cè)器通過(guò)比 較所述第一數(shù)據(jù)包的內(nèi)容和所述預(yù)設(shè)特征來(lái)識(shí)別所述網(wǎng)絡(luò)應(yīng)用程序。本發(fā)明所述的應(yīng)用程序識(shí)別系統(tǒng),還包括耦合于規(guī)則生成器的狀態(tài)數(shù)據(jù)庫(kù),用 于存儲(chǔ)多個(gè)狀態(tài)機(jī),所述多個(gè)狀態(tài)機(jī)分別表示與多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序有關(guān)的多個(gè)狀態(tài)轉(zhuǎn) 換,其中,所述規(guī)則生成器根據(jù)所述監(jiān)測(cè)數(shù)據(jù)從所述多個(gè)狀態(tài)機(jī)中選擇表示所述第一和第二數(shù)據(jù)包之間的所述狀態(tài)轉(zhuǎn)換的所述狀態(tài)機(jī)。本發(fā)明所述的應(yīng)用程序識(shí)別系統(tǒng),所述監(jiān)測(cè)數(shù)據(jù)包括表示所述網(wǎng)絡(luò)應(yīng)用程序的身 份的應(yīng)用程序身份,所述第一數(shù)據(jù)包使用的協(xié)議類(lèi)型,表示運(yùn)行所述網(wǎng)絡(luò)應(yīng)用程序的源節(jié) 點(diǎn)的互聯(lián)網(wǎng)協(xié)議地址的源IP地址,表示所述第一數(shù)據(jù)包的目的節(jié)點(diǎn)的互聯(lián)網(wǎng)協(xié)議地址的 目的IP地址。本發(fā)明所述的應(yīng)用程序識(shí)別系統(tǒng),所述狀態(tài)機(jī)包括表示所述網(wǎng)絡(luò)應(yīng)用程序的身份 的應(yīng)用程序身份,與所述第一數(shù)據(jù)包相關(guān)的第一數(shù)據(jù)包狀態(tài),以及與所述第二數(shù)據(jù)包相關(guān) 的第二數(shù)據(jù)包狀態(tài)。本發(fā)明所述的應(yīng)用程序識(shí)別系統(tǒng),如果所述應(yīng)用程序身份和與所述第一數(shù)據(jù)包相 關(guān)的所述第一數(shù)據(jù)包狀態(tài)都與所述監(jiān)測(cè)數(shù)據(jù)相匹配,則選擇所述狀態(tài)機(jī)。本發(fā)明所述的應(yīng)用程序識(shí)別系統(tǒng),所述規(guī)則生成器根據(jù)所述監(jiān)測(cè)數(shù)據(jù)和與所述第 二數(shù)據(jù)包相關(guān)的所述第二數(shù)據(jù)包狀態(tài)產(chǎn)生所述規(guī)則。本發(fā)明所述的應(yīng)用程序識(shí)別系統(tǒng),所述規(guī)則在一段預(yù)設(shè)時(shí)間間隔內(nèi)有效。本發(fā)明所述的應(yīng)用程序識(shí)別系統(tǒng),還包括耦合于所述規(guī)則生成器且耦合于所述 數(shù)據(jù)包登錄控制器的規(guī)則數(shù)據(jù)庫(kù),用于存儲(chǔ)所述規(guī)則。本發(fā)明還提供了一種應(yīng)用程序識(shí)別裝置,用于識(shí)別網(wǎng)絡(luò)應(yīng)用程序,其包括特征監(jiān) 測(cè)器,用于根據(jù)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的第一數(shù)據(jù)包識(shí)別該網(wǎng)絡(luò)應(yīng)用程序,還用于產(chǎn)生表示第 一數(shù)據(jù)包的狀態(tài)的監(jiān)測(cè)數(shù)據(jù);規(guī)則生成器,用于根據(jù)監(jiān)測(cè)數(shù)據(jù)和狀態(tài)機(jī)產(chǎn)生規(guī)則,其中,該 狀態(tài)機(jī)表示第一數(shù)據(jù)包和網(wǎng)絡(luò)應(yīng)用程序發(fā)送的第二數(shù)據(jù)包之間的狀態(tài)轉(zhuǎn)換;及數(shù)據(jù)包登錄 控制器,用于當(dāng)網(wǎng)絡(luò)應(yīng)用程序發(fā)送具有與該規(guī)則相匹配的內(nèi)容的第二數(shù)據(jù)包時(shí),識(shí)別出網(wǎng) 絡(luò)應(yīng)用程序。本發(fā)明所述的應(yīng)用程序識(shí)別裝置,所述第一數(shù)據(jù)包包括非加密數(shù)據(jù)包,所述第二 數(shù)據(jù)包包括對(duì)應(yīng)的加密數(shù)據(jù)包。本發(fā)明所述的應(yīng)用程序識(shí)別裝置,還包括特征數(shù)據(jù)庫(kù),用于存儲(chǔ)分別表示多個(gè)目 標(biāo)網(wǎng)絡(luò)應(yīng)用程序的多個(gè)預(yù)設(shè)特征,其中,如果所述第一數(shù)據(jù)包具有與所述多個(gè)預(yù)設(shè)特征中 的一個(gè)特征匹配的內(nèi)容,所述網(wǎng)絡(luò)應(yīng)用程序則被識(shí)別出。本發(fā)明所述的應(yīng)用程序識(shí)別裝置,還包括狀態(tài)數(shù)據(jù)庫(kù),用于存儲(chǔ)多個(gè)狀態(tài)機(jī),所述 多個(gè)狀態(tài)機(jī)分別表示與多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序有關(guān)的狀態(tài)轉(zhuǎn)換,其中,表示所述第一和第 二數(shù)據(jù)包的所述狀態(tài)轉(zhuǎn)換的所述狀態(tài)機(jī)是根據(jù)所述監(jiān)測(cè)數(shù)據(jù)從所述多個(gè)狀態(tài)機(jī)中選擇出。本發(fā)明所述的應(yīng)用程序識(shí)別裝置,所述監(jiān)測(cè)數(shù)據(jù)包括表示所述網(wǎng)絡(luò)應(yīng)用程序的身 份的應(yīng)用程序身份,所述第一數(shù)據(jù)包使用的協(xié)議類(lèi)型,表示運(yùn)行所述網(wǎng)絡(luò)應(yīng)用程序的源節(jié) 點(diǎn)的互聯(lián)網(wǎng)協(xié)議地址的源IP地址,表示所述識(shí)別出的第一數(shù)據(jù)包的目的節(jié)點(diǎn)的互聯(lián)網(wǎng)協(xié) 議地址的目的IP地址,表示所述被識(shí)別出的第一數(shù)據(jù)包在所述源節(jié)點(diǎn)使用的端口的源端 口,以及表示所述被識(shí)別出的第一數(shù)據(jù)包在所述目的節(jié)點(diǎn)使用的端口的目的端口。本發(fā)明所述的應(yīng)用程序識(shí)別裝置,所述狀態(tài)機(jī)包括表示所述網(wǎng)絡(luò)應(yīng)用程序的身份 的應(yīng)用程序身份,與所述第一數(shù)據(jù)包相關(guān)的第一數(shù)據(jù)包狀態(tài),以及與所述第二數(shù)據(jù)包相關(guān) 的第二數(shù)據(jù)包狀態(tài)。本發(fā)明所述的應(yīng)用程序識(shí)別裝置,如果所述應(yīng)用程序身份和與所述第一數(shù)據(jù)包相 關(guān)的所述第一數(shù)據(jù)包狀態(tài)都與所述監(jiān)測(cè)數(shù)據(jù)相匹配,則選擇所述狀態(tài)機(jī)。
本發(fā)明所述的應(yīng)用程序識(shí)別裝置,所述規(guī)則是根據(jù)所述監(jiān)測(cè)數(shù)據(jù)和與所述第二數(shù) 據(jù)包相關(guān)的所述第二數(shù)據(jù)包狀態(tài)來(lái)產(chǎn)生的。本發(fā)明所述的應(yīng)用程序識(shí)別裝置,所述規(guī)則在一段預(yù)設(shè)時(shí)間間隔內(nèi)有效。本發(fā)明所述的應(yīng)用程序識(shí)別裝置,還包括規(guī)則數(shù)據(jù)庫(kù),用于存儲(chǔ)所述規(guī)則。本發(fā)明還提供了一種識(shí)別網(wǎng)絡(luò)應(yīng)用程序的方法,其包括產(chǎn)生表示該網(wǎng)絡(luò)應(yīng)用程 序發(fā)送的第一數(shù)據(jù)包的監(jiān)測(cè)數(shù)據(jù);根據(jù)監(jiān)測(cè)數(shù)據(jù)和狀態(tài)機(jī)產(chǎn)生規(guī)則,其中,狀態(tài)機(jī)表示網(wǎng)絡(luò) 應(yīng)用程序發(fā)送的第一數(shù)據(jù)包和第二數(shù)據(jù)包之間的狀態(tài)轉(zhuǎn)換;接收第二數(shù)據(jù)包;及如果第二 數(shù)據(jù)包包括與該規(guī)則相匹配的內(nèi)容,則識(shí)別出該目標(biāo)網(wǎng)絡(luò)應(yīng)用程序。本發(fā)明所述的識(shí)別網(wǎng)絡(luò)應(yīng)用程序的方法,所述第一數(shù)據(jù)包包括非加密數(shù)據(jù)包,所 述第二數(shù)據(jù)包包括對(duì)應(yīng)的加密數(shù)據(jù)包。本發(fā)明所述的識(shí)別網(wǎng)絡(luò)應(yīng)用程序的方法,還包括訪問(wèn)分別表示多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng) 用程序的多個(gè)預(yù)設(shè)特征;及如果所述第一數(shù)據(jù)包具有內(nèi)容與所述多個(gè)預(yù)設(shè)特征中的一個(gè)特 征相匹配,則識(shí)別出所述網(wǎng)絡(luò)應(yīng)用程序。本發(fā)明所述的識(shí)別網(wǎng)絡(luò)應(yīng)用程序的方法,還包括訪問(wèn)分別表示與多個(gè)目標(biāo)網(wǎng)絡(luò) 應(yīng)用程序相關(guān)的多個(gè)狀態(tài)轉(zhuǎn)換的多個(gè)狀態(tài)機(jī);及根據(jù)所述監(jiān)測(cè)數(shù)據(jù),從所述多個(gè)狀態(tài)機(jī)中 選擇表示與所述網(wǎng)絡(luò)應(yīng)用程序相關(guān)的所述狀態(tài)轉(zhuǎn)換的所述狀態(tài)機(jī)。本發(fā)明所述的識(shí)別網(wǎng)絡(luò)應(yīng)用程序的方法,所述規(guī)則在一段預(yù)設(shè)時(shí)間間隔內(nèi)有效。本發(fā)明再提供了一種應(yīng)用程序識(shí)別裝置,包括非加密數(shù)據(jù)包識(shí)別器,用于基于網(wǎng) 絡(luò)應(yīng)用程序發(fā)送的非加密數(shù)據(jù)包識(shí)別該網(wǎng)絡(luò)應(yīng)用程序,還用于基于該非加密數(shù)據(jù)包和狀態(tài) 機(jī)產(chǎn)生規(guī)則,其中,該狀態(tài)機(jī)表示網(wǎng)絡(luò)應(yīng)用程序發(fā)送的非加密數(shù)據(jù)包和對(duì)應(yīng)的加密數(shù)據(jù)包 之間的狀態(tài)轉(zhuǎn)換;加密數(shù)據(jù)包識(shí)別器,用于當(dāng)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的加密數(shù)據(jù)包包含與該規(guī) 則相匹配的內(nèi)容時(shí),識(shí)別出該網(wǎng)絡(luò)應(yīng)用程序。本發(fā)明所述的應(yīng)用程序識(shí)別裝置,所述非加密數(shù)據(jù)包識(shí)別器包括特征數(shù)據(jù)庫(kù),用 于存儲(chǔ)分別表示多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序的多個(gè)預(yù)設(shè)特征,其中,如果所述非加密數(shù)據(jù)包具 有與所述多個(gè)預(yù)設(shè)特征中的一個(gè)特征匹配的內(nèi)容,所述目標(biāo)網(wǎng)絡(luò)應(yīng)用程序則被識(shí)別出。本發(fā)明所述的應(yīng)用程序識(shí)別裝置,所述加密數(shù)據(jù)包識(shí)別器包括狀態(tài)數(shù)據(jù)庫(kù),用于 存儲(chǔ)分別表示與多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序有關(guān)的多個(gè)狀態(tài)轉(zhuǎn)換的多個(gè)狀態(tài)機(jī),其中,表示所 述非加密和加密數(shù)據(jù)包之間的所述狀態(tài)轉(zhuǎn)換的所述狀態(tài)機(jī)是根據(jù)所述監(jiān)測(cè)數(shù)據(jù)從所述多 個(gè)狀態(tài)機(jī)中選擇出。與現(xiàn)有技術(shù)相比,本發(fā)明應(yīng)用程序識(shí)別設(shè)備不僅可識(shí)別網(wǎng)絡(luò)應(yīng)用程序發(fā)送的非加 密數(shù)據(jù)包,還可識(shí)別與該非加密數(shù)據(jù)包相對(duì)應(yīng)的加密數(shù)據(jù)包。
圖1所示為根據(jù)本發(fā)明一個(gè)實(shí)施例的計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)的結(jié)構(gòu)框圖;圖2所示為根據(jù)本發(fā)明一個(gè)實(shí)施例的圖1所述應(yīng)用程序識(shí)別裝置的結(jié)構(gòu)框圖;圖3A所示為根據(jù)本發(fā)明一個(gè)實(shí)施例的監(jiān)測(cè)數(shù)據(jù)的實(shí)例;圖3B所示為根據(jù)本發(fā)明一個(gè)實(shí)施例的狀態(tài)機(jī)的實(shí)例;圖3C所示為根據(jù)本發(fā)明一個(gè)實(shí)施例的規(guī)則的實(shí)例;圖4所示為根據(jù)本發(fā)明一個(gè)實(shí)施例的應(yīng)用程序識(shí)別設(shè)備的操作流程圖。
具體實(shí)施例方式以下結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)的說(shuō)明,以使本發(fā)明的 特性和優(yōu)點(diǎn)更為明顯。以下將對(duì)本發(fā)明的具體實(shí)施方式
進(jìn)行闡述。本發(fā)明將結(jié)合一些具體實(shí)施例進(jìn)行闡 述,但本發(fā)明不局限于這些具體實(shí)施例。對(duì)本發(fā)明進(jìn)行的修改或者等同替換,均應(yīng)涵蓋在本 發(fā)明的權(quán)利要求范圍當(dāng)中。本發(fā)明的實(shí)施例提供了一種識(shí)別應(yīng)用程序的系統(tǒng)和方法。優(yōu)點(diǎn)在于,應(yīng)用程序識(shí) 別系統(tǒng)可基于目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的非加密數(shù)據(jù)包識(shí)別目標(biāo)網(wǎng)絡(luò)應(yīng)用程序,并可根據(jù)表 示該非加密數(shù)據(jù)包的狀態(tài)的監(jiān)控?cái)?shù)據(jù)以及根據(jù)表示目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的非加密和加 密數(shù)據(jù)包之間的狀態(tài)轉(zhuǎn)換的狀態(tài)機(jī)產(chǎn)生規(guī)則。因此,根據(jù)該規(guī)則,可基于目標(biāo)網(wǎng)絡(luò)應(yīng)用程序 發(fā)送的加密數(shù)據(jù)包識(shí)別目標(biāo)網(wǎng)絡(luò)應(yīng)用程序。優(yōu)點(diǎn)在于,應(yīng)用程序識(shí)別設(shè)備可識(shí)別同一個(gè)目 標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的非加密和加密數(shù)據(jù)包。圖1所示為根據(jù)本發(fā)明一個(gè)實(shí)施例的計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)100的結(jié)構(gòu)框圖。計(jì)算機(jī)網(wǎng) 絡(luò)系統(tǒng)100可包括源網(wǎng)絡(luò)150,目的網(wǎng)絡(luò)160和應(yīng)用程序識(shí)別設(shè)備110。源網(wǎng)絡(luò)150和目的網(wǎng) 絡(luò) 160可為(但不局限于)家域網(wǎng)(home area network,HAN),局域網(wǎng)(local areanetwork, LAN) (metropolitan area network, MAN)(wide area network, WAN)等。 源網(wǎng)絡(luò)和目的網(wǎng)絡(luò)分別耦合于兩個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)耦合于源網(wǎng)絡(luò)150的源節(jié)點(diǎn)152以及耦合于 目的網(wǎng)絡(luò)160的目的節(jié)點(diǎn)162。網(wǎng)絡(luò)節(jié)點(diǎn)(例如源節(jié)點(diǎn)152或目的節(jié)點(diǎn)162)可為數(shù)據(jù)電 路端接設(shè)備(data circuit-terminatingequipment, DCE),例如調(diào)制解調(diào)器,集線器,網(wǎng) 橋,網(wǎng)關(guān)等,也可為數(shù)據(jù)終端設(shè)備(data terminal equipment, DTE),例如數(shù)字電話手機(jī), 打印機(jī),計(jì)算機(jī)主機(jī)(例如路由器,工作站或服務(wù)器)等。在圖1的例子中,為實(shí)現(xiàn)網(wǎng)絡(luò)通信,在源節(jié)點(diǎn)152上運(yùn)行的各種網(wǎng)絡(luò)應(yīng)用程序可發(fā) 送數(shù)據(jù)包給目的節(jié)點(diǎn)162。源網(wǎng)絡(luò)150和目的網(wǎng)絡(luò)160可在源節(jié)點(diǎn)152和目的節(jié)點(diǎn)162之 間傳送數(shù)據(jù)包。應(yīng)用程序識(shí)別設(shè)備110耦合于源網(wǎng)絡(luò)150和目的網(wǎng)絡(luò)160之間,用于保護(hù) 網(wǎng)絡(luò)資源。在一個(gè)實(shí)施例中,應(yīng)用程序識(shí)別設(shè)備110根據(jù)網(wǎng)絡(luò)管理策略定義需要限制或禁止 的目標(biāo)網(wǎng)絡(luò)應(yīng)用程序。因此,目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的數(shù)據(jù)包的傳遞被限制或禁止。應(yīng)用程 序識(shí)別設(shè)備110可檢測(cè)來(lái)自源節(jié)點(diǎn)152的數(shù)據(jù)包的源應(yīng)用程序,并由此決定該源應(yīng)用程序 是否屬于受限制或禁止的目標(biāo)網(wǎng)絡(luò)應(yīng)用程序。如果通過(guò)源網(wǎng)絡(luò)150發(fā)送來(lái)自源節(jié)點(diǎn)152的 數(shù)據(jù)包的應(yīng)用程序?qū)儆谀繕?biāo)網(wǎng)絡(luò)應(yīng)用程序,應(yīng)用程序識(shí)別設(shè)備110可識(shí)別出該應(yīng)用程序。 在識(shí)別的基礎(chǔ)上,應(yīng)用程序識(shí)別設(shè)備110還可根據(jù)識(shí)別出的應(yīng)用程序源限制數(shù)據(jù)包被傳遞 到目的網(wǎng)絡(luò)160。這種限制的例子包括但不局限于丟棄數(shù)據(jù)包,限制數(shù)據(jù)包的傳輸速度或 檢查聊天記錄。如果根據(jù)對(duì)數(shù)據(jù)包的檢測(cè)發(fā)現(xiàn)該源應(yīng)用程序不屬于目標(biāo)網(wǎng)絡(luò)應(yīng)用程序,應(yīng) 用程序識(shí)別設(shè)備110可通過(guò)目的網(wǎng)絡(luò)160發(fā)送數(shù)據(jù)包到目的節(jié)點(diǎn)162。優(yōu)點(diǎn)在于,應(yīng)用程序識(shí)別設(shè)備110均可識(shí)別目標(biāo)網(wǎng)絡(luò)應(yīng)用程序傳送的非加密和加 密數(shù)據(jù)包。在一個(gè)實(shí)施例中,如果在一段預(yù)設(shè)時(shí)間間隔T1以后仍然無(wú)法與目的節(jié)點(diǎn)162成 功建立通信,源節(jié)點(diǎn)152上運(yùn)行的目標(biāo)網(wǎng)絡(luò)應(yīng)用程序可停止發(fā)送數(shù)據(jù)包。舉例說(shuō)明,在網(wǎng)絡(luò)管理策略下被禁止的P2P/IM應(yīng)用程序可發(fā)送非加密數(shù)據(jù)包。非加密數(shù)據(jù)包可包括通信數(shù)據(jù)和狀態(tài)數(shù)據(jù)。通信數(shù)據(jù)(例如文本,圖像,音頻或視頻)可表 示需要從源節(jié)點(diǎn)152發(fā)送到目的節(jié)點(diǎn)162的信息。狀態(tài)數(shù)據(jù)(例如協(xié)議,源和目的互聯(lián)網(wǎng) (internet protocol, IP)地址以及源和目的端口)可決定非加密數(shù)據(jù)包的傳輸狀態(tài)。此 外,非加密數(shù)據(jù)包可包括表示P2P/IM應(yīng)用程序的一系列獨(dú)有特點(diǎn)的特征。示例性的特征可 包括(但不局限于)通信數(shù)據(jù)中的特別的字符串或狀態(tài)數(shù)據(jù)中的特別的設(shè)置(例如標(biāo)準(zhǔn) 的端口)。因此,非加密數(shù)據(jù)包攜帶的特征可表示發(fā)送該數(shù)據(jù)包的源應(yīng)用程序的身份。應(yīng)用 程序識(shí)別設(shè)備110可基于特征識(shí)別方法識(shí)別P2P/IM應(yīng)用程序,并根據(jù)網(wǎng)絡(luò)應(yīng)用策略丟棄該 數(shù)據(jù)包。如果非加密數(shù)據(jù)包被丟棄,在源節(jié)點(diǎn)152上運(yùn)行的P2P/IM應(yīng)用程序可加密非加密 數(shù)據(jù)包(例如使用一個(gè)或多個(gè)加密算法加密通信數(shù)據(jù)或改變狀態(tài)數(shù)據(jù)的設(shè)置),并可重新 向目的節(jié)點(diǎn)162發(fā)送加密數(shù)據(jù)包。因此,原非加密數(shù)據(jù)包包含的特征可在加密數(shù)據(jù)包中被 刪除,且加密數(shù)據(jù)包的傳輸狀態(tài)可不同于非加密數(shù)據(jù)包的傳輸狀態(tài)。優(yōu)點(diǎn)在于,應(yīng)用程序識(shí) 別設(shè)備110仍可識(shí)別出該加密數(shù)據(jù)包是由該P(yáng)2P/IM應(yīng)用程序發(fā)送的,并據(jù)此強(qiáng)制執(zhí)行網(wǎng)絡(luò) 管理限制。同樣的,對(duì)應(yīng)的加密數(shù)據(jù)包可被丟棄。因此,在一個(gè)實(shí)施例中,如果失敗的通信 或傳送持續(xù)的一段時(shí)間間隔大于一個(gè)特定時(shí)間(例如T1),P2P/IM應(yīng)用程序?qū)⑼V箓魉腿?何數(shù)據(jù)包(例如加密或非加密數(shù)據(jù)包)。應(yīng)用程序識(shí)別設(shè)備110可為通用計(jì)算機(jī)(例如個(gè)人計(jì)算機(jī)(personal computer, PC)),專(zhuān)用計(jì)算機(jī)(例如嵌入式系統(tǒng))或其他設(shè)備或系統(tǒng)。在一個(gè)實(shí)施例中,應(yīng)用程序識(shí) 別設(shè)備110包括應(yīng)用程序識(shí)別裝置130,網(wǎng)絡(luò)接口 118和網(wǎng)絡(luò)接口 120。網(wǎng)絡(luò)接口或網(wǎng)卡 (例如網(wǎng)絡(luò)接口 118和網(wǎng)絡(luò)接口 120)可為以太網(wǎng)接口,光線分布式數(shù)據(jù)接口或其他類(lèi)型 的接口。網(wǎng)絡(luò)接口 118耦合于應(yīng)用程序識(shí)別裝置130和目的網(wǎng)絡(luò)160之間,用于將應(yīng)用程 序識(shí)別裝置130連接到目的網(wǎng)絡(luò)160。同樣的,網(wǎng)絡(luò)接口 120耦合于應(yīng)用程序識(shí)別裝置130 和源網(wǎng)絡(luò)150之間,用于將應(yīng)用程序識(shí)別裝置130連接到源網(wǎng)絡(luò)150。因此,應(yīng)用程序識(shí)別 設(shè)備110分別通過(guò)網(wǎng)絡(luò)接口 120和網(wǎng)絡(luò)接口 118連接到源網(wǎng)絡(luò)150和目的網(wǎng)絡(luò)160。應(yīng)用 程序識(shí)別設(shè)備110可在權(quán)利要求的范疇內(nèi)包括其他結(jié)構(gòu)和組件,且不局限于圖1所示的實(shí) 例中的結(jié)構(gòu)。圖2所示為根據(jù)本發(fā)明一個(gè)實(shí)施例的圖1中的應(yīng)用程序識(shí)別裝置130的結(jié)構(gòu)框 圖。圖2將結(jié)合圖1進(jìn)行描述。在圖2的實(shí)例中,應(yīng)用程序識(shí)別裝置130包括非加密數(shù)據(jù)包識(shí)別器212、加密數(shù)據(jù) 包識(shí)別器214和路由裝置216。非加密數(shù)據(jù)包識(shí)別器212用于識(shí)別目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的 非加密數(shù)據(jù)包,還用于產(chǎn)生規(guī)則。加密數(shù)據(jù)包識(shí)別器214耦合于非加密數(shù)據(jù)包識(shí)別器212, 用于根據(jù)非加密數(shù)據(jù)包識(shí)別器212產(chǎn)生的規(guī)則來(lái)識(shí)別目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的對(duì)應(yīng)加密 數(shù)據(jù)包。路由裝置216用于當(dāng)數(shù)據(jù)包沒(méi)有被識(shí)別出由某個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的數(shù)據(jù)包 時(shí),傳送該數(shù)據(jù)包到目標(biāo)節(jié)點(diǎn)162。在一個(gè)實(shí)施例中,非加密數(shù)據(jù)包識(shí)別器212包括特征監(jiān)測(cè)器220和特征數(shù)據(jù)庫(kù) 222。特征數(shù)據(jù)庫(kù)222耦合于特征監(jiān)測(cè)器220,用于存儲(chǔ)分別表示多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序的 多個(gè)預(yù)設(shè)特征。特征監(jiān)測(cè)器220用于根據(jù)存儲(chǔ)在特征數(shù)據(jù)庫(kù)222的多個(gè)特征檢測(cè)來(lái)自各種 網(wǎng)絡(luò)應(yīng)用程序的非加密數(shù)據(jù)包。更具體的說(shuō),特征監(jiān)測(cè)器220可接收數(shù)據(jù)包,并通過(guò)比較數(shù)據(jù)包中的內(nèi)容和特征
9數(shù)據(jù)庫(kù)中的預(yù)設(shè)特征來(lái)檢測(cè)該數(shù)據(jù)包。如果該數(shù)據(jù)包包括與一個(gè)預(yù)設(shè)特征(例如P2P/IM 的特征)相匹配的內(nèi)容,特征監(jiān)測(cè)器220便可識(shí)別出該數(shù)據(jù)包為目標(biāo)網(wǎng)絡(luò)應(yīng)用程序(例如 P2P/IM)發(fā)送的非加密數(shù)據(jù)包。特征監(jiān)測(cè)器220還可產(chǎn)生表示被識(shí)別出的非加密數(shù)據(jù)包的狀態(tài)的監(jiān)測(cè)數(shù)據(jù)252。 在一個(gè)實(shí)施例中,監(jiān)測(cè)數(shù)據(jù)252是通過(guò)讀取被識(shí)別出的非加密數(shù)據(jù)包的狀態(tài)信息(例如狀 態(tài)數(shù)據(jù))產(chǎn)生的。圖3A所示為根據(jù)本發(fā)明一個(gè)實(shí)施例的監(jiān)測(cè)數(shù)據(jù)252的實(shí)例。圖3A將結(jié)合圖2進(jìn) 行描述。在圖3A的例子中,監(jiān)測(cè)數(shù)據(jù)252包括應(yīng)用程序身份302,協(xié)議類(lèi)型304,源IP地址 306,目的IP地址308,源端口 310和目的端口 312。應(yīng)用程序身份302表示發(fā)送被識(shí)別的 非加密數(shù)據(jù)包的目標(biāo)網(wǎng)絡(luò)應(yīng)用程序的身份。協(xié)議類(lèi)型304表示被識(shí)別的非加密數(shù)據(jù)包的協(xié) 議類(lèi)型。源IP地址306表示源節(jié)點(diǎn)152的IP地址。目的IP地址308表示目的節(jié)點(diǎn)162 的IP地址。源端口 310表示被識(shí)別的非加密數(shù)據(jù)包在源節(jié)點(diǎn)152上使用的端口。目的端 口 312表示被識(shí)別出的非加密數(shù)據(jù)包在目的節(jié)點(diǎn)162上使用的端口。這樣,監(jiān)測(cè)數(shù)據(jù)252 可表示被識(shí)別出的非加密數(shù)據(jù)包的狀態(tài)。監(jiān)測(cè)數(shù)據(jù)252可包括其他結(jié)構(gòu),且不局限于圖3A 中的例子。如圖2所示,在一個(gè)實(shí)施例中,非加密識(shí)別器212還可包括耦合于特征監(jiān)測(cè)器220 的規(guī)則生成器230和耦合于規(guī)則生成器230的狀態(tài)數(shù)據(jù)庫(kù)232。如圖1所述,如果非加密數(shù) 據(jù)包被識(shí)別出是由目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的非加密數(shù)據(jù)包,根據(jù)強(qiáng)制執(zhí)行的限制該非加密 數(shù)據(jù)包可被丟棄。然后,同一個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序會(huì)重新發(fā)送對(duì)應(yīng)的加密數(shù)據(jù)包。優(yōu)點(diǎn)在 于,狀態(tài)數(shù)據(jù)庫(kù)232用于存儲(chǔ)多個(gè)狀態(tài)機(jī),其中,每個(gè)狀態(tài)機(jī)可表示一個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序 發(fā)送的非加密數(shù)據(jù)包和加密數(shù)據(jù)包之間的狀態(tài)轉(zhuǎn)換。狀態(tài)機(jī)可用于產(chǎn)生規(guī)則,以識(shí)別目標(biāo) 網(wǎng)絡(luò)應(yīng)用程序發(fā)送的對(duì)應(yīng)加密數(shù)據(jù)包。圖3B所示為根據(jù)本發(fā)明一個(gè)實(shí)施例的狀態(tài)機(jī)254的實(shí)例。圖3B將結(jié)合圖2和圖 3A進(jìn)行描述。在圖3B的例子中,狀態(tài)機(jī)254可包括應(yīng)用程序身份320,第一數(shù)據(jù)包狀態(tài)322 和第二數(shù)據(jù)包狀態(tài)324。應(yīng)用程序身份320可表示目標(biāo)網(wǎng)絡(luò)應(yīng)用程序的身份。第一數(shù)據(jù)包狀 態(tài)322表示與目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的非加密數(shù)據(jù)包相關(guān)的數(shù)據(jù)包狀態(tài)。第二數(shù)據(jù)包狀態(tài) 324表示與目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的對(duì)應(yīng)加密數(shù)據(jù)包相關(guān)的數(shù)據(jù)包狀態(tài)。因此,狀態(tài)機(jī)254 可用于表示同一目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的非加密數(shù)據(jù)包和對(duì)應(yīng)加密數(shù)據(jù)包的狀態(tài)轉(zhuǎn)換。在一個(gè)實(shí)施例中,第一數(shù)據(jù)包狀態(tài)322包括第一協(xié)議類(lèi)型330和第一目的端口 334。其中,第一協(xié)議類(lèi)型330表示非加密數(shù)據(jù)包使用的協(xié)議類(lèi)型,第一目的端口 334表示 非加密數(shù)據(jù)包的目的端口。第二數(shù)據(jù)包狀態(tài)324可包括第二協(xié)議類(lèi)型332和第二目的端口 336。其中,第二協(xié)議類(lèi)型332表示加密數(shù)據(jù)包使用的協(xié)議類(lèi)型,第二目的端口 336表示加 密數(shù)據(jù)包的目的端口。狀態(tài)機(jī)254可包括其他結(jié)構(gòu),且不局限于圖3B中的例子。在一個(gè)實(shí)施例中,特征數(shù)據(jù)庫(kù)222中的特征和狀態(tài)數(shù)據(jù)庫(kù)232的狀態(tài)機(jī)可由用戶(hù) 預(yù)先設(shè)定或編程獲得。并且,特征數(shù)據(jù)庫(kù)222中的特征和狀態(tài)數(shù)據(jù)庫(kù)232的狀態(tài)機(jī)可得到 更新。例如,如果一個(gè)網(wǎng)絡(luò)應(yīng)用程序被定義為在網(wǎng)絡(luò)管理策略下受限制或禁止的目標(biāo)網(wǎng)絡(luò) 應(yīng)用程序,該網(wǎng)絡(luò)應(yīng)用程序的數(shù)據(jù)包傳送可被檢查。因此,非加密數(shù)據(jù)包的特征可被讀入特 征數(shù)據(jù)庫(kù)222以更新特征數(shù)據(jù)庫(kù)222中的特征。并且,狀態(tài)轉(zhuǎn)換(例如非加密數(shù)據(jù)包和對(duì) 應(yīng)加密數(shù)據(jù)包的狀態(tài)數(shù)據(jù)之間的差別)可被讀入狀態(tài)數(shù)據(jù)庫(kù)232以更新?tīng)顟B(tài)數(shù)據(jù)庫(kù)232中的狀態(tài)機(jī)。如圖2所示,規(guī)則生成器230接收表示被識(shí)別的非加密數(shù)據(jù)包的狀態(tài)的監(jiān)測(cè)數(shù)據(jù) 252和表示被識(shí)別出的非加密數(shù)據(jù)包和同一目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的對(duì)應(yīng)加密數(shù)據(jù)包之間 的狀態(tài)轉(zhuǎn)換的狀態(tài)機(jī)254。在一個(gè)實(shí)施例中,根據(jù)監(jiān)測(cè)數(shù)據(jù)252和狀態(tài)機(jī)254,規(guī)則生成器 230產(chǎn)生規(guī)則256,用于識(shí)別對(duì)應(yīng)的加密數(shù)據(jù)包。更具體的說(shuō),規(guī)則生成器230可查詢(xún)狀態(tài) 數(shù)據(jù)庫(kù)232。如果狀態(tài)機(jī)254包含的應(yīng)用程序身份320和第一數(shù)據(jù)包狀態(tài)322與監(jiān)測(cè)數(shù)據(jù) 252相匹配,規(guī)則生成器230可從狀態(tài)數(shù)據(jù)庫(kù)232中選擇對(duì)應(yīng)的狀態(tài)機(jī)254。例如,如果應(yīng) 用程序身份302與應(yīng)用程序身份320匹配,協(xié)議類(lèi)型304與第一協(xié)議類(lèi)型330匹配,且目的 端口 312與第一目的端口 334匹配,則可選擇該狀態(tài)機(jī)254。因此,在一個(gè)實(shí)施例中,可根據(jù) 監(jiān)測(cè)數(shù)據(jù)252和狀態(tài)機(jī)254產(chǎn)生規(guī)則256。圖3C所示為根據(jù)本發(fā)明一個(gè)實(shí)施例的規(guī)則256的實(shí)例。圖3C將結(jié)合圖2,圖3A 和圖3B進(jìn)行描述。圖3C中與圖3A和圖3B中標(biāo)號(hào)相同的元素具有相同的功能。在圖3C的例子中,規(guī)則生成器230從狀態(tài)機(jī)254中讀取第二協(xié)議類(lèi)型332,從監(jiān)測(cè) 數(shù)據(jù)252中讀取源IP地址306,從監(jiān)測(cè)數(shù)據(jù)252中讀取目的IP地址308,并從狀態(tài)機(jī)254 中讀取第二目的端口 336。然后,規(guī)則生成器230通過(guò)聯(lián)合讀取的數(shù)據(jù)生成規(guī)則256。如圖2所示,在一個(gè)實(shí)施例中,加密數(shù)據(jù)包識(shí)別器214包括數(shù)據(jù)包登錄控制器240 和規(guī)則數(shù)據(jù)庫(kù)236。規(guī)則數(shù)據(jù)庫(kù)236耦合于規(guī)則生成器230和數(shù)據(jù)包登錄控制器240之間, 并可用于存儲(chǔ)規(guī)則生成器230產(chǎn)生的規(guī)則。在一個(gè)實(shí)施例中,規(guī)則256可在一段預(yù)設(shè)時(shí)間間隔T2內(nèi)有效。正如圖1中所描述 的,如果在一段預(yù)設(shè)時(shí)間間隔T 1以后仍然無(wú)法與目的節(jié)點(diǎn)162成功建立通信,在源節(jié)點(diǎn) 152上運(yùn)行的目標(biāo)網(wǎng)絡(luò)應(yīng)用程序會(huì)停止發(fā)送數(shù)據(jù)包。預(yù)設(shè)時(shí)間間隔T2可被設(shè)置為大于預(yù) 設(shè)時(shí)間間隔T1。如果超過(guò)預(yù)設(shè)時(shí)間間隔T2,規(guī)則256可自動(dòng)從規(guī)則數(shù)據(jù)庫(kù)236中刪除。于 是,規(guī)則數(shù)據(jù)庫(kù)236的存儲(chǔ)空間便可用于存儲(chǔ)其他規(guī)則。在一個(gè)實(shí)施例中,數(shù)據(jù)包登錄控制器240耦合于特征監(jiān)控器220和規(guī)則數(shù)據(jù)庫(kù) 236,用于根據(jù)存儲(chǔ)在規(guī)則數(shù)據(jù)庫(kù)236中的規(guī)則256來(lái)識(shí)別目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的對(duì)應(yīng)加 密數(shù)據(jù)包。更具體的說(shuō),數(shù)據(jù)包登錄控制器240可接收和檢測(cè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的對(duì) 應(yīng)加密數(shù)據(jù)包。如果該加密數(shù)據(jù)包包括與規(guī)則256中的第二協(xié)議類(lèi)型332,源IP地址306, 目的IP地址308和第二目的端口 336相匹配的內(nèi)容,則該目標(biāo)網(wǎng)絡(luò)應(yīng)用程序便被識(shí)別出。 因此,應(yīng)用程序識(shí)別設(shè)備110可識(shí)別目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的非加密和加密數(shù)據(jù)包。在一個(gè)實(shí)施例中,路由裝置216用于當(dāng)特征識(shí)別器220和數(shù)據(jù)包登錄控制器240 沒(méi)有識(shí)別出數(shù)據(jù)包為由目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的數(shù)據(jù)包時(shí),發(fā)送該數(shù)據(jù)包給目的節(jié)點(diǎn)162。 更具體的說(shuō),在一個(gè)實(shí)施例中,路由裝置216可包括具有有效路徑和路由狀態(tài)的信息的路 由表(未示出)。路由裝置216可使用路由表來(lái)決定數(shù)據(jù)包的最佳路徑。因此,可根據(jù)該決 定的路徑將數(shù)據(jù)包發(fā)送到目的節(jié)點(diǎn)162。應(yīng)用程序識(shí)別裝置130在權(quán)利要求的范圍和思想下可適用于識(shí)別各種類(lèi)型的數(shù) 據(jù)包,且不局限于圖2,圖3A,圖3B和圖3C的實(shí)例。例如,在一個(gè)多數(shù)據(jù)包的系統(tǒng)中,多種數(shù) 據(jù)包(例如第一數(shù)據(jù)包、第二數(shù)據(jù)包和第三數(shù)據(jù)包)可先后被同一個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā) 送出來(lái)。狀態(tài)數(shù)據(jù)庫(kù)(例如狀態(tài)數(shù)據(jù)庫(kù)232)可保存多個(gè)狀態(tài)機(jī)(例如表示第一和第二 數(shù)據(jù)包之間的狀態(tài)轉(zhuǎn)換的第一狀態(tài)機(jī),及表示第二和第三數(shù)據(jù)包之間的狀態(tài)轉(zhuǎn)換的第二狀
11態(tài)機(jī))。狀態(tài)機(jī)并不局限于表示非加密數(shù)據(jù)包和加密數(shù)據(jù)包之間的狀態(tài)轉(zhuǎn)換。狀態(tài)機(jī)也可 表示兩個(gè)非加密數(shù)據(jù)包之間或兩個(gè)加密數(shù)據(jù)包之間的狀態(tài)轉(zhuǎn)換。如果基于第一數(shù)據(jù)包識(shí)別 出了目標(biāo)網(wǎng)絡(luò)應(yīng)用程序,則可根據(jù)第一數(shù)據(jù)包的監(jiān)測(cè)數(shù)據(jù)和第一狀態(tài)機(jī)產(chǎn)生第一規(guī)則。然 后,如果接收到第二數(shù)據(jù)包,則可根據(jù)第一規(guī)則基于第二數(shù)據(jù)包識(shí)別出目標(biāo)網(wǎng)絡(luò)應(yīng)用程序。 同樣的,可根據(jù)第二數(shù)據(jù)包的監(jiān)測(cè)數(shù)據(jù)和第二狀態(tài)機(jī)產(chǎn)生第二規(guī)則。這樣,如果接收到第三 數(shù)據(jù)包,則可根據(jù)第二規(guī)則基于第三數(shù)據(jù)包識(shí)別出目標(biāo)網(wǎng)絡(luò)應(yīng)用程序。圖4所示為根據(jù)本發(fā)明一個(gè)實(shí)施例的應(yīng)用程序識(shí)別設(shè)備110的操作流程圖400。 圖4將結(jié)合圖1、圖2、圖3A、圖3B及圖3C進(jìn)行描述。圖4所涵蓋的具體操作步驟僅僅作為 示例。也就是說(shuō),本發(fā)明適用于其他合理的操作流程或?qū)D4進(jìn)行改進(jìn)的操作步驟。在步驟402中,產(chǎn)生表示非加密數(shù)據(jù)包的狀態(tài)的監(jiān)測(cè)數(shù)據(jù)(例如監(jiān)測(cè)數(shù)據(jù)252)。 在步驟404中,根據(jù)監(jiān)測(cè)數(shù)據(jù)和狀態(tài)機(jī)(例如狀態(tài)機(jī)254)來(lái)產(chǎn)生規(guī)則(例如規(guī)則256), 該狀態(tài)機(jī)表示該非加密數(shù)據(jù)包和同一目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的對(duì)應(yīng)加密數(shù)據(jù)包之間的狀 態(tài)轉(zhuǎn)換。在步驟406中,接收加密數(shù)據(jù)包。在步驟408中,如果加密數(shù)據(jù)包具有與該規(guī)則匹 配的內(nèi)容,則識(shí)別出目標(biāo)網(wǎng)絡(luò)應(yīng)用程序。上文具體實(shí)施方式
和附圖僅為本發(fā)明之常用實(shí)施例。顯然,在不脫離權(quán)利要求書(shū) 所界定的本發(fā)明精神和發(fā)明范圍的前提下可以有各種增補(bǔ)、修改和替換。本領(lǐng)域技術(shù)人員 應(yīng)該理解,本發(fā)明在實(shí)際應(yīng)用中可根據(jù)具體的環(huán)境和工作要求在不背離發(fā)明準(zhǔn)則的前提下 在形式、結(jié)構(gòu)、布局、比例、材料、元素、組件及其它方面有所變化。因此,在此披露之實(shí)施例 僅用于說(shuō)明而非限制,本發(fā)明的范圍由權(quán)利要求書(shū)及其合法等同物界定,而不限于此前的 描述。
權(quán)利要求
一種應(yīng)用程序識(shí)別系統(tǒng),其特征在于,包括網(wǎng)絡(luò)接口,用于接收網(wǎng)絡(luò)應(yīng)用程序發(fā)送的第一數(shù)據(jù)包和第二數(shù)據(jù)包;耦合于所述網(wǎng)絡(luò)接口的特征監(jiān)測(cè)器,用于根據(jù)所述第一數(shù)據(jù)包來(lái)識(shí)別所述網(wǎng)絡(luò)應(yīng)用程序,以及用于產(chǎn)生表示所述第一數(shù)據(jù)包的狀態(tài)的監(jiān)測(cè)數(shù)據(jù);耦合于特征監(jiān)測(cè)器的規(guī)則生成器,用于根據(jù)所述監(jiān)測(cè)數(shù)據(jù)及根據(jù)表示所述第一和第二數(shù)據(jù)包之間的狀態(tài)轉(zhuǎn)換的狀態(tài)機(jī)產(chǎn)生規(guī)則;及耦合于所述規(guī)則生成器的數(shù)據(jù)包登錄控制器,用于當(dāng)所述第二數(shù)據(jù)包具有與所述規(guī)則匹配的內(nèi)容時(shí),識(shí)別出所述網(wǎng)絡(luò)應(yīng)用程序。
2.根據(jù)權(quán)利要求1所述的應(yīng)用程序識(shí)別系統(tǒng),其特征在于,所述第一數(shù)據(jù)包包括非加 密數(shù)據(jù)包,所述第二數(shù)據(jù)包包括對(duì)應(yīng)的加密數(shù)據(jù)包。
3.根據(jù)權(quán)利要求1所述的應(yīng)用程序識(shí)別系統(tǒng),其特征在于,還包括耦合于所述特征監(jiān)測(cè)器的特征數(shù)據(jù)庫(kù),用于存儲(chǔ)分別表示多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序的多 個(gè)預(yù)設(shè)特征,其中,所述特征監(jiān)測(cè)器通過(guò)比較所述第一數(shù)據(jù)包的內(nèi)容和所述預(yù)設(shè)特征來(lái)識(shí) 別所述網(wǎng)絡(luò)應(yīng)用程序。
4.根據(jù)權(quán)利要求1所述的應(yīng)用程序識(shí)別系統(tǒng),其特征在于,還包括耦合于規(guī)則生成器的狀態(tài)數(shù)據(jù)庫(kù),用于存儲(chǔ)多個(gè)狀態(tài)機(jī),所述多個(gè)狀態(tài)機(jī)分別表示與 多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序有關(guān)的多個(gè)狀態(tài)轉(zhuǎn)換,其中,所述規(guī)則生成器根據(jù)所述監(jiān)測(cè)數(shù)據(jù)從 所述多個(gè)狀態(tài)機(jī)中選擇表示所述第一和第二數(shù)據(jù)包之間的所述狀態(tài)轉(zhuǎn)換的所述狀態(tài)機(jī)。
5.根據(jù)權(quán)利要求1所述的應(yīng)用程序識(shí)別系統(tǒng),其特征在于,所述監(jiān)測(cè)數(shù)據(jù)包括表示所 述網(wǎng)絡(luò)應(yīng)用程序的身份的應(yīng)用程序身份,所述第一數(shù)據(jù)包使用的協(xié)議類(lèi)型,表示運(yùn)行所述 網(wǎng)絡(luò)應(yīng)用程序的源節(jié)點(diǎn)的互聯(lián)網(wǎng)協(xié)議地址的源IP地址,表示所述第一數(shù)據(jù)包的目的節(jié)點(diǎn) 的互聯(lián)網(wǎng)協(xié)議地址的目的IP地址。
6.根據(jù)權(quán)利要求1所述的應(yīng)用程序識(shí)別系統(tǒng),其特征在于,所述狀態(tài)機(jī)包括表示所述 網(wǎng)絡(luò)應(yīng)用程序的身份的應(yīng)用程序身份,與所述第一數(shù)據(jù)包相關(guān)的第一數(shù)據(jù)包狀態(tài),以及與 所述第二數(shù)據(jù)包相關(guān)的第二數(shù)據(jù)包狀態(tài)。
7.根據(jù)權(quán)利要求6所述的應(yīng)用程序識(shí)別系統(tǒng),其特征在于,如果所述應(yīng)用程序身份和 與所述第一數(shù)據(jù)包相關(guān)的所述第一數(shù)據(jù)包狀態(tài)都與所述監(jiān)測(cè)數(shù)據(jù)相匹配,則選擇所述狀態(tài) 機(jī)。
8.根據(jù)權(quán)利要求6所述的應(yīng)用程序識(shí)別系統(tǒng),其特征在于,所述規(guī)則生成器根據(jù)所述 監(jiān)測(cè)數(shù)據(jù)和與所述第二數(shù)據(jù)包相關(guān)的所述第二數(shù)據(jù)包狀態(tài)產(chǎn)生所述規(guī)則。
9.根據(jù)權(quán)利要求1所述的應(yīng)用程序識(shí)別系統(tǒng),其特征在于,所述規(guī)則在一段預(yù)設(shè)時(shí)間 間隔內(nèi)有效。
10.根據(jù)權(quán)利要求1所述的應(yīng)用程序識(shí)別系統(tǒng),其特征在于,還包括耦合于所述規(guī)則生成器且耦合于所述數(shù)據(jù)包登錄控制器的規(guī)則數(shù)據(jù)庫(kù),用于存儲(chǔ)所述 規(guī)則。
11.一種應(yīng)用程序識(shí)別裝置,其特征在于,用于識(shí)別網(wǎng)絡(luò)應(yīng)用程序,包括特征監(jiān)測(cè)器,用于根據(jù)所述目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的第一數(shù)據(jù)包來(lái)識(shí)別所述網(wǎng)絡(luò)應(yīng)用 程序,還用于產(chǎn)生表示所述第一數(shù)據(jù)包的狀態(tài)的監(jiān)測(cè)數(shù)據(jù);規(guī)則生成器,用于根據(jù)所述監(jiān)測(cè)數(shù)據(jù)和狀態(tài)機(jī)產(chǎn)生規(guī)則,其中,所述狀態(tài)機(jī)表示所述第一數(shù)據(jù)包和所述網(wǎng)絡(luò)應(yīng)用程序發(fā)送的第二數(shù)據(jù)包之間的狀態(tài)轉(zhuǎn)換;及數(shù)據(jù)包登錄控制器,用于當(dāng)所述網(wǎng)絡(luò)應(yīng)用程序發(fā)送具有與所述規(guī)則相匹配的內(nèi)容的所 述第二數(shù)據(jù)包時(shí),識(shí)別出所述網(wǎng)絡(luò)應(yīng)用程序。
12.根據(jù)權(quán)利要求11所述的應(yīng)用程序識(shí)別裝置,其特征在于,所述第一數(shù)據(jù)包包括非 加密數(shù)據(jù)包,所述第二數(shù)據(jù)包包括對(duì)應(yīng)的加密數(shù)據(jù)包。
13.根據(jù)權(quán)利要求11所述的應(yīng)用程序識(shí)別裝置,其特征在于,還包括特征數(shù)據(jù)庫(kù),用于 存儲(chǔ)分別表示多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序的多個(gè)預(yù)設(shè)特征,其中,如果所述第一數(shù)據(jù)包具有與 所述多個(gè)預(yù)設(shè)特征中的一個(gè)特征匹配的內(nèi)容,所述網(wǎng)絡(luò)應(yīng)用程序則被識(shí)別出。
14.根據(jù)權(quán)利要求11所述的應(yīng)用程序識(shí)別裝置,其特征在于,還包括狀態(tài)數(shù)據(jù)庫(kù),用于 存儲(chǔ)多個(gè)狀態(tài)機(jī),所述多個(gè)狀態(tài)機(jī)分別表示與多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序有關(guān)的狀態(tài)轉(zhuǎn)換,其 中,表示所述第一和第二數(shù)據(jù)包的所述狀態(tài)轉(zhuǎn)換的所述狀態(tài)機(jī)是根據(jù)所述監(jiān)測(cè)數(shù)據(jù)從所述 多個(gè)狀態(tài)機(jī)中選擇出。
15.根據(jù)權(quán)利要求11所述的應(yīng)用程序識(shí)別裝置,其特征在于,所述監(jiān)測(cè)數(shù)據(jù)包括表示 所述網(wǎng)絡(luò)應(yīng)用程序的身份的應(yīng)用程序身份,所述第一數(shù)據(jù)包使用的協(xié)議類(lèi)型,表示運(yùn)行所 述網(wǎng)絡(luò)應(yīng)用程序的源節(jié)點(diǎn)的互聯(lián)網(wǎng)協(xié)議地址的源IP地址,表示所述識(shí)別出的第一數(shù)據(jù)包 的目的節(jié)點(diǎn)的互聯(lián)網(wǎng)協(xié)議地址的目的IP地址,表示所述被識(shí)別出的第一數(shù)據(jù)包在所述源 節(jié)點(diǎn)使用的端口的源端口,以及表示所述被識(shí)別出的第一數(shù)據(jù)包在所述目的節(jié)點(diǎn)使用的端 口的目的端口。
16.根據(jù)權(quán)利要求11所述的應(yīng)用程序識(shí)別裝置,其特征在于,所述狀態(tài)機(jī)包括表示所 述網(wǎng)絡(luò)應(yīng)用程序的身份的應(yīng)用程序身份,與所述第一數(shù)據(jù)包相關(guān)的第一數(shù)據(jù)包狀態(tài),以及 與所述第二數(shù)據(jù)包相關(guān)的第二數(shù)據(jù)包狀態(tài)。
17.根據(jù)權(quán)利要求16所述的應(yīng)用程序識(shí)別裝置,其特征在于,如果所述應(yīng)用程序身份 和與所述第一數(shù)據(jù)包相關(guān)的所述第一數(shù)據(jù)包狀態(tài)都與所述監(jiān)測(cè)數(shù)據(jù)相匹配,則選擇所述狀 態(tài)機(jī)。
18.根據(jù)權(quán)利要求16所述的應(yīng)用程序識(shí)別裝置,其特征在于,所述規(guī)則是根據(jù)所述監(jiān) 測(cè)數(shù)據(jù)和與所述第二數(shù)據(jù)包相關(guān)的所述第二數(shù)據(jù)包狀態(tài)來(lái)產(chǎn)生的。
19.根據(jù)權(quán)利要求11所述的應(yīng)用程序識(shí)別裝置,其特征在于,所述規(guī)則在一段預(yù)設(shè)時(shí) 間間隔內(nèi)有效。
20.根據(jù)權(quán)利要求11所述的應(yīng)用程序識(shí)別裝置,其特征在于,還包括規(guī)則數(shù)據(jù)庫(kù),用于 存儲(chǔ)所述規(guī)則。
21.一種識(shí)別網(wǎng)絡(luò)應(yīng)用程序的方法,其特征在于,還包括產(chǎn)生表示所述網(wǎng)絡(luò)應(yīng)用程序發(fā)送的第一數(shù)據(jù)包的狀態(tài)的監(jiān)測(cè)數(shù)據(jù);根據(jù)所述監(jiān)測(cè)數(shù)據(jù)和狀態(tài)機(jī)產(chǎn)生規(guī)則,其中,所述狀態(tài)機(jī)表示所述第一數(shù)據(jù)包和所述 目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的第二數(shù)據(jù)包之間的狀態(tài)轉(zhuǎn)換;接收所述第二數(shù)據(jù)包 ’及如果所述第二數(shù)據(jù)包具有與所述規(guī)則相匹配的內(nèi)容,則識(shí)別出所述目標(biāo)網(wǎng)絡(luò)應(yīng)用程序。
22.根據(jù)權(quán)利要求21所述的識(shí)別網(wǎng)絡(luò)應(yīng)用程序的方法,其特征在于,所述第一數(shù)據(jù)包 包括非加密數(shù)據(jù)包,所述第二數(shù)據(jù)包包括對(duì)應(yīng)的加密數(shù)據(jù)包。
23.根據(jù)權(quán)利要求21所述的識(shí)別網(wǎng)絡(luò)應(yīng)用程序的方法,其特征在于,還包括訪問(wèn)分別表示多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序的多個(gè)預(yù)設(shè)特征;及如果所述第一數(shù)據(jù)包具有內(nèi)容與所述多個(gè)預(yù)設(shè)特征中的一個(gè)特征相匹配,則識(shí)別出所 述網(wǎng)絡(luò)應(yīng)用程序。
24.根據(jù)權(quán)利要求21所述的識(shí)別網(wǎng)絡(luò)應(yīng)用程序的方法,其特征在于,還包括訪問(wèn)分別表示與多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序相關(guān)的多個(gè)狀態(tài)轉(zhuǎn)換的多個(gè)狀態(tài)機(jī);及根據(jù)所述監(jiān)測(cè)數(shù)據(jù),從所述多個(gè)狀態(tài)機(jī)中選擇表示與所述網(wǎng)絡(luò)應(yīng)用程序相關(guān)的所述狀 態(tài)轉(zhuǎn)換的所述狀態(tài)機(jī)。
25.根據(jù)權(quán)利要求21所述的識(shí)別網(wǎng)絡(luò)應(yīng)用程序的方法,其特征在于,所述規(guī)則在一段 預(yù)設(shè)時(shí)間間隔內(nèi)有效。
26.一種應(yīng)用程序識(shí)別裝置,其特征在于,用于識(shí)別網(wǎng)絡(luò)應(yīng)用程序,包括非加密數(shù)據(jù)包識(shí)別器,用于基于所述網(wǎng)絡(luò)應(yīng)用程序發(fā)送的非加密數(shù)據(jù)包來(lái)識(shí)別所述網(wǎng) 絡(luò)應(yīng)用程序,還用于基于所述非加密數(shù)據(jù)包和狀態(tài)機(jī)產(chǎn)生規(guī)則,其中,所述狀態(tài)機(jī)表示所述 非加密數(shù)據(jù)包和所述網(wǎng)絡(luò)應(yīng)用程序發(fā)送的對(duì)應(yīng)的加密數(shù)據(jù)包之間的狀態(tài)轉(zhuǎn)換;加密數(shù)據(jù)包識(shí)別器,用于當(dāng)所述目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的所述加密數(shù)據(jù)包包含與所述 規(guī)則相匹配的內(nèi)容時(shí),識(shí)別出所述目標(biāo)網(wǎng)絡(luò)應(yīng)用程序。
27.根據(jù)權(quán)利要求26所述的應(yīng)用程序識(shí)別裝置,其特征在于,所述非加密數(shù)據(jù)包識(shí)別 器包括特征數(shù)據(jù)庫(kù),用于存儲(chǔ)分別表示多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序的多個(gè)預(yù)設(shè)特征,其中,如果 所述非加密數(shù)據(jù)包具有與所述多個(gè)預(yù)設(shè)特征中的一個(gè)特征匹配的內(nèi)容,所述目標(biāo)網(wǎng)絡(luò)應(yīng)用 程序則被識(shí)別出。
28.根據(jù)權(quán)利要求26所述的應(yīng)用程序識(shí)別裝置,其特征在于,所述加密數(shù)據(jù)包識(shí)別器 包括狀態(tài)數(shù)據(jù)庫(kù),用于存儲(chǔ)分別表示與多個(gè)目標(biāo)網(wǎng)絡(luò)應(yīng)用程序有關(guān)的多個(gè)狀態(tài)轉(zhuǎn)換的多個(gè) 狀態(tài)機(jī),其中,表示所述非加密和加密數(shù)據(jù)包之間的所述狀態(tài)轉(zhuǎn)換的所述狀態(tài)機(jī)是根據(jù)所 述監(jiān)測(cè)數(shù)據(jù)從所述多個(gè)狀態(tài)機(jī)中選擇出。
全文摘要
一種應(yīng)用程序識(shí)別系統(tǒng)、裝置以及識(shí)別網(wǎng)絡(luò)應(yīng)用程序的方法。應(yīng)用程序識(shí)別系統(tǒng)包括網(wǎng)絡(luò)接口,特征監(jiān)測(cè)器,規(guī)則生成器和數(shù)據(jù)包登錄控制器。網(wǎng)絡(luò)接口用于接收網(wǎng)絡(luò)應(yīng)用程序發(fā)送的第一和第二數(shù)據(jù)包。特征監(jiān)測(cè)器耦合于該網(wǎng)絡(luò)接口,用于根據(jù)該第一數(shù)據(jù)包識(shí)別網(wǎng)絡(luò)應(yīng)用程序,還用于產(chǎn)生表示第一數(shù)據(jù)包的狀態(tài)的監(jiān)測(cè)數(shù)據(jù)。規(guī)則生成器耦合于特征監(jiān)測(cè)器,用于根據(jù)該監(jiān)測(cè)數(shù)據(jù)及根據(jù)表示該第一和第二數(shù)據(jù)包之間的狀態(tài)轉(zhuǎn)換的狀態(tài)機(jī)產(chǎn)生規(guī)則。數(shù)據(jù)包登錄控制器耦合于該規(guī)則生成器,用于當(dāng)?shù)诙?shù)據(jù)包具有與該規(guī)則匹配的內(nèi)容時(shí),識(shí)別出網(wǎng)絡(luò)應(yīng)用程序。本發(fā)明不僅可識(shí)別目標(biāo)網(wǎng)絡(luò)應(yīng)用程序發(fā)送的非加密數(shù)據(jù)包,還可識(shí)別與該非加密數(shù)據(jù)包相對(duì)應(yīng)的加密數(shù)據(jù)包。
文檔編號(hào)H04L29/06GK101854342SQ20091013332
公開(kāi)日2010年10月6日 申請(qǐng)日期2009年3月31日 優(yōu)先權(quán)日2009年3月31日
發(fā)明者肖海濤 申請(qǐng)人:凹凸電子(武漢)有限公司