As a consequence of the high demand for technology, today's applications are more complex as they require to perform more tasks while the time in which they must be concluded is tighter. In other words, they become more latency stringent as well as heavily loaded and fluctuating. To overcome these issues, cloud computing has been widely employed because it essentially offers a limitless amount of resources. Nonetheless, it lacks the accomplishment of response times because requests are usually generated far from where the cloud data centers are located. For this reason, edge computing has become a solution that, by positioning numerous nodes closer to the user, satisfies the low-latency needs of these applications. However, these nodes aren't provided with large amounts of resources, therefore, efficient resource management must be put in place. Since edge computing is a novel technology, multiple approaches have been proposed in order to deal with the resource management problem. Therefore, this thesis aims to do a comparative analysis of the multiple allocation algorithms that try to solve this problem and, to provide conclusive results on their performance under different experiments. The approach used as the basis is Neptune, a serverless-based framework that seeks the minimization of network delay. On the other hand, the competitor approaches are VSVBP, MCF (both seeking the maximization of users served), and Criticality Awareness with optimal and heuristic solutions, which looks for the maximization of the criticality of the users. Considering that these approaches provide different solutions, a migration process to Neptune is done in order to make them comparable without losing their initial properties. Some additional constraints such as routing delay, container deployment, container availability, and allocation, among others were considered in this migration. Finally, a set of experiments are carried out in AWS to measure the performance of all the approaches, evaluating requests of five different applications: compression, dynamic-html, graph-bfs, graph-mst, and Thumbnailer. It was proven that Neptune outperforms the other methods in terms of response time, response time violations, core allocations, and the number of nodes used.

Come conseguenza dell'elevata domanda tecnologica, le applicazioni odierne sono più complesse, in quanto richiedono l'esecuzione di un maggior numero di compiti, mentre il tempo in cui devono essere concluse è più ristretto. Cioè, sono diventate più esigenti in termini di latenza, oltre che molto cariche e fluttuanti. Per superare questi problemi, il cloud computing è stato utilizzato perché offre una quantità illimitata di risorse. Tuttavia, non è in grado di garantire i tempi di risposta, poiché le richieste vengono generate lontano dai datacenter del cloud. Per questo motivo, l'edge computing è diventato una soluzione che, posizionando numerosi nodi più vicini all'utente, risponde alle esigenze di bassa latenza di queste applicazioni. Tuttavia, i nodi non dispongono di grandi quantità di risorse, per cui è necessario adottare una gestione efficiente delle risorse. Poiché l'edge computing è una tecnologia nuova, sono stati proposti diversi approcci per affrontare il problema della gestione delle risorse. Pertanto, questa tesi intende fare un'analisi comparativa dei diversi algoritmi di allocazione che cercano di risolvere questo problema e a fornire risultati conclusivi sulle loro prestazioni in diversi esperimenti. L'approccio utilizzato come base è Neptune, un framework basato su serverless che cerca di minimizzare il ritardo della rete. D'altra parte, gli altri approcci sono VSVBP, MCF (entrambi cercano di massimizzare gli utenti serviti) e Criticality Awareness con soluzioni ottimali ed euristiche, che cerca di massimizzare la criticità degli utenti. Considerando che questi approcci forniscono soluzioni diverse, viene effettuato un processo di migrazione a Neptune per renderli comparabili senza perdere le loro proprietà iniziali. In questa migrazione sono stati considerati alcuni vincoli aggiuntivi, come il ritardo di routing, la distribuzione dei container, la disponibilità dei container e l'allocazione. Infine, è stata condotta una serie di esperimenti in AWS per misurare le performance di tutti gli approcci, valutando le richieste di 5 diverse applicazioni: compression, dynamic-html, graph-bfs, graph-mst e Thumbnailer. È stato dimostrato che Neptune supera gli altri metodi in termini di tempi di risposta, violazioni dei tempi di risposta, allocazione dei core e numero di nodi utilizzati.

Optimizing edge computing through comparative analysis of allocation algorithms and Neptune

CEPEDA MOROS, ANGIE CATALINA;GIRALDO BENITEZ, ADRIAN ESTEBAN
2022/2023

Abstract

As a consequence of the high demand for technology, today's applications are more complex as they require to perform more tasks while the time in which they must be concluded is tighter. In other words, they become more latency stringent as well as heavily loaded and fluctuating. To overcome these issues, cloud computing has been widely employed because it essentially offers a limitless amount of resources. Nonetheless, it lacks the accomplishment of response times because requests are usually generated far from where the cloud data centers are located. For this reason, edge computing has become a solution that, by positioning numerous nodes closer to the user, satisfies the low-latency needs of these applications. However, these nodes aren't provided with large amounts of resources, therefore, efficient resource management must be put in place. Since edge computing is a novel technology, multiple approaches have been proposed in order to deal with the resource management problem. Therefore, this thesis aims to do a comparative analysis of the multiple allocation algorithms that try to solve this problem and, to provide conclusive results on their performance under different experiments. The approach used as the basis is Neptune, a serverless-based framework that seeks the minimization of network delay. On the other hand, the competitor approaches are VSVBP, MCF (both seeking the maximization of users served), and Criticality Awareness with optimal and heuristic solutions, which looks for the maximization of the criticality of the users. Considering that these approaches provide different solutions, a migration process to Neptune is done in order to make them comparable without losing their initial properties. Some additional constraints such as routing delay, container deployment, container availability, and allocation, among others were considered in this migration. Finally, a set of experiments are carried out in AWS to measure the performance of all the approaches, evaluating requests of five different applications: compression, dynamic-html, graph-bfs, graph-mst, and Thumbnailer. It was proven that Neptune outperforms the other methods in terms of response time, response time violations, core allocations, and the number of nodes used.
QUATTROCCHI, GIOVANNI
YI XIAN HU, DAVIDE
ING - Scuola di Ingegneria Industriale e dell'Informazione
4-mag-2023
2022/2023
Come conseguenza dell'elevata domanda tecnologica, le applicazioni odierne sono più complesse, in quanto richiedono l'esecuzione di un maggior numero di compiti, mentre il tempo in cui devono essere concluse è più ristretto. Cioè, sono diventate più esigenti in termini di latenza, oltre che molto cariche e fluttuanti. Per superare questi problemi, il cloud computing è stato utilizzato perché offre una quantità illimitata di risorse. Tuttavia, non è in grado di garantire i tempi di risposta, poiché le richieste vengono generate lontano dai datacenter del cloud. Per questo motivo, l'edge computing è diventato una soluzione che, posizionando numerosi nodi più vicini all'utente, risponde alle esigenze di bassa latenza di queste applicazioni. Tuttavia, i nodi non dispongono di grandi quantità di risorse, per cui è necessario adottare una gestione efficiente delle risorse. Poiché l'edge computing è una tecnologia nuova, sono stati proposti diversi approcci per affrontare il problema della gestione delle risorse. Pertanto, questa tesi intende fare un'analisi comparativa dei diversi algoritmi di allocazione che cercano di risolvere questo problema e a fornire risultati conclusivi sulle loro prestazioni in diversi esperimenti. L'approccio utilizzato come base è Neptune, un framework basato su serverless che cerca di minimizzare il ritardo della rete. D'altra parte, gli altri approcci sono VSVBP, MCF (entrambi cercano di massimizzare gli utenti serviti) e Criticality Awareness con soluzioni ottimali ed euristiche, che cerca di massimizzare la criticità degli utenti. Considerando che questi approcci forniscono soluzioni diverse, viene effettuato un processo di migrazione a Neptune per renderli comparabili senza perdere le loro proprietà iniziali. In questa migrazione sono stati considerati alcuni vincoli aggiuntivi, come il ritardo di routing, la distribuzione dei container, la disponibilità dei container e l'allocazione. Infine, è stata condotta una serie di esperimenti in AWS per misurare le performance di tutti gli approcci, valutando le richieste di 5 diverse applicazioni: compression, dynamic-html, graph-bfs, graph-mst e Thumbnailer. È stato dimostrato che Neptune supera gli altri metodi in termini di tempi di risposta, violazioni dei tempi di risposta, allocazione dei core e numero di nodi utilizzati.
File allegati
File Dimensione Formato  
Executive_Summary_Cepeda_Giraldo.pdf

accessibile in internet solo dagli utenti autorizzati

Descrizione: Executive Summary
Dimensione 900.68 kB
Formato Adobe PDF
900.68 kB Adobe PDF   Visualizza/Apri
Thesis_Cepeda_Giraldo.pdf

accessibile in internet solo dagli utenti autorizzati

Descrizione: Thesis Final Document
Dimensione 2.9 MB
Formato Adobe PDF
2.9 MB Adobe PDF   Visualizza/Apri

I documenti in POLITesi 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/10589/208677