網(wǎng)絡(luò)監(jiān)控方法、過濾數(shù)據(jù)包的方法及裝置的制造方法
【專利摘要】本申請(qǐng)公開了一種網(wǎng)絡(luò)監(jiān)控方法和裝置。該網(wǎng)絡(luò)監(jiān)控方法包括:接收網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)包,其中所述數(shù)據(jù)包具有指示所述數(shù)據(jù)包傳輸?shù)木W(wǎng)絡(luò)流的流信息;獲取所述數(shù)據(jù)包的流信息;檢測(cè)元數(shù)據(jù)庫中是否存在對(duì)應(yīng)于所述數(shù)據(jù)包的流信息,其中所述元數(shù)據(jù)庫用于存儲(chǔ)元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息;根據(jù)所述流信息的檢測(cè)結(jié)果,生成與所述數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù),并將其與對(duì)應(yīng)的流信息相關(guān)聯(lián);以及將被生成的元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息存儲(chǔ)到所述元數(shù)據(jù)庫中。
【專利說明】
網(wǎng)絡(luò)監(jiān)控方法、過濾數(shù)據(jù)包的方法及裝置
技術(shù)領(lǐng)域
[0001]本申請(qǐng)涉及通信技術(shù)領(lǐng)域,更具體地,涉及一種網(wǎng)絡(luò)監(jiān)控方法、過濾數(shù)據(jù)包的方法以及裝置。
【背景技術(shù)】
[0002]云計(jì)算、高清視頻通信、數(shù)據(jù)庫等新興信息技術(shù)的應(yīng)用極大地推動(dòng)了通信技術(shù)的發(fā)展,例如1Gbps以太網(wǎng)技術(shù)等高速網(wǎng)絡(luò)通信技術(shù)也隨之得到了廣泛地應(yīng)用。然而隨著傳輸速率的大幅提高,高速通信網(wǎng)絡(luò)的監(jiān)控和管理也變得更為困難。
[0003]為了從網(wǎng)絡(luò)中獲得足夠的信息,網(wǎng)絡(luò)監(jiān)控需要對(duì)網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)包進(jìn)行捕獲,并對(duì)捕獲的數(shù)據(jù)包進(jìn)行分析,從而實(shí)現(xiàn)網(wǎng)絡(luò)故障確定、入侵檢測(cè)、流量統(tǒng)計(jì)以及網(wǎng)絡(luò)安全性和可靠性保證等目的。然而,現(xiàn)有的網(wǎng)絡(luò)監(jiān)控分析設(shè)備往往不能有效支持例如1Gbps的高速傳輸速率下數(shù)據(jù)包的采集,這是因?yàn)樵诟咚賯鬏斔俾氏聰?shù)據(jù)包會(huì)丟失,而數(shù)據(jù)包的丟失會(huì)影響數(shù)據(jù)分析的準(zhǔn)確性。此外,在很多應(yīng)用場(chǎng)合下,網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)包還需要被存儲(chǔ)起來,以便于后續(xù)的分析、比較處理。數(shù)據(jù)包的存儲(chǔ)需求進(jìn)一步增加了網(wǎng)絡(luò)監(jiān)控分析設(shè)備的處理壓力。
【發(fā)明內(nèi)容】
[0004]本申請(qǐng)的一個(gè)目的在于提供一種能夠在高速傳輸速率下捕獲網(wǎng)絡(luò)數(shù)據(jù)包并且同時(shí)獲取數(shù)據(jù)包相關(guān)信息的方法。
[0005]本申請(qǐng)的一個(gè)方面公開了一種網(wǎng)絡(luò)監(jiān)控方法。該監(jiān)控方法包括:接收網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)包,其中所述數(shù)據(jù)包具有指示所述數(shù)據(jù)包傳輸?shù)木W(wǎng)絡(luò)流的流信息;獲取所述數(shù)據(jù)包的流信息;檢測(cè)元數(shù)據(jù)庫中是否存在對(duì)應(yīng)于所述數(shù)據(jù)包的流信息,其中所述元數(shù)據(jù)庫用于存儲(chǔ)元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息;根據(jù)所述流信息的檢測(cè)結(jié)果,生成與所述數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù),并將其與對(duì)應(yīng)的流信息相關(guān)聯(lián);以及將被生成的元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息存儲(chǔ)到所述元數(shù)據(jù)庫中。
[0006]可以看出,本申請(qǐng)的網(wǎng)絡(luò)監(jiān)控方法通過元數(shù)據(jù)來描述數(shù)據(jù)包的傳輸,而該元數(shù)據(jù)的大小通常遠(yuǎn)小于數(shù)據(jù)包的大小。在需要對(duì)數(shù)據(jù)包進(jìn)行監(jiān)控時(shí),例如對(duì)數(shù)據(jù)包的傳輸狀態(tài)等信息進(jìn)行統(tǒng)計(jì)、或者依據(jù)特定算法對(duì)數(shù)據(jù)包進(jìn)行過濾時(shí),網(wǎng)絡(luò)監(jiān)控裝置僅需要對(duì)元數(shù)據(jù)進(jìn)行處理,而不需要或者較少需要直接對(duì)數(shù)據(jù)包進(jìn)行處理。這種數(shù)據(jù)分析處理方式極大地簡(jiǎn)化了網(wǎng)絡(luò)數(shù)據(jù)包的分析處理難度,從而提高了網(wǎng)絡(luò)監(jiān)控的效率和可靠性。
[0007]在一些實(shí)施例中,所述根據(jù)所述流信息的檢測(cè)結(jié)果,生成與所述數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù)的步驟包括:如果檢測(cè)到元數(shù)據(jù)庫中不具有對(duì)應(yīng)于所述數(shù)據(jù)包的流信息,則從所述數(shù)據(jù)包中提取與其傳輸相關(guān)的數(shù)據(jù)以生成所述元數(shù)據(jù);以及如果檢測(cè)到元數(shù)據(jù)庫中具有對(duì)應(yīng)于所述數(shù)據(jù)包的流信息,則從所述元數(shù)據(jù)庫中復(fù)制與所述流信息相關(guān)聯(lián)的元數(shù)據(jù)作為所述數(shù)據(jù)包的元數(shù)據(jù)。
[0008]在一些實(shí)施例中,從所述數(shù)據(jù)包中提取與其傳輸相關(guān)的數(shù)據(jù)以生成所述元數(shù)據(jù)的步驟包括:復(fù)制和/或處理所述數(shù)據(jù)包包頭的至少一部分以得到所述數(shù)據(jù)包的元數(shù)據(jù)。
[0009]在一些實(shí)施例中,所述處理數(shù)據(jù)包包頭的至少一部分包括利用一個(gè)或多個(gè)預(yù)定轉(zhuǎn)換函數(shù)來轉(zhuǎn)換所述數(shù)據(jù)包包頭中包含的至少一部分?jǐn)?shù)據(jù)。
[0010]在一些實(shí)施例中,將所述元數(shù)據(jù)與對(duì)應(yīng)的流信息相關(guān)聯(lián)包括:將所述流信息包含在生成的元數(shù)據(jù)中。
[0011]在一些實(shí)施例中,所述被接收的數(shù)據(jù)包是網(wǎng)絡(luò)上傳輸?shù)亩鄠€(gè)數(shù)據(jù)包中的一個(gè),所述網(wǎng)絡(luò)監(jiān)控方法包括:接收所述多個(gè)數(shù)據(jù)包,并根據(jù)對(duì)應(yīng)于所述多個(gè)數(shù)據(jù)包的元數(shù)據(jù),生成針對(duì)所述多個(gè)數(shù)據(jù)包的網(wǎng)絡(luò)統(tǒng)計(jì)信息。
[0012]在一些實(shí)施例中,所述網(wǎng)絡(luò)統(tǒng)計(jì)信息包括源地址和目的地址,源端口和目的端口,源域標(biāo)識(shí)符,目的域標(biāo)識(shí)符,服務(wù)類型標(biāo)識(shí)符,數(shù)據(jù)包流向,協(xié)議標(biāo)識(shí)符,VLAN標(biāo)識(shí)符,數(shù)據(jù)包的計(jì)數(shù),和/或數(shù)據(jù)包的大小。
[0013]在一些實(shí)施例中,所述網(wǎng)絡(luò)監(jiān)控方法還包括:將所述數(shù)據(jù)包存儲(chǔ)在數(shù)據(jù)包庫中,其中所述數(shù)據(jù)包被分配了所述元數(shù)據(jù)庫中的生成的元數(shù)據(jù)。
[0014]在一些實(shí)施例中,將被生成的元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息存儲(chǔ)到所述元數(shù)據(jù)庫中的步驟包括:將所述數(shù)據(jù)包的被生成的元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息緩存到緩沖存儲(chǔ)器中;將被緩存的所述數(shù)據(jù)包的元數(shù)據(jù)和相關(guān)聯(lián)的流信息、以及被緩存的其他數(shù)據(jù)包的元數(shù)據(jù)和相關(guān)聯(lián)的流信息從所述緩沖存儲(chǔ)器異步地轉(zhuǎn)移到所述元數(shù)據(jù)庫中。
[0015]在一些實(shí)施例中,所述被接收的數(shù)據(jù)包是網(wǎng)絡(luò)上傳輸?shù)囊唤M數(shù)據(jù)包中的一個(gè),所述網(wǎng)絡(luò)監(jiān)控方法包括:接收該組數(shù)據(jù)包;以及如果該組數(shù)據(jù)包中的每個(gè)數(shù)據(jù)包均被分配了對(duì)應(yīng)的所述元數(shù)據(jù)庫中的元數(shù)據(jù),則對(duì)該組數(shù)據(jù)包添加指示每個(gè)數(shù)據(jù)包被分配了對(duì)應(yīng)元數(shù)據(jù)的塊標(biāo)記。
[0016]在一些實(shí)施例中,所述網(wǎng)絡(luò)監(jiān)控方法還包括:使用元數(shù)據(jù)過濾器來過濾具有所述指示每個(gè)數(shù)據(jù)包被分配了對(duì)應(yīng)元數(shù)據(jù)的塊標(biāo)記的該組數(shù)據(jù)包。
[0017]在一些實(shí)施例中,所述元數(shù)據(jù)包括一對(duì)源地址及目的地址、一對(duì)源端口和目的端口、源端子網(wǎng)絡(luò)標(biāo)識(shí)符、目的端子網(wǎng)絡(luò)標(biāo)識(shí)符、數(shù)據(jù)包流向、服務(wù)類型標(biāo)識(shí)符、協(xié)議標(biāo)識(shí)符、應(yīng)用標(biāo)識(shí)符和/或VLAN標(biāo)識(shí)符。
[0018]在一些實(shí)施例中,所述流信息包括一對(duì)源地址及目的地址。
[0019]在一些實(shí)施例中,所述流信息還包括一對(duì)源端口和目的端口。
[0020]本申請(qǐng)的另一方面還公開了一種用于過濾網(wǎng)絡(luò)上傳輸?shù)闹辽僖唤M數(shù)據(jù)包的方法。該方法包括:提供元數(shù)據(jù)過濾器和數(shù)據(jù)包過濾器,其中所述數(shù)據(jù)包過濾器關(guān)聯(lián)于所述元數(shù)據(jù)過濾器;針對(duì)所述至少一組數(shù)據(jù)包中的每組數(shù)據(jù)包,檢測(cè)其是否具有塊標(biāo)記,其中所述塊標(biāo)記指示所述該組數(shù)據(jù)包被分配了與其中的每個(gè)數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù);根據(jù)所述塊標(biāo)記的檢測(cè)結(jié)果使用所述元數(shù)據(jù)過濾器或所述數(shù)據(jù)包過濾器來過濾所述至少一組數(shù)據(jù)包。[0021 ] 在一些實(shí)施例中,所述根據(jù)所述塊標(biāo)記的檢測(cè)結(jié)果使用所述元數(shù)據(jù)過濾器或所述數(shù)據(jù)包過濾器來過濾所述至少一組數(shù)據(jù)包的步驟包括:如果檢測(cè)到所述至少一組數(shù)據(jù)包中的一組數(shù)據(jù)包被分配了一組元數(shù)據(jù),則使用所述元數(shù)據(jù)過濾器來過濾該組數(shù)據(jù)包;以及如果檢測(cè)到所述至少一組數(shù)據(jù)包中的一組數(shù)據(jù)包未被分配一組元數(shù)據(jù),則使用所述數(shù)據(jù)包過濾器來過濾該組數(shù)據(jù)包。
[0022]在一些實(shí)施例中,所述至少一組數(shù)據(jù)包中的每組數(shù)據(jù)包具有數(shù)據(jù)塊頭,并且所述指示每個(gè)數(shù)據(jù)包被分配了對(duì)應(yīng)元數(shù)據(jù)的塊標(biāo)記被添加在所述數(shù)據(jù)塊頭中。
[0023]在一些實(shí)施例中,所述至少一組數(shù)據(jù)包是由數(shù)據(jù)包塊索引來索引的,并且所述塊標(biāo)記還被添加在所述數(shù)據(jù)包塊索引中。
[0024]在一些實(shí)施例中,所述方法還包括:從所述至少一組數(shù)據(jù)包中獲取被過濾的數(shù)據(jù)包。
[0025]在一些實(shí)施例中,所述數(shù)據(jù)包過濾器具有至少一個(gè)預(yù)定過濾條件,其與所述元數(shù)據(jù)過濾器中的至少一個(gè)過濾條件對(duì)應(yīng)并可相互轉(zhuǎn)換。
[0026]本申請(qǐng)的另一方面還公開了一種用于過濾網(wǎng)絡(luò)上傳輸?shù)闹辽僖粋€(gè)數(shù)據(jù)包的方法。該方法包括:提供元數(shù)據(jù)過濾器和數(shù)據(jù)包過濾器,其中所述數(shù)據(jù)包過濾器關(guān)聯(lián)于所述元數(shù)據(jù)過濾器;針對(duì)所述至少一個(gè)數(shù)據(jù)包中的每個(gè)數(shù)據(jù)包,檢測(cè)其是否具有對(duì)應(yīng)的元數(shù)據(jù);以及根據(jù)所述元數(shù)據(jù)的檢測(cè)結(jié)果使用所述元數(shù)據(jù)過濾器或所述數(shù)據(jù)包過濾器來過濾所述至少一個(gè)數(shù)據(jù)包。
[0027]本申請(qǐng)的另一方面還公開了一種網(wǎng)絡(luò)監(jiān)控裝置,該網(wǎng)絡(luò)監(jiān)控裝置包括:接收裝置,用于接收網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)包,其中所述數(shù)據(jù)包具有指示所述數(shù)據(jù)包傳輸?shù)木W(wǎng)絡(luò)流的流信息;流信息獲取裝置,用于獲取所述數(shù)據(jù)包的流信息;檢測(cè)裝置,用于檢測(cè)元數(shù)據(jù)庫中是否存在對(duì)應(yīng)于所述數(shù)據(jù)包的流信息,其中所述元數(shù)據(jù)庫用于存儲(chǔ)元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息;元數(shù)據(jù)生成裝置,用于根據(jù)所述流信息的檢測(cè)結(jié)果,生成與所述至少一個(gè)數(shù)據(jù)包中的每個(gè)數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù),并將其與對(duì)應(yīng)的流信息相關(guān)聯(lián);以及存儲(chǔ)裝置,用于將被生成的元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息存儲(chǔ)到所述元數(shù)據(jù)庫中。
[0028]本申請(qǐng)的另一方面還公開了一種用于過濾網(wǎng)絡(luò)上傳輸?shù)闹辽僖唤M數(shù)據(jù)包的裝置。該裝置包括:元數(shù)據(jù)過濾器;數(shù)據(jù)包過濾器,其中所述數(shù)據(jù)包過濾器關(guān)聯(lián)于所述元數(shù)據(jù)過濾器;標(biāo)記檢測(cè)裝置,用于針對(duì)所述至少一組數(shù)據(jù)包中的每組數(shù)據(jù)包,檢測(cè)其是否具有塊標(biāo)記,其中所述塊標(biāo)記指示所述該組數(shù)據(jù)包被分配了與其中的每個(gè)數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù);以及過濾器選擇裝置,用于根據(jù)所述塊標(biāo)記的檢測(cè)結(jié)果使用所述元數(shù)據(jù)過濾器或所述數(shù)據(jù)包過濾器來過濾所述至少一組數(shù)據(jù)包。
[0029]以上為本申請(qǐng)的概述,可能有簡(jiǎn)化、概括和省略細(xì)節(jié)的情況,因此本領(lǐng)域的技術(shù)人員應(yīng)該認(rèn)識(shí)到,該部分僅是示例說明性的,而不旨在以任何方式限定本申請(qǐng)范圍。本概述部分既非旨在確定所要求保護(hù)主題的關(guān)鍵特征或必要特征,也非旨在用作為確定所要求保護(hù)主題的范圍的輔助手段。
【附圖說明】
[0030]通過下面說明書和所附的權(quán)利要求書并與附圖結(jié)合,將會(huì)更加充分地清楚理解本申請(qǐng)內(nèi)容的上述和其他特征??梢岳斫?,這些附圖僅描繪了本申請(qǐng)內(nèi)容的若干實(shí)施方式,因此不應(yīng)認(rèn)為是對(duì)本申請(qǐng)內(nèi)容范圍的限定。通過采用附圖,本申請(qǐng)內(nèi)容將會(huì)得到更加明確和詳細(xì)地說明。
[0031]圖1示出了可以應(yīng)用本申請(qǐng)網(wǎng)絡(luò)監(jiān)控裝置的網(wǎng)絡(luò)系統(tǒng)10的示意圖;
[0032]圖2示出了根據(jù)本申請(qǐng)一個(gè)實(shí)施例的網(wǎng)絡(luò)監(jiān)控裝置16的示意圖;
[0033]圖3示出了根據(jù)本申請(qǐng)一個(gè)實(shí)施例的網(wǎng)絡(luò)監(jiān)控方法300的流程圖;
[0034]圖4示出了根據(jù)本申請(qǐng)一個(gè)實(shí)施例的用于過濾網(wǎng)絡(luò)上傳輸?shù)闹辽僖唤M數(shù)據(jù)包的方法400 ;
[0035]圖5示出了根據(jù)本申請(qǐng)一個(gè)實(shí)施例的網(wǎng)絡(luò)監(jiān)控裝置500的示意圖;
[0036]圖6示出了根據(jù)本申請(qǐng)一個(gè)實(shí)施例的用于過濾網(wǎng)絡(luò)上傳輸?shù)闹辽僖唤M數(shù)據(jù)包的裝置600的示意圖。
【具體實(shí)施方式】
[0037]在下面的詳細(xì)描述中,參考了構(gòu)成其一部分的附圖。在附圖中,類似的符號(hào)通常表示類似的組成部分,除非上下文另有說明?!揪唧w實(shí)施方式】、附圖和權(quán)利要求書中描述的示例性實(shí)施方式并非旨在限定。在不偏離本申請(qǐng)的主題的精神或范圍的情況下,可以采用其他實(shí)施方式,并且可以做出其他變化??梢岳斫?,可以對(duì)本文中一般性描述的、在附圖中圖解說明的本申請(qǐng)內(nèi)容的各個(gè)方面進(jìn)行多種不同構(gòu)成的配置、替換、組合、設(shè)計(jì),而所有這些都明確地構(gòu)成本申請(qǐng)內(nèi)容的一部分。
[0038]圖1示出了可以應(yīng)用本申請(qǐng)網(wǎng)絡(luò)監(jiān)控裝置的網(wǎng)絡(luò)系統(tǒng)10的示意圖。
[0039]如圖1所示,該網(wǎng)絡(luò)系統(tǒng)10包括多個(gè)網(wǎng)絡(luò)設(shè)備12,這些網(wǎng)絡(luò)設(shè)備12通過網(wǎng)絡(luò)14進(jìn)行通信,并且在相互之間發(fā)送、接收數(shù)據(jù)。網(wǎng)絡(luò)14上傳輸?shù)臄?shù)據(jù)可以采用數(shù)據(jù)包(packet)的形式,其中這些數(shù)據(jù)包可以采用相同或不同的通信傳輸協(xié)議,并且具有相同或不同的數(shù)據(jù)格式。這些數(shù)據(jù)包具有包頭,其包含有關(guān)于數(shù)據(jù)包的數(shù)據(jù)及傳輸?shù)男畔?。通過使用包頭中有關(guān)于數(shù)據(jù)包傳輸?shù)男畔?,網(wǎng)絡(luò)14可以利用例如路由器來將數(shù)據(jù)包由源網(wǎng)絡(luò)設(shè)備發(fā)送到目的網(wǎng)絡(luò)設(shè)備。例如,對(duì)于采用TCP/IP協(xié)議的數(shù)據(jù)包,其包頭中包含有源網(wǎng)絡(luò)設(shè)備的源地址和源端口,以及目的網(wǎng)絡(luò)設(shè)備的目的端口和目的地址。
[0040]網(wǎng)絡(luò)監(jiān)控裝置16被耦接到網(wǎng)絡(luò)14上,并且用于監(jiān)測(cè)網(wǎng)絡(luò)14上傳輸?shù)臄?shù)據(jù)信息。例如,網(wǎng)絡(luò)監(jiān)控裝置16可以捕獲數(shù)據(jù)包,并且還可以使用數(shù)據(jù)包分析引擎來對(duì)所捕獲的數(shù)據(jù)包進(jìn)行分析。在一些實(shí)施例中,網(wǎng)絡(luò)監(jiān)控裝置16可以包括硬件、軟件、CPU、存儲(chǔ)器、接口等組件,從而運(yùn)行通用或?qū)S贸绦?,以連接網(wǎng)絡(luò)14并監(jiān)測(cè)其上傳輸?shù)臄?shù)據(jù)。網(wǎng)絡(luò)監(jiān)控裝置16還可以進(jìn)行其他的測(cè)試、測(cè)量操作,以及進(jìn)行數(shù)據(jù)的發(fā)送和接收操作,等等。
[0041]圖2示出了根據(jù)本申請(qǐng)一個(gè)實(shí)施例的網(wǎng)絡(luò)監(jiān)控裝置的示意圖。
[0042]如圖2所示,該網(wǎng)絡(luò)監(jiān)控裝置16包括網(wǎng)絡(luò)接口 22,其通過一個(gè)或多個(gè)端口將網(wǎng)絡(luò)裝置16連接到網(wǎng)絡(luò)14上。網(wǎng)絡(luò)監(jiān)控裝置16還可以包括一個(gè)或多個(gè)處理器23,一個(gè)或多個(gè)易失性存儲(chǔ)器24 (諸如動(dòng)態(tài)隨機(jī)存儲(chǔ)器),一個(gè)或多個(gè)非易失性存儲(chǔ)器26 (諸如硬盤、快閃存儲(chǔ)器等)。在一些實(shí)施例中,網(wǎng)絡(luò)監(jiān)控裝置16還包括顯示器28,用戶輸入組件30,以及用于耦接外部設(shè)備的輸入/輸出接口 34等。網(wǎng)絡(luò)監(jiān)控裝置16可以基于存儲(chǔ)在存儲(chǔ)器26中的操作系統(tǒng),例如 Windows Server?,Mac OS X?,Unix?, Linux?,F(xiàn)reeBSD?等,來進(jìn)行操作。
[0043]圖3示出了根據(jù)本申請(qǐng)一個(gè)實(shí)施例的網(wǎng)絡(luò)監(jiān)控方法300的流程圖。該方法可以由處理邏輯執(zhí)行,該處理邏輯可以包括軟件(其可運(yùn)行在例如通用或?qū)S糜?jì)算設(shè)備上)、硬件(例如電路、專用邏輯等)、固件或者其組合。在一些實(shí)施例中,該網(wǎng)絡(luò)監(jiān)控方法可以由圖2所示的網(wǎng)絡(luò)監(jiān)控裝置執(zhí)行。
[0044]如圖3所示,該網(wǎng)絡(luò)監(jiān)控方法300始于步驟S302,網(wǎng)絡(luò)監(jiān)控裝置接收網(wǎng)絡(luò)上傳輸?shù)囊粋€(gè)數(shù)據(jù)包,其中該數(shù)據(jù)包具有指示數(shù)據(jù)包傳輸?shù)木W(wǎng)絡(luò)流的流信息。在一些實(shí)施例中,流信息可以包括一對(duì)源地址和目的地址,或者還可以包括一對(duì)源端口和目的端口。通過源地址和目標(biāo)地址對(duì),網(wǎng)絡(luò)監(jiān)控裝置可以確定所接收的數(shù)據(jù)包是在網(wǎng)絡(luò)上耦接的哪兩個(gè)網(wǎng)絡(luò)設(shè)備之間傳輸?shù)?;而通過源端口和目的端口,網(wǎng)絡(luò)監(jiān)控裝置可以進(jìn)一步地確定所接收的數(shù)據(jù)包是有關(guān)于這些網(wǎng)絡(luò)設(shè)備上的哪些具體進(jìn)程。在一些實(shí)施例中,網(wǎng)絡(luò)監(jiān)控裝置可以通過建立一個(gè)或多個(gè)查找表來存儲(chǔ)流信息所包括的源地址和目的地址對(duì)和/或源端口和目的端口對(duì)。該查找表包括多對(duì)地址對(duì)和/或端口對(duì),其中每個(gè)地址對(duì)和/或端口對(duì)可以由一流標(biāo)識(shí)符來標(biāo)識(shí)。
[0045]可以理解,在實(shí)際應(yīng)用中,網(wǎng)絡(luò)上通常傳輸有多個(gè)數(shù)據(jù)包。網(wǎng)絡(luò)監(jiān)控裝置接收這些數(shù)據(jù)包,并對(duì)其進(jìn)行監(jiān)控。換言之,在步驟S302接收的數(shù)據(jù)包可以是網(wǎng)絡(luò)監(jiān)控裝置接收的多個(gè)數(shù)據(jù)包中的一個(gè),并且網(wǎng)絡(luò)監(jiān)控裝置可以對(duì)該數(shù)據(jù)包執(zhí)行網(wǎng)絡(luò)監(jiān)控方法300。此外,對(duì)于其他被接收的數(shù)據(jù)包,所述網(wǎng)絡(luò)監(jiān)控裝置也可以對(duì)這些數(shù)據(jù)包執(zhí)行網(wǎng)絡(luò)監(jiān)控方法300。
[0046]之后,在步驟S304,網(wǎng)絡(luò)監(jiān)控裝置獲取步驟S302中接收的數(shù)據(jù)包的流信息。
[0047]通常,流信息可以被包含在數(shù)據(jù)包的包頭中,例如被定義在包頭的預(yù)定字段。因此,在一些實(shí)施例中,網(wǎng)絡(luò)監(jiān)控裝置可以通過查詢數(shù)據(jù)包包頭的預(yù)定字段來獲得對(duì)應(yīng)的流信息。可以理解,根據(jù)發(fā)送/接收的網(wǎng)絡(luò)設(shè)備的不同,不同的數(shù)據(jù)包可以具有不同或相同的流信息。然而數(shù)據(jù)包的長(zhǎng)度通常具有限制,例如對(duì)于IP數(shù)據(jù)包而言,其最大長(zhǎng)度為64k字節(jié)。因此,對(duì)于兩個(gè)網(wǎng)絡(luò)設(shè)備之間的大數(shù)據(jù)量傳輸,網(wǎng)絡(luò)監(jiān)控裝置往往能夠監(jiān)測(cè)到數(shù)百、數(shù)千或者更多數(shù)量的數(shù)據(jù)包,并且這些數(shù)據(jù)包具有相同的流信息。
[0048]接著,在步驟S306,網(wǎng)絡(luò)監(jiān)控裝置檢測(cè)元數(shù)據(jù)庫中是否存在對(duì)應(yīng)于所接收的數(shù)據(jù)包的流信息,其中元數(shù)據(jù)庫可以存儲(chǔ)元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息。
[0049]在一些實(shí)施例中,元數(shù)據(jù)庫是元數(shù)據(jù)以及與其相關(guān)聯(lián)的流信息的集合,其是網(wǎng)絡(luò)監(jiān)控裝置基于已接收到的數(shù)據(jù)包的信息所創(chuàng)建的。其中,元數(shù)據(jù)是與數(shù)據(jù)包的傳輸相關(guān)的信息,其例如包括一對(duì)源地址及目的地址、一對(duì)源端口和目的端口、源端子網(wǎng)絡(luò)標(biāo)識(shí)符、目的端子網(wǎng)絡(luò)標(biāo)識(shí)符、數(shù)據(jù)包流向、服務(wù)類型標(biāo)識(shí)符、協(xié)議標(biāo)識(shí)符和/或VLAN(虛擬局域網(wǎng))標(biāo)識(shí)符等信息,或者其他與數(shù)據(jù)包的數(shù)據(jù)和/或其傳輸相關(guān)的信息(例如數(shù)據(jù)包的大小等)O
[0050]在一些實(shí)施例中,網(wǎng)絡(luò)監(jiān)控裝置可以通過復(fù)制一個(gè)數(shù)據(jù)包包頭的一部分或全部數(shù)據(jù)來作為該數(shù)據(jù)包的元數(shù)據(jù)。例如,網(wǎng)絡(luò)監(jiān)控裝置可以直接復(fù)制包頭中的源地址、目的地址、源端口、目的端口、地址類型、數(shù)據(jù)包長(zhǎng)度、服務(wù)類型標(biāo)識(shí)符等數(shù)據(jù)作為元數(shù)據(jù)的一部分。對(duì)于采用特定協(xié)議的數(shù)據(jù)包,這些數(shù)據(jù)在數(shù)據(jù)包中的位置都是確定的。因此,可以在網(wǎng)絡(luò)監(jiān)控裝置中提供預(yù)定義的數(shù)據(jù)提取程序來獲得元數(shù)據(jù)。
[0051]在另一些實(shí)施例中,網(wǎng)絡(luò)監(jiān)控裝置還可以對(duì)數(shù)據(jù)包包頭的部分或全部數(shù)據(jù)進(jìn)行處理,并將處理后的數(shù)據(jù)作為數(shù)據(jù)包的元數(shù)據(jù)。例如,在采用TCP/IP協(xié)議的系統(tǒng)中,不同的服務(wù)端口通常已被分配給不同的應(yīng)用程序或服務(wù)。通常地,端口號(hào)53被分配給網(wǎng)絡(luò)系統(tǒng)(DNS)以進(jìn)行域名解析;端口號(hào)80被分配給超文本服務(wù)器(HTTP)以用于萬維網(wǎng)服務(wù)器向網(wǎng)絡(luò)設(shè)備的本地瀏覽器傳送超文本;端口號(hào)110被分配用于電子郵件傳輸,等等。因此,網(wǎng)絡(luò)監(jiān)控裝置中可以包括一個(gè)預(yù)定轉(zhuǎn)換函數(shù),其可以包括TCP/IP協(xié)議或其他網(wǎng)絡(luò)傳輸協(xié)議定義的端口 -應(yīng)用程序或服務(wù)的對(duì)應(yīng)關(guān)系。利用該預(yù)定轉(zhuǎn)換函數(shù),數(shù)據(jù)包包頭中的源端口或目的端口的數(shù)據(jù)可以被轉(zhuǎn)換為對(duì)應(yīng)的應(yīng)用程序標(biāo)識(shí)符,其中應(yīng)用程序標(biāo)識(shí)符可以指示數(shù)據(jù)包可被應(yīng)用于何種應(yīng)用程序。在一些實(shí)施例中,只要數(shù)據(jù)包包頭中的源端口和目標(biāo)端口中的一個(gè)屬于預(yù)定義的服務(wù)端口,則該數(shù)據(jù)包即可被提供或標(biāo)記與該服務(wù)端口對(duì)應(yīng)的應(yīng)用程序標(biāo)識(shí)符。類似地,網(wǎng)絡(luò)監(jiān)控裝置還可以包括其他的預(yù)定轉(zhuǎn)換函數(shù)。例如,根據(jù)實(shí)際應(yīng)用的需要,某些源地址或目標(biāo)地址可以被定義為屬于某個(gè)域或某些域;相應(yīng)地,網(wǎng)絡(luò)監(jiān)控裝置可以提供一預(yù)定轉(zhuǎn)換函數(shù),其包括源地址和/或目標(biāo)地址與域的對(duì)應(yīng)關(guān)系。利用該預(yù)定轉(zhuǎn)換函數(shù),數(shù)據(jù)包包頭中的源地址可以被轉(zhuǎn)換為對(duì)應(yīng)的源域標(biāo)識(shí)符,而目的地址可以被轉(zhuǎn)換為對(duì)應(yīng)的目的域標(biāo)識(shí)符,以分別指示數(shù)據(jù)包來自或?qū)⒈话l(fā)送給哪些域。再例如,網(wǎng)絡(luò)監(jiān)控裝置還可以根據(jù)兩個(gè)網(wǎng)絡(luò)設(shè)備之間一次會(huì)話的情況,將該會(huì)話相關(guān)的多個(gè)數(shù)據(jù)包的源地址和目的地址定義為一個(gè)地址對(duì),并且進(jìn)一步地區(qū)分這兩個(gè)網(wǎng)絡(luò)設(shè)備的主從關(guān)系。其中,最先發(fā)送數(shù)據(jù)包的網(wǎng)絡(luò)設(shè)備可以被定義為客戶端(其通常啟動(dòng)會(huì)話以請(qǐng)求數(shù)據(jù)),而接收該數(shù)據(jù)包的網(wǎng)絡(luò)設(shè)備可以被定義為服務(wù)器端(其應(yīng)答請(qǐng)求以提供數(shù)據(jù))。因此,最先發(fā)送的數(shù)據(jù)包包頭中的源地址可以被定義為客戶端地址,而目的地址可以被定義為服務(wù)器端地址。相應(yīng)地,網(wǎng)絡(luò)監(jiān)控裝置可以根據(jù)上述定義構(gòu)建轉(zhuǎn)換函數(shù),并且將該次會(huì)話中的每個(gè)數(shù)據(jù)包包頭中的源地址和目的地址轉(zhuǎn)換為客戶端地址和服務(wù)器端地址。同時(shí),網(wǎng)絡(luò)監(jiān)控裝置還可以在轉(zhuǎn)換函數(shù)中設(shè)置數(shù)據(jù)包流向的確定函數(shù),其中數(shù)據(jù)包流向可以是由客戶端至服務(wù)器端(如果數(shù)據(jù)包的源地址與客戶端地址相同,或者數(shù)據(jù)包的目的地址與服務(wù)器端地址相同),或者是由服務(wù)器端至客戶端(如果數(shù)據(jù)包的目的地址與客戶端地址相同,或者數(shù)據(jù)包的源地址與服務(wù)器地址相同)。該數(shù)據(jù)包流向也可以被添加到元數(shù)據(jù)中??梢岳斫?,上述關(guān)于元數(shù)據(jù)所包含的數(shù)據(jù)信息僅為示例,根據(jù)具體應(yīng)用的不同,本領(lǐng)域技術(shù)人員可以對(duì)元數(shù)據(jù)中包含的數(shù)據(jù)信息進(jìn)行各種修改、變換和處理。
[0052]正如前述,元數(shù)據(jù)庫中的元數(shù)據(jù)與對(duì)應(yīng)的流信息相關(guān)聯(lián)。在一些實(shí)施例中,流信息可以包含在對(duì)應(yīng)的元數(shù)據(jù)中。例如,元數(shù)據(jù)與流信息的關(guān)聯(lián)關(guān)系可以通過將源地址-目的地址對(duì)和/或源端口 -目的端口對(duì)加入到對(duì)應(yīng)的元數(shù)據(jù)中來建立。在另一些實(shí)施例中,流信息可以通過流標(biāo)識(shí)符來標(biāo)識(shí),例如建立流信息與流標(biāo)識(shí)符的查找表。相應(yīng)地,元數(shù)據(jù)與流信息的關(guān)聯(lián)關(guān)系可以通過將流標(biāo)識(shí)符加入到對(duì)應(yīng)的元數(shù)據(jù)中來建立,或者通過創(chuàng)建流標(biāo)識(shí)符與元數(shù)據(jù)的查找表來建立。這種處理與將流信息加入到元數(shù)據(jù)中可以實(shí)現(xiàn)相同的效果。可以理解,由于網(wǎng)絡(luò)監(jiān)控裝置不斷地從網(wǎng)絡(luò)上捕獲或接收到新的數(shù)據(jù)包,因而元數(shù)據(jù)庫中包含的元數(shù)據(jù)可能會(huì)不斷增加。
[0053]此外,由于元數(shù)據(jù)庫中包含有大量的元數(shù)據(jù),因此元數(shù)據(jù)庫還可以包含一元數(shù)據(jù)索引。元數(shù)據(jù)索引可以有助于元數(shù)據(jù)的查找或排序,并且可以提高元數(shù)據(jù)查找的效率。
[0054]根據(jù)在步驟S304中獲得的數(shù)據(jù)包的流信息,網(wǎng)絡(luò)監(jiān)控裝置可以檢測(cè)元數(shù)據(jù)庫中是否存在該流信息。在一些實(shí)施例中,網(wǎng)絡(luò)監(jiān)控裝置可以查詢流信息與流標(biāo)識(shí)符的查找表以確定其中是否包含有該流信息。該查找表中具有例如源地址-目的地址對(duì)和/或源端口-目的端口對(duì)與流標(biāo)識(shí)符的對(duì)應(yīng)關(guān)系。如果存在,則網(wǎng)絡(luò)監(jiān)控裝置可以獲得對(duì)應(yīng)的流標(biāo)識(shí)符。如果不存在,網(wǎng)絡(luò)監(jiān)控裝置可以得到一表示無效或不存在的返回值,例如空值(null)。在另一些實(shí)施例中,流信息可以不采用流標(biāo)識(shí)符來標(biāo)識(shí),而僅僅采用源地址-目的地址對(duì)和/或源端口-目的端口對(duì)來表示。網(wǎng)絡(luò)監(jiān)控裝置可以將所有源地址-目的地址對(duì)和/或源端口-目的端口對(duì)存儲(chǔ)為一個(gè)查找表,并且在接收到新的源地址-目的地址對(duì)和/或源端口-目的端口對(duì)后更新該查找表。這樣,網(wǎng)絡(luò)監(jiān)控裝置可以查詢?cè)摬檎冶韥泶_定元數(shù)據(jù)庫中是否存在該流信息。
[0055]接著,在步驟S308中,網(wǎng)絡(luò)監(jiān)控裝置根據(jù)流信息的檢測(cè)結(jié)果,生成與該數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù)。
[0056]具體地,如果檢測(cè)到元數(shù)據(jù)庫中不具有對(duì)應(yīng)于該數(shù)據(jù)包的流信息,這說明元數(shù)據(jù)庫中不包含該流信息關(guān)聯(lián)的元數(shù)據(jù),則網(wǎng)絡(luò)監(jiān)控裝置從該數(shù)據(jù)包中提取與該數(shù)據(jù)包傳輸相關(guān)的數(shù)據(jù)以生成元數(shù)據(jù)。在一個(gè)實(shí)施例中,對(duì)于待提取的數(shù)據(jù)包,網(wǎng)絡(luò)監(jiān)控裝置可以復(fù)制該數(shù)據(jù)包包頭的至少一部分以得到對(duì)應(yīng)于該數(shù)據(jù)包的元數(shù)據(jù),或者可選地,也可以對(duì)該數(shù)據(jù)包包頭的部分或全部數(shù)據(jù)進(jìn)行處理,并將處理后的數(shù)據(jù)作為元數(shù)據(jù)或其一部分。在一些實(shí)施例中,元數(shù)據(jù)可以包括直接從數(shù)據(jù)包本身復(fù)制的數(shù)據(jù),以及由數(shù)據(jù)包數(shù)據(jù)處理得到的數(shù)據(jù)。對(duì)包頭的數(shù)據(jù)進(jìn)行的處理可以是通過例如預(yù)定轉(zhuǎn)換函數(shù)來轉(zhuǎn)換包頭中包含的至少一部分?jǐn)?shù)據(jù)。關(guān)于轉(zhuǎn)換函數(shù),可以參見上文中的說明,在此不再贅述。
[0057]相反,如果檢測(cè)到元數(shù)據(jù)庫中具有對(duì)應(yīng)于被檢測(cè)的數(shù)據(jù)包的流信息,則網(wǎng)絡(luò)監(jiān)控裝置可以從元數(shù)據(jù)庫中復(fù)制與檢測(cè)到的流信息相關(guān)的元數(shù)據(jù)作為該數(shù)據(jù)包的元數(shù)據(jù)。之所以可以采用上述處理方式,是因?yàn)樵趦蓚€(gè)網(wǎng)絡(luò)設(shè)備之間傳輸?shù)亩鄠€(gè)數(shù)據(jù)包主要區(qū)別在于凈載數(shù)據(jù)(也即用戶數(shù)據(jù)),而其包頭中所包含的信息基本相同或僅略有差異。因此,對(duì)于在兩個(gè)網(wǎng)絡(luò)設(shè)備之間傳輸?shù)亩鄠€(gè)數(shù)據(jù)包,基于數(shù)據(jù)包包頭數(shù)據(jù)解析得到的元數(shù)據(jù)通常也相同。進(jìn)一步地,兩個(gè)網(wǎng)絡(luò)設(shè)備又可以通過其間傳輸?shù)臄?shù)據(jù)包的流信息來表征,如果流信息相同,則對(duì)應(yīng)的元數(shù)據(jù)也相同?;诖耍绻獢?shù)據(jù)庫中存在有對(duì)應(yīng)于被檢測(cè)的數(shù)據(jù)包的流信息,這說明元數(shù)據(jù)庫中已包含有該流信息相關(guān)聯(lián)的元數(shù)據(jù),因而可以將該元數(shù)據(jù)作為被檢測(cè)的數(shù)據(jù)包的元數(shù)據(jù)。這樣,網(wǎng)絡(luò)監(jiān)控裝置可以減少解析數(shù)據(jù)包以獲得元數(shù)據(jù)的操作次數(shù),從而大大提高元數(shù)據(jù)生成效率,這種處理方式特別適合應(yīng)用于高速網(wǎng)絡(luò)通信中。
[0058]在一些實(shí)施例中,在針對(duì)每個(gè)接收到的數(shù)據(jù)包生成對(duì)應(yīng)的元數(shù)據(jù)后,網(wǎng)絡(luò)監(jiān)控裝置可以根據(jù)這些數(shù)據(jù)包的元數(shù)據(jù)來生成針對(duì)這些數(shù)據(jù)包的網(wǎng)絡(luò)統(tǒng)計(jì)信息。在一些實(shí)施例中,網(wǎng)絡(luò)統(tǒng)計(jì)信息可以包括源地址和目的地址,源端口和目的端口,源域標(biāo)識(shí)符,目的域標(biāo)識(shí)符,服務(wù)類型標(biāo)識(shí)符,數(shù)據(jù)包流向,協(xié)議標(biāo)識(shí)符,VLAN標(biāo)識(shí)符,數(shù)據(jù)包的計(jì)數(shù),和/或數(shù)據(jù)包的大小。網(wǎng)絡(luò)統(tǒng)計(jì)信息可以基于流信息,也即基于兩個(gè)相互通信的網(wǎng)絡(luò)設(shè)備對(duì)來進(jìn)行統(tǒng)計(jì)。例如,網(wǎng)絡(luò)統(tǒng)計(jì)信息可以包括一對(duì)網(wǎng)絡(luò)設(shè)備之間一次或多次會(huì)話中傳輸?shù)臄?shù)據(jù)包的數(shù)量(即計(jì)數(shù)),或者這些數(shù)據(jù)包所包含的數(shù)據(jù)的大小。這些統(tǒng)計(jì)信息都可以通過設(shè)置預(yù)定統(tǒng)計(jì)函數(shù)或統(tǒng)計(jì)規(guī)則,并且利用這些統(tǒng)計(jì)函數(shù)或規(guī)則對(duì)元數(shù)據(jù)進(jìn)行處理后得到。網(wǎng)絡(luò)統(tǒng)計(jì)信息還可以直接提取元數(shù)據(jù)中的一部分?jǐn)?shù)據(jù),例如協(xié)議標(biāo)識(shí)符、VLAN標(biāo)識(shí)符、服務(wù)類型標(biāo)識(shí)符等。在一些實(shí)施例中,網(wǎng)絡(luò)統(tǒng)計(jì)信息可以緩存在網(wǎng)絡(luò)監(jiān)控裝置中,例如緩存在主存儲(chǔ)器中,并且每隔預(yù)定時(shí)間間隔(例如60秒)將所緩存的信息存儲(chǔ)到網(wǎng)絡(luò)統(tǒng)計(jì)數(shù)據(jù)庫中。
[0059]之后,在步驟S310中,網(wǎng)絡(luò)監(jiān)控裝置將被生成的元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息存儲(chǔ)到元數(shù)據(jù)庫中。這樣,每個(gè)接收到的數(shù)據(jù)包均可以被分配一個(gè)對(duì)應(yīng)的元數(shù)據(jù)。
[0060]在一些實(shí)施例中,如果在步驟S308中檢測(cè)到元數(shù)據(jù)庫中不具有一個(gè)數(shù)據(jù)包的流信息,則需要生成該數(shù)據(jù)包的元數(shù)據(jù),并將被生成的該數(shù)據(jù)包的元數(shù)據(jù)與其流信息相互關(guān)聯(lián),例如生成或分配一個(gè)新流標(biāo)識(shí)符以表示該新的流信息,并且在生成的元數(shù)據(jù)中添加該新流標(biāo)識(shí)符以關(guān)聯(lián)新流信息和新元數(shù)據(jù)。進(jìn)一步地,新生成的元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息可以被存儲(chǔ)在元數(shù)據(jù)庫中。此外,如果在步驟S308中檢測(cè)到元數(shù)據(jù)庫中已具有一個(gè)數(shù)據(jù)包的流信息,并且通過例如復(fù)制該已有流信息對(duì)應(yīng)的元數(shù)據(jù)的操作來生成新的元數(shù)據(jù),則該新的元數(shù)據(jù)所關(guān)聯(lián)的流信息也是確定的,網(wǎng)絡(luò)監(jiān)控裝置可以將該元數(shù)據(jù)以及與其相關(guān)聯(lián)的流信息存儲(chǔ)到元數(shù)據(jù)庫中。
[0061]網(wǎng)絡(luò)監(jiān)控裝置已經(jīng)通過上述步驟得到了其所接收的數(shù)據(jù)包對(duì)應(yīng)的元數(shù)據(jù),而對(duì)于這些被接收的數(shù)據(jù)包本身,網(wǎng)絡(luò)監(jiān)控裝置可以根據(jù)具體應(yīng)用需求的不同來選擇如何處理。在一些實(shí)施例中,網(wǎng)絡(luò)監(jiān)控裝置可能僅需要存儲(chǔ)元數(shù)據(jù),以便后續(xù)基于所存儲(chǔ)的元數(shù)據(jù)來分析或回溯網(wǎng)絡(luò)中的數(shù)據(jù)包傳輸情況。在另一些實(shí)施例中,網(wǎng)絡(luò)監(jiān)控裝置還可以同時(shí)存儲(chǔ)其在步驟S302中接收到的數(shù)據(jù)包,并且將所接收到的數(shù)據(jù)包存儲(chǔ)在數(shù)據(jù)包庫中。該數(shù)據(jù)包庫中的每個(gè)數(shù)據(jù)包可以被分配一個(gè)對(duì)應(yīng)的元數(shù)據(jù)庫中的元數(shù)據(jù),以描述其傳輸情況。例如,元數(shù)據(jù)庫可以包括元數(shù)據(jù)索引來索引元數(shù)據(jù);而數(shù)據(jù)包庫可以包括數(shù)據(jù)包索引來索引數(shù)據(jù)包。其中數(shù)據(jù)包索引與元數(shù)據(jù)索引可以相互對(duì)應(yīng)。例如,數(shù)據(jù)包索引以數(shù)據(jù)包接收的時(shí)序來對(duì)數(shù)據(jù)包進(jìn)行排序,每個(gè)數(shù)據(jù)包被分配了唯一對(duì)應(yīng)的數(shù)據(jù)包序號(hào)。相應(yīng)地,元數(shù)據(jù)索引可以按照其對(duì)應(yīng)的數(shù)據(jù)包的序號(hào)來進(jìn)行排序。這樣,當(dāng)網(wǎng)絡(luò)監(jiān)控裝置分析元數(shù)據(jù)后發(fā)現(xiàn)仍缺少某些信息(例如缺少凈載數(shù)據(jù)時(shí)),網(wǎng)絡(luò)監(jiān)控裝置還可以根據(jù)元數(shù)據(jù)來找到其對(duì)應(yīng)的數(shù)據(jù)包,并且進(jìn)一步地對(duì)該數(shù)據(jù)包進(jìn)行分析處理。
[0062]可以理解,在高速通信網(wǎng)絡(luò)中,網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)包數(shù)量很多,因而網(wǎng)絡(luò)監(jiān)控裝置需要具有足夠的存儲(chǔ)速度和存儲(chǔ)能力,以存儲(chǔ)大量的數(shù)據(jù)包和元數(shù)據(jù)。在一些情況下,特別是網(wǎng)絡(luò)傳輸速率過高時(shí),有可能出現(xiàn)網(wǎng)絡(luò)監(jiān)控裝置難以及時(shí)將所接收的數(shù)據(jù)包以及被生成的元數(shù)據(jù)存儲(chǔ)到其內(nèi)部的大容量存儲(chǔ)介質(zhì)(例如硬盤或快閃存儲(chǔ)器)中的情況。為了避免或者減少這種情況的發(fā)生,在一些實(shí)施例中,網(wǎng)絡(luò)監(jiān)控裝置可以設(shè)置緩沖存儲(chǔ)器,在步驟S308中生成的元數(shù)據(jù)、以及來自網(wǎng)絡(luò)的其他數(shù)據(jù)包的被生成的元數(shù)據(jù)可以首先被緩存到緩沖存儲(chǔ)器中,并且在滿足預(yù)定條件后將這些所緩存的元數(shù)據(jù)轉(zhuǎn)移到元數(shù)據(jù)庫的大容量存儲(chǔ)介質(zhì)中。換言之,這些數(shù)據(jù)包的元數(shù)據(jù)以及相關(guān)聯(lián)的流信息被逐批地轉(zhuǎn)移到元數(shù)據(jù)庫中。例如,在緩沖存儲(chǔ)器每次存滿之后,或者在間隔預(yù)定時(shí)間之后,將元數(shù)據(jù)轉(zhuǎn)移到元數(shù)據(jù)庫中。在一些實(shí)施例中,可以將被緩存的元數(shù)據(jù)和流信息從緩沖存儲(chǔ)器中異步地轉(zhuǎn)移到元數(shù)據(jù)庫中,即元數(shù)據(jù)庫中的存儲(chǔ)器采用了異步輸入輸出方式來存儲(chǔ)數(shù)據(jù)。具體地,當(dāng)網(wǎng)絡(luò)監(jiān)控裝置指示某一批被緩存的元數(shù)據(jù)向存儲(chǔ)器轉(zhuǎn)移后,其不等待存儲(chǔ)器返回該批元數(shù)據(jù)是否存儲(chǔ)完成的響應(yīng),就繼續(xù)將下一批被緩存的元數(shù)據(jù)向存儲(chǔ)器轉(zhuǎn)移。網(wǎng)絡(luò)監(jiān)控裝置可以安排特定的線程來處理該元數(shù)據(jù)的轉(zhuǎn)移和存儲(chǔ),而安排另一個(gè)或一些線程來檢測(cè)被轉(zhuǎn)移的元數(shù)據(jù)是否存儲(chǔ)成功。對(duì)于采用硬盤存儲(chǔ)器的元數(shù)據(jù)庫,上述異步存儲(chǔ)的操作可以使磁頭能夠連續(xù)地向硬盤的相同區(qū)域或相鄰區(qū)域?qū)懭霐?shù)據(jù),從而避免頻繁尋址影響數(shù)據(jù)寫入速度。
[0063]正如之前所說明的,每個(gè)IP數(shù)據(jù)包的最大長(zhǎng)度為64k字節(jié)。對(duì)于兩個(gè)網(wǎng)絡(luò)設(shè)備之間的大數(shù)據(jù)量傳輸,網(wǎng)絡(luò)監(jiān)控裝置往往能夠監(jiān)測(cè)到數(shù)百、數(shù)千或者更多數(shù)量的數(shù)據(jù)包,并且這些數(shù)據(jù)包具有相同的流信息。為了提高數(shù)據(jù)包的處理效率,在一些實(shí)施例中,多個(gè)數(shù)據(jù)包被打包成一組數(shù)據(jù)包,例如64個(gè)、128個(gè)、256個(gè)或者更多個(gè)數(shù)據(jù)包被打包成一組數(shù)據(jù)包。這一組數(shù)據(jù)包可以被一起傳輸,并被網(wǎng)絡(luò)監(jiān)控裝置接收并進(jìn)行處理。其中,每組數(shù)據(jù)包可以包括一個(gè)數(shù)據(jù)塊頭,以用于在其中添加有關(guān)于該組數(shù)據(jù)包及其傳輸?shù)男畔?。相?yīng)地,多個(gè)對(duì)應(yīng)的元數(shù)據(jù)也可以被打包成一組元數(shù)據(jù),并且提供一元數(shù)據(jù)塊頭。在一些實(shí)施例中,數(shù)據(jù)塊頭中可以添加一個(gè)塊標(biāo)記,其用于表示該組數(shù)據(jù)包中的每個(gè)數(shù)據(jù)包均被分配了對(duì)應(yīng)的元數(shù)據(jù)。塊標(biāo)記的使用有助于數(shù)據(jù)包和元數(shù)據(jù)的后續(xù)處理。例如,當(dāng)網(wǎng)絡(luò)監(jiān)控裝置對(duì)其所接收并存儲(chǔ)的數(shù)據(jù)包進(jìn)行后續(xù)處理時(shí),網(wǎng)絡(luò)監(jiān)控裝置可以檢測(cè)每組數(shù)據(jù)包中數(shù)據(jù)塊頭中是否具有塊標(biāo)記:如果具有指示該組數(shù)據(jù)包中的每個(gè)數(shù)據(jù)包均被分配了元數(shù)據(jù)的塊標(biāo)記,則網(wǎng)絡(luò)監(jiān)控裝置可以選擇對(duì)該組數(shù)據(jù)包對(duì)應(yīng)的元數(shù)據(jù)組來進(jìn)行處理,例如對(duì)元數(shù)據(jù)進(jìn)行數(shù)據(jù)分析和過濾;相反,如果數(shù)據(jù)塊頭中沒有指示該組數(shù)據(jù)包被分配了元數(shù)據(jù)的塊標(biāo)記,則網(wǎng)絡(luò)監(jiān)控裝置可以選擇仍對(duì)該組數(shù)據(jù)包進(jìn)行處理,例如對(duì)數(shù)據(jù)包進(jìn)行數(shù)據(jù)分析和過濾。
[0064]可以看出,本申請(qǐng)的網(wǎng)絡(luò)監(jiān)控方法通過元數(shù)據(jù)來描述數(shù)據(jù)包的傳輸,而該元數(shù)據(jù)的大小通常遠(yuǎn)小于數(shù)據(jù)包的大小。在需要對(duì)數(shù)據(jù)包進(jìn)行監(jiān)控時(shí),例如對(duì)數(shù)據(jù)包的傳輸狀態(tài)等信息進(jìn)行統(tǒng)計(jì)、或者依據(jù)特定算法對(duì)數(shù)據(jù)包進(jìn)行過濾時(shí),網(wǎng)絡(luò)監(jiān)控裝置通??梢灾粚?duì)元數(shù)據(jù)進(jìn)行處理,而不需要或者較少需要直接對(duì)數(shù)據(jù)包進(jìn)行處理。這種數(shù)據(jù)分析處理方式極大地簡(jiǎn)化了網(wǎng)絡(luò)數(shù)據(jù)包的分析處理難度,從而提高了網(wǎng)絡(luò)監(jiān)控的效率和可靠性。這使得該網(wǎng)絡(luò)監(jiān)控方法特別適合應(yīng)用于高速通信網(wǎng)絡(luò)。
[0065]對(duì)于通過上述網(wǎng)絡(luò)監(jiān)控方法獲得的數(shù)據(jù)包及元數(shù)據(jù),本申請(qǐng)還提供了一種對(duì)其進(jìn)行過濾的方法。在過濾后,符合過濾條件和要求的數(shù)據(jù)包和/或元數(shù)據(jù)可以被恢復(fù),并且可以被匯編或整理成數(shù)據(jù)文件,以供后續(xù)使用。
[0066]圖4示出了根據(jù)本申請(qǐng)一個(gè)實(shí)施例的用于過濾網(wǎng)絡(luò)上傳輸?shù)闹辽僖唤M數(shù)據(jù)包的方法400。該方法400可以通過例如圖2所示的網(wǎng)絡(luò)監(jiān)控裝置執(zhí)行,或者通過類似的數(shù)據(jù)處理裝置執(zhí)行。
[0067]如圖4所示,在步驟S402中,提供元數(shù)據(jù)過濾器和數(shù)據(jù)包過濾器,其中該數(shù)據(jù)包過濾器關(guān)聯(lián)于元數(shù)據(jù)過濾器。
[0068]具體地,待過濾的數(shù)據(jù)是數(shù)據(jù)包,其通常被網(wǎng)絡(luò)監(jiān)控裝置接收并且存儲(chǔ)在數(shù)據(jù)包庫中。這些數(shù)據(jù)包中的部分或全部被分配有對(duì)應(yīng)的元數(shù)據(jù),元數(shù)據(jù)被存儲(chǔ)在元數(shù)據(jù)庫中。在一些實(shí)施例中,數(shù)據(jù)包可以按組地存儲(chǔ)在數(shù)據(jù)包庫中,每組數(shù)據(jù)包可以包括一數(shù)據(jù)塊頭;類似地,元數(shù)據(jù)可以按組地存儲(chǔ)在元數(shù)據(jù)庫中,每組元數(shù)據(jù)可以包括一元數(shù)據(jù)塊頭。
[0069]對(duì)于每組數(shù)據(jù)包,其可以包括一塊標(biāo)記,該塊標(biāo)記用于指示該組數(shù)據(jù)包被分配了與其中每個(gè)數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù)。換言之,如果一組數(shù)據(jù)包中的任意一個(gè)或多個(gè)數(shù)據(jù)包不具有對(duì)應(yīng)的元數(shù)據(jù),則該組數(shù)據(jù)包可以不具有塊標(biāo)記,或者塊標(biāo)記被設(shè)置為指示缺少對(duì)應(yīng)的元數(shù)據(jù)。在一些實(shí)施例中,塊標(biāo)記可以被添加在數(shù)據(jù)塊頭中。在另一些實(shí)施例中,塊標(biāo)記還可以被添加在數(shù)據(jù)包塊的塊索引中。
[0070]元數(shù)據(jù)過濾器通常包含有一些預(yù)設(shè)的過濾條件,這些過濾條件與元數(shù)據(jù)中所包含的數(shù)據(jù)相對(duì)應(yīng)。例如,元數(shù)據(jù)可以包含例如應(yīng)用程序標(biāo)識(shí)符,其指示該元數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)包適于應(yīng)用的應(yīng)用程序。不同的應(yīng)用程序標(biāo)識(shí)符可以被分配了不同的值。應(yīng)用程序標(biāo)識(shí)符可以參見圖3所示的網(wǎng)絡(luò)監(jiān)控方法中的相關(guān)描述。相應(yīng)地,元數(shù)據(jù)過濾器可以包括應(yīng)用程序標(biāo)識(shí)符的一個(gè)或多個(gè)具體值,當(dāng)元數(shù)據(jù)的應(yīng)用程序標(biāo)識(shí)符的值與元數(shù)據(jù)過濾器中的值相同時(shí),可以認(rèn)為該元數(shù)據(jù)符合過濾條件;而當(dāng)元數(shù)據(jù)的應(yīng)用程序標(biāo)識(shí)符的值與元數(shù)據(jù)過濾器中的值不同時(shí),可以認(rèn)為該元數(shù)據(jù)不符合過濾條件。在一些實(shí)施例中,符合過濾條件的元數(shù)據(jù)可以被保留,而不符合過濾條件的元數(shù)據(jù)可以被丟棄?;蛘呦喾吹?,丟棄符合過濾條件的元數(shù)據(jù)。
[0071 ] 在一些實(shí)施例中,數(shù)據(jù)包過濾器與元數(shù)據(jù)過濾器相關(guān)聯(lián)是指數(shù)據(jù)包過濾器具有至少一個(gè)預(yù)定過濾條件,其與元數(shù)據(jù)過濾器中的一過濾條件對(duì)應(yīng)并且可以相互轉(zhuǎn)換。例如,數(shù)據(jù)包可能并不具有元數(shù)據(jù)的應(yīng)用程序標(biāo)識(shí)符,而僅具有源端口或目的端口的端口號(hào),但是這些端口號(hào)中的至少一個(gè)通常與應(yīng)用程序是一一對(duì)應(yīng)的。因此,數(shù)據(jù)包過濾器可以與包含端口號(hào)相關(guān)的過濾條件,其與元數(shù)據(jù)過濾器中應(yīng)用程序標(biāo)識(shí)符的值相對(duì)應(yīng)。例如,元數(shù)據(jù)過濾器的過濾條件可以限定為元數(shù)據(jù)的應(yīng)用程序標(biāo)識(shí)符需要對(duì)應(yīng)為DNS的標(biāo)識(shí)符。相應(yīng)地,數(shù)據(jù)包過濾器中包含的過濾條件可以限定為目標(biāo)端口或源端口的端口號(hào)為53。由于在采用TCP/IP協(xié)議的網(wǎng)絡(luò)系統(tǒng)中,端口號(hào)53被分配給網(wǎng)絡(luò)系統(tǒng)(DNS)以進(jìn)行域名解析,因此數(shù)據(jù)包過濾器與元數(shù)據(jù)過濾器的這兩個(gè)過濾條件是相同,從而使得兩個(gè)過濾器進(jìn)行實(shí)質(zhì)上相同的數(shù)據(jù)過濾操作。在實(shí)際應(yīng)用中,可以通過元數(shù)據(jù)和數(shù)據(jù)包中數(shù)據(jù)的對(duì)應(yīng)關(guān)系來構(gòu)建數(shù)據(jù)包過濾器和元數(shù)據(jù)過濾器。
[0072]接著,在步驟S404中,針對(duì)待過濾的每組數(shù)據(jù)包,檢測(cè)其是否具有塊標(biāo)記。
[0073]正如前述,塊標(biāo)記可以被添加在數(shù)據(jù)塊頭中,或者被添加在數(shù)據(jù)包塊的索引中。因此,對(duì)于每組數(shù)據(jù)包,可以在其數(shù)據(jù)塊頭和/或數(shù)據(jù)包塊的索引中查找、檢測(cè)塊標(biāo)記。
[0074]之后,在步驟S406中,根據(jù)塊標(biāo)記的檢測(cè)結(jié)果使用元數(shù)據(jù)過濾器或數(shù)據(jù)包過濾器來過濾數(shù)據(jù)包。
[0075]具體地,如果檢測(cè)到一組數(shù)據(jù)包被分配了一組元數(shù)據(jù),則使用元數(shù)據(jù)過濾器來過濾該組數(shù)據(jù)包,具體地,過濾該組數(shù)據(jù)包對(duì)應(yīng)的元數(shù)據(jù);而如果檢測(cè)到一組數(shù)據(jù)包未被分配一組元數(shù)據(jù),則使用數(shù)據(jù)包過濾器來過濾該組數(shù)據(jù)包。
[0076]在一些實(shí)施例中,在步驟S406之后,還可以獲取被過濾的數(shù)據(jù)包,以生成包含這些被過濾的數(shù)據(jù)包的數(shù)據(jù)文件。例如,對(duì)于使用數(shù)據(jù)包過濾器過濾的數(shù)據(jù)包,可以在過濾的同時(shí)直接將其轉(zhuǎn)移到預(yù)定存儲(chǔ)位置,或者緩存起來;而對(duì)于使用元數(shù)據(jù)過濾的數(shù)據(jù)包,可以在過濾得到的元數(shù)據(jù)的基礎(chǔ)上,進(jìn)一步地到數(shù)據(jù)包庫中讀取獲得對(duì)應(yīng)的數(shù)據(jù)包,并且之后將這些數(shù)據(jù)包轉(zhuǎn)移到預(yù)定存儲(chǔ)位置,或者緩存起來。這樣處理后,即可得到符合元數(shù)據(jù)過濾器過濾條件或數(shù)據(jù)包過濾器過濾條件的數(shù)據(jù)包。這些數(shù)據(jù)包可以被匯編或整理成數(shù)據(jù)文件,以供后續(xù)使用。
[0077]在一些實(shí)施例中,接收自網(wǎng)絡(luò)的數(shù)據(jù)包也可以逐個(gè)地進(jìn)行過濾。相應(yīng)地,針對(duì)待過濾的每個(gè)數(shù)據(jù)包,檢測(cè)其是否具有對(duì)應(yīng)的元數(shù)據(jù)。接著,根據(jù)元數(shù)據(jù)的檢測(cè)結(jié)果使用元數(shù)據(jù)過濾器或數(shù)據(jù)包過濾器來過濾所接收的數(shù)據(jù)包。在一些實(shí)施例中,可以先過濾元數(shù)據(jù)庫中包含的元數(shù)據(jù),并且之后過濾數(shù)據(jù)包庫中包含的不具有對(duì)應(yīng)元數(shù)據(jù)的數(shù)據(jù)包。
[0078]圖5示出了根據(jù)本申請(qǐng)一個(gè)實(shí)施例的網(wǎng)絡(luò)監(jiān)控裝置500的示意圖。
[0079]如圖5所示,該網(wǎng)絡(luò)監(jiān)控裝置500包括:
[0080]接收裝置501,用于接收網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)包,其中所述數(shù)據(jù)包具有指示所述數(shù)據(jù)包傳輸?shù)木W(wǎng)絡(luò)流的流信息;
[0081]流信息獲取裝置503,用于獲取所述數(shù)據(jù)包的流信息;
[0082]檢測(cè)裝置505,用于檢測(cè)元數(shù)據(jù)庫中是否存在對(duì)應(yīng)于所述數(shù)據(jù)包的流信息,其中所述元數(shù)據(jù)庫用于存儲(chǔ)元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息;
[0083]元數(shù)據(jù)生成裝置507,用于根據(jù)所述流信息的檢測(cè)結(jié)果,生成與該數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù),并將其與對(duì)應(yīng)的流信息相關(guān)聯(lián);以及
[0084]存儲(chǔ)裝置509,用于將被生成的元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息存儲(chǔ)到元數(shù)據(jù)庫中。
[0085]圖6示出了根據(jù)本申請(qǐng)一個(gè)實(shí)施例的用于過濾網(wǎng)絡(luò)上傳輸?shù)闹辽僖唤M數(shù)據(jù)包的裝置600的示意圖。
[0086]如圖6所示,該裝置600包括:
[0087]元數(shù)據(jù)過濾器601;
[0088]數(shù)據(jù)包過濾器603,其中所述數(shù)據(jù)包過濾器603關(guān)聯(lián)于所述元數(shù)據(jù)過濾器601 ;
[0089]標(biāo)記檢測(cè)裝置605,用于針對(duì)所述至少一組數(shù)據(jù)包中的每組數(shù)據(jù)包,檢測(cè)其是否具有塊標(biāo)記,其中所述塊標(biāo)記指示所述該組數(shù)據(jù)包被分配了與其中的每個(gè)數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù);以及
[0090]過濾器選擇裝置607,用于根據(jù)所述塊標(biāo)記的檢測(cè)結(jié)果使用所述元數(shù)據(jù)過濾器601或所述數(shù)據(jù)包過濾器603來過濾所述至少一組數(shù)據(jù)包。
[0091]在本申請(qǐng)的一些實(shí)施例中,圖5所示的裝置500以及圖6所示的裝置600可以通過一個(gè)或多個(gè)應(yīng)用專用集成電路(ASIC)、數(shù)字信號(hào)處理器(DSP)、數(shù)字信號(hào)處理設(shè)備(DSPD)、可編程邏輯器件(PLD)、現(xiàn)場(chǎng)可編程門陣列(FPGA)、控制器、微控制器、微處理器或其他電子元件來實(shí)現(xiàn),并且可以用于執(zhí)行圖3所示的方法300或圖4所示的方法400。
[0092]在一些實(shí)施例中,本申請(qǐng)還提供了一種包括指令的非易失性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),例如包括指令的存儲(chǔ)器,上述指令可由例如圖2所示的網(wǎng)絡(luò)監(jiān)控裝置16的處理器23執(zhí)行以實(shí)現(xiàn)圖3所示的方法300或圖4所示的方法400。例如,非易失性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是R0M、隨機(jī)存取存儲(chǔ)器(RAM)、CD-ROM、磁帶、閃存、硬盤、軟盤和光數(shù)據(jù)存儲(chǔ)設(shè)備等。
[0093]應(yīng)當(dāng)注意,盡管在上文詳細(xì)描述中提及了本申請(qǐng)實(shí)施例的網(wǎng)絡(luò)監(jiān)控裝置的若干模塊或子模塊,但是這種劃分僅僅是示例性的而非強(qiáng)制性的。實(shí)際上,根據(jù)本申請(qǐng)的實(shí)施例,上文描述的兩個(gè)或更多模塊的特征和功能可以在一個(gè)模塊中具體化。反之,上文描述的一個(gè)模塊的特征和功能可以進(jìn)一步劃分為由多個(gè)模塊來具體化。
[0094]此外,盡管在附圖中以特定順序描述了本申請(qǐng)方法的操作,但是,這并非要求或者暗示必須按照該特定順序來執(zhí)行這些操作,或是必須執(zhí)行全部所示的操作才能實(shí)現(xiàn)期望的結(jié)果。相反,流程圖中描繪的步驟可以改變執(zhí)行順序。附加地或備選地,可以省略某些步驟,將多個(gè)步驟合并為一個(gè)步驟執(zhí)行,和/或?qū)⒁粋€(gè)步驟分解為多個(gè)步驟執(zhí)行。
[0095]本技術(shù)領(lǐng)域的普通技術(shù)人員可以通過研究說明書、公開的內(nèi)容及附圖和所附的權(quán)利要求書,理解和實(shí)施對(duì)披露的實(shí)施方式的其他改變。在權(quán)利要求中,措詞“包括”不排除其他的元素和步驟,并且措辭“一”、“一個(gè)”不排除復(fù)數(shù)。在發(fā)明的實(shí)際應(yīng)用中,一個(gè)零件可以執(zhí)行權(quán)利要求中所引用的多個(gè)技術(shù)特征的功能。權(quán)利要求中的任何附圖標(biāo)記不應(yīng)理解為對(duì)范圍的限制。
【主權(quán)項(xiàng)】
1.一種網(wǎng)絡(luò)監(jiān)控方法,其特征在于,包括: 接收網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)包,其中所述數(shù)據(jù)包具有指示所述數(shù)據(jù)包傳輸?shù)木W(wǎng)絡(luò)流的流信息; 獲取所述數(shù)據(jù)包的流信息; 檢測(cè)元數(shù)據(jù)庫中是否存在對(duì)應(yīng)于所述數(shù)據(jù)包的流信息,其中所述元數(shù)據(jù)庫用于存儲(chǔ)元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息; 根據(jù)所述流信息的檢測(cè)結(jié)果,生成與所述數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù),并將其與對(duì)應(yīng)的流信息相關(guān)聯(lián);以及 將被生成的元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息存儲(chǔ)到所述元數(shù)據(jù)庫中。2.根據(jù)權(quán)利要求1所述的網(wǎng)絡(luò)監(jiān)控方法,其特征在于,所述根據(jù)所述流信息的檢測(cè)結(jié)果,生成與所述數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù)的步驟包括: 如果檢測(cè)到元數(shù)據(jù)庫中不具有對(duì)應(yīng)于所述數(shù)據(jù)包的流信息,則從所述數(shù)據(jù)包中提取與其傳輸相關(guān)的數(shù)據(jù)以生成所述元數(shù)據(jù);以及 如果檢測(cè)到元數(shù)據(jù)庫中具有對(duì)應(yīng)于所述數(shù)據(jù)包的流信息,則從所述元數(shù)據(jù)庫中復(fù)制與所述流信息相關(guān)聯(lián)的元數(shù)據(jù)作為所述數(shù)據(jù)包的元數(shù)據(jù)。3.根據(jù)權(quán)利要求2所述的網(wǎng)絡(luò)監(jiān)控方法,其特征在于,從所述數(shù)據(jù)包中提取與其傳輸相關(guān)的數(shù)據(jù)以生成所述元數(shù)據(jù)的步驟包括: 復(fù)制和/或處理所述數(shù)據(jù)包包頭的至少一部分以得到所述數(shù)據(jù)包的元數(shù)據(jù)。4.根據(jù)權(quán)利要求3所述的網(wǎng)絡(luò)監(jiān)控方法,其特征在于,所述處理所述數(shù)據(jù)包包頭的至少一部分包括利用一個(gè)或多個(gè)預(yù)定轉(zhuǎn)換函數(shù)來轉(zhuǎn)換所述數(shù)據(jù)包包頭中包含的至少一部分?jǐn)?shù)據(jù)。5.根據(jù)權(quán)利要求1所述的網(wǎng)絡(luò)監(jiān)控方法,其特征在于,將所述元數(shù)據(jù)與對(duì)應(yīng)的流信息相關(guān)聯(lián)包括:將所述流信息包含在生成的元數(shù)據(jù)中。6.根據(jù)權(quán)利要求1所述的網(wǎng)絡(luò)監(jiān)控方法,其特征在于,所述被接收的數(shù)據(jù)包是網(wǎng)絡(luò)上傳輸?shù)亩鄠€(gè)數(shù)據(jù)包中的一個(gè),所述網(wǎng)絡(luò)監(jiān)控方法包括: 接收所述多個(gè)數(shù)據(jù)包,并根據(jù)對(duì)應(yīng)于所述多個(gè)數(shù)據(jù)包的元數(shù)據(jù),生成針對(duì)所述多個(gè)數(shù)據(jù)包的網(wǎng)絡(luò)統(tǒng)計(jì)信息。7.根據(jù)權(quán)利要求6所述的網(wǎng)絡(luò)監(jiān)控方法,其特征在于,所述網(wǎng)絡(luò)統(tǒng)計(jì)信息包括源地址和目的地址,源端口和目的端口,源域標(biāo)識(shí)符,目的域標(biāo)識(shí)符,服務(wù)類型標(biāo)識(shí)符,數(shù)據(jù)包流向,協(xié)議標(biāo)識(shí)符,VLAN標(biāo)識(shí)符,數(shù)據(jù)包的計(jì)數(shù),和/或數(shù)據(jù)包的大小。8.根據(jù)權(quán)利要求1所述的網(wǎng)絡(luò)監(jiān)控方法,其特征在于,所述網(wǎng)絡(luò)監(jiān)控方法還包括: 將所述數(shù)據(jù)包存儲(chǔ)在數(shù)據(jù)包庫中,其中所述數(shù)據(jù)包被分配了對(duì)應(yīng)的所述元數(shù)據(jù)庫中的元數(shù)據(jù)。9.根據(jù)權(quán)利要求1所述的網(wǎng)絡(luò)監(jiān)控方法,其特征在于,所述將被生成的元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息存儲(chǔ)到所述元數(shù)據(jù)庫中的步驟包括: 將所述數(shù)據(jù)包的被生成的元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息緩存到緩沖存儲(chǔ)器中; 將被緩存的所述數(shù)據(jù)包的元數(shù)據(jù)和相關(guān)聯(lián)的流信息、以及被緩存的其他數(shù)據(jù)包的元數(shù)據(jù)和相關(guān)聯(lián)的流信息從所述緩沖存儲(chǔ)器異步地轉(zhuǎn)移到所述元數(shù)據(jù)庫中。10.根據(jù)權(quán)利要求1所述的網(wǎng)絡(luò)監(jiān)控方法,其特征在于,所述被接收的數(shù)據(jù)包是網(wǎng)絡(luò)上傳輸?shù)囊唤M數(shù)據(jù)包中的一個(gè),所述網(wǎng)絡(luò)監(jiān)控方法包括: 接收該組數(shù)據(jù)包;以及 如果該組數(shù)據(jù)包中的每個(gè)數(shù)據(jù)包均被分配了對(duì)應(yīng)的所述元數(shù)據(jù)庫中的元數(shù)據(jù),則對(duì)該組數(shù)據(jù)包添加指示每個(gè)數(shù)據(jù)包被分配了對(duì)應(yīng)元數(shù)據(jù)的塊標(biāo)記。11.根據(jù)權(quán)利要求10所述的網(wǎng)絡(luò)監(jiān)控方法,其特征在于,所述網(wǎng)絡(luò)監(jiān)控方法還包括: 使用元數(shù)據(jù)過濾器來過濾具有所述塊標(biāo)記的該組數(shù)據(jù)包。12.根據(jù)權(quán)利要求1所述的網(wǎng)絡(luò)監(jiān)控方法,其特征在于,所述元數(shù)據(jù)包括一對(duì)源地址及目的地址、一對(duì)源端口和目的端口、源端子網(wǎng)絡(luò)標(biāo)識(shí)符、目的端子網(wǎng)絡(luò)標(biāo)識(shí)符、數(shù)據(jù)包流向、服務(wù)類型標(biāo)識(shí)符、協(xié)議標(biāo)識(shí)符、應(yīng)用標(biāo)識(shí)符和/或VLAN標(biāo)識(shí)符。13.根據(jù)權(quán)利要求1所述的網(wǎng)絡(luò)監(jiān)控方法,其特征在于,所述流信息包括一對(duì)源地址及目的地址。14.根據(jù)權(quán)利要求13所述的網(wǎng)絡(luò)監(jiān)控方法,其特征在于,所述流信息還包括一對(duì)源端口和目的端口。15.一種用于過濾網(wǎng)絡(luò)上傳輸?shù)闹辽僖唤M數(shù)據(jù)包的方法,其特征在于,所述方法包括: 提供元數(shù)據(jù)過濾器和數(shù)據(jù)包過濾器,其中所述數(shù)據(jù)包過濾器關(guān)聯(lián)于所述元數(shù)據(jù)過濾器; 針對(duì)所述至少一組數(shù)據(jù)包中的每組數(shù)據(jù)包,檢測(cè)其是否具有塊標(biāo)記,其中所述塊標(biāo)記指示所述該組數(shù)據(jù)包被分配了與其中的每個(gè)數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù);以及 根據(jù)所述塊標(biāo)記的檢測(cè)結(jié)果使用所述元數(shù)據(jù)過濾器或所述數(shù)據(jù)包過濾器來過濾所述至少一組數(shù)據(jù)包。16.根據(jù)權(quán)利要求15所述的方法,其特征在于,所述根據(jù)所述塊標(biāo)記的檢測(cè)結(jié)果使用所述元數(shù)據(jù)過濾器或所述數(shù)據(jù)包過濾器來過濾所述至少一組數(shù)據(jù)包的步驟包括: 如果檢測(cè)到所述至少一組數(shù)據(jù)包中的一組數(shù)據(jù)包被分配了一組元數(shù)據(jù),則使用所述元數(shù)據(jù)過濾器來過濾該組數(shù)據(jù)包;以及 如果檢測(cè)到所述至少一組數(shù)據(jù)包中的一組數(shù)據(jù)包未被分配一組元數(shù)據(jù),則使用所述數(shù)據(jù)包過濾器來過濾該組數(shù)據(jù)包。17.根據(jù)權(quán)利要求15所述的方法,其特征在于,所述至少一組數(shù)據(jù)包中的每組數(shù)據(jù)包具有數(shù)據(jù)塊頭,并且所述塊標(biāo)記被添加在所述數(shù)據(jù)塊頭中。18.根據(jù)權(quán)利要求17所述的方法,其特征在于,所述至少一組數(shù)據(jù)包是由數(shù)據(jù)包組索引來索引的,并且所述塊標(biāo)記還被添加在所述數(shù)據(jù)包塊索引中。19.根據(jù)權(quán)利要求15所述的方法,其特征在于,所述方法還包括: 從所述至少一組數(shù)據(jù)包中獲取被過濾的數(shù)據(jù)包。20.根據(jù)權(quán)利要求15所述的方法,其特征在于,所述數(shù)據(jù)包過濾器具有至少一個(gè)預(yù)定過濾條件,其與所述元數(shù)據(jù)過濾器中的至少一個(gè)過濾條件對(duì)應(yīng)并可相互轉(zhuǎn)換。21.根據(jù)權(quán)利要求15所述的方法,其特征在于,所述元數(shù)據(jù)包括一對(duì)源地址及目的地址、一對(duì)源端口和目的端口、源端子網(wǎng)絡(luò)標(biāo)識(shí)符、目的端子網(wǎng)絡(luò)標(biāo)識(shí)符、數(shù)據(jù)包流向、服務(wù)類型標(biāo)識(shí)符、協(xié)議標(biāo)識(shí)符、應(yīng)用標(biāo)識(shí)符和/或VLAN標(biāo)識(shí)符。22.一種用于過濾網(wǎng)絡(luò)上傳輸?shù)闹辽僖粋€(gè)數(shù)據(jù)包的方法,其特征在于,所述方法包括: 提供元數(shù)據(jù)過濾器和數(shù)據(jù)包過濾器,其中所述數(shù)據(jù)包過濾器關(guān)聯(lián)于所述元數(shù)據(jù)過濾器; 針對(duì)所述至少一個(gè)數(shù)據(jù)包中的每個(gè)數(shù)據(jù)包,檢測(cè)其是否具有對(duì)應(yīng)的元數(shù)據(jù);以及 根據(jù)所述元數(shù)據(jù)的檢測(cè)結(jié)果使用所述元數(shù)據(jù)過濾器或所述數(shù)據(jù)包過濾器來過濾所述至少一個(gè)數(shù)據(jù)包。23.一種網(wǎng)絡(luò)監(jiān)控裝置,其特征在于,包括: 接收裝置,用于接收網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)包,其中所述數(shù)據(jù)包具有指示所述數(shù)據(jù)包傳輸?shù)木W(wǎng)絡(luò)流的流信息; 流信息獲取裝置,用于獲取所述數(shù)據(jù)包的流信息; 檢測(cè)裝置,用于檢測(cè)元數(shù)據(jù)庫中是否存在對(duì)應(yīng)于所述數(shù)據(jù)包的流信息,其中所述元數(shù)據(jù)庫用于存儲(chǔ)元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息; 元數(shù)據(jù)生成裝置,用于根據(jù)所述流信息的檢測(cè)結(jié)果,生成與所述數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù),并將其與對(duì)應(yīng)的流信息相關(guān)聯(lián);以及 存儲(chǔ)裝置,用于將被生成的元數(shù)據(jù)和與其相關(guān)聯(lián)的流信息存儲(chǔ)到所述元數(shù)據(jù)庫中。24.一種用于過濾網(wǎng)絡(luò)上傳輸?shù)闹辽僖唤M數(shù)據(jù)包的裝置,其特征在于,所述裝置包括: 元數(shù)據(jù)過濾器; 數(shù)據(jù)包過濾器,其中所述數(shù)據(jù)包過濾器關(guān)聯(lián)于所述元數(shù)據(jù)過濾器; 標(biāo)記檢測(cè)裝置,用于針對(duì)所述至少一組數(shù)據(jù)包中的每組數(shù)據(jù)包,檢測(cè)其是否具有塊標(biāo)記,其中所述塊標(biāo)記指示所述該組數(shù)據(jù)包被分配了與其中的每個(gè)數(shù)據(jù)包的傳輸相關(guān)的元數(shù)據(jù);以及 過濾器選擇裝置,用于根據(jù)所述塊標(biāo)記的檢測(cè)結(jié)果使用所述元數(shù)據(jù)過濾器或所述數(shù)據(jù)包過濾器來過濾所述至少一組數(shù)據(jù)包。
【文檔編號(hào)】H04L12/24GK105827474SQ201510011673
【公開日】2016年8月3日
【申請(qǐng)日】2015年1月9日
【發(fā)明人】潘阿榮, R·福格特, 章亮, 潘世光
【申請(qǐng)人】丹納赫(上海)工業(yè)儀器技術(shù)研發(fā)有限公司