Software Engineering in Programmable Networks: The ProgNet Approach

  • Moises S. de Sousa UnB
  • Newton M. Kamimura UnB
  • Alexandre Kaihara UnB
  • Lucas Bondan UnB / RNP
  • Marcos F. Caetano UnB
  • Davi A. Casseb UnB
  • João J. C. Gondim UnB
  • Marcelo A. Marotta UnB

Abstract


Programmable networks, driven by SDN and P4, offer flexibility but lack solid standards and methodologies. The absence of standardized interfaces and tests in SDN, along with low-level programming in P4, leads to challenges such as code conflicts, vulnerabilities, and low reusability. To address these limitations, ProgNet leverages GNU Radio’s modularity to organize SDN and P4 networks more intuitively. By adopting a top-down approach, it aligns software development with network objectives, preventing performance issues. A case study demonstrates component reuse and optimization of latency and throughput, validating the feasibility of modularity and standardized interfaces.
Keywords: Programmable networks, SDN, P4, ProgNet, modularity, GNU Radio, component reuse

References

Bourque, P. and Fairley, R. E., editors (2014). SWEBOK: Guide to the Software Engineering Body of Knowledge. IEEE Computer Society, Los Alamitos, CA, version 3.0 edition.

Brown, A. and Taylor, M. (2020). Lightweight self-organising distributed monitoring of fog infrastructures. Journal of Fog Computing, 7(3):123–135.

Doe, J. and Smith, J. (2022). Lightweight self-adaptive cloud-IoT monitoring across Fed4Fire+. In Proceedings of the 2022 IEEE International Conference on Cloud Computing, pages 56–63.

Doriguzzi-Corin, R., Knob, L. A. D., Mendozzi, L., Siracusa, D., and Savi, M. (2024). Introducing packet-level analysis in programmable data planes to advance network intrusion detection. Computer Networks, 239:110162.

Elkhail, A. A. and Cerny, T. (2019). On relating code smells to security vulnerabilities. In 2019 IEEE 5th International Conference on Big Data Security on Cloud (BigDataSecurity), IEEE International Conference on High Performance and Smart Computing (HPSC), and IEEE International Conference on Intelligent Data and Security (IDS), pages 7–12.

Ferreira, P. V., Diniz, P., Veiga, A., and Carneiro, M. (2012). Frequency response acquisition of a digital radio transceiver using USRP module and GNU Radio software. In 2012 Fourth International Conference on Computational Intelligence, Modelling and Simulation, pages 243–248.

Kellerer, W., Kalmbach, P., Blenk, A., Basta, A., Reisslein, M., and Schmid, S. (2019). Adaptable and data-driven softwarized networks: Review, opportunities, and challenges. Proceedings of the IEEE, 107(4):711–731.

Kreutz, D., Ramos, F. M. V., Veríssimo, P. E., Rothenberg, C. E., Azodolmolky, S., and Uhlig, S. (2015). Software-defined networking: A comprehensive survey. Proceedings of the IEEE, 103(1):14–76.

Larsen, J., Guanciale, R., Haller, P., and Scalas, A. (2023). P4r-type: A verified API for P4 control plane programs. Technical Report.

Liatifis, A., Sarigiannidis, P., Argyriou, V., and Lagkas, T. (2022). Advancing SDN from OpenFlow to P4: A survey. ACM Computing Surveys, 55.

Lima, A., Juca, S., Lemos, P., and Silva, S. (2021a). Aplicação dos conceitos SDN, DevOps e infraestrutura como código no processo de ensino e aprendizagem de ciências e engenharias. Enciclopédia Biosfera, 18.

Lima, A., Juca, S., Lemos, P., and Silva, S. (2021b). Aplicação dos conceitos SDN, DevOps e infraestrutura como código no processo de ensino e aprendizagem de ciências e engenharias. Enciclopédia Biosfera, 18.

Saraswat, S., Agarwal, V., Gupta, H. P., Mishra, R., Gupta, A., and Dutta, T. (2019). Challenges and solutions in software defined networking: A survey. Journal of Network and Computer Applications, 141(March):23–58.

Tornhill, A. and Borg, M. (2022). Code Red: The business impact of code quality – A quantitative study of 39 proprietary production codebases.

Yang, L., Wen, F., Cao, J., and Wang, Z. (2022). Edgetb: A hybrid testbed for distributed machine learning at the edge with high fidelity. IEEE Transactions on Parallel and Distributed Systems, 33(10):2540–2553.
Published
2025-05-19
DE SOUSA, Moises S.; KAMIMURA, Newton M.; KAIHARA, Alexandre; BONDAN, Lucas; CAETANO, Marcos F.; CASSEB, Davi A.; GONDIM, João J. C.; MAROTTA, Marcelo A.. Software Engineering in Programmable Networks: The ProgNet Approach. In: WORKSHOP ON EXPERIMENTAL RESEARCH OF THE FUTURE INTERNET (WPEIF), 16. , 2025, Natal/RN. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2025 . p. 17-25. ISSN 2595-2692. DOI: https://doi.org/10.5753/wpeif.2025.8738.