SIPP常用脚本之register注册(一)

SIPP,VOIP并发测试、性能测试的神器。

本文记录一下常用的脚本文件。

一、reg.xml

此文件是sipp的执行的脚本流程。

<!-- -->
<!-- You should have received a copy of the GNU General Public License -->
<!-- along with this program; if not, write to the -->
<!-- Free Software Foundation, Inc., -->
<!-- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -->
<!-- -->
<!-- Sipp default ‘branchc‘ scenario. -->
<!-- -->
<scenario name="branch_client">
<send retrans="500">
<![CDATA[
REGISTER sip:[remote_ip] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
From: [field0] <sip:[field0]@[remote_ip]:[remote_port]>;tag=[call_number]
To: [field0] <sip:[field0]@[remote_ip]:[remote_port]>
Call-ID: [call_id]
CSeq: 1 REGISTER
Contact: sip:[field0]@[local_ip]:[local_port]
Content-Length: 0
Expires: 3600
]]>
</send>

<recv response="401" auth="true" next="1">
</recv>

<!-- send invite with authentication messages -->
<label id="1"/>
<send retrans="500">
<![CDATA[
REGISTER sip:[field0]@[remote_ip]:[remote_port] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port]
From: [field0] <sip:[field0]@[remote_ip]:[remote_port]>;tag=[call_number]
To: [field0] <sip:[field0]@[remote_ip]:[remote_port]>
Call-ID: [call_id]
CSeq: 2 REGISTER
Contact: sip:[field0]@[local_ip]:[local_port]
[field1]
Content-Length: [len]
Expires: 3600
]]>
</send>

<recv response="200" >
</recv>
<pause milliseconds="1000"/>

<!-- definition of the response time repartition table (unit is ms) -->
<ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200"/>
<!-- definition of the call length repartition table (unit is ms) -->
<CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/>
</scenario>

二、reg.csv

此文件是模拟注册的号码信息文件。

SEQUENTIAL
1001;[authentication username=1001 password=1234]
1002;[authentication username=1002 password=1234]
1003;[authentication username=1003 password=1234]
1004;[authentication username=1004 password=1234]
1005;[authentication username=1005 password=1234]
1006;[authentication username=1006 password=1234]
1007;[authentication username=1007 password=1234]
1008;[authentication username=1008 password=1234]
1009;[authentication username=1009 password=1234]
1010;[authentication username=1010 password=1234]
1011;[authentication username=1011 password=1234]
1012;[authentication username=1012 password=1234]
1013;[authentication username=1013 password=1234]
1014;[authentication username=1014 password=1234]
1015;[authentication username=1015 password=1234]
1016;[authentication username=1016 password=1234]
1017;[authentication username=1017 password=1234]
1018;[authentication username=1018 password=1234]
1019;[authentication username=1019 password=1234]
1020;[authentication username=1020 password=1234]

三、reg.sh

这是linux下的执行sipp的脚本文件。

./sipp -i 本地服务器地址 -sf reg.xml -inf reg.csv 注册服务器地址:端口 -l 10 -trace_msg -trace_screen -trace_err -p 本地服务器端口 -m 10 -aa

附、批量注册信息文件生成脚本

reg.csv的生成脚本
#!/bin/bash
i=1000
while [ $i != 1020 ]
do
i=$(($i+1))
#echo “SEQUENTIAL” >test.csv
echo "$i;[authentication username=$i password=1234]" >>reg.csv
done
时间: 2024-10-24 07:35:43

SIPP常用脚本之register注册(一)的相关文章

SIPp常用脚本之UAS(二)

看名字就能猜出来,这是作为SIP消息服务端的存在,启动uas,等着接受SIP消息并且给出响应. 一.uas.xml <?xml version="2.0" encoding="ISO-8859-1" ?> <!DOCTYPE scenario SYSTEM "sipp.dtd"> <scenario name="Basic UAS responder"> <recv request=&

SIPp常用脚本之三:UAC

UAC是作为SIP消息的发起端,可以控制消息速率什么的,方便极了. 一.uac.xml <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE scenario SYSTEM "sipp.dtd"> <scenario name="Basic Sipstone UAC"> <send retrans="500"&

Inno Setup的常用脚本

Inno Setup的常用脚本 分类: VC++神奇理论 2012-12-06 10:07 3234人阅读 评论(2) 收藏 举报 安装不同的目录: [Files] Source: "我的程序\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs Source: "我的程序\*"; DestDir: {cf}\我的程序; Flags: ignoreve

[翻译]Component Registration in Script System 在脚本系统中注册组件

Component Registration in Script System 在脚本系统中注册组件   To refer to our component from a script, the class, its properties and methods must first be registered in the script system. You may place the registration code in a file with the same name as the

表分区常用脚本

use SalesDB1 go -- 查看表是否已经分区 SELECT * FROM sys .tables AS t JOIN sys .indexes AS i ON t .[object_id] = i .[object_id] AND i .[type] IN ( 0,1 ) JOIN sys .partition_schemes ps ON i .data_space_id = ps .data_space_id WHERE t .name = 'table' ; -- 只加表名不需要

【Unity】常用脚本类的继承关系(入门篇)

前言 学习Unity开发引擎的初学者会接触大量的脚本类,而这些类之间的关系往往容易被忽略. 本文对Unity引擎开发中的一些常用类及其关系进行了简单的归纳总结. 博文首发地址:http://blog.csdn.net/duzixi Unity常用脚本类继承关系图 对Unity开发稍有了解的朋友都知道,在Unity开发框架中有4个基本层次:工程(应用程序).场景.游戏对象和组件. 在脚本中,整个应用程序和场景由Application类控制:而游戏对象和组件类均继承于Object类. 在Object

运维生产环境常用脚本

1,抓取局域网在线ip,额外获取相关信息,eg,mac,请自行添加修改脚本相关参数 aliveHostsCapture脚本下载 运维生产环境常用脚本,布布扣,bubuko.com

mysql常用脚本

整理了部分mysql常用脚本,可用于监控.不定期更新... 检查锁: more check_lock.sh #!bin/bash while true do   mysql -u root -p123456_ -H < ~/script/check_lock.sql  >> ~/script/html/`date +"%Y%m%d"`w11.html   sleep 1 done more check_lock.sql  SELECT r.trx_id waiting

PHP自动捕捉监控致命错误(500错误) error_get_last() 获取最后一次发生错误信息 register_shutdown_function()在脚本停止执行时注册一个回调函数

通常程序发生致命错误的时候页面空白,想获取错误信息也不难!主要是利用两个函数:error_get_last() 获取最后一次发生错误信息:print_r()后结构如下: Array ( [type] => 8 [message] => Undefined variable: a [file] => C:\WWW\index.php [line] => 2 ) register_shutdown_function()在脚本停止执行时注册一个回调函数: error_reporting(