Abstract
We present a declarative solution to determine, in a data-aware manner, application service placements and SDN data routings over Cloud-IoT infrastructures while meeting functional (software, hardware, IoT) and non-functional (security, latency, bandwidth) application requirements. The solution employs continuous reasoning to speed up the reconfiguration of application placements and routing decisions at runtime, when needed. An open-source Prolog prototype is presented and assessed over a scenario based on lifelike data.
This work has been partly supported by the EU Horizon 2020 Research and Innovation program, under project ACCORDION (G.A. 871793), and by project Energy-aware management of software applications in Cloud-IoT ecosystems (RIC2021PON_A18), funded with ESF REACT-EU resources by the Italian Ministry of University and Research through the PON Ricerca e Innovazione 2014–20.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
Due to space limitations, only the main predicates of DAPlacer are presented. The prototype is open-sourced at https://github.com/di-unipi-socc/daplacer.
- 2.
Prolog is a declarative programming language based on first-order logic. Prolog programs consist of clauses of the form a :- b1, ..., bn. stating that a holds if b1 \(\wedge \ldots \wedge \) bn holds. Clauses with empty premise (n = 0) are called facts. Predicate definitions can also contain disjunctions (denoted by ;) and negations (denoted by \(\backslash \) +). Variables start with upper-case letters. Prolog programs can be queried, and the Prolog interpreter tries to answer each query by applying SLD resolution [20] and by returning a computed answer substitution instantiating the variables in the query. For instance, the query ?- nice(W). on the program
returns the computed answer substitution {barbara \(/\) W }, obtained by first rewriting the query by applying the first clause for honest/1 and failing, and then applying the second clause for honest/1 and then the clause defining gentle/1.
- 3.
The full application declaration is available at https://github.com/di-unipi-socc/daplacer/blob/main/app.pl.
- 4.
Code of findRoutes/7 predicate is not shown. It is available at https://github.com/di-unipi-socc/daplacer/blob/main/daplacer.pl.
- 5.
- 6.
All experiments were run on a machine featuring macOS Monterey 12.3, and equipped with 16 GB of RAM and a 2,5 GHz Intel Core i7 quad-core processor. Experiments code is accessible at: https://github.com/di-unipi-socc/daplacer/tree/main/experiment.
- 7.
Experimental results are aggregated over 10 repetitions of the described 600 epoch simulations.
- 8.
For each selected node, its hardware availability is changed by considering its initially available RAM and HDD resources and picking a value in the range [1, 1.1 \(\times \) RAM] and [1, 1.2 \(\times \) HDD], respectively. Analogously, the bandwidth of selected links is picked anew in the range [1, 1.1 \(\times \) BW], where BW is the initial bandwidth featured by the link. Similarly, the latency of selected links is changed within [LAT/2, 1.5 \(\times \) LAT], where LAT is the initial link latency.
References
Aleti, A., Bjornander, S., Grunske, L., Meedeniya, I.: ArcheOpterix: an extendable tool for architecture optimization of AADL models. In: ICSE MOMPES (2009)
Barabási, A.L., Pósfai, M.: Network Science. Cambridge University Press, Cambridge (2016)
Bellavista, P., Berrocal, J., Corradi, A., Das, S.K., Foschini, L., Zanni, A.: A survey on fog computing for the internet of things. Pervasive Mob. Comput. 52, 71–99 (2019)
Brogi, A., Forti, S.: QoS-aware deployment of IoT applications through the fog. IEEE Internet Things J. 4(5), 1185–1192 (2017)
Brogi, A., Forti, S., Guerrero, C., Lera, I.: How to place your apps in the fog - state of the art and open challenges. Softw. Pract. Exp. 50(5), 719–740 (2020)
Casadei, R., Viroli, M.: Coordinating computation at the edge: a decentralized, self-organizing, spatial approach. In: FMEC 2019 (2019)
Forti, S., Bisicchia, G., Brogi, A.: Declarative continuous reasoning in the cloud-IoT continuum. J. Logic Comput. 32(2), 206–232 (2022)
Forti, S., Brogi, A.: Declarative osmotic application placement. In: Advanced Information Systems Engineering Workshops, vol. 423 (2021)
Forti, S., Ferrari, G.L., Brogi, A.: Secure cloud-edge deployments, with trust. Future Gener. Comput. Syst. 102, 775–788 (2020)
Forti, S., Gaglianese, M., Brogi, A.: Lightweight self-organising distributed monitoring of Fog infrastructures. Future Gener. Comput. Syst. 114, 605–618 (2021)
Forti, S., Lera, I., Guerrero, C., Brogi, A.: Osmotic management of distributed complex systems: a declarative decentralised approach. J. Softw. Evol. Process (2021)
Forti, S., Paganelli, F., Brogi, A.: Probabilistic QoS-aware placement of VNF chains at the edge. Theory Pract. Logic Program. 22(1), 1–36 (2021)
Guerrero, C., Lera, I., Juiz, C.: A lightweight decentralized service placement policy for performance optimization in fog computing. J. Ambient. Intell. Humaniz. Comput. 10(6), 2435–2452 (2018). https://doi.org/10.1007/s12652-018-0914-0
Gupta, H., Vahid Dastjerdi, A., Ghosh, S.K., Buyya, R.: iFogSim: a toolkit for modeling and simulation of resource management techniques in the internet of things, edge and fog computing environments. Soft. Pract. Exp. 47(9), 1275–1296 (2017)
Kadioglu, S., Colena, M., Sebbah, S.: Heterogeneous resource allocation in cloud management. In: NCA 2016 (2016)
Khan, N., et al.: Big data: Survey, technologies, opportunities, and challenges. Sci. World J. (2014)
Koziolek, A., Koziolek, H., Reussner, R.: PerOpteryx: automated application of tactics in multi-objective software architecture optimization (2011)
Lera, I., Guerrero, C., Juiz, C.: Comparing centrality indices for network usage optimization of data placement policies in fog devices. In: 2018 Third International Conference on Fog and Mobile Edge Computing (FMEC) (2018)
Lera, I., Guerrero, C., Juiz, C.: YAFS: a simulator for IoT scenarios in fog computing. IEEE Access 7, 91745–91758 (2019)
Lloyd, J.W.: Foundations of Logic Programming. Springer, Heidelberg (1987). https://doi.org/10.1007/978-3-642-83189-8
Mahmud, R., Ramamohanarao, K., Buyya, R.: Latency-aware application module management for fog computing environments. ACM Trans. Internet Technol. 19(1), 1–21 (2018)
Mahmud, R., Ramamohanarao, K., Buyya, R.: Application management in fog computing environments: a taxonomy, review and future directions. ACM Comput. Surv. 53(4), 1–43 (2020)
Margariti, S.V., Dimakopoulos, V.V., Tsoumanis, G.: Modeling and simulation tools for fog computing-a comprehensive survey from a cost perspective. Future Internet 12(5), 89 (2020)
NAAS, M.I., Lemarchand, L., Boukhobza, J., Raipin, P.: A graph partitioning-based heuristic for runtime IoT data placement strategies in a fog infrastructure. In: Proceedings of the 33rd Annual ACM Symposium on Applied Computing (2018)
Naas, M.I., Parvedy, P.R., Boukhobza, J., Lemarchand, L.: iFogStor: an IoT data placement strategy for fog infrastructure. In: 2017 IEEE 1st International Conference on Fog and Edge Computing (ICFEC) (2017)
Ning, Z., Kong, X., Xia, F., Hou, W., Wang, X.: Green and sustainable cloud of things: enabling collaborative edge computing. IEEE Commun. Mag. 57(1), 72–78 (2019)
Pianini, D., Casadei, R., Viroli, M., Natali, A.: Partitioned integration and coordination via the self-organising coordination regions pattern. Future Gener. Comput. Syst. 114, 44–68 (2021)
Pietri, I., Sakellariou, R.: Mapping virtual machines onto physical machines in cloud computing: a survey. ACM Comput. Surv. 49(3), 1–30 (2016)
Qiu, T., Chi, J., Zhou, X., Ning, Z., Atiquzzaman, M., Wu, D.O.: Edge computing in industrial internet of things: architecture, advances and challenges. IEEE Commun. Surv. Tutorials 22(4), 2462–2488 (2020)
Rak, J.: Resilience of future internet communications. In: Rak, J. (ed.) Resilient Routing in Communication Networks. CCN, pp. 45–83. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-22333-9_3
Salaht, F.A., Desprez, F., Lebre, A.: An overview of service placement problem in fog and edge computing. ACM Comput. Surv. 53(3), 1–35 (2020)
Samizadeh Nikoui, T., Rahmani, A., Tabarsaied, H.: Data Management in Fog Computing: Principles and Paradigms. Wiley, Hoboken (2019)
Sándor, H., Genge, B., Sebestyén-Pál, G.: Resilience in the internet of things: the software defined networking approach. In: 2015 IEEE International Conference on Intelligent Computer Communication and Processing (ICCP) (2015)
Sonmez, C., Ozgovde, A., Ersoy, C.: EdgeCloudSim: an environment for performance evaluation of edge computing systems. Trans. Emerg. Telecommun. Technol. 29, e3493 (2018)
Taherizadeh, S., Jones, A.C., Taylor, I., Zhao, Z., Stankovski, V.: Monitoring self-adaptive applications within edge computing frameworks: a state-of-the-art review. J. Syst. Softw. 136, 19–38 (2018)
Tortonesi, M., Govoni, M., Morelli, A., Riberto, G., Stefanelli, C., Suri, N.: Taming the IoT data deluge: an innovative information-centric service model for fog computing applications. Future Gener. Comput. Syst. 93, 888–902 (2019)
Vaquero, L.M., Cuadrado, F., Elkhatib, Y., Bernal-Bernabe, J., Srirama, S.N., Zhani, M.F.: Research challenges in nextgen service orchestration. Future Gener. Comput. Syst. 90, 20–38 (2019)
Verginadis, Y., Alshabani, I., Mentzas, G., Stojanovic, N.: Prestocloud: proactive cloud resources management at the edge for efficient real-time big data processing. In: CLOSER (2017)
Villari, M., Fazio, M., Dustdar, S., Rana, O., Ranjan, R.: Osmotic computing: a new paradigm for edge/cloud integration. IEEE Cloud Comput. 3(6), 76–83 (2016)
Wang, S., Zafer, M., Leung, K.K.: Online placement of multi-component applications in edge computing environments. IEEE Access 5, 2514–2533 (2017)
Yin, Q., Schüpbach, A., Cappos, J., Baumann, A., Roscoe, T.: Rhizoma: a runtime for self-deploying, self-managing overlays. In: Middleware 2009 (2009)
Yousefpour, A., et al.: All one needs to know about fog computing and related edge computing paradigms: a complete survey. J. Syst. Archit. 98, 289–330 (2019)
Zikria, Y.B., Ali, R., Afzal, M.K., Kim, S.W.: Next-generation internet of things (IoT): opportunities, challenges, and solutions. Sensors 21(4), 1174 (2021)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Massa, J., Forti, S., Brogi, A. (2022). Data-Aware Service Placement in the Cloud-IoT Continuum. In: Barzen, J., Leymann, F., Dustdar, S. (eds) Service-Oriented Computing. SummerSOC 2022. Communications in Computer and Information Science, vol 1603. Springer, Cham. https://doi.org/10.1007/978-3-031-18304-1_8
Download citation
DOI: https://doi.org/10.1007/978-3-031-18304-1_8
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-18303-4
Online ISBN: 978-3-031-18304-1
eBook Packages: Computer ScienceComputer Science (R0)