亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種數(shù)據(jù)包構(gòu)造系統(tǒng)及其工作方法與流程

文檔序號:12751877閱讀:407來源:國知局

本發(fā)明屬于數(shù)據(jù)通信領(lǐng)域,尤其涉及到一種數(shù)據(jù)包構(gòu)造系統(tǒng)及其工作方法。



背景技術(shù):

對于網(wǎng)絡(luò)軟硬件產(chǎn)品,在上市發(fā)布前需要大量的真實流量進(jìn)行長期測試,已提早發(fā)現(xiàn)解決性能和功能上的問題。真實的流量特別是較高的(萬兆)往往是不可能直接拿到,出于用戶私密性和權(quán)限的限制。而市面上一些模擬流量的商用的數(shù)據(jù)包生成器,特別昂貴基本是100萬以上的價格,這給中小公司的產(chǎn)品測試帶來了困擾。



技術(shù)實現(xiàn)要素:

為解決上述問題,本發(fā)明提供了一種數(shù)據(jù)包構(gòu)造系統(tǒng),所述系統(tǒng)運行于服務(wù)器上,其包括原始數(shù)據(jù)包庫、數(shù)據(jù)放大模塊、放大倍數(shù)設(shè)置模塊。

所述原始數(shù)據(jù)包庫內(nèi)存儲有若干被預(yù)先分類的原始數(shù)據(jù)包,每個分類下具有一個或者若干個原始數(shù)據(jù)包。

所述數(shù)據(jù)放大模塊用于讀取原始數(shù)據(jù)包庫中選定的原始數(shù)據(jù)包,提取相關(guān)信息,根據(jù)放大倍數(shù)對信息進(jìn)行變化后復(fù)制生成信息不重復(fù)的數(shù)據(jù)包。

所述放大倍數(shù)設(shè)置模塊用于設(shè)置數(shù)據(jù)放大倍數(shù)。

數(shù)據(jù)發(fā)送模塊用于發(fā)送數(shù)據(jù)放大模塊生成的數(shù)據(jù)包。

進(jìn)一步的,所述數(shù)據(jù)放大模塊讀取原始數(shù)據(jù)包中的IP信息和端口號信息。

進(jìn)一步的,所述系統(tǒng)還包括人機(jī)交互界面,所述人機(jī)交互界面與放大倍數(shù)設(shè)置模塊及數(shù)據(jù)發(fā)送模塊連接,用于配置數(shù)據(jù)放大倍數(shù),并發(fā)送復(fù)制后的數(shù)據(jù)。

進(jìn)一步的,所述人機(jī)交互界面還讀取數(shù)據(jù)發(fā)送模塊的相關(guān)參數(shù),以監(jiān)控數(shù)據(jù)包發(fā)送情況。

進(jìn)一步的,所述系統(tǒng)還設(shè)置有數(shù)據(jù)包讀發(fā)調(diào)節(jié)單元,用于加速或者減速數(shù)據(jù)包的讀取和發(fā)送速度,所述人機(jī)交互界面設(shè)置對應(yīng)于數(shù)據(jù)讀發(fā)調(diào)節(jié)單元的、可手動調(diào)節(jié)的功能條,調(diào)節(jié)功能條能控制數(shù)據(jù)包的讀取和發(fā)送速度。

進(jìn)一步的,數(shù)據(jù)包的發(fā)送速度參數(shù)包括每秒發(fā)送數(shù)據(jù)包大小的總數(shù)、每秒發(fā)送數(shù)據(jù)包個數(shù)總數(shù)。

進(jìn)一步的,所述原始數(shù)據(jù)包庫中的數(shù)據(jù)包按照行業(yè)進(jìn)行分類。

上述數(shù)據(jù)包構(gòu)造系統(tǒng)的工作方法包括如下步驟:

步驟一:預(yù)先在原始數(shù)據(jù)包庫存入需要的原始數(shù)據(jù)包。

步驟二:選定需要復(fù)制學(xué)習(xí)的原始數(shù)據(jù)包。

步驟三:執(zhí)行數(shù)據(jù)包讀取線程,順序讀取所選定原始數(shù)據(jù)包中的相關(guān)信息,讀取后將相關(guān)信息按照預(yù)定規(guī)則進(jìn)行修改。

步驟四:執(zhí)行數(shù)據(jù)包發(fā)送線程,發(fā)送修改后形成的數(shù)據(jù)包。

步驟五:重復(fù)執(zhí)行步驟三、四,直到完成預(yù)定的數(shù)據(jù)包發(fā)送任務(wù)。

進(jìn)一步的,步驟三中,步驟三具體為:執(zhí)行數(shù)據(jù)包讀取線程,順序讀取各個原始數(shù)據(jù)包中的IP地址和端口號,讀取后將IP地址的四個字節(jié)循環(huán)進(jìn)行規(guī)律修改,并將端口信息的2個字節(jié)循環(huán)進(jìn)行規(guī)律修改。

進(jìn)一步的,所述方法還包括用戶控制數(shù)據(jù)包讀取和發(fā)送速度的過程,該過程通過在步驟三中執(zhí)行的數(shù)據(jù)包讀取線程和步驟四中執(zhí)行的數(shù)據(jù)包發(fā)送線程中增加sleep(n)函數(shù)來實現(xiàn),其中n表示休眠時間。

本發(fā)明的有益效果為:

本發(fā)明通過植入原始數(shù)據(jù)包,改變原始數(shù)據(jù)包相關(guān)信息的方式復(fù)制產(chǎn)生不重復(fù)的數(shù)據(jù)包,并預(yù)先設(shè)定流量放大倍數(shù)以產(chǎn)生符合要求的流量。另外,本發(fā)明的還可以通過控制BPS(每秒數(shù)據(jù)流量)、PPS(每秒數(shù)據(jù)包個數(shù))進(jìn)行數(shù)據(jù)包讀取及數(shù)據(jù)包發(fā)送的控制,具有極好的操作性。

附圖說明

圖1是本發(fā)明所述方法的時序圖。

具體實施方式

本發(fā)明提供了一種數(shù)據(jù)包構(gòu)造系統(tǒng),所述系統(tǒng)運行于服務(wù)器上,其包括原始數(shù)據(jù)包庫、數(shù)據(jù)放大模塊、放大倍數(shù)設(shè)置模塊。所述服務(wù)器應(yīng)配置足夠大的磁盤空間,原始數(shù)據(jù)包庫位于磁盤空間內(nèi)。

所述原始數(shù)據(jù)包庫內(nèi)存儲有若干被預(yù)先分類的原始數(shù)據(jù)包,每個分類下具有一個或者若干個原始數(shù)據(jù)包。所述原始數(shù)據(jù)包庫中的數(shù)據(jù)包按照行業(yè)進(jìn)行分類,如運營商、金融系統(tǒng)、政府 能源。

所述數(shù)據(jù)放大模塊用于讀取原始數(shù)據(jù)包庫中選定的原始數(shù)據(jù)包,提取相關(guān)信息,根據(jù)放大倍數(shù)對信息進(jìn)行變化后復(fù)制生成信息不重復(fù)的數(shù)據(jù)包。一般而言,數(shù)據(jù)放大模塊會讀取原始數(shù)據(jù)包中的IP信息和端口號信息加以改變。

所述放大倍數(shù)設(shè)置模塊用于設(shè)置數(shù)據(jù)放大倍數(shù)。

通過放大倍數(shù)來指定對每個數(shù)據(jù)包的副本個數(shù),例如原始數(shù)據(jù)包是1.1.1.1:11111 <-> 2.2.2.2:22222(四元組信息)的數(shù)據(jù)包,經(jīng)過2倍放大后,實際發(fā)出的是兩個數(shù)據(jù)包如下:

1.1.1.2:11111 <-> 1.2.2.2:22222

1.1.1.3:11111 <-> 3.2.2.2:22222

這樣可以方便地將實際構(gòu)造的流量模擬發(fā)送到萬兆的水平。數(shù)據(jù)包萬兆發(fā)送技術(shù)可采用Inter公開共享的DPDK技術(shù)。

數(shù)據(jù)發(fā)送模塊用于發(fā)送數(shù)據(jù)放大模塊生成的數(shù)據(jù)包。所述數(shù)據(jù)發(fā)送模塊一般為網(wǎng)卡。

優(yōu)選的,所述系統(tǒng)還包括人機(jī)交互界面,所述人機(jī)交互界面與放大倍數(shù)設(shè)置模塊及數(shù)據(jù)發(fā)送模塊連接,用于配置數(shù)據(jù)放大倍數(shù),并發(fā)送復(fù)制后的數(shù)據(jù)。更優(yōu)選的,進(jìn)一步的,所述人機(jī)交互界面還讀取數(shù)據(jù)發(fā)送模塊的相關(guān)參數(shù),以監(jiān)控數(shù)據(jù)包發(fā)送情況(采用定時器監(jiān)控)。所述數(shù)據(jù)發(fā)送模塊的相關(guān)參數(shù)包括每秒發(fā)送數(shù)據(jù)包大小的總數(shù)(BPS)、每秒發(fā)送數(shù)據(jù)包個數(shù)總數(shù)(PPS)。

優(yōu)選的,所述系統(tǒng)還設(shè)置有數(shù)據(jù)包讀發(fā)調(diào)節(jié)單元,用于加速或者減速數(shù)據(jù)包的讀取和發(fā)送速度,所述人機(jī)交互界面設(shè)置對應(yīng)于數(shù)據(jù)讀發(fā)調(diào)節(jié)單元的、可手動調(diào)節(jié)的功能條,調(diào)節(jié)功能條能控制數(shù)據(jù)包的讀取和發(fā)送速度。具體實現(xiàn)室在數(shù)據(jù)包線程和數(shù)據(jù)包發(fā)送線程中增加sleep(n)函數(shù)來實現(xiàn) ,n為休眠時間,全速時n為0。

上述數(shù)據(jù)包構(gòu)造系統(tǒng)的工作方法包括如下步驟:

步驟一:預(yù)先在原始數(shù)據(jù)包庫存入需要的原始數(shù)據(jù)包。

步驟二:選定需要復(fù)制學(xué)習(xí)的原始數(shù)據(jù)包。

步驟三:執(zhí)行數(shù)據(jù)包讀取線程,順序讀取所選定原始數(shù)據(jù)包中的相關(guān)信息,讀取后將相關(guān)信息按照預(yù)定規(guī)則進(jìn)行修改。

以IP地址信息及端口信息為例,分別為四個字節(jié)和兩個字節(jié),順序讀取各個原始數(shù)據(jù)包中的IP地址和端口號,讀取后將IP地址的四個字節(jié)循環(huán)進(jìn)行規(guī)律修改,并將端口信息的2個字節(jié)循環(huán)進(jìn)行規(guī)律修改。如下代碼所示:

IPConvert(const uint8* in, int count , uint8* out)

{

for(int i = 0 ; i < 4; i++)

{

*out = static_const((*in) * 13 * count);

in++;

out++;

}

}

PortConvert(const uint8* in, int count , uint8* out)

{

for(int i = 0 ; i < 2; i++)

{

*out = static_const((*in) * 13 * count);

in++;

out++;

}

}

步驟四:執(zhí)行數(shù)據(jù)包發(fā)送線程,發(fā)送修改后形成的數(shù)據(jù)包。

步驟五:重復(fù)執(zhí)行步驟三、四,直到完成預(yù)定的數(shù)據(jù)包發(fā)送任務(wù)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1