Hi, Olle!

Yes, the offer&answer should be taken by one single node. How it internally works is we compute a hash of the callid of the call and based on that hash, and we consider that hash a random value to pick one available server. This means that as long as the available list does not change, the same server will be always picked. If however the list changes, even the order of the elements in the list change, a different node might get chosen. This has been fixed in OpenSIPS 3.2 by the rtp_relay module[1].

Setting a 0 weight for a node will do what you said - will be used only in case all the other non-0 weighted nodes were tried. All you need to do is to provision in the database, or in the script, the weights.

[1] https://opensips.org/docs/modules/3.2.x/rtp_relay.html

Best regards,

Răzvan Crainea
OpenSIPS Core Developer / SIPhub CTO
http://www.opensips-solutions.com / https://www.siphub.com

On 10/6/23 13:10, [email protected] wrote:
Hi we have seen an issue with rtpengine module in 2.4.

We ran a setup with two  opensips edge proxies  each having a  local rtpengine running on it.

When we start using the rtpengines in a cluster, we saw that some commands perhaps in  1-2% of the calls are send to the wrong rtpengine:

e.g rtpengine_offer() is send to rtpengine instance 1 but rtpengine_anser() is send to instant 2 both from same opensips instance.

I wonder if this is a known issue or what might cause this?

Our solution for know is to only use the local rtpengine , but I would like the cluster up for redundancy, and this leads to my next question:

Can you configure with fifo commands so a node is enabled but have weight 0 , and is only used in case the primary node fails?

BR/Olle


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

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

Reply via email to