Ramos: Concurrent Writing and Reconfiguration for Collaborative Systems
Résumé
Collaborative systems, with specific distributed systems allow multiple participants to work in a common virtual space, while reproducing the different ways to interact in a group. Such systems have to manage not only the sharing of context and particularly the context consistency, but also at the same time the fault tolerance. No system in the literature combines these two requirements. In this paper, we are proposing the new protocol Ramos which implements a fault-tolerant, and a context consistency (ensuring a total order of write operations) based on an asynchronous message-passing model. Communication takes place via gossip messages, which are sent at any frequency between a dynamic set of nodes. Ramos is based on the Rambo III algorithm for replicated data services. Rambo III provides two functions: reconfiguration of a dynamic set of nodes and reading/writing of a replicated object. In Ramos the reconfiguration process from Rambo III is adapted to the needs of collaborative systems and Paxos is used to execute concurrent write operations. It is assumed that from a total set of 2f+1 nodes, at most a subset of f nodes is allowed to fail simultaneously. Furthermore, it is assumed that the application using Ramos provides a leader-election method. Ramos, the algorithm proposed here, provides one significant feature: all write operations are totally ordered.