[xmppd-dev] New resolver

Matthias Wimmer m at tthias.eu
Wed Sep 10 10:50:57 CEST 2008


Hi!

I am currently writing new resolver code for jabberd14/xmppd, that 
should fix some problems existing in the current resolver ("dnsrv") 
code. The basic problem in current dnsrv is, that all requests are 
processed serially. Therefore if a DNS request is taking a long time all 
other requests arriving at the dnsrv component while this request is 
processed are delayed as well.
This problem is responsible for many dialback problems where it is time 
critical to resolve other domains as the connected server in a dialback 
connection will reject a connection if it could not verify it within a 
fixed amount of time (typically about one minute).

This new resolver will be able to work on all resolvings in parallel and 
problems like the above should be fixed then.

For using the new resolver (which should be available in trunk in some 
days), you will have to install lwresd (part of the bind package). 
lwresd is the light-weight resolver daemon, a tool that is specialised 
on doing high performance DNS resolving having support for many advanced 
DNS features like DNSsec. The new resolver component in jabberd14/xmppd 
will redirect the actual work to this lwresd and act as the gateway from 
the XMPP server to lwresd.

The old resolver code ("dnsrv") will stay in the server for now, so that 
the server administrators will have the choice to use the old code 
without the dependancy on lwresd or the new high performance code where 
they will have to install lwresd as well.


Matthias


More information about the dev mailing list