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

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).

Authors

Institutions

Publication Details

Published
2024-09-16
DOI
https://doi.org/10.1109/acsos61780.2024.00020
Citations
4
Primary Topic
Cloud Computing and Resource Management
Type
article
Field-Weighted Citation Impact
3.12
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

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

Roberto Casadei, Nicolas Farabegoli, Mirko Viroli
4 citations
Cloud Computing and Resource Management
3.12
article

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

Roberto Casadei, Nicolas Farabegoli, Mirko Viroli
article en
4 citations

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).

Azienda-Unita' Sanitaria Locale Di Cesena (IT), University of Bologna (IT)
Openalex Percentile: Top 7%
Cloud Computing and Resource Management
3.12
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.