CPS-1434: VES Message to update CPS DB
References
CPS-1434: Spike: VES Message to update CPS DBClosed
CPS-1407: Update CPS DB based on CM VES message for SON Use CaseSubmitted
INT-2177: Generate O1-aligned CM VES message to support config update in CPS DBClosed
https://www.rfc-editor.org/rfc/rfc8641
O1 CM Update Notification VES Message
SON Use Case Weekly Meeting Notes
Assumptions
# | Issue | Notes | Decisions |
---|---|---|---|
1 | VES Event is received via Strimzi/DMaap Kafka on DMI. | Yes. This is agreed. | |
2 | Changes in CM data will result in CPS-Core sending a CPS Data AVC irrespective the origin of the change. |
| Agreed. |
Issues & Decisions
Issue | Notes | Decisions | |
---|---|---|---|
1 | CM VES Message format schema. Who will own it ? | In order to process the message DMI plugin / NCMP should be aware of the schema of the incoming message it is going to be consume. | VES format primary reference is here: [INT-2180] Define CM VES message aligned with 3GPP/O-RAN O1 - ONAP JIRA |
2 | Topic from where we will receive the CM VES Message. | Existing channel or channel owned by NCMP/DMI | @Vishal Varvate to provide the topic details. @Priyank Maheshwari ,please use below topic unauthenticated.SEC_3GPP_PROVISIONING_OUTPUT |
3 | Mapping of the relevant information from the CM VES Message
| Only fields that seem to suggest to have these info. are.
Related work in ONAP suggests this possible alternative schema: So wanted to confirm if measurements.measurement-type-instance-reference is xpath? | Mapping detailed below: VESEvent%E2%86%92DMIDataAVCMapping CM VES related details present in CM handling guide and INT-2177: Generate O1-aligned CM VES message to support config update in CPS DBClosed VES Event Sample{
"event": {
"commonEventHeader": {
"domain": "stndDefined",
"eventId": "stnddefined000001",
"eventName": "stnddefined_Metrics",
"lastEpochMicrosec": 1670938742757000.0,
"nfNamingCode": "NFC",
"nfVendorName": "Capgemini Engineering",
"priority": "Normal",
"reportingEntityId": "nearrtric-22_cucpserver2",
"reportingEntityName": "honeycomb",
"sequence": 0,
"sourceId": "nearrtric-22_cucpserver2",
"sourceName": "Capgemini Engineering",
"startEpochMicrosec": 1670938742757000.0,
"stndDefinedNamespace": "3GPP-Provisioning",
"timeZoneOffset": "UTC+05:30",
"version": "4.0.1",
"vesEventListenerVersion": "7.2"
},
"stndDefinedFields": {
"schemaReference": "https://forge.3gpp.org/rep/sa5/MnS/blob/Rel16/OpenAPI/provMnS.yaml#/components/schemas/NotifyMoiChanges",
"data": {
"href": "172.16.100.130",
"notificationId": 1,
"notificationType": "notifyMOIChanges",
"eventTime": "2021-08-23T11:52:10.6Z",
"systemDN": "xyz",
"moiChanges": [
{
"notificationId": 123,
"correlatedNotifications": [],
"additionalText": "AdditionalTextDetails",
"sourceIndicator": "MANAGEMENT_OPERATION",
path="/restconf/data/ran-network:ran-network/NearRTRIC=22/GNBCUCPFunction=cucpserver2/NRCellCU=15549/NRCellRelation=14427/isHOAllowed",
"operation": "REPLACE",
"value": {
"isHOAllowed": "true"
}
}
]
},
"stndDefinedFieldsVersion": "1.0"
}
}
} |
4 | DMI Data AVC Message | DMI Data AVC Sample{
"eventId":"nearrtric-22_cucpserver2",
"eventCorrelationId":"nearrtric-22_cucpserver2",
"eventTime":"2023-02-28T16:42:25-04:00",
"eventSource":"ncmp-datastore:operational",
"eventType":"org.onap.ncmp.cm-network-avc-event",
"eventSchema":"org.onap.ncmp:cm-network-avc-event.rfc8641",
"eventSchemaVersion":"1.0",
"event":{
"push-change-update":{
"datastore-changes":{
"ietf-yang-patch:yang-patch":{
"patch-id":"34534ffd98",
"edit":[
{
"edit-id":"ded43434-1",
"operation":"replace",
"target":"ran-network:ran-network/NearRTRIC[@id='22']/GNBCUCPFunction[@id='cucpserver2']/NRCellCU[@id='15549']/NRCellRelation[@id='14427']",
"value":{
"attributes":[
{
"isHoAllowed":true
}
]
}
}
]
}
}
}
}
}
| |
5 | Topic from NCMP-DMI-Plugin to NCMP | The producer is already configured. | Topic name : dmi-cm-events |
The Big(ger) Picture
For more details and descriptions see CPS Data Notifications Overview
VES Event Flow
DMI Plugin to receive CM VES Message from the upstream( VES Collector ?? ) via a REST call or DMI will listen to a topic. ( or also can generate a VES message for testing)
DMI Plugin will have to convert the CM VES Message to DMI Data AVC event and publish the same to an internal topic.
NCMP will have logic to handle the DMI AVC event received to update the cache. ( See #6 in CPS Data Notifications Overview )
VES Event → DMI Data AVC Mapping
VES Event | DMI Data AVC | Notes | |||||||
---|---|---|---|---|---|---|---|---|---|
1 | Part | Field | Source | Sample Value | Part | Field | Source | Sample Value | |
2 | Header | eventId | 123435 | Header | eventId | DMI Plugin | 123435 | Has to be globally unique | |
3 | Header | eventTime | device | 2021-11-16T16:42:25-04:00 | Header | eventTime | VES Event | 2021-11-16T16:42:25-04:00 | TO BE DISCUSSED see open issue # |
4 | Header | sourceId | device | nearrtric-22_cucpserver2 | Header | eventSource | VES Event | device-123 | Upto DMI plugin to send. where it came from etc. |
5 | Header | sourceId | nearrtric-22_cucpserver2 | Header | eventCorrelationId | VES Event & Conversion | nearrtric-22_cucpserver2 | DMI PLugin need to map TBC | |
6 | Payload | path | ran-network:ran-network/NearRTRIC=22/GNBCUCPFunction=cucpserver2/ ran-network:ran-network/NearRTRIC=11/GNBCUCPFunction=cucpserver2/ | Payload | target | VES Event & Conversion | ManagedElement@[id='1']\Function[@id='SomeFunction'] ran-network:ran-network/NearRTRIC[@id="22"]/GNBCUCPFunction[@id="cucpserver2"]/ | DMI PLugin needs to convert FDN to XPath | |
7 | Payload | patch-id | DMI Plugin | 329cb2e3-b41a-4347-9884-f15457f426a1 | Unique ID generated by DMI-Plugin | ||||
8 | Payload | operation | device | 'replace' | Payload | operation | VES Event & Conversion | 'replace' | DMI PLugin needs to map |
The DMI Data AVC Payload is defined by https://www.rfc-editor.org/rfc/rfc8641
Value Copied VES Event | Transformed VES Event Value | Value Generated by DMI-Plugin |
Analysis
Dataspace : NFP-Operational
Yang Resource : ran-network to be used. ( trimmed down version just like cps-ran-schema-model )
We need to have a defined channel/topic where the VES messages are present , and NCMP should be able to listen , interpret/process and call the relevant CPS-Core APIs in order to publish the changes in the CPS DB.
Meetings
Participants | Recording | |
---|---|---|
1 | @Toine Siebelink @kieran mccarthy @Tony Finnerty @Priyank Maheshwari @N.K. Shankaranarayanan @murali parthasarathy k @Vishal Varvate | CPS _ CM VES Message _ Discussion-20230123_140429-Meeting Recording.mp4 |
2 | @Toine Siebelink @kieran mccarthy @Priyank Maheshwari @N.K. Shankaranarayanan @murali parthasarathy k @Vishal Varvate @Lee Anjella Macabuhay @Luke Gleeson (Unlicensed) | CM VES Message to DMI Data AVC Mapping Discussion-20230309_130245-Meeting Recording.mp4 |
3 | @Toine Siebelink @kieran mccarthy @Tony Finnerty @Priyank Maheshwari @Vishal Varvate @murali parthasarathy k @Anirban Bhattacharjee @Csaba Kocsis @Peter Turcsanyi @N.K. Shankaranarayanan | CPS _ SON Use Case _ Relook at the overall picture-20230829_133406-Meeting Recording.mp4 |