Using DAISI
This is work in progress!
First you need to build SOLA with the ns-3 integration as described in Getting Started.
For each component/application, a single ns-3 simulation executable is created.
Following the building instructions, the executables are located at:
- minhton
: <SOLA_REPOSITORY_DIR>/build/src/minhton-ns3/minhton_ns3
.
- natter
: <SOLA_REPOSITORY_DIR>/build/src/natter-ns3/natter_ns3
- sola
: <SOLA_REPOSITORY_DIR>/build/src/sola-ns3/SOLA_ns3
- cpps
(OptiMaFlow): <SOLA_REPOSITORY_DIR>/build/src/cpps-ns3/CPPS_ns3
Specify logging output path
Before running the simulation, the path where the SQLite database file should be created must be specified.
This database is used for logging simulation events, states and other simulation relevant data.
To specify the path, set the environment variable DAISI_OUTPUT_PATH
to the desired output path, like export DAISI_OUTPUT_PATH=<PATH>
.
Application-specific configurations
Running OptiMaFlow
To run OptiMaFlow, the MINHTON_DIR
environment variable needs to be set.
It should contain the path of <SOLA_REPOSITORY_DIR>/minhton
.
This path is used to read MINHTON config files.
Specify the scenariofile
The simulation is controlled by a YAML-based scenariofile.
Default scenariofiles for all applications are provided in the <SOLA_REPOSITORY_DIR>/daisi/scenarios
folder.
The structure of the scenariofile is described in the "Scenariofile" section of each application's ns-3 integration documentation (see left sidebar).
The path to the scenariofile must be passed to the executable with --scenario=<SCENARIO_FILE_PATH>
.
This path must either be a absolute path or a path relative to the current working directory.
Run the simulation
For example to start a OptiMaFlow simulation with your current working directory being <SOLA_REPOSITORY_DIR>
, run:
build/src/cpps/CPPS_ns3 --scenario=daisi/scenarios/cpps/default.yml
To start a different application, just use a different executable and a different scenariofile.
Inspecting the output
While running the simulation, a SQLite database file is created at DAISI_OUTPUT_PATH
.
After the simulation finishes, you can inspect the database to get insights of the application behavior.
Wait until the simulation finishes!
Do not open this SQLite database file while the simulation is running! Otherwise the database might become corrupted!
Information about which data is logged to the database can be found under the "Logging" section of each application's ns-3 integration documentation (see left sidebar).