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.
- Martin Garriga and Christos Tsigkanos. 2018. Accompanying models and implementation. Retrieved from dsg.tuwien.ac.at/team/ctsigkanos/lambda-topochecker/.Google Scholar
- Amazon. 2018. AWS Lambda. Retrieved from https://aws.amazon.com/lambda/.Google Scholar
- Microsoft Azure. 2018. Azure Functions. Retrieved from https://azure.microsoft.com/en-us/services/functions/.Google Scholar
- IBM. 2018. IBM/Apache Openwhisk. Retrieved from https://openwhisk.apache.org/.Google Scholar
- 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 Scholar
- Radhakisan Baheti and Helen Gill. 2011. Cyber-physical systems. Impact Control Technol. 12 (2011), 161--166.Google Scholar
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- Vincenzo Ciancia, Diego Latella, Michele Loreti, and Mieke Massink. 2014. Specifying and verifying properties of space. In Theoretical Computer Science. Springer, 222--235.Google Scholar
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- Edmund M. Clarke, Orna Grumberg, and Doron A. Peled. 1999. Model Checking. MIT Press.Google Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Cross Ref
- Martin Fowler. 2015. Microservices. Retrieved from http://martinfowler.com/bliki/MonolithFirst.html.Google Scholar
- 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 Scholar
- 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 Scholar
Digital Library
- 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 Scholar
- 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 Scholar
Digital Library
- Edward A. Lee. 2008. Cyber Physical Systems: Design Challenges. Technical Report. EECS Department, University of California, Berkeley.Google Scholar
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
- James Lewis and Martin Fowler. 2014. Microservices: A definition for this new architectural term. Retrieved from http://martinfowler.com/articles/microservices.html.Google Scholar
- Shancang Li, Li Da Xu, and Shanshan Zhao. 2015. The internet of things: A survey. Info. Syst. Front. 17, 2 (2015), 243--259.Google Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
- Michael Roberts. 2016. Serverless architectures: What is serverless? Retrieved from http://martinfowler.com/articles/serverless.html.Google Scholar
- 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 Scholar
- 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 Scholar
- 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 Scholar
Cross Ref
- Christos Tsigkanos, Cosmin Avasalcai, and Schahram Dustdar. 2019. Architectural considerations for privacy on the edge. IEEE Internet Comput. 23, 4 (2019), 76--83.Google Scholar
Cross Ref
- Christos Tsigkanos, Timo Kehrer, and Carlo Ghezzi. 2016. Architecting dynamic cyber-physical spaces. Computing 98, 10 (2016), 1011--1040.Google Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
Index Terms
Cloud Deployment Tradeoffs for the Analysis of Spatially Distributed Internet of Things Systems
Recommendations
Power-Aware Cloud Computing Infrastructure for Latency-Sensitive Internet-of-Things Services
UKSIM '13: Proceedings of the 2013 UKSim 15th International Conference on Computer Modelling and SimulationWith the developing of Cloud Computing technology more and more latency-sensitive critical operations in Internet of Things are taken over by Cloud infrastructure. Meeting the constraints of real-time and power-aware is important for the deployment of ...
Deployment Strategies for Distributed Applications on Cloud Computing Infrastructures
CLOUDCOM '13: Proceedings of the 2013 IEEE International Conference on Cloud Computing Technology and Science - Volume 02Cloud computing enables on-demand access to a shared pool of IT resources. In the case of Infrastructure as a Service (IaaS), the cloud user typically acquires Virtual Machines (VMs) from the provider. It is up to the user to decide at what time and for ...
Automating the Deployment of Multi-Cloud Applications in Federated Cloud Environments
VALUETOOLS'16: proceedings of the 10th EAI International Conference on Performance Evaluation Methodologies and Tools on 10th EAI International Conference on Performance Evaluation Methodologies and ToolsCloud federation allows cloud providers to dynamically use resources of other federated providers in order to fulfil the requirements of customer requests.
This concept enables the federated cloud providers to use external resources for increasing their ...






Comments