### News

Find our newest code, releases and documentation on Github!

The newest version includes a simple heuristic for parameter optimization.

A new ALPHA-version went online. Some bugs in the optimization algorithm had been crushed. Further calculating reverse backlog/delay bounds is much faster now. (29.05.13)

Follow us on Twitter to get news about coming updates. (04.06.13)

Find us (+ update project source code) on github.com!

### What is it?

DISCO Lab is proud to present the first Stochastic Network Calculator. This library contains a number of classes written in Java(tm) which are useful for analysing communication networks via stochastic network calculus. This calculus allows stochastic bounds on network performance metrics such as maximum latency or backlog. For details about the used stochastic network calculus please see A First Course in Stochastic Network Calculus.

The goal of the stochastic network calculator is to calculate the above mentioned performance measures in an automated way in complex scenarios. Furthermore the stochastic network calculator aims at tracking and optimizing emerging parameters dynamically to give competitive bounds.

The stochastic network calculator is under construction and we present here the latest version of it. It contains the following features:

- Constructing networks by defining nodes and their service (currently only constant rate service) and flows with corresponding arrivals (currently only a few arrival types available).
- Manipulating nodes and flows for example altering the service/arrivals, adding or removing stochastic dependencies or whole nodes/flows.
- Calculating sigma-rho-bounds for intermediate flows and leftover-service in a symbolic fashion.
- Calculating performance bounds (backlog or delay), with control over the optimization parameters (granularity of theta-values and hoelder-parameters). Here the best bound for a given probability or a bound on the probability for a given bound can be computed.
- The above calculations work in all feed-forward-networks and on some non-feed-forward-networks.
- A working GUI, which makes parts of the SNC easily accessible:
- Saving/loading networks
- Creating/deleting nodes and flows
- Calculate sigma-rho-bounds
- Calculate performance bounds
- Two tables give an overview over the nodes and flows of the network

### GUI Screenshot

### Future Development

Further development focuses on:

- More elaborate analysis techniques, like better end-to-end analyses.
- Better and faster optimization techniques of occuring parameters.
- Increasing the quality of calculated performance bounds by using stricter (and more complex) theoretic results.
- A GUI, which makes all parts of the SNC accessible.

#### More Information

For more information how the DISCO Stochastic Network Calculator works please refer the SNC-Manual.

#### Please Provide Feedback

For feedback, questions, etc. please contact Michael Beck.

#### Get Updated

You can follow us on Twitterto get news about coming updates.

### System Requirements

To run and compile the alpha, you need at least J2SE 1.5 ("Java 5").

### Download

The most up-to-date source code is available from our github project page.

We also offer an archive with the complete source code.

This is alpha grade software, unknown issues might occur.

### Known Limitations

- Only rudimentary end-to-end analysis.
- No time-dependent bounds.
- Only one kind of analysis ("Single Flow Analysis").

### Known Issues

- Due to changes in the optimization method the "bound-granularity"-spinner in the Calculate Reverse Bound-dialog has no effect.
- Weird stuff may happen, if fields of dialogs (especially the Add Flow dialog) are filled with invalid values (e.g. entering a string, where a number is expected).

### See also

- The Disco Deterministic Network Calculator - A tool for deterministic network calculus