陳濤+喬佩利+孫廣路+朱素霞
摘要:針對(duì)包采樣技術(shù)在高速網(wǎng)絡(luò)環(huán)境中提取流特征準(zhǔn)確率低的問(wèn)題,利用NetFPGA運(yùn)行速度快,并行處理能力強(qiáng)的優(yōu)勢(shì),實(shí)現(xiàn)了一個(gè)實(shí)時(shí)網(wǎng)絡(luò)流特征提取系統(tǒng),使其支持千兆級(jí)數(shù)據(jù)吞吐率。該系統(tǒng)有兩個(gè)重要模塊:地址映射模塊和流表核心處理模塊,前者將Bob Jenkins哈希算法通過(guò)流水線方式設(shè)計(jì),實(shí)現(xiàn)流記錄的快速索引;后者通過(guò)對(duì)流記錄的并行查詢(xún)與匹配,實(shí)現(xiàn)對(duì)流表的快速更新。對(duì)該系統(tǒng)進(jìn)行在線流量測(cè)試,結(jié)果表明其能夠在1Gbps網(wǎng)絡(luò)中實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)流特征的實(shí)時(shí)提取。
關(guān)鍵詞:NetFPGA;網(wǎng)絡(luò)流特征提取;流水線;Bob Jenkins哈希算法
DOI:1015938/jjhust201702019
中圖分類(lèi)號(hào): TP3930
文獻(xiàn)標(biāo)志碼: A
文章編號(hào): 1007-2683(2017)02-0099-06
Abstract:Aiming at the problem that packet sampling technique has lower flow feature extraction accuracy in highspeed network,a realtime network flow feature extraction system is implemented in NetFPGA Making full use of NetFPGA high running speed and powerful parallel processing ability, the system can support gigabit data throughput This realtime extraction system consists of two key elements, including address mapping module and flow table core processing module The former uses pipeline technique to index flow record quickly through Bob Jenkins hash algorithm The latter can update flow table rapidly by parallelizing query and match flow record Online traffic test results show that the system can achieve realtime flow feature extraction in 1Gbps Internet connection
Keywords:NetFPGA; network flow feature extraction; pipeline; Bob Jenkins hash algorithms
0引言
網(wǎng)絡(luò)流特征提取技術(shù)在網(wǎng)絡(luò)管理和網(wǎng)絡(luò)安全應(yīng)用中起到了至關(guān)重要的作用,通過(guò)長(zhǎng)期統(tǒng)計(jì)網(wǎng)絡(luò)相關(guān)特征信息,實(shí)現(xiàn)對(duì)整個(gè)互聯(lián)網(wǎng)用戶(hù)行為方式的深入理解,從而對(duì)網(wǎng)絡(luò)資源進(jìn)行合理的規(guī)劃分配與使用[1],Monshref等[2]通過(guò)對(duì)每一個(gè)流的特征進(jìn)行統(tǒng)計(jì),為數(shù)據(jù)中心網(wǎng)絡(luò)提供最佳的流量管理方案。DTong等[3]使用網(wǎng)絡(luò)流統(tǒng)計(jì)特征大大提高了使用機(jī)器學(xué)習(xí)算法實(shí)現(xiàn)流分類(lèi)的精確度。
所以設(shè)計(jì)一個(gè)在高速網(wǎng)絡(luò)環(huán)境中實(shí)時(shí)網(wǎng)絡(luò)流特征提取系統(tǒng)已成為目前研究的熱點(diǎn),Alberto Dainotti等[4]指出隨著硬件技術(shù)的快速發(fā)展,流特征提取技術(shù)能夠在高度并行化的硬件架構(gòu)中實(shí)現(xiàn)對(duì)流行為的實(shí)時(shí)分類(lèi)與檢測(cè)。由此,本文設(shè)計(jì)并實(shí)現(xiàn)了一種基于NetFPGA[5]的網(wǎng)絡(luò)流特征提取系統(tǒng)。
1相關(guān)研究
根據(jù)RFC2722[6]的定義,一個(gè)流是指在一定時(shí)間內(nèi)具有相同五元組的數(shù)據(jù)包的集合,目前基于商業(yè)上使用的網(wǎng)絡(luò)流量提取與分析工具如思科的NetFlow[7],都是采用此定義來(lái)對(duì)網(wǎng)絡(luò)流進(jìn)行監(jiān)測(cè)與處理,這些設(shè)備的主要優(yōu)點(diǎn)是不需要添加額外的部件,就可以實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)數(shù)據(jù)的實(shí)時(shí)處理,然而在高速與高負(fù)載網(wǎng)絡(luò)環(huán)境中,由于系統(tǒng)資源的限制,將會(huì)導(dǎo)致流記錄信息不準(zhǔn)確,而且由于采用包采樣技術(shù)對(duì)網(wǎng)絡(luò)流進(jìn)行分析,并沒(méi)有對(duì)所有的數(shù)據(jù)包進(jìn)行觀測(cè),這也會(huì)導(dǎo)致對(duì)單包流數(shù)據(jù)監(jiān)測(cè)誤差[8]。
除了商業(yè)上所用的設(shè)備外,也有許多基于軟件和可編程硬件實(shí)現(xiàn)的網(wǎng)絡(luò)流監(jiān)測(cè)與特征提取系統(tǒng),Danelutto[9]等通過(guò)多核與并行編程技術(shù)實(shí)現(xiàn)了網(wǎng)絡(luò)監(jiān)控系統(tǒng),并達(dá)到10Mpps的吞吐率。文獻(xiàn)[10]提出了一種高速包頭解析方法,并將其用FPGA板卡實(shí)現(xiàn),實(shí)驗(yàn)表明其支持嵌套夾層協(xié)議的解析,對(duì)基本協(xié)議的解析帶寬可達(dá)到1128Gb/s。Marco Forconesi[11]等通過(guò)NetFPGA10G平臺(tái)設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)靈活的高速網(wǎng)絡(luò)監(jiān)控系統(tǒng),實(shí)驗(yàn)表明,其可以同時(shí)管理786432條并發(fā)流信息。文獻(xiàn)[12]嘗試?yán)没贗P核的系統(tǒng)設(shè)計(jì)方法以及針對(duì)應(yīng)用優(yōu)化的PCI總線接口設(shè)計(jì)特征提取系統(tǒng),測(cè)試數(shù)據(jù)表明數(shù)據(jù)傳輸性能達(dá)到300Mb/s。文獻(xiàn)[13]介紹了一種基于PCIE總線的高速數(shù)據(jù)采集卡設(shè)計(jì)方案,利用硬件設(shè)計(jì)的關(guān)鍵技術(shù)和本地總線的控制邏輯,提高系統(tǒng)的提取性能至320Mb/s。Pati S等[14]在Xilinx VirtexII pro FPGA板卡上實(shí)現(xiàn)了一個(gè)網(wǎng)絡(luò)特征提取系統(tǒng),然后將其應(yīng)用于高速網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)中,實(shí)驗(yàn)表明該系統(tǒng)可以達(dá)到332Gbps的高吞吐率,與傳統(tǒng)采用軟件實(shí)現(xiàn)的方法相比,其性能提升了18倍。左震[15]等對(duì)IP流匹配技術(shù)做了深入的研究,并指出傳統(tǒng)IP包分類(lèi)算法和抽樣流匹配算法的不足,然后提出了一種基于異或哈希和四級(jí)存儲(chǔ)結(jié)構(gòu)的IP包快速流匹配算法,并對(duì)其流匹配情況進(jìn)行了分析,實(shí)驗(yàn)表明,其可以滿足骨干網(wǎng)實(shí)時(shí)流匹配需求。姜臘林[16]等通過(guò)使用NetFPGA10G平臺(tái)實(shí)現(xiàn)的高速網(wǎng)絡(luò)流采集系統(tǒng)中UDP、TCP吞吐率都達(dá)到640Mb/s。李彬通過(guò)使用NetFPGA板卡實(shí)現(xiàn)了對(duì)網(wǎng)絡(luò)數(shù)據(jù)的采集與分類(lèi)[17],Bando[18]等在FPGA上實(shí)現(xiàn)了一個(gè)并行hash表來(lái)解決IP流查詢(xún)提取過(guò)程中速度問(wèn)題,結(jié)果表明,其可以實(shí)現(xiàn)250Mpps的吞吐率。Rajeswari[19]等通過(guò)使用Virtex5 FPGA實(shí)現(xiàn)了較高的處理速度,但是其只能同時(shí)處理500個(gè)并發(fā)的流。
綜上可見(jiàn),將數(shù)據(jù)包采集與網(wǎng)絡(luò)流處理通過(guò)FPGA實(shí)現(xiàn)可以滿足較好的實(shí)時(shí)性并可實(shí)現(xiàn)較高的吞吐率。
2系統(tǒng)架構(gòu)
圖1為該系統(tǒng)的頂層模塊架構(gòu)圖:整個(gè)系統(tǒng)按照流水線方式運(yùn)行,實(shí)現(xiàn)了對(duì)數(shù)據(jù)的線速處理,其中包頭解析模塊根據(jù)以太網(wǎng)幀在NetFPGA中傳輸?shù)母袷教崛?chuàng)建流表所需的基本元素,時(shí)間戳模塊打入數(shù)據(jù)包進(jìn)入板卡的起始時(shí)間,地址映射模塊根據(jù)數(shù)據(jù)包五元組信息生成查詢(xún)流表的起始地址,流表核心處理模塊根據(jù)起始地址查詢(xún)流表,完成對(duì)流表中流信息的創(chuàng)建,更新,刪除操作。流表輸出模塊實(shí)時(shí)將流統(tǒng)計(jì)信息輸出。
21包頭解析模塊
此模塊接收所有來(lái)自鏈路層的以太網(wǎng)幀,并根據(jù)更新流表的需要,提取以太網(wǎng)幀中的五元組和數(shù)據(jù)包的長(zhǎng)度信息。然后根據(jù)五元組信息確定該數(shù)據(jù)包的傳送方向。如果接收到的以太網(wǎng)幀不是TCP或UDP,則直接將其丟掉。
22時(shí)間戳模塊
該模塊為從以太網(wǎng)幀提取的TCP或UDP數(shù)據(jù)包打入時(shí)間戳,這里的時(shí)間戳是指該系統(tǒng)的啟動(dòng)時(shí)間。
23地址映射模塊
此模塊根據(jù)從包頭解析模塊獲取的五元組信息計(jì)算其流記錄存儲(chǔ)的地址信息。這里采用了Bob Jenkins的哈希算法lookup3[20],因?yàn)槠渚哂蟹浅5偷臎_突率,并且該哈希算法具有較高的運(yùn)行速度,適合于硬件實(shí)現(xiàn)。此哈希算法原理如下:
1)將輸入數(shù)據(jù)X按比特分為3塊,表示為K[0],K[1],K[2],每塊長(zhǎng)度為32bit。
2)選取二個(gè)隨機(jī)數(shù)golden_ratio與seeding_value,這兩個(gè)元素為0~(232-1)之間的隨機(jī)數(shù)。
3)用選取的隨機(jī)數(shù)將K[0],K[1],K[2]初始化為A,B,C。
4)將A,B,C經(jīng)過(guò)兩次mix函數(shù)迭代運(yùn)算最終得到Hash關(guān)鍵值。
以上過(guò)程可以描述為
A=B=golden_ratio;
C=seeding_value;
A=A+K[0],
B=B+K[1],
C=C+K[2],
mix(A,B,C);
mix(A,B,C);
mix(a,b,c){
a=(a-(b+c))⊕(c>>13);
b=(b-(c+a))⊕(a<<8);
c=(c-(a+b))⊕(b>>13);
a=(a-(b+c))⊕(c>>12);
b=(b-(c+a))⊕(a<<16);
c=(c-(a+b))⊕(b>>5);
a=(a-(b+c))⊕(c>>3);
b=(b-(c+a))⊕(a<<10);
c=(c-(a+b))⊕(b>>15);
}
根據(jù)該哈希算法的特點(diǎn),我們將其采用如圖2所示的方式實(shí)現(xiàn)。圖(a)為該哈希算法初始化階段,也是該哈希算法的第一級(jí)流水線,將輸入k[0],k[1] ,k[2]經(jīng)過(guò)初始化模塊得到a(1),b(1),c(1)。由mix函數(shù)特點(diǎn)我們可以看出每個(gè)mix函數(shù)內(nèi)部都是由相應(yīng)的加,減,移位,異或這四種邏輯運(yùn)算組成,每一級(jí)運(yùn)算所需的步驟都是相同的,只是移位的次數(shù)與邏輯操作運(yùn)算的對(duì)象不同,所以我們可以將mix函數(shù)根據(jù)其自身的特點(diǎn)分為三個(gè)mix函數(shù)子塊,圖(b)為第i塊mix函數(shù)子塊的RTL級(jí)結(jié)構(gòu)圖,由圖可以看出該mix函數(shù)子塊被劃分為三級(jí)流水線進(jìn)行處理,這樣可以使運(yùn)算速度大大加快。圖(c)為該哈希算法塊級(jí)別架構(gòu),整個(gè)哈希算法被我們分解為三部分,初始化階段,mix1函數(shù)階段,mix2函數(shù)階段,其中mix1函數(shù)階段與mix2函數(shù)階段內(nèi)部又被分為三個(gè)子塊, 每個(gè)子塊都是按照三級(jí)流水線方式進(jìn)行處理,所以該流水線架構(gòu)可以快速獲取key值。
24流表核心處理模塊
該模塊是整個(gè)網(wǎng)絡(luò)流特征提取系統(tǒng)最重要的模塊,其主要完成對(duì)流表的查詢(xún),創(chuàng)建,更新,刪除,提交操作,并且將相應(yīng)流表位置的信息及時(shí)輸出到下一模塊。由于我們采用哈希索引流表,其會(huì)出現(xiàn)兩個(gè)不同的數(shù)據(jù)包得到相同哈希值的狀況。所以我們?cè)O(shè)計(jì)了一個(gè)高性能流表結(jié)構(gòu)和高效的流表?xiàng)l目管理機(jī)制應(yīng)用于流表核心處理模塊。
241流表設(shè)計(jì)
我們采用FPGA片內(nèi)塊RAM存儲(chǔ)資源來(lái)存儲(chǔ)流表?xiàng)l目,并且將地址映射模塊中Bob Jenkins哈希算法得出哈希值的低12位用來(lái)查詢(xún)流表?xiàng)l目,我們?yōu)槊恳粋€(gè)哈希值設(shè)計(jì)了四塊存儲(chǔ)空間來(lái)存放沖突的流。最終整個(gè)流表可以存儲(chǔ)16384個(gè)條目信息。每個(gè)流表?xiàng)l目存儲(chǔ)單元信息如表1所示:由于數(shù)據(jù)流具有時(shí)效性,我們應(yīng)定期清空過(guò)期條目,這不僅高效利用了流表存儲(chǔ)空間,而且提高了流表信息提取的準(zhǔn)確性。為了解決時(shí)效性問(wèn)題,我們采用局部清空流表(每隔一定時(shí)間檢查流表中固定條目的時(shí)效性),與觸發(fā)檢查(索引流表時(shí)檢查該條目的時(shí)效性)兩種方式來(lái)清空過(guò)期條目。
242流表核心處理模塊設(shè)計(jì)
圖3為流表核心處理模塊的結(jié)構(gòu)框圖。其有兩種工作模式一種是局部清空模式,另一種是正常查詢(xún)模式,這兩種工作模式交替進(jìn)行。為了使整個(gè)系統(tǒng)能夠?qū)崟r(shí)處理網(wǎng)絡(luò)數(shù)據(jù),局部清空模式每次只查詢(xún)四個(gè)流表位置的信息,所以在高速,高負(fù)載網(wǎng)絡(luò)環(huán)境中,整個(gè)系統(tǒng)并不會(huì)出現(xiàn)相應(yīng)的丟包現(xiàn)象。另外我們將存儲(chǔ)流表的塊RAM分割為四份,采用并發(fā)查詢(xún)的方式處理流信息,這樣只需8個(gè)時(shí)鐘周期就可以完成對(duì)流表的處理工作,避免了傳統(tǒng)串行查詢(xún)流表速度慢,系統(tǒng)吞吐率低的問(wèn)題。
局部清空模式工作流程為全局清空模塊向流表讀取模塊發(fā)送局部清空信號(hào),然后流表讀取模塊并發(fā)讀取四片塊RAM中相應(yīng)流位置的時(shí)間戳信息,并將相應(yīng)的流信息緩存到數(shù)據(jù)包流表緩存模塊。流表判斷模塊根據(jù)從塊RAM中接收的時(shí)間戳信息檢測(cè)是否有超時(shí)流存在,如果有超時(shí)流則發(fā)送超時(shí)命令給流表決策模塊,流表決策模塊控制數(shù)據(jù)包流表緩存模塊將超時(shí)網(wǎng)絡(luò)流信息輸出,并對(duì)超時(shí)流表塊RAM位置清空。整個(gè)局部清空模式按照流水線方式進(jìn)行,4個(gè)時(shí)鐘周期就可以完成一次局部清空操作,避免了傳統(tǒng)在高速與速與高負(fù)載網(wǎng)絡(luò)中一次清空所有超時(shí)流表?xiàng)l目出現(xiàn)的丟包與速度慢的問(wèn)題。
正常查詢(xún)模式為主要的工作模式,其完成對(duì)新來(lái)數(shù)據(jù)包的查詢(xún),創(chuàng)建,更新,刪除操作。由于我們?yōu)槊恳粋€(gè)索引Hash值分配了四塊存儲(chǔ)空間,并采用并發(fā)查詢(xún)這四塊存儲(chǔ)空間的方式來(lái)處理流表中的數(shù)據(jù),這加速了流表核心處理模塊的處理過(guò)程,也使得整個(gè)系統(tǒng)可以在更高的工作頻率下運(yùn)行。其工作流程為流表讀取模塊從FIFO1中讀取數(shù)據(jù)包索引流表所需的地址映射信息,從FIFO2中讀取數(shù)據(jù)包的五元組,長(zhǎng)度,時(shí)間戳信息。然后流表讀取模塊根據(jù)地址映射信息并發(fā)查詢(xún)四片塊RAM中相應(yīng)位置的信息。流表判斷模塊接收從塊RAM中傳來(lái)的流的五元組,長(zhǎng)度,個(gè)數(shù),時(shí)間戳信息和從FIFO2中傳來(lái)的數(shù)據(jù)包五元組,長(zhǎng)度,個(gè)數(shù)信息。并根據(jù)塊RAM中流統(tǒng)計(jì)信息和數(shù)據(jù)包記錄信息判斷該數(shù)據(jù)包是否存在于流表中。如果五元組信息一致,且流表相應(yīng)位置無(wú)超時(shí)則表明新來(lái)的數(shù)據(jù)包屬于該流,這時(shí)我們將更新過(guò)的流的統(tǒng)計(jì)信息寫(xiě)入數(shù)據(jù)包流表緩存模塊,并將更新命令發(fā)送到流表決策模塊。
如果五元組信息不一致或五元組信息一致且相應(yīng)位置出現(xiàn)超時(shí)現(xiàn)象時(shí),我們需要把相應(yīng)的超時(shí)命令與匹配錯(cuò)誤命令發(fā)送到流表決策模塊,并且將數(shù)據(jù)包與塊RAM中相應(yīng)信息寫(xiě)入數(shù)據(jù)包流表緩存模塊。流表決策模塊根據(jù)四個(gè)流表判斷模塊發(fā)送的命令判斷對(duì)流表做何種操作。具體執(zhí)行操作如圖4所示。
整個(gè)流表核心處理模塊被劃分為上面幾個(gè)模塊,這幾個(gè)模塊像流水線一樣排列,整個(gè)處理過(guò)程最長(zhǎng)只需要八個(gè)時(shí)鐘周期,這大大縮短了對(duì)網(wǎng)絡(luò)流數(shù)據(jù)的處理時(shí)間,使得整個(gè)系統(tǒng)可以運(yùn)行在高速網(wǎng)絡(luò)特征提取環(huán)境中。
25流表輸出模塊
該模塊將流表核心處理模塊提交的相應(yīng)流統(tǒng)計(jì)信息提交給PC機(jī),并由PC機(jī)對(duì)提取的流信息做進(jìn)一步處理。
3實(shí)驗(yàn)與結(jié)果
整個(gè)系統(tǒng)由Verilog編碼設(shè)計(jì),并且在Xilinx ISE 101上進(jìn)行仿真綜合,最終在NetFPGA板卡上實(shí)現(xiàn)了該原型系統(tǒng),圖5為整個(gè)系統(tǒng)的資源利用率使用情況,從圖中可以看出由于我們采用并發(fā)查詢(xún)流表機(jī)制,這雖然加快了數(shù)據(jù)的處理速度,但是也增加了資源的利用率。
圖6為整個(gè)網(wǎng)絡(luò)流特征提取系統(tǒng)的仿真波形圖,其中udp_reg_req為提取網(wǎng)絡(luò)流流統(tǒng)計(jì)信息請(qǐng)求信號(hào),當(dāng)其有效時(shí),給出相應(yīng)存儲(chǔ)流的地址信息udp_reg_addr,并且在讀地址udp_reg_rd_wr_L為高電平時(shí),在8個(gè)時(shí)鐘周期后就可以獲取網(wǎng)絡(luò)流的統(tǒng)計(jì)信息數(shù)據(jù)udp_reg_data。
最終的測(cè)試是通過(guò)抓取哈爾濱理工大學(xué)校園網(wǎng)19G數(shù)據(jù),并用Tcpreplay軟件在另一臺(tái)PC機(jī)上分別以800Mbps,1000Mbps,1200Mbp和1400Mbps重放該測(cè)試數(shù)據(jù)集,然后將其發(fā)送到NetFPGA網(wǎng)絡(luò)流特征提取系統(tǒng)中,并用Wireshark軟件實(shí)時(shí)監(jiān)測(cè)發(fā)送的數(shù)據(jù),最后將Wireshark監(jiān)測(cè)結(jié)果進(jìn)行統(tǒng)計(jì)并與該系統(tǒng)提取的結(jié)果進(jìn)行對(duì)比分析,對(duì)比結(jié)果如表2所示。結(jié)果表明該系統(tǒng)最高可以工作在1000Mbps的發(fā)送速率下,這大大提高了整個(gè)網(wǎng)絡(luò)流特征提取系統(tǒng)的性能。
4結(jié)語(yǔ)
設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)基于NetFPGA平臺(tái)的網(wǎng)絡(luò)流特征提取系統(tǒng),此系統(tǒng)可以工作在高速網(wǎng)絡(luò)環(huán)境中,可以對(duì)網(wǎng)絡(luò)中的數(shù)據(jù)包進(jìn)行建流,并對(duì)流的統(tǒng)計(jì)信息進(jìn)行實(shí)時(shí)處理,提交。由于板卡本身資源的限制,使得流表的數(shù)量過(guò)小,出現(xiàn)了較多的流沖突,為了改進(jìn)系統(tǒng)可以使用片外大容量的存儲(chǔ)單元SRAM或SDRAM來(lái)替代塊RAM。
整個(gè)設(shè)計(jì)采用模塊化的方式實(shí)現(xiàn),這有利于對(duì)整個(gè)系統(tǒng)的修改,作為網(wǎng)絡(luò)流分類(lèi)系統(tǒng)的一部分,為下一步做數(shù)據(jù)研究打好基礎(chǔ)。
參 考 文 獻(xiàn):
[1]MATA F, GARCADORADO J L, ARACIL J Detection of Traffic Changes in Largescale Backbone Networks: The Case of the Spanish Academic Network[J]. Computer Networks the International Journal of Computer & Telecommunications Networking, 2012, 56(2):686-702
[2]MOSHREF M, YU M, SHARMA A, et alScalable Rule Management for Data Centers[C]// Presented as part of the 10th USENIX Symposium on Networked Systems Design and Implementation Lombard, USA: USENIX Association, 2013:157-170
[3]TONG D, SUN L, MATAM K, et al High Throughput and Programmable Online Trafficclassifier on FPGA[C]// Proceedings of the ACM/SIGDA international symposium on Field programmable gate arrays Monterey, CA, USA: ACM, 2013:255-264
[4]DAINOTTI A, PESCAPE A, CLAFFY K Issues and Futuredirections in Traffic Classification[J]. IEEE Network the Magazine of Global Internetworking, 2012, 26(1):35-40
[5]CAO J, ZHENG X, SUN L, et alThe Development Status and Trend of NetFPGA[C]// International Conference on Network and Information Systems for Computers Wuhan, Hubei, China: IEEE, 2015:101-105
[6]BROWNLEE N, MILLS C, RUTH G Traffic Flow Measurement: Architecture[M]. Auckland: RFC Editor, 1999
[7]CISCO IncNetflow Services Solutions Guide[EB/OL].(2001-05-09) [2007-01-22] http://wwwciscocom/c/en/us/td/docs/ios/solutions_docs/netflow/nfwhitehtml
[8]左震 光纖骨干網(wǎng)實(shí)時(shí)流測(cè)量關(guān)鍵技術(shù)研究[D]. 長(zhǎng)沙:國(guó)防科學(xué)技術(shù)大學(xué),2012
[9]DANELUTTO M, DERI L, DE Sensi D Network Monitoring on Multicores with Algorithmic Skeletons[C]//PARCO Ghent, Belgium: Elsevier, 2011: 519-526
[10]肖寅東, 王厚軍, 田書(shū)林,等 高速網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)中包頭解析方法[J].儀器儀表學(xué)報(bào), 2012, 33(6):1414-1419
[11]FORCONESI M, SUTTER G, LOPEZBUEDO S, et al Accurate and Flexible Flowbased Monitoring for High Speed Networks[C]// International Conference on Field Programmable Logic and Applications Porto, Portugal: IEEE, 2013:1-4
[12]FAN Z, ZHAO G, SU JIAN The Design of Highspeed Data Acquisition System Based on IP core[J]. Microcomputer Information, 2007, 23(29):159-161
[13]潘玉霞 基于PCI Express總線高速數(shù)據(jù)采集卡的設(shè)計(jì)[D]. 太原:中北大學(xué),2011
[14]PATI S, NARAYANAN R, MEMILK G, et al Design and Implementation of an FPGA Architecture For Highspeed Network Feature Extraction[C]// International Conference on FieldProgrammable
Technology Kokurakita, Kitakyushu, JAPAN:IEEE, 2007: 49-56
[15]ZUO Zhen, HUANG Zhiping, SU Shaojing,et al Research on a Fast IP Packet Flow Match Algorithm Based on Xor Hash and Fourlayer Memory Hierarchy[C]// PacificAsia Workshop on Computational Intelligence and Industrial Application Wuhan, China: IEEE, 2010: 244-248
[16]姜臘林, 楊嘉佳, 姜磊,等 高速網(wǎng)絡(luò)流采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 計(jì)算機(jī)應(yīng)用, 2014, 34(11):3201-3205
[17]李彬 基于NetFPGA的網(wǎng)絡(luò)流量分類(lèi)[D]. 成都:電子科技大學(xué), 2011
[18]BANDO M, ARTAN N S, CHAO H J Flashlook: 100Gbps Hashtuned Route Lookup Architecture[C]// International Conference on High PERFORMANCE Switching and Routing Paris,F(xiàn)rance:IEEE, 2009:1-8
[19]RAJESWARI P, NAGARAJAN N An FPGAbased Hardware Architecture for Network Flow Analysis[J]. European Journal of Scientific Research, 2012, 83(3): 337-338
[20]JENKINS B Functions for Producing 32bit Hashes for Hash Table Lookup[EB/OL]. (2006-05-11) [2009-04-16] http://wwwburtleburtlenet/bob/hash/doobshtml
(編輯:王萍)