pfring的编译 libpcap缓冲区修改

来源:互联网 发布:大卫杜夫 雪茄 知乎 编辑:程序博客网 时间:2024/06/06 12:25

1)下载PF_RING:git clone https://github.com/ntop/PF_RING.git


2)下载完后,在PF_RING/kernel下面make编译pf_ring,生成pf_ring.ko


3)insmod pf_ring.ko thansparent_mode =1


4)apt-get install bision


5)apt-get install flex




6)cd 进入PF_RING-dev/userland/libpcap-1.74目录下,修改源码,将pf_ring的内核ring缓冲区设为10M,默认2M,
 注:修改源码,将pf_ring的内核ring缓冲区设为10M,默认是2M
       源代码:userland/libpcap-1.1.1-ring/pcap-linux.c
       函数:int activate_mmap(pcap_t*handle);
       代码片段:
  3310         if (handle->opt.buffer_size == 0) {
  3311                 /* by defaultrequest 2M for the ring buffer */
  3312                handle->opt.buffer_size = 2*1024*1024;
  3313         } 


7)cd PF_RING-dev 执行make 编译 
cd 进入lib目录下,修改MakeFile,将安装目录指向usr/,如果不修改,就会指向/usr/local ,在lib目录下,make,然后make install
cd 进入libpcap-1.1.1-ring目录下,然后修改MakeFile,将安装目录指向usr/,默认指向usr/local。接着编译make,然后make install;


8)这样,就将PF_RING-dev/userland/lib/libpfring.so,
pfring_e1000e_dna.h,
PF_RING-dev/userland/lib/pfring.h,
PF_RING-dev/userland/libpcap-1.7.4/libpcap.so.1.7.4(1MB) /*这个貌似用不了,可以到usr/lib/i386/底下搜索安装好的libpcap.so.1.7.4(256kb)*/


9)环境搭建完了,应用记得在应用程序的头文件中加入#define HAVE_PF_RING ;


10)大功告成,你会发现性能有极大的提高,提高了60%以上。但是cpu占用率也会相应的提高,cpu占用率采用在终端采用top查看。


0 0