Unicast, Multicast and Broadcast in Industrial Communication Systems

A post by our colleague Roland Leuthe, Head of Development “Systems Software”

In one of our last blog articles we explained the basic characteristics of the different transmission modes of communication: unicast, multicast, and broadcast. How can these different modes now be reasonably implemented into industrial communication systems?

First I would like to start with some short definitions to bring back to mind the differences between the modes.

Unicast mode (point-to-point transmission) means one sender sends data to one receiver. The receiver optionally acknowledges that the information has been received correctly.

Multicast mode (point-to-multipoint transmission) means one sender sends data to a group of N receivers for which the data is intended for. Typically, the sender receives no acknowledgements from the group if they received the data correctly.

Broadcast mode (point-to-multipoint transmission) means one sender sends data to all members of a subnet whether they are interested in the data or not. Just as with multicast, the sender typically doesn’t receive acknowledgements from the receivers.

In industrial communication systems, different types of data are transmitted. On the one hand there is media data (e.g. audio, video) and on the other hand control data (e.g. call setup/termination) and signaling data (e.g. a flashing LED at an intercom station indicates an incoming call).

Control and Signaling Data

Almost all control protocols used in telecommunication and in the IP world are point-to-point protocols, i.e. they use the unicast mode. This mode ensures secure transmission of data and reliable control processing as a request or command has to be acknowledged by the receiver (positive or negative acknowledgement). The sender then knows if the information has been received correctly or not. Hence, for control and signaling data unicast is the best transmission mode. Let’s take a look at two application examples to show you why.

Using Unicast for Control and Signaling Data

Unicast_Example1

A system consists of 3 IP devices. One of them is the master intercom station which receives one request/command per second from the other two devices. In return, the master intercom station acknowledges these requests/commands by sending one message to each of the two field intercom stations. In this scenario, the master intercom station receives
2 messages and acknowledges them by sending 2 messages back.

Using Broadcast or Multicast with Acknowledgments

Multicast_Broadcast_ExampleThe second example describes the same application as the first one except that the broadcast or multicast mode with acknowledgements is used for the transmission of control data.

Again there is a system with one master intercom station and two field intercom stations. Now, imagine broadcast or multicast are used: Each of the two field intercom stations sends one request to the master, but also to the other device, where this message is rejected as it is only intended for the master intercom station. The master intercom station in return sends acknowledgements to each of the two field intercom stations, no matter if one is actually not interested in the information. Each field intercom station has to evaluate itself if the information received is useful or not. Significant traffic and processor overload is caused for the individual devices and lots of messages which are not relevant are deleted.

Now, imagine a system with 101 IP devices. There is no change in processor load for the field intercom stations if you use unicast mode, as each device only receives its intended acknowledgement. However, when transmitting data in broadcast mode each device receives 201 messages per second from the other devices. There are 100 requests and 100 acknowledgments which are actually not relevant and are deleted. Only
1 message contains the information required. This means a reliable control communication does not scale at all if broadcast or multicast mode is used.

Audio Data

For point-to-point communication of audio data, the unicast transmission mode is also often used, as there is only one sender and one receiver. For point-to-multipoint communication (e.g. group calls) the multicast transmission mode provides significant advantages. The CPU (central processing unit) load of the sender is less affected, as the audio data is only transmitted once no matter how many receivers exist. Also the load on the network is reduced, as data is only sent once throughout the network.

Broadcast in Industrial Communication Systems

Almost each IP device which is connected to a network uses broadcast messages for discovery purposes. The ARP protocol (Address Resolution Protocol) is used to convert IP addresses to MAC addresses, for example. The DHCP protocol (Dynamic Host Configuration Protocol) is used for dynamic assignment of IP addresses. Both protocols use broadcast messages in the discovery phase.

In an industrial communication system broadcast messages can be used to detect which IP devices belong to the communication system during start-up. This is a convenient feature in order to reduce configuration effort.

Conclusion

Especially Iarge communication systems should use the unicast transmission mode to transmit control and signaling data. Also for point-to-point audio communication the unicast transmission mode is the best choice to avoid excess traffic and processor overload. Typical types of applications are: private call, control protocols.

Furthermore, the system may use the multicast transmission mode to transmit media data if there are several recipients and if the infrastructure of the network permits it. Typical types of applications are: group call, conference, video broadcasting.

The broadcast transmission mode should only be used for discovery purposes as broadcast messages always have to be processed by all devices within the IP subnet.

The INTRON-D plus system uses exactly the same principles as described above.

Leave a comment

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