Hi list,
We have a setup with 2 redundant stateful SER SIP-Servers with accounting.
For calls to the PSTN we have 2 ISDN-PRI gateways connected to different ISDN-PRI lines.
We need to implement a dynamic failover mechanism and load balancing.
a) Incoming calls: No problem, the PSTN switch takes care of that b) Outgoing calls: Both GWs are registered at both SERs; calls are usually relayed with "t_relay_to_udp(x.x.x.x, "5060");" But how can I implement a quick failover including load-distribution between those gatways? I.e. if I receive "busy here" or no response after a short period after the "invite", the call should be redirected to the other GW.
Thanks in advance for your help!
Best regards, Gerhard
__________________________________________________________________________________ Dieses Mail wurde vom Infotech SecureMail Service ueberprueft und fuer sicher befunden. Fuer weitere Informationen zu Infotech SecureMail Service waehlen Sie bitte: www.infotech.at/securemail/
This email has been scanned by Infotech SecureMail Service and it has been classified as secure. For more information on Infotech SecureMail direct your web browser to: www.infotech.at/securemail/
Gerhard Zweimueller wrote:
Hi list,
We have a setup with 2 redundant stateful SER SIP-Servers with accounting.
For calls to the PSTN we have 2 ISDN-PRI gateways connected to different ISDN-PRI lines.
We need to implement a dynamic failover mechanism and load balancing.
a) Incoming calls: No problem, the PSTN switch takes care of that b) Outgoing calls: Both GWs are registered at both SERs; calls are usually relayed with "t_relay_to_udp(x.x.x.x, "5060");" But how can I implement a quick failover including load-distribution between those gatways? I.e. if I receive "busy here" or no response after a short period after the "invite", the call should be redirected to the other GW.
Just make a failure_route for the outgoing calls. If the GW answers "486 busy", the script enters the failure route where you will send the call to the second GW.
Handling the "no response" scenario is much more complex - you can't to this with timers as they don't differentiate between "no response" or "180 Ringing" response.
regards, klaus