DiPETrans: A Framework for Distributed Parallel Execution of Transactions of Blocks in Blockchain

06/27/2019
by   Baheti Shrey, et al.
0

In most of the modern day blockchain, transactions are executed serially by both miners and validators; also, PoW is determined serially. The serial execution limits the system throughput and increases transaction acceptance latency, even unable to exploit the modern multi-core resources efficiently. In this work, we try to increase the throughput by introducing parallel execution of the transactions using a static analysis based technique. We propose a framework DiPETrans for the distributed parallel execution of block transactions. In DiPETrans, trusted peers in the blockchain network form a community to execute the transactions and to find the PoW parallelly. The community follows a master-slave approach for parallel execution. The core idea is that master analyzes the transactions using a static analysis based technique, creates different groups (shards) of non-conflicting transactions, and distribute shards to workers (community members) to execute them parallelly. After transaction execution, communities compute power is utilized to find PoW parallelly. On successful creation of a block, the master broadcasts the proposed block to other peers in the network for validation. On receiving a block, validators re-executes the block transactions, either parallelly (community) or serially (solo validators). If they reach the same state as shared by the miner, then accept the block otherwise reject. We performed experiments with historical data from Ethereum blockchain and achieved linear speedup for transaction execution and end-to-end block creation with up to 5 workers in the community. We experimented by varying the number of transactions per block from 100 to 500 and obtained a maximum speedup of 2.18X for miner, 2.04X for info sharing validator, and 2.02X for no info sharing validator. DiPETrans is first of its kind, and we will be evolving it to provide better performance.

READ FULL TEXT
research
03/31/2019

Achieving Greater Concurrency in Execution of Smart Contracts using Object Semantics

Popular blockchain such as Ethereum and several others execute complex t...
research
06/26/2019

XOX Fabric: A hybrid approach to transaction execution

Performance and scalability are a major concern for blockchain systems t...
research
03/11/2020

Scaling Hyperledger Fabric Using Pipelined Execution and Sparse Peers

Many proofs of concept blockchain applications built using Hyperledger F...
research
12/13/2018

Processing Transactions in a Predefined Order

In this paper we provide a high performance solution to the problem of c...
research
11/26/2019

Index-Based Scheduling for Parallel State Machine Replication

State Machine Replication (SMR) is a fundamental approach to designing s...
research
03/14/2022

Block-STM: Scaling Blockchain Execution by Turning Ordering Curse to a Performance Blessing

Block-STM is a parallel execution engine for smart contracts, built arou...
research
11/15/2022

Operation-level Concurrent Transaction Execution for Blockchains

Despite the success in various scenarios, blockchain systems, especially...

Please sign up or login with your details

Forgot password? Click here to reset