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
Initial-config data:
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: