STATUS: Under Construction
SDN-C / App-C:
1 High Level Component Definition and Architecteral Relationships
- Configure Network Functions (VNF/PNF)
- Provides programmable network application management platform:
- Behavior patterns programmed via models and policies
- Standards based models &protocols for multi-vendor implementation
- Extensible SB adapters such as Netconf, Ansible, Rest API, etc.
- Operational control, version management, software updates, etc.
- Local source of truth
- Manages inventory within its scope
- Manages and stores state of NFs
- Supports Configuration Audits
2. SDN-C API definitions
Controller provides the following interfaces:
Interface Name | Interface Definition | Interface Capabilities |
---|---|---|
CONE-1 | Operations Interface | An interface to request for Lifecycle management operations on network resources |
CONE-2 | OSS Interface | An interface to request for Lifecycle management operations on network resources |
CONE-3 | Service Order Interface | An interface to request for Configuration and Lifecycle management operations on network resources |
CONE-4 | Policy Interface | An interface to support LCM requests such as Restart, Rebuild, Migrate, Evacuate operations on network resources |
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 Name | Interface Definition | Interface Capabilities |
---|---|---|
CONE-5 | Rest API | An interface for communication with external systems such as IP management |
CONE-6 | Resource Chef API | An interface for configuration and Lifecycle management of network resources using Chef protocol |
CONE-7 | Resource NetConf API | An interface for configuration and Lifecycle management of network resources using NetConf protocol |
CONE-8 | Resource Ansible API | An interface for configuration and Lifecycle management of network resources using Ansible protocol |
SDCE-6 | SDC Interface | An interface to receive resource Templates from SDC design catalog |
CDSE-1 | CDS Interface | An interface to receive resource blueprint from CDS |
AAIE-1 | Inventory Service Interface | An interface to create, update, query, and delete resource information and relationships |
POE-2a | PDP Query API | Policy Decision Point query for IP address |
3. Component Description:
4. known system limitations
- Lack of clarity & roles in the controller (which controller does what?)
- Proliferation of controller instances (many similar yet different controller instances)
- Divergence of controller implementation (lack of common controller framework)
- Duplicate and uncoordinated interfaces (lack of uniform common services in southbound interfaces)
- Controller resiliency and horizontal scaling
5. Used Models
Controllers use the following models:
- TOSCA
- YANG
6. System Deployment Architecture
Controller consists of the following containers:
- CDS-UI container - Design Time
- SDC-CDS Listener container - Design Time
- Controller Blueprint MS Container - Design Time
- Blueprint Processor MS Container - Run Time
- Command Executor Container - Run Time
- CDS Database Container - Run Time
- DG Builder Container - Design Time
- Admin Portal Container - Run Time
- SDC Listener Container - Run Time
- DMAAP Listener Container - Run Time
- Controller (ODL) Container - Run Time
- Network Name Gen MS Container - Run Time
- Ansible Server Container - Run Time
- MariaDB Galera - Platform Service
- Netbox - Platform Service
7. New Release Capabilities
- Upgrade of ODL to Fluorine SR2
- Change Management use case support
- Closed loop use case support
- Platform maturity advancement (Scalability, Stability, Security, and Performance)
- Network discovery enhancements
8. References
- APP-C overview & User Guide: https://docs.onap.org/en/casablanca/guides/onap-developer/developing/index.html#application-controller
- SDN-C overview & User Guide: https://docs.onap.org/en/casablanca/guides/onap-developer/developing/index.html#software-defined-network-controller