English
產(chǎn)品與方案

      
      PF_RING?是一種新型的網(wǎng)絡套接字,可顯著提高數(shù)據(jù)包捕獲速度,并且具有以下特性:
      1. 適用于Linux內(nèi)核2.6.32及更高版本。
      2. 無需修補內(nèi)核:只需加載內(nèi)核模塊。
      3. 使用商用網(wǎng)絡適配器的10 Gbit硬件數(shù)據(jù)包過濾
      4. 用戶空間ZC(新一代DNA,Direct NIC Access,直接NIC訪問)驅(qū)動程序可實現(xiàn)極高的數(shù)據(jù)包捕獲/傳輸速度,這是因為NIC NPU(網(wǎng)絡處理單元)在沒有任何內(nèi)核干預的情況下將數(shù)據(jù)包從用戶域推送/獲取數(shù)據(jù)包。使用10Gbit ZC驅(qū)動程序,您可以以線速發(fā)送或接收任何大小的數(shù)據(jù)包。
      5. PF_RING ZC庫,用于在線程、應用程序、虛擬機之間以零拷貝分發(fā)數(shù)據(jù)包。
      6. 設備驅(qū)動程序獨立。
      7. 支持Accolade,Exablaze,Endace,F(xiàn)iberblaze,Inveatech,Mellanox,Myricom / CSPI,Napatech,Netcope和Intel(ZC)網(wǎng)絡適配器。
      8. 基于內(nèi)核的數(shù)據(jù)包捕獲和采樣。
      9. Libpcap支持(請參見下文)可與現(xiàn)有的基于pcap的應用程序無縫集成。
      10. 除BPF外,還可以指定數(shù)百個標題過濾器。
      11. 內(nèi)容檢查,以便僅通過與有效負載過濾器匹配的數(shù)據(jù)包。
      12. PF_RING?插件,用于高級數(shù)據(jù)包解析和內(nèi)容過濾。


      Vanilla PF_RING?
      
      PF_RING?正在通過Linux NAPI輪詢來自NIC的數(shù)據(jù)包。這意味著NAPI將數(shù)據(jù)包從NIC復制到PF_RING?循環(huán)緩沖區(qū),然后userland應用程序從環(huán)讀取數(shù)據(jù)包。在這種情況下,有兩個輪詢程序,即應用程序和NAPI,這會導致用于此輪詢的CPU周期。優(yōu)點是PF_RING?可以將傳入的數(shù)據(jù)包同時分發(fā)到多個環(huán)(因此有多個應用程序)。
      
      PF_RING?模塊
      
      PF_RING?具有模塊化架構(gòu),可以使用除標準PF_RING?內(nèi)核模塊以外的其他組件。當前,其他模塊集包括:
      ZC模塊。查看ZC頁面以獲取更多信息。
      基于FPGA的板卡模塊。這些模塊增加了對許多供應商的支持,包括Accolade,Exablaze,Endace,F(xiàn)iberblaze,Inveatech,Mellanox,Myricom / CSPI,Napatech,Netcope。
      堆棧模塊。該模塊可用于將數(shù)據(jù)包注入linux網(wǎng)絡堆棧。
      時間軸模塊。該模塊可用于使用PF_RING?API從n2disk轉(zhuǎn)儲集中無縫提取流量。
      Sysdig模塊。該模塊使用sysdig內(nèi)核模塊捕獲系統(tǒng)事件。


      誰需要PF_RING??
      
      基本上每個人都必須每秒處理許多數(shù)據(jù)包。這里的“許多”根據(jù)您用于流量分析的硬件而變化。它的范圍可以從1.2GHz ARM上的80k pkt / sec 到低端2.5GHz Xeon上的14M pkt / sec ,甚至更高。PF_RING?不僅使您可以更快地捕獲數(shù)據(jù)包,還可以更有效地捕獲數(shù)據(jù)包,從而節(jié)省CPU周期。這里列了一些數(shù)據(jù),您可以看到nProbe(NetFlow v5 / v9探針)可以使用PF_RING?運行多快,或者看看下面的表格。


      使用Core2Duo 1.86 GHz,Ubuntu Server 9.10(內(nèi)核2.6.31-14)和IXIA 400流量生成器以線速(64字節(jié)數(shù)據(jù)包,1.48 Mpps)注入流量進行的1Gbit測試:


      注意
      
      pfcount是在PF_RING?之上編寫的應用程序,而pcount是在libcap-over-PF_RING?之上編寫的。由于應用程序只是在不進行額外處理的情況下統(tǒng)計數(shù)據(jù)包,因此pfcount(帶有-a表示活動數(shù)據(jù)包輪詢)有時會較慢,但是pcount需要支付libpcap費用。這可以通過以下事實來證明:pfcount比pcount更快地處理數(shù)據(jù)包,因此它消耗所有可用數(shù)據(jù)包的速度更快,因此它更頻繁地調(diào)用poll()(即等待傳入數(shù)據(jù)包)。由于poll()相當昂貴,因此在這種特殊情況下,pcount性能要優(yōu)于pfcount。通常,應用程序除了對數(shù)據(jù)包進行計數(shù)外還必須對數(shù)據(jù)包做一些事情,因此,基于純PF_RING?的應用程序的性能應優(yōu)于基于pcap的應用程序。
      即使在低端Core2Duo PF_RING?ZC(新一代DNA)上也可以進行線速數(shù)據(jù)包捕獲。

 


  • 遼寧至誠信息技術(shù)有限公司
  • 電話:(8624) 3180 0906  傳真:(8624) 3180 0906
  • 中國 遼寧 沈陽市和平區(qū)三好街96號B座11層1103-3房間 同方廣場B座
Copyright © 2018-2024 遼寧至誠信息技術(shù)有限公司 保留所有權(quán)利 遼ICP備18015881號