/DeNS

DeNS: Deterministic Networks Simulator

Primary LanguageC++

DeNS : Deterministic Networks simulator

DeNS is a Deterministic Networks Simulator, based on OMNET++ discrete event simulator, INET framework and depends on NeSTiNg TSN package for clock and transmission selection modules at link-layer.

version

Documentation

Getting Started

  • Download and install OMNeT++ version 5.5.1. (Installation guide)
  • cd to your OMNeT++ directory and $ source setenv to add omnetpp to PATH
  • Download INET version 4.1.0. Alternatively, clone the INET repository and checkout tag v4.1.0 $ git clone --branch v4.1.0 --depth 1 https://github.com/inet-framework/inet.git
  • Clone NeSTiNg resposity. checkout the following commit to avoid compilation errors with DeNS
$ git clone https://gitlab.com/ipvs/nesting.git

$ git checkout 2cbd94655f8cc63816b96e31732b8dcf99511378
  • Clone DeNS reposity $ git clone https://github.com/vamsiDT/DeNS.git Finally your directory should like:
<workspace>
|___ INET
|___ detnetmod
|___ nesting

Import

  • Launch OMNet++ IDE and set the workspace to the directory where packages have been downloaded in the previous step.
  • Import DeNS, INET and NeSTiNg packages into your workspace.
    • File -> Import
    • select Existing Projects into Workspace option and Next>
    • under Select root directory add your previously chosen workspace directory
    • select INET, detnetmod and nesting projects and Finish

All the three projects should now appear in the Project Explorer

Build

  • First, right click detnetmod project and click on Properties
  • Under Project References, select INET and nesting, Apply and Close (Important)
  • Each project can be set to release or debug build by right click and Build Configurations -> Set Active
  • Right click each project (in the order INET, NeSTiNg, DeNS) and Build Project

Examples

  • Right click detnetmod/simulations/experiments_l3/dens_sc2/paper2.ini paper2.ini and Run As -> OMNeT++ Simulation. This opens the graphical interface for the simulation
  • paper2.ini contains the configurations used in the paper. Certain knowledge about ini configuration in OMNeT++ is required and helps in easy understanding of paper2.ini and navation into different modules used in configuration. Further details on modules and configuration files will be opened soon through Wiki page in this repository.

Citation

@inproceedings{addanki2020moving,
  title={Moving a step forward in the quest for Deterministic Networks (DetNet)},
  author={Addanki, Vamsi and Iannone, Luigi},
  booktitle={2020 IFIP Networking Conference (Networking)},
  pages={458--466},
  year={2020},
  organization={IEEE}
}