Abstract
The Raft consensus algorithm constitutes a widely-used algorithm not only in the broader area of distributed systems, ut also in private/permissioned blockchains such as Hyperledger Fabric. A Raft-based distributed system (RDS) strongly relies on leader election, which involves a number of time-related parameters. In the Raft-related literature, the process according to which those parameters are set is an under-researched area. Specifically, the use of the uniform distribution is the dominant approach. Motivated by this realization, in this work, we focus on these time parameters proposing the notion of “leadership uniformity” in combination with a series of performance metrics. Leadership uniformity is based on the desirable characteristic of having equality among the nodes who serve as leaders. The proposed performance metrics are straightforward adaptations of widely-used measurements from broad disciplines such as estimation theory. The experimental results of this work justify the appropriateness of the proposed notion of leadership uniformity. Specifically, the best performance was yielded by the utilization of normal distribution from which the time parameters under investigation were drawn.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
In many cases, this number should be less than the \(50\%\) of total number of nodes.
- 2.
Raft can only tolerate crash failures and not malicious nodes.
- 3.
In a message–passing distributed system a global clock does not apply [32], so, the timings are encoded as (numerical) indices.
- 4.
References
Lamport, L.: The part-time parliament. In: Concurrency: The Works of Leslie Lamport, pp. 277–317 (2019)
Howard, H., Schwarzkopf, M., Madhavapeddy, A., Crowcroft, J.: Raft refloated: do we have consensus? ACM SIGOPS Oper. Syst. Rev. 49(1), 12–21 (2015)
Lamport, L., Massa, M.: Cheap Paxos. In: International Conference on Dependable Systems and Networks, 2004, pp. 307–314. IEEE (2004)
Lamport, L.: Fast paxos. Distrib. Comput. 19(2), 79–103 (2006)
Mazieres, D.: Paxos made practical (2007)
Ongaro, D., Ousterhout, J.: In search of an understandable consensus algorithm. In: 2014 USENIX Annual Technical Conference, pp. 305–319 (2014)
Bano, S., et al.: SoK: consensus in the age of blockchains. In: Proceedings of the 1st ACM Conference on Advances in Financial Technologies, pp. 183–198 (2019)
IBM: Build and run a smart contract on a Hyperledger Fabric network with the Raft ordering service (2020)
Nakamoto, S., Bitcoin, A.: A Peer-to-peer Electronic Cash System. Bitcoin (2008). https://bitcoin.org/bitcoin.pdf
Wood, G., et al.: Ethereum: a secure decentralised generalised transaction ledger. Ethereum Proj. Yellow Pap. 151(2014), 1–32 (2014)
Schwartz, D., Youngs, N., Britto, A., et al.: The Ripple protocol consensus algorithm. Ripple Labs Inc. White Pap. 5(8) (2014)
Howard, H.: ARC: analysis of raft consensus. Technical report UCAM-CL-TR-857, University of Cambridge, Computer Laboratory (2014)
Meling, H., Jehl, L.: Tutorial summary: Paxos explained from scratch. In: Baldoni, R., Nisse, N., van Steen, M. (eds.) Principles of Distributed Systems. OPODIS 2013. Lecture Notes in Computer Science, vol. 8304, pp. 1–10. Springer, Cham (2013). https://doi.org/10.1007/978-3-319-03850-6_1
Chand, S., Liu, Y.A.: What’s live? understanding distributed consensus. arXiv preprint arXiv:2001.04787 (2020)
Liu, Y.A., Chand, S., Stoller, S.D.: Moderately complex Paxos made simple: high-level specification of distributed algorithm. Computing Research Repository (2017)
Chandra, T.D., Griesemer, R., Redstone, J.: Paxos made live: an engineering perspective. In: Proceedings of the twenty-sixth annual ACM symposium on Principles of distributed computing, pp. 398–407 (2007)
Themistocleous, M., Christodoulou, K., Iosif, E., Louca, S., Tseas, D.: Blockchain in academia: where do we stand and where do we go? In: Proceedings of the 53rd Hawaii International Conference on System Sciences (2020)
Huang, D., Ma, X., Zhang, S.: Performance analysis of the raft consensus algorithm for private blockchains. IEEE Trans. Syst. Man Cybern. Syst. 50(1), 172–181 (2020)
Nakagawa, T., Hayashibara, N.: Resource management for raft consensus protocol. Int. J. Space-Based Situated Comput. 8(2), 80–87 (2018)
Sakic, E., Kellerer, W.: Response time and availability study of RAFT consensus in distributed SDN control plane. IEEE Trans. Netw. Serv. Manage. 15(1), 304–318 (2017)
: The Linux Foundations Projects. OpenDaylight (2019)
Open Networking Foundation (2019)
Quorum: Home. Quorum (2020)
Wang, R., Zhang, L., Xu, Q., Zhou, H.: 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 (2019)
Kademlia: a design specification. XLattice (2019)
Baliga, A., Subhod, I., Kamat, P., Chatterjee, S.: Performance evaluation of the Quorum blockchain platform. arXiv preprint arXiv:1809.03421 (2018)
Christodoulou, K., Iosif, E., Inglezakis, A., Themistocleous, M.: Consensus crash testing: exploring Ripple’s decentralization degree in adversarial environments. Future Internet 12(3), 53 (2020)
Ren, L., Ward, P.A.S.: Distributed consensus and fault tolerance mechanisms. In: Li, K.-Ch., Bertino, E., Chen, X., Jiang, H. (eds.) Essentials of Blockchain Technology. 1st edn. (2019)
Lamport, L., et al.: Paxos made simple. ACM Sigact News 32(4), 18–25 (2001)
Ongaro, D.: Consensus: bridging theory and practice. Ph.D. thesis, Stanford University (2014)
Arora, V., Mittal, T., Agrawal, D., El Abbadi, A., Xue, X., et al.: Leader or majority: why have one when you can have both? improving read scalability in Raft-like consensus protocols. In: 9th \(\{\)USENIX\(\}\) Workshop on Hot Topics in Cloud Computing (HotCloud 17) (2017)
Coulouris, G.F., Dollimore, J., Kindberg, T.: Distributed Systems: Concepts and Design. Pearson Education (2005)
Kay, S.M.: Fundamentals of Statistical Signal Processing. Prentice Hall PTR (1993)
Almeida, V., Bestavros, A., Crovella, M., De Oliveira, A.: Characterizing reference locality in the www. In: Fourth International Conference on Parallel and Distributed Information Systems, pp. 92–103. IEEE (1996)
Underwood, R., Anderson, J., Apon, A.: Measuring network latency variation impacts to high performance computing application performance. In: Proceedings of the 2018 ACM/SPEC International Conference on Performance Engineering, pp. 68–79 (2018)
Acknowledgement
This research was funded by the Ripple’s Impact Fund, an advised fund of Silicon Valley Community Foundation (Grant id: 2018-188546).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Iosif, E., Christodoulou, K., Touloupou, M., Inglezakis, A. (2020). Leadership Uniformity in Raft Consensus Algorithm. In: Themistocleous, M., Papadaki, M., Kamal, M.M. (eds) Information Systems. EMCIS 2020. Lecture Notes in Business Information Processing, vol 402. Springer, Cham. https://doi.org/10.1007/978-3-030-63396-7_9
Download citation
DOI: https://doi.org/10.1007/978-3-030-63396-7_9
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-63395-0
Online ISBN: 978-3-030-63396-7
eBook Packages: Computer ScienceComputer Science (R0)