Skip to main content
Log in

An Improved Blockchain Consensus Algorithm Based on Raft

  • Research Article-Computer Engineering and Computer Science
  • Published:
Arabian Journal for Science and Engineering Aims and scope Submit manuscript

Abstract

To address the problem of performance degradation caused by the blockchain backup mechanism as well as the high throughput and low latency requirements characteristic of blockchain applications, this paper optimizes the Raft consensus algorithm for the Hyperledger Fabric platform in terms of both log replication and leader election. In the log replication phase, the improvement of log replication based on apportionment idea aims to reduce the communication complexity of leader node by involving peer node in distributing log information. In the leader election phase, the improvement of leader election based on vote change mechanism changes the vote affiliation of peer node based on a comparison of votes from candidate nodes, aims to reach consensus in a round of election and reduces the election time. Through the performance test of the blockchain, it is demonstrated that the improved AdRaft algorithm improves 5.8% in throughput and reduces 1.3% in latency over the original Raft algorithm.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

Similar content being viewed by others

References

  1. Lamport, L.; Shostak, R.; Pease, M.: The Byzantine generals problem. ACM Trans. Program. Lang. Syst. 4(3), 382–401 (1982)

    Article  Google Scholar 

  2. Castro, M.; Liskov, B.: Practical Byzantine fault tolerance and proactive recovery. ACM Trans. Comput. Syst. 20(4), 398–461 (2002)

    Article  Google Scholar 

  3. Narayanan, A.; Bonneau, J.; Felten, E., et al.: Bitcoin and Cryptocurrency Technologies: A Comprehensive Introduction, p. 27–30. Princeton University Press, Princeton, NJ (2016)

    MATH  Google Scholar 

  4. Sheikh, H.; Meer, A.R.; Rizwan, F.: Smart contract development, adoption and challenges: the powered blockchain. Int Res J Adv Eng Sci 4(2), 321–324 (2019)

    Google Scholar 

  5. The ZILLIQA Technical Whitepaper[EB/OL]. https://docs.zilliqa.com/whitepaper.pdf

  6. Gilad, Y.; Hemo, R.; Micali, S., et al.: Algorand: scaling byzantine agreements for cryptocurrencies. In: 2017 ACM SIGOPS 26th Symposium on Operating Systems Principles, pp. 51–68. ACM, Shanghai (2017)

  7. Li, C.; Li, P.; Zhou, D., et al.: Scaling nakamoto consensus to thousands of transactions per second. Comput. Sci. (2018)

  8. Wang, J.; Wang, H.: Monoxide: scale out blockchains with asynchronous consensus zones. In: 16th USENIX Symposium on Networked Systems Design and Implementation (NSDI), pp. 95–112. Boston, MA, United States (2019)

  9. James, A.; Myers, D.S.; Barbara, L., et al. HQ replication: a hybrid quorum protocol for byzantine fault tolerance. In: SOSP' 07: Proceedings of the 21st ACM symposium on Operating systems principles. New York, USA. 2006: 177–190.

  10. Ramakrishna, K.; Lorenzo, A.; Mike, D., et al.: Zyzzyva: speculative byzantine fault tolerance. ACM Trans. Comput. Syst. 27(4), 45–58 (2009)

    Google Scholar 

  11. Liu, J.; Li, W.; Karame, G., et al.: Scalable byzantine consensus via hardware-assisted secret sharing. IEEE Trans Comput 68(1), 139–151 (2018)

    Article  MathSciNet  Google Scholar 

  12. Baird, L.: The Swirlds hashgraph consensus algorithm: fair fast byzantine fault tolerance[EB/OL]. http://www.swirlds.com/downloads/SWIRLDS-TR-2016-01.pdf

  13. Andrew M., Xia Yu, Kyle C., et al. The honey badger of BFT protocols. In: CCS '16: Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, pp. 31–42. ACM, Vienna (2016)

  14. Lamport, L.: The part-time parliament. ACM Trans. Comput. Syst. 16(2), 133–169 (1998)

    Article  Google Scholar 

  15. Junqueira, F.P.; Reed, B.C.; Serafini, M.: Zab: high-performance broadcast for primary-backup systems. In: IEEE/IFIP 41st International Conference on Dependable Systems and Networks (DSN), pp. 245–256. IEEE Press, Hong Kong, China (2011)

  16. Burrows, M.: The Chubby lock service for loosely-coupled distributed systems. In: 7th Symposium on Operating Systems Design and Implementation (OSDI '06), pp. 335–350. USENIX Association, Seattle (2006).

  17. Ongaro, D; Ousterhout, J.: In search of an understandable consensus algorithm. In: USENIX Annual Technical Conference. [s.l.], pp. 305–319. USENIX (2014)

  18. Wang, Z.; Li, T.; et al.: CRaft: an erasure-coding-supported version of raft for reducing storage cost and network cost. In: 18th USENIX Conference on File and Storage Technologies (FAST '20), pp. 303–344. USENIX, Santa Clara (2020)

  19. Tan, D.; Hu, J.; Wang, J.: VBBFT-Raft: an understandable blockchain consensus protocol with high performance. In: 2019 IEEE 7th International Conference on Computer Science and Network Technology (ICCSNT), pp. 111–115. IEEE, Dalian (2019)

  20. Wang, R.; Zhang, L.; Zhou, H.; Xu, Q.: A byzantine fault tolerance raft algorithm combines with BLS signature. J. Appl. Sci. 38(01), 93–104 (2020)

    Google Scholar 

  21. Wang, R.; Zhang, L.; Xu, Q., et al. K-bucket based raft-like consensus algorithm for permissioned blockchain. In: 2019 IEEE 25th International Conference on Parallel and Distributed Systems (ICPADS), pp. 996–999. IEEE, Tianjin (2019)

  22. Dai, K.: Design of Optimized Log Replication Distributed Consensus Algorithm OLR-Raft Based on Raft. Huazhong University of Science and Technology, Wuhan (2017)

    Google Scholar 

  23. Zhike, W.: Research on Consistency Problem of Distributed System Based on Raft Consensus Algorithm. Xidian University, Xi’an (2019)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Xuefeng Wei.

Additional information

This work was supported by Chongqing technology innovation and application development special key projects under award cstc2018jszx-cyzdX0036.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Fu, W., Wei, X. & Tong, S. An Improved Blockchain Consensus Algorithm Based on Raft. Arab J Sci Eng 46, 8137–8149 (2021). https://doi.org/10.1007/s13369-021-05427-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s13369-021-05427-8

Keywords

Navigation