Reliable communication in the presence of failures
ACM Transactions on Computer Systems (TOCS)
The causal ordering abstraction and a simple way to implement it
Information Processing Letters
Lightweight causal and atomic group multicast
ACM Transactions on Computer Systems (TOCS)
Causal Ordering in Distributed Mobile Systems
IEEE Transactions on Computers - Special issue on mobile computing
An adaptive causal ordering algorithm suited to mobile computing environments
Journal of Parallel and Distributed Computing
A concurrency control model for real-time distributed collaboration
Journal of Systems Architecture: the EUROMICRO Journal
Mu3D: a causal consistency protocol for a collaborative VRML editor
VRML '00 Proceedings of the fifth symposium on Virtual reality modeling language (Web3D-VRML)
From Causal Consistency to Sequential Consistency in Shared Memory Systems
Proceedings of the 15th Conference on Foundations of Software Technology and Theoretical Computer Science
An Adaptive Protocol for Implementing Causally Consistent Distributed Services
ICDCS '98 Proceedings of the The 18th International Conference on Distributed Computing Systems
Hi-index | 0.00 |
Causal consistency stipulates that causally dependent writes to data items should be executed in causal order. Traditionally this has been done by causally ordered message delivery using vector clocks. In a vector clock of size N, each element of the vector corresponds to each of the N hosts in the system and hence the message overhead is Θ(N). In a mobile environment the number of hosts can not be fixed because hosts join and leave the system dynamically. Hence traditional vector clocks are not suitable in a mobile environment. Consistency of a system consisting of M data items can be maintained using a vector in which each element corresponds to each data item. We propose a mechanism for maintaining causal consistency whose message overhead is Θ(M). Such a model will be advantageous in a mobile environment, because the message overhead is independent of the number of hosts. Further in applications such as collaboration the number of data items is small. Also, the delivery of a message is never inhibited due to causally overwritten messages.