Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Page Status: Updated for

...

Oslo -  
Component Status:

...

 

Last Reviewed on:  

Certified by: Dan Timoney

1. High Level Component Definition and Architectural Relationships

SDN-C / App-C:

draw.io Diagram
bordertrue
diagramNamesdnc_r13
simpleViewerfalse
width
linksauto
tbstyletop
lboxtrue
diagramWidth1082
revision1

...

  • 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/APP-C API definitions

Controller provides the following interfaces:

...

Interface NameInterface Definition Interface CapabilitiesAPI Spec (Swagger)
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

  • 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:

...

draw.io Diagram
bordertrue
viewerToolbartrue
fitWindowfalse
diagramNamexxxx Deployment View
simpleViewerfalse
diagramWidth1291
revision1

7. New Release Capabilities

  • Upgrade of ODL to Silicon SR (Service Release) 1
  • OpenDaylight separation:
    • For Istanbul, we plan to provide 2 implementations of GENERIC-RESOURCE-API:

      • The current implementation, implemented as an OSGi feature deployed in the OpenDaylight karaf container.
      • A new springboot-based microservice, which runs in a pod outside of OpenDaylight

      We eventually would like to replace the current implementation with the springboot-based implementation, and run OpenDaylight as a separate pod.  However, there is still some work required to close feature gaps in the springboot-based implementation before we can do so without breaking existing functionality. 

      In Istanbul, we plan to conduct a proof of concept of the work done to date.  For this proof of concept, we will replace the SDNC controller in our local kubernetes test environment with the springboot-based version and run the standard OOM gating test suite to determine whether that the implementation to date is fully backwards compatible.  Any issues identified will be tracked in Jira so that we can plan to close any gaps discovered so that we can plan to introduce our springboot-based platform as the default SDNC implementation in Jakarta.

       

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

...