Advertisement

PEEP: A Parallel Execution Engine for Permissioned Blockchain Systems

Conference paper
  • 678 Downloads
Part of the Lecture Notes in Computer Science book series (LNCS, volume 12683)

Abstract

Unlike blockchain systems in public settings, the stricter trust model in permissioned blockchain opens an opportunity for pursuing higher throughput. Recently, as the consensus protocols are developed significantly, the existing serial execution manner of transactions becomes a key factor in limiting overall performance. However, it is not easy to extend the concurrency control protocols, widely used in database systems, to blockchain systems. In particular, there are two challenges to achieve parallel execution of transactions in blockchain as follows: (i) the final results of different replicas may diverge since most protocols just promise the effect of transactions equivalent to some serial order but this order may vary for every concurrent execution; and (ii) almost all state trees that are used to manage states of blockchain do not support fast concurrent updates. In the view of above challenges, we propose a parallel execution engine called PEEP, towards permissioned blockchain systems. Specifically, PEEP employs a deterministic concurrency mechanism to obtain a predetermined serial order for parallel execution, and offers parallel update operations on state tree, which can be implemented on any radix tree with Merkle property. Finally, the extensive experiments show that PEEP outperforms existing serial execution greatly.

Keywords

Blockchain Permissioned Execution optimization 

Notes

Acknowledgments

This work is partially supported by National Science Foundation of China (61972152, U1811264 and U1911203), Guangxi Key Laboratory of Trusted Software (kx202005).

References

  1. 1.
    CITA project (2020). https://github.com/citahub
  2. 2.
    Amiri, M.J., Agrawal, D., et al.: Parblockchain: leveraging transaction parallelism in permissioned blockchain systems. In: ICDCS, pp. 1337–1347. IEEE (2019)Google Scholar
  3. 3.
    Amsden, Z., Arora, R., et al.: The libra blockchain. Libra project, pp. 1–29 (2020). https://developers.libra.org/docs/assets/papers/the-libra-blockchain/2020-05-26.pdf
  4. 4.
    Androulaki, E., Barger, A., et al.: Hyperledger fabric: a distributed operating system for permissioned blockchains. In: EuroSys, pp. 30:1–30:15. ACM (2018)Google Scholar
  5. 5.
    Buchman, E.: Tendermint: byzantine fault tolerance in the age of blockchains. Ph.D. thesis (2016)Google Scholar
  6. 6.
    Castro, M., Liskov, B.: Practical byzantine fault tolerance. In: OSDI, pp. 173–186. USENIX Association (1999)Google Scholar
  7. 7.
    Dickerson, T., Gazzillo, P., Herlihy, M., Koskinen, E.: Adding concurrency to smart contracts. Distrib. Comput. 209–225 (2019).  https://doi.org/10.1007/s00446-019-00357-z
  8. 8.
    Dinh, T.T.A., Wang, J., et al.: BLOCKBENCH: a framework for analyzing private blockchains. In: SIGMOD Conference, pp. 1085–1100. ACM (2017)Google Scholar
  9. 9.
    Ji, Y., Chai, Y., et al.: Smart intra-query fault tolerance for massive parallel processing databases. Data Sci. Eng. 5(1), 65–79 (2020)CrossRefGoogle Scholar
  10. 10.
    Kalidhindi, J., Kazorian, A., et al.: Angela: a sparse, distributed, and highly concurrent Merkle tree (2018)Google Scholar
  11. 11.
    Li, Z., Romano, P., et al.: Sparkle: speculative deterministic concurrency control for partially replicated transactional stores. In: DSN, pp. 164–175. IEEE (2019)Google Scholar
  12. 12.
    Nakamoto, S., et al.: Bitcoin: a peer-to-peer electronic cash system (2008)Google Scholar
  13. 13.
    Ongaro, D., Ousterhout, J.K.: In search of an understandable consensus algorithm. In: USENIX Annual Technical Conference, pp. 305–319. USENIX Association (2014)Google Scholar
  14. 14.
    Pang, S., Qi, X., et al.: Concurrency protocol aiming at high performance of execution and replay for smart contracts. CoRR abs/1905.07169 (2019)Google Scholar
  15. 15.
    Sharma, A., Schuhknecht, F.M., et al.: Blurring the lines between blockchains and database systems: the case of hyperledger fabric. In: SIGMOD Conference, pp. 105–122. ACM (2019)Google Scholar
  16. 16.
    Thomson, A., Diamond, T., et al.: Calvin: fast distributed transactions for partitioned database systems. In: SIGMOD Conference, pp. 1–12. ACM (2012)Google Scholar
  17. 17.
    Wood, G.: Ethereum: a secure decentralised generalised transaction ledger. Ethereum Project Yellow Pap. 151, 1–32 (2014)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2021

Authors and Affiliations

  1. 1.School of Data Science and EngineeringEast China Normal UniversityShanghaiChina
  2. 2.Guangxi Key Laboratory of Trusted SoftwareGuilin University of Electronic TechnologyGuilinChina

Personalised recommendations