I'm not sure if I understand your scenario. A stateless proxy would need
a peer for hardware failures and "a bunch of servers" sounds expensive
and I'm not sure what you gain. Could you provide some details? (The
dispatcher module can be used for stateless proxy; using a SER for load
balancing. You can also use 302 REFER to divide load across registrars.
However, regardless how you do it, you need some routing between SER
servers to make sure that messages to a UA go through the SER server the
UA contacted as first hop).
g-)
Edson wrote:
Correct me if I'm wrong, but since SER is capable to handle tens or
hundreds of thousands of SIP messages per second, why not cut this
number down to thousands and compose a HA and Redundancy solution
combining some stateless proxy in front of a bunch of servers using
cache based (like in 2 -- MySQL cluster, p.ex.)? The stateless proxy
could have some local replication (two peers: one active and one
inactive) sharing a common IP (registered on SRV) for HA, and the
geographic issue could be achieved with a complete replication of this
set.
The down-point in this approach is that in a geographic switch there
is no guarantee that the clusters would be totally consistent between
the two sets. The fall can (and Murphy says it will) occur just
before, or in the middle, a big replication DB operation. But if You
can accomplish that than I see this as a good solution.
Comments?
Edson.
------------------------------------------------------------------------
*From:* serusers-bounces(a)lists.iptel.org
[mailto:serusers-bounces@lists.iptel.org] *On Behalf Of *Greger V. Teigre
*Sent:* sexta-feira, 7 de julho de 2006 06:49
*To:* G.Jacobsen
*Cc:* seruser List
*Subject:* Re: [Serusers] Global Failover Server
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 with save())
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:
http://www.iptel.org/drupal/failover_redundancy_and_scalability_overview
See also:
http://www.iptel.org/drupal/ser/wishlist
g-)
G.Jacobsen wrote:
Samuel,
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 ?
TIA
Gerry
-----Original Message-----
*From:* serusers-bounces(a)lists.iptel.org
<mailto:serusers-bounces@lists.iptel.org>
[mailto:serusers-bounces@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.
Samuel.
2006/7/5, Ritesh Jalan <ritesh.j(a)net4.in <mailto:ritesh.j@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(a)hotmail.com <mailto:ritesh_jalan@hotmail.com>
_______________________________________________
Serusers mailing list
Serusers(a)lists.iptel.org <mailto:Serusers@lists.iptel.org>
http://lists.iptel.org/mailman/listinfo/serusers
------------------------------------------------------------------------
_______________________________________________
Serusers mailing list
Serusers(a)lists.iptel.org <mailto:Serusers@lists.iptel.org>
http://lists.iptel.org/mailman/listinfo/serusers