IT Infrastructure Practical Assignment 1 Instructions
Assignment Name: Alternating Bit Protocol (ABP)
The Alternating Bit Protocol (ABP) is a connection-less protocol for transferring messages in one direction between a pair of protocol entities. It is a simple form of the Sliding Window Protocol with a window size of 1. The message sequence number alternates between 0 and 1. The JASPER applet supports the simulation of ABP with 3 modes of simulating messages delivery.
Below are some experiments you will conduct to understand ABP and its commands. The first three experiments will give you a feel for using the simulator and relate to real-world scenarios. Subsequent experiments will be more complex, yet still relating to real events.
Launching the ABP Protocol Simulator
· Ensure that your default browser supports Java applets. Note that you may need to run Java in low security for the Java applets in this exercise to work properly.
· For access to all simulations, click on the rotating globe at this book's Companion Web site at http://williamstallings.com/BusinessDataComm/BDC7e-student/.
· Then click on the link to the Alternating Bit Protocol Simulator.
· This will launch the ABP Simulator applet along with a description of the main commands we will be using for our experiments.
Main Commands Description
We have a suite of simulation commands as listed and described below.
Command
Description
Sender: Send DATA(n)
Sending of messages, with n as the sequence number. In ABP it is either 0 or 1
Sender: Timeout
Sender assumes a timeout and resends the most recent message
Medium: Deliver Data(n)
The medium delivers the message successfully. This command is available in all medium options except Automatic (see below)
Medium: Lose Data(n)
The message is lost through the medium. This command is only available through the Delivery/Loss medium option (see below)
Medium: Deliver Ack(n)
The acknowledge of message from receiver is delivered successfully by the medium. This command is available in all medium options except Automatic (see below)
Medium: Lose Ack(n)
The medium loses the acknowledgement message. This command is only available through the Delivery/Loss medium option (see below)
Receiver: Send Ack(n)
The receiver sends an acknowledgement to the message received from the sender
Applet Interface
The applet graphical interface consists of the control panel (bottom left corner), the commands panel (bottom right), and the simulation view (top half).
The control panel consists of several buttons. Run will perform an automatic simulation of the protocol. Stop will halt the automatic simulation. Undo will revert back one step from the latest command. Redo will revert what undo does. Clear will clear off the current simulation, resulting in a clean simulation view. Load, Save and Print buttons are only available when the protocol simulator is launched in standalone mode, which are not available as we are using the applet mode.
The command panel displays the available commands at the current point of simulation. Clicking on one of the commands will progress the simulation, seen in the simulation view.
Continue to the experiment instructions on the following page…
EXPERIMENT #1: SENDING AND ACKNOWLEDGING MESSAGE(S)
This is the simplest simulation to get a feel of ABP.
1. Click Clear button to start a fresh simulation
2. In the command panel, click Sender: Send DATA(0)
3. Click Medium: Deliver DATA(0)
4. Click Receiver: Send ACK(1)
5. Click Medium: Deliver ACK(1)
6. Click Sender: Send DATA(1)
7. Click Medium: Deliver DATA(1)
8. Click Receiver: Send ACK(0)
9. Click Medium: Deliver ACK(0)
Observe the message exchange between the sender and the receiver, especially the sequence number of DATA and ACK.
Capture a screenshot of your simulation that includes a date/time stamp or unique desktop element, and answer the following question.
Q1: Briefly explain why ACK(1) is sent for DATA(0).
EXPERIMENT #2: TIMEOUT OF MESSAGE(S)
Here the simulation gets a little more complex. Do the following
1. Click the Clear button to start a fresh simulation.
2. In the command panel, click Sender: Send DATA(0)
3. Click Medium: Deliver DATA(0)
4. Click Receiver: Send ACK(1)
5. Click Sender: Timeout
6. Click Medium: Deliver ACK(1)
7. Click Medium: Deliver DATA(0)
8. Click Receiver: Send ACK(1)
9. Click Medium: Deliver ACK(1)
Capture a screenshot of your simulation that includes a date/time stamp or unique desktop element, and answer the following questions.
Q2: Observe the simulation in the timeline (from top to bottom). Explain briefly why there are two ACK(1) sent.
Q3: According to the protocol, what happens when the second DATA(0) arrives?
EXPERIMENT #3: LOSS OF MESSAGES
ABP is a connection-less protocol. There are possibilities for the loss of messages between transmissions. Do the following:
1. Click the Clear button to start a fresh simulation.
2. Provide the simulation for the following scenario description:
The medium between the sender and receiver is not stable. The sender sends data and did not receive an acknowledgement because the data is lost by the medium. Its second attempt is successful, however there is no successful receipt of acknowledgement (acknowledgement not delivered or taking too long). Finally, a re-attempt results in a success in the communication of both sender and receiver for this particular message.
Capture a screenshot of your simulation that includes a date/time stamp or unique desktop element, and answer the following question.
Q4: From the observation in your simulation, what can you tell about the behavior of the sender and the receiver from the perspective of sending a message?
EXPERIMENT #4: TIMEOUT OF MESSAGE(S) II
We have seen in Experiment #2 that the receiver discards the same piece of data if it arrives, but the receiver still sends the relevant acknowledgement, nevertheless. Do a simulation and see what happens to a sender if it receives two acknowledgements to the same message.
Capture a screenshot of your simulation that includes a date/time stamp or unique desktop element, and answer the following question.
Q5: From the observation, what happens when the sender receives two acknowledgements to the same message?
Submitting your work
In a new Word document, include your screenshots of the simulations for each experiment, along with your answers for each of the five questions. Save the file as Lastname_Firstname_Assignment #. Include your name in the assignment file itself and submit your file to Blackboard. Any assignment with screenshots that do not include a visible date and timestamp or a unique desktop element to identify the student’s work will not be accepted.