Abordagem de Composição de Programas P4 em Redes Programáveis

  • Ricardo Parizotto Universidade Federal do Rio Grande do Sul
  • Lucas Castanheira Universidade Federal do Rio Grande do Sul
  • Alberto Schaeffer-Filho Universidade Federal do Rio Grande do Sul

Resumo


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.

Palavras-chave: Redes Definidas por Software, Plano de Dados Programável, P4, Composição

Referências

Bosshart, P., Daly, D., Gibb, G., Izzard, M., McKeown, N., Rexford, J., Schlesinger, C., Talayco, D., Vahdat, A., Varghese, G., and Walker, D. (2014). P4: Programming protocol-independent packet processors. SIGCOMM Comput. Commun. Rev., 44(3):87–95.

Dimitropoulos, X. A., Dainotti, A., Vanbever, L., and Benson, T., editors (2018). Proceedings of the 14th International Conference on emerging Networking EXperiments and Technologies, CoNEXT 2018, Heraklion, Greece, December 04-07, 2018. ACM.

Feamster, N., Rexford, J., and Zegura, E. (2014). The road to sdn: An intellectual history of programmable networks. SIGCOMM Comput. Commun. Rev., 44(2):87–98.

Freire, L., Neves, M., Leal, L., Levchenko, K., Schaeffer-Filho, A., and Barcellos, M. (2018). Uncovering bugs in p4 programs with assertion-based verification. In Proceedings of the Symposium on SDN Research, page 4. ACM.

Garcia, L. F. U., Villaça, R. S., Ribeiro, M. R. N., Martins, R. F. T., Verdi, F. L., and Marcondes, C. (2018). Minicurso introdução à linguagem p4 - teoria e prática. In XXXVI Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos (SBRC), Campos do Jordão, Brasil. SBC.

Hancock, D. and van der Merwe, J. (2016). Hyper4: Using p4 to virtualize the programmable data plane. In Proceedings of the 12th International on Conference on Emerging Networking EXperiments and Technologies, CoNEXT ’16, pages 35–49, New York, NY, USA. ACM.

Hu, H., Han, W., Ahn, G.-J., and Zhao, Z. (2014). Flowguard: building robust firewalls for software-defined networks. In Proceedings of the third workshop on Hot topics in software defined networking, pages 97–102. ACM.

Jin, X., Liu, H. H., Gandhi, R., Kandula, S., Mahajan, R., Zhang, M., Rexford, J., and Wattenhofer, R. (2014). Dynamic scheduling of network updates. SIGCOMM Comput. Commun. Rev., 44(4):539–550.

Katta, N. P., Rexford, J., and Walker, D. (2013). Incremental consistent updates. In Proceedings of the second ACM SIGCOMM workshop on Hot topics in software defined networking, pages 49–54. ACM.

Kim, C., Sivaraman, A., Katta, N., Bas, A., Dixit, A., and Wobker, L. J. (2015). In-band network telemetry via programmable dataplanes. In ACM SIGCOMM.

Liu, J., Hallahan, W., Schlesinger, C., Sharif, M., Lee, J., Soulé, R., Wang, H., Cas¸caval, C., McKeown, N., and Foster, N. (2018). p4v: Practical verification for programmable data planes.

Lopes, N., Bjørner, N., McKeown, N., Rybalchenko, A., Talayco, D., and Varghese, G. (2016). Automatically verifying reachability and well-formedness in p4 networks. Technical report, Technical Report.

Marques, J. A. and Gaspary, L. P. (2018). Explorando estratégias de orquestração de telemetria em planos de dados programáveis. In Simpósio Brasileiro de Redes de Computadores (SBRC), volume 36.

Nguyen, T. D., Chiesa, M., and Canini, M. (2017). Decentralized consistent updates in sdn. In Proceedings of the Symposium on SDN Research, SOSR ’17, pages 21–33, New York, NY, USA. ACM.

Reitblatt, M., Foster, N., Rexford, J., Schlesinger, C., andWalker, D. (2012). Abstractions for network update. In Proceedings of the ACM SIGCOMM 2012 Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication, SIGCOMM ’12, pages 323–334, New York, NY, USA. ACM.

Sivaraman, V., Narayana, S., Rottenstreich, O., Muthukrishnan, S., and Rexford, J. (2017). Heavy-hitter detection entirely in the data plane. In Proceedings of the Symposium on SDN Research, SOSR ’17, pages 164–176, New York, NY, USA. ACM.

Sonchack, J., Smith, J. M., Aviv, A. J., and Keller, E. (2016). Enabling practical softwaredefined networking security applications with ofx. In NDSS, volume 16, pages 1–15.

Van Tu, N., Hyun, J., and Hong, J. W.-K. (2017). Towards onos-based sdn monitoring using in-band network telemetry. In Network Operations and Management Symposium (APNOMS), 2017 19th Asia-Pacific, pages 76–81. IEEE.

Zhang, C., Bi, J., Zhou, Y., Dogar, A. B., and Wu, J. (2017). Mpvisor: A modular programmable data plane hypervisor. In Proceedings of the Symposium on SDN Research, SOSR ’17, pages 179–180, New York, NY, USA. ACM.

Zheng, P., Benson, T., and Hu, C. (2018). Shadowp4: Building and testing modular programs. In Proceedings of the ACM SIGCOMM 2018 Conference on Posters and Demos, pages 150–152. ACM.

Zhou, Y. and Bi, J. (2017). Clickp4: Towards modular programming of p4. In Proceedings of the SIGCOMM Posters and Demos, SIGCOMM Posters and Demos ’17, pages 100–102, New York, NY, USA. ACM.
Publicado
06/05/2019
Como Citar

Selecione um Formato
PARIZOTTO, Ricardo; CASTANHEIRA, Lucas; SCHAEFFER-FILHO, Alberto. Abordagem de Composição de Programas P4 em Redes Programáveis. In: SIMPÓSIO BRASILEIRO DE REDES DE COMPUTADORES E SISTEMAS DISTRIBUÍDOS (SBRC), 37. , 2019, Gramado. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2019 . p. 1028-1041. ISSN 2177-9384. DOI: https://doi.org/10.5753/sbrc.2019.7420.