NDN traffic generator

Clone this repo:

Branches

  1. 9bec15a ci: python3-minimal is insufficient by Davide Pesavento · 4 weeks ago master
  2. 8cb3cb7 build: update waf to version 2.0.27 by Davide Pesavento · 10 weeks ago
  3. 7227d64 ci: minimize installed libboost packages by Davide Pesavento · 3 months ago
  4. 4c24cf7 build: sync default CXXFLAGS and DEFINES with ndn-cxx by Davide Pesavento · 4 months ago
  5. 33a39bd ci: add build testing against named-data PPA by Davide Pesavento · 6 months ago

NDN Traffic Generator

Language CI

This tool is designed to generate Interest and Data traffic in an NDN network. The client and server tool accept traffic configuration files which can be used to specify the pattern of NDN traffic that is required to be generated. Sample configuration files are provided which include instructions on how to configure various parameters.

Prerequisites

Compiling and running ndn-traffic-generator requires the following dependencies:

  1. ndn-cxx and its dependencies
  2. NDN Forwarding Daemon (NFD)

Compilation & Installation

./waf configure
./waf
sudo ./waf install

Command Line Options

ndn-traffic-server

Usage: ndn-traffic-server [options] <Traffic_Configuration_File>

Respond to Interests as per provided Traffic_Configuration_File.
Multiple prefixes can be configured for handling.
Set the environment variable NDN_TRAFFIC_LOGFOLDER to redirect output to a log file.

Options:
  -h [ --help ]                 print this help message and exit
  -c [ --count ] arg            maximum number of Interests to respond to
  -d [ --delay ] arg (=0)       wait this amount of milliseconds before responding to each Interest
  -t [ --timestamp-format ] arg format string for timestamp output (see below)
  -q [ --quiet ]                turn off logging of Interest reception and Data generation

ndn-traffic-client

Usage: ndn-traffic-client [options] <Traffic_Configuration_File>

Generate Interest traffic as per provided Traffic_Configuration_File.
Interests are continuously generated unless a total number is specified.
Set the environment variable NDN_TRAFFIC_LOGFOLDER to redirect output to a log file.

Options:
  -h [ --help ]                 print this help message and exit
  -c [ --count ] arg            total number of Interests to be generated
  -i [ --interval ] arg (=1000) Interest generation interval in milliseconds
  -t [ --timestamp-format ] arg format string for timestamp output (see below)
  -q [ --quiet ]                turn off logging of Interest generation and Data reception
  -v [ --verbose ]              log additional per-packet information
  • These tools need not be used together and can be used individually as well.
  • Please refer to the sample configuration files provided for details on how to create your own.
  • Use the command line options shown above to adjust traffic configuration.
  • By default, timestamps are logged in Unix epoch format with microsecond granularity. For custom output, the --timestamp-format option expects a format string using the syntax given in the Boost.Date_Time documentation.

Example

ON MACHINE #1

(NFD must be running)

Start the traffic server:

ndn-traffic-server ndn-traffic-server.conf

ON MACHINE #2

(NFD must be running)

Start the traffic client:

ndn-traffic-client ndn-traffic-client.conf

License

ndn-traffic-generator is free software distributed under the GNU General Public License version 3. See COPYING.md for details.