Reputation: 31
I am doing with a friend of mine a system to implement a reliable multi cast library. We are dealing with many processes belonging to a group; any process can join or leave the group. If one sends a message, this is delivered by all the others.
We would like to handle the sender's crash so that when this happens, either all or none of the recipients deliver the message.
Can you suggest a good strategy (algorithm) to handle the part about all or nothing?
Upvotes: 3
Views: 521
Reputation: 2316
This is no minor undertaking and there are a number of subtle issues that have to be considered. Namely, how do you precisely define "all recipients". For a complete in-depth reply, including theory and Java code, I recommend Introduction to Reliable and Secure Distributed Programming, by Cachin, Guerraoui and Rodrigues. You should find a solution to reliable broadcast ("all or none") in chapter 3. Look also in chapters 5 and 6 on how to deal with processes joining and leaving the group.
Upvotes: 2