Programmable control plane in software-defined networking (SDN), plays an essential role in the SDN architecture. The network function provided by the specialized hardware in a legacy network can be created in the form of software-based 'SDN application' running on the controllers to manipulate entire network configurations. Therefore, the risk of having software bugs and errors in the SDN applications may threaten the normal operations of SDN networks. This paper presents systematic validation criteria and test cases based on the proposed novel methodologies for SDN application testing. The test framework can perform testbed build-up, generate desired packet sequences, and analyze results automatically. According to the results of a generic test suite, several issues are unveiled in the application under test (AUT). Some AUTs, which need to check all the incoming packets from OpenFlow switches, fail to meet the test criteria of burst packet-in and flow self-recycling. For most of the applications based on the Ryu controller, the evaluation results reveal that some are unable to recycle flow entries after they are unloaded. It is recommended that all flows populated by SDN applications must have timeout value specified to prevent unnecessary entries kept in the flow table.
- performance evaluation
- software defined network (SDN)
- system performance