Difference between revisions of "Performance Testing with Sipp"

From Kolmisoft Wiki
Jump to navigationJump to search
Line 14: Line 14:


SEQUENTIAL
SEQUENTIAL
user001;[authentication username=user001 password=password001]
user001;[authentication username=user001 password=password001]
user002;[authentication username=user001 password=password001]
user002;[authentication username=user001 password=password001]
user003;[authentication username=user001 password=password001]
user003;[authentication username=user001 password=password001]



Revision as of 21:25, 15 June 2008

Download and compile the last sipp:

wget http://surfnet.dl.sourceforge.net/sourceforge/sipp/sipp.3.1.src.tar.gz

tar xvfz sipp.3.1.src.tar.gz

cd sipp.svn

apt-get install libssl-dev

make ossl

edit a new file "users.csv":

SEQUENTIAL

user001;[authentication username=user001 password=password001]

user002;[authentication username=user001 password=password001]

user003;[authentication username=user001 password=password001]

edit a new file "uac_auth.xml":

<?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE scenario SYSTEM "sipp.dtd"> <scenario name="UAC with AUTH scenario">

 <send retrans="500">
   <![CDATA[
     INVITE sip:[service]@[remote_ip]:[remote_port] SIP/2.0
     Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
     From: [field0] <sip:[field0]@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number]
     To: sut <sip:[service]@[remote_ip]:[remote_port]>
     Call-ID: [call_id]
     CSeq: 1 INVITE
     Contact: sip:[field0]@[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[media_ip_type] [media_ip]
     t=0 0
     m=audio [media_port] RTP/AVP 0
     a=rtpmap:0 PCMU/8000
   ]]>
 </send>
<recv response="407" auth="true">
</recv>
<send>
  <![CDATA[
    ACK sip:[service]@[remote_ip]:[remote_port] SIP/2.0
    Via: SIP/2.0/[transport] [local_ip]:[local_port]
    From: [field0] <sip:[field0]@[local_ip]:[local_port]>;tag=[call_number]
    To: sut <sip:[service]@[remote_ip]:[remote_port]>[peer_tag_param]
    Call-ID: [call_id]
    CSeq: 1 ACK
    Contact: sip:[field0]@[local_ip]:[local_port]
    Max-Forwards: 70
    Subject: Performance Test
    Content-Length: 0
  ]]>
</send>
<send retrans="500">
  <![CDATA[
    INVITE sip:[service]@[remote_ip]:[remote_port] SIP/2.0
    Via: SIP/2.0/[transport] [local_ip]:[local_port]
    From: [field0] <sip:[field0]@[local_ip]:[local_port]>;tag=[call_number]
    To: sut <sip:[service]@[remote_ip]:[remote_port]>
    Call-ID: [call_id]
    CSeq: 2 INVITE
    Contact: sip:[field0]@[local_ip]:[local_port]
    [field1]
    Max-Forwards: 70
    Subject: Performance Test
    Content-Type: application/sdp
    Content-Length: [len]
    v=0
    o=user1 53655765 2353687637 IN IP4 127.0.0.1
    s=-
    t=0 0
    c=IN IP4 [media_ip]
    m=audio [media_port] RTP/AVP 0
    a=rtpmap:0 PCMU/8000
  ]]>
</send>
 <recv response="100" optional="true">
 </recv>
 <recv response="180" optional="true">
 </recv>
 <recv response="183" optional="true">
 </recv>
 <recv response="200" rtd="true">
 </recv>
 <send>
   <![CDATA[
     ACK sip:[service]@[remote_ip]:[remote_port] SIP/2.0
     Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
     From: [field0] <sip:[field0]@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number]
     To: sut <sip:[service]@[remote_ip]:[remote_port]>[peer_tag_param]
     Call-ID: [call_id]
     CSeq: 1 ACK
     Contact: sip:[field0]@[local_ip]:[local_port]
     Max-Forwards: 70
     Subject: Performance Test
     Content-Length: 0
   ]]>
 </send>
 <pause/>
 <send retrans="500">
   <![CDATA[
     BYE sip:[service]@[remote_ip]:[remote_port] SIP/2.0
     Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
     From: [field0] <sip:[field0]@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number]
     To: sut <sip:[service]@[remote_ip]:[remote_port]>[peer_tag_param]
     Call-ID: [call_id]
     CSeq: 2 BYE
     Contact: sip:[field0]@[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>

Then run this:

./sipp -inf users.csv -sf uac_auth.xml -s <extension_to_call> <mor_sip_server_sip>

For a more complete sipp syntax look here:

http://sipp.sourceforge.net/doc1.1/reference.html#xmlsyntax