This section describes the major subsystems found in ONOS.
As mentioned in the previous section, ONOS is architected with tiers of functionality. We present the following figure as a summary of the discussions in the next few sections :
A service is a unit of functionality that is comprised of multiple components that create a vertical slice through the tiers as a software stack. We refer to the collection of components making up the service as a subsystem. We may use the terms 'service' and 'subsystem' interchangeably.
ONOS defines several primary services:
Provider:
Manager:
Store:
Application:
Not all subsystems possess all of these components, and not all components strictly adhere to these functions. For example, the Topology Subsystem is protocol agnostic; therefore its Provider is purely acts upon the system core's representations of devices and links, and never interact with the infrastructure directly.