Config Usage

NeST uses config to let the user define a few properties of NeST. For example, whether or not all the namespaces are to be deleted after the completion of the program is decided by the value of that parameter. All parameters have a default value set by NeST. However, the default values can be overridden using API’s of Config module. They can also be overridden using files named as nest-config.json in specified locations such as “/etc/nest-config.json”, “~/.nest-config.json” and in the current working directory as “nest-config.json” with increasing priority (if the same parameter has different values in different files, the one with the higher priority is chosen)

Now, let’s take a look at all the parameters that can be configured

Note

To be read as
<Parameter> (Default_value) - Description
Possible values
plot_results (true) - When set to True, the results are plotted
true, false
readme_in_stats_folder (true) - When set to True, a readme file is added in the results folder, with information about how the results are stored
true, false
show_progress_bar (true) - When set to True, a progress bar indicating experiment progress is shown.
true, false
routing_suite (“quagga”) - A string, which tells which suite is to be used for dynamic routing
"quagga", "frr"
routing_logs (false) - When set to true, routing logs are written to files in a dedicated logs folder
true, false
assign_random_names (true) - When set to True, uses random names (i.e., uniquely generated ids) generated by NeST for all the namespaces and devices
true, false
default_bandwidth (“1024mbit”) - The default bandwidth to be set to every connection
"<number><unit>"
number - any positive number
unit - kbit, mbit, gbit
delete_namespaces_on_termination (true) - When set to true, deletes all namespaces that were created by NeST, on termination
true, false
mpeg_dash_delete_encoded_chunks_on_termination (false) - When set to true, deletes all encoded MPEG-DASH chunks that were created by NeST, on termination
true, false
disable_dad (true) - When set to true, Duplicate Address Detection (DAD) in ipv6 is disabled
true, false
log_level (INFO) - Decides how detailed the logging must be, using python’s logging levels
"NOTSET", "TRACE", "DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL"
(Increasing order of value. Lower value => Lesser critical information also logged)