sipp单机压测freeswitch第5篇压测语音会议

本文介绍了Freeswich平台的会议功能,包括支持多用户语音和视频会议,以及如何使用confAudio.xml脚本来进行压测,包括音频文件、sip协议栈操作和参数配置。
摘要由CSDN通过智能技术生成

会议功能是Freeswich集成的功能,支持多个用户拨入一个会议,一般用它做语音会议或视频会议的公司比较少,但实际情况是总有公司节省成本会用, 除了语音会议外,视频会议还提供了MCU模式把多个终端视频融合到一个画面,减小用户宽带压力。

confAudio.xml 视频会议呼叫脚本

qingGeWangG711.pcap是我录制的一个一个音频文件,你可以自己录制一个,实在是懒就用官方的g711a.pcap官方提供的这个音频文件大概7秒钟左右

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE scenario SYSTEM "sipp.dtd">
<scenario name="UAC with media">
  <send retrans="500">
    <![CDATA[

      INVITE sip:[field0]@[remote_ip]:[remote_port] SIP/2.0
      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
      From: sipp <sip:sipp@[local_ip]:[local_port]>;tag=[pid]SIPpTag09[call_number]
      To: [field0] <sip:[field0]@[remote_ip]:[remote_port]>
      Call-ID: [call_id]
      CSeq: 1 INVITE
      Contact: sip:sipp@[local_ip]:[local_port]
      Max-Forwards: 70
      Subject: Performance Test
      Content-Type: application/sdp
      Content-Length: [len]

      v=0
      o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip]
      s=-
      c=IN IP[local_ip_type] [local_ip]
      t=0 0
      m=audio [media_port] RTP/AVP 8 101
      a=rtpmap:8 PCMA/8000
      a=rtpmap:101 telephone-event/8000
      a=fmtp:101 0-11,16

    ]]>
  </send>

  <recv response="100" optional="true">
  </recv>

  <recv response="180" optional="true">
  </recv>

  <recv response="183" optional="true">
  </recv>

  <recv response="200" rtd="true" crlf="true">
  </recv>
 
  <send>
    <![CDATA[

      ACK sip:[field0]@[remote_ip]:[remote_port] SIP/2.0
      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
      From: sipp <sip:sipp@[local_ip]:[local_port]>;tag=[pid]SIPpTag09[call_number]
      To: [field0] <sip:[field0]@[remote_ip]:[remote_port]>[peer_tag_param]
      Call-ID: [call_id]
      CSeq: 1 ACK
      Contact: sip:sipp@[local_ip]:[local_port]
      Max-Forwards: 70
      Subject: Performance Test
      Content-Length: 0

    ]]>
  </send>
    <!--   最好Freeswitch设置播放音频,SIPp回显,注释掉这段代码  --> 
    <!--
  <nop>
    <action>
      <exec play_pcap_audio="sip_test/pcap/qingGeWangG711.pcap"/>
    </action>
  </nop>
-->
  <pause milliseconds="300000"/>

 <send retrans="500">
    <![CDATA[

      BYE sip:[field0]@[remote_ip]:[remote_port] SIP/2.0
      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
      From: sipp <sip:sipp@[local_ip]:[local_port]>;tag=[pid]SIPpTag09[call_number]
      To: [field0] <sip:[field0]@[remote_ip]:[remote_port]>[peer_tag_param]
      Call-ID: [call_id]
      CSeq: 2 BYE
      Contact: sip:sipp@[local_ip]:[local_port]
      Max-Forwards: 70
      Subject: Performance Test
      Content-Length: 0

    ]]>
  </send>

  <recv response="200" crlf="true">
  </recv>

  <ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200"/>
  <CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/>
</scenario>
会议conf.csv
// 1个会议
SEQUENTIAL
conf1;
// 5个会议
SEQUENTIAL
conf1;
conf2;
conf3;
conf4;
conf5;
指令介绍
/*
* -t tn:  每个呼叫是一个tcp(建议开启,这样模拟起来相对真实)
* -rtp_echo:  启用 RTP 回显
* -r 20 -rp 1000: 每秒注册20个账号
* -m 5000: 注册到达5000后停止脚本
* -trace_msg: 开启后打印所有过程中的消息(如果有错误建议开启,只能看到交互的消息,无法看到rtp传输)
* -trace_screen: 结束后吧结果打印到屏幕上
* -trace_err: 开启后打印错误消息
* remote_ip: 被压测Fs地址
* remote_port: 被压测Fs端口
*/
sipp [remote_ip]:[remote_port] -inf [csv] -sf [xml] -m [Number] -r [Number] -rp [Number] -t tn -rtp_echo  -trace_screen -trace_err
使用
// 压测一个会议: 使用一个会议的csv 每秒20个呼叫键入会议; 呼叫执行40次;
sipp 102.95.28:5060 -inf conf1.csv -sf confAudio.xml -m 40 -r 20 -rp 1000 -t tn -rtp_echo  -trace_screen -trace_err
// 压测5个会议: 使用5个会议csv 每秒20个呼叫; 呼叫执行40次; 最终1个会议20个人;
sipp 102.95.28:5060 -inf conf5.csv -sf confAudio.xml -m 40 -r 20 -rp 1000 -t tn -rtp_echo  -trace_screen -trace_err
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值