0% found this document useful (0 votes)
5 views

elementry4

document4

Uploaded by

Venkat
Copyright
© © All Rights Reserved
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

elementry4

document4

Uploaded by

Venkat
Copyright
© © All Rights Reserved
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 6

Elementary Data Link Protocols

Data Link Layer communicates with the network layer and physical layer. Generally, the data link layer
receives packets and sends the data to the physical layer in form of frames. Elementary Data Link Protocols
ensure reliability over a network during the transmission of frames. The Elementary data link protocols help
the data link layer solve problems such as frame loss or damage and flow control.

Elementary Data Link Protocols


When we study the various Elementary data link protocols, we will assume that there is an unreliable
channel over which frame loss occurs during transmission. To recover frames lost during transmission, the
sender starts the internal clock each time a frame is sent. The sender will wait for some time, and if no reply
is received within the predetermined time, the clock times out, and the data link layer will receive an
interrupt signal.

There are some methods or procedures executed by the protocol that turn the timer on and off,
respectively. The clock is reset only after an interval is reached.

Since the Elementary data link protocol is used at the data link layer, the data link layer also controls access
to the network layer. The data link layer decides when to enable the network layer to send packets to
prevent it from swamping packets with them.

The below diagram shows that there are 3 types of Elementary Data Link Protocols.

1. Utopian Simplex Protocol

An utopian simplex protocol is a simple protocol because it does not worry about whether something is
going right or wrong on the channel.

 In this protocol, data is transmitted in only one direction. Therefore it is unidirectional.

 No matter what is happening in the network, the sender and receiver are always ready to
communicate. So they also ignore the delay in processing.
 This protocol is just a consideration so that there is infinite buffer space available on the sender and
receiver.

 It is an unrealistic protocol, or you can say it is an unrestricted protocol.

 In this protocol, the channel used between layer-2 of the sender and receiver never discards or
damages the frame during communication.

Working of Utopian Simplex Protocol

In protocol, two entities are sender and receiver, who communicate with each other over a channel. The
sender process and receiver process are running at the data link layer of the sender’s machine and the
receiver’s machine, respectively. Sequence number and acknowledgment number are not used. Only the
undamaged frame arrival process is going on.

The diagram below explains the utopian simplex protocol.

 As you can see in the diagram, the direction of communication is in only one direction. The sender is
sending the data over the line as fast as possible. The sender’s machine fetches packets from the
network layer, creates frames, and sends the frames over the line.

 On the other hand, the receiver is waiting to receive the frame. The frame comes from the sender,
so the receiver will take the frame that comes into the hardware buffer and send it to the network
layer.

 After the frame is sent to the network layer, the receiver’s data link layer will sit back to wait for the
next frame.
Because this protocol is unrealistic and unrestricted, it has no flow control and error control restrictions.
Here, no frame is lost during transmission, and hence no field of the frame is required to control the flow of
data and detect the error.

2. Simplex Stop-and-Wait Protocol for Noiseless Channel

 In a stop-and-wait protocol, the sender stops after sending a frame to the receiver and waits for an
acknowledgment before sending another frame.

 We here assume a noiseless channel that is error-free on which the frame is never damaged or
corrupted. Here the channel is error-free but does not control the flow of data.

 Using the simplex stop-and-wait protocol, we can prevent the sender from flooding the receiver with
frames faster than the receiver can process them.

 To prevent flooding on the receiver side, one solution is to enable the receiver to process frames
back-to-back by adding a buffer of sufficient size. We can enhance the processing capabilities of the
receiver so that it can quickly pass the received frame to the network layer. But it’s still not a general
solution.

 Common solutions for addressing flooding issues on the receiver side, providing feedback to the
sender to reduce the flow rate at the receiver.

 So that, in the simplex stop-and-wait protocol, the receiver sends a dummy frame back to the sender
after the packet is sent over the network layer, asking the sender to send the next frame.

 Frames can be transmitted to or received from the sender or receiver, so the simplex stop-and-wait
protocol is bidirectional.

Working of Simplex Stop-and-Wait Protocol (Noiseless Channel)

As we got some basic idea about stop-and-wait protocol. Now, let’s see how the Simplex stop-and-wait
protocol handles flow control over a noiseless channel.

The diagram below explains the working of the simplex stop-and-wait protocol.
 As you can see in the above diagram that the sender is sending the frame to the receiver. After
sending the frame, the sender stops the transmission and waits for the acknowledgment from the
receiver.

 As soon as the receiver receives the frame, it opens it and sends it to the network layer for further
processing. Now, the receiver will create an acknowledgment, which allows the sender to send the
next frame.

 You can see that the communication is bidirectional, but they are using half-duplex mode.

3. Simplex Stop-and-Wait Protocol for a Noisy Channel

Here, assume the general situation in which the sender and receiver on the communication channel make
an error during transmission. Frames can either be damaged or lost completely during transmission.

 On a noisy channel, the receiver has only a limited buffer capacity and a limited processing speed, so
the protocol prevents the sender from flooding the receiver with data too fast to handle it.

 In rare cases, the frame sent by the sender may be damaged in such a way that the checksum is
correct, causing this and all other protocols to fail. To avoid this situation, a timer is added.

 Suppose, receiver’s acknowledgment is lost during transmission, the sender will wait for
acknowledgment for some time, and after the timeout, the sender will send the frame again. This
process is repeated until the frame arrives and the acknowledgment is received from the receiver.
 The data link layer is responsible for flow and error control. Therefore, when the sender’s network
layer transmits a series of packets to the data link layer, the data link layer transmits the packets
through the receiver’s data link layer to the network layer.

 Here, the network layer has no functionality to check whether there is an error in the packet, so the
data link layer must guarantee to the network layer that no transmission error occurs in the packet.
Although duplicate packets may arrive at the network layer, we can prevent this by using this protocol.

Working of Simplex Stop-and-Wait Protocol for a Noisy Channel

As we have seen in the above section that the network layer does not have the functionality to detect
errors or duplication in the packet, so it is guaranteed by the data link layer that there are no errors in the
packet. But duplicate packets can arrive at the network layer. So, let us understand this scenario with an
example.

The diagram below explains the working of the simplex stop-and-wait protocol for a noisy channel.

 As you can see in the above diagram, the sender sends the packet in the form of a frame to the
receiver. When the receiver receives the frame, it sends the frame in a packet format to the network
layer.

 After frame-1 successfully reaches the receiver, the receiver will send an acknowledgment to the
sender. The sender will send the frame-2 after receiving the acknowledgment from the receiver. But
as shown in the figure, frame-2 is lost during transmission. Therefore, the sender will retransmit
frame-2 after the timeout.

 Further, the receiver is sending an acknowledgment to the sender after receiving frame-2. But the
acknowledgment is completely lost during transmission.
 The sender is waiting for the acknowledgment, but the timeout has elapsed, and the
acknowledgment has not been received. So the sender will assume that the frame is lost or
damaged, and it will send the same frame again to the receiver.

 The receiver receives the same frame again. But how does the receiver recognize that the packet of
the frame is a duplicate or the original? So, it will use the sequence number to identify whether the
packet is duplicate or new.

In this protocol, the only ambiguity is one frame and its next frame. Suppose frame-n is lost or damaged,
and the receiver didn’t receive the frame. Then, the receiver will not even send the acknowledgment to the
sender. So the sender will keep sending frames again and again until the acknowledgment is received in a
given amount of time.

Some possibilities exist on this protocol as follows:

 If the packet is successfully received on the receiver side and the sender receives a valid
acknowledgment, the sender fetches the next packet from the network layer and overwrites the
previous packet in the buffer. Also, it increases the sequence number of the packet to prevent
duplication of packets.

 If a damaged frame occurs or the clock timer has expired, the packet’s buffer and sequence number
will not change, and the sender will forward the same or the next packet to the receiver.

 When the frame reaches the receiver successfully, the receiver will check the sequence number to
see if it is a duplicate. If not, it is accepted and passed to the network layer, and an acknowledgment
will be sent to the sender.

You might also like