Abortable Fork-Linearizable Storage

  • Authors:
  • Matthias Majuntke;Dan Dobre;Marco Serafini;Neeraj Suri

  • Affiliations:
  • DEEDS Group, TU Darmstadt, Darmstadt, Germany 64289;DEEDS Group, TU Darmstadt, Darmstadt, Germany 64289;DEEDS Group, TU Darmstadt, Darmstadt, Germany 64289;DEEDS Group, TU Darmstadt, Darmstadt, Germany 64289

  • Venue:
  • OPODIS '09 Proceedings of the 13th International Conference on Principles of Distributed Systems
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

We address the problem of emulating a shared read/write memory in a message passing system using a storage server prone to Byzantine failures. Although cryptography can be used to ensure confidentiality and integrity of the data, nothing can prevent a malicious server from returning obsolete data. Fork-linearizability [1] guarantees that if a malicious server hides an update of some client from another client, then these two clients will never see each others' updates again. Fork-linearizability is arguably the strongest consistency property attainable in the presence of a malicious server. Recent work [2] has shown that there is no fork-linearizable shared memory emulation that supports wait-free operations. On the positive side, it has been shown that lock-based emulations exist [1,2]. Lock-based protocols are fragile because they are blocking if clients may crash. In this paper we present for the first time lock-free emulations of fork-linearizable shared memory. We have developed two protocols, Linear and Concur . With a correct server, both protocols guarantee linearizability and that every operation successfully completes in the absence of step contention, while interfering operations terminate by aborting. The Concur algorithm additionally ensures that concurrent operations invoked on different registers complete successfully.