- Asked 2/15
- 2072 Chaitra · 3+5 marks
- 2075 Chaitra · 2+6 marks
Reasons for replication; active replication
Short answer
Replication improves performance/scalability, availability, fault tolerance, and reduces network load. Active replication multicasts each request to all replica managers using total order; they execute independently and reply. Advantages: immediate failure masking, Byzantine tolerance with voting, load sharing. Disadvantages: requires total-order multicast, deterministic operations, and wastes resources by repeating work.
What are the reasons for replication? Explain active replication model with its advantages and disadvantages. (How is replication used as a basic scaling technique in distributed system?)
Reasons for replication
Replication means keeping copies of data or services on multiple computers. Reasons:
- Performance and scalability: many replicas share the load of requests; copies placed near clients (caching, CDN, web mirrors) cut latency and network traffic. This is how replication is used as a basic scaling technique: read requests are spread over replicas, so throughput grows with their number, and a distant server's load is reduced.
- Availability: if one server fails, others can serve; the service stays available (availability = 1 − pⁿ for n replicas failing independently with probability p).
- Fault tolerance / reliability: data survive crashes; with majority voting even wrong (Byzantine) replies can be tolerated.
- Reduced network load and disconnected operation: local copies work in a mobile or poorly connected environment. Cost: keeping replicas consistent.
Active replication model
All replicas are equal state machines.
Client --> Front end --multicast (total order)--> RM1, RM2, RM3
<---------- replies --------------
Steps:
- The front end attaches a unique id to the client request and atomically multicasts it (totally ordered, reliable) to all replica managers (RMs).
- Each RM processes the request independently in the same order, so each reaches the same state (deterministic operations needed).
- Each RM sends its reply to the front end, which returns the first reply (crash faults), or the majority reply (Byzantine faults) to the client.
Advantages
- Failures are masked immediately; no failover delay and no recovery step.
- Tolerates Byzantine failures with 2f+1 replicas and voting.
- Simple client logic; load of reads can be shared.
Disadvantages
- Needs total-order reliable multicast (expensive).
- Operations must be deterministic; otherwise replicas diverge.
- Every replica does all the work (high resource use; no saving of computation).
- More network traffic and complexity than passive replication.
✓ Answer checked by Claude Opus 5.5 (high effort)
Related questions
- Passive vs active replication; availability · Distributed System, chapter 7 · asked 2×
- Replication as scaling; concurrent invocations · Distributed System, chapter 7
- Active vs passive; active replication working · Distributed System, chapter 7
- Reasons for replication; fault tolerant services · Distributed System, chapter 7
- Replication objectives; primary-backup · Distributed System, chapter 7
- Fault; primary-backup vs active · Distributed System, chapter 7
- RWH: reasons and basic components · Building Technology, chapter 12
- Need for equalization and basic technique · Wireless Communication, chapter 5
- Relevance of analog filters; frequency scaling · Filter Design, chapter 1
- Distributed system in big data example · Big Data Technologies, chapter 1