本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種虛擬網(wǎng)卡報(bào)文抓取的方法;本發(fā)明還涉及一種虛擬網(wǎng)卡報(bào)文抓取的系統(tǒng)。
背景技術(shù):
當(dāng)前,隨著網(wǎng)絡(luò)通信技術(shù)的發(fā)展,有越來越多的業(yè)務(wù)是在由虛擬機(jī)構(gòu)成的網(wǎng)絡(luò)上所運(yùn)行的,例如云計(jì)算,當(dāng)前云計(jì)算業(yè)務(wù)通常是在由虛擬機(jī)構(gòu)成的網(wǎng)絡(luò)上所運(yùn)行。
但是現(xiàn)在虛擬機(jī)網(wǎng)絡(luò)性能受限于漫長的報(bào)文發(fā)送和接收時(shí)間,由于會(huì)經(jīng)常性的出現(xiàn)報(bào)文中斷,前后報(bào)文的切換,用戶態(tài)內(nèi)核態(tài)數(shù)據(jù)拷貝等,虛擬機(jī)網(wǎng)絡(luò)的性能比較低下。為了提高虛擬機(jī)網(wǎng)絡(luò)的性能,現(xiàn)在通常是采用數(shù)據(jù)平面開發(fā)套件與虛擬交換機(jī)相結(jié)合的方式來提升虛擬機(jī)網(wǎng)絡(luò)的性能,即虛擬機(jī)網(wǎng)絡(luò)中各個(gè)虛擬機(jī)通過數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡連接虛擬交換機(jī),并通過虛擬交換機(jī)與其他終端進(jìn)行通訊等等。
當(dāng)時(shí)在現(xiàn)有技術(shù)中,無法對(duì)數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡的報(bào)文進(jìn)行抓取,即無法直接抓取該種虛擬網(wǎng)卡的流量,這樣就無法對(duì)該虛擬機(jī)進(jìn)行流量監(jiān)控與分析等。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明的主要目的在于提供一種基于數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡報(bào)文抓取的方法,可以抓取該種虛擬網(wǎng)卡的報(bào)文;本發(fā)明的另一目的在于提供一種基于數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡報(bào)文抓取的系統(tǒng),同樣可以抓取該種虛擬網(wǎng)卡的報(bào)文。
為了解決上述技術(shù)問題,本發(fā)明提供了一種基于數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡報(bào)文抓取的方法,所述方法包括:
虛擬交換機(jī)將數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡的報(bào)文通過所述虛擬交換機(jī)的流量鏡像模塊復(fù)制到虛擬網(wǎng)絡(luò)接口;
所述虛擬網(wǎng)絡(luò)接口將所述報(bào)文從所述虛擬交換機(jī)發(fā)送至linux主機(jī);
所述linux主機(jī)從所述虛擬網(wǎng)絡(luò)接口抓取所述報(bào)文。
可選的,所述linux主機(jī)從所述虛擬網(wǎng)絡(luò)接口抓取所述報(bào)文包括:
所述linux主機(jī)通過tcpdump模塊從所述虛擬網(wǎng)絡(luò)接口抓取所述報(bào)文。
可選的,所述虛擬網(wǎng)絡(luò)接口將所述報(bào)文從所述虛擬交換機(jī)發(fā)送至linux主機(jī)包括:
所述虛擬網(wǎng)絡(luò)接口將所述報(bào)文從所述虛擬交換機(jī)的網(wǎng)橋發(fā)送至所述linux主機(jī),所述網(wǎng)橋用于將所述報(bào)文從所述虛擬網(wǎng)卡發(fā)送至網(wǎng)卡。
本發(fā)明還提供了一種基于數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡報(bào)文抓取的系統(tǒng),所述系統(tǒng)包括虛擬機(jī)、數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡、虛擬交換機(jī)、虛擬網(wǎng)絡(luò)接口、linux主機(jī);
所述虛擬機(jī)通過所述數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡連接所述虛擬交換機(jī);
所述虛擬交換機(jī)通過流量鏡像模塊將所述數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡的報(bào)文復(fù)制到所述虛擬網(wǎng)絡(luò)接口;
所述虛擬網(wǎng)絡(luò)接口連接所述虛擬交換機(jī)與所述linux主機(jī),以便所述linux主機(jī)從所述虛擬網(wǎng)絡(luò)接口抓取所述報(bào)文。
可選的,所述linux主機(jī)從所述虛擬網(wǎng)絡(luò)接口抓取所述報(bào)文具體為:
所述linux主機(jī)通過tcpdump模塊從所述虛擬網(wǎng)絡(luò)接口抓取所述報(bào)文。
可選的,所述虛擬網(wǎng)絡(luò)接口連接所述虛擬交換機(jī)的網(wǎng)橋與所述linux主機(jī),所述網(wǎng)橋連接所述虛擬網(wǎng)卡與網(wǎng)卡。
可選的,所述網(wǎng)卡為物理網(wǎng)卡,用于連接物理終端。
本發(fā)明所提供的方法,先將數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡的報(bào)文通過虛擬交換機(jī)的流量鏡像模塊復(fù)制到虛擬網(wǎng)絡(luò)接口,由于虛擬網(wǎng)絡(luò)接口連接linux主機(jī),流經(jīng)虛擬網(wǎng)絡(luò)接口的報(bào)文會(huì)經(jīng)過linux內(nèi)核協(xié)議棧,此時(shí)可以對(duì)該報(bào)文進(jìn)行抓取,由于被抓取的報(bào)文是虛擬網(wǎng)卡的鏡像報(bào)文,其內(nèi)容相同,所以抓取虛擬網(wǎng)絡(luò)接口的報(bào)文相當(dāng)于抓取虛擬網(wǎng)卡的報(bào)文。本發(fā)明還提供了一種應(yīng)用上述方法的虛擬網(wǎng)卡報(bào)文抓取系統(tǒng),同樣具有上述有益效果,在此不再贅述。
附圖說明
為了更清楚的說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單的介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例所提供的一種虛擬網(wǎng)卡報(bào)文抓取方法的流程圖;
圖2為本發(fā)明實(shí)施例提供的一種虛擬網(wǎng)卡報(bào)文抓取系統(tǒng)的結(jié)構(gòu)框圖。
具體實(shí)施方式
本發(fā)明的核心是提供一種基于數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡報(bào)文抓取的方法,在現(xiàn)有技術(shù)中,為了提高虛擬機(jī)網(wǎng)絡(luò)的性能,通常選擇使用數(shù)據(jù)平面開發(fā)套件與虛擬交換機(jī)相結(jié)合的方式來提升虛擬機(jī)網(wǎng)絡(luò)的性能,因?yàn)閿?shù)據(jù)平面開發(fā)套件可以極大的提高數(shù)據(jù)處理性能和吞吐量,提高虛擬機(jī)網(wǎng)絡(luò)的工作效率。但是在現(xiàn)有技術(shù)中,由于數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡會(huì)將報(bào)文直接發(fā)送給其他網(wǎng)卡而不經(jīng)過linux主機(jī),即數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡的流量不會(huì)經(jīng)過linux內(nèi)核協(xié)議棧。此時(shí)無法對(duì)該虛擬網(wǎng)卡所產(chǎn)生的報(bào)文進(jìn)行抓取,這樣就無法對(duì)該虛擬機(jī)進(jìn)行流量監(jiān)控與分析等。
而本發(fā)明所提供的虛擬網(wǎng)卡報(bào)文抓取的方法,先將數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡的報(bào)文通過虛擬交換機(jī)的流量鏡像模塊復(fù)制到虛擬網(wǎng)絡(luò)接口,由于虛擬網(wǎng)絡(luò)接口連接linux主機(jī),流經(jīng)虛擬網(wǎng)絡(luò)接口的報(bào)文會(huì)經(jīng)過linux內(nèi)核協(xié)議棧,此時(shí)可以對(duì)該報(bào)文進(jìn)行抓取,由于被抓取的報(bào)文是虛擬網(wǎng)卡的鏡像報(bào)文,其內(nèi)容相同,所以抓取虛擬網(wǎng)絡(luò)接口的報(bào)文相當(dāng)于抓取虛擬網(wǎng)卡的報(bào)文。
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明。顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
請參考圖1,圖1為本發(fā)明實(shí)施例所提供的一種虛擬網(wǎng)卡報(bào)文抓取方法的流程圖,該方法包括:
s101:虛擬交換機(jī)將數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡的報(bào)文通過所述虛擬交換機(jī)的流量鏡像模塊復(fù)制到虛擬網(wǎng)絡(luò)接口。
在本步驟中,數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡是虛擬機(jī)與虛擬交換機(jī)的接口,同時(shí)也是虛擬機(jī)與外界傳輸介質(zhì)之間的接口。所述虛擬網(wǎng)卡除了可以傳輸虛擬機(jī)向其他主機(jī)發(fā)送的數(shù)據(jù),還可以接收虛擬機(jī)收到其他主機(jī)發(fā)送的數(shù)據(jù),即涉及數(shù)據(jù)的發(fā)送與接收,還可以對(duì)數(shù)據(jù)進(jìn)行封裝與拆封、對(duì)數(shù)據(jù)進(jìn)行編碼與解碼等等,其具體功能在此不做具體限定。
數(shù)據(jù)平面開發(fā)套件主要基于linux系統(tǒng)運(yùn)行,用于快速對(duì)數(shù)據(jù)包處理,可以極大的提高數(shù)據(jù)處理性能和吞吐量。當(dāng)數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡在收到數(shù)據(jù)包時(shí),不會(huì)通過中斷通知中央處理器,而是直接將數(shù)據(jù)包存入內(nèi)存,交付應(yīng)用層軟件通過數(shù)據(jù)平面開發(fā)套件提供的接口來直接處理。換句話說,數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡的報(bào)文不會(huì)經(jīng)過linux內(nèi)核協(xié)議棧。
在本步驟中,所述報(bào)文是網(wǎng)絡(luò)交換與傳輸?shù)臄?shù)據(jù)單元,即一次傳輸中要發(fā)送的數(shù)據(jù)塊。報(bào)文除了包括將要發(fā)送的完整的數(shù)據(jù)信息,還可以包括在數(shù)據(jù)封裝過程中添加的信息段,該信息段可以是該數(shù)據(jù)包的密碼等等。
所述流量鏡像模塊是虛擬交換機(jī)的一個(gè)應(yīng)用模塊,可以提供流量鏡像功能,該功能可以將流經(jīng)連接虛擬交換機(jī)的網(wǎng)卡的報(bào)文復(fù)制到連接該虛擬交換機(jī)的網(wǎng)絡(luò)接口。上述網(wǎng)卡可以是虛擬網(wǎng)卡,也可以是物理網(wǎng)卡;同樣網(wǎng)絡(luò)接口可以是虛擬網(wǎng)絡(luò)接口,也可以是物理網(wǎng)絡(luò)接口,在此不做具體限定。
s102:所述虛擬網(wǎng)絡(luò)接口將所述報(bào)文從所述虛擬交換機(jī)發(fā)送至linux主機(jī)。
在本步驟中,虛擬網(wǎng)絡(luò)接口其實(shí)是由linux主機(jī)虛通過軟件虛擬的一個(gè)虛擬網(wǎng)絡(luò)接口,及該虛擬網(wǎng)絡(luò)接口是linux主機(jī)自己的網(wǎng)絡(luò)接口,流經(jīng)所述虛擬網(wǎng)絡(luò)接口的報(bào)文會(huì)流經(jīng)linux內(nèi)核協(xié)議棧。
在本步驟中,虛擬網(wǎng)絡(luò)接口的作用連接虛擬交換機(jī)與linux主機(jī),更具體的,該虛擬網(wǎng)絡(luò)接口可以連接在所述虛擬交換機(jī)的網(wǎng)橋上,而虛擬交換機(jī)中可以是由網(wǎng)橋連接各個(gè)網(wǎng)絡(luò)的網(wǎng)卡。當(dāng)然,在虛擬交換機(jī)中可以由多個(gè)網(wǎng)橋來連接多個(gè)網(wǎng)卡,此時(shí)想要獲取某個(gè)具體的數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡的報(bào)文,就需要將虛擬網(wǎng)絡(luò)接口連接在與該數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡連接的網(wǎng)橋上。
s103:所述linux主機(jī)從所述虛擬網(wǎng)絡(luò)接口抓取所述報(bào)文。
由于數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡的報(bào)文會(huì)被復(fù)制到虛擬網(wǎng)絡(luò)接口,而該被復(fù)制的報(bào)文會(huì)通過虛擬網(wǎng)絡(luò)接口流經(jīng)linux內(nèi)核協(xié)議棧。在本步驟中,可以通過linux主機(jī)從所述虛擬網(wǎng)絡(luò)接口抓取所述報(bào)文,這樣就可以對(duì)連接該數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡的虛擬機(jī)進(jìn)行流量監(jiān)控與分析等。
更具體的,linux主機(jī)可以通過tcpdump模塊從所述虛擬網(wǎng)絡(luò)接口抓取所述報(bào)文。上述tcpdump模塊是linux主機(jī)的一個(gè)應(yīng)用模塊,該模塊是linux主機(jī)中強(qiáng)大的網(wǎng)絡(luò)數(shù)據(jù)采集工具之一,該模塊可以根據(jù)使用者的定義對(duì)網(wǎng)絡(luò)上的數(shù)據(jù)包進(jìn)行截獲。而通常情況在,在使用linux主機(jī)作為服務(wù)器時(shí),通常是使用tcpdump模塊抓取報(bào)文,當(dāng)然在本發(fā)明實(shí)施例中,還可以通過其他模塊對(duì)流經(jīng)虛擬網(wǎng)絡(luò)接口的報(bào)文進(jìn)行抓取,在此不做具體限定,視具體的情況而定。
本發(fā)明實(shí)施例所提供的一種虛擬網(wǎng)卡報(bào)文抓取的方法,可以先將數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡的報(bào)文通過虛擬交換機(jī)的流量鏡像模塊復(fù)制到虛擬網(wǎng)絡(luò)接口,由于虛擬網(wǎng)絡(luò)接口連接linux主機(jī),流經(jīng)虛擬網(wǎng)絡(luò)接口的報(bào)文會(huì)經(jīng)過linux內(nèi)核協(xié)議棧,此時(shí)可以對(duì)該報(bào)文進(jìn)行抓取,由于被抓取的報(bào)文是虛擬網(wǎng)卡的鏡像報(bào)文,其內(nèi)容相同,所以抓取虛擬網(wǎng)絡(luò)接口的報(bào)文相當(dāng)于抓取虛擬網(wǎng)卡的報(bào)文。
下面對(duì)本發(fā)明實(shí)施例提供的一種基于數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡報(bào)文抓取的系統(tǒng)進(jìn)行介紹,下文描述的虛擬網(wǎng)卡的報(bào)文抓取系統(tǒng)與上文描述的虛擬網(wǎng)卡的報(bào)文抓取方法可相互對(duì)應(yīng)參照。
請參考圖2,圖2為本發(fā)明實(shí)施例提供的一種虛擬網(wǎng)卡報(bào)文抓取系統(tǒng)的結(jié)構(gòu)框圖。
參照圖2,虛擬網(wǎng)卡報(bào)文抓取系統(tǒng)可以包括虛擬機(jī)100、數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡200、虛擬交換機(jī)300、虛擬網(wǎng)絡(luò)接口400、linux主機(jī)500;
所述虛擬機(jī)100通過所述數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡200連接所述虛擬交換機(jī)300。
在本發(fā)明實(shí)施例中,,數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡200是虛擬機(jī)100與虛擬交換機(jī)300的接口,同時(shí)也是虛擬機(jī)100與外界傳輸介質(zhì)之間的接口。所述虛擬網(wǎng)卡200除了可以傳輸虛擬機(jī)100向其他主機(jī)發(fā)送的數(shù)據(jù),還可以接收虛擬機(jī)100收到其他主機(jī)發(fā)送的數(shù)據(jù),即該虛擬網(wǎng)卡200涉及數(shù)據(jù)的發(fā)送與接收,還可以對(duì)數(shù)據(jù)進(jìn)行封裝與拆封、對(duì)數(shù)據(jù)進(jìn)行編碼與解碼等等,其具體功能在此不做具體限定。
數(shù)據(jù)平面開發(fā)套件主要基于linux系統(tǒng)運(yùn)行,用于快速對(duì)數(shù)據(jù)包處理,可以極大的提高數(shù)據(jù)處理性能和吞吐量。當(dāng)數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡200在收到數(shù)據(jù)包時(shí),不會(huì)通過中斷通知中央處理器,而是直接將數(shù)據(jù)包存入內(nèi)存,交付應(yīng)用層軟件通過數(shù)據(jù)平面開發(fā)套件提供的接口來直接處理。換句話說,數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡200的報(bào)文不會(huì)經(jīng)過linux內(nèi)核協(xié)議棧。
所述報(bào)文是網(wǎng)絡(luò)交換與傳輸?shù)臄?shù)據(jù)單元,即一次傳輸中要發(fā)送的數(shù)據(jù)塊。報(bào)文除了包括將要發(fā)送的完整的數(shù)據(jù)信息,還可以包括在數(shù)據(jù)封裝過程中添加的信息段,該信息段可以是該數(shù)據(jù)包的密碼等。
所述虛擬交換機(jī)300通過流量鏡像模塊將所述數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡200的報(bào)文復(fù)制到所述虛擬網(wǎng)絡(luò)接口400。
在本系統(tǒng)中,所述流量鏡像模塊是虛擬交換機(jī)300的一個(gè)應(yīng)用模塊,可以提供流量鏡像功能,該功能可以將流經(jīng)連接虛擬交換機(jī)300的網(wǎng)卡的報(bào)文復(fù)制到連接該虛擬交換機(jī)300的網(wǎng)絡(luò)接口。上述網(wǎng)卡可以是虛擬網(wǎng)卡,也可以是物理網(wǎng)卡;同樣網(wǎng)絡(luò)接口可以是虛擬網(wǎng)絡(luò)接口,也可以是物理網(wǎng)絡(luò)接口,在此不做具體限定。
虛擬交換機(jī)300中的網(wǎng)橋除了連接數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡200,還可以連接一個(gè)物理網(wǎng)卡600,該物理網(wǎng)卡600可以連接一個(gè)物理終端700,以實(shí)現(xiàn)連接虛擬網(wǎng)卡200的虛擬機(jī)100與該物理終端700之間的通訊。
所述虛擬網(wǎng)絡(luò)接口400連接所述虛擬交換機(jī)300與所述linux主機(jī)500,以便所述linux主機(jī)500從所述虛擬網(wǎng)絡(luò)接口400抓取所述報(bào)文。
在本系統(tǒng)中,虛擬網(wǎng)絡(luò)接口400的作用連接虛擬交換機(jī)300與linux主機(jī)500,更具體的,該虛擬網(wǎng)絡(luò)接口400可以連接在所述虛擬交換機(jī)300的網(wǎng)橋上,而虛擬交換機(jī)300中可以是由網(wǎng)橋連接各個(gè)網(wǎng)絡(luò)的網(wǎng)卡。當(dāng)然,在虛擬交換機(jī)300中可以由多個(gè)網(wǎng)橋來連接多個(gè)網(wǎng)卡,此時(shí)想要獲取某個(gè)具體的數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡200的報(bào)文,就需要將虛擬網(wǎng)絡(luò)接口400連接在與該數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡200連接的網(wǎng)橋上。
由于數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡200的報(bào)文會(huì)被復(fù)制到虛擬網(wǎng)絡(luò)接口400,而該被復(fù)制的報(bào)文會(huì)通過虛擬網(wǎng)絡(luò)接口400流經(jīng)linux內(nèi)核協(xié)議棧。在系統(tǒng)中,可以通過linux主機(jī)500從所述虛擬網(wǎng)絡(luò)接口400抓取所述報(bào)文,這樣就可以對(duì)連接該數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡200的虛擬機(jī)100進(jìn)行流量監(jiān)控與分析等。
更具體的,linux主機(jī)500可以通過tcpdump模塊從所述虛擬網(wǎng)絡(luò)接口400抓取所述報(bào)文。上述tcpdump模塊是linux主機(jī)500的一個(gè)應(yīng)用模塊,該模塊是linux主機(jī)500中強(qiáng)大的網(wǎng)絡(luò)數(shù)據(jù)采集工具之一,該模塊可以根據(jù)使用者的定義對(duì)網(wǎng)絡(luò)上的數(shù)據(jù)包進(jìn)行截獲。而通常情況在,在使用linux主機(jī)500作為服務(wù)器時(shí),通常是使用tcpdump模塊抓取報(bào)文,當(dāng)然在本發(fā)明實(shí)施例中,還可以通過其他模塊對(duì)流經(jīng)虛擬網(wǎng)絡(luò)接口400的報(bào)文進(jìn)行抓取,在此不做具體限定,視具體的情況而定。
本發(fā)明實(shí)施例所提供的一種虛擬網(wǎng)卡200報(bào)文抓取的系統(tǒng),可以先將數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡200的報(bào)文通過虛擬交換機(jī)300的流量鏡像模塊復(fù)制到虛擬網(wǎng)絡(luò)接口400,由于虛擬網(wǎng)絡(luò)接口400連接linux主機(jī)500,流經(jīng)虛擬網(wǎng)絡(luò)接口400的報(bào)文會(huì)經(jīng)過linux內(nèi)核協(xié)議棧,此時(shí)可以對(duì)該報(bào)文進(jìn)行抓取,由于被抓取的報(bào)文是虛擬網(wǎng)卡200的鏡像報(bào)文,其內(nèi)容相同,所以抓取虛擬網(wǎng)絡(luò)接口400的報(bào)文相當(dāng)于抓取虛擬網(wǎng)卡200的報(bào)文。
本說明書中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其它實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同或相似部分互相參見即可。對(duì)于實(shí)施例公開的系統(tǒng)而言,由于其與實(shí)施例公開的方法相對(duì)應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。
以上對(duì)本發(fā)明所提供的一種基于數(shù)據(jù)平面開發(fā)套件的虛擬網(wǎng)卡報(bào)文抓取的方法以及系統(tǒng)進(jìn)行了詳細(xì)介紹。本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想。應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對(duì)本發(fā)明進(jìn)行若干改進(jìn)和修飾,這些改進(jìn)和修飾也落入本發(fā)明權(quán)利要求的保護(hù)范圍內(nèi)。