P4 switch code data flow analysis : towards stronger verification of forwarding plane software
dc.contributor.advisor | Cordeiro, Weverton Luis da Costa | pt_BR |
dc.contributor.author | Birnfeld, Karine | pt_BR |
dc.date.accessioned | 2020-08-29T03:47:40Z | pt_BR |
dc.date.issued | 2020 | pt_BR |
dc.identifier.uri | http://hdl.handle.net/10183/213157 | pt_BR |
dc.description.abstract | The advent of Domain Specific Languages (DSL) like POF and P4 has enabled for the first time network operators to quickly redefine how forwarding plane devices (e.g., switches) parse and process packets in a Software-Defined Network (SDN). In this context, proper verification of home-brewed forwarding plane software becomes paramount to avoid network and service disruption due to buggy implementations. Various techniques like symbolic execution, annotations, and assertions have been recently used to ensure bug-free forwarding plane code. In spite of the potentialities, they are limited in the classes of errors they can capture. More importantly, existing proposals for verifying forwarding plane software often require a programmer to write additional verification code (e.g., annotations), an error-prone approach in itself. In this dissertation, we present the design and implementation of P4-DATA-FLOW, a practical tool which uses data flow analysis for verification of switch programs. We focus on the P4 language, and present experiments showing that data flow analysis may reveal defects from classes not yet covered by existing work, without demanding further programmer effort | en |
dc.description.abstract | O advento de linguagens específicas de domínio como POF e P4 permitiram pela primeira vez que operadores de rede pudessem prontamente redefinir como os dispositivos de encaminhamento de dados (por exemplo, switches) interpretam e processam pacotes em uma Rede Definida por Software (SDN). Nesse contexto, a verificação de software para o plano de dados desenvolvido “em casa” se torna fundamental para evitar interrupções na rede e no serviço devido a problemas de implementação. Várias técnicas, como execução simbólica, anotações e asserções, foram usadas recentemente para garantir códigos de planos de dados programáveis livres de erros. Apesar das potencialidades, elas são limitadas nas classes de erros que podem capturar. Mais importante, as propostas existentes para verificação do programa de switch geralmente exigem que o programador escreva um código de verificação personalizado (por exemplo, anotações), uma abordagem propensa a erros. Nesta dissertação, apresentamos o design e a implementação do P4-DATA-FLOW, uma ferramenta prática que utiliza a análise de fluxo de dados para verificação de programas de switch. Nós nos concentramos na linguagem P4 e apresentamos experimentos mostrando que a análise do fluxo de dados pode revelar defeitos de classes ainda não cobertas pelos trabalhos existente, sem exigir mais esforço do programador. | pt_BR |
dc.format.mimetype | application/pdf | pt_BR |
dc.language.iso | eng | pt_BR |
dc.rights | Open Access | en |
dc.subject | Software | pt_BR |
dc.subject | Programmable Network | en |
dc.subject | Programmable Dataplane | en |
dc.subject | Software Testing. | en |
dc.subject | Data Flow Testing | en |
dc.title | P4 switch code data flow analysis : towards stronger verification of forwarding plane software | pt_BR |
dc.title.alternative | Análise do fluxo de dados de código switch P4 | pt |
dc.type | Dissertação | pt_BR |
dc.contributor.advisor-co | França, Breno Bernard Nicolau de | pt_BR |
dc.identifier.nrb | 001117500 | pt_BR |
dc.degree.grantor | Universidade Federal do Rio Grande do Sul | pt_BR |
dc.degree.department | Instituto de Informática | pt_BR |
dc.degree.program | Programa de Pós-Graduação em Computação | pt_BR |
dc.degree.local | Porto Alegre, BR-RS | pt_BR |
dc.degree.date | 2020 | pt_BR |
dc.degree.level | mestrado | pt_BR |
Files in this item
This item is licensed under a Creative Commons License
-
Exact and Earth Sciences (5143)Computation (1766)