Maestro: Balancing Fairness, Latency and Throughput in the OpenFlow Control Plane

Journal Title
Journal ISSN
Volume Title

The fundamental feature of an OpenFlow network is that the controller is responsible for the configuration of switches for every traffic flow. This feature brings programmability and flexibility, but also puts the controller in a critical role in the performance of an OpenFlow network. To fairly service requests from different switches, to achieve low request-handling latency, and to scale effectively on multi-core processors are fundamental controller design requirements. With these requirements in mind, we explore multiple workload distribution designs within our system called Maestro. These designs are evaluated against the requirements, together with the static partitioning and static batching design found in other available multi-threaded controllers, NOX and Beacon. We find that a Maestro design based on the abstraction that each individual thread services switches in a round-robin manner can achieve excellent throughput scalability (second only to another Maestro design) while maintaining far superior and near optimal maxim fairness. At the same time, low latency even at high throughput is achieved thanks to Maestro’s workload adaptive request batching.

Technical report

Cai, Zheng, Cox, Alan L. and Ng, T. S. Eugene. "Maestro: Balancing Fairness, Latency and Throughput in the OpenFlow Control Plane." (2011)

Has part(s)
Forms part of
Published Version
You are granted permission for the noncommercial reproduction, distribution, display, and performance of this technical report in any format, but this permission is only for a period of forty-five (45) days from the most recent time that you verified that this technical report is still available from the Computer Science Department of Rice University under terms that include this permission. All other rights are reserved by the author(s).
Link to license
Citable link to this page