Please use this identifier to cite or link to this item: http://hdl.handle.net/10316/95282
Title: Mechanisms for Latency Reduction in Fog Environments
Other Titles: Mecanismos de Redução de Latência em Ambientes de Nevoeiro
Authors: Castro, Karima Daniela Velasquez
Orientador: Oliveira, Marília Pascoal Curado de
Monteiro, Edmundo Heitor da Silva
Keywords: Fog; Latency; Service Orchestration; Service Placement; Popularity; Nevoeiro; Latência; Orquestração de serviços; Colocação de serviços; Popularidade
Issue Date: 10-May-2021
Project: PhD grant: FCT - Foundation for Science and Technology PhD grant (SFRH/BD/119392/2016) 
Project grant: FCT - Foundation for Science and Technology within the scope of project DenseNet (PTDC/EEI-SCR/6453/2014) 
Project grant: FCT - Foundation for Science and Technology within the scope of project Intelligent Computing in the Internet of Services - iCIS (CENTRO-07-ST24-FEDER-002003) 
Place of publication or event: Coimbra, Portugal
Abstract: A new industrial revolution driven by digital data, computation, and automation has arrived. Human activities, industrial processes, and research lead to data collection, generation, and processing on an unprecedented scale, spurring new products, services, and applications. Among the applications that generate more traffic are those related to augmented/virtual reality and video streaming. These applications have strict time restrictions to perform in a manner that is expected by final users, and usually rely on the use of Cloud computing to achieve elasticity, on-demand self-service, resource pooling, and timely delivery. However, new generation delay-sensitive applications and services have requirements that are only partially met by existing Cloud computing solutions. In recent years there has been a paradigm shift to bring Cloud services towards the edge of the network. In this peripheral area, there is an abundance of heterogeneous resource-constrained devices both generating and consuming data. This represents an increment on the amount of data, that would lead to increased traffic and response time to transport to the Cloud and back. It is possible to place storage and processing devices at the rim of the network to help preprocess this data and alleviate the load sent towards the core network, while also reducing response times which benefits delay-sensitive applications particularly. This solution is known as Fog computing. Fog computing is an important paradigm to help address the requirements that are not completely covered by the Cloud; nonetheless, the use of this technology creates new challenges. The Fog needs to support the orchestration of applications and services on demand, with adaptability, while providing flexible and time constrained performance. In practice, traditional service orchestration approaches that were applied to Cloud services are not suitable for the large scale and dynamism of Fog services. This creates the need for new mechanisms for the coordination of resources, applications, and services in the Fog. This work proposes a smart orchestration framework based on a hybrid approach that combines centralized orchestration and distributed choreography to deal with resource management, as well as a service orchestrator architecture that includes a depiction of its different modules and the interactions among them. To cope with the time constraints for delay-sensitive applications, the orchestrator must optimize where applications and services are deployed. One of the modules of the service orchestrator architecture proposed in this work is in charge of the decision regarding the final placement of application services in a smart and context-aware manner with the objective of minimizing latency. Particularly, this work presents three different mechanisms for service placement in the Fog ecosystem, namely, one based in Integer Linear Programming, one based in Genetic Algorithms, and one based in graph partition using the PageRank algorithm. All three mechanisms use a combination of metrics that evaluate characteristics of both the applications as well as the network infrastructure to guide the placement process. From the network perspective, the propagation delay is considered; and from the application perspective, the popularity of the applications (measured by the amount of requests) is used. This approach, unlike any previous work, leads to the prioritization of popular applications during the placement process, thus benefiting a larger number of final users. The mechanisms are tested via simulation under different scenarios and conditions. The experiments show that it is possible to provide lower latency to popular applications while also reducing the latency of the overall system. Furthermore, for dynamic scenarios, a profiling scheme based on application popularity allowed to reduce not only the latency but also the jitter for popular applications.
Estamos perante uma nova revolução industrial impulsionada por dados digitais, computação e automação. A atividade humana, processos industriais e investigação levam à recolha, geração e processamento de dados numa escala sem precedentes, fomentando novos produtos, serviços e aplicações. Entre as aplicações que geram mais tráfego, estão as aplicações relacionadas com realidade aumentada/virtual e transmissão de vídeo. Estas aplicações têm restrições temporais estritas para serem executadas de acordo com o esperado pelo utilizador final e, geralmente, recorrem ao uso de computação em Nuvem para alcançar elasticidade, serviços a pedido do utilizador, agrupamento de recursos e entrega atempada. No entanto, a nova geração de aplicações e serviços sensíveis a atraso tem requisitos que são apenas parcialmente cumpridos pelas soluções de computação em Nuvem existentes. Recentemente, tem havido uma mudança de paradigma no sentido de trazer os serviços da Nuvem para a perímetro da rede. Nesta área periférica existe uma abundância de dispositivos heterogéneos com recursos limitados tanto na geração como no consumo de dados. Este cenário representa um aumento na quantidade de dados, que leva ao aumento do tráfego e do tempo de resposta nas comunicações de, e para, a Nuvem. No sentido de ajudar o pré-processamento destes dados e aliviar a carga enviada através da rede, é possível mudar os dispositivos de armazenamento e processamento para a extremidade da rede, reduzindo os tempos de resposta e beneficiando, particularmente, as aplicações sensíveis a atraso. Esta solução é conhecida como computação em Nevoeiro. A computação em Nevoeiro é um paradigma importante que ajuda a satisfazer os requisitos que não são totalmente cobertos pela Nuvem; no entanto, o uso desta tecnologia cria novos desafios. O Nevoeiro necessita de suportar a orquestração de aplicações e serviços disponíveis a pedido do utilizador, com adaptabilidade, e garantindo uma performance flexível e cumpridora das restrições temporais. Na prática, as abordagens tradicionais de orquestração de serviços aplicadas aos serviços em Nuvem não são adequadas para a larga escala e dinamismo dos serviços de Nevoeiro. Assim, existe a necessidade de novos mecanismos para a coordenação de recursos, aplicações e serviços de Nevoeiro. Este trabalho propõe uma framework de orquestração inteligente baseada numa abordagem híbrida que combina orquestração centralizada e coreografia distribuída para lidar com a gestão de recursos e, ainda, uma arquitetura para um orquestrador de serviços que inclui uma representação dos seus diferentes módulos e respetivas interações. Para lidar com as restrições temporais das aplicações sensíveis a atraso, o orquestrador deve otimizar onde colocar as aplicações e serviços. Um dos módulos da arquitetura do orquestrador de serviços proposto neste trabalho é encarregue da decisão da colocação final dos serviços da aplicação de modo inteligente e consciente de contexto com o objetivo de minimizar a latência. Este trabalho apresenta três mecanismos para a colocação de serviços no ecossistema de Nevoeiro, nomeadamente, um baseado em programação linear inteira, um baseado em algoritmos genéticos e um baseado em partição de grafos, utilizando o algoritmo PageRank. Todos os mecanismos usam uma combinação de métricas que avalia as características tanto das aplicações como da infraestrutura da rede e que guia o processo de colocação. Da perspetiva da rede, é considerado o tempo de propagação; da perspetiva da aplicação, é utilizada a popularidade das aplicações, medida pela quantidade de pedidos. Esta abordagem, contrariamente aos trabalhos anteriores, leva à priorização das aplicações populares durante o processo de colocação e, consequentemente, beneficia um maior número de utilizadores finais. Os mecanismos são testados via simulação com diferentes cenários e condições. Os resultados mostram que é possível obter uma latência menor para aplicações populares e, simultaneamente, reduzir a latência geral do sistema. Além disso, em cenários dinâmicos, um esquema de perfil baseado na popularidade das aplicações permitiu reduzir não só a latência, como também a variação de atraso das aplicações populares.
Description: N/A
Tese no âmbito do Programa de Doutoramento em Ciências e Tecnologias da Informação, apresentada ao Departamento de Engenharia Informática da Faculdade de Ciências e Tecnologia da Universidade de Coimbra.
URI: http://hdl.handle.net/10316/95282
Rights: openAccess
Appears in Collections:FCTUC Eng.Informática - Teses de Doutoramento
UC - Teses de Doutoramento

Files in This Item:
File Description SizeFormat
phdThesis_kvc.pdf4.19 MBAdobe PDFView/Open
Show full item record

Page view(s)

34
checked on Oct 8, 2021

Download(s)

31
checked on Oct 8, 2021

Google ScholarTM

Check


This item is licensed under a Creative Commons License Creative Commons