【原创】SIPp在Ubuntu 11.04下的编译安装
libpcap-dev
libssl-dev
ncurses-dev
为了支持多IP并发(打开大于1024个端口),还需要做如下修改:
将/usr/include/bits/typesizes.h 文件里的FD_SETSIZE 1024 改成FD_SETSIZE 65535
再把默认目录下sipp.hpp中的FD_SETSIZE改成65535
另外,除了FD_SETSIZE的限制,貌似还有File Descriptors的限制。也要修改一下:
对于Ubuntu系统,要修改这几个地方:
编辑/etc/security/limits.conf
在最后加上
* soft nofile 65535
* hard nofile 65535
再编辑/etc/pam.d/common-session
加上session required pam_limits.so
再执行ulimit -n 65535
另外,查看/proc/sys/fs/file-max这个文件中的数值,如果小于65535,也要改大。
我的文件默认是201209,够大了。
做完这些操作要重启(或者重新登陆一下)。也有说法貌似只做ulimit那一步就可以?最后再编译sipp,如果你已经编译过了,就先make clean一下,然后再重新编译。
/etc/sysctl.conf
增加
fs.file-max = 331287
然后执行
~# sysctl -p ~# fs.file-max = 331287
这个不知道管不管用。
然后再编译
执行make pcapplay_ossl编译即可
否则会提示Warning: open file limit > FD_SETSIZE; limiting max. # of open files to FD_SETSIZE = 1024
运行的时候遇到Unable to get a UDP socket (3),也是这个毛病。
最后在~/.bashrc最后加上PATH=sipp的安装地址:$PATH加入到路径中