#49 PRACK(100rel) problem with parallel forks

core (110)

Testing two phones both (Aastra's and Polycom's with PRACK support that cannot be disabled) behind a NAT registering to OpenSIPS with the same name. These tests were in support of PUA_BLA.

When an incoming call is made by an endpoint that also supports PRACK, (while both phones ring) only one of the two phones can be answered.

When an incoming call is made by an endpoint that does not support PRACK, both phones can be answered.

Tested using a SPA942 as the phone calling in (which allows PRACK(100rel) to be turned off) resolved the problem.

Tested with FreeSWITCH and it initially failed because (100rel was enabled by default). When I turned off 100rel the problem went away.

I believe the problem is caused when the PRACK is being sent to endpoints that have been parallel forked by OpenSIPS.

Also, if I only use one Aastra/Polycom (powering the other one down), the single phone is able to be answered all the time.

The following thread first caused me to look into OpenSIPS and PRACK a little closer:



  • Iñaki Baz Castillo

    Could you provide a SIP trace of the problem you have? I don't understand it.
    Anyway, note that to send a PRACK you must receive first a provisional response containing a "Contact" header since PRACK is an in-dialog message.

  • Bogdan-Andrei Iancu

    Hi Norm,

    I will review the traces you sent me and see what I come up with.


  • Bogdan-Andrei Iancu

    • assigned_to: nobody --> bogdan_iancu
  • Bogdan-Andrei Iancu

    Hi Norman,

    Looking at the trace you sent me on 11/06/2008 , i see the caller advertises (as supported) rel100. Indeed the call is forked to 2 callee devices and both (when sending 180) do require rel100, but the caller sends PRACK to only on branch.

    This is the problem - caller device is not properly replying to 100rel indication.


  • Bogdan-Andrei Iancu

    • status: open --> closed-invalid

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks