Abordagem de Composição de Programas P4 em Redes Programáveis - Parizotto, Ricardo; Castanheira, Lucas; Schaeffer-Filho, Alberto (Anais do Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos (SBRC); 2019: Anais do XXXVII Simpósio Brasileiro de Redes de Computadores e Sistemas DistribuídosDO - 10.5753/sbrc.2019.7420, 2019)
Redes definidas por software (SDN) e o surgimento de planos de dados programáveis permitem maior flexibilidade para a operação de redes. Essas tecnologias são capazes de permitir que os administradores de rede reconfigurem os planos de dados e de controle. A capacidade de reconfigurar e programar a rede sob demanda oferece vários benefícios, em particular possibilitando melhorar os mecanismos de segurança de rede usando a capacidade de programação. No entanto, além de promover um grau maior de flexibilidade, a programação do plano de dados levanta preocupações em relação a erros que podem criar inconsistências na função mais básica da rede, o encaminhamento de dados, interrompendo políticas previamente definidas. Neste trabalho apresentamos um framework para instalar funções em planos de dados programáveis de maneira confiável, garantindo que a instalação de tais funções preserve as propriedades básicas de encaminhando. Para isso, empregamos técnicas de composição de programas para mesclar funções modulares em um único plano de dados agregado, garantindo que o programa resultante seja correto após a mesclagem. Para mostrar a corretude de nosso método, apresentamos um estudo de caso com um firewall e um módulo de monitoramento.