The concept of cloud computing has emerged from the distributed software architecture with the aim of providing services over the Internet. It has revolutionized the access and use of computational resources with remarkable flexibility and scalability. However, the dynamic nature of cloud environments, intensified by the growing demands of Artificial Intelligence-driven workloads that require a vast number of resources and capabilities, introduces serious challenges in resource allocation, service quality assurance, and performance optimization. This work addresses the challenges of resource allocation due to diverse resource types (e.g. memory, cores, bandwidth, input/output) by focusing on the simulation and analysis of finite-capacity multi-server job queueing systems within cloud computing environments, using the OMNeT++ framework. Specifically, we investigate the impact of scheduling policies on the performance metrics of a multi-server job system to contribute to a deeper understanding and provide solutions to optimize cloud resource allocation due to diverse resource types required by jobs from different types of sources. The first part of this thesis involved developing a detailed simulation library for implementing multi-server job queueing systems. This work focused on the practical aspects of simulating cloud environments with finite resources, specifically developing an open-source simulator to analyze queueing models on the top of OMNeT++. By configuring various queueing disciplines such as First-In, First-Out and Priority-based scheduling algorithms, we were able to dynamically model resource allocation, simulate job scheduling, and analyze performance metrics, providing a robust tool for examining real-world scenarios in cloud computing. The importance of the simulator is justified by the lack of general analytical results that can predict the performance metrics efficiently. In the second part, we extended our work by conducting a detailed simulation study of finite-capacity multi-server job systems. This study focused on understanding the impact of different queueing policies on performance metrics in the cloud environment. Our findings revealed that assigning priority to jobs with longer service times and higher resource demands can positively impact both smaller jobs with shorter service times and big jobs, and thus enhance overall system performance. As a follow-up to this thesis, we further investigate the performance implications of scheduling policies, particularly preemptive and non-preemptive approaches. The study demonstrated that preemptive policies, including a greedy approach in which resources are freed by first preempting smaller jobs and gradually progressing to big ones until the required resource threshold is met, improved performance metrics such as the probability of dropping, waiting time and resource utilization. However, these policies also introduce computational waste as the active jobs are disrupted during their service in this model. This trade-off emphasizes the heterogeneity of optimizing cloud computing environments and the need for careful consideration of both performance and resource efficiency. In general, our work contributes to a better understanding of the relationship between queueing disciplines, resource allocation, and system performance in cloud computing environments. These research findings are of great help not only to cloud service providers, but also to cloud consumers for the optimal design of cloud-based systems, which is achieved by simulation tools developed during the study and the analytical insight from the experiments conducted as part of the work.

Il concetto di cloud computing nasce dall’architettura software distribuita con l’obiettivo di fornire servizi tramite Internet. Ha rivoluzionato l’accesso e l’utilizzo delle risorse computazionali, offrendo notevole flessibilità e scalabilità. Tuttavia, la natura dinamica degli ambienti cloud, accentuata dalle crescenti esigenze dei carichi di lavoro basati sull’Intelligenza Artificiale, che richiedono un vasto numero di risorse e funzionalità, comporta sfide significative nella gestione delle risorse, nella garanzia della qualità del servizio e nell’ottimizzazione delle prestazioni. Questo lavoro affronta le problematiche legate all’allocazione delle risorse dovute alla diversità delle tipologie (es. memoria, CPU, banda, I/O), concentrandosi sulla simulazione e analisi di sistemi di accodamento multi-server a capacità finita all'interno degli ambienti cloud, utilizzando il framework OMNeT++. La prima parte della tesi ha riguardato lo sviluppo di una libreria di simulazione dettagliata per l’implementazione di sistemi di accodamento multi-server. Il lavoro si è concentrato sugli aspetti pratici della simulazione di ambienti cloud con risorse finite, in particolare attraverso la realizzazione di un simulatore open-source per analizzare modelli di accodamento su OMNeT++. Configurando diverse discipline di accodamento, come le politiche First-In First-Out (FIFO) e quelle basate sulla priorità, è stato possibile modellare dinamicamente l’allocazione delle risorse, simulare la pianificazione dei job e analizzare le metriche prestazionali, fornendo uno strumento solido per l’esame di scenari realistici nel cloud computing. L’importanza del simulatore è giustificata dalla mancanza di risultati analitici generali che permettano di prevedere efficacemente le metriche prestazionali. Nella seconda parte, il lavoro è stato esteso con uno studio di simulazione approfondito dei sistemi di accodamento multi-server a capacità finita. Questo studio ha esplorato l’impatto delle diverse politiche di accodamento sulle metriche prestazionali in ambiente cloud. I risultati hanno evidenziato che assegnare priorità ai job con tempi di servizio più lunghi e maggiori richieste di risorse può migliorare le prestazioni complessive del sistema, beneficiando sia i job piccoli che quelli grandi. Come prosecuzione di questa tesi, è stato analizzato l’effetto delle politiche di scheduling, in particolare quelle preemptive e non preemptive. Lo studio ha dimostrato che le politiche preemptive, incluso un approccio greedy in cui le risorse vengono liberate preemptando prima i job più piccoli e proseguendo progressivamente verso quelli più grandi fino al raggiungimento della soglia di risorse necessarie, migliorano le metriche come la probabilità di perdita, il tempo di attesa e l’utilizzo delle risorse. Tuttavia, queste politiche introducono anche sprechi computazionali, poiché i job attivi vengono interrotti durante il servizio. Questo compromesso mette in evidenza la complessità e l’eterogeneità nell’ottimizzazione degli ambienti cloud e la necessità di considerare attentamente sia le prestazioni sia l’efficienza delle risorse. In generale, questo lavoro contribuisce a una migliore comprensione della relazione tra discipline di accodamento, allocazione delle risorse e prestazioni del sistema nei contesti di cloud computing. I risultati della ricerca sono di grande utilità non solo per i fornitori di servizi cloud, ma anche per i consumatori, per una progettazione ottimale dei sistemi cloud-based, grazie agli strumenti di simulazione sviluppati e alle conoscenze analitiche ottenute dagli esperimenti condotti.

Ottimizzazione delle Prestazioni del Cloud Computing: Simulazione di Sistemi di Accodamento Multi-Server a Capacità Finita Optimizing Cloud Computing Performance: Simulation of Finite-Capacity Multi-Server Queueing Systems

WAQAS, MUHAMMAD
2025

Abstract

The concept of cloud computing has emerged from the distributed software architecture with the aim of providing services over the Internet. It has revolutionized the access and use of computational resources with remarkable flexibility and scalability. However, the dynamic nature of cloud environments, intensified by the growing demands of Artificial Intelligence-driven workloads that require a vast number of resources and capabilities, introduces serious challenges in resource allocation, service quality assurance, and performance optimization. This work addresses the challenges of resource allocation due to diverse resource types (e.g. memory, cores, bandwidth, input/output) by focusing on the simulation and analysis of finite-capacity multi-server job queueing systems within cloud computing environments, using the OMNeT++ framework. Specifically, we investigate the impact of scheduling policies on the performance metrics of a multi-server job system to contribute to a deeper understanding and provide solutions to optimize cloud resource allocation due to diverse resource types required by jobs from different types of sources. The first part of this thesis involved developing a detailed simulation library for implementing multi-server job queueing systems. This work focused on the practical aspects of simulating cloud environments with finite resources, specifically developing an open-source simulator to analyze queueing models on the top of OMNeT++. By configuring various queueing disciplines such as First-In, First-Out and Priority-based scheduling algorithms, we were able to dynamically model resource allocation, simulate job scheduling, and analyze performance metrics, providing a robust tool for examining real-world scenarios in cloud computing. The importance of the simulator is justified by the lack of general analytical results that can predict the performance metrics efficiently. In the second part, we extended our work by conducting a detailed simulation study of finite-capacity multi-server job systems. This study focused on understanding the impact of different queueing policies on performance metrics in the cloud environment. Our findings revealed that assigning priority to jobs with longer service times and higher resource demands can positively impact both smaller jobs with shorter service times and big jobs, and thus enhance overall system performance. As a follow-up to this thesis, we further investigate the performance implications of scheduling policies, particularly preemptive and non-preemptive approaches. The study demonstrated that preemptive policies, including a greedy approach in which resources are freed by first preempting smaller jobs and gradually progressing to big ones until the required resource threshold is met, improved performance metrics such as the probability of dropping, waiting time and resource utilization. However, these policies also introduce computational waste as the active jobs are disrupted during their service in this model. This trade-off emphasizes the heterogeneity of optimizing cloud computing environments and the need for careful consideration of both performance and resource efficiency. In general, our work contributes to a better understanding of the relationship between queueing disciplines, resource allocation, and system performance in cloud computing environments. These research findings are of great help not only to cloud service providers, but also to cloud consumers for the optimal design of cloud-based systems, which is achieved by simulation tools developed during the study and the analytical insight from the experiments conducted as part of the work.
4-set-2025
Inglese
Il concetto di cloud computing nasce dall’architettura software distribuita con l’obiettivo di fornire servizi tramite Internet. Ha rivoluzionato l’accesso e l’utilizzo delle risorse computazionali, offrendo notevole flessibilità e scalabilità. Tuttavia, la natura dinamica degli ambienti cloud, accentuata dalle crescenti esigenze dei carichi di lavoro basati sull’Intelligenza Artificiale, che richiedono un vasto numero di risorse e funzionalità, comporta sfide significative nella gestione delle risorse, nella garanzia della qualità del servizio e nell’ottimizzazione delle prestazioni. Questo lavoro affronta le problematiche legate all’allocazione delle risorse dovute alla diversità delle tipologie (es. memoria, CPU, banda, I/O), concentrandosi sulla simulazione e analisi di sistemi di accodamento multi-server a capacità finita all'interno degli ambienti cloud, utilizzando il framework OMNeT++. La prima parte della tesi ha riguardato lo sviluppo di una libreria di simulazione dettagliata per l’implementazione di sistemi di accodamento multi-server. Il lavoro si è concentrato sugli aspetti pratici della simulazione di ambienti cloud con risorse finite, in particolare attraverso la realizzazione di un simulatore open-source per analizzare modelli di accodamento su OMNeT++. Configurando diverse discipline di accodamento, come le politiche First-In First-Out (FIFO) e quelle basate sulla priorità, è stato possibile modellare dinamicamente l’allocazione delle risorse, simulare la pianificazione dei job e analizzare le metriche prestazionali, fornendo uno strumento solido per l’esame di scenari realistici nel cloud computing. L’importanza del simulatore è giustificata dalla mancanza di risultati analitici generali che permettano di prevedere efficacemente le metriche prestazionali. Nella seconda parte, il lavoro è stato esteso con uno studio di simulazione approfondito dei sistemi di accodamento multi-server a capacità finita. Questo studio ha esplorato l’impatto delle diverse politiche di accodamento sulle metriche prestazionali in ambiente cloud. I risultati hanno evidenziato che assegnare priorità ai job con tempi di servizio più lunghi e maggiori richieste di risorse può migliorare le prestazioni complessive del sistema, beneficiando sia i job piccoli che quelli grandi. Come prosecuzione di questa tesi, è stato analizzato l’effetto delle politiche di scheduling, in particolare quelle preemptive e non preemptive. Lo studio ha dimostrato che le politiche preemptive, incluso un approccio greedy in cui le risorse vengono liberate preemptando prima i job più piccoli e proseguendo progressivamente verso quelli più grandi fino al raggiungimento della soglia di risorse necessarie, migliorano le metriche come la probabilità di perdita, il tempo di attesa e l’utilizzo delle risorse. Tuttavia, queste politiche introducono anche sprechi computazionali, poiché i job attivi vengono interrotti durante il servizio. Questo compromesso mette in evidenza la complessità e l’eterogeneità nell’ottimizzazione degli ambienti cloud e la necessità di considerare attentamente sia le prestazioni sia l’efficienza delle risorse. In generale, questo lavoro contribuisce a una migliore comprensione della relazione tra discipline di accodamento, allocazione delle risorse e prestazioni del sistema nei contesti di cloud computing. I risultati della ricerca sono di grande utilità non solo per i fornitori di servizi cloud, ma anche per i consumatori, per una progettazione ottimale dei sistemi cloud-based, grazie agli strumenti di simulazione sviluppati e alle conoscenze analitiche ottenute dagli esperimenti condotti.
Simulation; Performance; Finite capacity; MJQM; Scheduling
MARIN, Andrea
Università Ca' Foscari Venezia
File in questo prodotto:
File Dimensione Formato  
956673_MUHAMMAD_WAQAS_Thesis.pdf

embargo fino al 04/09/2026

Licenza: Tutti i diritti riservati
Dimensione 4.46 MB
Formato Adobe PDF
4.46 MB Adobe PDF

I documenti in UNITESI 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/20.500.14242/344677
Il codice NBN di questa tesi è URN:NBN:IT:UNIVE-344677