---
title: "Short note: Reliable group communication"
subject: "Distributed System"
chapter: 9
key: "semester_7/distributed_system:reliable-group-comm-note"
source: https://www.bctengineer.com/q/semester_7/distributed_system/reliable-group-comm-note
site: BCT Engineering
---

# Short note: Reliable group communication

Distributed System · Chapter 9: Fault Tolerance

- Asked in: 2075 Chaitra, 4 marks
- Video: [3.10 Reliable group communication](https://www.youtube.com/watch?v=xCeWDmdk-Dc) — OU Education
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_7/distributed_system/reliable-group-comm-note
- Whole chapter: https://www.bctengineer.com/md/semester_7/distributed_system/chapter-9

## Question

Write a short note on reliable group communication.

## Short answer

Reliable group communication delivers a message to all non-faulty group members. The sender assigns sequence numbers and receivers send NACKs for missing messages; feedback suppression and hierarchical multicast avoid feedback implosion. Atomic multicast and virtual synchrony provide stronger guarantees.

## Answer

**Reliable group communication (reliable multicast)** means that a message sent to a group is delivered to **all** non-faulty members of the group.

- **Basic scheme**: the sender gives each message a **sequence number** and keeps it in a history buffer. A receiver sends a **negative acknowledgement (NACK)** when it finds a missing sequence number, and the sender retransmits. (Sending an ACK for every message would overwhelm the sender: *feedback implosion*.)
- **Scalability**: use **feedback suppression** (a receiver multicasts its NACK after a random delay, so other receivers missing the same message suppress theirs) or hierarchical multicast, where the group is organized as a tree of sub-groups whose local coordinators handle ACKs and retransmission for their sub-group.
- **Atomic multicast**: the message is delivered to all members or to none, even if the sender crashes. It needs virtual synchrony.
- **Message ordering**: unordered, FIFO, causal and total ordering.
- **Virtual synchrony**: group views change only between message deliveries, and all members that survive a view change have delivered the same set of messages.

Example: a replicated database, where every update must reach all replicas in the same order.

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. What does reliable group communication guarantee?
   A. A message is delivered to at least one member
   B. A message is delivered to all non-faulty group members
   C. Messages are delivered only in total order
   D. The sender need not keep history
   Answer: B. Reliable multicast means delivery to all non-faulty members of the group. (Key point: Reliable multicast definition)

2. Why do receivers use NACKs rather than ACKs for each message in the basic scheme?
   A. NACKs are faster to compute
   B. ACKs from every receiver would overwhelm the sender (feedback implosion)
   C. NACKs guarantee ordering
   D. ACKs cannot carry sequence numbers
   Answer: B. Per-message ACKs from many receivers cause feedback implosion; receivers instead request retransmission only when a gap in sequence numbers appears. (Key point: NACK scheme)

3. What defines atomic multicast?
   A. Delivery in FIFO order only
   B. Delivery to all members or to none, even if the sender crashes
   C. Delivery only to the nearest member
   D. Delivery without sequence numbers
   Answer: B. All-or-nothing delivery, which requires virtual synchrony. (Key point: Atomic multicast)

4. How does hierarchical multicast improve scalability?
   A. Sub-group coordinators handle ACKs and retransmission locally
   B. Every receiver contacts the sender directly
   C. Messages are sent unordered
   D. Sequence numbers are removed
   Answer: A. A tree of sub-groups with local coordinators reduces the load on the original sender. (Key point: Hierarchical multicast)

## Related in Distributed System

- [Reliable client-server communication](https://www.bctengineer.com/question.md?key=semester_7%2Fdistributed_system%3Areliable-client-server) — Distributed System, chapter 9
- [Triple modular redundancy; reliable C/S](https://www.bctengineer.com/question.md?key=semester_7%2Fdistributed_system%3Atmr-reliable-client-server) — Distributed System, chapter 9

## Related in other subjects

- [IRC in group communication](https://www.bctengineer.com/question.md?key=semester_8%2Finternet_and_intranet%3Airc-group-communication-dsl) — Internet and Intranet, chapter 7
- [Group discussion and participation techniques](https://www.bctengineer.com/question.md?key=semester_5%2Fcommunication_english%3Agroup-discussion-techniques) — Communication English, chapter 4
