NESOI : a framework for building distributed intelligent applications in programmable data planes
Visualizar/abrir
Data
2022Orientador
Nível acadêmico
Graduação
Abstract
Software-defined networking and data plane programmability are relatively new concepts that enable researchers and network operators to develop network applications to run di rectly on the data plane. More recently, studies proved that the data plane can run intel ligent applications implementing techniques of artificial intelligence and machine learn ing. However, building complex intelligent applications that run distributedly in the data plane remains challenging. On one hand, network develo ...
Software-defined networking and data plane programmability are relatively new concepts that enable researchers and network operators to develop network applications to run di rectly on the data plane. More recently, studies proved that the data plane can run intel ligent applications implementing techniques of artificial intelligence and machine learn ing. However, building complex intelligent applications that run distributedly in the data plane remains challenging. On one hand, network developers must write source code for each switch in which the intelligent application will run. On the other hand, there might have dozens to hundreds of switches in the network in which the distributed intelligent network application might need to operate in the programmable data plane. To tackle this problem, we propose in this work NESOI, framework for building distributed intel ligent applications in the programmable data plane (PDP). We developed a compiler and a programming language that, based on a network specification, generates switch code on multiple target languages (P4 and NPL), implementing the distributed logic for such applications. The ultimate goal is having a framework that works like a TensorFlow for programmable forwarding planes. Our results indicate that NESOI simplifies the devel opment process of intelligent distributed applications by using templates as the basis for the code generation process, presenting a flexible approach to define neural networks and their potential to generate target programs on multiple languages and switch architectures. ...
Resumo
Rede definida por software e a programabilidade do plano de dados são conceitos relativamente novos que permitiram que pesquisadores e operadores de rede desenvolvam aplicações de rede para serem executados diretamente no plano de dados. Mais recente mente, estudos comprovaram que o plano de dados pode executar aplicações inteligentes implementando técnicas de inteligência artificial e aprendizado de máquina. No entanto, a construção de aplicações inteligentes complexas que executem de forma di ...
Rede definida por software e a programabilidade do plano de dados são conceitos relativamente novos que permitiram que pesquisadores e operadores de rede desenvolvam aplicações de rede para serem executados diretamente no plano de dados. Mais recente mente, estudos comprovaram que o plano de dados pode executar aplicações inteligentes implementando técnicas de inteligência artificial e aprendizado de máquina. No entanto, a construção de aplicações inteligentes complexas que executem de forma distribuída no plano de dados é um desafio. Por um lado, os desenvolvedores de rede devem escrever código-fonte para cada switch na qual a aplicação inteligente será executada. Por outro lado, pode haver dezenas a centenas de switches na rede em que a aplicação de rede inteli gente distribuída pode precisar operar no plano de dados programável. Para resolver este problema, propõe-se neste trabalho NESOI, um framework para construção de aplicações inteligentes distribuídas para plano de dados programáveis (PDP). Como parte do traba lho, foi desenvolvido um compilador e uma linguagem de programação que, com base em uma especificação de rede, gera código de dispositivos de rede em várias linguagens de destino (P4 e NPL), implementando a lógica distribuída para tais aplicações. Assim, tem-se um framework que funciona de certa forma como um TensorFlow para planos de dados programáveis. Nossos resultados indicam que o framework proposto simplifica o processo de desenvolvimento de aplicações inteligentes distribuídas com o uso de tem plates como base para o processo de geração de código, apresentando uma abordagem flexível para definir redes neurais e seu potencial para gerar os programas alvo em múlti plas linguagens e arquitetura de dos dispotivos de rede. ...
Instituição
Universidade Federal do Rio Grande do Sul. Instituto de Informática. Curso de Ciência da Computação: Ênfase em Ciência da Computação: Bacharelado.
Coleções
-
TCC Ciência da Computação (1024)
Este item está licenciado na Creative Commons License