[asterisk-users] Multiple IAX2 Trunks Load balancing
Brian LaVallee
b.lavallee at globaltank.jp
Sun Dec 15 19:08:12 CST 2013
Are you looking for something like this?
Note: This will continuously go between the two trunks until the caller
hangs up, can be fixed by adding loop counter.
;
; extensions.conf
;
[LOADBALANCE]
exten => _X.,1,NoOp(Connect to least used trunk)
; - show active count
exten => _X.,n,NoOp(Calls:
${GROUP_COUNT(TRUNK01CNT)}/${GROUP_COUNT(TRUNK02CNT)} of
${MATH(${GROUP_COUNT(TRUNK01CNT)}+${GROUP_COUNT(TRUNK02CNT)},int)})
; - goto least used trunk
exten => _X.,n,GotoIf($[${GROUP_COUNT(TRUNK01CNT)} <
${GROUP_COUNT(TRUNK02CNT)}]?TRUNK02,${EXTEN},1:TRUNK01,${EXTEN},1)
;
;
[TRUNK01]
exten => _X.,1,NoOp(Using Trunk 01)
; - set trunk used counter
exten => _X.,n,Set(GROUP()=TRUNK01CNT)
; - dial trunk
exten => _X.,n,Dial(IAX/T01/${EXTEN})
; - add loop counter to stop infinite loop
exten => _X.,n,NoOp(Use next TRUNK02is congestion or chanunavial)
; - next trunk if CONGESTION
exten => _X.,n,GotoIf($["${DIALSTATUS}"="CONGESTION"]?TRUNK02,${EXTEN},1)
; - next trunk if CHANUNAVAIL
exten => _X.,n,GotoIf($["${DIALSTATUS}"="CHANUNAVAIL"]?TRUNK02,${EXTEN},1)
exten => _X.,n,Hangup()
;
;
[TRUNK02]
; - same as above
exten => _X.,1,NoOp(Using Trunk 02)
exten => _X.,n,Set(GROUP()=TRUNK02CNT)
exten => _X.,n,Dial(IAX/T02/${EXTEN})
exten => _X.,n,NoOp(Use next TRUNK01is congestion or chanunavial)
exten => _X.,n,GotoIf($["${DIALSTATUS}"="CONGESTION"]?TRUNK01,${EXTEN},1)
exten => _X.,n,GotoIf($["${DIALSTATUS}"="CHANUNAVAIL"]?TRUNK01,${EXTEN},1)
exten => _X.,n,Hangup()
;
; - end
On 12/14/13, 4:41 PM, Muhammad Usman wrote:
> Friends let me define the scenario please;
> Scenario:
> 2 asterisk servers (A & B) are connected using 05 IAX2 trunks between
> them. The machine A is running asterisk & Openvpn server in TUN mode
> (5 instances with difference IP addresses for clients). The machine B
> is running asterisk with 05 OpenVPN clients using 05 bandwidths. The
> IAX trunks are established between each pair of P-2-P ip address of
> machine A (The OPENVPN Server) & machine B (The Openvpn client).
> Requirement:
> Required dial plan configuration at machine A for incoming calls from
> VoIP Switch/VOS which can forward the calls to IAX2 trunks in round
> robin fashion like Load Balancing. If any trunk goes down it starts
> forwarding the traffic to other available trunks & when it gets UP the
> dialplan should perform as desired. Like L.B & Fail-over scenarios.
>
>
> On Fri, Dec 13, 2013 at 8:52 PM, Hans Witvliet <asterisk at a-domani.nl
> <mailto:asterisk at a-domani.nl>> wrote:
>
> On Fri, 2013-12-13 at 06:20 -0600, Don Kelly wrote:
> > On Fri, 2013-12-13 at 12:48 +0500, Muhammad Usman wrote:
> > > Hi - I have 2 Asterisk servers connected using 05 IAX2 trunks.
> I want
> > > to load balance incoming calls over IAX2 trunks. If any trunk goes
> > > down the calls traffic will be shared with other available trunks.
> > > When it gets Up the script is supposed to perform as desired
> i.e in
> > > load balance mode.
> >
> > > Thanks in advance.
> > >
> >
> > Hans said:
>
> >
> > Perhaps it is possible to do the L.B. at the O.S. or network
> level, and let
> > all trunks appear to asterisk to one single trunk.
> >
> > Don asks:
> >
> > What's the value of load balancing multiple IAX trunks between
> the same
> > system pair? What resources are being balanced?
> >
> ++++++++++
>
> Perhaps the O.P. can explain about his intentions...
>
> In some situations it makes sense though:
> If you have to connect two servers, and use different kind of
> infrastructure / multiple providers...
>
> hw
>
>
> --
> _____________________________________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
> New to Asterisk? Join us for a live introductory webinar every Thurs:
> http://www.asterisk.org/hello
>
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
> http://lists.digium.com/mailman/listinfo/asterisk-users
>
>
>
>
> --
> Regards:
> (Muhammad ????? )
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20131216/492607d8/attachment.html>
More information about the asterisk-users
mailing list