On Sat, Dec 6, 2008 at 3:17 PM, cool goose <[EMAIL PROTECTED]> wrote:
> Thank You very much. It works!! Is there a better tutorial on SIPp other
> than the documentation on their site? Can you suggest any resources that can
> help me in writing my own custom scenarios using SIPp ?
I think the online documentation is very good. That's from where I learned
it.
You will not need much beyond that.
Also, you can search the forum archives:
http://sourceforge.net/mailarchive/forum.php?forum_name=sipp-users
Other than that, use
sipp -sd uac
sipp -sd uas
etc.
to get the embedded sample uac, uas scenarios.
Also, I'm sending some scenarios that I use here to test sip proxies.
But to write scenarios is really easy, just capture a call using
ngrep/sipgrep/wireshark. Then put the messages from one of the peers in the
xml file and start replacing the variant info with the adequate
placeholders.
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE scenario SYSTEM "sipp.dtd">
<scenario name="ATA origination">
<!-- You must supply a file containing data for injection -->
<!-- field0 : remote username -->
<!-- field1 : local username -->
<!-- field2 : domain -->
<!-- field3 : authentication -->
<!-- Sample
SEQUENTIAL
001234;1001;test.com;[authentication username=1001 password=1001]
-->
<!-- arguments to sipp must include: -->
<!-- -i : local_ip -->
<!-- -p : local_port -->
<!-- -sf : scenario file -->
<!-- -inf : injection data file -->
<!-- -d : delay (call duration) in milliseconds -->
<!-- Ex.: sipp -i 192.168.2.122 -p 6060 -sf uac.xml -inf data.txt -d 1000 192.168.2.123 -->
<send retrans="500">
<![CDATA[
INVITE sip:[EMAIL PROTECTED]:[remote_port] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];rport;branch=[branch]
From: "[field1]" <sip:[EMAIL PROTECTED]>;tag=[pid]SIPpTag00[call_number]
To: <sip:[EMAIL PROTECTED]:[remote_port]>
Call-ID: [call_id]
Contact: <sip:[EMAIL PROTECTED]:[local_port]>
CSeq: 801 INVITE
Max-Forwards: 70
Allow: INVITE,CANCEL,ACK,BYE,NOTIFY,REFER,OPTIONS,INFO,MESSAGE
Supported: replaces
Content-Type: application/sdp
User-Agent: ATA
Content-Length: [len]
v=0
o=CMI-SIPUA 61838 0 IN IP[local_ip_type] [local_ip]
s=SIP CALL
c=IN IP[media_ip_type] [media_ip]
t=0 0
m=audio [media_port] RTP/AVP 0 18 4 101
a=rtpmap:0 PCMU/8000
a=rtpmap:18 G729/8000
a=rtpmap:4 G723/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=sendrecv
]]>
</send>
<recv response="407" auth="true">
</recv>
<send>
<![CDATA[
ACK sip:[EMAIL PROTECTED]:[remote_port] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch-2]
[last_From:]
[last_To:]
[last_Call-ID:]
Contact: <sip:[EMAIL PROTECTED]:[local_port]>
CSeq: 801 ACK
Max-Forwards: 70
User-Agent: ATA
Content-Length: 0
]]>
</send>
<send retrans="500">
<![CDATA[
INVITE sip:[EMAIL PROTECTED]:[remote_port] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];rport;branch=[branch]
From: "[field1]" <sip:[EMAIL PROTECTED]>;tag=[pid]SIPpTag00[call_number]
To: <sip:[EMAIL PROTECTED]:[remote_port]>
Call-ID: [call_id]
Contact: <sip:[EMAIL PROTECTED]:[local_port]>
CSeq: 802 INVITE
[field3]
Max-Forwards: 70
Allow: INVITE,CANCEL,ACK,BYE,NOTIFY,REFER,OPTIONS,INFO,MESSAGE
Supported: replaces
Content-Type: application/sdp
User-Agent: ATA
Content-Length: [len]
v=0
o=CMI-SIPUA 61838 0 IN IP[local_ip_type] [local_ip]
s=SIP CALL
c=IN IP[media_ip_type] [media_ip]
t=0 0
m=audio 60000 RTP/AVP 0 18 4 101
a=rtpmap:0 PCMU/8000
a=rtpmap:18 G729/8000
a=rtpmap:4 G723/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=sendrecv
]]>
</send>
<recv response="100" optional="true">
</recv>
<recv response="180" optional="true">
</recv>
<recv response="183" optional="true">
</recv>
<!-- By adding rrs="true" (Record Route Sets), the route sets -->
<!-- are saved and used for following messages sent. Useful to test -->
<!-- against stateful SIP proxies/B2BUAs. -->
<recv response="200" rrs="true">
</recv>
<send>
<![CDATA[
ACK [next_url] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];rport;branch=[branch-5]
[last_From:]
[last_To:]
[last_Call-ID:]
[routes]
Contact: <sip:[EMAIL PROTECTED]:[local_port]>
CSeq: 802 ACK
[field3]
User-Agent: ATA
Content-Length: 0
]]>
</send>
<!-- This delay can be customized by the -d command-line option -->
<!-- or by adding a 'milliseconds = "value"' option here. -->
<pause/>
<!-- The 'crlf' option inserts a blank line in the statistics report. -->
<send retrans="500">
<![CDATA[
BYE [next_url] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];rport;branch=[branch-1]
[last_From:]
[last_To:]
[last_Call-ID:]
[routes]
Contact: <sip:[EMAIL PROTECTED]:[local_port]>
CSeq: 803 BYE
[field3]
Max-Forwards: 70
User-Agent: ATA
Content-Length: 0
]]>
</send>
<recv response="200" crlf="true">
</recv>
<!-- 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>
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE scenario SYSTEM "sipp.dtd">
<scenario name="BGS as destination">
<!-- arguments to sipp must include: -->
<!-- -i : local_ip -->
<!-- -p : local_port -->
<!-- -sf : scenario file -->
<!-- Ex.: sipp -i 192.168.2.121 -p 6060 -sf uas.xml -->
<!-- By adding rrs="true" (Record Route Sets), the route sets -->
<!-- are saved and used for following messages sent. Useful to test -->
<!-- against stateful SIP proxies/B2BUAs. -->
<recv request="INVITE" crlf="true" >
</recv>
<send>
<![CDATA[
SIP/2.0 100 Trying
[last_To:];tag=[pid]SIPpTag01[call_number]
[last_From:]
[last_Call-ID:]
[last_CSeq:]
Contact: Excel<sip:[EMAIL PROTECTED]:[local_port]>
[last_Via:]
User-Agent: Excel_CSP/83.10.226
Content-Length: 0
]]>
</send>
<send>
<![CDATA[
SIP/2.0 180 Ringing
[last_To:];tag=[pid]SIPpTag01[call_number]
[last_From:]
[last_Call-ID:]
[last_CSeq:]
Contact: Excel<sip:[EMAIL PROTECTED]:[local_port]>
[last_Via:]
User-Agent: Excel_CSP/83.10.226
Content-Length: 0
]]>
</send>
<send retrans="500">
<![CDATA[
SIP/2.0 200 OK
[last_To:];tag=[pid]SIPpTag01[call_number]
[last_From:]
[last_Call-ID:]
[last_CSeq:]
Contact: Excel<sip:[EMAIL PROTECTED]:[local_port]>
[last_Record-Route:]
Supported: timer
Session-Expires: 21600; refresher=uas
[last_Via:]
User-Agent: Excel_CSP/83.10.226
Content-Type: application/sdp
Content-Length: [len]
v=0
o=sip 1220546354 1220546354 IN IP[local_ip_type] [local_ip]
s=SIP_Call
c=IN IP[media_ip_type] [media_ip]
t=0 0
m=audio [media_port] RTP/AVP 0 98
a=sendrecv
a=rtpmap:98 telephone-event/8000
]]>
</send>
<!-- The [last_Via:] above will cause all Via Headers received in the last message to be added at that point in the SIP message, but they will be combined in a single Header (separated by commas). So the message will not be exactly the same as generated by a real CSP -->
<recv request="INVITE" optional="true" />
<!-- the above is used to ignore duplicated INVITE sent by OpenSER -->
<recv request="ACK"
crlf="true">
</recv>
<recv request="BYE">
</recv>
<send>
<![CDATA[
SIP/2.0 200 OK
[last_To:]
[last_From:]
[last_Call-ID:]
[last_CSeq:]
[last_Via:]
User-Agent: Excel_CSP/83.10.226
Content-Length: 0
]]>
</send>
<!-- Keep the call open for a while in case the 200 is lost to be -->
<!-- able to retransmit it if we receive the BYE again. -->
<timewait milliseconds="4000"/>
<!-- 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>
------------------------------------------------------------------------------
SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada.
The future of the web can't happen without you. Join us at MIX09 to help
pave the way to the Next Web now. Learn more and register at
http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/
_______________________________________________
Sipp-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sipp-users