[Freeswitch-users] (yet another?) freeswitch load balancer

Avi Marcus avi at avimarcus.net
Tue Dec 1 18:47:32 MSK 2015


I think what Regis M wants to know -- and I'm curious -- is how to
configure like so:

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.

The point of the statelessness is that if the floating IP is switched at *any
*moment, you don't lose *any *calls since it's "stateless" and the SIP
Dialog contains all the necessary information.

I'd really like to check this out since I am "all-in" to node.js and
kamailio seems rather obscure to me.


-Avi Marcus

On Tue, Dec 1, 2015 at 5:02 PM, Dave Horton <dave at dchorton.com> wrote:

> 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?)
>
> 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.
>
> 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.
>
> Dave
>
> On Dec 1, 2015, at 9:52 AM, Regis M <regis.freeswitch.org at tornad.net>
> wrote:
>
> What I need is to have  a frontal proxy with same config available on 2
> differents IPs.
>
> Both of them send request to the same Freeswitch based on config rules.
>
> Then, if I change the config and reload both proxy, I could use another
> Freeswitch without informing customers.
>
> The running calls could be lose.
>
> IP failover with no proxy and 1 freeswitch is not an option for me..
>
> The proxy need to act as nginx for web... He choose destination based on
> request rules..
>
>
> So for me I thnik I need a Stateless proxy. But I'm not interested by the
> call failover potential...
> But Your first definition sounds good for me..
>
> Regards,
>
>
> 2015-12-01 15:36 GMT+01:00 Dave Horton <dave at dchorton.com>:
>
>> When people talk about stateful or stateless there can be different
>> interpretations, so I will try to be specific:
>>
>> 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)
>>
>> 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.
>>
>> Dave
>>
>> On Dec 1, 2015, at 9:14 AM, Regis M <regis.freeswitch.org at tornad.net>
>> wrote:
>>
>> Hi Dave,
>>
>> Does your proxy could act as a stateless proxy or not ?
>> 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.
>>
>> Thanks
>>
>> Regards,
>>
>>
>> 2015-12-01 14:32 GMT+01:00 Dave Horton <dave at dchorton.com>:
>>
>>> 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.
>>>
>>>
>>> On Dec 1, 2015, at 8:20 AM, Vik Killa <vipkilla at gmail.com> wrote:
>>>
>>> Hi,
>>> I see this is described as a SIP Proxy but you are using the sofia SIP
>>> stack.
>>> Is this technically a B2BUA or a Proxy?
>>> Thanks,
>>> /V
>>>
>>> On Tue, Dec 1, 2015 at 8:14 AM, Dave Horton <dave at dchorton.com> wrote:
>>>
>>>> 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:
>>>>
>>>>
>>>> app.invite( function(req, res) {
>>>>    ...
>>>>     req.proxy({
>>>>        remainInDialog: false,
>>>>        handleRedirects: true,
>>>>        provisionalTimeout: '1s',
>>>>        destination: targets
>>>>     }, function(err) {
>>>>       if( err ) {
>>>>         console.error('Error proxying request: ', err) ;
>>>>       }
>>>>    }) ;
>>>> }) ;
>>>>
>>>>
>>>> Details here:
>>>>
>>>> http://davehorton.github.io/drachtio-fs-load-balancing-proxy/
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> _________________________________________________________________________
>>>> Professional FreeSWITCH Consulting Services:
>>>> consulting at freeswitch.org
>>>> http://www.freeswitchsolutions.com
>>>>
>>>> Official FreeSWITCH Sites
>>>> http://www.freeswitch.org
>>>> http://confluence.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
>>>
>>>
>>> _________________________________________________________________________
>>> Professional FreeSWITCH Consulting Services:
>>> consulting at freeswitch.org
>>> http://www.freeswitchsolutions.com
>>>
>>> Official FreeSWITCH Sites
>>> http://www.freeswitch.org
>>> http://confluence.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
>>>
>>>
>>> _________________________________________________________________________
>>> Professional FreeSWITCH Consulting Services:
>>> consulting at freeswitch.org
>>> http://www.freeswitchsolutions.com
>>>
>>> Official FreeSWITCH Sites
>>> http://www.freeswitch.org
>>> http://confluence.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
>>>
>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://confluence.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
>>
>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://confluence.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
>>
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://confluence.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
>
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://confluence.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/20151201/5788e43d/attachment-0001.html 


Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list