On Nov 27, 2009 at 13:49, Marius Zbihlei <Marius.Zbihlei(a)1and1.ro> wrote:
Sorry for top-posting, but my stupid web email client has no way to work with replies(OWA
I am looking at you)
I also thought at the caching solution and for me it seems it doesnt't work. We have
this common setup
Customer ----> Internet ------> Proxy(stateless) -----> Registrar
The proxy has 2 interfaces (mhomed active) and the Registrar is in the same subnet
(private) with the proxy.
When an REGISTER comes from a client it reaches the multihomed Proxy on the external
interface, then it goes onto
the internal interface and then to the register. We can cache here the (internal iface,
Registrar) pair , but when
when a reply from a Registrar comes in, the proxy can't know on what interface to
send the reply back to the customer
so it must do a socket()/connect()/getsockbyname(). Multiply this by let's say 300 k
customers and caching for me
doesn't sound that good. The same problem applies for INVITES and such.
It would take 16 (64 bit ipv4) or 28 bytes (64 bit ipv6) per cached ip
(using something similar with the blacklist).
300k * 28 => 8.5 Mb if all of them use ipv6.
For 1 milion addresses => 30Mb memory, which is not so much
I will continue to work on the patch. Thang you Andrei for the idea to register
get_out_socket from a module.
Andrei