[OpenSIPS-Users] dialog replication

Vlad Patrascu vladp at opensips.org
Mon Mar 5 13:08:14 EST 2018


Hi Pasan,

You could have another OpenSIPS instance that exposes the service IP, in 
front of the 2 clustered HA nodes. Calls would first land on this box 
and then would be dispatched to one of the 2 floating IPs. You could for 
example hash over the From tag or Callid in order to send to the same IP.

Regards,

Vlad Patrascu
OpenSIPS Developer
http://www.opensips-solutions.com

On 01.03.2018 03:21, Pasan Meemaduma via Users wrote:
> Hi Vlad,
>
> Thanks for your response. I think I'll have to wait until 2.4 
> transaction replication come in to action if I am to go with anycast 
> ip. I didn't understand how it would solve with 2 moveable ips. how do 
> i make sure dialog will tie to a particular ip ?
>
>
> On Wednesday, 28 February 2018, 17:04, Vlad Patrascu 
> <vladp at opensips.org> wrote:
>
>
> Hi,
> Yes, you are correct, this is currently a limitation. But it could 
> also work in an "active/active" sort of setup if you have 2 movable 
> IPs and each dialog is tied to one of the IPs. Full anycast support 
> though is coming up in OpenSIPS 2.4.
> Regards,
> Vlad Patrascu
> OpenSIPS Developer
> http://www.opensips-solutions.com <http://www.opensips-solutions.com/>
> On 28.02.2018 04:46, Pasan Meemaduma via Users wrote:
>> Hi Vlad,
>>
>> On a second thought its how anycast should work, packets could get to 
>> the closest node so basically with 2.3.3 we can't replicate 
>> transactions across mulitple opensips servers ? dialog replication  
>> would only work for an active/passive setup doesn't it ?
>>
>>
>>
>> On Wednesday, 28 February 2018, 7:36, Pasan Meemaduma via Users 
>> <users at lists.opensips.org> <mailto:users at lists.opensips.org> wrote:
>>
>>
>> Hi Vlad,
>>
>> That explains the issue then, my sip listener ip is an anycast one, 
>> and for some weired reason replies for INVITE that leaves node2 
>> receive by node1 hence it can't create the dialog. I checked with 
>> node2 being down and recovered and calls init via node1 always 
>> received final reply hence dialog replication works. So it means my 
>> anycast configuration is broken right ? Thanks for you time to look 
>> in to it.
>>
>>
>> On Tuesday, 27 February 2018, 21:42, Vlad Patrascu 
>> <vladp at opensips.org> <mailto:vladp at opensips.org> wrote:
>>
>>
>> Hi Pasan,
>> I don't see anything in the logs or your cluster configuration which 
>> could indicate that the dialogs don't replicate. Are you sure that 
>> the problem is consistently reproducible and that the INVITE for the 
>> call in question receives a final reply? Dialogs are replicated when 
>> they get to the confirmed state, and judging from the logs, this 
>> doesn't appear to be happening for that call.
>> Regards,
>> Vlad Patrascu
>> OpenSIPS Developer
>> http://www.opensips-solutions.com <http://www.opensips-solutions.com/>
>> On 27.02.2018 04:15, Pasan Meemaduma via Users wrote:
>>> Hi Vlad,
>>>
>>> I have sent you the full debug logs as requested. Also 
>>> clusterer_list mi command gives following output when dialog 
>>> replication stopped working.
>>>
>>> node1>>opensipsctl fifo clusterer_list
>>> Cluster:: 1
>>>         Node:: 2 DB_ID=5 URL=bin:10.3.1.137:5566 Enabled=1 
>>> Link_state=Up Next_hop=2 Description=Node 2
>>>
>>>
>>>  node2>> opensipsctl fifo clusterer_list
>>> Cluster:: 1
>>>         Node:: 1 DB_ID=4 URL=bin:10.3.1.136:5566 Enabled=1 
>>> Link_state=Up Next_hop=1 Description=Node 1
>>> 1
>>>
>>>
>>>
>>> On Monday, 26 February 2018, 18:02, Vlad Patrascu 
>>> <vladp at opensips.org> <mailto:vladp at opensips.org> wrote:
>>>
>>>
>>> Hi,
>>> Can you send the full logs for both nodes from the time that node1 
>>> restarts onwards? Also, what is the output of 'clusterer_list' mi 
>>> command on the instances?
>>> Regards,
>>> Vlad Patrascu
>>> OpenSIPS Developer
>>> http://www.opensips-solutions.com <http://www.opensips-solutions.com/>
>>> On 26.02.2018 08:38, Pasan Meemaduma via Users wrote:
>>>> Hi Guys,
>>>>
>>>> Its me again :). I'm using dialog replication in opensips 2.3.3 and 
>>>> it appears it doesn't work after a node goes down and come back 
>>>> online. The recovered node
>>>> doesn't seems to receiving dialog info via binary interface.
>>>>
>>>> I have node1 and node2 with dialog replication on. everything works 
>>>> fine and if I shutdown node1 and bring it back online after a while
>>>> node2 doesn't send new call dialog info via binary interface.
>>>>
>>>> I have attach the debug trace from both nodes, if you need anything 
>>>> else let me know. I'm also using an anycast ip as the service ip.
>>>>
>>>>
>>>> on node2 for new call
>>>>
>>>> Feb 26 17:28:35 voip2-sip23b /usr/sbin/opensips[4703]: 
>>>> DBG:dialog:build_new_dlg: new dialog 0x7f188afd3bf8 
>>>> (c=ktQ0Pkdwz50qGYjED6Brpw..,f=sip:XXXXXXXXX at somedomain;transport=UDP,t=sip:+YYYYYYYYYYY at somedomain;transport=UDP,ft=2b161508) 
>>>> on hash 2317
>>>> Feb 26 17:28:35 voip2-sip23b /usr/sbin/opensips[4703]: 
>>>> DBG:dialog:init_leg_info: route_set , contact 
>>>> sip:XXXXXXXXX at 192.168.27.11:56419;transport=UDP 
>>>> <mailto:sip:XXXXXXXXX at 192.168.27.11:56419;transport=UDP>, cseq 2 
>>>> and bind_addr udp:10.3.3.1:5060
>>>> Feb 26 17:28:35 voip2-sip23b /usr/sbin/opensips[4703]: 
>>>> DBG:dialog:dlg_add_leg_info: set leg 0 for 0x7f188afd3bf8: 
>>>> tag=<2b161508> rcseq=<0>
>>>> Feb 26 17:28:35 voip2-sip23b /usr/sbin/opensips[4703]: 
>>>> DBG:dialog:link_dlg: ref dlg 0x7f188afd3bf8 with 3 -> 3 in h_entry 
>>>> 0x7f188afc3828 - 2317
>>>> Feb 26 17:28:35 voip2-sip23b /usr/sbin/opensips[4703]: 
>>>> DBG:dialog:new_dlg_val: inserting 
>>>> <exe-callid>=<45ad4c76-1abe-11e8-9410-831894b67d0c>
>>>> Feb 26 17:28:35 voip2-sip23b /usr/sbin/opensips[4703]: 
>>>> DBG:dialog:dlg_onreq: t hash_index = 47425, t label = 2069082013
>>>> Feb 26 17:28:35 voip2-sip23b /usr/sbin/opensips[4703]: 
>>>> DBG:dialog:dlg_update_contact: Updated dialog 0x7f188afd3bf8 
>>>> contact to <sip:XXXXXXXXX at 192.168.27.11:56419;transport=UDP> 
>>>> <mailto:sip:XXXXXXXXX at 192.168.27.11:56419;transport=UDP>
>>>> Feb 26 17:28:35 voip2-sip23b /usr/sbin/opensips[4703]: 
>>>> DBG:dialog:unref_dlg: unref dlg 0x7f188afd3bf8 with 1 -> 2 in entry 
>>>> 0x7f188afc3828
>>>> Feb 26 17:28:52 voip2-sip23b /usr/sbin/opensips[4702]: 
>>>> DBG:dialog:ref_dlg: ref dlg 0x7f188afd3bf8 with 1 -> 3
>>>> Feb 26 17:28:52 voip2-sip23b /usr/sbin/opensips[4702]: 
>>>> DBG:dialog:ref_dlg: ref dlg 0x7f188afd3bf8 with 1 -> 4
>>>> Feb 26 17:28:52 voip2-sip23b /usr/sbin/opensips[4702]: 
>>>> DBG:dialog:unref_dlg: unref dlg 0x7f188afd3bf8 with 1 -> 3 in entry 
>>>> 0x7f188afc3828
>>>> Feb 26 17:28:56 voip2-sip23b /usr/sbin/opensips[4711]: 
>>>> DBG:dialog:unref_dlg: unref dlg 0x7f188afd3bf8 with 1 -> 2 in entry 
>>>> 0x7f188afc3828
>>>> Feb 26 17:29:05 voip2-sip23b /usr/sbin/opensips[4711]: 
>>>> DBG:dialog:next_state_dlg: dialog 0x7f188afd3bf8 changed from state 
>>>> 1 to state 5, due event 4
>>>> Feb 26 17:29:05 voip2-sip23b /usr/sbin/opensips[4711]: 
>>>> DBG:dialog:dlg_onreply: dialog 0x7f188afd3bf8 failed (negative reply)
>>>> Feb 26 17:29:05 voip2-sip23b /usr/sbin/opensips[4711]: 
>>>> DBG:dialog:unref_dlg: unref dlg 0x7f188afd3bf8 with 1 -> 1 in entry 
>>>> 0x7f188afc3828
>>>> Feb 26 17:29:11 voip2-sip23b /usr/sbin/opensips[4711]: 
>>>> DBG:dialog:next_state_dlg: dialog 0x7f188afd3bf8 changed from state 
>>>> 5 to state 5, due event 1
>>>> Feb 26 17:29:11 voip2-sip23b /usr/sbin/opensips[4711]: 
>>>> DBG:dialog:unref_dlg: unref dlg 0x7f188afd3bf8 with 1 -> 0 in entry 
>>>> 0x7f188afc3828
>>>> Feb 26 17:29:11 voip2-sip23b /usr/sbin/opensips[4711]: 
>>>> DBG:dialog:unref_dlg: ref <=0 for dialog 0x7f188afd3bf8
>>>> Feb 26 17:29:11 voip2-sip23b /usr/sbin/opensips[4711]: 
>>>> DBG:dialog:destroy_dlg: destroying dialog 0x7f188afd3bf8
>>>> Feb 26 17:29:11 voip2-sip23b /usr/sbin/opensips[4711]: 
>>>> DBG:dialog:destroy_dlg: dlg expired or not in list - dlg 
>>>> 0x7f188afd3bf8 [2317:677053409] with clid 
>>>> 'ktQ0Pkdwz50qGYjED6Brpw..' and tags '2b161508' 'NULL'
>>>>
>>>>
>>>> on node1
>>>>
>>>> Feb 26 17:28:41 voip2-sip23a /usr/sbin/opensips[15820]: 
>>>> DBG:dialog:dlg_onroute: route param is 'd09.1e30b582' (len=12)
>>>> Feb 26 17:28:41 voip2-sip23a /usr/sbin/opensips[15820]: 
>>>> DBG:dialog:lookup_dlg: no dialog id=677053409 found on entry 2317
>>>> Feb 26 17:28:41 voip2-sip23a /usr/sbin/opensips[15820]: 
>>>> DBG:dialog:dlg_onroute: unable to find dialog for BYE with route 
>>>> param 'd09.1e30b582'
>>>> Feb 26 17:28:41 voip2-sip23a /usr/sbin/opensips[15822]: 
>>>> DBG:dialog:dlg_onroute: route param is 'd09.1e30b582' (len=12)
>>>> Feb 26 17:28:41 voip2-sip23a /usr/sbin/opensips[15822]: 
>>>> DBG:dialog:lookup_dlg: no dialog id=677053409 found on entry 2317
>>>> Feb 26 17:28:41 voip2-sip23a /usr/sbin/opensips[15822]: 
>>>> DBG:dialog:dlg_onroute: unable to find dialog for BYE with route 
>>>> param 'd09.1e30b582'
>>>> Feb 26 17:28:41 voip2-sip23a /usr/sbin/opensips[15822]: 
>>>> DBG:dialog:dlg_onroute: route param is 'd09.1e30b582' (len=12)
>>>> Feb 26 17:28:41 voip2-sip23a /usr/sbin/opensips[15822]: 
>>>> DBG:dialog:lookup_dlg: no dialog id=677053409 found on entry 2317
>>>> Feb 26 17:28:41 voip2-sip23a /usr/sbin/opensips[15822]: 
>>>> DBG:dialog:dlg_onroute: unable to find dialog for BYE with route 
>>>> param 'd09.1e30b582'
>>>> Feb 26 17:28:42 voip2-sip23a /usr/sbin/opensips[15820]: 
>>>> DBG:dialog:dlg_onroute: route param is 'd09.1e30b582' (len=12)
>>>> Feb 26 17:28:42 voip2-sip23a /usr/sbin/opensips[15820]: 
>>>> DBG:dialog:lookup_dlg: no dialog id=677053409 found on entry 2317
>>>> Feb 26 17:28:42 voip2-sip23a /usr/sbin/opensips[15820]: 
>>>> DBG:dialog:dlg_onroute: unable to find dialog for BYE with route 
>>>> param 'd09.1e30b582'
>>>> Feb 26 17:28:42 voip2-sip23a /usr/sbin/opensips[15820]: 
>>>> DBG:dialog:dlg_onroute: route param is 'd09.1e30b582' (len=12)
>>>> Feb 26 17:28:42 voip2-sip23a /usr/sbin/opensips[15820]: 
>>>> DBG:dialog:lookup_dlg: no dialog id=677053409 found on entry 2317
>>>>
>>>>
>>>> If I purposely take down node1 again and try to make a call I can 
>>>> see that it indicates the failure to replicate dialog info on the 
>>>> cluster as below,
>>>>
>>>> Feb 26 17:27:01 voip2-sip23b /usr/sbin/opensips[4701]: 
>>>> ERROR:dialog:replicate_dialog_updated: All destinations in cluster: 
>>>> 1 are down or probing
>>>> Feb 26 17:27:01 voip2-sip23b /usr/sbin/opensips[4701]: 
>>>> ERROR:dialog:replicate_dialog_updated: Failed to replicate updated 
>>>> dialog
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Users mailing list
>>>> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>>
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
>
>
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20180305/9f7eef61/attachment-0001.html>


More information about the Users mailing list