Open In App

Group Communication in distributed Systems

Last Updated : 02 Nov, 2023
Like Article

Communication between two processes in a distributed system is required to exchange various data, such as code or a file, between the processes. When one source process tries to communicate with multiple processes at once, it is called Group Communication. A group is a collection of interconnected processes with abstraction. This abstraction is to hide the message passing so that the communication looks like a normal procedure call. Group communication also helps the processes from different hosts to work together and perform operations in a synchronized manner, therefore increasing the overall performance of the system.

Types of Group Communication in a Distributed System:

  • Broadcast Communication : When the host process tries to communicate with every process in a distributed system at same time. Broadcast communication comes in handy when a common stream of information is to be delivered to each and every process in most efficient manner possible. Since it does not require any processing whatsoever, communication is very fast in comparison to other modes of communication. However, it does not support a large number of processes and cannot treat a specific process individually.

A broadcast Communication: P1 process communicating with every process in the system

  • Multicast Communication : When the host process tries to communicate with a designated group of processes in a distributed system at the same time. This technique is mainly used to find a way to address problem of a high workload on host system and redundant information from process in system. Multitasking can significantly decrease time taken for message handling.

A multicast Communication: P1 process communicating with only a group of the process in the system

  • Unicast Communication : When the host process tries to communicate with a single process in a distributed system at the same time. Although, same information may be passed to multiple processes. This works best for two processes communicating as only it has to treat a specific process only. However, it leads to overheads as it has to find exact process and then exchange information/data.

A unicast Communication: P1 process communicating with only P3 process 

Previous Article
Next Article

Similar Reads

Interprocess Communication in Distributed Systems
Interprocess Communication is a process of exchanging the data between two or more independent process in a distributed environment is called as Interprocess communication. Interprocess communication on the internet provides both Datagram and stream communication. Examples Of Interprocess Communication: N number of applications can communicate with
2 min read
Difference between Resource and Communication Deadlocks in Distributed Systems
A deadlock occurs when a set of processes requests resources that are already occupied by other processes in the group. Because each process possesses a resource and waits for another resource held by another process, the execution of two or more processes is blocked. Four requirements must be met for a deadlock to occur : Mutual Exclusion -At leas
5 min read
Distributed Consensus in Distributed Systems
A procedure to reach a common agreement in a distributed or decentralized multi-agent platform. It is important for the message passing system. Example - A number of processes in a network decide to elect a leader. Each process begins with a bid for leadership. In traditional or conventional distributed systems, we apply consensus to ensure reliabi
4 min read
Heterogeneous and other DSM systems | Distributed systems
A distributed shared memory is a system that allows end-user processes to access shared data without the need for inter-process communication. The shared-memory paradigm applied to loosely-coupled distributed-memory systems is known as Distributed Shared Memory (DSM). Distributed shared memory (DSM) is a type of memory architecture in computer scie
7 min read
Distributed System - Thrashing in Distributed Shared Memory
In this article, we are going to understand Thrashing in a distributed system. But before that let us understand what a distributed system is and why thrashing occurs. In naive terms, a distributed system is a network of computers or devices which are at different places and linked together. Each one of these distributed computers shares the same s
4 min read
Distributed System - Types of Distributed Deadlock
A Deadlock is a situation where a set of processes are blocked because each process is holding a resource and waiting for another resource occupied by some other process. When this situation arises, it is known as Deadlock. [caption width="800"]Deadlock[/caption]A Distributed System is a Network of Machines that can exchange information with each o
4 min read
Difference between a Distributed Lock Manager and a Distributed Database
In today’s world, managing data and resources efficiently across multiple locations is crucial. Distributed Lock Managers and Distributed Databases are foundational in achieving this. They serve different yet complementary roles in distributed systems. While a distributed lock manager coordinates access to shared resources, a distributed database h
5 min read
How can Heartbeats Detection provide a solution to network failures in Distributed Systems
What are Network Failures in distributive systems? Network failures are one of the most common types of failures in distributed systems. A distributed system is composed of multiple machines or nodes that communicate with each other to achieve a common goal. Network failures occur when there is a disruption in the communication between these nodes,
4 min read
Remote Write Protocol in Distributed Systems
Pre-requisites: Network Protocols A protocol is a set of rules or procedures that need to be followed on every request. The data store is a high-level view of databases; that is, it is simply a collection of all the databases scattered across the geographical region. In a distributed system, the client can perform a read or write a request on data
3 min read
Hashing in Distributed Systems
Prerequisite – Hashing A distributed system is a network that consists of autonomous computers that are connected using a distribution middleware. They help in sharing different resources and capabilities to provide users with a single and integrated coherent network. One of the ways hashing can be implemented in a distributed system is by taking h
3 min read
Article Tags :