This tool enables students to write connection oriented data link protocols in Java and have them tested on a simulated communication channel. The simulator checks for common protocol errors such as delivering packets out of order, or losing packets. It should run on any Java system.
It also provides simple visualisation of data frames travelling along the communications channel, indicating whether or not they have encountered transmission errors. The example below shows the channel from A to B with two data frames in transit, the first of which has encountered a transmission error and is shaded. The second one has (so far) transmitted successfully, and is a solid blue colour. The red boxes indicate that the network layer has been instructed not to provide any more packets for transmission. The list A80, A81, etc at the A end of the channel indicates the identities of packets that the A protocol has accepted for transmission, but that have not yet been delivered to B.
The system is packaged as a Java Jar file, along with the documentation for the system in LaTeX. For convenience, both Unix tar format and ZIP format archives are provided. You only need to download one. Unpacking the archive in a temporary directory gives several files
dlpjava -- the script to run the simulator under Unix dlpjava.mk -- component of Unix dlpjava system dlpjava.jar -- jar file README -- this file Install -- Unix installation script documents -- directory of user documentationTo install under Unix, choose a name for the script, and a directory to store the jar file and the .mk file in. Suppose the script is to be in
/usr/local/bin/dlpjavaand the directory is to be
You will need to modify the documentation to reflect how users can run the system.
Install /usr/local/bin/dlpjava /usr/local/lib/dlpjava
Under Windows, you will need to copy the
dlpjava.jar file to a
location that can be accessed by all users and modify the
Here is a copy of the user manual for printing.
Here is an online user manual.
I would be very pleased to receive any feedback that you wish to give me on this simulator. Mail me at email@example.com.
Back to Peter King's home page