stuck dialogs on proxy thru b2bua

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

stuck dialogs on proxy thru b2bua

thrillerbee
I've setup several OpenSIPS proxies (keeping track of dialogs,acc,etc.) behind a OpenSIPS B2BUA (to implement topology hiding - nothing else).
I'm currently using version 1.6.3 on both the proxy & b2bua.  I updated the b2bua modules from svn yesterday.

Certain dialogs "hang" because of how the B2BUA handles an inappropriate response to an INVITE in a never-established (canceled) dialog coupled with the proxy establishing a dialog after a CANCEL has been processed.  

After the initial call attempt is canceled, the upstream carrier responds with a 200 OK to the INVITE.  The B2BUA sends that back to the OpenSIPS proxy.  The OpenSIPS proxy creates a dialog even though the INVITE has been canceled.  Soon afterwards, a BYE is received from upstream but the B2BUA does not send that back to the proxy.  As a result, the dialog hangs (until the timeout is reached).  I've tried to show the call flow below:

proxy          b2bua         carrier

----- INV ----->
<---- 100 ------
                ------ INV ---->
                <----- 100 -----
                <----- 183 -----
<---- 183 ------
--- CANCEL ---->
<- 200(cancel)--
                --- CANCEL ---->
                <- 200(cancel)--
                <- 200(invite)--
<- 200(invite)--
                <- 200(invite)--
<- 200(invite)--
                <- 200(invite)--
<- 200(invite)--
                <- 200(invite)--
<- 200(invite)--
<- 200(invite)--
<- 200(invite)--
<- 200(invite)--
<- 200(invite)--
                <----- BYE -----
<- 200(invite)--
                <----- BYE -----
<- 200(invite)--

I'm hoping I'm doing something stupid in my implementation that could cause this behavior.  Thanks for any help that might resolve this issue.



_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: stuck dialogs on proxy thru b2bua

Anca Vamanu-2
Hi,

I made some fixes regarding some similar cases - BYE not being transmitted on the other side, but only in trunk now. I will make the backport now and let you know when it is done.

Regards,
-- 
Anca Vamanu
www.voice-system.ro


On 10/06/2010 07:45 PM, thrillerbee wrote:
I've setup several OpenSIPS proxies (keeping track of dialogs,acc,etc.) behind a OpenSIPS B2BUA (to implement topology hiding - nothing else).
I'm currently using version 1.6.3 on both the proxy & b2bua.  I updated the b2bua modules from svn yesterday.

Certain dialogs "hang" because of how the B2BUA handles an inappropriate response to an INVITE in a never-established (canceled) dialog coupled with the proxy establishing a dialog after a CANCEL has been processed.  

After the initial call attempt is canceled, the upstream carrier responds with a 200 OK to the INVITE.  The B2BUA sends that back to the OpenSIPS proxy.  The OpenSIPS proxy creates a dialog even though the INVITE has been canceled.  Soon afterwards, a BYE is received from upstream but the B2BUA does not send that back to the proxy.  As a result, the dialog hangs (until the timeout is reached).  I've tried to show the call flow below:

proxy          b2bua         carrier

----- INV ----->
<---- 100 ------
                ------ INV ---->
                <----- 100 -----
                <----- 183 -----
<---- 183 ------
--- CANCEL ---->
<- 200(cancel)--
                --- CANCEL ---->
                <- 200(cancel)--
                <- 200(invite)--
<- 200(invite)--
                <- 200(invite)--
<- 200(invite)--
                <- 200(invite)--
<- 200(invite)--
                <- 200(invite)--
<- 200(invite)--
<- 200(invite)--
<- 200(invite)--
<- 200(invite)--
<- 200(invite)--
                <----- BYE -----
<- 200(invite)--
                <----- BYE -----
<- 200(invite)--

I'm hoping I'm doing something stupid in my implementation that could cause this behavior.  Thanks for any help that might resolve this issue.


_______________________________________________ Users mailing list [hidden email] http://lists.opensips.org/cgi-bin/mailman/listinfo/users

_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: stuck dialogs on proxy thru b2bua

Anca Vamanu-2
Hi,

I have just made the commit, please update your code. Let me know if you still see this problem.

Regards,
-- 
Anca Vamanu
www.voice-system.ro


On 10/07/2010 10:52 AM, Anca Vamanu wrote:
Hi,

I made some fixes regarding some similar cases - BYE not being transmitted on the other side, but only in trunk now. I will make the backport now and let you know when it is done.

Regards,
-- 
Anca Vamanu
www.voice-system.ro


On 10/06/2010 07:45 PM, thrillerbee wrote:
I've setup several OpenSIPS proxies (keeping track of dialogs,acc,etc.) behind a OpenSIPS B2BUA (to implement topology hiding - nothing else).
I'm currently using version 1.6.3 on both the proxy & b2bua.  I updated the b2bua modules from svn yesterday.

Certain dialogs "hang" because of how the B2BUA handles an inappropriate response to an INVITE in a never-established (canceled) dialog coupled with the proxy establishing a dialog after a CANCEL has been processed.  

After the initial call attempt is canceled, the upstream carrier responds with a 200 OK to the INVITE.  The B2BUA sends that back to the OpenSIPS proxy.  The OpenSIPS proxy creates a dialog even though the INVITE has been canceled.  Soon afterwards, a BYE is received from upstream but the B2BUA does not send that back to the proxy.  As a result, the dialog hangs (until the timeout is reached).  I've tried to show the call flow below:


_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: stuck dialogs on proxy thru b2bua

thrillerbee
Anca,

After upgrade, the b2b_logic module will not initialize:

/usr/local/sbin/opensips[12083]: ERROR:b2b_logic:mod_init: DB_URL parameter not set
/usr/local/sbin/opensips[12083]: ERROR:core:init_mod: failed to initialize module b2b_logic
/usr/local/sbin/opensips[12083]: ERROR:core:main: error while initializing modules

Does it require access to a db now?

Thanks.

On Thu, Oct 7, 2010 at 3:35 AM, Anca Vamanu <[hidden email]> wrote:
Hi,

I have just made the commit, please update your code. Let me know if you still see this problem.


Regards,
-- 
Anca Vamanu
www.voice-system.ro


On 10/07/2010 10:52 AM, Anca Vamanu wrote:
Hi,

I made some fixes regarding some similar cases - BYE not being transmitted on the other side, but only in trunk now. I will make the backport now and let you know when it is done.

Regards,
-- 
Anca Vamanu
www.voice-system.ro


On 10/06/2010 07:45 PM, thrillerbee wrote:
I've setup several OpenSIPS proxies (keeping track of dialogs,acc,etc.) behind a OpenSIPS B2BUA (to implement topology hiding - nothing else).
I'm currently using version 1.6.3 on both the proxy & b2bua.  I updated the b2bua modules from svn yesterday.

Certain dialogs "hang" because of how the B2BUA handles an inappropriate response to an INVITE in a never-established (canceled) dialog coupled with the proxy establishing a dialog after a CANCEL has been processed.  

After the initial call attempt is canceled, the upstream carrier responds with a 200 OK to the INVITE.  The B2BUA sends that back to the OpenSIPS proxy.  The OpenSIPS proxy creates a dialog even though the INVITE has been canceled.  Soon afterwards, a BYE is received from upstream but the B2BUA does not send that back to the proxy.  As a result, the dialog hangs (until the timeout is reached).  I've tried to show the call flow below:


_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users



_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: stuck dialogs on proxy thru b2bua

Anca Vamanu-2
Hi,

Yes it does now, I have backported the db persistence from trunk today. You need to install two tables also - use the script in scripts/mysql/b2b-create.sql

Regards,
Anca

On 10/07/2010 05:21 PM, thrillerbee wrote:
Anca,

After upgrade, the b2b_logic module will not initialize:

/usr/local/sbin/opensips[12083]: ERROR:b2b_logic:mod_init: DB_URL parameter not set
/usr/local/sbin/opensips[12083]: ERROR:core:init_mod: failed to initialize module b2b_logic
/usr/local/sbin/opensips[12083]: ERROR:core:main: error while initializing modules

Does it require access to a db now?

Thanks.

On Thu, Oct 7, 2010 at 3:35 AM, Anca Vamanu <[hidden email]> wrote:
Hi,

I have just made the commit, please update your code. Let me know if you still see this problem.


Regards,
-- 
Anca Vamanu
www.voice-system.ro


On 10/07/2010 10:52 AM, Anca Vamanu wrote:
Hi,

I made some fixes regarding some similar cases - BYE not being transmitted on the other side, but only in trunk now. I will make the backport now and let you know when it is done.

Regards,
-- 
Anca Vamanu
www.voice-system.ro


On 10/06/2010 07:45 PM, thrillerbee wrote:
I've setup several OpenSIPS proxies (keeping track of dialogs,acc,etc.) behind a OpenSIPS B2BUA (to implement topology hiding - nothing else).
I'm currently using version 1.6.3 on both the proxy & b2bua.  I updated the b2bua modules from svn yesterday.

Certain dialogs "hang" because of how the B2BUA handles an inappropriate response to an INVITE in a never-established (canceled) dialog coupled with the proxy establishing a dialog after a CANCEL has been processed.  

After the initial call attempt is canceled, the upstream carrier responds with a 200 OK to the INVITE.  The B2BUA sends that back to the OpenSIPS proxy.  The OpenSIPS proxy creates a dialog even though the INVITE has been canceled.  Soon afterwards, a BYE is received from upstream but the B2BUA does not send that back to the proxy.  As a result, the dialog hangs (until the timeout is reached).  I've tried to show the call flow below:


_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


_______________________________________________ Users mailing list [hidden email] http://lists.opensips.org/cgi-bin/mailman/listinfo/users


-- 
Anca Vamanu
www.voice-system.ro

_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users