STATUS: Under Construction

SDN-C / App-C:

Note:  ONAP has two application level configuration and lifecycle management modules called SDN-C and App-C. Both provide similar services (application level configuration using NetConf, Chef, Ansible, RestConf, etc.) and life cycle management functions (e.g. Stop, resume, health check, etc.).  They share common code from CCSDK repo.  However, there are some differences between these two modules (SDN-C uses CDS only for onboarding and configuration / LCM flow design, whereas App-C uses CDT for the LCM functions for self service to provide artifacts storing in APP-C Database).  SDN-C has been used mainly for Layer1-3 network elements and App-C is being used for Layer4-7 network functions.  This is a very loose distinction and we expect that over time we will get better alignment and have common repository for controller code supporting application level configuration and lifecycle management of all network elements (physical or virtual, layer 1-7).  Because of these overlaps, we have documented SDN-C and App-C together.


1 High Level Component Definition and Architectural Relationships 



ONAP Controller Family (SDN-C / App-C) configures and maintains the health ofL1-7 Network Function (VNF, PNF, CNFs) and network services throughout their lifecycle

2. SDN-C/APP-C API definitions

Controller provides the following interfaces:

Interface NameInterface Definition Interface Capabilities
CONE-1Operations Interface

An interface to request for Lifecycle management operations on network resources

CONE-2OSS Interface

An interface to request for Lifecycle management operations on network resources

CONE-3Service Order Interface

 An interface to request for Configuration and Lifecycle management operations on network resources

CONE-4Policy Interface

 An interface to support LCM requests such as Restart, Rebuild, Migrate, Evacuate operations on network resources (APP-C interfaces with openstack to send those LCM requests to VNF/VNF-C/VM) 

The current API documents can be found at:

https://onap.readthedocs.io/en/casablanca/submodules/appc.git/docs/index.html

Controller consumes the following interfaces:

Interface NameInterface Definition Interface Capabilities
CONE-5Rest APIAn interface for communication with external systems such as IP management
CONE-6Resource Chef APIAn interface for configuration and Lifecycle management of network resources using Chef protocol
CONE-7Resource NetConf APIAn interface for configuration and Lifecycle management of network resources using NetConf protocol
CONE-8Resource Ansible APIAn interface for configuration and Lifecycle management of network resources using Ansible protocol
SDCE-6SDC Interface

An interface to receive resource Templates from SDC design catalog

CDSE-1CDS Interface

An interface to receive resource blueprint from CDS

AAIE-1Inventory Service Interface

 An interface to create, update, query, and delete resource information and relationships

POE-2aPDP Query API

 Policy Decision Point query for IP address


3. Component Description:


4. known system limitations

5. Used Models

Controllers use the following models:

6. System Deployment Architecture


Controller consists of the following containers:

7. New Release Capabilities

8. References

  1.  APP-C overview & User Guide: https://docs.onap.org/en/casablanca/guides/onap-developer/developing/index.html#application-controller
  2. SDN-C overview & User Guide:  https://docs.onap.org/en/casablanca/guides/onap-developer/developing/index.html#software-defined-network-controller