1. You can replicate REGISTER messages, than every proxy has a complete
view of all registered proxy.
2. You could also use a special dial planes and user names: e.g. all
clients registered at SER start with 1, e.g. 12345. clients that
register at ser 2 begin with 2 in their usernames, e.g. 22345.
If SER1 receives a request for 2xxxx, it forwards the request to proxy 2.
btw: please always cc: to the list! (reply all)
regards,
Klaus
simple wrote:
Ok, maybe I did not express my question very clearly,
what I want is like this:
------ registered ---------
| C1 |-----in---->| SER1 |\
------ --------- \ -----------
/ | Internet |
------ registered ---------/ -----------
| C2 |-----in---->| SER2 |
------ ---------
SER1 and SER2 are in different places, now, I want C1 can call C2. Do I need a exclusive
public server to store user information database, and act like a redirect server, then,
SER1 can forward C1's INVITE to SER2.
Do you think there are other better solutions to support my demand? Thanks for your
help.
Regards!
Simple Li
----- Original Message -----
From: "Klaus Darilion" <klaus.mailinglists(a)pernau.at>
To: "simple" <simple(a)vlichina.com>om>; "Serusers"
<serusers(a)lists.iptel.org>
Sent: Tuesday, February 10, 2004 3:34 PM
Subject: Re: [Serusers] about distributed SER
>Details: ser caches user lcoations, that means, if it lookup() a user,
>ser does not query the database as the user lcoations are stored in RAM.
>New REGISTER are stored by save(). The writeback into the database can
>be done immediately (safe, but slower) or delayed (not so safe, but
>faster). more info on this can be found in the README of the userloc module.
>
>So, now you know the basics to build up your system, e.g:
>- 2 proxies + data bases
>
>--------------+ replicated REGISTER +------------+
>| active proxy| -------------------------> |backup proxy|
>--------------+ +------------+
> | |
> | |
> | |
> |data |data
> |base |base
> |write |write
> |through |through
> | |
> V V
>----------------+ +---------------+
>|active database| |backup database|
>----------------+ +---------------+
>
>if the active proxy or database fails, you have to switch over to the
>bakup combination (manually or autmatically).
>
>You could also use only one database, but than only the active proxy is
>allowed to save() to the database.
>
>You could also make the database failover transparent to the SIP proxy:
>2 databases with replication enabled, and if the main one fails, the
>backup db takes the IP address of the failed one.
>
>
>So, these are some theoretical solutions. I hope the guys which uses ser
>in production environments have some comments on this.
>
>regards,
>Klaus
>
>PS: always CC to the list
>
>
>
>
>
>
>
>
>
>simple wrote:
>
>>Thanks for your so quick reply, I still have a question, can you give a detail of
the synchronization of several proxies? thanks!
>>
>>Simple Li
>>
>>
>>----- Original Message -----
>>From: "Klaus Darilion" <klaus.mailinglists(a)pernau.at>
>>To: "simple" <simple(a)vlichina.com>
>>Cc: <serusers(a)lists.iptel.org>
>>Sent: Monday, February 09, 2004 6:30 PM
>>Subject: Re: [Serusers] about distributed SER
>>
>>
>>
>>
>>>Hi can use the several proxies and every proxy uses its own database for
>>>uerlocation. The keep the userlocation consistent, you can use the
>>>register() function to synchronize the several proxies.
>>>
>>>klaus
>>>
>>>simple wrote:
>>>
>>>
>>>>Dear sir,
>>>> I have an idea to use SER as SIP proxy in many different places,
>>>>different clients register in defferent SER, there may be a centralized
>>>>user information of all these clients, may be not, and all these clients
>>>>can make a call to each other. So, my question is if there has
>>>>an example used like this, otherwise, how can we make some changes to
>>>>make this happen.
>>>>
>>>>Thanks!
>>>>
>>>>Simple Li
>>>>
>>>>
>>>>
>>>>------------------------------------------------------------------------
>>>>
>>>>_______________________________________________
>>>>Serusers mailing list
>>>>serusers(a)lists.iptel.org
>>>>http://lists.iptel.org/mailman/listinfo/serusers
>>
>>>