Maintained by: NLnet Labs

[Unbound-users] Unbound vs MS Resolver

Roland van Rijswijk - Deij
Mon Jun 16 08:50:15 CEST 2014


Hi Olaf, Carsten, (unbound users),

I only just saw this thread and would like to add to Carsten's results;
we have a student working on measuring energy efficiency of DNS
resolvers, who has done some interesting measurements. While there is
probably not a one-to-one correspondence between performance and energy
efficiency we did see some rather strange effects when running Unbound
on Windows Server 2012 that warrant further investigation.

Let me briefly explain his measurement setup: he used an instrumented
server model that has special probes inserted that measure the energy
consumption of most system components (power supply, HDUs, CPU, memory,
...). On this machine he performed repeated experiments where he plays
back a captured set of queries from a live DNS environment to three
different DNS resolver implementations:

- Microsoft built-in DNS
- BIND
- Unbound

He does this with MS Windows Server 2012 as underlying OS and has
repeated the experiment with Centos 6.5 as underlying OS (obviously, he
could not measure MS DNS on that ;-) ). He has measured both without
DNSSEC validation enabled and with DNSSEC validation enabled.

Briefly summarised he found the following:

- MS Windows 2012 baseline power consumption is significantly (~10%)
lower than Centos 6.5 on the same hardware

- MS DNS uses the least energy to process the query data set, followed
by BIND then Unbound on Windows 2012

- On Linux, with DNSSEC disabled BIND uses the least energy followed by
Unbound, with DNSSEC enabled both use about the same amount of energy

All tests were run on a single CPU core.

There is ony important "BUT" here: the measurements for Unbound on
Windows 2012 were extremely unreliable. Where he saw a steady power
consumption coupled with a steady CPU load for MS DNS and BIND, for
Unbound the picture is really garbled. Lots of small peaks in CPU load
(and conversely power consumption) made the measurements extremely
noisy. Unfortunately, he did not have time to get to the bottom of this,
but it seems to suggest that there is some underlying problem here. We
are hypothesising issues were Unbound clashes with the Windows scheduler
in some way, but haven't gotten any further than hypotheses. I'm unsure
whether Unbound is compiled to use libevent on Windows, if that is the
case then that may be worthwhile investigating as well.

Note that on CentOS we do not see this behaviour.

Bottom line: Carsten's results seem to point to Unbound performing
reasonably well on MS Windows 2012, but our student's observations seem
to suggest that something weird is happening when running Unbound on
Windows Server that may be worth investigating.

I plan to find some time to visit NLnet Labs with these results at some
point in the near future, if anybody from labs is planning on attending
the DNSSEC Workshop at ICANN next week give me a shout off list and we
can have a short discussion there.

Hope this helps!

Cheers,

Roland

-- 
-- Roland M. van Rijswijk - Deij
-- SURFnet bv
-- w: http://www.surfnet.nl/en/
-- t: +31-30-2305388
-- e: roland.vanrijswijk at surfnet.nl
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 4412 bytes
Desc: S/MIME Cryptographic Signature
URL: <https://unbound.nlnetlabs.nl/pipermail/unbound-users/attachments/20140616/b3914130/attachment.bin>