On Wednesday 02 May 2007 08:33, Klaus Darilion wrote:
Hi Alex!
Without having done this: You can configure the SIP proxies as load
balancers too which distribute the load over all the proxy/registrars
(including itself).
I thought of that, but then every REGISTER needs to be forwarded to another
proxy to get the path info right. This result in a great amount of traffic
between the proxies and extra processing power. I want the REGISTER request
to be handled on the first host it arrives on. Then only some INVITE's need
to create inter-proxy traffic.
Another solution requires a new feature, which should
be easily
implemented: Openser already stores the socket on which the request was
received. Then, during lookup, this socket will be forced with an
implicit force_send_socket().
I already found the received socket in the location table, but couldn't find
any function which actually used it. The path field is used, but that can't
be filled without an extra hop adding the path info (or is there?). So maybe
I can use a database trigger to put the received socket info into the path
field (but then the path should be ignored when it is the localhost).
If either
- the forced send socket is accessIble via a pseudo variable
- during lookup() the socket info is exported as AVP
the request can be forwarded to the proxy which has the NAT binding.
So this is impossible with the current OpenSER? So everyone with multiple
registrars/proxies and NAT must use loadbalancers in front of them?
--
Greetings,
Alex Hermann