REANNZ intern tests SDN applications

Two months ago Se-Young Yu, a PhD student from the University of Auckland, started his 10 week Future Funds internship placement at REANNZ.

Two months ago Se-Young Yu, a PhD student from the University of Auckland, started his 10 week Future Funds internship placement at REANNZ. Now Se-Young is a PhD graduate, having successfully defended his thesis, and he is off to take a postdoctoral position in Paris. We wish him all the best.

Before he left, here’s what Se-Young had to say about his time at REANNZ, and some detail about the project he undertook.

“I would like to thank Chris Lorier, Charles T. Yun and REANNZ for providing me support to work on a postdoctoral research project. The REANNZ Future Fund was an excellent opportunity for me to extend my research into SDN which was not directly applicable to my PhD thesis. 

I was interested in testing SDN applications and was able to work on the following SDN projects for this research period:

Developing an OpenFlow switch test tool for Faucet

I've been curious about how different OpenFlow switches from different hardware vendors work with Faucet, our OpenFlow controller application. There are currently a number of tools that do unit tests on individual OpenFlow functions, but they do not test on a logical set of OpenFlow instructions generated by Faucet.

Based on a Ryu switch test tool, I was able to develop a test tool for Faucet, which tests the basic functions of Faucet against test patterns which generate different packets based on users’ inputs. I was pleased to see that the test tool made sure the Faucet with AT-X510 switch works well with various packets.

Expanding the existing Mininet test

There are a series of test scripts that test Faucet functions in Mininet. The difference between these test scripts and the test tool I developed is that my test tool is more flexible and covers more test cases, while the test script can be more realistic and efficient.

Because they compliment each other, I decided to improve the script as well. I have committed number of patches to the script, updated documentation and added a performance test that tests maximum number of hardware flows an OpenFlow switch can handle. I was glad to see my test script reveals the performance limitation of AT-X510 switch.


Most switches use Broadcom switch chips underneath OpenFlow, and OF-DPA is an application for providing APIs between OpenFlow controller and switch hardware. OF-DPA provides more efficient packet forwarding, but in exchange it forces OpenFlow applications to follow their pipeline. Current implementations of Faucet do not comply with OF-DPA, and we proposed a study on how to update it to work with OF-DPA. To do this, we needed to build a test environment where we could test OpenFlow applications running on OF-DPA. Currently, I'm running Open Network Linux on Accton AS-5710 and deploying OF-DPA to work on the ONL.

The above projects can be extended in many ways to benefit future works. Developing an interface and library for testing OpenFlow controller applications using the switch test tool will provide better usability and improve quality of the OpenFlow applications overall. Implementing OF-DPA pipelines in Faucet and testing them with the OF-DPA testbed will be useful for the future developments of OF-DPA applications. SDN will provide many opportunities for both academic researches and commercial developments.

As I worked through each of these projects, I really enjoyed solving problems with SDN. My colleagues at REANNZ had the skills and experience to point me in the right direction and were kind enough to provide me guidance when I needed it. I gathered a lot of hands-on experience on SDN and this will continue with my new job in Paris."

Find anything about our products, services, and more. Enter a query in the search input above.