12 Oct 2015

The Preliminary Design and Implementation of the Maestro Network Control Platform

http://www.cs.rice.edu/~eugeneng/papers/Maestro-TR.pdf

Maestro is an “operating system” that orchestrates the network control applications … Maestro provides abstraction for the modular implemention of … address the fundamental problem originating from the concurrent operations of network control applications, namely communication between applications, scheduling of application executions, feedback management, concurrency management, and network state transition management.

network management tools do not manage the interactions among modular network control components at run time.

network control components concurrently modify the behavior of the underlying shared physical network … the decision of one component may depend on the decision of another … (e.g., best-effort routing may determine the residual bandwidth available for voice over IP traffic) … thus, components need to communicate their decision with each other, and their execution schedule must be managed.

the network behavior (e.g., network load distribution) caused by one component may inadvertly change the input condition for another … thus unintended feedback

at the technical level, Maestro addresses the fundamental communication, scheduling, feedback, concurrency, and transition problem …

  1. the input and output of applications are abstract view objects managed by Maestro
  2. express the scheduling order among control applications as an abstract DAG object and Maestro enforces the scheduling order at runtime
  3. detects feedback loops and alerts operator
  4. automatically ensures the serializability of the concurrent execution