Phone: (469) 634-4200

dsTest, Developing Solutions, DNS Testing

dsTest supports performance testing of the DNS network.  With our IP Client simulators, your can initiate DNS queries at a programmable and sustainable rate to test the capacity of DNS server(s).  The IP Client nodes can initiate DNS Query events with configurable rates and response timeouts.  Up to 1000 IP Clients can be specified, with queries initiated toward the DNS server network on a round-robin fashion.

DNS tests can be configured for validation of query responses, supporting validation of DNS queries by IP address or by a user configurable string to represent interim responses which do not result in the ending IP address.

Implementation

Validation Functionality

Validation is disabled by default.  It must be enabled for each specific request type.  Validation will end on the first response whether it’s an IP Address, text string, or Domain Name unless the resolve to IP address element is specified.

An IP address can be specified for validation for a each request which can result in one or more IP address answers.  If the specified IP address is found in any of the IP address answers then validation is successful for the request.

If the request does not resolve to an IP address, a user configurable string can be specified for each request for Domain Name or text string validation.  Depending on the request type, there may be more than one answer in a response.  The answer selected will be the first, or will be selected based on assessment of preferences, weight, or priority if that information is supplied.

The user configurable string will be validated against the selected answer, and the request chain will be completed.  If the resolve to IP address element is enabled, no validation will occur until the request chain results in an IP address response (only valid for requests which actually end in an IP address answer).

If validation is desired at each intermediate response in a long request chain then each intermediate request must be specified in the test without the use of the resolve to IP address element.

Examples of validation options for each DNS Request Type:

DNS Request Type: A (IPv4) and AAAA (IPv6)
The response will be in the form of an  IP address which will be compared to the user configurable expected IP address in the test.  This type will ignore the resolve to IP address element.

DNS Request Type: PTR (Domain Name Pointer)
The response will be in the form of a Domain Name which will be compared to the user configurable expected string answer in the test.  This type will ignore the resolve to IP address element.

DNS Request Type: NS (Authoritative Name Server)
The response will be in the form of a Domain Name.  If there are multiple Domain Name answers in the response, only the first one will be chosen. This Domain Name will be immediately compared to the user configurable expected string answer in the test.  If validation occurs at this point, the query will be complete.  If the resolve to IP address element is enabled, the Domain Name will not be validated.  Instead, the request will continue until it’s resolved to an IP address which will be compared to the specified IP address in the test.

DNS Request Type: MX (Mail Exchange)
The response will be in the form of a Domain Name with a preference value.  If there are multiple Domain Name answers in the response, only the one with the lowest preference value will be chosen.  This Domain Name will be immediately compared to the user configurable expected string answer in the test.  If validation occurs at this point, the query will be complete.  If the resolve to IP address element is enabled, the Domain Name will not be validated.  Instead, the request will continue until it’s resolved to an IP address which will be compared to the specified IP address in the test.

DNS Request Type: TXT (Text Strings)
The response will be in the form of a text string which will be compared to the user configurable expected string answer in the test.  This type will ignore the resolve to IP address element.

DNS Request Type: SRV (Service Record)
The response will be in the form of a Domain Name with priority and weight values.  If there are multiple Domain Names answers in the response, the one with the lowest priority and highest weight will be chosen.  This Domain Name will be immediately compared to the user configurable expected string answer in the test.  If validation occurs at this point, the query will be complete. If the resolve to IP address element is enabled, the Domain Name will not be validated.  Instead, the request will continue until it’s resolved to an IP address which will be compared to the specified IP address in the test.

DNS Request Type: NAPTR (Naming Authority Pointer)
The response can have a replacement string or a regular expression which can result in a text string or potentially another request Type such as SRV.  The response will have an order and preference value. If there are multiple answers in the response, the one with the lowest order and lowest preference will be chosen.  The resulting text string will be immediately compared to the user configurable expected string answer in the test. If validation occurs at this point, the query will be complete.  If the resolve to IP address element is enabled, the text string will not be validated.  Instead, the request will continue until it’s resolved to an IP address which will be compared to the specified IP address in the test.

DNS Request Type: CNAME (Canonical Name for an alias)
The response will be in the form of a Domain Name.  If there are multiple Domain Name answers in the response, only the first one will be chosen.  This Domain Name will be immediately compared to the user configurable expected string answer in the test.  If validation occurs at this point, the query will be complete.  If the resolve to IP address element is enabled, the Domain Name will not be validated.  Instead, the request will continue until it’s resolved to an IP address which will be compared to the specified IP address in the test.

Both ANSI and ITU networks types are supported.

A complete set of events that can be generated with the dsTest DNS Application can be found here.

Protocols Supported:

  • UDP
  • TCP
  • SCTP

Domain names to be translated can be configured into the dsTest database via a csv formatted file.

Operational Measurements (OMs)  for the DNS application are collected, allowing analysis of any issues that might affect efficient DNS operation.

For a Use Case on DNS Testing, see our Use Case-DNS Testing page.

Developing Solutions References