DNS Latency and Performance Test Tools

DNS Latency is the #1 “Key Performance Indicator” (KPI) for a DNS system’s success. This DNS Latency and Performance Test Tools document is provided to help Operators and others deploy effective DNS Resolver (rDNS), DNS Authoritative (aDNS), and other DNS Architectures. The following are tools that can be used to monitor, test, and troubleshoot DNS latency through DNS Resolvers Architectures and DNS Authoritative Architectures.

  • Domain Name Speed Benchmarkhttps://www.grc.com/dns/benchmark.htm – I’ve seen several big SPs use this tool in their NOC to monitor the DNS resolver clusters. They take an old workstation and set it up to run the queries from the customer’s side of the resolvers.
  • DNS Performance Testhttp://www.ghacks.net/2011/01/20/dns-performance-test/ – I’ve never used this one, but others have said it is useful for troubleshooting DNS issues.
  • namebenchhttps://code.google.com/p/namebench/. This is a “sneaky” tool from Google that is trying to get people to use Google’s 8.8.8.8 DNS resolvers. I like the test to see if “censorship” is happening on your DNS resolvers. 🙂
  • DNSPERF – This is the tool I’ve used in the past to do DNS latency benchmarking in the lab. Still, works. It is “scriptable” – allowing for a lab person to set up automated test. Some people use to monitor their big DNS resolvers (AT&T is one example). http://linux.die.net/man/1/dnsperf 

Web-based tools. There are also tools that are web-based that allow you to test the DNS lookup latency:

DNS Testing Methods

Thousand Eye’s  – How DNS+ Server Latency tests work 

This is a testing model that puts test three elements:

  1. Test the latency between the stub resolver (the ThousandEyes probe) and the DNS Resolver. 
  2. Test the recursion between the DNS Resolver and the DNS Authority.
  3. Test the internal DNS Resolver delays.

The value is an end-to-end value. If the objective is to explore the path optimization between the DNS Stub (the client) and the DNS Resolver, then a cache hit would be used (for example one of the DNS Root domains).