<div dir="ltr">I think what Regis M wants to know -- and I'm curious -- is how to configure like so:<div><br></div><div>Set up your load balancer on two different machine, with a floating IP. When requests come in, it forwards them to the list of FS servers.<br></div><div><br></div><div>The point of the statelessness is that if the floating IP is switched at <i>any </i>moment, you don't lose <i>any </i>calls since it's "stateless" and the SIP Dialog contains all the necessary information.</div><div><br></div><div>I'd really like to check this out since I am "all-in" to node.js and kamailio seems rather obscure to me.</div><div><br></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr">-Avi Marcus</div></div></div>
<br><div class="gmail_quote">On Tue, Dec 1, 2015 at 5:02 PM, Dave Horton <span dir="ltr"><<a href="mailto:dave@dchorton.com" target="_blank">dave@dchorton.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">I’m not sure I completely understand your desired setup — when you say “same config available on two different IPs”, are you talking about having two freeswitch servers available as potential targets on two different IPs? Or the proxy running on a multi-homed host that has two different IPs? (Or two instances of the proxy running on different IPs but with the same config?)<div><br></div><div>In any case, to be a load-balancing proxy really means that you need to be at least transaction stateful — so I don’t think you are actually looking for a stateless proxy.</div><div><br></div><div>To the extent you want to modify the proxy to change destinations at any time (i.e. to switch new calls to a different freeswitch without informing customers), this proxy will let you do that. You simply would update the configuration file to add your new freeswitch server IP address and associated information, and (if desired) remove the old one. You do not need to restart anything either — changes like that to the config file are automatically noticed and taken into affect immediately.</div><span class="HOEnZb"><font color="#888888"><div><br></div></font></span><div><span class="HOEnZb"><font color="#888888">Dave</font></span><div><div class="h5"><br><div><div>On Dec 1, 2015, at 9:52 AM, Regis M <<a href="mailto:regis.freeswitch.org@tornad.net" target="_blank">regis.freeswitch.org@tornad.net</a>> wrote:</div><br><div><div dir="ltr">What I need is to have a frontal proxy with same config available on 2 differents IPs. <div><br></div><div>Both of them send request to the same Freeswitch based on config rules.<br></div><div><br></div><div>Then, if I change the config and reload both proxy, I could use another Freeswitch without informing customers.</div><div><br></div><div>The running calls could be lose.</div><div><br></div><div>IP failover with no proxy and 1 freeswitch is not an option for me..<br><br>The proxy need to act as nginx for web... He choose destination based on request rules..</div><div><br></div><div><br></div><div>So for me I thnik I need a <span style="font-size:12.8px">Stateless proxy. But I'm not interested by the call failover potential...</span><br>But Your first definition sounds good for me..</div><div><br></div><div>Regards,</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-12-01 15:36 GMT+01:00 Dave Horton <span dir="ltr"><<a href="mailto:dave@dchorton.com" target="_blank">dave@dchorton.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">When people talk about stateful or stateless there can be different interpretations, so I will try to be specific:<div><br></div><div>Call stateful (or stateless): meaning whether the proxy remains in the dialog after a successful INVITE transaction (e.g. to receive subsequent BYE message, in order to do accounting etc). With this proxy, you have a choice of whether to be call stateful or not (depends on setting of the ‘remainInDialog’ property to the req.proxy method)</div><div><br></div><div>Stateless proxy: an entity that does not maintain transaction state of client or server SIP transactions, simply forwards request. This proxy is _not_ a stateless proxy, because it needs to maintain transaction state in order to do things like handle temporary failures from one freeswitch and then land the call on another.</div><span><font color="#888888"><div><br></div><div>Dave</div></font></span><div><div><div><br><div><div>On Dec 1, 2015, at 9:14 AM, Regis M <<a href="mailto:regis.freeswitch.org@tornad.net" target="_blank">regis.freeswitch.org@tornad.net</a>> wrote:</div><br><div><div dir="ltr">Hi Dave,<div><br></div><div>Does your proxy could act as a stateless proxy or not ?</div><div>I'm looking for a stateless proxy, I had ever test your solution but haven't find the answer to this question during my test.</div><div><br></div><div>Thanks</div><div><br></div><div>Regards,</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-12-01 14:32 GMT+01:00 Dave Horton <span dir="ltr"><<a href="mailto:dave@dchorton.com" target="_blank">dave@dchorton.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">It is a proxy. I am using the sofia sip stack (specifically nta) which is capable of any type of sip processing, but this application uses it as a SIP proxy.<div><div><div><br></div><div><br><div><div>On Dec 1, 2015, at 8:20 AM, Vik Killa <<a href="mailto:vipkilla@gmail.com" target="_blank">vipkilla@gmail.com</a>> wrote:</div><br><div><div dir="ltr">Hi,<div>I see this is described as a SIP Proxy but you are using the sofia SIP stack.</div><div>Is this technically a B2BUA or a Proxy?</div><div>Thanks,<br>/V</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Dec 1, 2015 at 8:14 AM, Dave Horton <span dir="ltr"><<a href="mailto:dave@dchorton.com" target="_blank">dave@dchorton.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I’ve developed a nodejs-based freeswitch load balancer that may be of interest to those who prefer Javascript to configuration file-driven routing. Even better if you are a nodejs developer familiar with expressjs or connect, then you may find the nuts of it to be very simple:<br>
<br>
<br>
app.invite( function(req, res) {<br>
...<br>
req.proxy({<br>
remainInDialog: false,<br>
handleRedirects: true,<br>
provisionalTimeout: '1s',<br>
destination: targets<br>
}, function(err) {<br>
if( err ) {<br>
console.error('Error proxying request: ', err) ;<br>
}<br>
}) ;<br>
}) ;<br>
<br>
<br>
Details here:<br>
<br>
<a href="http://davehorton.github.io/drachtio-fs-load-balancing-proxy/" rel="noreferrer" target="_blank">http://davehorton.github.io/drachtio-fs-load-balancing-proxy/</a><br>
<br>
<br>
<br>
<br>
<br>
_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com/" rel="noreferrer" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org/" rel="noreferrer" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org/" rel="noreferrer" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com/" rel="noreferrer" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" rel="noreferrer" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" rel="noreferrer" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org/" rel="noreferrer" target="_blank">http://www.freeswitch.org</a></blockquote></div><br></div>
_________________________________________________________________________<br>Professional FreeSWITCH Consulting Services: <br><a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br><a href="http://www.freeswitchsolutions.com/" target="_blank">http://www.freeswitchsolutions.com</a><br><br>Official FreeSWITCH Sites<br><a href="http://www.freeswitch.org/" target="_blank">http://www.freeswitch.org</a><br><a href="http://confluence.freeswitch.org/" target="_blank">http://confluence.freeswitch.org</a><br><a href="http://www.cluecon.com/" target="_blank">http://www.cluecon.com</a><br><br>FreeSWITCH-users mailing list<br><a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br><a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br><a href="http://www.freeswitch.org/" target="_blank">http://www.freeswitch.org</a></div></div><br></div></div></div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com/" rel="noreferrer" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org/" rel="noreferrer" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org/" rel="noreferrer" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com/" rel="noreferrer" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" rel="noreferrer" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" rel="noreferrer" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org/" rel="noreferrer" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
_________________________________________________________________________<br>Professional FreeSWITCH Consulting Services: <br><a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br><a href="http://www.freeswitchsolutions.com/" target="_blank">http://www.freeswitchsolutions.com</a><br><br>Official FreeSWITCH Sites<br><a href="http://www.freeswitch.org/" target="_blank">http://www.freeswitch.org</a><br><a href="http://confluence.freeswitch.org/" target="_blank">http://confluence.freeswitch.org</a><br><a href="http://www.cluecon.com/" target="_blank">http://www.cluecon.com</a><br><br>FreeSWITCH-users mailing list<br><a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br><a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br><a href="http://www.freeswitch.org/" target="_blank">http://www.freeswitch.org</a></div></div><br></div></div></div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com/" rel="noreferrer" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org/" rel="noreferrer" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org/" rel="noreferrer" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com/" rel="noreferrer" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" rel="noreferrer" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" rel="noreferrer" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org/" rel="noreferrer" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
_________________________________________________________________________<br>Professional FreeSWITCH Consulting Services: <br><a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br><a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br><br>Official FreeSWITCH Sites<br><a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br><a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br><a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br><br>FreeSWITCH-users mailing list<br><a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br><a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br><a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a></div></div><br></div></div></div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" rel="noreferrer" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" rel="noreferrer" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" rel="noreferrer" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" rel="noreferrer" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" rel="noreferrer" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" rel="noreferrer" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" rel="noreferrer" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div></div>