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.
dsTest supports the following DNS Request types:
- A (IPv4)
- AAAA (IPv6)
- PTR (Domain Name pointer)
- NS (An authoritative name server)
- MX (A mail exchange)
- TXT (text strings)
- SRV (Service Record)
- NAPTR (Naming authority pointer)
- CNAME (Domain Name Alias)
Domain names to be translated can be configured into the dsTest database via a csv formatted file. This CSV file was used to create the results of this Use Case.
The dsTest configuration file used in the Use Case is as follows:
DNS tests can be configured for validation of the responses to queries. dsTest supports 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. To enable or disable validation, use the Validate Answer element in the csv file.
For DNS queries such as NAPTR, MX, and SRV, the server can respond with answers which require more DNS queries until a query finally results in an IP address. Interim answers like hostname, email address, or any configurable user string can be used to validate the answer in the interim response.
For queries which should directly result into an IP address, use the Expected IP Address Answer element. For queries which do not directly result into an IP address, use the Expected String Answer element to specify the string for validation use. If it’s desirable to have the interim queries continue until a response has an IP address, enable Resolve to IP element.
The outcome of the DNS Use Case test is 40 different queries which should all succeed. The queries are in the order of the cvs file. The resulting OMs are:
count id=’692224′ name=’Query Attempts’ contents:40
count id=’692225′ name=’Queries Successful’ contents:40
count id=’692226′ name=’Transaction Elapsed Time’ contents:0
count id=’692227′ name=’Minimum Transaction Duration’ contents:133
count id=’692228′ name=’Maximum Transaction Duration’ contents:133
count id=’692229′ name=’Transaction Duration Variance**2′ contents:0
count id=’692230′ name=’Queries Failed’ contents:0
count id=’692231′ name=’Truncated Message Rcvd’ contents:0
count id=’692232′ name=’Unsupported Message Rcvd’ contents:0
count id=’692233′ name=’Retransmission Attempts Exceeded’ contents:0
count id=’692234′ name=’Query Response Timeout’ contents:0
count id=’692235′ name=’Query Sent’ contents:40
count id=’692236′ name=’Responses Rcvd’ contents:40
count id=’692237′ name=’Query A Sent’ contents:8
count id=’692238′ name=’Query NS Sent’ contents:2
count id=’692239′ name=’Query CNAME Sent’ contents:3
count id=’692240′ name=’Query PTR Sent’ contents:1
count id=’692241′ name=’Query MX Sent’ contents:4
count id=’692242′ name=’Query TXT Sent’ contents:1
count id=’692243′ name=’Query AAAA Sent’ contents:0
count id=’692251′ name=’Query SRV Sent’ contents:7
count id=’692252′ name=’Query NAPTR Sent’ contents:14
count id=’692244′ name=’Answer A Rcvd’ contents:8
count id=’692245′ name=’Answer NS Rcvd’ contents:2
count id=’692246′ name=’Answer CNAME Rcvd’ contents:3
count id=’692247′ name=’Answer PTR Rcvd’ contents:1
count id=’692248′ name=’Answer MX Rcvd’ contents:4
count id=’692249′ name=’Answer TXT Rcvd’ contents:1
count id=’692250′ name=’Answer AAAA Rcvd’ contents:0
count id=’692253′ name=’Answer SRV Rcvd’ contents:7
count id=’692254′ name=’Answer NAPTR Rcvd’ contents:14
count id=’692255′ name=’Validate Answer Attempts’ contents:25
count id=’692256′ name=’Validate Answer Successes’ contents:25
count id=’692257′ name=’Validate Answer Failures’ contents:0
Note that there are validate statistics at the bottom. If the Validate Answer element is set to true, a validate attempt will be made. If it is set to false, no attempt count will be logged for that query.
A partial of the message trace (pcapng format) generated by this Use Case:
Additional Operational Measurements (OMs) for the DNS application are collected, allowing analysis of any issues that might affect efficient DNS operation.