[Serusers] Global Failover Server
Greger V. Teigre
greger at teigre.com
Fri Jul 7 11:48:48 CEST 2006
Yes, but this depends on your deployment setup and policies. Obviously,
you cannot support all features with all UAs. Three-way conferencing for
example. There's no guarantee that REFER and NOTIFYs work for three
random UAs from different vendors. There are still too many bugs around.
So, you need to say: If you have this and that UA, you will probably not
get three-way conferencing. Not much difference from saying: If you
have this and that UA, you may experience service outages.
There are several ways of creating server-side redundancy and
scalability. Unfortunately, none are trivial. There are three I have
heard have been successfully used in large-scale setups:
1. Cacheless usrloc with a mysql cluster as back-end DB combined with
implementation of the Path header (to find the registrar of a given UA).
No replication across servers
2. Multiple SER registrars, each with a standalone, local DB and where
SIP is used to replicate registrations. By storing replications from a
peer in a location_peer1 table and then lookup using this table, you can
route INVITEs to the registrar being able to pinhole the NAT in front of
a given UA
3. Each SER is connected to a single mysql DB cluster as in #1, but
since usrloc also is in memory (cacheless usrloc is not used),
replication is done between the SER servers and save_memory() is used to
store the location only in memory (the registrar updates the cluster
Each of these three can be combined with either:
a. call-id sticky front-end load balancer (commercial or modified LVS)
b. DNS SRV
c. Linux HA creating two and two peers
Only b) combined with either 1) or 3) or 2+c) can give geographic,
client and server-side redundancy and scalability.
Scalability and redundancy is sort of a pet project of mine... I would
like to see a simple, clear-documented and code-supported setup that
satisfies most common requirements. Currently I'm leaning against #2
(which actually can be implemented in vanilla SER 0.9.x, but would be
easier and better with built-in support). I'm thinking about a setup
where two and two servers are peers to eachother using Linux HA. Both
servers would have one active SER instance and one inactive ready for
taking over for the peer.
I have posted this overview to:
> Do you happen to know what percentage of UAs out there are really
> "Compliant" UAs ?
> My impression so far regarding SRV DNS records is that they are
> theoretically a nice feature but unfortunately almost useless since
> one needs to cater for those non-compliant UAs anyway. I would love to
> be convinced of the contrary.
> Can anyone supply real usage figures regarding compliant/non-compliant
> UAS ?
> -----Original Message-----
> *From:* serusers-bounces at lists.iptel.org
> [mailto:serusers-bounces at lists.iptel.org]*On Behalf Of *samuel
> *Sent:* Donnerstag, 6. Juli 2006 14:52
> *To:* Ritesh Jalan
> *Cc:* seruser List
> *Subject:* [Bulk] Re: [Serusers] Global Failover Server
> Look at RFC 3623.
> Cofigure two SRV entries in
> your DNS, one pointing to the UAS SERver and another to the UK server.
> "Compliant" UAs will try to contact the other proxy upon failure
> of their current one.
> 2006/7/5, Ritesh Jalan <ritesh.j at net4.in <mailto:ritesh.j at net4.in>>:
> Hi All
> Pls. guide me how can we implement failover on SIP Server
> located globally, Like one server in USA another in UK.
> Ritesh Jalan
> Mobile: 91-9818616329
> MSN: ritesh_jalan at hotmail.com <mailto:ritesh_jalan at hotmail.com>
> Serusers mailing list
> Serusers at lists.iptel.org <mailto:Serusers at lists.iptel.org>
> Serusers mailing list
> Serusers at lists.iptel.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the sr-users