1

I have call flow:

   UAC(tcp)       SIPp(tcp)

    Regsiter (callid1)
     ---------------->
     401
     <---------------
    Regsiter
     ---------------->
     200 OK
     <---------------

    Subscribe (callid2)
     -------------->
     200 OK
    <---------------

The issue is when tcp is enabled, SUBSCRIBE is not received by the SIPp. I can see the wireshark UE is sending SUBSCRIBE.

Also tried with separating the flows(Registration and Subscribe) into two script and with the option -m 1, it didnt work either.

Scripts and log attached.

<?xml version="1.0" encoding="us-ascii"?>


<!--FILE 1   REGISER LEG-->

<scenario name="Init_Reg">
 <recv request="REGISTER" crlf="true" > 
 </recv>
 <send>
  <![CDATA[
SIP/2.0 401 Unauthorized
[last_Via:]
[last_From:]
[last_To:];tag=1234
[last_Call-ID:]
[last_CSeq:]
WWW-Authenticate:Digest realm="rer.com", nonce="o94MbTY+sd/jVd24yOzbEbIAdsfdAo98ObjI7tsQ=", opaque="drtysywwytewyweyewrterwer",algorithm=AKAv1-MD5, qop="auth"
Content-Length: 0
]]>
 </send>
  <recv request="REGISTER" crlf="true" >
    
 </recv>
 <send>
  <![CDATA[
SIP/2.0 200 OK
[last_Via:]
[last_From:]
[last_To:];tag=1234
[last_Call-ID:]
[last_CSeq:]
Contact: <sip:[local_ip]:[local_port];transport=[transport]>
Expires: 600000
P-Associated-URI: <sip:55@172.16.103.54;user=phone>
Service-Route: 172.16.103.54:5060;lr
Content-Length: 0
]]>
 </send>

</scenario>




<!--FILE 2       SUBSCRIBE LEG-->

<?xml version="1.0" encoding="us-ascii"?>
<scenario name="Init_Reg_Subscribe">
<recv request="SUBSCRIBE" crlf="true" >  
 </recv>
 <send>
  <![CDATA[
SIP/2.0 200 OK
[last_Via:]
[last_From:]
[last_To:];tag=1234
[last_Call-ID:]
[last_CSeq:]
Contact: <sip:[local_ip]:[local_port];transport=[transport]>
Expires: 0
Content-Length: 0
]]>
 </send>
</scenario>

<!--SIPp Commands-->

#!/bin/bash
#REGISTER bob
./sipp -m 1 172.16.104.54:5060 -p 5060  -i 10.204.21.125 -t t1 -sf TC_8_1_TCP.xml -trace_err
./sipp -m 1 172.16.104.54:5060 -p 5060 -i 10.204.21.125 -t t1  -sf TC_8_1_TCP_SUBS.xml -trace_err
Chirag Dhyani
  • 863
  • 11
  • 24
  • In Wireshark, is the SUBSCRIBE being sent to the right IP and port? – jsantander Mar 11 '15 at 09:56
  • yes, it is sent at correct port. if I used the same scripts for UDP, they work fine.- thx – Chirag Dhyani Mar 11 '15 at 14:39
  • Not sure, perhaps you need to look in wireshark what happens at TCP level (whether the connection is successful or it is rejected). Also perhaps there's some timing issue: you seem to execute both scripts sequentially. perhaps if you execute them simultaneously, on different windows? – jsantander Mar 11 '15 at 14:53

0 Answers0