To Whom It May Concern:
We used "setdest" command in uac scenarios file before the BYE and ACK message to fit the following call flow: SIPp I-CSCF PSI | INVITE | | +---------------------->| | | TRYING | | |<----------------------+ INVITE | | +------------------->| | | TRYING | | |<-------------------+ | | 200 OK | | 200 OK |<-------------------+ |<----------------------+ | | | | | | | ACK (send directly to AS) | +------------------------------------------->| | BYE (send directly to AS) | |------------------------------------------->| We are using an unstable sipp which version is as below: The version of SIPP I used is (2008, July unstable version) SIPp v3.1-TLS, version unknown, built Dec 8 2009, 11:00:41. The problem is, during our performance test (40 cps for this scenario) we found the SIPP memory usage kept increasing (about 1M per minute) and finally reach the peak, and the SIPp process terminated. Is it a memory leak caused by setdest? By the way, we use the same sipp for our other performance scenario which have no such issue. Do you have a stable SIPp which support the setdest feature or any other way to avoid using it? Following is the UAC scenarios file: <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE scenario SYSTEM "sipp.dtd"> <scenario name="Sip Outgoing Call User A"> <!-- In client mode (sipp placing calls), the Call-ID MUST be --> <!-- generated by sipp. To do so, use [call_id] keyword. --> <recvCmd> <action> <ereg regexp=".*" search_in="hdr" header="IMRN:" assign_to="IMRN"/> <ereg regexp=".*" search_in="hdr" header="Calling:" assign_to="Called"/> <ereg regexp=".*" search_in="hdr" header="Called:" assign_to="Calling"/> </action> </recvCmd> <send retrans="2000"> <![CDATA[ INVITE sip:+1[$im...@icsf-stdn.scg03.ims.luqdlab.com SIP/2.0 Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch] From: <sip:[$calli...@ims.luqdlab.com>;tag=[call_number] To: <sip:+1[$im...@icsf-stdn.scg03.ims.luqdlab.com> Call-ID: [call_id] CSeq: [cseq] INVITE Contact: <sip:@[local_ip]:[local_port]> Max-Forwards: 70 P-Charging-Vector: icid-value="AyretyU0dm+6O2IrT5tAFrbHLso=023551024";icid-generated-at=192 .0.6.8;orig-ioi=home1.net P-Asserted-Identity: sip:[$calli...@ims.luqdlab.com Diversion: sip:[$call...@ims.luqdlab.com Allow: UPDATE,INVITE,ACK,CANCEL,BYE,PRACK,REFER,MESSAGE,INFO Content-Type: application/sdp Content-Length: [len] v=0 o=PCTEL 256 2 IN IP4 10.10.112.200 c=IN IP[media_ip_type] 172.21.141.141 m=audio 4030 RTP/AVP 0 8 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMU/8000 ]]> </send> <recv response="100" rrs="true" optional="true"> </recv> <recv response="180" rrs="true"> <!-- <action> <ereg regexp=".*" search_in="hdr" header="CSeq:" assign_to="CSeq" /> <ereg regexp=".*" search_in="hdr" header="RSeq:" assign_to="RSeq" /> </action> --> </recv> <!--send> <![CDATA[ PRACK [next_url] SIP/2.0 Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch] [routes] [last_From:] [last_To:] [last_Call-ID:] CSeq: [cseq] PRACK Contact: <sip:@[local_ip]:[local_port]> RAck:[$RSeq][$CSeq] Max-Forwards: 70 Content-Length: [len] ]]> </send> <!-- <recv response="200"> </recv--> --> <recv response="200" rrs="true"> <action> <ereg regexp=".*" search_in="hdr" header="Contact:" assign_to="contacturl"/> <ereg regexp=" <sip:.*@([0-9A-Za-z\.-]+):([0-9]+)>" search_in="var" check_it="true" assign_to="dummy,contact_host,contact_port" variable="contacturl" /> <assignstr assign_to="dummy" value=[$dummy] /> <setdest host="[$contact_host]" port="[$contact_port]" protocol="UDP" /> <!-- <setdest host="nscg-stdn.fsimsgroup0-000.scg03.ims.luqdlab.com" port="5060" protocol="UDP" /> --> </action> </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. --> <!-- Packet lost can be simulated in any send/recv message by --> <!-- by adding the 'lost = "10"'. Value can be [1-100] percent. --> <!--<nop> <action> <ereg regexp="sip:.*@([0-9A-Za-z\.]+)" search_in="hdr" header="Contact:" check_it="true" assign_to="host"/> <setdest host="[$host]" port="5060" protocol="UDP"/> </action> </nop> <nop> <action> <assignstr assign_to="url" value="[next_url]" /> <ereg regexp="sip:.*@([0-9A-Za-z\.]+):([0-9]+);transport=([A-Z]+)" search_in="var" check_it="true" assign_to="dummy,host,port,transport" variable="url" /> <setdest host="[$host]" port="[$port]" protocol="[$transport]" /> </action> </nop>--> <send> <![CDATA[ ACK [next_url] SIP/2.0 Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch] [routes] [last_From:] [last_To:] [last_Call-ID:] CSeq: 1 ACK Contact: <sip:@[local_ip]:[local_port]> Max-Forwards: 70 Content-Length: [len] ]]> </send> <sendCmd> <![CDATA[ Call-ID: [call_id] ]]> </sendCmd> <!-- or by adding a 'milliseconds = "value"' option here. --> <pause milliseconds="145000"/> <nop> <action> <setdest host="[$contact_host]" port="[$contact_port]" protocol="UDP" /> <!-- <setdest host="nscg-stdn.fsimsgroup0-000.scg03.ims.luqdlab.com" port="5060" protocol="UDP" /> --> </action> </nop> <send> <![CDATA[ BYE [next_url] SIP/2.0 Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch] [routes] [last_From:] [last_To:] [last_Call-ID:] CSeq: [cseq] BYE Max-Forwards: 70 Content-Length: [len] ]]> </send> <recv response="200"> </recv> <!--<recv request="BYE"> </recv> <send retrans="1000"> <![CDATA[ SIP/2.0 200 OK [last_Via:] [last_From:] [last_To:] [last_Call-ID:] [last_CSeq:] Contact: <sip:@[local_ip]:[local_port];transport=[transport]> Content-Length: [len] ]]> </send>--> <!--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="145000, 145050, 145100, 145150, 145200, 145250, 145300, 145350, 145400, 145500, 145600, 145700, 145800, 145900, 150000"/> </scenario> Thanks a lot for your time! Jinjia
------------------------------------------------------------------------------ Return on Information: Google Enterprise Search pays you back Get the facts. http://p.sf.net/sfu/google-dev2dev
_______________________________________________ Sipp-users mailing list Sipp-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sipp-users