Brief Project Overview (brief as it should be known)

SDNC is a network controller based on CCSDK, which provides most of the base functionality used to implement the network controller. The SDNC project assembles those components, adding real-time configurable service logic (aka directed graphs) to implement network controller instances or "personas".


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

The following table lists the new functional requirements CCSDK is committing to support for the Frankfurt Release:

RequirementsCompanies Supporting Requirement

Fujitsu

IBM

Huawei, IBM, Wipro

Huawei, CMCC, Wipro

IBM

T-Mobile, Orange

Ericsson

IBM


Minimum Viable Product

The following epics represent the minimum viable product of the CCSDK Guilin Release:

The following epics are also in scope for Guilin, but are not considered of the minimum viable product.  In the event of unanticipated resource constraints, these could be reduced in scope or deferred without impacting any functionality deemed by the TSC as critical for Guilin.

These requirements require enhancements to existing SDNC functionality, as opposed to new interfaces. 

New or modified interfaces

SDNC originally provided 2 interfaces with overlapping capabilities:

All the capabilities of VNF-API are now also provided by GENERIC-RESOURCE-API.  Our existing ONAP use cases have been updated to use GENERIC-RESOURCE-API instead of VNF-API.  Therefore, our plan is remove the code for VNF-API in the Guilin release.

For Guilin, we plan to provide 2 implementations of GENERIC-RESOURCE-API:

The new springboot-based implementation will be considered  a Proof of Concept in Guilin, with a goal of making it the default implementation in R8 Honolulu release.

If they are modified, are the backwards compatible?


Interface naming (point to an example)

CCSDK provides the following APIs which are exposed by SDNC:

SDNC itself also provides the following interfaces, not found in CCSDK:

Reference to the interfaces.

All APIs have Swagger documentation, which is referenced in readthedocs

What are the system limits?

Due to limitations inherent in OpenDaylight clustering - which is based on akka - SDNC should always be run with an odd number of replicas. This is needed to guarantee there can be no "ties" in the akka leader election procedure.

Involved use cases, architectural capabilities or functional requirements.


SDNC is used in the following use cases:


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

None