Papers1 provider Ā· 1 record
December 26, 2024Ā· IEEE Transactions on Parallel and Distributed Systems
article

Sparrow: Expediting Smart Contract Execution for Blockchain Sharding via Inter-Shard Caching

Abstract

Sharding is a promising solution to scale blockchain by separating the system into multiple shards to process transactions in parallel. However, due to state separation and shard isolation, it is still challenging to efficiently support smart contracts on a blockchain sharding system where smart contracts can interact with each other, involving states maintained by multiple shards. Specifically, existing sharding systems adopt a costly multi-step collaboration mechanism to execute smart contracts, resulting in long latency and low throughput. This article proposesSparrow, a blockchain sharding protocol achieving one-step execution for smart contracts. To break shard isolation, inspired by non-local hotspot data caching in traditional databases, we propose a new idea ofinter-shard caching, allowing a shard to prefetch and cache frequently accessed contract states of other shards. The miner can thus use the inter-shard cache to pre-execute a pending transaction, retrieve all its contract invocations, and commit it to multiple shards in one step. Particularly, we first propose a speculative dispersal cache synchronisation mechanism for efficient and secure cache synchronization across shards in Byzantine environments. Then, we propose a multi-branch exploration mechanism to solve the rollback problem during the optimistic one-step execution of contract invocations with dependencies. We also present a series of conflict resolution mechanisms to decrease the rollback caused by inherent transaction conflicts. We implement prototypes forSparrowand existing sharding systems, and the evaluation shows thatSparrowimproves the throughput by$2.44\times$and reduces the transaction latency by 30% compared with the existing sharding systems.

Community

0 comments
Use Connect Wallet in the navigation

No discussion yet

Be the first to share a question or observation.