hardware requirements per hits

Bill Larson wllarso at swcp.com
Mon Aug 17 15:59:48 UTC 2009

Alans <batpower83 at yahoo.co.uk> said:

> @Matus: let me put it in this way, if I want to create a budget for next
> year for example, then I should know what upgrades I need for next year
> (estimated needs), and let's assume dns queries increase monthly by x hits,
> now, if I know how many hits will make me upgrade cpu and memory then I can
> find out my cpu and memory needs for next year, hope this explain to you 
> my question is not "usless", at least for me.
> I'll be happy if you tell me another way to know my needs for next year.

I won't necessarily go so far as to say this question is useless, but it is 
almost impossible to answer.

You aren't telling us what you current situation is; what you are seeing for 
a query load, whether you are running a server for authoritative data or a 
resolving server, if you are using DNSSEC, etc.  This is to say nothing 
about your current hardware; CPU, memory, network/Internet connectivity, 
etc.  Also, are your running anything else on the same platform as your DNS 

My best suggestion is to test your environment yourself.  Run "queryperf" 
(or, Nominum's "dnsperf", for authoritative servers, and "resperf", for 
caching resolvers, tools) to determine what sort of level your servers can 
support.  Then, compare this result to the level of service that you are 
currently seeing.  This will give you an idea of what level of service your 
systems can provide.  If the maximum performance cannot meet your 
expectations, then you need an upgrade.  If they do meed your expectations, 
then you are ok.  Simple enough.

But, some questions that only you can answer for your situation.  Who is 
querying your server?  What queries are you currently receiving and 
answering?  How are your servers currently performing?  What is the bottle 
neck that you are seeing?  Is it CPU?  Memory?  Disk I/O?  Network?  
(Bottleneck is sort of a bad term here.  A better phrase is "What part of 
the system is limiting your performance?")  How long does it take for your 
server to completely start AND is this a problem for you?  (More zones, and 
large zones, makes for a slower startup.  But, if it starts fast enough for 
you then it is acceptable.)

I used to run a major DNS server on a microVAX II handling 500 queries per 
second (a LONG time ago).  BIND doesn't necessarily require much CPU.  It 
can require lots of memory.  (And if you are running other services on the 
same system, then these other services have to share memory with your DNS 
server.)  Rarely, is disk I/O an issue, unless you are seeing excessive 
swapping/paging, which says you need more memory.  Network or Internet 
connectivity isn't normally an issue either (DNS traffic doesn't have to be 
excessive if your systems are reasonably configured.)  If you are using 
DNSSEC, or are planning on it, you can expect to use more CPU.

Again, all of these things are things that you can determine yourself by 
testing your server performance.  I remember a quote from somewhere a long 
time ago.  "If you don't know how your system is running now when things are 
good, how do you expect to be able to say what is causing a problem in the 
future when things are bad?"  (I suspect that this cam from "System 
Performance Tuning" by Mike Loukides, O'Reilly & Assc.  My copy is quite old 
but still useful.)  Know how your system is performing BEFORE there is a 

Bill Larson

More information about the bind-users mailing list