Download

DESERT Underwater  (short for DEsign, Simulate, Emulate and Realize Test-beds for Underwater network protocols) is a complete set of public C++ libraries that extend the NS-MIRACLE simulator to support the design and implementation of underwater network protocols.

The DESERT Underwater project originated mainly as the answer to two wishes:

  • to timely disseminate the underwater network protocols that we study and develop at Consorzio Ferrara Ricerche (CFR) and at the University of Padova, Italy;
  • to push the studies on underwater networking beyond simulations: running research solutions on real devices, in fact, is of key importance to prove the validity of every protocol design.

In addition, exposing our protocols and simulation systems to the community at large makes a valuable instrument available to all interested underwater network designers, and allows everyone to independently verify simulation as well as experimental results.

In these pages, you will find the links and introductory material that will guide you to the installation and use of DESERT Underwater

GitHub repository and Code Download

We maintain and share our code using  github-mark-64px

If you wanna test the bleeding edge of DESERT, you can clone DESERT using git with the following command (you need to have alread a GitHub account).


git clone -b master https://github.com/signetlabdei/DESERT_Underwater.git

Contribution to DESERT is always more than welcome, if you plan to contribute submitting patches, new features and/or improvements, consider reading

https://github.com/signetlabdei/DESERT_Underwater/blob/master/CONTRIBUTING.md 

IMPORTANT: Using master branch of DESERT project is suggested for development purposes. Even though our master branch is considered “stable”, id did not undergo proper testing before release. If you instead are interested in using the stable release at this link you can download the latest source code

Docker image

If you want a stable and tested environment, you do not want to install external stuff on your VM/workstation and you are familiar with containerization please consider using our docker image, for every release


docker pull uwsignet/desert:4.0.0


On docker image, tcl samples coming from the repo are directly included, so you can directly testing with


docker run -it --rm uwsignet/desert.4.0.0 bash


You’ll enter container bash shell where you can test and experiment tcl. Please note that docker is based on a volatile overlay filesystem, and your modifications to the tcl will be destroyed
container stops

Should you instead want to test your own tcl, you can mount it on the container and test it directly


docker run -it --rm -v <path-of-your-tcls>:/tcls/ --workdir /tcls/ test-with-desert:latest ns <relative-path-your-tcls>/<tcl-name>.tcl

 

Doxygen documentation

You can check out the Doxygen documentation of DESERT Underwater at