Flexible resource allocation for FaaS applications in the fog

Publié le
Equipe
Date de début de thèse (si connue)
2022
Lieu
Rennes
Unité de recherche
IRISA - UMR 6074
Description du sujet de la thèse

Fog computing is an extension of the traditional cloud computing model in which compute, storage, and network capabilities are distributed closer to users along a cloud-to-thing continuum [1]. The main motivation for fog computing is supporting latency-sensitive and bandwidth-intensive applications, such as Internet of Things (IoT) applications (e.g., environmental monitoring, smart cities). A promising programming model for developing fog applications is the Function-as-a-Service (FaaS) model [2]. In the FaaS model, the developers provide the function code, and the FaaS platform automatically manages resource allocation, function execution, and scaling. By allocating fine-grained resources only during function execution, FaaS promises improved infrastructure utilisation, which is essential for resource-constrained fog environments. Although recent studies have shown the promise of employing FaaS in fog/edge environments, much research is necessary before practical solutions start to emerge [3,4].

Managing fog resources to support FaaS applications poses significant challenges. First, fog resources are geo-distributed, heterogeneous (e.g., sensors, mobile devices, micro data centres), and subject to unpredictable changes (e.g., fog nodes joining, leaving, failing), which makes it difficult to make effective resource allocation decisions. Second, fog resources are consumed and provided by multiple, independent economic actors [5]. These actors include service providers that create and operate applications, and various types of infrastructure providers (e.g., individuals, companies, traditional cloud providers) that own the resources used by these applications. Dynamically coordinating the interactions between these actors while satisfying efficiency and fairness objectives is challenging. Third, executing functions on fog resources introduces numerous FaaS-specific problems, such as reducing function start up latency (i.e., the cold start problem [6]), exploiting code and data locality [7], handling function failures [8], and supporting efficient function chaining [6].

This thesis will explore flexible resource management for FaaS applications in fog environments. Specifically, the goal is to propose mechanisms for dynamically coordinating fog actors in allocating resources and for continuously managing the execution of FaaS applications on these resources. A well-known coordination approach is applying economic and pricing mechanisms (e.g., auctions), which specify the rules and incentives that govern interactions among self-interested agents. The PhD student will first select an appropriate economic mechanism for fog environments, drawing on the extensive literature on applying such mechanisms in cloud resource management [9, 10, 11], and taking into account the novel challenges introduced by the fog (e.g., heterogeneity, dynamism) and the FaaS model (e.g., fine-grained, on-demand resource allocation for short time intervals). The PhD student will then propose an automated management solution that implements this economic mechanism and manages function execution to satisfy user requirements, notably, performance and energy consumption requirements.

The developed techniques and tools will be applied and evaluated within a use case that concerns the environmental monitoring of the Beaulieu campus. This use case is developed in collaboration with researchers from OSUR (Observatoire des Sciences de l'Univers de Rennes) and relies on a fog infrastructure composed of various sensors and actuators, edge nodes with limited capacity (e.g., small Rasberry Pi clusters) as well as traditional cloud nodes. This infrastructure will be used to support diverse FaaS applications (e.g., water quality monitoring, biodiversity monitoring) that collect and analyse sensor data, make predictions, and take appropriate actions (e.g., adapting monitoring rates, sending notifications). The tools will build on the Kubernetes resource orchestration system and an existing open-source FaaS platform, such as OpenFaaS.

Bibliographie

[1] R. Mahmud, R. Kotagiri, and R. Buyya. “Fog Computing: A Taxonomy, Survey and Future Directions”. In: Internet of Everything: Algorithms, Methodologies, Technologies and Perspectives. Ed. by B. Di Martino, K.-C. Li, L. T. Yang, and A. Esposito. Springer Singapore, Singapore, 2018, pp. 103–130. isbn: 978-981-10-5861-5. doi: 10.1007/978- 981-10-5861-5_5

[2] I. Baldini, P. Castro, K. Chang, P. Cheng, S. Fink, V. Ishakian, N. Mitchell, V. Muthusamy, R. Rabbah, A. Slominski, and P. Suter. “Serverless Computing: Current Trends and Open Problems”. en. In: Research Advances in Cloud Computing. Ed. by S. Chaudhary, G. Somani, and R. Buyya. Springer, Singapore, 2017, pp. 1–20. isbn: 978-981-10-5026-8. doi: 10.1007/978-981-10-5026-8_1

[3] M. S. Aslanpour, A. N. Toosi, C. Cicconetti, B. Javadi, P. Sbarski, D. Taibi, M. Assuncao, S. S. Gill, R. Gaire, and S. Dustdar. "Serverless Edge Computing: Vision and Challenges", in 2021 Australasian Computer Science Week Multiconference (ACSW '21). Association for Computing Machinery, New York, NY, USA, Article 10, 1–10,  doi:/10.1145/3437378.3444367

[4] R. Xie, Q. Tang, S. Qiao, H. Zhu, F. R. Yu and T. Huang, "When Serverless Computing Meets Edge Computing: Architecture, Challenges, and Open Issues," in IEEE Wireless Communications, vol. 28, no. 5, pp. 126-133, October 2021, doi: 10.1109/MWC.001.2000466

[5] D. Kim, H. Lee, H. Song, N. Choi, and Y. Yi. “Economics of Fog Computing: Interplay among Infrastructure and Service Providers, Users, and Edge Resource Owners”. IEEE Transactions on Mobile Computing, 2019, pp. 1–1. doi: 10.1109/TMC.2019.2925797

[6] I. Kjorveziroski, S. Filiposka, and V. Trajkovik, “IoT serverless computing at the edge: A systematic mapping review,” Computers, vol. 10, no. 10, p. 130, Oct. 2021, Number: 10 Publisher: Multidisciplinary Digital Publishing Institute, doi: 10.3390/computers10100130

[7] A. Tang and J. Yang, “Lambdata: Optimizing serverless computing by making data intents explicit,” in 2020 IEEE 13th International Conference on Cloud Computing (CLOUD), 2020, pp. 294–303, doi: 10.1109/CLOUD49709.2020.00049

[8] Y. Bouizem, N. Parlavantzas, D. Dib, and C. Morin, “Active-standby for high-availability in faas,” in Proceedings of the 6th International Workshop on Serverless Computing, ser. WoSC’20. New York, NY, USA: Association for Computing Machinery, 2020, p. 31–36. doi: 10.1145/3429880.3430097

[9] N. C. Luong, P. Wang, D. Niyato, Y. Wen, and Z. Han. “Resource Management in Cloud Networking Using Economic Analysis and Pricing Models: A Survey”. IEEE Communications Surveys Tutorials 19:2, 2017, pp. 954–1001. issn: 2373-745X. doi: 10.1109/ COMST.2017.2647981

[10] S. Costache, D. Dib, N. Parlavantzas, and C. Morin. “Resource Management in Cloud Platform as a Service Systems: Analysis and Opportunities”. Journal of Systems and Software 132, 2017, pp. 98–118. issn: 0164-1212. doi: 10.1016/j.jss.2017.05.035

[11] S. Costache, S. Kortas, C. Morin, and N. Parlavantzas. “Market-Based Autonomous Resource and Application Management in Private Clouds”. Journal of Parallel and Distributed Computing 100, 2017, pp. 85–102. issn: 0743-7315. doi: 10.1016/j.jpdc.2016.10.003

Liste des encadrants et encadrantes de thèse

Nom, Prénom
Parlavantzas, Nikos
Type d'encadrement
Directeur.trice de thèse
Unité de recherche
UMR 6074
Equipe
Contact·s
Nom
Parlavantzas, Nikos
Email
Nikos.Parlavantzas@irisa.fr
Mots-clés
fog computing, cloud computing, serverless, FaaS, economic mechanisms