On 16/04/2012 23:05, Khem Raj wrote:
On Mon, Apr 16, 2012 at 3:02 PM, Ed W<[email protected]> wrote:
OK, please see attached version 2 of my patch which I believe implements
this satisfactorarily
As before the motivation is to avoid making DNS queries when calling
getaddrinfo with a numerical IP address. Performance improves dramatically
in such situations
Does this solve your original problem ?
is there some testcase to go along with this for performance ?
Very much so
You can verify my exact performance issue by using ipset and creating a
bitmap ipset or simply adding an ipaddress or iprange into some ipset.
ipset calls getaddrinfo in order to convert arbitrary names to IP
address integers, including textual representations of ip addresses.
On uclibc this was previously triggering a dns lookup even for a text IP
representation (which is clearly unnecessary). Probably for many folks
this is only a minor performance issue, however, my router handles
multiple networks and we use ipsets to switch between networks as they
go down up - the upshot is that when the current network is down, the
resolver is not working and hence dns is extremely slow and ipset takes
around 60 secs to run just to switch us somewhere else. (It's also
devastating at boot where we have iptables lock down the network while
we build the ipsets - takes many mins to create a dozen ipsets...)
Perhaps an extreme example, but there should be a reduction in dns
lookups all round. Actually this exact case probably explains some
annoying excessive PPP demand dialup issues that I spotted under odd cases.
For simplicity, simply observe your DNS traffic, then run "ipset add
some_ips 1.2.3.4" and note random traffic without the patch, none with.
I hope simple inspection will also show that the change is reasonable?
Thanks
Ed W
_______________________________________________
uClibc mailing list
[email protected]
http://lists.busybox.net/mailman/listinfo/uclibc