Macro-programming enables the definition of highly distributed applications as a single 'macro-program', providing first-class abstractions to describe and reason about global system behaviour, supporting self-organisation. However, the deployment of a macro-program in heterogeneous edge-cloud infrastructures is not trivial, due to device constraints and complex trade-offs between functional and non-functional concerns. To address the problem, in this paper, we propose a modularisation framework for splitting the macro-level system behaviour into components that can be flexibly and dynamically deployed on the available infrastructure, with two key features. Firstly, our design supports collective components, which provide self-organising services out of local interaction among neighbour devices. Secondly, we provide a 'forwarding' mechanism allowing offloading of components to neighbour devices while respecting constraints, à la multi-tier programming. As formalised and then validated by simulation, our proposal is shown to (i) keep the functional correctness of a monolithic deployment, by preserving its self-stabilising behaviour; and (ii) enable more deployments and nonfunctional benefits (e.g. lower energy footprint).

Farabegoli, N., Viroli, M., Casadei, R. (2024). Flexible Self-organisation for the Cloud-Edge Continuum: a Macro-programming Approach. Institute of Electrical and Electronics Engineers Inc. [10.1109/acsos61780.2024.00020].

Flexible Self-organisation for the Cloud-Edge Continuum: a Macro-programming Approach

Farabegoli, Nicolas;Viroli, Mirko;Casadei, Roberto
2024

Abstract

Macro-programming enables the definition of highly distributed applications as a single 'macro-program', providing first-class abstractions to describe and reason about global system behaviour, supporting self-organisation. However, the deployment of a macro-program in heterogeneous edge-cloud infrastructures is not trivial, due to device constraints and complex trade-offs between functional and non-functional concerns. To address the problem, in this paper, we propose a modularisation framework for splitting the macro-level system behaviour into components that can be flexibly and dynamically deployed on the available infrastructure, with two key features. Firstly, our design supports collective components, which provide self-organising services out of local interaction among neighbour devices. Secondly, we provide a 'forwarding' mechanism allowing offloading of components to neighbour devices while respecting constraints, à la multi-tier programming. As formalised and then validated by simulation, our proposal is shown to (i) keep the functional correctness of a monolithic deployment, by preserving its self-stabilising behaviour; and (ii) enable more deployments and nonfunctional benefits (e.g. lower energy footprint).
2024
Proceedings - 2024 IEEE International Conference on Autonomic Computing and Self-Organizing Systems, ACSOS 2024
21
30
Farabegoli, N., Viroli, M., Casadei, R. (2024). Flexible Self-organisation for the Cloud-Edge Continuum: a Macro-programming Approach. Institute of Electrical and Electronics Engineers Inc. [10.1109/acsos61780.2024.00020].
Farabegoli, Nicolas; Viroli, Mirko; Casadei, Roberto
File in questo prodotto:
Eventuali allegati, non sono esposti

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11585/1009070
 Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo

Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus ND
  • ???jsp.display-item.citation.isi??? ND
social impact