Ryuo: Using high level northbound API for control messages in software defined network

        In the software defined networks (SDNs), the Open-Flow protocol is typically used as the southbound API in manipulating OpenFlow switches. However, the OpenFlow control messages are in a low abstraction level. Therefore, even a single application-level operation requires many OpenFlow messages, which consume the bandwidth of the control network and reduce the SDN's scalability. One potential solution is to use high level domain specific northbound APIs in the control network. In this paper, we explore the possibility of adopting this solution by implementing and evaluating a new SDN framework, Ryuo. In Ryuo, we introduce Local Service, which runs directly on each SDN switch (hardware/software). In operations, Local Service provides northbound APIs to the SDN applications while it can use different southbound APIs for different switches. Ryuo eliminates unnecessary control messages, hence it decreases the volume of control traffic. Our evaluation of Ryuo on Mininet with example applications shows that Ryuo reduces the volume of control traffic at least 50% compared to the standard OpenFlow, and up to 40% compared to the local controller approach. We also evaluate the performance of running Local Services directly on physical switches. The results show that we can achieve lower event handling latency in large networks, but with the trade-off of a lower event handling throughput due to the computing power limitation on physical switches. In summary, we have shown that using high level northbound API in the control network can make the control network more efficient, and leads to better scalability.