[Freeswitch-users] Strange issue with late negotiation

Flavio Goncalves flavio at sippulse.com
Fri May 24 23:27:36 MSD 2013


Hi Anthony,

It is not a retransmission, the CSEQ is much higher and the branch is
different. It is actually another transaction. The CSEQ of the first INVITE
is 103, the second INVITE is something bigger than 400000.  The biggest
issue here for us is not receiving the BYE. We had built a mechanism in the
proxy to send a BYE if not receiving the ACK in 5 seconds, but the ACK for
the REINVITE disables it. We will change the mechanism to accept only the
ACK for the first transaction, but anyway, I believe FS should have sent
the BYE. If this can be fixed (if actually is broken), it would help to
eliminate many billing issues when late negotiation is involved and the
client stops answering (caused by network failures or client overload).

Best regards,


Flavio E. Goncalves
CTO - SipPulse Routing and Billing Solutions for SIP
Phone: +55 48-3025-8590, +1 248-688-0960
VoIP: SIP:flavio at opensips.org,Skype:flaviogoncalves1
Linkedin: www.linkedin.com/in/flavioegoncalves
Twitter: www.twitter.com/asteriskguide



2013/5/24 Anthony Minessale <anthony.minessale at gmail.com>

> Its probably not a re-invite but a retransmission of the same one because
> it never got the response.
>
> That RFC is trying to say you can't send another invite while you are
> waiting for a reply to the current one but you can send other things like
> info.  The problem is when one side sends invite and the other end replies
> but the sender does not get that reply, they will keep sending the invite
> until it gives up.
>
>
> On Thu, May 23, 2013 at 3:38 PM, Flavio Goncalves <flavio at voffice.com.br>wrote:
>
>> Hello,
>>
>> I'm having a really strange issue on billing related to late negotiation.
>> The call end up hanged with no BYE.
>>
>> There is a dialer sending thousands of calls through and OpenSIPS to a
>> termination based on FreeSwitch. I have a SIP call flow as below. Some
>> times during the day, when the volume is high, the UAC drops some 200Ok
>>  and FS send a reinvite in the middle of the Initial transaction.
>>
>> ----INVITE ---------------   Proxy --INVITE ---------------> FS
>> <----200 OK --------------   Proxy <---200 OK- ------------- FS
>> <--REINVITE---------------   Proxy <-REINVITE--------------- FS
>> ---481 leg does not exit->   Proxy ---481------------------> FS
>> <-- ACK (REINVITE)--------   Proxy <-ACK(REINVITE)---------- FS
>> ----CANCEL --------------->  Proxy ---CANCEL --------------> FS
>> <---200 Ok ----------------  Proxy <----200 Ok ------------- FS
>>
>> FS is sending a reinvite before ACK comes from the client.
>>
>> I have two questions:
>>
>> 1) Is it valid to send a reinvite in the middle of an existing
>> transaction?
>>
>> According to the RFC3261 Section 14.
>>
>> Note that a UAC MUST NOT initiate a new INVITE transaction within a
>> dialog while another INVITE transaction is in progress in either
>> direction.
>>
>> 1. If there is an ongoing INVITE client transaction, the TU MUST
>>    wait until the transaction reaches the completed or terminated
>>    state before initiating the new INVITE.
>>
>> 2. If there is an ongoing INVITE server transaction, the TU MUST
>> wait until the transaction reaches the confirmed or terminated
>> state before initiating the new INVITE.
>>
>>
>> But it is confusing because just below it says the opposite.
>>
>> However, a UA MAY initiate a regular transaction while an INVITE
>> transaction is in progress.  A UA MAY also initiate an INVITE
>> transaction while a regular transaction is in progress.
>>
>>
>> 2. Shouldn't FS send a BYE after sending a 200Ok and not receiving the
>> ACK?
>>
>> If a UAS generates a 2xx response and never receives an ACK, it
>> SHOULD generate a BYE to terminate the dialog.
>>
>>
>> Best regards,
>>
>> Flavio E. Goncalves
>>
>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>>
>> 
>> 
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://wiki.freeswitch.org
>> http://www.cluecon.com
>>
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>>
>>
>
>
> --
> Anthony Minessale II
>
> FreeSWITCH http://www.freeswitch.org/
> ClueCon http://www.cluecon.com/
> Twitter: http://twitter.com/FreeSWITCH_wire
>
> AIM: anthm
> MSN:anthony_minessale at hotmail.com
> GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
> IRC: irc.freenode.net #freeswitch
>
> FreeSWITCH Developer Conference
> sip:888 at conference.freeswitch.org
> googletalk:conf+888 at conference.freeswitch.org
> pstn:+19193869900
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
> 
> 
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20130524/25c2f2c4/attachment.html 


Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users mailing list