Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 1 | Traffic Generator For NDN (ndn-traffic-generator) |
| 2 | ================================================= |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 3 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 4 | This tool is designed to generate Interest and Data traffic in an NDN network. |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 5 | The client and server tool accept traffic configuration files which can be |
| 6 | used to specify the pattern of NDN traffic that is required to be generated. |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 7 | Sample configuration files are provided which include instructions on how |
| 8 | to configure various parameters. |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 9 | |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 10 | ## Prerequisites ## |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 11 | |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 12 | Compiling and running ndn-traffic-generator requires the following dependencies: |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 13 | |
jeraldabraham | cc3c6c9 | 2014-03-28 02:21:45 -0700 | [diff] [blame] | 14 | 1. C++ Boost Libraries version >= 1.48 <http://www.boost.org> |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 15 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 16 | On Ubuntu 12.04: |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 17 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 18 | sudo apt-get install libboost1.48-all-dev |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 19 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 20 | On Ubuntu 13.10 and later |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 21 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 22 | sudo apt-get install libboost-all-dev |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 23 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 24 | On OSX with macports |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 25 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 26 | sudo port install boost |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 27 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 28 | On OSX with brew |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 29 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 30 | brew install boost |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 31 | |
jeraldabraham | cc3c6c9 | 2014-03-28 02:21:45 -0700 | [diff] [blame] | 32 | On other platforms Boost Libraries can be installed from the packaged version for the |
| 33 | distribution, if the version matches requirements, or compiled from source |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 34 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 35 | 2. ndn-cxx library <https://github.com/named-data/ndn-cxx> |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 36 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 37 | For detailed installation instructions, please refer README file |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 38 | |
jeraldabraham | cc3c6c9 | 2014-03-28 02:21:45 -0700 | [diff] [blame] | 39 | 3. NDN forwarding daemon <https://github.com/named-data/NFD> |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 40 | |
| 41 | ----------------------------------------------------- |
| 42 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 43 | ## 1. Compile & Installation Instructions: ## |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 44 | |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 45 | ./waf configure |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 46 | ./waf |
| 47 | sudo ./waf install |
| 48 | |
| 49 | ## 2. Tool Run Instructions & Command Line Options: ## |
| 50 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 51 | Usage: ndn-traffic-server [options] <traffic_configuration_file> |
| 52 | Respond to Interest as per provided traffic configuration file |
| 53 | Multiple prefixes can be configured for handling. |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 54 | Set environment variable NDN_TRAFFIC_LOGFOLDER for redirecting output to a log. |
jeraldabraham | cc3c6c9 | 2014-03-28 02:21:45 -0700 | [diff] [blame] | 55 | [-d interval] - set delay before responding to interest in milliseconds |
| 56 | [-c count] - specify maximum number of interests to be satisfied |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 57 | [-q] - quiet logging - no interest reception/data generation messages |
| 58 | [-h] - print help and exit |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 59 | |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 60 | Usage: ndn-traffic [options] <traffic_configuration_file> |
| 61 | Generate Interest traffic as per provided traffic configuration file |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 62 | Interests are continuously generated unless a total number is specified. |
| 63 | Set environment variable NDN_TRAFFIC_LOGFOLDER for redirecting output to a log. |
jeraldabraham | cc3c6c9 | 2014-03-28 02:21:45 -0700 | [diff] [blame] | 64 | [-i interval] - set interest generation interval in milliseconds (default 1000 milliseconds) |
jeraldabraham | 420dbf0 | 2014-04-25 22:58:31 -0700 | [diff] [blame^] | 65 | [-c count] - set total number of interests to be generated |
| 66 | [-q] - quiet logging - no interest reception/data generation messages |
| 67 | [-h] - print help and exit |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 68 | |
| 69 | |
| 70 | ## 3. Sample Run Instructions ## |
| 71 | |
| 72 | __ON MACHINE #1__ |
| 73 | |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 74 | (NDN forwarding daemon should be running) |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 75 | |
| 76 | Start traffic server |
| 77 | |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 78 | ndn-traffic-server ndn-traffic-server.conf |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 79 | |
| 80 | __ON MACHINE #2__ |
| 81 | |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 82 | (NDN forwarding daemon should be running) |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 83 | |
| 84 | Start the traffic client |
Alexander Afanasyev | fda32a3 | 2014-03-20 10:50:00 -0700 | [diff] [blame] | 85 | |
| 86 | ndn-traffic ndn-traffic-client.conf |
Alexander Afanasyev | a8f2a92 | 2014-02-26 14:21:56 -0800 | [diff] [blame] | 87 | |
| 88 | |
| 89 | * These tools need not be used together and can be used individually as well. |
| 90 | * Please refer sample configuration files provided for details on how to create your own. |
| 91 | * Use command line options shown above to adjust traffic configuration. |