基于多核平臺的高速網(wǎng)絡流量實時捕獲方法
【圖文】:
條流的往返數(shù)據(jù)包被分配到不同的CPU核上時,就會造成低效的跨核訪問.3)內(nèi)存映射.使用這種方法,應用程序的內(nèi)存區(qū)域可以映射到內(nèi)核態(tài)的內(nèi)存區(qū)域,應用能夠在沒有中間副本的情況下讀寫這片內(nèi)存區(qū)域.用這種方式我們可以使應用直接訪問網(wǎng)卡的DMA內(nèi)存區(qū)域,這種技術被稱為零拷貝.但零拷貝也存在潛在的安全問題,向應用暴露出網(wǎng)卡環(huán)形隊列和寄存器會影響系統(tǒng)的安全性和穩(wěn)定性[11].Fig.3PFRINGscheme圖3PFRING機制4)數(shù)據(jù)包的批處理.為了避免對每個數(shù)據(jù)包的重復操作的開銷,可以使用對數(shù)據(jù)包的批量處理.這個策略將數(shù)據(jù)包劃分為組,按組分配緩沖區(qū),將它們一起復制到內(nèi)核/用戶內(nèi)存.運用這種技術減少了系統(tǒng)調(diào)用以及隨之而來的上下文切換的次數(shù);同時也減少了拷貝的次數(shù),從而減少了平攤到處理和復制每個數(shù)據(jù)包的開銷.但由于分組必須等到一個批次已滿或定時器期滿才會遞交給上層[16],批處理技術的主要問題是延遲抖動以及接收報文時間戳誤差的增加.5)親和性與預。捎诔绦蜻\行的局部性原理,為進程分配的內(nèi)存必須與正在執(zhí)行它的處理器操作的內(nèi)存塊一致,這種技術被稱為內(nèi)存的親和性.還有一些其他的考慮因素是CPU的中斷親和性.CPU親和性是一種技術,它允許進程或線程在指定的處理器核心上運行.在內(nèi)核與驅(qū)動層面,軟件和硬件中斷可以用同樣的方法指定具體的CPU核或處理器來處理,稱為中斷親和力.每當一個線程希望訪問所接收的數(shù)據(jù),如果先前這些數(shù)據(jù)已被分配到相同CPU核的中斷處理程序接收,則它們在本地cache能夠更容易被訪問到.這項策略可以與先前
能在支持NUMA數(shù)據(jù)放置的優(yōu)勢.同樣,PS在用戶層面也提供了并行化的分組處理,同時能夠隨著CPU核的數(shù)目和隊列數(shù)目實現(xiàn)擴展性.為了減少每個包的處理開銷,PS在用戶層面實現(xiàn)了批處理.每次批處理請求都將巨大的數(shù)據(jù)包緩沖區(qū)映射到連續(xù)內(nèi)存區(qū)域,應用可以從該區(qū)域訪問驅(qū)動并復制數(shù)據(jù).為了減少cache未命中的次數(shù),改進的設備驅(qū)動程序會預取當前分組的下一個分組(包括分組數(shù)據(jù)和分組描述符),如圖4所示:Fig.4PacketShaderRXscheme圖4PacketShader收包機制3)NetmapNetmap和PacketShader體系結構的特征有很多相同之處.即在初始化階段預分配大小固定的緩存空間(也為2048B),批處理和并行直接數(shù)據(jù)通路.它也實現(xiàn)了內(nèi)存映射技術,以允許用戶的應用程序直接訪問內(nèi)核包緩存(到NIC直接訪問被保護起來)中簡化和優(yōu)化過的元數(shù)據(jù)結構,這種簡化的元數(shù)據(jù)叫做Netmapring,其結構體包含環(huán)的大小,一個指向緩存的指針(當前數(shù)據(jù)包),緩存中收到的包的數(shù)目,或緩存中可用的空槽的數(shù)目.在接收和發(fā)送時會分別設置有關狀態(tài)位、內(nèi)存中包緩存的偏移值以及元數(shù)據(jù)信息數(shù)組;同時還包含每個數(shù)據(jù)包的一個存儲位置,包括該數(shù)據(jù)包的長度、在緩存中的索引和一些標志位.需要注意的是每個RSS隊列,接收和發(fā)送都可以使用Netmapring實現(xiàn)并行化的直接數(shù)據(jù)通道.4)PFQPFQ是一種新型的數(shù)據(jù)包捕獲引擎,,它允許在應用進程中進行并行化的包捕獲.PFQ的方法與以前的研究不同,區(qū)別于完全繞過NAPI的中斷方案或使用
【相似文獻】
相關期刊論文 前10條
1 閻冬;王玉龍;蘇森;楊放春;;基于協(xié)作交互的概率性數(shù)據(jù)包標記溯源方法[J];北京郵電大學學報;2012年01期
2 李虎雄;張文杰;;網(wǎng)絡交互平臺數(shù)據(jù)包的分析與處理[J];計算機工程與設計;2007年08期
3 韓曉非,王學光,楊明福;位并行數(shù)據(jù)包分類算法研究[J];華東理工大學學報;2003年05期
4 金慶輝;王東;楊建華;謝高崗;;一種網(wǎng)絡入侵檢測中的數(shù)據(jù)包采樣方法[J];計算機應用研究;2008年10期
5 莫煒凌,田艾平;基于IPSec的數(shù)據(jù)包處理[J];計算機應用與軟件;2002年12期
6 馮東雷,張勇,白英彩;線速數(shù)據(jù)包輸入處理技術[J];計算機研究與發(fā)展;2002年01期
7 魏茂之,曾家智;幾種網(wǎng)絡體系結構中數(shù)據(jù)包的效率比較分析[J];成都信息工程學院學報;2005年01期
8 陳興蜀;嚴宏;童浩;劉毅;;數(shù)據(jù)包高效透明轉發(fā)研究及實現(xiàn)[J];四川大學學報(工程科學版);2008年04期
9 黃宗和;謝高崗;張大方;;基于DMA實現(xiàn)高速數(shù)據(jù)包收發(fā)[J];計算機應用研究;2006年05期
10 王懷宇;盧秉亮;張莉;;基于Winpcap的LAN數(shù)據(jù)包處理系統(tǒng)[J];微處理機;2011年05期
相關會議論文 前1條
1 查達仁;荊繼武;林t燂
本文編號:2565119
本文鏈接:http://sikaile.net/guanlilunwen/ydhl/2565119.html