/
SDN-R <-> CPS Integration

SDN-R <-> CPS Integration

TBDMT Reference: CPS-TBDMT Service

CPS API Analyse: CPS APIs

Templates Needed

1. instantiateRANSliceAllocate

S.No

Config DB API

Template

Schema

id

JSON Payload

S.No

Config DB API

Template

Schema

id

JSON Payload









































































2.instantiateRANSliceModifyAllocate (Templates and payloads are verified)

S.No

Config DB API

Template (Payload to Create Template API)

Schema

id

JSON Payload

S.No

Config DB API

Template (Payload to Create Template API)

Schema

id

JSON Payload

1.

api/sdnc-config-db/v4/nearrtric/{ranNFNSSIId}

{
"templateId": "get-nearrtric-by-rannfnssi",
"model": "ran-network",
"requestType": "query-cps-path",
"xpathTemplate": "//attributes/rANNFNSSIList[text()='\''{{rANNFNSSIId}}'\'']/ancestor::NearRTRIC",
"includeDescendants": true
}'

ran-network

get-nearrtric-by-rannfnssi

{
"inputParameters": {
"ranNFNSSIId": "ac8ca1a9-e1ec-4480-8720-c74e92566885"
}
}

2

/api/sdnc-config-db/v4/cell-list/{trackingArea}

{
"templateId": "get-cells-list",
"model": "ran-coverage-area",
"requestType": "query-cps-path",
"xpathTemplate": "//coverageAreaTAList[@nRTAC={{nRTAC}}]",
"includeDescendants": true
}'

cps-cavsta-onap-internal

get-cells-list

{
"inputParameters": {
"nRTAC":101
}
}

3

/api/sdnc-config-db/v4/nearRTRIC

{
"templateId": "put-nearrtric",
"model": "ran-network",
"requestType": "post-list-node",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/attributes/pLMNInfoList[@mcc='\''{{mcc}}'\'' and @mnc='\''{{mnc}}'\'']",
"includeDescendants": true
}

ran-network

put-nearrtric

{
"inputParameters":{
"idNearRTRIC":"11",
"mcc":"310",
"mnc":"410"
},
"payload": {
"sNSSAIList":[
{
"sNssai":"1111-00110",
"status":"ACTIVE",
"configData": [
{
"configParameter":"dLThptPerSlice",
"configValue":30
},
{
"configParameter":"uLThptPerSlice",
"configValue":30
},

{
"configParameter":"maxNumberOfConns",
"configValue":200
}
]
}
]
}
}

4

/api/sdnc-config-db/v4/gNBCUCP

{
"templateId": "put-nrcellcu",
"model": "ran-network",
"requestType": "post-list-node",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBCUCPFunction[@idGNBCUCPFunction='\''{{idGNBCUCPFunction}}'\'']/NRCellCU

[@idNRCellCU='\''{{idNRCellCU}}'\'']/attributes/pLMNInfoList[@mcc='\''{{mcc}}'\'' and @mnc='\''{{mnc}}'\'']",
"includeDescendants": true
}

ran-network

put-nrcellcu

{
"inputParameters":{
"idNearRTRIC":"11",
"mcc":"310",
"mnc":"410".

"idGNBCUCPFunction":"cucpserver1",

"idNRCellCU":"15289
},
"payload": {
"sNSSAIList":[
{
"sNssai":"1111-00110",
"status":"ACTIVE",
"configData": [
{
"configParameter":"dLThptPerSlice",
"configValue":30
},
{
"configParameter":"uLThptPerSlice",
"configValue":30
},

{
"configParameter":"maxNumberOfConns",
"configValue":200
}
]
}
]
}
}

5

/api/sdnc-config-db/v4/gNBCUUP

{
"templateId": "put-gnbcuupfunction",
"model": "ran-network",
"requestType": "post-list-node",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBCUUPFunction[@idGNBCUUPFunction='\''{{idGNBCUUPFunction}}'\'']/attributes/

pLMNInfoList[@mcc='\''{{mcc}}'\'' and @mnc='\''{{mnc}}'\'']",
"includeDescendants": true
}

ran-network

put-gnbcuupfunction

{
"inputParameters":{
"idNearRTRIC":"11",
"mcc":"310",
"mnc":"410",
"idGNBCUUPFunction":1111
},
"payload": {
"sNSSAIList":[
{
"sNssai":"1000-100111",
"status":"ACTIVE",
"configData": [
{
"configParameter":"maxNumberOfConns",
"configValue":200
}
]
}
]
}
}

6

/api/sdnc-config-db/v4/gNBDU

{
"templateId": "put-nrcelldu",
"model": "ran-network",
"requestType": "post-list-node",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBDUFunction[@idGNBDUFunction='\''{{idGNBDUFunction}}'\'']/NRCellDU

[@idNRCellDU='\''{{idNRCellDU}}'\'']/attributes/pLMNInfoList[@mcc='\''{{mcc}}'\'' and @mnc='\''{{mnc}}'\'']",
"includeDescendants": true
}

ran-network

put-nrcelldu

{
"inputParameters":{
"idNearRTRIC":"11",
"mcc":"310",
"mnc":"410",
"idGNBDUFunction":110,
"idNRCellDU":15289
},
"payload": {
"sNSSAIList":[
{
"sNssai":"1000-100111",
"status":"ACTIVE",
"configData": [
{
"configParameter":"dLThptPerSlice",
"configValue":30
},
{
"configParameter":"uLThptPerSlice",
"configValue":30
}
]
}
]
}
}

7

/api/sdnc-config-db/v4/rrmPolicy

'{
"templateId": "put-nrcellcu-rrm-policy",
"model": "ran-network",
"requestType": "patch",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBCUCPFunction[@idGNBCUCPFunction='\''{{idGNBCUCPFunction}}'\'']/NRCellCU

[@idNRCellCU='\''{{idNRCellCU}}'\'']/attributes/RRMPolicyRatio[@id='\''{{id}}'\'']",
"includeDescendants": true
}

ran-network

 put-nrcellcu-rrm-policy

{
"inputParameters":{
"idNearRTRIC":"11",
"id":"55",
"idGNBCUCPFunction":"cucpserver1",
"idNRCellCU":15289
},
"payload": {
"attributes":{
"rRMPolicyMaxRatio":13,
"rRMPolicyMinRatio":13,
"rRMPolicyDedicatedRatio":13
}
}
}

8

/api/sdnc-config-db/v4/rrmPolicy

{
"templateId": "put-cuup-rrm-policy",
"model": "ran-network",
"requestType": "patch",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBCUUPFunction[@idGNBCUUPFunction='\''{{idGNBCUUPFunction}}'\'']/

attributes/RRMPolicyRatio[@id='\''{{id}}'\'']",
"includeDescendants": true
}

ran-network

put-cuup-rrm-policy

{
"inputParameters":{
"idNearRTRIC":"11",
"id":"35",
"idGNBCUUPFunction":1111
},
"payload": {
"attributes":{
"rRMPolicyMaxRatio":13,
"rRMPolicyMinRatio":13,
"rRMPolicyDedicatedRatio":13
}
}
}

9

/api/sdnc-config-db/v4/rrmPolicy

{
"templateId": "put-nrcelldu-rrm-policy",
"model": "ran-network",
"requestType": "patch",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBDUFunction[@idGNBDUFunction='\''{{idGNBDUFunction}}'\'']/NRCellDU

[@idNRCellDU='\''{{idNRCellDU}}'\'']/attributes/RRMPolicyRatio[@id='\''{{id}}'\'']",
"includeDescendants": true
}

ran-network

put-nrcelldu-rrm-policy

{
"inputParameters":{
"idNearRTRIC":"11",
"id":"34",
"idGNBDUFunction":110,
"idNRCellDU":15289
},
"payload": {
"attributes":{
"rRMPolicyMaxRatio":13,
"rRMPolicyMinRatio":13,
"rRMPolicyDedicatedRatio":13
}
}
}

10

/api/sdnc-config-db/v4/ranslice-details

{
"templateId": "update-ran-inventory",
"model": "ran-inventory",
"requestType": "post-list-node",
"xpathTemplate": "/ran-inventory/ran-slices[@rannfnssiid='\''{{rannfnssiid}}'\'']",
"includeDescendants": true
}

cps-ran-inventory

update-ran-inventory

{
"inputParameters":{
"rannfnssiid":"566036bf-8941-473c-be9c-e9962af05b99"
},
"payload": {                          
"sliceProfilesList": [
{
    "sliceProfileId": "111dd8-ae51-4acf-8073-c00000",
    "sNSSAI": "001-11000",
    "maxNumberofUEs": 300,
    "latency": 5,
    "uLThptPerSlice": 40,
    "dLThptPerSlice": 50,
    "maxNumberofConns": 500,
    "uEMobilityLevel": "FULLY MOBILITY",
    "coverageAreaList": ["Washington"],
    "resourceSharingLevel": "Shareable",
    "pLMNIdList": [
    {
        "mcc": "310",
        "mnc": "410"
    }
    ]                                        
}
]
}
}

11

/api/sdnc-config-db/v4//rrmPolicy/{resourceType}/{resourceId}

{
"templateId": "get-nrcellcu-rrm-policy",
"model": "ran-network",
"requestType": "get",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBCUCPFunction[@idGNBCUCPFunction='\''{{idGNBCUCPFunction}}'\'']/

NRCellCU[@idNRCellCU='\''{{idNRCellCU}}'\'']",
"includeDescendants": true
}

ran-network

get-nrcellcu-rrm-policy

{
"inputParameters":{
"idNearRTRIC": 11,
"idGNBCUCPFunction": "cucpserver1",
"idNRCellCU": 15826
}
}

12

/api/sdnc-config-db/v4//rrmPolicy/{resourceType}/{resourceId}

{
"templateId": "get-cuup-rrm-policy",
"model": "ran-network",
"requestType": "get",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBCUUPFunction[@idGNBCUUPFunction='\''{{idGNBCUUPFunction}}'\'']",
"includeDescendants": true
}

ran-network

get-cuup-rrm-policy

{
"inputParameters":{
"idNearRTRIC": 11,
"idGNBCUUPFunction": 1111
}
}

13

/api/sdnc-config-db/v4//rrmPolicy/{resourceType}/{resourceId}

{
"templateId": "get-nrcelldu-rrm-policy",
"model": "ran-network",
"requestType": "get",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBDUFunction[@idGNBDUFunction='\''{{idGNBDUFunction}}'\'']/

NRCellDU[@idNRCellDU='\''{{idNRCellDU}}'\'']",
"includeDescendants": true
}

ran-network

get-nrcelldu-rrm-policy

{
"inputParameters":{
"idNearRTRIC": 11,
"idGNBDUFunction": 110,
"idNRCellDU": 15826
}
}

14

update NRCellCU RRM Policy member

{
"templateId": "put-nrcelldu-rrm-policy-member",
"model": "ran-network",
"requestType": "post-list-node",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBDUFunction[@idGNBDUFunction='\''{{idGNBDUFunction}}'\'']/NRCellDU

[@idNRCellDU='\''{{idNRCellDU}}'\'']/attributes/RRMPolicyRatio[@id='\''{{id}}'\'']/attributes",
"includeDescendants": true
}

ran-network

put-nrcelldu-rrm-policy-member

{
"inputParameters":{
"idNearRTRIC":"11",
"id":"34",
"idGNBDUFunction":110,
"idNRCellDU":15289
},
"payload": {
"rRMPolicyMemberList":[
{
"idx":57,
"mcc":"310",
"mnc":"410",
"sNSSAI":"1000-10001"
}
]
}
}

15

update CUUP RRM Policy member

{
"templateId": "put-cuup-rrm-policy-member",
"model": "ran-network",
"requestType": "post-list-node",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBCUUPFunction[@idGNBCUUPFunction='\''{{idGNBCUUPFunction}}'\'']/

attributes/RRMPolicyRatio[@id='\''{{id}}'\'']/attributes",
"includeDescendants": true
}

ran-network

put-cuup-rrm-policy-member

{
"inputParameters":{
"idNearRTRIC":"11",
"id":"35",
"idGNBCUUPFunction":1111
},
"payload": {
"rRMPolicyMemberList":[
{
"idx":57,
"mcc":"310",
"mnc":"410",
"sNSSAI":"1000-100011"
}
]
}
}

16

update NRCellDU RRM Policy member

{
"templateId": "put-nrcellcu-rrm-policy-member",
"model": "ran-network",
"requestType": "post-list-node",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBCUCPFunction[@idGNBCUCPFunction='\''{{idGNBCUCPFunction}}'\'']/

NRCellCU[@idNRCellCU='\''{{idNRCellCU}}'\'']/attributes/RRMPolicyRatio[@id='\''{{id}}'\'']/attributes",
"includeDescendants": true
}

ran-network

put-nrcellcu-rrm-policy-member

{
"inputParameters":{
"idNearRTRIC":"11",
"id":"55",
"idGNBCUCPFunction":"cucpserver1",
"idNRCellCU":15289
},
"payload": {
"rRMPolicyMemberList":[
{
"idx":57,
"mcc":"310",
"mnc":"410",
"sNSSAI":"1000-1000"
}
]
}
}

17

add new Slice Profile under NearRTRIC

{
"templateId": "add-slice-profile",
"model": "ran-network",
"requestType": "post-list-node",
"xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/attributes"
}

ran-network

add-slice-profile

{
"inputParameters":{
"idNearRTRIC":"11"
},
"payload": {
"sliceProfilesList":[{
"sliceProfileId": "12212dsda-9bf1-461e-8ab0-b4644d166cd2",
"sNSSAI": "01-1111001",
"resourceSharingLevel": "shared",
"uLThptPerSlice": 1600000,
"maxNumberofConns": 12000,
"latency": 5,
"maxNumberofUEs": 200,
"dLThptPerSlice": 1920000
}
]
}
}













3.activateRANSliceInstance



S.No

Config DB API

Template

Schema

id

JSON Payload

Output

Comments

S.No

Config DB API

Template

Schema

id

JSON Payload

Output

Comments



api/sdnc-config-db/v4/nearrtric/{ranNFNSSIId}

//ranNFNSSIIdList[@RANNFNSSI =1]/ancestor::NearRTRICs

cps-ran-schema-model





{ "gNBCUCPList": [ { "cellCUList": [ { "cellLocalId": 0, "pLMNInfoList": [ { "pLMNId": "string", "sNSSAI": { "configData": { "dLThptPerSlice": 0, "lastUpdatedTS": { "date": 0, "day": 0, "hours": 0, "minutes": 0, "month": 0, "nanos": 0, "seconds": 0, "time": 0, "timezoneOffset": 0, "year": 0 }, "maxNumberOfConns": 0, "uLThptPerSlice": 0 }, "globalSubscriberId": "string", "sNSSAI": "string", "status": "string", "subscriptionServiceType": "string" } } ], "resourceType": "string" } ], "gNBCUName": "string", "gNBId": 0, "gNBIdLength": 0, "nFType": "string", "nearRTRICId": 0, "pLMNId": "string" } ], "gNBCUUPList": [ { "gNBCUUPId": 0, "gNBId": 0, "gNBIdLength": 0, "nearRTRICId": 0, "pLMNInfoList": [ { "pLMNId": "string", "sNSSAI": { "configData": { "dLThptPerSlice": 0, "lastUpdatedTS": { "date": 0, "day": 0, "hours": 0, "minutes": 0, "month": 0, "nanos": 0, "seconds": 0, "time": 0, "timezoneOffset": 0, "year": 0 }, "maxNumberOfConns": 0, "uLThptPerSlice": 0 }, "globalSubscriberId": "string", "sNSSAI": "string", "status": "string", "subscriptionServiceType": "string" } } ], "resourceType": "string" } ], "gNBDUList": [ { "cellDUList": [ { "administrativeState": "string", "cellLocalId": 0, "cellState": "string", "nRPCI": 0, "nRTAC": 0, "operationalState": "string", "pLMNInfoList": [ { "pLMNId": "string", "sNSSAI": { "configData": { "dLThptPerSlice": 0, "lastUpdatedTS": { "date": 0, "day": 0, "hours": 0, "minutes": 0, "month": 0, "nanos": 0, "seconds": 0, "time": 0, "timezoneOffset": 0, "year": 0 }, "maxNumberOfConns": 0, "uLThptPerSlice": 0 }, "globalSubscriberId": "string", "sNSSAI": "string", "status": "string", "subscriptionServiceType": "string" } } ], "resourceType": "string" } ], "gNBDUId": 0, "gNBDUName": "string", "gNBId": 0, "gNBIdLength": 0, "nFType": "string", "nearRTRICId": 0, "pLMNId": "string" } ], "gNBId": 0, "nearRTRICId": 0, "pLMNInfoList": [ { "pLMNId": "string", "sNSSAI": { "configData": { "dLThptPerSlice": 0, "lastUpdatedTS": { "date": 0, "day": 0, "hours": 0, "minutes": 0, "month": 0, "nanos": 0, "seconds": 0, "time": 0, "timezoneOffset": 0, "year": 0 }, "maxNumberOfConns": 0, "uLThptPerSlice": 0 }, "globalSubscriberId": "string", "sNSSAI": "string", "status": "string", "subscriptionServiceType": "string" } } ], "ranNFNSSIList": [ "string" ], "resourceType": "string", "trackingArea": [ "string" ] }





/api/sdnc-config-db/v4/plmn/{sliceProfileId}

/ran-inventory/ran-slices/sliceProfilesList[@sliceProfileId={{sliceProfileId}}]/pLMNIdList

ran-inventory





{ "pLMNIdList":[ { "mcc":"310", "mnc":"410" } ] }

based on documentation was returning

"PLMNId as String"



here we have a list, yang models defines that could be as much as 6 elements, hacing each one mcc and mnc





4.instantiateRANSliceReconfigure

5.terminateRANSliceInstance 

Data feed to store the templates in TBDMT

Prepare the .sql file once the templates are finalized