Skip to content

Repository files navigation

NetworkCalculus.org DNC (NCorg DNC)

Deterministic Network Calculus is a methodology for worst-case modeling and analysis of communication networks. It enables to derive deterministic bounds on a server’s backlog as well as a flow’s end-to-end delay. Given a directed graph of servers (server graph) and the flows crossing these servers, the Deterministic Network Calculator (DNC) automates the derivation of bounds.

Academic Attribution

If you use the NetworkCalculus.org DNC (NCorg DNC) for a research publication, please include one of the following references

  • NCorg DNC in general, and arbitrary multiplexing in particular:
@inproceedings{NCorg-DNC,
  author    = {Wlad Pesotsky and Eric Hermsen and Steffen Bondorf},
  title     = {Automated and Precise Deterministic NetCal Calculations from Models to Bounds},
  booktitle = {Proc. of the 38th European Conference on Real-Time Systems},
  series    = {ECRTS '26},
  month     = {July},
  year      = 2026
}
  • LUDB as FIFO multiplexing analysis:
@inproceedings{LUDBFF,
  author    = {Alexander Scheffler and Steffen Bondorf},
  title     = {Network Calculus for Bounding Delays in Feedforward Networks of {FIFO} Queueing Systems},
  booktitle = {Proc. of the 18th International Conference on Quantitative Evaluation of Systems},
  series    = {QEST '21},
  pages     = {149--167},
  month     = {August},
  year      = 2021,
  url       = {https://link.springer.com/chapter/10.1007/978-3-030-85172-9_8}
}

The NCorg DNC was derived from the DISCO (Deterministic) Network Calculator, aka DiscoDNC. See here for v1 and here for v2.

Submodule Structure

The NCorg DNC consists of 3 parts, that are located in 3 different repositories:

  • The core code in src/main is contained in this repository, the other parts ones can be included as git submodules.
  • (optional) the test files in src/functional_tests are in DNC_func_tests and
  • (optional) the experiment in src/experiments are in DNC_experiments.

In order to get all submodules, you can use the command git submodule update --init --recursive.

Usage with the IntelliJ IDEA

(tested with IntelliJ IDEA 2026.1.2)

  • use File > New > Project from Version Control to get the project
  • run a demo from package org.networkcalculus.dnc.demos in folder `main/java

About

The NetworkCalculus.org Deterministic Network Calculator

Resources

Contributing

Stars

34 stars

Watchers

6 watching

Forks

Releases

Packages

Used by

Contributors

Languages