Performance Testing and Validation of Data Plane Code Written in P4 for SDN
Harishchandra A. Akarte, Dharmendra Kumar Yadav · 2025
Software-defined networking (SDN) enables programmable data plane behavior using languages like P4, making meticulous testing and validation essential to ensure correctness, security, and performance. In this paper, we explore three key methodologies for testing P4-based data plane applications: functional testing, performance evaluation, and formal verification. Functional testing validates packet forwarding logic using Mininet, BMv2, and Scapy, ensuring expected packet processing. Performance testing measures throughput, latency, and packet loss using tools like iperf to assess network efficiency. Formal verification applies mathematical proofs using tools such as p4v to check correctness, reachability, and loop freedom. By integrating these methodologies, we achieved robust validation of P4 programs, which ensured their reliability in SDN environments. Our study focuses on the importance of a multiple-layer approach to testing, combining experimental testing with formal verification for comprehensive validation of programmable data planes of software-defined networks. This article explores various performance evaluation techniques for P4-based SDN data planes, presents a testing methodology, and discusses experimental results.