FreeSWITCH
网络电话基础
线路对接方式
FreeSWITCH安装使用
FreeSWITCH配置
FreeSWITCH用户
FreeSWITCH问题
通道变量参数
IMS对接-JS
SIP协议
SIP流程
配置呼出呼入(IMS)
配置呼出呼入(内部用户)
测试工具(sipexer)
拨号规则
FXO与FXS
压测工具(sipp)
Zoiper软电话
FreeSwitch问题
本文档使用MrDoc发布
返回首页
-
+
压测工具(sipp)
2024年6月20日 10:59
admin
#参考资料 https://blog.csdn.net/HelloKittyTom/article/details/108665625 https://blog.csdn.net/szkbsgy/article/details/136746831 --- #安装 yum install sipp --- #常用参数 --- |参数|说明 |--|-- |-v|显示版本信息 |-bg|后台模式运行 |-sd|输出SIPP内嵌的默认场景 sipp -sd <uac/uas/uac_pcap> 部分参数说明: uac: uac场景 uas: uas场景 uac_pcap: uac带媒体场景 #将场景内容重定向到文件 sipp -sd uas > uas.xml --- |参数|说明 |--|-- |-sf|加载指定的场景文件 sipp -sf uas.xml --- |参数|说明 |--|-- |-sn <uac/uas>|使用默认的内置场景文件 sipp -sn uas sipp -sn uac --- |参数|说明 |--|-- |-t <u1/un/t1/tn>|设置传输方式 #部分参数说明: u1: 使用一个UDP un: 一个呼叫用一个UDP t1: 使用一个TCP tn: 一个呼叫使用一个TCP --- |参数|说明 |--|-- |-i|设置本地的IP地址,如contact,via,from sip -i 192.168.1.100 --- |参数|说明 |--|-- |-p|设置本地的端口 sip -p 5060 --- ###运行内置UAS/UAC sipp -sn uas 172.16.100.120 -p 5090 ![](/media//202406/2024-06-20105843479335.png) sipp -sn uac 172.16.100.120:5090 ![](/media//202406/2024-06-20105908495280.png) --- #批量注册 --- # remote_ip: freeswitch服务ip # remote_port: freeswitch服务端口 # -inf [csv]: 指定注册用户信息, freeswitch-sipp/data/sip_account.csv # -sf [xml]: 指定注册脚本, freeswitch-sipp/script/register/qps/qps.xml # -m: 设置本次最大执行数,到了自动关闭 # -r 2: 执行个数 # -rp 1000: 多少毫秒执行2个 # -trace_screen: 当程序结束时候打印统计信息并弹出屏幕 # -trace_msg: 打印中记录发送和接收的 SIP 消息 # -trace_err: 结束时打印错误消息 sipp [remote_ip]:[remote_port] -inf [csv] -sf [xml] -r 2 -rp 1000 -m 2 -trace_msg -trace_screen -trace_err --- sipp -sf register_scenario.xml -inf users.csv -p 5060 -i <local_ip> [remote_ip]:[remote_port] --- ####users.csv username,password,other_field1,other_field2 user1,password1,data1,data2 user2,password2,data3,data4 user3,password3,data5,data6 --- ####register_scenario.xml <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE scenario SYSTEM "sipp.dtd"> <scenario name="Registration_Scenario"> <!-- 定义发送请求前的标签 --> <label id="start"/> <!-- 发送REGISTER请求 --> <send retrans="500"> <![CDATA[ REGISTER sip:[remote_host] SIP/2.0 Via: SIP/2.0/[transport] [local_host]:[local_port];branch=[branch] From: <sip:[user]@[domain]>;tag=[call_number] To: <sip:[user]@[domain]> Call-ID: [call_id] CSeq: 1 REGISTER Contact: <sip:[user]@[local_host]:[local_port]> Expires: 3600 Max-Forwards: 70 User-Agent: SIPp/x.y.z <!-- 如果需要鉴权,可以添加 Authorization 头部,但通常SIP服务器会先返回401 Unauthorized,然后客户端再发送带有鉴权信息的REGISTER --> Content-Length: 0 ]]> </send> <!-- 接收401 Unauthorized响应(如果需要鉴权) --> <recv response="401" optional="true"> <!-- 如果收到401响应,这里可以添加处理逻辑,如发送带有鉴权信息的REGISTER请求 --> </recv> <!-- 接收200 OK响应 --> <recv response="200" /> <!-- 可以在这里添加其他标签和发送/接收操作,如注销(UNREGISTER)等 --> <!-- 场景结束 --> <label id="end"/> </scenario>
分享到: