Data Analysis and Chart CreationΒΆ

The experiment orchestrator by default creates a robust amount of validation data (if you use --debug more data will be saved that are not typically useful unless you are experiencing runtime issues). pcap files are stored for each interface on each Network Function (NF), and the NF itself writes a log recording packet actions (stored in _host_root/nf-eth[x]-eth[y].log for each NF host). The NF log is used for primary evaluation and chart generation, while the pcap files are typically used for manual validation of unusual results.

nflogalyze.py parses the NF log and generates charts for either a single run, or panels for a set of runs. You can control the output with the following options:

--logs List of logfiles for which to provide charts
--panels Whether to generate panels for multiple log inputs
--num-rows Number of rows to use for the panel charts
--num-cols Number of columns to use for the panel charts
--type Image file type

Typical operation for generating charts for one experiment run would be:

$ nflogalyze.py --logs nf-eth1-eth2.log

For multiple runs the number of rows and columns need to multiply to the total number of logs provided for the constituent runs. For 10 runs you could use the following command:

$ nflogalyze.py --logs *.log --panels --num-rows 2 --num-cols 5

The logs must be named in the form [*]XX.log where XX is the reorder percentage in order to get sensible chart titles.