
This report describes how to use the provided script for NFD performance benchmark
on ONL (https://onl.wustl.edu/).
  
Assumptions
===========

  This report assumes that users have an ONL account. If you don't have an account
  yet, please refer to the ONL official website to apply.


Experiment Steps
================

  1. Login on the onlusr machine:
     ssh -L 7070:onlsrv:7070 <your_account>@onl.arl.wustl.edu
  
  2. Run RLI
     Open the topology file, and make reservation; if it is not successful,
  change the reservation time, and try again
  
     When your reservation is ready, commit.
     
  3. Experiment Environment setup
     ONL does not allow us to install programs, this section describes the process
     to compile NFD code on your experiment nodes.

     (1) git clone the latest ndn-cxx code and NFD code to your home directory.

         git clone http://gerrit.named-data.net/NFD
         git clone http://gerrit.named-data.net/ndn-cxx

     (2) In RLI, you can see the nodes name. Just choose one, and ssh to it.
     
     (3) Compile and install ndn-cxx in your home directory. And then the NFD code.

         For NFD, you need to compile using debug mode. You may need to specify 
         the PKG_CONFIG_PATH of the ndn-cxx library, and CXXFLAGS to make it work.

     (4) script modification

         clone scripts:
             git clone https://github.com/WU-ARL/NFD_Performance_Testing_on_ONL.git

         Note that John's script is to do the NFD performance testing, not for
         latency. Besides, it is for the older NFD version, we have to make some 
         modifications:

         (A) in config_server.sh and config_client.sh, change the 4 to 258 in 
             "nfdc add-nexthop -c 1 / 4"; in configRtr.sh, change the change the
             START_FACE_ID to 258 (4 is the start face id for older NFD version)

         (B) modify the "start_nfd.sh", let it run the latest NFD, not the one
             installed on ONL, which is v0.1.0

             ex: /path/to/your/nfd --config nfd.conf >& /tmp/nfd.log &

         (C) modify "server/config_server.sh", let it run the latest nfdc

         (D) same reason as (C), modify "client/config_client.sh"


NFD Throughput Benchmark
========================

  Do test as the README in John's scripts describes.



NFD Forwarding Latency
======================

  1. ssh to the NFD router, use tcpdump to capture traffic:
    sudo tcpdump -i data0 'port 6363' -c 1000 -vv -w /tmp/mkall-16-udp4-10-1-5.port6363.pcap

  2. run the script
