ROC (Runtime Operational Control) is the Aether component that (
a) . maintains operational state that may change at runtime, and (and
b) . exports a Northbound Interface that administrators use to control Aether.
ROC builds on uONOSis driven by a versioned model defined in the YANG language. This model is an abstraction of the configuration of the underlying SD-Core and to a lesser extent the SD-RAN.
The Aether 2.1 specific model defines the top level objects like Site and sub-objects like Small Cell, Sim Card, Device, Slice etc. The Application is also a top level object that can be deployed across Sites.
Through tooling the ROC API definition is driven through the model. ROC can support several models simultaneously to support different versions of SD-CORE during an upgrade.
ROC builds on µONOS, in particular, the onos-config microservice. , which is also driven off the YANG models, providing transactional updates with a distributed storage backend.