[SR-Users] topos and PRACK problem

Sergey Basov sergey.v.basov at gmail.com
Fri Apr 28 10:58:53 CEST 2017


I do more tests now without PRACK.

I try to terminate SIP call with BYE before receiving 200 OK. It was
failed due to empty topos_d.b_contact.

I have update https://github.com/kamailio/kamailio/pull/1097

After this I have no problem with BYE after 180 and/or 183 and no
problem with PRACK.
Daniel, I will send you dump for problem with BYE after 180 Ringing in
private e-mail.

Thank you.

--
Best regards,
Sergey Basov                     e-mail: sergey.v.basov at gmail.com


2017-04-28 10:44 GMT+03:00 Daniel-Constantin Mierla <miconda at gmail.com>:
> I think the BYE for early dialog branches should follow same rules as
> with PRACK. If a 200ok was not received yet for INVITE, BYE can be sent
> to close a single branch, if the caller wants to terminate the entire
> call, then it has to send CANCEL at that moment.
>
> I haven't had the time to look at traces yet...
>
> Cheers,
> Daniel
>
> On 28.04.17 08:56, Sergey Basov wrote:
>> Sorry, this not regarding prack.
>>
>> This for correct contact for bye without 200 OK.
>>
>> In call-to-2-dest-bye-on-caller-side.pcap file, you can see correct
>> handling of the BYE request with contact from 180 Ringing
>> --
>> Best regards,
>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>
>>
>> 2017-04-28 9:52 GMT+03:00 Daniel-Constantin Mierla <miconda at gmail.com>:
>>> Hello,
>>>
>>> were the two branches both requiring prack?
>>>
>>> Cheers,
>>> Daniel
>>>
>>>
>>> On 28.04.17 08:47, Sergey Basov wrote:
>>>> Hi Daniel.
>>>>
>>>> I does not see problem with parallel forking to 2 destinations.
>>>>
>>>> I will send 2 dumps in private email.
>>>> --
>>>> Best regards,
>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>
>>>>
>>>> 2017-04-27 15:34 GMT+03:00 Sergey Basov <sergey.v.basov at gmail.com>:
>>>>> May be, but there is one more problem.
>>>>>
>>>>> I just test call to CSIPSimple softphone, it does not returm 183, it
>>>>> just return 180 Ringing.Call was not answered for some time, and I
>>>>> decide to terminate it from the caller side.
>>>>> BYE massege goes wrong, to recor-route value, as PRACK before, because
>>>>> contact from CSIPSimple side was not get from 180, call was not
>>>>> answered so 200 OK was not send.
>>>>> And topos doea not have contact value to send by to CSIPSimple.
>>>>>
>>>>> I will send dump to your private e-mail, it has real IP adreses.
>>>>>
>>>>> Thank you.
>>>>> --
>>>>> Best regards,
>>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>>
>>>>>
>>>>> 2017-04-27 15:12 GMT+03:00 Daniel-Constantin Mierla <miconda at gmail.com>:
>>>>>> Hello,
>>>>>>
>>>>>> although I just looked briefly at the patch, I think that works in case
>>>>>> of a single branch sent out, but if there is going to be a parallel
>>>>>> forking to two or more destinations, this is not going to work.
>>>>>>
>>>>>> Cheers,
>>>>>> Daniel
>>>>>>
>>>>>> On 27.04.17 13:33, Sergey Basov wrote:
>>>>>>> Hi, Daniel.
>>>>>>>
>>>>>>> Seems I found how to fix PRACK handling.
>>>>>>>
>>>>>>> It works for me.
>>>>>>>
>>>>>>> please lock at https://github.com/kamailio/kamailio/pull/1097
>>>>>>>
>>>>>>> Thank you.
>>>>>>> --
>>>>>>> Best regards,
>>>>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>>>>
>>>>>>>
>>>>>>> 2017-04-27 13:04 GMT+03:00 Sergey Basov <sergey.v.basov at gmail.com>:
>>>>>>>> Yes, you are right.
>>>>>>>>
>>>>>>>> But now before 200 OK there empty field b_contact.
>>>>>>>>
>>>>>>>> May be you does not populate it from contact in 183 Progress?
>>>>>>>>
>>>>>>>> I see that this field is not empty only after 200 OK with a Contact field.
>>>>>>>> --
>>>>>>>> Best regards,
>>>>>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>>>>>
>>>>>>>>
>>>>>>>> 2017-04-27 12:37 GMT+03:00 Daniel-Constantin Mierla <miconda at gmail.com>:
>>>>>>>>> Hello,
>>>>>>>>>
>>>>>>>>> thanks for troubleshooting further. I haven't got the time to look at
>>>>>>>>> the source code, but I expect that the b-leg attributes (contact, record
>>>>>>>>> routes) to be set on 200ok for dialog (topos_d). I think for PRACK, the
>>>>>>>>> routing information should be stored and taken from transaction (topos_t).
>>>>>>>>>
>>>>>>>>> Cheers,
>>>>>>>>> Daniel
>>>>>>>>>
>>>>>>>>> On 27.04.17 11:29, Sergey Basov wrote:
>>>>>>>>>> Hi, Daniel.
>>>>>>>>>>
>>>>>>>>>> I just done one more test topos with re-invite which comes from caller
>>>>>>>>>> to callee, same direction as PRACK.
>>>>>>>>>>
>>>>>>>>>> And I found that, in case of prack, b_contact field is empty...
>>>>>>>>>>
>>>>>>>>>> Please find attached debug=3 part of re-invite message.
>>>>>>>>>>
>>>>>>>>>> Hope it helps.
>>>>>>>>>> --
>>>>>>>>>> Best regards,
>>>>>>>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> 2017-04-27 10:30 GMT+03:00 Sergey Basov <sergey.v.basov at gmail.com>:
>>>>>>>>>>> Hi, Daniel
>>>>>>>>>>>
>>>>>>>>>>> Please look at attached part of debug=3 while receiving and parsing PRACK.
>>>>>>>>>>> At line 208 seems rr module does not find correct part of record_route
>>>>>>>>>>> which in DB consists from 2 parts.
>>>>>>>>>>>
>>>>>>>>>>> So at line 219 and later uac module cannot restore uris.
>>>>>>>>>>>
>>>>>>>>>>> Thank you.
>>>>>>>>>>> --
>>>>>>>>>>> Best regards,
>>>>>>>>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> 2017-04-26 17:08 GMT+03:00 Sergey Basov <sergey.v.basov at gmail.com>:
>>>>>>>>>>>> Thanks for workaround.
>>>>>>>>>>>>
>>>>>>>>>>>> But I will wait for you solution )
>>>>>>>>>>>>
>>>>>>>>>>>> I ready for testing )
>>>>>>>>>>>>
>>>>>>>>>>>> Thank you Daniel for your work!
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> Best regards,
>>>>>>>>>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> 2017-04-26 16:57 GMT+03:00 Daniel-Constantin Mierla <miconda at gmail.com>:
>>>>>>>>>>>>> Hello,
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On 26.04.17 14:53, Sergey Basov wrote:
>>>>>>>>>>>>>> Hi All.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I have just try to test topos with GW which requires PRACK.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> As you can see UA at packet 21 send PRACK to topos contact, but after
>>>>>>>>>>>>>> topos, on other kamailio side in PRACK request line present not
>>>>>>>>>>>>>> kontact but record-route header.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Can you fix it?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>> probably needs to look into the code. If you need a quick workaround,
>>>>>>>>>>>>> try to remove Supported header from INVITE so the callee should no
>>>>>>>>>>>>> longer Require 100rel.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Cheers,
>>>>>>>>>>>>> Daniel
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> Daniel-Constantin Mierla
>>>>>>>>>>>>> www.twitter.com/miconda -- www.linkedin.com/in/miconda
>>>>>>>>>>>>> Kamailio Advanced Training - May 22-24 (USA) - www.asipto.com
>>>>>>>>>>>>> Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>> --
>>>>>>>>> Daniel-Constantin Mierla
>>>>>>>>> www.twitter.com/miconda -- www.linkedin.com/in/miconda
>>>>>>>>> Kamailio Advanced Training - May 22-24 (USA) - www.asipto.com
>>>>>>>>> Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
>>>>>>>>>
>>>>>> --
>>>>>> Daniel-Constantin Mierla
>>>>>> www.twitter.com/miconda -- www.linkedin.com/in/miconda
>>>>>> Kamailio Advanced Training - May 22-24 (USA) - www.asipto.com
>>>>>> Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
>>>>>>
>>> --
>>> Daniel-Constantin Mierla
>>> www.twitter.com/miconda -- www.linkedin.com/in/miconda
>>> Kamailio Advanced Training - May 22-24 (USA) - www.asipto.com
>>> Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
>>>
>
> --
> Daniel-Constantin Mierla
> www.twitter.com/miconda -- www.linkedin.com/in/miconda
> Kamailio Advanced Training - May 22-24 (USA) - www.asipto.com
> Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bye-after-180-problem.pcap
Type: application/vnd.tcpdump.pcap
Size: 9880 bytes
Desc: not available
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20170428/b84d0ae8/attachment.pcap>


More information about the sr-users mailing list