Skip to content

Commit

Permalink
Autotools, README, changelog
Browse files Browse the repository at this point in the history
- Rework to use autotools
- Update README
- Reformat release notes
- Fix compilation issues and work around missing `dns_fixedname_initname()`
- Update man-pages with package version and bug report location
  • Loading branch information
jelu committed Jan 17, 2019
1 parent d2e10fc commit b84e41b
Show file tree
Hide file tree
Showing 40 changed files with 1,250 additions and 8,781 deletions.
95 changes: 91 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,8 +1,95 @@
# Prerequisites
*.d

# Object files
*.o
libperf.a
*.ko
*.obj
*.elf

# Linker output
*.ilk
*.map
*.exp

# Precompiled Headers
*.gch
*.pch

# Libraries
*.lib
*.a
*.la
*.lo

# Shared objects (inc. Windows DLLs)
*.dll
*.so
*.so.*
*.dylib

# Executables
*.exe
*.out
*.app
*.i*86
*.x86_64
*.hex

# Debug files
*.dSYM/
*.su
*.idb
*.pdb

# Kernel Module Compile Results
*.mod*
*.cmd
.tmp_versions/
modules.order
Module.symvers
Mkfile.old
dkms.conf

# Automake
Makefile.in
aclocal.m4
ar-lib
autom4te.cache
compile
config.guess
config.sub
configure
depcomp
install-sh
ltmain.sh
m4/libtool.m4
m4/ltoptions.m4
m4/ltsugar.m4
m4/ltversion.m4
m4/lt~obsolete.m4
missing
config.h.in
config.h.in~
test-driver

# Configure
Makefile
config.log
config.status
dnsperf
resperf
.lineno
libtool
.deps
src/config.h
src/stamp-h1
build
.dirstamp

# Project specific files
src/dnsperf
src/dnsperf.1
src/resperf
src/resperf.1
src/test/test-suite.log
src/test/test*.sh.log
src/test/test*.sh.trs
src/test/*.dist
147 changes: 147 additions & 0 deletions CHANGES
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
2015-12-15

Release 2.1.0.0

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.

2012-03-01

Release 2.0.0.0

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.

2011-12-22

Release 1.0.2.0

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.

2008-01-10

Release 1.0.1.0

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: dnsperf-announce@nominum.com. To be added to the
mailing list, send a message to dnsperf-announce-request@nominum.com
with "subscribe" as the subject.

Known Issues:
- None.

2006-12-21

Release 1.0.0.1

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.
30 changes: 30 additions & 0 deletions Makefile.am
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Copyright 2019 OARC, Inc.
# Copyright 2017-2018 Akamai Technologies
# Copyright 2006-2016 Nominum, Inc.
# All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

ACLOCAL_AMFLAGS = -I m4

MAINTAINERCLEANFILES = $(srcdir)/Makefile.in \
$(srcdir)/src/config.h.in~ \
$(srcdir)/configure

SUBDIRS = src

dist_doc_DATA = CHANGES README.md LICENSE

EXTRA_DIST = m4 contrib

test: check
70 changes: 0 additions & 70 deletions Makefile.in

This file was deleted.

Loading

0 comments on commit b84e41b

Please sign in to comment.