IT infrastructure alternating bit protocol

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.

IT infrastructure alternating bit protocol Image 1

Q1: Briefly explain why ACK(1) is sent for DATA(0).

The receiver is transmitting an acknowledgement of receiving the data by returning the sequence bit of the next data expected. Receipt of DATA(0) is acknowledged with ACK(1), and receipt of DATA (1) with ACK(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.

IT infrastructure alternating bit protocol Image 2

Q2: Observe the simulation in the timeline (from top to bottom). Explain briefly why there are two ACK(1) sent.

The sender transmitted a second packet containing the same data and sequence because it did not receive the acknowledgement before the timeout. The sender will continuously send the data until receiving confirmation, and the receiver will continue to send acknowledgements in response.

Q3: According to the protocol, what happens when the second DATA(0) arrives?

When the second packet arrives containing the same data and sequence, the receiver will return an acknowledgement of the receipt, then drop the packet’s data.

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.

IT infrastructure alternating bit protocol Image 3

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?

The sender will continue to send the message, assuming that the packet was not received, until it receives and acknowledgement. The receiver will respond to each of the packets received with the alternate bit.

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.

IT infrastructure alternating bit protocol Image 5

Q5: From the observation, what happens when the sender receives two acknowledgements to the same message?

If the sender receives two ACK(1) and DATA(1) has not been sent, the sender will ignore the second receipt, and send DATA(1). If DATA(1) has already been sent, and ACK(1) is received, the sender will retransmit DATA(1) assuming that the second ACK(1) is an acknowledgement of a damaged packet. The sender will not move on to DATA(0) until it receives an ACK(0) from the receiver.

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.