Subject: spcdns

spcdns

From: Pavel Simerda <psimerda_at_redhat.com>
Date: Fri, 29 Nov 2013 03:54:59 -0500 (EST)

----- Original Message -----
> I used to love C-ares, but I played around with SPCDNS and found it much more
> easily embedded within a highly threaded application,

Please see also:

http://c-ares.haxx.se/mail/c-ares-archive-2013-11/0003.shtml

> especially with no
> enforced callback mechanism. I have to do the retries and timeout detection
> myself, but I also have much better visibility into statistics on dropped
> and malformed packets. By putting DNS queries into a queue and having
> per-DNS front threads pull from the queue, load balancing becomes very easy.
> If a DNS is unhealthy, it quits pulling; no other complexity is needed to
> skip sending to unhealthy servers. And so on.

Your mileage may vary. Depends on your needs. But a typical network application IMO just needs to connect to services, listen on ports and optionally retrieve a couple of security-related DNS records. For that purpose, not strictly related to DNS, I'm working on the following library:

https://sourceware.org/git/?p=netresolve.git;a=blob;f=README;hb=HEAD

It looks like it's (or at least its basic usage is) directly at the opposite side of abstraction scale than spcdns, c-ares being in the middle. Sometimes it might be better to have a bit more coordination between the project but most times I couldn't achive it because of lack of interest in the individual projects. So I'm at least trying to get things working reasonably at the API level.

Cheers,

Pavel
Received on 2013-11-29