skip to main content
research-article

Cloud Deployment Tradeoffs for the Analysis of Spatially Distributed Internet of Things Systems

Published:03 May 2020Publication History
Skip Abstract Section

Abstract

Internet-enabled devices operating in the physical world are increasingly integrated in modern distributed systems. We focus on systems where the dynamics of spatial distribution is crucial; in such cases, devices may need to carry out complex computations (e.g., analyses) to check satisfaction of spatial requirements. The requirements are partly global—as the overall system should achieve certain goals—and partly individual, as each entity may have different goals. Assurance may be achieved by keeping a model of the system at runtime, monitoring events that lead to changes in the spatial environment, and performing requirements analysis. However, computationally intensive runtime spatial analysis cannot be supported by resource-constrained devices and may be offloaded to the cloud. In such a scenario, multiple challenges arise regarding resource allocation, cost, performance, among other dimensions. In particular, when the workload is unknown at the system’s design time, it may be difficult to guarantee application-service-level agreements, e.g., on response times. To address and reason on these challenges, we first instantiate complex computations as microservices and integrate them to an IoT-cloud architecture. Then, we propose alternative cloud deployments for such an architecture—based on virtual machines, containers, and the recent Functions-as-a-Service paradigm. Finally, we assess the feasibility and tradeoffs of the different deployments in terms of scalability, performance, cost, resource utilization, and more. We adopt a workload scenario from a known dataset of taxis roaming in Beijing, and we derive other workloads to represent unexpected request peaks and troughs. The approach may be replicated in the design process of similar classes of spatially distributed IoT systems.

References

  1. Martin Garriga and Christos Tsigkanos. 2018. Accompanying models and implementation. Retrieved from dsg.tuwien.ac.at/team/ctsigkanos/lambda-topochecker/.Google ScholarGoogle Scholar
  2. Amazon. 2018. AWS Lambda. Retrieved from https://aws.amazon.com/lambda/.Google ScholarGoogle Scholar
  3. Microsoft Azure. 2018. Azure Functions. Retrieved from https://azure.microsoft.com/en-us/services/functions/.Google ScholarGoogle Scholar
  4. IBM. 2018. IBM/Apache Openwhisk. Retrieved from https://openwhisk.apache.org/.Google ScholarGoogle Scholar
  5. Mehrnoosh Askarpour, Carlo Ghezzi, Dino Mandrioli, Matteo Rossi, and Christos Tsigkanos. 2019. Formal methods in designing critical cyber-physical systems. In From Software Engineering to Formal Methods and Tools, and Back. Springer, Cham, 110--130. DOI:https://doi.org/10.1007/978-3-030-30985-5_8Google ScholarGoogle Scholar
  6. Radhakisan Baheti and Helen Gill. 2011. Cyber-physical systems. Impact Control Technol. 12 (2011), 161--166.Google ScholarGoogle Scholar
  7. Luciano Baresi, Martin Garriga, and Alan de De Renzis. 2017. Microservices identification through interface analysis. In Proceedings of the European Conference on Service-Oriented and Cloud Computing. Springer, 19--33.Google ScholarGoogle ScholarCross RefCross Ref
  8. Luciano Baresi, Sam Guinea, Alberto Leva, and Giovanni Quattrocchi. 2016. A discrete-time feedback controller for containerized cloud applications. In Proceedings of the 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering. ACM, 217--228.Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Luciano Baresi, Danilo. Mendonca, Martin Garriga, Sam Guinea, and Giovanni Quattrocchi. 2018. A unified model for the mobile-edge-cloud continuum. ACM Trans. Internet Technol. (2018). In Press.Google ScholarGoogle Scholar
  10. Luciano Baresi, Danilo Filgueira Mendonça, and Martin Garriga. 2017. Empowering low-latency applications through a serverless edge computing architecture. In Proceedings of the European Conference on Service-Oriented and Cloud Computing. Springer, 196--210.Google ScholarGoogle ScholarCross RefCross Ref
  11. Jiri Barnat, Lubos Brim, and Jakub Chaloupka. 2003. Parallel breadth-first search LTL model-checking. In Proceedings of the 18th IEEE International Conference on Automated Software Engineering. IEEE, 106--115.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Carlo Bellettini, Matteo Camilli, Lorenzo Capra, and Mattia Monga. 2016. Distributed CTL model checking using MapReduce: Theory and practice. Concurr. Comput.: Pract. Exper. 28, 11 (2016), 3025--3041.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Luca Bortolussi and Laura Nenzi. 2014. Specifying and monitoring properties of stochastic spatio-temporal systems in signal temporal logic. In Proceedings of the 8th International Conference on Performance Evaluation Methodologies and Tools. ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering), 66--73.Google ScholarGoogle Scholar
  14. Luboš Brim, Karen Yorav, and Jitka Žídková. 2005. Assumption-based distribution of CTL model checking. Int. J. Softw. Tools Technol. Transfer 7, 1 (2005), 61--73.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Qingping Chi, Hairong Yan, Chuan Zhang, Zhibo Pang, and Li Da Xu. 2014. A reconfigurable smart sensor interface for industrial WSN in IoT environment. IEEE Trans. Industr. Inform. 10, 2 (2014), 1417--1425.Google ScholarGoogle ScholarCross RefCross Ref
  16. Vincenzo Ciancia, Stephen Gilmore, Gianluca Grilletti, Diego Latella, Michele Loreti, and Mieke Massink. 2018. Spatio-temporal model checking of vehicular movement in public transport systems. International Journal on Software Tools for Technology Transfer 20, 3 (2018), 289--311.Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Vincenzo Ciancia, Stephen Gilmore, Diego Latella, Michele Loreti, and Mieke Massink. 2014. Data verification for collective adaptive systems: Spatial model-checking of vehicle location data. In Proceedings of the IEEE 8th International Conference on Self-Adaptive and Self-Organizing Systems Workshops (SASOW’14). IEEE, 32--37.Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Vincenzo Ciancia, Gianluca Grilletti, Diego Latella, Michele Loreti, and Mieke Massink. 2015. An experimental spatio-temporal model checker. In Proceedings of the International Conference on Software Engineering and Formal Methods. Springer, 297--311.Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Vincenzo Ciancia, Diego Latella, Michele Loreti, and Mieke Massink. 2014. Specifying and verifying properties of space. In Theoretical Computer Science. Springer, 222--235.Google ScholarGoogle Scholar
  20. Vincenzo Ciancia, Diego Latella, Mieke Massink, and Rytis Pakauskas. 2015. Exploring spatio-temporal properties of bike-sharing systems. In Proceedings of the IEEE International Conference on Self-Adaptive and Self-Organizing Systems Workshops (SASOW’15). IEEE, 74--79.Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Vincenzo Ciancia, Diego Latella, Mieke Massink, Rytis Paškauskas, and Andrea Vandin. 2016. A tool-chain for statistical spatio-temporal model checking of bike sharing systems. In Proceedings of the International Symposium on Leveraging Applications of Formal Methods. Springer, 657--673.Google ScholarGoogle ScholarCross RefCross Ref
  22. Edmund M. Clarke, Orna Grumberg, and Doron A. Peled. 1999. Model Checking. MIT Press.Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Sami Evangelista, Laure Petrucci, and Samir Youcef. 2011. Parallel nested depth-first searches for LTL model checking. In Proceedings of the International Symposium on Automated Technology for Verification and Analysis. Springer, 381--396.Google ScholarGoogle ScholarCross RefCross Ref
  24. Wes Felter, Alexandre Ferreira, Ram Rajamony, and Juan Rubio. 2015. An updated performance comparison of virtual machines and linux containers. In Proceedings of the IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS’15). IEEE, 171--172.Google ScholarGoogle ScholarCross RefCross Ref
  25. Martin Fowler. 2015. Microservices. Retrieved from http://martinfowler.com/bliki/MonolithFirst.html.Google ScholarGoogle Scholar
  26. Martin Garriga. 2017. Towards a taxonomy of microservices architectures. In Proceedings of the International Conference on Software Engineering and Formal Methods. Springer, 203--218.Google ScholarGoogle Scholar
  27. Alex Glikson, Stefan Nastic, and Schahram Dustdar. 2017. Deviceless edge computing: Extending serverless computing to the edge of the network. In Proceedings of the 10th ACM International Systems and Storage Conference. ACM, 28.Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. S. Hendrickson, S. Sturdevant, T. Harter, V. Venkataramani, A. C. Arpaci-Dusseau, and R. H. Arpaci-Dusseau. 2016. Serverless computation with openLambda. In Proceedings of the 8th USENIX Conference on Hot Topics in Cloud Computing. 33--39.Google ScholarGoogle Scholar
  29. Mike Jia, Weifa Liang, and Zichuan Xu. 2017. QoS-aware task offloading in distributed cloudlets with virtual network function services. In Proceedings of the 20th ACM International Conference on Modelling, Analysis and Simulation of Wireless and Mobile Systems. ACM, 109--116.Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Edward A. Lee. 2008. Cyber Physical Systems: Design Challenges. Technical Report. EECS Department, University of California, Berkeley.Google ScholarGoogle Scholar
  31. P. Leitner and J. Cito. 2016. Patterns in the Chaos—A Study of Performance Variation and Predictability in Public IaaS Clouds. ACM Trans. Internet Technol. 16, 3 (2016), 15.Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Flavio Lerda and Riccardo Sisto. 1999. Distributed-memory model checking with SPIN. In Proceedings of the International SPIN Workshop on Model Checking of Software. Springer, 22--39.Google ScholarGoogle ScholarCross RefCross Ref
  33. Xavier Leroy, Damien Doligez, Alain Frisch, Jacques Garrigue, Didier Rémy, and Jérôme Vouillon. 2014. The OCaml system release 4.02. Institut National de Recherche en Informatique et en Automatique 54 (2014).Google ScholarGoogle Scholar
  34. James Lewis and Martin Fowler. 2014. Microservices: A definition for this new architectural term. Retrieved from http://martinfowler.com/articles/microservices.html.Google ScholarGoogle Scholar
  35. Shancang Li, Li Da Xu, and Shanshan Zhao. 2015. The internet of things: A survey. Info. Syst. Front. 17, 2 (2015), 243--259.Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Wes Lloyd, Shruti Ramesh, Swetha Chinthalapati, Lan Ly, and Shrideep Pallickara. 2018. Serverless computing: An investigation of factors influencing microservice performance. In Proceedings of the IEEE International Conference on Cloud Engineering (IC2E’18). IEEE, 159--169.Google ScholarGoogle ScholarCross RefCross Ref
  37. Pavel Mach and Zdenek Becvar. 2017. Mobile edge computing: A survey on architecture and computation offloading. IEEE Commun. Surveys Tutor. 19, 3 (2017), 1628--1656.Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Laura Nenzi, Luca Bortolussi, Vincenzo Ciancia, Michele Loreti, and Mieke Massink. 2015. Qualitative and quantitative monitoring of spatio-temporal properties. In Runtime Verification. Springer, 21--37.Google ScholarGoogle Scholar
  39. Michael Roberts. 2016. Serverless architectures: What is serverless? Retrieved from http://martinfowler.com/articles/serverless.html.Google ScholarGoogle Scholar
  40. Y. Song, S. S. Yau, R. Yu, X. Zhang, and G. Xue. 2017. An approach to QoS-based task distribution in edge computing networks for IoT applications. In Proceedings of the IEEE International Conference on Edge Computing (EDGE’17). 32--39.Google ScholarGoogle Scholar
  41. Josef Spillner, Cristian Mateos, and David A. Monge. 2017. Faaster, better, cheaper: The prospect of serverless scientific computing and hpc. In Proceedings of the Latin American High Performance Computing Conference. Springer, 154--168.Google ScholarGoogle Scholar
  42. Haiying Sun, Jing Liu, Xiaohong Chen, and Dehui Du. 2015. Specifying cyber physical system safety properties with metric temporal spatial logic. In Proceedings of the Asia-Pacific Software Engineering Conference. IEEE, 254--260.Google ScholarGoogle ScholarCross RefCross Ref
  43. Christos Tsigkanos, Cosmin Avasalcai, and Schahram Dustdar. 2019. Architectural considerations for privacy on the edge. IEEE Internet Comput. 23, 4 (2019), 76--83.Google ScholarGoogle ScholarCross RefCross Ref
  44. Christos Tsigkanos, Timo Kehrer, and Carlo Ghezzi. 2016. Architecting dynamic cyber-physical spaces. Computing 98, 10 (2016), 1011--1040.Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Christos Tsigkanos, Timo Kehrer, and Carlo Ghezzi. 2017. Modeling and verification of evolving cyber-physical spaces. In Proceedings of the 11th Joint Meeting on Foundations of Software Engineering (ESEC/FSE’17). 38--48.Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Christos Tsigkanos, Stefan Nastic, and Schahram Dustdar. 2019. Towards resilient Internet of Things: Vision, challenges, and research roadmap. In Proceedings of the 39th IEEE International Conference on Distributed Computing Systems (ICDCS’19).Google ScholarGoogle ScholarCross RefCross Ref
  47. Christos Tsigkanos, Laura Nenzi, Michele Loreti, Martin Garriga, Schahram Dustdar, and Carlo Ghezzi. 2019. Inferring analyzable models from trajectories of spatially distributed Internet-of-Things. In Proceedings of the 1st IEEE/ACM International Symposium on Software Engineering for Adaptive and Self-Managing Systems ([email protected]’19). IEEE Computer Society.Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Mario Villamizar, Oscar Garces, Lina Ochoa, Harold Castro, Lorena Salamanca, Mauricio Verano, Rubby Casallas, Santiago Gil, Carlos Valencia, Angee Zambrano, et al. 2016. Infrastructure cost comparison of running web applications in the cloud using AWS lambda and monolithic and microservice architectures. In Proceedings of the 16th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid’16). IEEE, 179--182.Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Jie Xu, Lixing Chen, and Pan Zhou. 2018. Joint service caching and task offloading for mobile edge computing in dense networks. arXiv preprint arXiv:1801.05868.Google ScholarGoogle Scholar
  50. Zhixian Yan, Dipanjan Chakraborty, Christine Parent, Stefano Spaccapietra, and Karl Aberer. 2013. Semantic trajectories: Mobility data computation and annotation. ACM Trans. Intell. Syst. Technol. 4, 3 (2013), 49.Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. Ruozhou Yu, Guoliang Xue, and Xiang Zhang. 2018. Application provisioning in fog computing-enabled Internet-of-Things: A network perspective. In Proceedings of the IEEE INFOCOM 2018-IEEE Conference on Computer Communications. IEEE, 783--791.Google ScholarGoogle ScholarCross RefCross Ref
  52. Jing Yuan, Yu Zheng, Xing Xie, and Guangzhong Sun. 2011. Driving with knowledge from the physical world. In Proceedings of the 17th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. ACM, 316--324.Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. Jing Yuan, Yu Zheng, Chengyang Zhang, Wenlei Xie, Xing Xie, Guangzhong Sun, and Yan Huang. 2010. T-drive: Driving directions based on taxi trajectories. In Proceedings of the 18th SIGSPATIAL International Conference on Advances in Geographic Information Systems. ACM, 99--108.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Cloud Deployment Tradeoffs for the Analysis of Spatially Distributed Internet of Things Systems

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM Transactions on Internet Technology
        ACM Transactions on Internet Technology  Volume 20, Issue 2
        Special Section on Emotions in Conflictual Social Interactions and Regular Papers
        May 2020
        256 pages
        ISSN:1533-5399
        EISSN:1557-6051
        DOI:10.1145/3386441
        • Editor:
        • Ling Liu
        Issue’s Table of Contents

        Copyright © 2020 ACM

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 3 May 2020
        • Accepted: 1 January 2020
        • Revised: 1 November 2019
        • Received: 1 November 2018
        Published in toit Volume 20, Issue 2

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article
        • Research
        • Refereed

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      HTML Format

      View this article in HTML Format .

      View HTML Format
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!