CCSDK R6 Frankfurt Architecture Review
Brief Project Overview (brief as it should be known)
The Common Controller Software Development Kit (CCSDK) provides common components (libraries and docker images) used as a basis to construct controllers. These components include:
Common parent pom.xmls, derived from the OpenDaylight parent poms, designed to be used by OpenDaylight-based ONAP controllers (APPC and SDNC).
Service Logic Interpreter (SLI): provides the ability to make real time changes in controller behavior through the user of directed graphs.
Controller Design Studio : allows operators to make real time changes to device configuration data formats/translation rules.
Support libraries used by DCAE and OOM.
New component capabilities for Frankfurt, i.e. the functional enhancements.
The following table lists the Frankfurt functional requirements which impact CCSDK.
These requirements require enhancements to existing CCSDK functionality, as opposed to new interfaces.
New or modified interfaces
CCSDK itself has no interfaces, but does provide interface adaptors used by client controllers. There is one new such adaptor of note in Frankfurt:
CCSDK-1796: O-RAN compliant A1 adaptorClosed - Adds a new adaptor to allow the ONAP SDNC controller to invoke an O-RAN A1 interface. This is a proof of concept only with limited scope in the Frankfurt timeframe.
If they are modified, are the backwards compatible?
N/A - CCSDK itself has no interfaces.
Interface naming (point to an example)
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
oofpcipoc-api : RESTCONF interface used for OOF/PCI integration
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