CCSDK : Dublin Architecture Alignment

Project Overview
CCSDK is a set of libraries and base docker containers that are used to create ONAP controllers.  SDNC and APPC are both based on CCSDK, and DCAE also uses some CCSDK libraries.   The target vision is that most base controller functionality should be implemented as reusable components within CCSDK, and then assembled into specific controller instances or "personas" in the controller projects.

New component capabilities for Dublin, i.e. the functional enhancements

  • Controller Design Studio (CDS) : a self-service design tool that allows service designers to define configuration rules for VNFs/PNFs.  This tool will be integrated as a subtending editor for SDC in a later ONAP release.

New or modified interfaces

CDS introduces a new gRPC interface called "selfservice-api" with SO.  This interface will provide the following new functions:

  • ConfigAssign  - Resolve application params and generates a configlet for network base-configuration and incremental configlets for PNF, VNFs and in the future CNFs. 

  • ConfigDeploys  - Deploy the configlet that is generated as part of the configAssign action to the network using netconf/restconf.

The 5G OOF/PCI use case introduces a new API called "oofpcipoc-api", which supports the following RPCs:

  • greeting

  • configuration-phy-cell-id

  • generic-neighbor-configuration

  • add-neighbor

  • delete-neighbor



Interface naming

CCSDK provide the following APIs:

  • ASDC-API : RESTCONF interface used to process certain non-TOSCA artifacts distributed by SDC (license model updates).

  • dataChange : RESTCONF interface pub/sub interface that allows controller to be notified on data change events (note: not currently used in ONAP use cases)

  • LCM : RESTCONF interface used to handle LifeCycle Management events

  • SLI-API : RESTCONF interface to service logic interpreter.  Used primarily for health check.

  • selfservice-api : gRPC interface used with CDS (see above)

  • oofpcipoc-api : RESTCONF interface used for OOF/PCI integration (see above)

Reference to the interfaces

All APIs have Swagger documentation, which is referenced in readthedocs

What are the system limits

Since CCSDK is a toolkit, this doesn't really apply.

Involved use cases, architectural capabilities or functional requirements

CCSDK is used in the following use cases:

  • vFW

  • vDNS

  • vCPE

  • VoLTE

  • CCVPN

  • 5G

Listing of new or impacted models used by the project (for information only)

None