-
Ares II: Tracing the Flaws of a (Storage) God
Authors:
Chryssis Georgiou,
Nicolas Nicolaou,
Andria Trigeorgi
Abstract:
Ares is a modular framework, designed to implement dynamic, reconfigurable, fault-tolerant, read/write and strongly consistent distributed shared memory objects. Recent enhancements of the framework have realized the efficient implementation of large objects, by introducing versioning and data stri** techniques. In this work, we identify performance bottlenecks of the Ares's variants by utilizin…
▽ More
Ares is a modular framework, designed to implement dynamic, reconfigurable, fault-tolerant, read/write and strongly consistent distributed shared memory objects. Recent enhancements of the framework have realized the efficient implementation of large objects, by introducing versioning and data stri** techniques. In this work, we identify performance bottlenecks of the Ares's variants by utilizing distributed tracing, a popular technique for monitoring and profiling distributed systems. We then propose optimizations across all versions of Ares, aiming in overcoming the identified flaws, while preserving correctness. We refer to the optimized version of Ares as Ares II, which now features a piggyback mechanism, a garbage collection mechanism, and a batching reconfiguration technique for improving the performance and storage efficiency of the original Ares. We rigorously prove the correctness of Ares II, and we demonstrate the performance improvements by an experimental comparison (via distributed tracing) of the Ares II variants with their original counterparts.
△ Less
Submitted 6 March, 2024;
originally announced July 2024.
-
AMECOS: A Modular Event-based Framework for Concurrent Object Specification
Authors:
Timothé Albouy,
Antonio Fernández Anta,
Chryssis Georgiou,
Mathieu Gestin,
Nicolas Nicolaou,
Junlang Wang
Abstract:
In this work, we introduce a modular framework for specifying distributed systems that we call AMECOS. Specifically, our framework departs from the traditional use of sequential specification, which presents limitations both on the specification expressiveness and implementation efficiency of inherently concurrent objects, as documented by Casta{ñ}eda, Rajsbaum and Raynal in CACM 2023. Our framewo…
▽ More
In this work, we introduce a modular framework for specifying distributed systems that we call AMECOS. Specifically, our framework departs from the traditional use of sequential specification, which presents limitations both on the specification expressiveness and implementation efficiency of inherently concurrent objects, as documented by Casta{ñ}eda, Rajsbaum and Raynal in CACM 2023. Our framework focuses on the interface between the various system components specified as concurrent objects. Interactions are described with sequences of object events. This provides a modular way of specifying distributed systems and separates legality (object semantics) from other issues, such as consistency. We demonstrate the usability of our framework by (i) specifying various well-known concurrent objects, such as shared memory, asynchronous message-passing, and reliable broadcast, (ii) providing hierarchies of ordering semantics (namely, consistency hierarchy, memory hierarchy, and reliable broadcast hierarchy), and (iii) presenting novel axiomatic proofs of the impossibility of the well-known Consensus and wait-free Set Agreement problems.
△ Less
Submitted 16 May, 2024;
originally announced May 2024.
-
Validated Objects: Specification, Implementation, and Applications
Authors:
Antonio Fernández Anta,
Chryssis Georgiou,
Nicolas Nicolaou,
Antonio Russo
Abstract:
Guaranteeing the validity of concurrent operations on distributed objects is a key property for ensuring reliability and consistency in distributed systems. Usually, the methods for validating these operations, if present, are wired in the object implementation. In this work, we formalize the notion of a {\em validated object}, decoupling the object operations and properties from the validation pr…
▽ More
Guaranteeing the validity of concurrent operations on distributed objects is a key property for ensuring reliability and consistency in distributed systems. Usually, the methods for validating these operations, if present, are wired in the object implementation. In this work, we formalize the notion of a {\em validated object}, decoupling the object operations and properties from the validation procedure. We consider two types of objects, satisfying different levels of consistency: the validated {\em totally-ordered} object, offering a total ordering of its operations, and its weaker variant, the validated {\em regular} object. We provide conditions under which it is possible to implement these objects. In particular, we show that crash-tolerant implementations of validated regular objects are always possible in an asynchronous system with a majority of correct processes. However, for validated totally-ordered objects, consensus is always required if a property of the object we introduce in this work, {\em persistent validity,} does not hold. Persistent validity combined with another new property, {\em persistent execution}, allows consensus-free crash-tolerant implementations of validated totally-ordered objects. We demonstrate the utility of validated objects by considering several applications conforming to our formalism.
△ Less
Submitted 26 May, 2022;
originally announced May 2022.
-
Fragmented ARES: Dynamic Storage for Large Objects
Authors:
Chryssis Georgiou,
Nicolas Nicolaou,
Andria Trigeorgi
Abstract:
Data availability is one of the most important features in distributed storage systems, made possible by data replication. Nowadays data are generated rapidly and the goal to develop efficient, scalable and reliable storage systems has become one of the major challenges for high performance computing. In this work, we develop a dynamic, robust and strongly consistent distributed storage implementa…
▽ More
Data availability is one of the most important features in distributed storage systems, made possible by data replication. Nowadays data are generated rapidly and the goal to develop efficient, scalable and reliable storage systems has become one of the major challenges for high performance computing. In this work, we develop a dynamic, robust and strongly consistent distributed storage implementation suitable for handling large objects (such as files). We do so by integrating an Adaptive, Reconfigurable, Atomic Storage framework, called ARES, with a distributed file system, called COBFS, which relies on a block fragmentation technique to handle large objects. With the addition of ARES, we also enable the use of an erasure-coded algorithm to further split our data and to potentially improve storage efficiency at the replica servers and operation latency. To put the practicality of our outcomes at test, we conduct an in-depth experimental evaluation on the Emulab and AWS EC2 testbeds, illustrating the benefits of our approaches, as well as other interesting tradeoffs.
△ Less
Submitted 31 January, 2022;
originally announced January 2022.
-
Estimating Active Cases of COVID-19
Authors:
Javier Álvarez,
Carlos Baquero,
Elisa Cabana,
Jaya Prakash Champati,
Antonio Fernández Anta,
Davide Frey,
Augusto García-Agúndez,
Chryssis Georgiou,
Mathieu Goessens,
Harold Hernández,
Rosa Lillo,
Raquel Menezes,
Raúl Moreno,
Nicolas Nicolaou,
Oluwasegun Ojo,
Antonio Ortega,
Jesús Rufino,
Efstathios Stavrakis,
Govind Jeevan,
Christin Glorioso
Abstract:
Having accurate and timely data on confirmed active COVID-19 cases is challenging, since it depends on testing capacity and the availability of an appropriate infrastructure to perform tests and aggregate their results. In this paper, we propose methods to estimate the number of active cases of COVID-19 from the official data (of confirmed cases and fatalities) and from survey data. We show that t…
▽ More
Having accurate and timely data on confirmed active COVID-19 cases is challenging, since it depends on testing capacity and the availability of an appropriate infrastructure to perform tests and aggregate their results. In this paper, we propose methods to estimate the number of active cases of COVID-19 from the official data (of confirmed cases and fatalities) and from survey data. We show that the latter is a viable option in countries with reduced testing capacity or suboptimal infrastructures.
△ Less
Submitted 6 August, 2021;
originally announced August 2021.
-
Analysis of Molecular Communications on the Growth Structure of Glioblastoma Multiforme
Authors:
Hamdan Awan,
Andreani Odysseos,
Niovi Nicolaou,
Sasitharan Balasubramaniam
Abstract:
In this paper we consider the influence of intercellular communication on the development and progression of Glioblastoma Multiforme (GBM), a grade IV malignant glioma which is defined by an interplay Grow i.e. self renewal and Go i.e. invasiveness potential of multiple malignant glioma stem cells. Firstly, we performed wet lab experiments with U87 malignant glioma cells to study the node-stem gro…
▽ More
In this paper we consider the influence of intercellular communication on the development and progression of Glioblastoma Multiforme (GBM), a grade IV malignant glioma which is defined by an interplay Grow i.e. self renewal and Go i.e. invasiveness potential of multiple malignant glioma stem cells. Firstly, we performed wet lab experiments with U87 malignant glioma cells to study the node-stem growth pattern of GBM. Next we develop a model accounting for the structural influence of multiple transmitter and receiver glioma stem cells resulting in the node-stem growth structure of GBM tumour. By using information theory we study different properties associated with this communication model to show that the growth of GBM in a particular direction (node to stem) is related to an increase in mutual information. We further show that information flow between glioblastoma cells for different levels of invasiveness vary at different points between node and stem. These findings are expected to contribute significantly in the design of future therapeutic mechanisms for GBM.
△ Less
Submitted 30 April, 2021;
originally announced April 2021.
-
Byzantine-tolerant Distributed Grow-only Sets: Specification and Applications
Authors:
Vicent Cholvi,
Antonio Fernández Anta,
Chryssis Georgiou,
Nicolas Nicolaou,
Michel Raynal,
Antonio Russo
Abstract:
In order to formalize Distributed Ledger Technologies and their interconnections, a recent line of research work has formulated the notion of Distributed Ledger Object (DLO), which is a concurrent object that maintains a totally ordered sequence of records, abstracting blockchains and distributed ledgers. Through DLO, the Atomic Appends problem, intended as the need of a primitive able to append m…
▽ More
In order to formalize Distributed Ledger Technologies and their interconnections, a recent line of research work has formulated the notion of Distributed Ledger Object (DLO), which is a concurrent object that maintains a totally ordered sequence of records, abstracting blockchains and distributed ledgers. Through DLO, the Atomic Appends problem, intended as the need of a primitive able to append multiple records to distinct ledgers in an atomic way, is studied as a basic interconnection problem among ledgers.
In this work, we propose the Distributed Grow-only Set object (DSO), which instead of maintaining a sequence of records, as in a DLO, maintains a set of records in an immutable way: only Add and Get operations are provided. This object is inspired by the Grow-only Set (G-Set) data type which is part of the Conflict-free Replicated Data Types. We formally specify the object and we provide a consensus-free Byzantine-tolerant implementation that guarantees eventual consistency. We then use our Byzantine-tolerant DSO (BDSO) implementation to provide consensus-free algorithmic solutions to the Atomic Appends and Atomic Adds (the analogous problem of atomic appends applied on G-Sets) problems, as well as to construct consensus-free Single-Writer BDLOs. We believe that the BDSO has applications beyond the above-mentioned problems.
△ Less
Submitted 16 March, 2021;
originally announced March 2021.
-
Fragmented Objects: Boosting Concurrency of Shared Large Objects
Authors:
Antonio Fernandez Anta,
Chryssis Georgiou,
Theophanis Hadjistasi,
Nicolas Nicolaou,
Efstathios Stavrakis,
Andria Trigeorgi
Abstract:
This work examines strategies to handle large shared data objects in distributed storage systems (DSS), while boosting the number of concurrent accesses, maintaining strong consistency guarantees, and ensuring good operation performance. To this respect, we define the notion of fragmented objects:con-current objects composed of a list of fragments (or blocks) that allow operations to manipulate ea…
▽ More
This work examines strategies to handle large shared data objects in distributed storage systems (DSS), while boosting the number of concurrent accesses, maintaining strong consistency guarantees, and ensuring good operation performance. To this respect, we define the notion of fragmented objects:con-current objects composed of a list of fragments (or blocks) that allow operations to manipulate each of their fragments individually. As the fragments belong to the same object, it is not enough that each fragment is linearizable to have useful consistency guarantees in the composed object. Hence, we capture the consistency semantic of the whole object with the notion of fragmented linearizability. Then, considering that a variance of linearizability, coverability, is more suited for versioned objects like files, we provide an implementation of a distributed file system, called COBFS, that utilizes coverable fragmented objects (i.e., files).In COBFS, each file is a linked-list of coverable block objects. Preliminary emulation of COBFS demonstrates the potential of our approach in boosting the concurrency of strongly consistent large objects.
△ Less
Submitted 7 March, 2021; v1 submitted 25 February, 2021;
originally announced February 2021.
-
CoronaSurveys: Using Surveys with Indirect Reporting to Estimate the Incidence and Evolution of Epidemics
Authors:
Oluwasegun Ojo,
Augusto García-Agundez,
Benjamin Girault,
Harold Hernández,
Elisa Cabana,
Amanda García-García,
Payman Arabshahi,
Carlos Baquero,
Paolo Casari,
Ednaldo José Ferreira,
Davide Frey,
Chryssis Georgiou,
Mathieu Goessens,
Anna Ishchenko,
Ernesto Jiménez,
Oleksiy Kebkal,
Rosa Lillo,
Raquel Menezes,
Nicolas Nicolaou,
Antonio Ortega,
Paul Patras,
Julian C Roberts,
Efstathios Stavrakis,
Yuichi Tanaka,
Antonio Fernández Anta
Abstract:
The world is suffering from a pandemic called COVID-19, caused by the SARS-CoV-2 virus. National governments have problems evaluating the reach of the epidemic, due to having limited resources and tests at their disposal. This problem is especially acute in low and middle-income countries (LMICs). Hence, any simple, cheap and flexible means of evaluating the incidence and evolution of the epidemic…
▽ More
The world is suffering from a pandemic called COVID-19, caused by the SARS-CoV-2 virus. National governments have problems evaluating the reach of the epidemic, due to having limited resources and tests at their disposal. This problem is especially acute in low and middle-income countries (LMICs). Hence, any simple, cheap and flexible means of evaluating the incidence and evolution of the epidemic in a given country with a reasonable level of accuracy is useful. In this paper, we propose a technique based on (anonymous) surveys in which participants report on the health status of their contacts. This indirect reporting technique, known in the literature as network scale-up method, preserves the privacy of the participants and their contacts, and collects information from a larger fraction of the population (as compared to individual surveys). This technique has been deployed in the CoronaSurveys project, which has been collecting reports for the COVID-19 pandemic for more than two months. Results obtained by CoronaSurveys show the power and flexibility of the approach, suggesting that it could be an inexpensive and powerful tool for LMICs.
△ Less
Submitted 26 June, 2020; v1 submitted 24 May, 2020;
originally announced May 2020.
-
Appending Atomically in Byzantine Distributed Ledgers
Authors:
Vicent Cholvi,
Antonio Fernandez Anta,
Chryssis Georgiou,
Nicolas Nicolaou,
Michel Raynal
Abstract:
A Distributed Ledger Object (DLO) is a concurrent object that maintains a totally ordered sequence of records, and supports two basic operations: append, which appends a record at the end of the sequence, and get, which returns the sequence of records. In this work we provide a proper formalization of a Byzantine-tolerant Distributed Ledger Object (BDLO), which is a DLO in a distributed system in…
▽ More
A Distributed Ledger Object (DLO) is a concurrent object that maintains a totally ordered sequence of records, and supports two basic operations: append, which appends a record at the end of the sequence, and get, which returns the sequence of records. In this work we provide a proper formalization of a Byzantine-tolerant Distributed Ledger Object (BDLO), which is a DLO in a distributed system in which processes may deviate arbitrarily from their indented behavior, i.e. they may be Byzantine. Our formal definition is accompanied by algorithms to implement BDLOs by utilizing an underlying Byzantine Atomic Broadcast service.
We then utilize the BDLO implementations to solve the Atomic Appends problem against Byzantine processes. The Atomic Appends problem emerges when several clients have records to append, the record of each client has to be appended to a different BDLO, and it must be guaranteed that either all records are appended or none. We present distributed algorithms implementing solutions for the Atomic Appends problem when the clients (which are involved in the appends) and the servers (which maintain the BDLOs) may be Byzantine.
△ Less
Submitted 26 February, 2020;
originally announced February 2020.
-
Assessing Cyber-Physical Security in Industrial Control Systems
Authors:
Martín Barrère,
Chris Hankin,
Demetrios G. Eliades,
Nicolas Nicolau,
Thomas Parisini
Abstract:
Over the last years, Industrial Control Systems (ICS) have become increasingly exposed to a wide range of cyber-physical threats. Efficient models and techniques able to capture their complex structure and identify critical cyber-physical components are therefore essential. AND/OR graphs have proven very useful in this context as they are able to semantically grasp intricate logical interdependenc…
▽ More
Over the last years, Industrial Control Systems (ICS) have become increasingly exposed to a wide range of cyber-physical threats. Efficient models and techniques able to capture their complex structure and identify critical cyber-physical components are therefore essential. AND/OR graphs have proven very useful in this context as they are able to semantically grasp intricate logical interdependencies among ICS components. However, identifying critical nodes in AND/OR graphs is an NP-complete problem. In addition, ICS settings normally involve various cyber and physical security measures that simultaneously protect multiple ICS components in overlap** manners, which makes this problem even harder. In this paper, we present an extended security metric based on AND/OR hypergraphs which efficiently identifies the set of critical ICS components and security measures that should be compromised, with minimum cost (effort) for an attacker, in order to disrupt the operation of vital ICS assets. Our approach relies on MAX-SAT techniques, which we have incorporated in META4ICS, a Java-based security metric analyser for ICS. We also provide a thorough performance evaluation that shows the feasibility of our method. Finally, we illustrate our methodology through a case study in which we analyse the security posture of a realistic Water Transport Network (WTN).
△ Less
Submitted 21 November, 2019;
originally announced November 2019.
-
MaxSAT Evaluation 2019 -- Benchmark: Identifying Security-Critical Cyber-Physical Components in Weighted AND/OR Graphs
Authors:
Martín Barrère,
Chris Hankin,
Nicolas Nicolau,
Demetrios G. Eliades,
Thomas Parisini
Abstract:
This paper presents a MaxSAT benchmark focused on identifying critical nodes in AND/OR graphs. We use AND/OR graphs to model Industrial Control Systems (ICS) as they are able to semantically grasp intricate logical interdependencies among ICS components. However, identifying critical nodes in AND/OR graphs is an NP-complete problem. We address this problem by efficiently transforming the input AND…
▽ More
This paper presents a MaxSAT benchmark focused on identifying critical nodes in AND/OR graphs. We use AND/OR graphs to model Industrial Control Systems (ICS) as they are able to semantically grasp intricate logical interdependencies among ICS components. However, identifying critical nodes in AND/OR graphs is an NP-complete problem. We address this problem by efficiently transforming the input AND/OR graph-based model into a weighted logical formula that is then used to build and solve a Weighted Partial MaxSAT problem. The benchmark includes 80 cases with AND/OR graphs of different size and composition as well as the optimal cost and solution for each case.
△ Less
Submitted 1 November, 2019;
originally announced November 2019.
-
Identifying Security-Critical Cyber-Physical Components in Industrial Control Systems
Authors:
Martín Barrère,
Chris Hankin,
Nicolas Nicolau,
Demetrios G. Eliades,
Thomas Parisini
Abstract:
In recent years, Industrial Control Systems (ICS) have become an appealing target for cyber attacks, having massive destructive consequences. Security metrics are therefore essential to assess their security posture. In this paper, we present a novel ICS security metric based on AND/OR graphs that represent cyber-physical dependencies among network components. Our metric is able to efficiently ide…
▽ More
In recent years, Industrial Control Systems (ICS) have become an appealing target for cyber attacks, having massive destructive consequences. Security metrics are therefore essential to assess their security posture. In this paper, we present a novel ICS security metric based on AND/OR graphs that represent cyber-physical dependencies among network components. Our metric is able to efficiently identify sets of critical cyber-physical components, with minimal cost for an attacker, such that if compromised, the system would enter into a non-operational state. We address this problem by efficiently transforming the input AND/OR graph-based model into a weighted logical formula that is then used to build and solve a Weighted Partial MAX-SAT problem. Our tool, META4ICS, leverages state-of-the-art techniques from the field of logical satisfiability optimisation in order to achieve efficient computation times. Our experimental results indicate that the proposed security metric can efficiently scale to networks with thousands of nodes and be computed in seconds. In addition, we present a case study where we have used our system to analyse the security posture of a realistic water transport network. We discuss our findings on the plant as well as further security applications of our metric.
△ Less
Submitted 12 May, 2019;
originally announced May 2019.
-
Atomic Appends: Selling Cars and Coordinating Armies with Multiple Distributed Ledgers
Authors:
Antonio Fernandez Anta,
Chryssis Georgiou,
Nicolas Nicolaou
Abstract:
The various applications using Distributed Ledger Technologies (DLT) or blockchains, have led to the introduction of a new `marketplace' where multiple types of digital assets may be exchanged. As each blockchain is designed to support specific types of assets and transactions, and no blockchain will prevail, the need to perform interblockchain transactions is already pressing.
In this work we e…
▽ More
The various applications using Distributed Ledger Technologies (DLT) or blockchains, have led to the introduction of a new `marketplace' where multiple types of digital assets may be exchanged. As each blockchain is designed to support specific types of assets and transactions, and no blockchain will prevail, the need to perform interblockchain transactions is already pressing.
In this work we examine the fundamental problem of interoperable and interconnected blockchains. In particular, we begin by introducing the Multi-Distributed Ledger Objects (MDLO), which is the result of aggregating multiple Distributed Ledger Objects -- DLO (a DLO is a formalization of the blockchain) and that supports append and get operations of records (e.g., transactions) in them from multiple clients concurrently. Next, we define the AtomicAppends problem, which emerges when the exchange of digital assets between multiple clients may involve appending records in more than one DLO. Specifically, AtomicAppend requires that either all records will be appended on the involved DLOs or none. We examine the solvability of this problem assuming rational and risk-averse clients that may fail by crashing, and under different client utility and append models, timing models, and client failure scenarios. We show that for some cases the existence of an intermediary is necessary for the problem solution. We propose the implementation of such intermediary over a specialized blockchain, we term Smart DLO (SDLO), and we show how this can be used to solve the AtomicAppends problem even in an asynchronous, client competitive environment, where all the clients may crash.
△ Less
Submitted 20 December, 2018;
originally announced December 2018.
-
Steering multiattractors to overcome parameter inaccuracy and noise effects
Authors:
Rafael M. da Silva,
Nathan S. Nicolau,
Cesar Manchein,
Marcus W. Beims
Abstract:
Steering of attractors in multistable systems is used to increase the available parameter domains which lead to stable dynamics in nonlinear physical systems, reducing substantially undesirable effects of parametric inaccuracy and noise. The procedure proposed here uses time and/or space asymmetric perturbations to move independent multistable attractors in phase space. Applying this mechanism we…
▽ More
Steering of attractors in multistable systems is used to increase the available parameter domains which lead to stable dynamics in nonlinear physical systems, reducing substantially undesirable effects of parametric inaccuracy and noise. The procedure proposed here uses time and/or space asymmetric perturbations to move independent multistable attractors in phase space. Applying this mechanism we increase around 230% the stable domains in Hénon's map, roughly 85% in the ratchet current described by the Langevin equation and 60% in Chua's electronic circuit. The proposal is expected to have wide applications in generic nonlinear complex system presenting multistability, so that related experiments can increase robustness under parametric inaccuracy and noise.
△ Less
Submitted 10 June, 2018;
originally announced June 2018.
-
ARES: Adaptive, Reconfigurable, Erasure coded, atomic Storage
Authors:
Nicolas Nicolaou,
Viveck Cadambe,
N. Prakash,
Andria Trigeorgi,
Kishori M. Konwar,
Nancy Lynch,
Muriel Medard
Abstract:
Atomicity or strong consistency is one of the fundamental, most intuitive, and hardest to provide primitives in distributed shared memory emulations. To ensure survivability, scalability, and availability of a storage service in the presence of failures, traditional approaches for atomic memory emulation, in message passing environments, replicate the objects across multiple servers. Compared to r…
▽ More
Atomicity or strong consistency is one of the fundamental, most intuitive, and hardest to provide primitives in distributed shared memory emulations. To ensure survivability, scalability, and availability of a storage service in the presence of failures, traditional approaches for atomic memory emulation, in message passing environments, replicate the objects across multiple servers. Compared to replication based algorithms, erasure code-based atomic memory algorithms has much lower storage and communication costs, but usually, they are harder to design. The difficulty of designing atomic memory algorithms further grows, when the set of servers may be changed to ensure survivability of the service over software and hardware upgrades, while avoiding service interruptions. Atomic memory algorithms for performing server reconfiguration, in the replicated systems, are very few, complex, and are still part of an active area of research; reconfigurations of erasure-code based algorithms are non-existent.
In this work, we present ARES, an algorithmic framework that allows reconfiguration of the underlying servers, and is particularly suitable for erasure-code based algorithms emulating atomic objects. ARES introduces new configurations while kee** the service available. To use with ARES we also propose a new, and to our knowledge, the first two-round erasure code based algorithm TREAS, for emulating multi-writer, multi-reader (MWMR) atomic objects in asynchronous, message-passing environments, with near-optimal communication and storage costs. Our algorithms can tolerate crash failures of any client and some fraction of servers, and yet, guarantee safety and liveness property. Moreover, by bringing together the advantages of ARES and TREAS, we propose an optimized algorithm where new configurations can be installed without the objects values passing through the reconfiguration clients.
△ Less
Submitted 28 May, 2021; v1 submitted 9 May, 2018;
originally announced May 2018.
-
Unleashing and Speeding Up Readers in Atomic Object Implementations
Authors:
Chryssis Georgiou,
Theophanis Hadjistasi,
Nicolas Nicolaou,
Alexander A. Schwarzmann
Abstract:
Providing efficient emulations of atomic read/write objects in asynchronous, crash-prone, message-passing systems is an important problem in distributed computing. Communication latency is a factor that typically dominates the performance of message-passing systems, consequently the efficiency of algorithms implementing atomic objects is measured in terms of the number of communication exchanges i…
▽ More
Providing efficient emulations of atomic read/write objects in asynchronous, crash-prone, message-passing systems is an important problem in distributed computing. Communication latency is a factor that typically dominates the performance of message-passing systems, consequently the efficiency of algorithms implementing atomic objects is measured in terms of the number of communication exchanges involved in each read and write operation. The seminal result of Attiya, Bar-Noy, and Dolev established that two pairs of communication exchanges, or equivalently two round-trip communications, are sufficient. Subsequent research examined the possibility of implementations that involve less than four exchanges. The work of Dutta et al. showed that for single-writer/multiple-reader (SWMR) settings two exchanges are sufficient, provided that the number of readers is severely constrained with respect to the number of object replicas in the system and the number of replica failures, and also showed that no two exchange implementations of multiple-writer/multiple-reader (MWMR) objects are possible. Later research focused on providing implementations that remove the constraint on the number of readers, while having read and write operations that use variable number of communication exchanges, specifically two, three, or four exchanges.
This work presents two advances in the state-of-the-art in this area. Specifically, for SWMR and MWMR systems algorithms are given in which read operations take two or three exchanges. This improves on prior works where read operations took either (a) three exchanges, or (b) two or four exchanges. The number of readers in the new algorithms is unconstrained, and write operations take the same number of exchanges as in prior work (two for SWMR and four for MWMR settings). The correctness of algorithms is rigorously argued.
△ Less
Submitted 29 March, 2018;
originally announced March 2018.
-
Formalizing and Implementing Distributed Ledger Objects
Authors:
Antonio Fernández Anta,
Chryssis Georgiou,
Kishori Konwar,
Nicolas Nicolaou
Abstract:
Despite the hype about blockchains and distributed ledgers, no formal abstraction of these objects has been proposed. To face this issue, in this paper we provide a proper formulation of a distributed ledger object. In brief, we define a ledger object as a sequence of records, and we provide the operations and the properties that such an object should support. Implementation of a ledger object on…
▽ More
Despite the hype about blockchains and distributed ledgers, no formal abstraction of these objects has been proposed. To face this issue, in this paper we provide a proper formulation of a distributed ledger object. In brief, we define a ledger object as a sequence of records, and we provide the operations and the properties that such an object should support. Implementation of a ledger object on top of multiple (possibly geographically dispersed) computing devices gives rise to the distributed ledger object. In contrast to the centralized object, distribution allows operations to be applied concurrently on the ledger, introducing challenges on the consistency of the ledger in each participant. We provide the definitions of three well known consistency guarantees in terms of the operations supported by the ledger object: (1) atomic consistency (linearizability), (2) sequential consistency, and (3) eventual consistency. We then provide implementations of distributed ledgers on asynchronous message passing crash-prone systems using an Atomic Broadcast service, and show that they provide eventual, sequential or atomic consistency semantics. We conclude with a variation of the ledger - the validated ledger - which requires that each record in the ledger satisfies a particular validation rule.
△ Less
Submitted 4 May, 2018; v1 submitted 21 February, 2018;
originally announced February 2018.
-
Oh-RAM! One and a Half Round Atomic Memory
Authors:
Theophanis Hadjistasi,
Nicolas Nicolaou,
Alexander A. Schwarzmann
Abstract:
Emulating atomic read/write shared objects in a message-passing system is a fundamental problem in distributed computing. Considering that network communication is the most expensive resource, efficiency is measured first of all in terms of the communication needed to implement read and write operations. It is well known that 2 communication round-trip phases involving in total 4 message exchanges…
▽ More
Emulating atomic read/write shared objects in a message-passing system is a fundamental problem in distributed computing. Considering that network communication is the most expensive resource, efficiency is measured first of all in terms of the communication needed to implement read and write operations. It is well known that 2 communication round-trip phases involving in total 4 message exchanges are sufficient to implemented atomic operations. It is also known that under certain constraints on the number of readers with respect to the numbers of replica servers and failures it is possible to implement single-writer atomic objects such that each operation involves one round-trip phase. We present algorithms that allow operations to complete in 3 communication exchanges without imposing any constraints on the number of readers and writers. Specifically, we present an atomic memory implementation for the SWMR setting, where reads complete in 3 communication exchanges and writes complete in 2 exchanges. We pose the question of whether it is possible to implement MWMR memory where operations complete in at most 3 communication exchanges. We answer this question in the negative by showing that an atomic memory implementation is impossible if both read and write operations take 3 communication exchanges, even when assuming two writers, two readers, and a single replica server failure. Motivated by this impossibility result, we provide a MWMR atomic memory implementation where reads involve 3 and writes 4 communication exchanges. In light of our impossibility result these algorithms are optimal in terms of the number of communication exchanges. We rigorously reason about the correctness of the algorithms.
△ Less
Submitted 16 November, 2020; v1 submitted 26 October, 2016;
originally announced October 2016.
-
CoVer-ability: Consistent Versioning for Concurrent Objects
Authors:
Nicolas Nicolaou,
Antonio Fernández Anta,
Chryssis Georgiou
Abstract:
An object type characterizes the domain space and the operations that can be invoked on an object of that type. In this paper we introduce a new property for concurrent objects, we call coverability, that aims to provide precise guarantees on the consistent evolution of an object. This new property is suitable for a variety of distributed objects including concurrent file objects that demand opera…
▽ More
An object type characterizes the domain space and the operations that can be invoked on an object of that type. In this paper we introduce a new property for concurrent objects, we call coverability, that aims to provide precise guarantees on the consistent evolution of an object. This new property is suitable for a variety of distributed objects including concurrent file objects that demand operations to manipulate the latest version of the object. We propose two levels of coverability: (i) strong coverability and (ii) weak coverability. Strong coverability requires that only a single operation can modify the latest version of the object, i.e. "covers" the latest version with a new version, imposing a total order on object modifications. Weak coverability relaxes the strong requirements of strong coverability and allows multiple operations to modify the same version of an object, where each modification leads to a different version. Weak coverability preserves consistent evolution of the object, by demanding any subsequent operation to only modify one of the newly introduced versions. Coverability combined with atomic guarantees yield to coverable atomic read/write registers. We also show that strongly coverable atomic registers are equivalent in power to consensus. Thus, we focus on weakly coverable registers, and we demonstrate their importance by showing that they cannot be implemented using similar types of registers, like ranked-registers. Furthermore we show that weakly coverable registers may be used to implement basic (weak) read-modify-write and file objects. Finally, we implement weakly coverable registers by modifying an existing MWMR atomic register implementation.
△ Less
Submitted 11 March, 2016; v1 submitted 27 January, 2016;
originally announced January 2016.
-
On the Practicality of Atomic MWMR Register Implementations
Authors:
Chryssis Georgiou,
Nicolas C. Nicolaou
Abstract:
Multiple-writer/multiple-reader (MWMR) atomic register implementations provide precise consistency guarantees, in the asynchronous, crash-prone, message passing environment. Fast MWMR atomic register implementations were first introduced in Englert et al. 2009. Fastness is measured in terms of the number of single round read and write operations that does not sacrifice correctness. In Georgiou et…
▽ More
Multiple-writer/multiple-reader (MWMR) atomic register implementations provide precise consistency guarantees, in the asynchronous, crash-prone, message passing environment. Fast MWMR atomic register implementations were first introduced in Englert et al. 2009. Fastness is measured in terms of the number of single round read and write operations that does not sacrifice correctness. In Georgiou et al. 2011 was shown, however, that decreasing the communication cost is not enough in these implementations. In particular, considering that the performance is measured in terms of the latency of read and write operations due to both (a) communication delays and (b)local computation, they introduced two new algorithms that traded communication for reducing computation. As computation is still part of the algorithms, someone may wonder: What is the trade-off between communication and local computation in real-time systems?
In this work we conduct an experimental performance evaluation of four MWMR atomic register implementations: SFW from Englert et al. 2009, APRX-SFW and CWFR from Georgiou at al. 2011, and the generalization of the traditional algorithm of Attiya et al. 1996 in the MWMR environment, which we call SIMPLE. We implement and evaluate the algorithms on NS2, a single-processor simulator, and on PlanetLab, a planetary-scale real-time network platform. Our comparison provides an empirical answer to the above question and demonstrates the practicality of atomic MWMR register implementations.
△ Less
Submitted 9 April, 2012; v1 submitted 11 November, 2011;
originally announced November 2011.