šŸ“£ Help Shape the Future of UKRI's Gateway to Research (GtR)

We're improving UKRI's Gateway to Research and are seeking your input! If you would be interested in being interviewed about the improvements we're making and to have your say about how we can make GtR more user-friendly, impactful, and effective for the Research and Innovation community, please email gateway@ukri.org.

REDONDA: A Next-Generation State-Machine Replication Protocol for Blockchain

Lead Research Organisation: University of Surrey
Department Name: Computing Science

Abstract

The REDONDA project's ambition is to design a next-generation replication protocol for blockchain. To achieve this, the project taps into recent advances in networking, secure computing and distributed systems. At the scale of a datacenter, the protocol relies on two recent technologies: RDMA and TEE. Both technologies are leveraged to create a sub-microsecond consensus layer that tolerates Byzantine failures. TEEs are also used in a novel upgradable and portable smart contract engine to execute blockchain transactions across a variety of infrastructures and hardware. Between data centres, the protocol relies on leaderless state-machine replication. This recent approach decomposes transaction ordering into two sub-tasks that can execute in parallel, without a central coordinator to bottleneck the system. To ensure security and safety at runtime, the REDONDA project creates the blockchain protocol by composing mechanically-verified building blocks. The new blockchain protocol is assessed using real hardware against benchmarks and publicly available traces. We target that it scales across hundreds of geo-distributed nodes while offering 100k+ transactions per second and split-second latency.

Publications

10 25 50
 
Description Timing-Based Concurrent Algorithms for Weak Memory Models
Amount £12,000 (GBP)
Funding ID IES\R1\221226 
Organisation The Royal Society 
Sector Charity/Non Profit
Country United Kingdom
Start 07/2022 
End 08/2025
 
Description Byzantine Fault-Tolerant Computing and Blockchains 
Organisation IMDEA Software
Country Spain 
Sector Public 
PI Contribution My PhD student Sadegh Keshavarzi and myself have obtained several fundamental results capturing the impact of trusted execution environments (TEE) on failure resilience of distributed algorithms solving several fundamental problems, such as, reliable storage, blockchain consensus, and state-machine replication in the presence of Byzantine faults. Prof Brijesh Dongol has contributed his expertise in formal methods to produce correctness proofs for the algorithms designed by Sadegh and myself.
Collaborator Contribution IMDEA Software (Prof Alexey Gotsman) are contributing expertise in fault-tolerant distributed algorithms and verification. Royal Holloway (Dr Dan O'Keeffe) are contributing expertise on secure hardware technologies, systems engineering and trusted execution environments.
Impact 2024, 2025 papers co-authored by Alexey Gotsman and Dan O'Keeffe
Start Year 2024
 
Description Byzantine Fault-Tolerant Computing and Blockchains 
Organisation Royal Holloway, University of London
Department Department of Computer Science
Country United Kingdom 
Sector Academic/University 
PI Contribution My PhD student Sadegh Keshavarzi and myself have obtained several fundamental results capturing the impact of trusted execution environments (TEE) on failure resilience of distributed algorithms solving several fundamental problems, such as, reliable storage, blockchain consensus, and state-machine replication in the presence of Byzantine faults. Prof Brijesh Dongol has contributed his expertise in formal methods to produce correctness proofs for the algorithms designed by Sadegh and myself.
Collaborator Contribution IMDEA Software (Prof Alexey Gotsman) are contributing expertise in fault-tolerant distributed algorithms and verification. Royal Holloway (Dr Dan O'Keeffe) are contributing expertise on secure hardware technologies, systems engineering and trusted execution environments.
Impact 2024, 2025 papers co-authored by Alexey Gotsman and Dan O'Keeffe
Start Year 2024
 
Description Computability in Weak Memory Models 
Organisation National Autonomous University of Mexico
Country Mexico 
Sector Academic/University 
PI Contribution Brijesh Dongol and myself are contributing expertise in distributed algorithms, shared memory, concurrent data structure and formal methods.
Collaborator Contribution Tel-Aviv University (Prof Ori Lahav) is contributing expertise on weak memory models and formal frameworks for their modelling. Prof Armando Castañeda (UNAM) is contributing expertise on lower bounds for shared memory and shared memory algorithms.
Impact Paper published in the proceedings of DISC'24, a premier conference in distributed computing theory.
Start Year 2024
 
Description Computability in Weak Memory Models 
Organisation Tel Aviv University
Department School of Computer Science
Country Israel 
Sector Academic/University 
PI Contribution Brijesh Dongol and myself are contributing expertise in distributed algorithms, shared memory, concurrent data structure and formal methods.
Collaborator Contribution Tel-Aviv University (Prof Ori Lahav) is contributing expertise on weak memory models and formal frameworks for their modelling. Prof Armando Castañeda (UNAM) is contributing expertise on lower bounds for shared memory and shared memory algorithms.
Impact Paper published in the proceedings of DISC'24, a premier conference in distributed computing theory.
Start Year 2024
 
Description Learning Caching Strategies for Dynamic Workloads on Graph Databases 
Organisation Neo4j
Country United States 
Sector Private 
PI Contribution We are investigating strategies to improve throughput of mixed read-write workloads on graph databases by improving page cache performance, taking into account the queries, updates, and underlying graph topology.
Collaborator Contribution Neo4j (Dr Jim Webber) is contributing an expert knowledge in graph databases and provides inputs on requirements and research questions. Royal Holloway (Dr Dan O'Keeffe) is contributing expertise on relevant operating systems concepts, caching algorithms, and performance evaluation.
Impact Preliminary problem statement and a PhD research proposal.
Start Year 2024
 
Description Learning Caching Strategies for Dynamic Workloads on Graph Databases 
Organisation Royal Holloway, University of London
Department Department of Computer Science
Country United Kingdom 
Sector Academic/University 
PI Contribution We are investigating strategies to improve throughput of mixed read-write workloads on graph databases by improving page cache performance, taking into account the queries, updates, and underlying graph topology.
Collaborator Contribution Neo4j (Dr Jim Webber) is contributing an expert knowledge in graph databases and provides inputs on requirements and research questions. Royal Holloway (Dr Dan O'Keeffe) is contributing expertise on relevant operating systems concepts, caching algorithms, and performance evaluation.
Impact Preliminary problem statement and a PhD research proposal.
Start Year 2024
 
Description Transparent Durability for In-Memory Data Stores 
Organisation Royal Holloway, University of London
Department Department of Computer Science
Country United Kingdom 
Sector Academic/University 
PI Contribution My PhD student Sergey Egorov, who's also incoming PDRA on the Redonda project, myself, and Prof Brijesh Dongol are working on designing, implementing and verifying Mangosteen, a novel framework that enables developers to transform a volatile in-memory data store into a durable version on NVM with minimal programming effort.
Collaborator Contribution Dr Dan O'Keeffe (Royal Holloway) is contributing expertise in systems design and performance evaluation.
Impact USENIC ATC 24 paper, patent application submitted, software artefact published
Start Year 2024
 
Title Mangosteen -- System for Application Durability 
Description The disclosed artifact (Mangosteen) is a high-level programming framework that allows developers to transparently transform an existing in-memory applications to a corresponding durable (recoverable) version using Non-Volatile Memory (NVM), such as Intel Optane. Our framework's Application Programming Interface (API) consists of a set of callback hooks that interpose on an application's request processing flow with minimal developer effort. Mangosteen executes client operations on Dynamic Random Access Memory (DRAM) and persists their effects using binary instrumentation and redo logging. Mangosteen's concurrency control facilitates batching of read-write requests to minimize the cost of persistence, while allowing read-only requests to execute concurrently. A novel intra-batch deduplication mechanism further reduces persistence overheads for common Online Transaction Processing (OLTP) workloads. Our empirical evaluation results show that Mangosteen-enabled applications outperform state-of-the-art solutions across the entire spectrum of read-write ratios. In particular, the Mangosteen-based version of Redis demonstrates throughput gains of between 2x-5x in comparison to prior work. 
IP Reference  
Protection Patent / Patent application
Year Protection Granted
Licensed No
 
Title Mangosteen 
Description This is an artefact for Mangosteen, a software layer to transparently transform an existing in-memory data store into a concurrent and persistent one on NVRAM. For more details, please consult the USENIX ATC'24 paper: Sergey Egorov, Gregory Chockler, Brijesh Dongol, Dan O'Keeffe, and Sadegh Keshavarzi, Mangosteen: Fast Transparent Durability for Linearizable Applications using NVM. To compile and run the artefact, follow the instructions in the included README.txt file. 
Type Of Technology Software 
Year Produced 2024 
Impact The disclosed artifact (Mangosteen) is a high-level programming framework that allows developers to transparently transform an existing in-memory applications to a corresponding durable (recoverable) version using Non-Volatile Memory (NVM), such as Intel Optane. Our framework's Application Programming Interface (API) consists of a set of callback hooks that interpose on an application's request processing flow with minimal developer effort. Mangosteen executes client operations on Dynamic Random Access Memory (DRAM) and persists their effects using binary instrumentation and redo logging. Mangosteen's concurrency control facilitates batching of read-write requests to minimize the cost of persistence, while allowing read-only requests to execute concurrently. A novel intra-batch deduplication mechanism further reduces persistence overheads for common Online Transaction Processing (OLTP) workloads. Our empirical evaluation results show that Mangosteen-enabled applications outperform state-of-the-art solutions across the entire spectrum of read-write ratios. In particular, the Mangosteen-based version of Redis demonstrates throughput gains of between 2x-5x in comparison to prior work. Commercial applications: We have already shown that Mangosteen can be used to efficiently transform Redis (https://redis.io/), which is an open-source, in-memory data store used by millions of developers and some of the largest tech companies (e.g., Twitter, GitHub, Snapchat, StackOverflow), see https://techstacks.io/tech/redis. Any company that uses Redis can benefit from the data persistence and recoverability offered by Mangosteen. In particular, this would allow these companies to reduce the number of replicas in a distributed deployment, and hence reduce costs. 
URL https://zenodo.org/doi/10.5281/zenodo.11390431