Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Device Subsystem - Manages the inventory of infrastructure devices.
  • Link Subsystem - Manages the inventory of infrastructure links.
  • Host Subsystem - Manages the inventory of end-station hosts and their locations on the network.
  • Topology Subsystem - Manages time-ordered snapshots of network graph views.
  • PathService - Computes/finds paths between infrastructure devices or between end-station hosts using the most recent topology graph snapshot.
  • FlowRule Subsystem - Manages inventory of the match/action flow rules installed on infrastructure devices and provides flow metrics.
  • Packet Subsystem - Allows applications to listen for data packets received from network devices and to emit data packets out onto the network via one or more network devices. 

 

Network representation

As their names suggest, each subsystem acts upon a specific aspect of the network. ONOS maintains both protocol-specific and protocol-agnostic representations of various network elements and properties, albeit in different tiers (Provider and Core, respectively). 

Additionally, some elements are built from other elements. These derivative elements may not have a protocol-specific representation. One example is the Topology, built from Devices and Links. 

 

Further discussion of network representation can be found in [Network Representation].

Subsystem Structure

Each of a subsystem's components resides in one of the three main tiers, and can be identified by one or more Java Interfaces that they implement. 

...

Descriptions are used to pass information about a element across the southbound API. For example, a HostDescription contains information about a host's MAC and IP Addresses and its location in the network (VLAN ID and device/port attachment point).

Events

A Description is transcribed into an Event once it enters the system core. Events are used by Managers to notify its listeners about changes in the network, and by Stores to notify their peers of events that should be known globallyin a distributed setting. An Event is comprised of a event type and a subject. For example, a DeviceEvent can be used to notify DeviceListeners that a device (the subject) has been detected (DEVICE_ADDED), lost (DEVICE_REMOVED), or some aspect of it has changed (DEVICE_UPDATED), among others. 

Events are generated by the Store, and dispatched by the Manager via the EventDeliveryService.

Network representations

ONOS maintains protocol-agnostic representations of various network elements and properties. Events carry these representations as their subject body. These representations are built from the information found in Descriptions by the system core.

Further discussion about network representations can be found in [Network Representation].