This is an old project of mine: Delay And Discruption Tolerant Network (DTN) simulator. It was written as my master's thesis several years ago and therefor the code quality matches my skills at that point in time. Still I think that it may be usefull for many people, so I decided to publish it. You can also read my master's thesis (if you speak Polish).
The following is a small subset of charts generated from the data from simulations performed during my master's thesis. It clearly shows how many differen combinations of networks, data and tests you are able to achieve using this simulator.
Delivered data (in GB) depending on BER for two cases: when nodes take responsibility for retransmitting bundles (red) and when they don't (blue):
Its main purpose was to simulate and compare several routing approaches. Depending on network structe and used transport protocols some algorithms work bette than other. This application includes:
This is the core of the application - Bundle protocols is supposed to create a new layer in the ISO OSI and TCP/IP protocol stack models and it is supposed to transport data in a way that does not depend on the underlying protocol (for example it can use IP, Apple Talk, Ethernet directly or IPX).
- Static routing.
- Epidemic - sends copies of packets everywhere.
- Gradient
- Gradient with redirection
- AODV-like protocol
- Dijkstra (OSPF-like)
- Predictable (has ability to predict link breaks)
- LLDP - this is the delay and disruption tolerant protocol designed to handle environments where TCP can't make it.
- UDP - simulation of UDP protocol.
- TCP - simulation of TCP protocol with its main features such as retransmission on error, slow start, windows.
- Asymetric - simulation of asymetric link.
- BER - links get huge bit-error-rates.
- Cosmos - simulation of what is a classic interplanetary communication scenario.
- Delay - simulation of huge delays in the network.
- Internet - network that's characteristic is similar to the currently working Internet.
- Link break - simulation of many link breaks.
- Mule - simulation of a network based on mules (moving devices that exchange the data).
- Sensor - simulation of a sensor network.
- Zebranet - simulation of Zebranet; a network that was in the past used to monitor movement of zebras.