-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
1458f02
commit 30468a8
Showing
36 changed files
with
14,096 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
# Copyright 2000, 2001, 2003, 2006-2012 Nominum, Inc. All Rights Reserved. | ||
|
||
prefix = @prefix@ | ||
exec_prefix = @exec_prefix@ | ||
bindir = @bindir@ | ||
mandir = @mandir@ | ||
datarootdir = @datarootdir@ | ||
|
||
INSTALL = @INSTALL@ | ||
INSTALL_PROGRAM = @INSTALL_PROGRAM@ | ||
INSTALL_DATA = @INSTALL_DATA@ | ||
RANLIB = @RANLIB@ | ||
|
||
CC = @PTHREAD_CC@ | ||
CFLAGS = @CFLAGS@ @DNSCFLAGS@ @DEFS@ @PTHREAD_CFLAGS@ | ||
LIBS = libperf.a @LIBS@ @DNSLIBS@ @PTHREAD_LIBS@ -lm | ||
LIBOBJS = @LIBOBJS@ | ||
LDFLAGS = @LDFLAGS@ @PTHREAD_CFLAGS@ | ||
|
||
PERFOBJS = datafile.o dns.o log.o net.o opt.o os.o | ||
|
||
all: dnsperf resperf | ||
|
||
libperf.a: ${PERFOBJS} | ||
${AR} ${ARFLAGS} $@ ${PERFOBJS} | ||
${RANLIB} $@ | ||
|
||
dnsperf: dnsperf.o libperf.a $(LIBOBJS) | ||
$(CC) $(LDFLAGS) dnsperf.o $(LIBOBJS) $(LIBS) -o dnsperf | ||
|
||
resperf: resperf.o libperf.a $(LIBOBJS) | ||
$(CC) $(LDFLAGS) resperf.o $(LIBOBJS) $(LIBS) -o resperf | ||
|
||
.c.o: | ||
$(CC) $(CFLAGS) -c $< | ||
|
||
installdirs: | ||
mkdir -p ${DESTDIR}${bindir} | ||
mkdir -p ${DESTDIR}${mandir}/man1 | ||
|
||
install: all installdirs | ||
${INSTALL_PROGRAM} dnsperf ${DESTDIR}${bindir} | ||
${INSTALL_PROGRAM} resperf ${DESTDIR}${bindir} | ||
${INSTALL_PROGRAM} resperf-report ${DESTDIR}${bindir} | ||
${INSTALL_DATA} dnsperf.1 ${DESTDIR}${mandir}/man1 | ||
${INSTALL_DATA} resperf.1 ${DESTDIR}${mandir}/man1 | ||
|
||
clean: | ||
rm -f *.o dnsperf resperf libperf.a | ||
|
||
distclean: clean | ||
rm -f config.log | ||
rm -f config.cache | ||
rm -f config.status | ||
rm -f Makefile |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
This is dnsperf, a collection of DNS server performance testing tools. | ||
For more information, see the dnsperf(1) and resperf(1) man pages. | ||
|
||
To configure, compile, and install these programs, follow these steps. | ||
|
||
1. Make sure that BIND 9 (9.4.0 or greater) is installed, including libraries | ||
and header files, and that the isc-config.sh program distributed with BIND | ||
is in your path. | ||
|
||
Note: many versions of bind do not correctly install the <isc/hmacsha.h> | ||
header file, so if the compilation fails, obtain this file from the BIND | ||
source distribution, and install it in the appropriate place. | ||
|
||
2. Run "sh configure" to configure the software. Most standard configure | ||
options are supported. | ||
|
||
3. Run "make" to build dnsperf and resperf | ||
|
||
4. Run "make install" to install dnsperf and resperf. | ||
|
||
Additional software is available in the contrib/ directory. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,183 @@ | ||
Nominum dnsperf 2.1.0.0 | ||
Release Notes | ||
************************ | ||
|
||
December 15, 2015 | ||
|
||
In addition to various bug fixes, the following new capabilities | ||
were added in this release: | ||
|
||
- The -C option was added to resperf. This option enables the local | ||
server to act as multiple clients. By default, the local server | ||
acts as a single client. | ||
|
||
- the -T option was added to dnsperf. This option separates the | ||
number of clients from the number of threads and allows more | ||
clients to be simulated effectively. Note that using this option | ||
impacts CPU and memory, so we recommend limiting the number of | ||
threads. | ||
|
||
|
||
----------------------- | ||
Nominum dnsperf 2.0.0.0 | ||
March 1, 2012 | ||
|
||
In the dnsperf command, the following changes occurred: | ||
|
||
- The socket buffer size is no longer set to 32 kilobytes by default. | ||
|
||
- A new -c clients option was added to enable the server to act as | ||
multiple clients. Each client uses the same source IP address with a | ||
unique source port. Use the "clients" argument to specify the number of | ||
clients represented by the server. We recommend limiting the number of | ||
clients represented by the server because the dnsperf process uses two | ||
threads for each client (one thread for sent packets and one for | ||
received packets), which impacts CPU and memory. | ||
|
||
- Example query files are no longer included with the dnsperf program. | ||
Nominum provides a sample query file that is available for download at: | ||
ftp://ftp.nominum.com/pub/nominum/dnsperf/data/ | ||
|
||
- Latency reporting improved. When the -v (verbose mode) option is | ||
configured with the dnsperf command, the command output now includes | ||
latency measurements and the DNS RCODE of each response. This enables | ||
users to create their own latency graphs. | ||
|
||
- Performance was enhanced on modern operating systems so that faster | ||
name servers can be tested. | ||
|
||
- The dnsperf command output is enhanced to display more information in a | ||
compact format. | ||
|
||
The following options were removed from the dnsperf command: | ||
|
||
- The -A option for displaying command line arguments passed to the | ||
dnsperf tool in the final statistics output. Now, the dnsperf command | ||
output always displays command line arguments. | ||
|
||
- The -T option for printing a histogram showing response latency after | ||
completing a test run. Now, the -v option enables users to include | ||
latency measurements in the dnsperf command output. | ||
|
||
- The -H option for configuring the number of buckets for which response | ||
latency is displayed. Now, the -v option enables users to include | ||
latency measurements in the dnsperf command output. | ||
|
||
- The -1 option for configuring the dnsperf tool to run through the input | ||
file exactly one time. (Now, you use the -n 1 option to configure the | ||
dnsperf tool to run through the input file one time.) | ||
|
||
- The -c option for including the number of responses received (for | ||
each DNS RCODE) in the final statistics output. Now, DNS RCODE responses | ||
are always reported. | ||
|
||
In the resperf command, the following changes occurred: | ||
|
||
- The socket buffer size is no longer set to 32 kilobytes by default. | ||
|
||
- The -A option, which displayed command line arguments passed to the | ||
resperf tool in the final statistics output, was removed. Now, the | ||
resperf command output always displays command line arguments. | ||
|
||
|
||
----------------------- | ||
Nominum dnsperf 1.0.2.0 | ||
December 22, 2011 | ||
|
||
This release adds support for RHEL6-64 and for Solaris 10 x86-64. | ||
|
||
Some new configuration options have been added. You can now specify: | ||
|
||
- the local port from which to send requests | ||
- the local address from which to send requests | ||
- the maximum number of runs through the input file, up | ||
to the timeout limit. | ||
- when using TSIG, algorithms other than hmac-md5 can be used. | ||
|
||
One default has been changed: | ||
|
||
- The maximum number of outstanding requests now defaults | ||
to 100. | ||
|
||
A new example query file for IPv6, queryfile-example-ipv6, is now | ||
included with the distribution. | ||
|
||
|
||
----------------------- | ||
Nominum dnsperf 1.0.1.0 | ||
January 10, 2008 | ||
|
||
This release makes binary builds of dnsperf available in addition to | ||
the source code version previously released. | ||
|
||
This release of dnsperf includes a sample query file containing | ||
100,000 queries to help with performance testing. This query file is | ||
useful for checking latencies or a continuous dnsperf run. In the | ||
binary distribution, this file is found at: | ||
|
||
/usr/local/nom/examples/dnsperf/queryfile-example-100thousand | ||
|
||
In the source distribution, it is at: | ||
|
||
./examples/queryfile-example-100thousand | ||
|
||
where "." is the directory made by extracting the source tarball. | ||
|
||
Nominum recommends using a query file with at least 3 million queries | ||
for a full resperf run as described in the man page; we make such a | ||
file available for download at: | ||
|
||
ftp://ftp.nominum.com/pub/nominum/dnsperf/data/queryfile-example-3million.gz | ||
|
||
The following fix is included in the source distribution: | ||
|
||
- 20996: makefile.in does not allow overriding mandir | ||
|
||
The --mandir argument to configure, which allows the user to | ||
specify the location man pages are installed, was incorrectly | ||
ignored. | ||
|
||
"queryparse" is a contributed program available in the source | ||
distribution of dnsperf. It can be found at contrib/queryparse/. | ||
The following changes were made to that program: | ||
|
||
- 19717: contrib/queryparse includes outgoing queries | ||
|
||
The queryparse script had no way of distinguishing between incoming | ||
queries and outgoing queries when applied to a traffic trace from a | ||
caching server. This was addressed by adding a new flag (-r) that, | ||
when included in the command line, will keep queries with | ||
RD=0. Otherwise, it will default to discarding them. | ||
|
||
- The ability to parse responses instead of queries was added. | ||
|
||
- A check was added to avoid short packets. | ||
|
||
- Logic was added to detect link type and correctly set the initial | ||
offset to handle both Ethernet and Cisco HDLC frames. | ||
|
||
- Queryparse now uses pcapy instead of the btk python libcap module. | ||
|
||
Note that announcements of new releases of dnsperf are sent to the | ||
mailing list: [email protected]. To be added to the | ||
mailing list, send a message to [email protected] | ||
with "subscribe" as the subject. | ||
|
||
Known Issues: | ||
|
||
- None. | ||
|
||
----------------------- | ||
Nominum dnsperf 1.0.0.1 | ||
December 21, 2006 | ||
|
||
This release addresses the following issue in the dnsperf program: | ||
|
||
- 18838/18782: dnsperf slow down issue | ||
|
||
Because of an error in how timeout checking was being done, queries | ||
were rarely timing out, so the number of valid queries in flight kept | ||
dropping. This error has been corrected. | ||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
sinclude(./acx_pthread.m4)dnl | ||
|
Oops, something went wrong.