What is Unreliable Communication?

This blog post defines and describes Unreliable Communication.

Main Image for Unreliable Communication

Sharing is caring!

There are many ways to categorize the methods or manners of communication. 

In other blog posts, we talked about Connection-Oriented and Connectionless Communication.  Another way to categorize the various methods of communication is to divide these methods into the following groups.

Now, if we choose to pick reliable or unreliable communication, most of us would choose reliable communication

However, if we truly understand the differences between these two forms of communication, then our choice may not be so obvious. 

In this blog post, I will discuss unreliable communication.  I will discuss reliable communication in another post. 

About Unreliable Communication

In general, unreliable communication works as follows:

  • When the Sending Terminal sends a data frame and
  • The Receiving Terminal (that receives the frame) sends nothing back to the Sending Terminal.
  • In other words, the Receiving Terminal does not send an Acknowledgment back to the Sending Terminal.
  • Consequently, the Sending Terminal is NEVER HALTED.
  • The two Terminals send data to the other terminal whenever they have data to send.
  • That’s pretty much it!!

Figures 1 and 2 show the behaviors of two Terminals in an Unreliable Communication System.

Terminal A and B does not have timers and are never commanded into Halted States

Figure 1, Terminals A and B Sending Unrestrained Traffic (Data Frames) to each other. These terminals do not have Timers, nor are they ever halted.

Unreliable Communication - Terminals A and B do not send Acknowledgements

Figure 2, Terminals A and B DO NOT Send Any Acknowledgements to each other.

Why is Unreliable Communication sometimes preferred over Reliable Communication?

In real-time applications (such as real-time video applications, video streaming, or voice applications), the timely delivery of data is essential for the application to work and is also good for the customer experience.

In many of these applications, occasional bit errors within the data are not usually detrimental to the customer experience and enjoyment. Forcing the retransmission of frames (for example) due to bit-errors is far more disruptive for these services than the occasional bit-errors.

For An Unreliable Communication System to Work

The System Designer needs to make sure to either limit the data rate of the Sending Terminal or

Ensure that the Receiver always has sufficient bandwidth to handle the data rate/bandwidth from the Sending Terminal.

This way, the Sending Terminal will never swamp out or overrun the Receiving Terminal with excess data.

These constraints permit the Sending and Receiving Terminals to operate without any Flow-Control Mechanism (which requires Acknowledgements to function).

Applications that Require Unreliable Communication

  • Any real-time voice or video applications
  • Occasional bit errors are typically not a big problem for these applications, and
  • It is not worth interrupting real-time traffic flow to retransmit frames due to bit errors.

Once again, performing the retransmissions of erred frames is more disruptive (in these applications) than occasional data errors in traffic.

Sharing is caring!

Author: Darrell Smith

Darrell Smith has more than 30 years of experience as an Electrical Engineer. He has about 20 years of experience as an Applications Engineer and the remainder of his time was spent in Hardware Design and Product Marketing. He will now be sharing his wealth of knowledge on this blog.

Leave a Reply

Your email address will not be published. Required fields are marked *