A Place-as-you-go In-network Framework by Modular Decomposition for Flexible Embedding to Software/Hardware Co-design
dc.contributor.advisor1 | Martinello, Magnos | |
dc.contributor.advisor1ID | https://orcid.org/0000-0002-8111-1719 | |
dc.contributor.advisor1Lattes | http://lattes.cnpq.br/7471111924336519 | |
dc.contributor.author | Mafioletti, Diego Rossi | |
dc.contributor.authorID | https://orcid.org/0000-0002-1513-9414 | |
dc.contributor.authorLattes | http://lattes.cnpq.br/2470233635439757 | |
dc.contributor.referee1 | Mota, Vinicius Fernandes Soares | |
dc.contributor.referee1ID | https://orcid.org/0000-0002-8341-8183 | |
dc.contributor.referee1Lattes | http://lattes.cnpq.br/9305955394665920 | |
dc.contributor.referee2 | Both, Cristiano Bonato | |
dc.contributor.referee2ID | https://orcid.org/0000-0002-9776-4888 | |
dc.contributor.referee2Lattes | http://lattes.cnpq.br/2658002010026792 | |
dc.contributor.referee3 | Verdi, Fabio Luciano | |
dc.contributor.referee3ID | https://orcid.org/0000-0002-5455-8910 | |
dc.contributor.referee3Lattes | http://lattes.cnpq.br/9143186843657940 | |
dc.contributor.referee4 | Giaccone, Paolo | |
dc.date.accessioned | 2024-05-30T01:41:09Z | |
dc.date.available | 2024-05-30T01:41:09Z | |
dc.date.issued | 2022-10-21 | |
dc.description.abstract | Cloud computing has become very popular as a computation platform, being part of people’s daily life. In order to deliver the cloud-required super-computing power, the network must play a crucial role by connecting hundreds of thousands of machines within data centres. However, with the rise of a new massive set of cloud-native and intensive applications (e.g. 5G, cloud robotics, deep learning, etc) combined with network function virtualisation (NFV), a significant strain has been placed on the processing capacity of server CPUs, demanding even higher performance and turning the network into a bottleneck. Typically, the network interface card (NIC) has been used to connect servers to the network. Although, smart network interface cards (SmartNICs) are becoming an increasingly popular method of offloading intensive packet processing tasks from servers, thus freeing CPU cycles to drive application performance. The critical challenge towards using a SmartNIC is how to make efficient use of these in-network heterogeneous computing resources, as there is a significant gap between application software and the computing capabilities of programmable devices. First, this device lacks generic programming models or abstractions, being usually programmed using low-level primitives or proprietary APIs. Second, the network developer needs to deal with the internal complexity of hardware resources, as well as manage the balance on offloading workloads, trying to find out the tradeoff between additional overheads and offloading benefits. It is needed to figure out how to co-design application logic between programmable network hardware and end-host servers within the edge computing paradigm. This thesis presents a novel framework for prototyping and deploying in-network applications. The framework is structured into a set of components that rely on i) application functional decomposition; ii) identification of logic blocks; iii) aggregation of overlapped functions merged and mapped on network functionalities in P4 language; iv) intercepting, interacting and forwarding with data structures for balancing the offloading of network flows. In order to demonstrate the principle of co-designing on diverse applications, Virtual Network Functions (VNFs) are created, and some of their functionally decomposed elements are deployed as small embedded Network Functions (eNFs) on in-network processors in sorted use cases, reviewing the framework components raised previously: decomposing network functions (i, ii, iii) and unifying components to fit into a set of VNFs/eNFs, examining latency, throughput and vCPU usage against their software implementation counterpart; intercepting and interacting with cloud robotics (iv), raising security concerns when using programmable data planes; evolving to security network functions running at in-network computing (i, ii, iii, iv), checking the overhead added by them; and modifying a PON upstream scheduler mechanism (iv), providing low latency requirements for applications. | |
dc.description.resumo | A computação em nuvem tornou-se muito popular como plataforma computacional, fazendo parte do cotidiano das pessoas. Para fornecer o poder de supercomputação exigido pela nuvem, a rede deve desempenhar um papel crucial ao conectar centenas de milhares de máquinas nos data centers. No entanto, com o surgimento de um novo conjunto maciço de aplicativos intensivos e nativos da nuvem (por exemplo, 5G, robótica em nuvem, aprendizado profundo, etc.) combinado com a virtualização de funções de rede (NFV), uma pressão significativa foi colocada sobre a capacidade de processamento das CPUs dos servidores, exigindo ainda mais alta performance e transformando a rede em um gargalo. Normalmente, a interface de rede (NIC) é usada para conectar servidores à rede. No entanto, as interface de rede inteligentes (SmartNICs) estão se tornando um método cada vez mais popular de descarregar tarefas intensivas de processamento de pacotes dos servidores, liberando ciclos da CPU e impulsionando o desempenho de aplicativos. O desafio chave para o uso de uma SmartNIC é como fazer uso eficiente desses recursos de computação heterogêneos na rede, pois há uma lacuna significativa entre o aplicativo e os recursos de computação dos dispositivos programáveis. Em primeiro lugar, este dispositivo carece de modelos genéricos de programação ou abstrações, sendo geralmente programado usando primitivas de baixo nível ou APIs proprietárias. Em segundo lugar, o desenvolvedor de rede precisa lidar com a complexidade interna dos recursos de hardware, bem como gerenciar o equilíbrio nas cargas de trabalho de descarregamento, tentando descobrir o balanço entre sobrecargas adicionais e benefícios do descarregamento. É necessário descobrir como co-projetar a lógica do aplicativo entre o hardware de rede programável e os servidores dentro do paradigma de computação de borda. Esta tese apresenta um novo arcabouço para prototipagem e implantação de aplicativos em rede. Ele é estruturado em um conjunto de componentes que dependem de i) decomposição funcional da aplicação; ii) identificação dos blocos lógicos; iii) agregação de funções sobrepostas mescladas e mapeadas em funcionalidades de rede em linguagem P4; iv) interceptar, interagir e encaminhar com estruturas de dados para balancear o descarregamento de fluxos de rede. A fim de demonstrar o princípio de co-design em várias aplicações, funções de rede virtual (VNFs) são criadas, e alguns de seus elementos funcionalmente decompostos são implantados como pequenas funções de rede incorporadas (eNFs) em processadores de rede em diversos casos de uso, revisando os componentes do arcabouço levantados anteriormente: decompondo funções de rede (i, ii, iii) e unificando componentes para se encaixarem em um conjunto de VNFs/eNFs, examinando latência, taxa de transferência e uso de vCPU em relação à sua contraparte implementada em software; interceptando e interagindo com robótica em nuvem (iv), abordando preocupações de segurança ao usar planos de dados programáveis; evoluindo para funções de rede seguras executadas em computação em rede (i, ii, iii, iv), verificando o overhead adicionado por elas; e modificando um mecanismo de escalonador upstream em PON (iv), fornecendo requisitos de baixa latência a aplicativos. | |
dc.format | Text | |
dc.identifier.uri | http://repositorio.ufes.br/handle/10/16570 | |
dc.language | por | |
dc.publisher | Universidade Federal do Espírito Santo | |
dc.publisher.country | BR | |
dc.publisher.course | Doutorado em Ciência da Computação | |
dc.publisher.department | Centro Tecnológico | |
dc.publisher.initials | UFES | |
dc.publisher.program | Programa de Pós-Graduação em Informática | |
dc.rights | open access | |
dc.subject | Computação em Rede | |
dc.subject | Co-design de Hardware/Software | |
dc.subject | Co-design de Hardware e Software | |
dc.subject | Virtualização de Funções de Rede | |
dc.subject | Virtualização de Funções de Rede | |
dc.subject | Computação de Borda | |
dc.subject | Computação de Borda | |
dc.subject | Paradigma 5G | |
dc.subject | Paradigma 5G | |
dc.subject.br-rjbn | subject.br-rjbn | |
dc.subject.cnpq | Ciência da Computação | |
dc.title | A Place-as-you-go In-network Framework by Modular Decomposition for Flexible Embedding to Software/Hardware Co-design | |
dc.title.alternative | title.alternative | |
dc.type | doctoralThesis |
Arquivos
Pacote Original
1 - 1 de 1
Carregando...
- Nome:
- Tese_de_Doutorado___Diego_Rossi_Mafioletti.pdf
- Tamanho:
- 6.82 MB
- Formato:
- Adobe Portable Document Format
- Descrição: