Onix: A Distributed Control Platform for Large-Scale Production Networks
Computer networks lack a general control paradigm, as traditional networks do not provide any network-wide management abstractions. As a result, each new function (such as routing) must provide its own state distribution, element discovery, and failure recovery mechanisms. The authors believe this lack of a common control platform has significantly hindered the development of flexible, reliable and feature-rich network control planes. To address this, they present Onix, a platform on top of which a network control plane can be implemented as a distributed system. Control planes written within Onix operate on a global view of the network, and use basic state distribution primitives provided by the platform. Thus, Onix provides a general API for control plane implementations, while allowing them to make their own trade-offs among consistency, durability, and scalability.