1.一種抓包方法,其特征在于包括:
初始化網(wǎng)卡數(shù)據(jù)結(jié)構(gòu),根據(jù)獲取到規(guī)則和策略生成過濾規(guī)則;
使用DPDK包捕獲函數(shù)返回的原始數(shù)據(jù)包的指針獲取數(shù)據(jù)包;
將獲取到的數(shù)據(jù)包與所述過濾規(guī)則匹配,保存符合所述過濾規(guī)則的數(shù)據(jù)包。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在使用所述DPDK包捕獲函數(shù)返回的原始數(shù)據(jù)包的指針獲取所述數(shù)據(jù)包之前,所述方法還包括:
接收到用戶輸入的命令,其中,所述命令用于指示開始或停止獲取數(shù)據(jù)包;和/或,
設(shè)置定時(shí)任務(wù),其中,所述定時(shí)任務(wù)用于指示獲取數(shù)據(jù)包的時(shí)段。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,保存符合所述過濾規(guī)則的數(shù)據(jù)包包括:
將符合所述過濾規(guī)則的數(shù)據(jù)包保存為預(yù)定格式的文件,并且存放在指定路徑下。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,保存符合所述過濾規(guī)則的數(shù)據(jù)包包括:
如果符合所述過濾規(guī)則的數(shù)據(jù)包為IP數(shù)據(jù)包,則在計(jì)算校驗(yàn)和之后,保存所述數(shù)據(jù)包。
5.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的方法,其特征在于,還包括:
對于以文件形式保存的數(shù)據(jù)包,在所述文件超過預(yù)定的個(gè)數(shù)和/或大小的情況下,刪除部分或者全部已經(jīng)保存的數(shù)據(jù)包。
6.一種抓包裝置,其特征在于包括:
生成模塊,用于初始化網(wǎng)卡數(shù)據(jù)結(jié)構(gòu),根據(jù)獲取到規(guī)則和策略生成過濾規(guī)則;
獲取模塊,用于使用DPDK包捕獲函數(shù)返回的原始數(shù)據(jù)包的指針獲取數(shù)據(jù)包;
保存模塊,用于將獲取到的數(shù)據(jù)包與所述過濾規(guī)則匹配,保存符合所述過濾規(guī)則的數(shù)據(jù)包。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,還包括:
接收模塊,用于接收到用戶輸入的命令,其中,所述命令用于指示開 始或停止獲取數(shù)據(jù)包;和/或,
設(shè)置模塊,用于設(shè)置定時(shí)任務(wù),其中,所述定時(shí)任務(wù)用于指示獲取數(shù)據(jù)包的時(shí)段。
8.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述保存模塊用于將符合所述過濾規(guī)則的數(shù)據(jù)包保存為預(yù)定格式的文件,并且存放在指定路徑下。
9.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述保存模塊用于如果符合所述過濾規(guī)則的數(shù)據(jù)包為IP數(shù)據(jù)包,則在計(jì)算校驗(yàn)和之后,保存所述數(shù)據(jù)包。
10.根據(jù)權(quán)利要求6至9中任一項(xiàng)所述的裝置,其特征在于,還包括:
刪除模塊,用于對于以文件形式保存的數(shù)據(jù)包,在所述文件超過預(yù)定的個(gè)數(shù)和/或大小的情況下,刪除部分或者全部已經(jīng)保存的數(shù)據(jù)包。