Abstract
Traditional Byzantine consensus in distributed systems requires n ≥ 3f + 1, where n is the number of nodes. In this paper, we present a scalable and leaderless Byzantine consensus implementation based on gossip, requiring only n ≥ 2f + 1 nodes. Unlike conventional distributed systems, the network topology of cloud computing systems is often not fully connected, but loosely coupled and layered. Hence, we revisit the Byzantine consensus problem in cloud computing environments, in which each node maintains some number of neighbors, called local view. The message complexity of our Byzantine consensus scheme is O(n), instead of O(n 2). Experimental results and correctness proof show that our Byzantine consensus scheme can solve the Byzantine consensus problem safely in a scalable way without a bottleneck and a leader in cloud computing environments.








Similar content being viewed by others
References
Allavena, A., Demers, A., Hopcroft, J.E. (2005). Correctness of a gossip based membership protocol. In Proceedings of the twenty-fourth annual ACM symposium on Principles of distributed computing, PODC ’05, (pp. 292–301). New York: ACM. doi:10.1145/1.0738141073871.
Amir, Y., Coan, B., Kirsch, J., Lane, J. (2011). Prime: Byzantine replication under attack. IEEE Transactions on Dependable and Secure Computing, 8(4), 564–577. doi:10.1109/TDSC.2010.70.
Bessani, A., Correia, M., da Silva Fraga, J., Lung, L.C. (2009). An efficient byzantine-resilient tuple space. IEEE Transactions on Computers, 58(8), 1080–1094. doi:10.1109/TC.2009.71.
Buyya, R., Yeo, C.S., Venugopal, S., Broberg, J., Brandic, I. (2009). Cloud computing and emerging IT platforms: Vision, hype, and reality for delivering computing as the 5th utility. Future Generation Computer Systems, 25(6), 599–616. doi:10.1016/j.future.2008.12.001. http://www.sciencedirect.com/science/article/pii/S0167739X08001957.
Castro, M., & Liskov, B. (2002). Practical byzantine fault tolerance and proactive recovery. ACM Transactions on Computer Systems, 20(4), 398–461. doi:10.1145/571637.571640.
Chard, K., Bubendorfer, K., Caton, S., Rana, O. (2012). Social cloud computing: a vision for socially motivated resource sharing. IEEE Transactions on Services Computing, 5(4), 551–563. doi:10.1109/TSC.2011.39.
Chun, B.G., Maniatis, P., Shenker, S., Kubiatowicz, J. (2007). Attested append-only memory: making adversaries stick to their word. In Proceedings of twenty-first ACM SIGOPS symposium on operating systems principles, SOSP ’07 (pp. 189–204). New York: ACM. doi:10.1145/1.2942611294280.
Correia, M., Neves, N., Verissimo, P. (2004). How to tolerate half less one byzantine nodes in practical distributed systems. In Proceedings of the 23rd IEEE international symposium on reliable distributed systems, 2004 (pp. 174–183). doi:10.1109/RELDIS.2004.1353018.
Ganesh, A., Kermarrec, A. M., Massoulie, L. (2003). Peer-to-peer membership management for gossip-based protocols. IEEE Transactions on Computers, 52(2), 139–149. doi:10.1109/TC.2003.1176982.
Gurevich, M., & Keidar, I. (2009). Correctness of gossip-based membership under message loss. In Proceedings of the 28th ACM symposium on principles of distributed computing, PODC ’09 (pp. 151–160). New York: ACM. doi:10.1145/1.5827161582743.
Johnson, B. (1984). Fault-tolerant microprocessor-based systems. IEEE Micro, 4(6), 6–21. doi:10.1109/MM.1984.291277.
Kapitza, R., Behl, J., Cachin, C., Distler, T., Kuhnle, S., Mohammadi, S. V., Schröder-Preikschat, W., Stengel, K. (2012). Cheapbft: resource-efficient byzantine fault tolerance. In Proceedings of the 7th ACM european conference on computer Systems, EuroSys ’12 (pp. 295–308). New York: ACM. doi:10.1145/2.1688362168866.
Komal, M., Ansuyia, M., Deepak, D. (2013). Round robin with server affinity: A VM load balancing algorithm for cloud based infrastructure. Journal of Information Processing Systems, 9(3), 379–394. doi:10.3745/JIPS.2013.9.3.379. ISSN 1976-913X.
Lamport, L. (1998). The part-time parliament. ACM Transactions on Computer Systems, 16(2), 133–169. doi:10.1145/279227.279229.
Lamport, L., Shostak, R., Pease, M. (1982). The byzantine generals problem. ACM Transactions on Programming Languages and Systems, 4(3), 382–401. doi:10.1145/357172.357176.
Malkhi, D., & Reiter, M. (1997). Byzantine quorum systems. In Proceedings of the twenty-ninth annual ACM symposium on theory of computing, STOC ’97 (pp. 569–578). New York: ACM. doi:10.1145/258533.258650.
Newman, M. (2010). Networks: an introduction. New York: Oxford University Press, Inc.
Pease, M., Shostak, R., Lamport, L. (1980). Reaching agreement in the presence of faults. Journal of the ACM, 27(2), 228–234. doi:10.1145/322186.322188.
Schneider, F.B. (1984). Byzantine generals in action: implementing fail-stop processors. ACM Transactions on Computer Systems, 2(2), 145–154. doi:10.1145/190.357399.
Schneider, F.B. (1990). Implementing fault-tolerant services using the state machine approach: a tutorial. ACM Computing Surveys, 22(4), 299–319. doi:10.1145/98163.98167.
Veronese, G., Correia, M., Bessani, A., Lung, L.C., Verissimo, P. (2013). Efficient byzantine fault-tolerance. IEEE Transactions on Computers, 62(1), 16–30. doi:10.1109/TC.2011.221.
Wang, S.S., Yan, K. Q., Wang, S.C. (2011). Achieving efficient agreement within a dual-failure cloud-computing environment. Expert Systems with Applications, 38(1), 906–915. doi:10.1016/j.eswa.2010.07.072.
Yin, J., Martin, J.P., Venkataramani, A., Alvisi, L., Dahlin, M. (2003). Separating agreement from execution for byzantine fault tolerant services. In Proceedings of the nineteenth ACM symposium on operating systems principles, SOSP ’03 (pp. 253–267). New York: ACM. doi:10.1145/945445.945470.
Zhang, Y., Zheng, Z., Lyu, M. (2011). Bftcloud: a byzantine fault tolerance framework for voluntary-resource cloud computing. In IEEE international conference on cloud computing (CLOUD), 2011 (pp. 444–451). doi:10.1109/CLOUD.2011.16.
Author information
Authors and Affiliations
Corresponding author
Additional information
This work was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MEST) (No. 2013056346).
Rights and permissions
About this article
Cite this article
Lim, J., Suh, T., Gil, J. et al. Scalable and leaderless Byzantine consensus in cloud computing environments. Inf Syst Front 16, 19–34 (2014). https://doi.org/10.1007/s10796-013-9460-7
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10796-013-9460-7