The southbound communication with the network
devices is done through components called Network
Element Drivers (NEDs), which implement a large set of
southbound interfaces, including NETCONF, the CLI,
SNMP, and OpenFlow.
The logical architecture of Cisco NSO is a dual-layered
approach: a device manager component that handles the
device configuration scenarios and a service manager
component that provides an interface for the
administrator to define the services that need to be
implemented in the network. The configuration data
store, called the Configuration Database (CDB), is in
sync with all the devices in the network and contains all
the devices and services configurations. A dedicated
mapping layer manages the correspondence between the
service models and the device models.
The Cisco NSO Core Engine manages critical operational
functions such as transactions, high-availability
replication, upgrades and downgrades, role-based access
control, and rollback management. All operations in
NSO are handled by the transaction manager. The Core
Engine connects all the other NSO components together;
it is the communication backbone for all other
components and is the process that reads the initial
configuration defined in the ncs.conf file.
The CDB stores all the platform data in a RAM database,
including the NSO configuration, the configurations of
all services and all managed devices, and all NSO
operational data. The CDB is stored in RAM for
increased speed and quick response, and a persistent
version of it is stored on the disk drive of the server. The
CDB is a hierarchical database organized in a tree-like
structure, and although other database solutions can be