最近在研究 SIPP 的 performance, 将安装和研究过程作个简单的纪录。
安装 SIPP 过程中遇到不少问题,也看了一些文档,先向这些作者致敬,不一一列出了,但整体感觉不少文档没有与时俱进。参考文档仅留个官方的
http://sipp.sourceforge.net/wiki/index.php/Compilation
Win 32 下的安装
一、首先要安装好 Cygwin, 选择安装以下几个包就可以了
☼ gcc-core
☼ gcc-g++
☼ libncurses-devel
☼ libncurses8
☼ openssl-devel
☼ make
下载地址: http://www.cygwin.com/setup.exe
运行 setup.exe
1 、下载时前面都是下一步就 OK ,按默认就好。到选择镜像站点的时候建议选择 http://mirrors.kernel.org ,网上推荐;
2 、到选择安装方式 ——Select Packages 页面时,一定要注意每个包后面的状态:
Keep, 意思就是说保持目前已经安装的版本不动。不会替换目前已有的版本,下次安装包的时候尽量使用此选项,因为它不会把你已经有的包重新安装一次;
Curr, 意思就是说把最新的版本统统下载下来安装
Cygwin 就安装完毕,大家一定要记住安装的路径。
3 、若需断点续传,可选择 “Reinstall” 。
二、下载 IPV6
地址: http://win6.jp/Cygwin/
1 、将其解压出来的 3 个文件夹: /bin,/lib,/usr 复制到刚刚 Cygwin 的安装目录下即: ../Cygwin/ 这里,以替换已有的文件夹。
2 、将 Cygwin/lib/cygwin1.dll 删除,并为 new_cygwin1.dll( 也有可能叫做 new-cygwin1.dll) 重命名为 cygwin1.dll
三.安装 SIPP
从 SIPP 官网上下载最新的 win32 EXE 版本
到这里安装就完成了。
四、使用
1 、可以在 windows 自带的命令行语句中使用:
找到 sipp 的安装目录后,写入 sipp 后回车即可,要想调用 uac 和 uas, 只要在相应目录下键入 sipp -sn uas
或
sipp -sn uac 127.0.0.1
即可。
2 、也可以找到 sipp 安装在开始菜单中的, start sipp shell 或 uas 和 uac 。
Suse/Redhat Linux 下的安装:
一.安装libcap (用于发送rtp 媒体流,若只测信令可跳过)
下载libcap http://www.tcpdump.org/release/
tar zxvf libcapXXX.gz
login as root , go to folder libpcapXXX and install it. run:
./configure
./make
./make install
二.安装libnet (用于发送rtp 媒体流, 若只测信令可跳过)
下载libnet http://www.packetfactory.net/
tar zxvf libnetXXX.gz
login as root , go to folder libpnetXXX and install it. run:
./configure
. /make
./make install
三.安装SIPP 下载 SIPP http://sipp.sourceforge.net/ ./make install 基本安装,无rtp 流和认证。 或
./make pcapplay 带媒体流但无认证。
四.运行
sipp -sn uas
或
sipp -sn uac 127.0.0.1
sipp –r 1000-sn uac 127.0.0.1 (-r 1000, call load 为 1000CPS)
sipp -sn uac_pcap 127.0.0.1 ( 运行 embedded scenario, 带 rtp 流 )
sipp –sf uac_pcap.xml 127.0.0.1( 运行 uac_pcap.xml 定义的 scenario, 带 rtp 流, uac_pcap.xml 可从官方网站下载。 )
测试结果,仅信令:
PC with window XP Pentium Dual Core 3.4G, 2.0 G Memory |
PC with Suse Linux Pentium 4 3.4G, 2.0 G Memory |
|
SIPP(Linux version3.0) |
N/A |
1500CPS |
SIPP(win32 version1.0) |
200 CPS |
N/A |
若有进一步的研究,文章将继续。