SDN-R Feature for adding cm-handle
Overview
CPS stores the yang model of the mounted devices in CPS-Core database. It is handled by CPS-DMI Plugin which fetches the yang models of the devices registered at AAI and stores in CPS.
As the VNF/PNF registry in AAI is not supported for Slicing use case, the mounted nodes will be directly published to the CPS-DMI Plugin by SDN-C.
A new karaf feature is needed to communicate the node-id to CPS-DMI plugin. This will be achieved by registering a cm-handle with DMI-Plugin.
RPC Details
RPC Name: addCMHandle
Functionality:
This RPC makes use of the onDataTreeChanged event from DataTreeChangeListener to detect, if any node is added to network-topology https://localhost:8086/restconf/config/network-topology:network-topology
If the ModificationType is 'WRITE', a new notification is published to dmaap to add the cmhandle.
If the ModificationType is 'DELETE', the notification to remove the cmhandle will be published. - TBC with CPS Team
cmhandle format:
Reference: CPS-352 : Create yang-model for DMI-registry data
where,
cm-handle-id is node id
dmi-service-name is Kubernetes service name of the DMI Plugin
RPC Yang: CMHandle-API.yang
yang tree:
Interfaces:
Mount Request to SDN-R
2. New Feature at SDN-R to publish the cm-handle
feature: addCMHandle
Dmaap Topic: CM_HANDLE (TBC)
3. Receive the DMaap notification
curl -k --header "Content-Type: application/json" --request GET https://<ip>:30226/events/CM_HANDLE
4 & 5. Fetch the module sets and yang model from SDN-R using RESTConf API (CPS-DMI Plugin takes care of it)
Yang model: https://<ip>:<port>/restconf/operations/network-topology:network-topology/topology/topology-netconf/node/{node-id}/yang-ext:mount/ietf-netconf-monitoring:get-schema
6. Initial-config data: This is not currently supported (as on 01-10-2021). Use the CPS Data APIs to store the initial config data to CPS.
DMI Plugin should be able to fetch the initial RAN Configuration data as well (not shown in the sequence diagram).
https://<ip>:<port>/restconf/config/network-topology:network-topology/topology/topology-netconf/node/{node-id}/yang-ext:mount/ran-network:ran-network
Discussion with CPS Team on 28-09-2021: