BFT-Dep: Automatic Deployment of Byzantine Fault-Tolerant Services in PaaS Cloud

  • Bijun Li
  • Rüdiger Kapitza
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9687)


Cloud computing has been a massive trend over the recent years and eased the deployment of scalable distributed applications. While initially renting out virtual machines was the predominant form of cloud computing, nowadays Platform as a Service (PaaS) solutions are emerging. The main advantages of the latter are a faster and easier application deployment as well as built-in support for horizontal scalability. However, when it comes to services with more demanding dependability requirements, currently provided deployment mechanisms quickly become insufficient, forcing cloud customers to fall back into manual, self-made strategies.

In this paper, we present BFT-Dep, a framework for deploying Byzantine fault-tolerant (BFT) services in a PaaS cloud automatically. BFT-Dep leverages the existing PaaS functionality to address specific deployment requirements and provides tailored support to set up and manage replicated services. It flexibly integrates BFT protocols as an independent service layer, thereby alleviating the complexity that the deployment of such systems entails. An initial prototype of BFT-Dep has been implemented on top of the open-source PaaS platform OpenShift and a first evaluation shows its practicability.


Automatic application deployment Platform as a Service (PaaS) cloud Byzantine fault tolerance 


  1. 1.
    Behl, J., Distler, T., Kapitza, R.: Consensus-oriented parallelization: how to earn your first million. In: Proceedings of the 16th Annual Middleware Conference, Middleware 2015, pp. 173–184. ACM (2015)Google Scholar
  2. 2.
    Bessani, A., Correia, M., Quaresma, B., André, F., Sousa, P.: Depsky: dependable and secure storage in a cloud-of-clouds. ACM Trans. Storage (TOS) 9(4), 12 (2013)Google Scholar
  3. 3.
    Bessani, A., Sousa, J., Alchieri, E.E.: State machine replication for the masses with bft-smart. In: 2014 44th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), pp. 355–362. IEEE (2014)Google Scholar
  4. 4.
  5. 5.
    Brenner, S., Garbers, B., Kapitza, R.: Adaptive and scalable high availability for infrastructure clouds. In: Magoutis, K., Pietzuch, P. (eds.) DAIS 2014. LNCS, vol. 8460, pp. 16–30. Springer, Heidelberg (2014)CrossRefGoogle Scholar
  6. 6.
    Castro, M., Liskov, B.: Practical byzantine fault tolerance. In: Proceedings of the third USENIX Symposium on Operating Systems Design and Implementation (OSDI 1999), pp. 173–186 (1999)Google Scholar
  7. 7.
  8. 8.
    Cogo, V.V., Nogueira, A., Sousa, J., Pasin, M., Reiser, H.P., Bessani, A.: FITCH: supporting adaptive replicated services in the cloud. In: Dowling, J., Taïani, F. (eds.) DAIS 2013. LNCS, vol. 7891, pp. 15–28. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  9. 9.
  10. 10.
  11. 11.
    Garraghan, P., Townend, P., Xu, J.: Using byzantine fault-tolerance to improve dependability in federated cloud computing. Int. J. Softw. Inform. 7(2), 221–237 (2013)Google Scholar
  12. 12.
  13. 13.
  14. 14.
    Kotla, R., Alvisi, L., Dahlin, M., Clement, A., Wong, E.: Zyzzyva: speculative byzantine fault tolerance. ACM SIGOPS Oper. Syst. Rev. 41(6), 45–58 (2007)CrossRefGoogle Scholar
  15. 15.
    Merideth, M.G., Iyengar, A., Mikalsen, T., Tai, S., Rouvellou, I., Narasimhan, P.: Thema: Byzantine-fault-tolerant middleware for web-service applications. In: 2005 24th IEEE Symposium on Reliable Distributed Systems (SRDS), pp. 131–140. IEEE (2005)Google Scholar
  16. 16.
  17. 17.
  18. 18.
    Schneider, F.B.: Implementing fault-tolerant services using the state machine approach: a tutorial. ACM Comput. Surv. 22, 299–319 (1990)CrossRefGoogle Scholar
  19. 19.
    Verissimo, P., Bessani, A., Pasin, M.: The tclouds architecture: Open and resilient cloud-of-clouds computing. In: 2012 IEEE/IFIP 42nd International Conference on Dependable Systems and Networks Workshops (DSN-W), pp. 1–6. IEEE (2012)Google Scholar
  20. 20.
  21. 21.
    Yin, J., Martin, J.P., Venkataramani, A., Alvisi, L., Dahlin, M.: Separating agreement from execution for byzantine fault tolerant services. In: Proceedings of the Nineteenth ACM SIGOPS Symposium on Operating Systems Principles (SOSP 2003), pp. 253–267. ACM (2003)Google Scholar
  22. 22.
    Zhang, Q., Cheng, L., Boutaba, R.: Cloud computing: state-of-the-art and research challenges. J. Internet serv. appl. 1(1), 7–18 (2010)CrossRefGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2016

Authors and Affiliations

  1. 1.TU BraunschweigBraunschweigGermany

Personalised recommendations