What is the concept of flow and error control and their differences?


Let us understand what error control in the computer networks is.

Error Control

Error control is concerned with ensuring that all frames are delivered to destination possibly in an order.

To ensure the delivery it requires three items, which are explained below −

Acknowledgement

Typically, reliable delivery is achieved using the “acknowledgement with retransmission” paradigm, whereas the receiver returns a special ACK frame to the sender indicating the correct receipt of a frame.

In some systems the receiver also returns a negative ACK (NACK) for incorrectly received frames. So, it tells the sender to retransmit a frame without waiting for a timer to expire.

Timers

One problem that simple ACK/NACK schemes fail to address is recovering from a frame that is lost, and as a result, fails to solicit an ACK or NACK.

What happens if ACK or NACK becomes lost?

Retransmission timers are used to resend frames that don’t produce an ACK. When we are sending a frame, schedule a timer so that it expires at some time after the ACK should have been returned. If the timer goes 0, then retransmit the frame.

Sequence Number

Retransmission introduces the possibility of duplicate frames. To reduce duplicates, we must add sequence numbers to each frame, so that a receiver can distinguish between new frames and old frames.

Flow Control

It deals with throttling speed of the sender to match to the speed of the receiver. There are two approaches for flow control −

Feedback-based flow control

The receiver sends back information to the sender giving permission to send more data or at least the sender has to tell how the receiver is doing.

Feedback-based flow control

The receiver sends back information to the sender giving permission to send more data or at least the sender has to tell how the receiver is doing.

Rate-based flow control

The protocol has a built-in mechanism that limits the rate at which sender may transmit data, without using feedback from the receiver.

The various flow control schemes use a common protocol that contains well defined rules about when s sender may transmit the next frame. These types of rules often prohibit frames from being sent until the receiver has granted permission, either implicitly or explicitly.

Differences

The major differences between Flow Control and Error Control are as follows −

Flow ControlError Control
It is a method used to maintain proper transmission of the data from sender to the receiver.
It is used to ensure that error- free data is delivered from sender to receiver.
Feedback-based flow control and rate-based flow control are the various approaches used to achieve Flow control.
Many methods can be used here like Cyclic Reduction Check, Parity Checking, checksum.
It avoids overrunning and prevents data loss.
It detects and corrects errors that might have occurred in transmission.
Examples are Stop and Wait and Sliding Window.
Examples are Stop-and-Wait ARQ, Go-Back-N ARQ, Selective-Repeat ARQ.

Updated on: 11-Sep-2021

2K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements