Abstract
For many Cloud providers, the backbone of their system is a Cloud coordinator that exposes a portfolio of services to users. The goal of this work is to ensure that a Cloud coordinator interacts correctly with services and users according to a specification of their communication behaviour. To accomplish this goal, we employ session types to analyse the global and local communication patterns. A session type provides an appropriate level of abstraction for specifying message exchange patterns between participants. This work confirms the feasibility of applying session types to protocols used by a commercial Cloud provider. The protocols are developed in SessionJ, an extension of Java implementing session-based programming. We also highlight that the same techniques can be applied when Java is not the development environment by type checking runtime monitors, as in Scribble. Finally, we suggest how our methodology can be used to ensure the correctness of protocols for Cloud brokers, that integrate services exposed by multiple Cloud coordinators, each of whom must correctly cooperate with the Cloud broker.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
V3na Cloud Platform. AlmaCloud Ltd., Kazakhstan. http://v3na.com
References
Buyya, R., Ranjan, R., Calheiros, R.N.: InterCloud: utility-oriented federation of cloud computing environments for scaling of application services. In: Hsu, C.-H., Yang, L.T., Park, J.H., Yeo, S.-S. (eds.) ICA3PP 2010, Part I. LNCS, vol. 6081, pp. 13–31. Springer, Heidelberg (2010)
Nurmi, D., Wolski, R., Grzegorczyk, C., Obertelli, G., Soman, S., Youseff, L., Zagorodnov, D.: The Eucalyptus open-source Cloud-Computing system. In: Cappello, F., Wang, C.L., Buyya, R. (eds.) CCGRID, pp. 124–131. IEEE Computer Society (2009)
Sotomayor, B., Montero, R.S., Llorente, I.M., Foster, I.T.: Virtual infrastructure management in private and hybrid clouds. IEEE Internet Comput. 13(5), 14–22 (2009)
Armbrust, M., Fox, A., Griffith, R., Joseph, A.D., Katz, R., Konwinski, A., Lee, G., Patterson, D., Rabkin, A., Stoica, I., et al.: A view of cloud computing. Commun. ACM 53(4), 50–58 (2010)
Barros, A., Dumas, M., Oaks, P.: A critical overview of the Web services choreography description language. BPTrends Newslett. 3, 1–24 (2005)
Carbone, M., Honda, K., Yoshida, N., Milner, R., Brown, G., Ross-Talbot, S.: A theoretical basis of communication-centred concurrent programming. In: WS-CDL working report, W3C (2006)
Carbone, M., Honda, K., Yoshida, N.: Structured communication-centered programming for web services. ACM Trans. Program. Lang. Syst. 34(2), 8 (2012)
Hu, R., Yoshida, N., Honda, K.: Session-Based distributed programming in java. In: Vitek, J. (ed.) ECOOP 2008. LNCS, vol. 5142, pp. 516–541. Springer, Heidelberg (2008)
Hu, R., Kouzapas, D., Pernet, O., Yoshida, N., Honda, K.: Type-safe eventful sessions in Java. In: D’Hondt, T. (ed.) ECOOP 2010. LNCS, vol. 6183, pp. 329–353. Springer, Heidelberg (2010)
Ng, N., Yoshida, N., Honda, K.: Multiparty session C: safe parallel programming with message optimisation. In: Furia, C.A., Nanz, S. (eds.) TOOLS 2012. LNCS, vol. 7304, pp. 202–218. Springer, Heidelberg (2012)
Honda, K., Mukhamedov, A., Brown, G., Chen, T.-C., Yoshida, N.: Scribbling interactions with a formal foundation. In: Natarajan, R., Ojo, A. (eds.) ICDCIT 2011. LNCS, vol. 6536, pp. 55–75. Springer, Heidelberg (2011)
Basu, S., Bultan, T., Ouederni, M.: Deciding choreography realizability. ACM SIGPLAN Notices 47(1), 191–202 (2012)
Armstrong, J.: Getting Erlang to talk to the outside world. In: Proceedings of the 2002 ACM SIGPLAN Workshop on Erlang, pp. 64–72. ACM (2002)
Simon Gay, M.H.: Subtyping for session types in the pi calculus. J. Acta Inf. 42(2–3), 191–225 (2005)
Dean, J., Ghemawat, S.: MapReduce: simplified data processing on large clusters. Commun. ACM 51(1), 107–113 (2008)
Corbett, J.C., Dean, J., Epstein, M., Fikes, A., Frost, C., Furman, J., Ghemawat, S., Gubarev, A., Heiser, C., Hochschild, P., et al.: Spanner: Google’s globally-distributed database. In: Proceedings of the 10th USENIX Conference on Operating Systems Design and Implementation, pp. 251–264. USENIX Association (2012)
Ciobanu, G., Horne, R.: Non-interleaving operational semantics for geographically replicated databases. In: 15th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing. IEEE (2013, in press)
Bocchi, L., Chen, T.-C., Demangeon, R., Honda, K., Yoshida, N.: Monitoring networks through multiparty session types. In: Beyer, D., Boreale, M. (eds.) FORTE 2013 and FMOODS 2013. LNCS, vol. 7892, pp. 50–65. Springer, Heidelberg (2013)
Neykova, R.: Session types go dynamic or how to verify your Python conversations. In: PLACES’13, Rome, Italy, 23 March, pp. 34–39 (2013)
Hu, R., Neykova, R., Yoshida, N., Demangeon, R., Honda, K.: Practical interruptible conversations. In: Legay, A., Bensalem, S. (eds.) RV 2013. LNCS, vol. 8174, pp. 130–148. Springer, Heidelberg (2013)
Buyya, R., Yeo, C.S., Venugopal, S., Broberg, J., Brandic, I.: Cloud computing and emerging it platforms: vision, hype, and reality for delivering computing as the 5th utility. Future Gener. Comput. Syst. 25(6), 599–616 (2009)
Bernstein, D., Ludvigson, E., Sankar, K., Diamond, S., Morrow, M.: Blueprint for the Intercloud - protocols and formats for cloud computing interoperability. In: Perry, M., Sasaki, H., Ehmann, M., Bellot, G.O., Dini, O. (eds.) ICIW, pp. 328–336. IEEE Computer Society (2009)
Cavalcante, E., Lopes, F., Batista, T.V., Cacho, N., Delicato, F.C., Pires, P.F.: Cloud integrator: building value-added services on the cloud. In: NCCA, pp. 135–142 (2011)
Pawluk, P., Simmons, B., Smit, M., Litoiu, M., Mankovski, S.: Introducing STRATOS: a cloud broker service. In: Chang, R. (ed.) IEEE CLOUD, pp. 891–898. IEEE (2012)
Acknowledgements
We thank the anonymous reviewers for their clear and constructive comments. We are particularly grateful to Ramesh Kini for his support for this project.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Horne, R., Umarov, T. (2014). Ensuring Faultless Communication Behaviour in A Commercial Cloud. In: Counsell, S., Núñez, M. (eds) Software Engineering and Formal Methods. SEFM 2013. Lecture Notes in Computer Science(), vol 8368. Springer, Cham. https://doi.org/10.1007/978-3-319-05032-4_4
Download citation
DOI: https://doi.org/10.1007/978-3-319-05032-4_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-05031-7
Online ISBN: 978-3-319-05032-4
eBook Packages: Computer ScienceComputer Science (R0)