Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

S.No

API endpoint

Description

API input/Request Payload

Yang sub-tree/element(s) accessed (for GET), or updated (for UPDATE)

Consuming Component

Target ComponentTransformation Required?

Comments

3./api/sdnc-config-db/v4/nearRTRICStore nearRTRIC details{
    "nearRTRICId":22,
    "gNBId":98763,
    "trackingArea":[
        "Kingston"
    ],
    "resourceType":"NearRTRIC",
    "ranNFNSSIList":[
        "11",
        "22"
    ],
    "pLMNInfoList":[
        {
            "pLMNId":"310-410",           
            "sNSSAI":{
                "sNSSAI":"001-010000",
                "status":"ACTIVE",
            "globalSubscriberId":"Customer-001",
                "subscriptionServiceType":"Premium",
                "configData": {
                    "dLThptPerSlice":25,
                    "uLThptPerSlice":30,
                    "maxNumberOfConns":3000
                }
            }
        }       
    ]
}

cps-ran-schema-model

+--rw NearRTRIC* [idNearRTRIC]
+--rw idNearRTRIC string
+--rw attributes
| +--rw dnPrefix? DistinguishedName
| +--rw userLabel? string
| +--ro locationName? string
| +--ro gNBId? int64
| +--rw pLMNInfoList* [mcc mnc]
| | +--rw mcc Mcc
| | +--rw mnc Mnc
| | +--rw sNSSAIList* [sNssai]
| | +--rw sNssai string
| | +--rw status? string
| | +--rw configData* [configParameter]
| | +--rw configParameter string
| | +--rw configValue? int64

SDN-RNCMP

suggested CPS-action: Update DataNode with children (in this case a list) all children will be replaced! All unchanged data has to be provided too.

Note 1. SNSSAIList is a list contained within each element of PLMNInfo

Yes. Refer Section-3 for field mapping

Note 2. Please note this action replace all existing list element, it is NOT an add-to-element action

<Need to discuss>


Replace data node with descendants.



4./api/sdnc-config-db/v4/gNBCUCPStore gNBCUCP, NRCellCU details

{
   "gNBCUName":"cucpserver1"
   "gNBId":98763,
   "gNBIdLength":5,
   "pLMNId":"310-410",
   "nFType":"CUCP",
   "nearRTRICId":11,
   "cellCUList":[
       {
    "cellLocalId":103594000,
    "pLMNInfoList":[
        {
            "pLMNId":"310-200",
            "sNSSAI":{
                "sNSSAI":"001-00110",
                "status":"ACTIVE",
                 "configData":{
                    "maxNumberOfConns"7000
            }
            }
        }
    ]
}
   ]
}

cps-ran-schema-model

+--rw GNBCUCPFunction* [idGNBCUCPFunction]
+--rw idGNBCUCPFunction string
+--rw attributes
| +--rw gNBId? int64
| +--rw gNBIdLength? int32
| +--rw gNBCUName? string
| +--rw pLMNId* [mcc mnc]
| +--rw mcc Mcc
| +--rw mnc Mnc
+--rw NRCellCU* [idNRCellCU]
+--rw idNRCellCU string
+--rw attributes
| +--rw cellLocalId? int32
| +--rw pLMNInfoList* [mcc mnc]
| | +--rw mcc Mcc
| | +--rw mnc Mnc
| | +--rw sNSSAIList* [sNssai]
| | +--rw sNssai string
| | +--rw status? string
| | +--rw configData* [configParameter]
| | +--rw configParameter string
| | +--rw configValue? int64

SDN-RNCMP

from CPS point of view this case is similar as previous case (#3), just a different target (parent)data node.

suggested CPS-action: Update DataNode with children (in this case a list) all children will be replaced! All unchanged data has to be provided too!

<Need to discuss>


Would this be Create a new entry or is this updating an existing entry in a list?, if it does not exists. Update, if it already exists.

5./api/sdnc-config-db/v4/gNBCUUPStore gNBCUUP details

{
   "gNBCUUPId":1111
   "gNBId":98763,
   "gNBIdLength":2,
   "pLMNId":"310-410",
   "resourceType":"DRB",
   "nearRTRICId":11,
    "pLMNInfoList":[
        {
            "pLMNId":"310-410",
            "sNSSAI":{
                "sNSSAI":"001-003",
                "status":"ACTIVE",
                "configData":{
                    "maxNumberOfConns"3000
            }
            }
        }
    ]
}

cps-ran-schema-model

+--rw GNBCUUPFunction* [idGNBCUUPFunction]
| +--rw idGNBCUUPFunction string
| +--rw attributes
| +--ro gNBCUUPId? uint64
| +--rw gNBId? int64
| +--rw pLMNInfoList* [mcc mnc]
| +--rw mcc Mcc
| +--rw mnc Mnc
| +--rw sNSSAIList* [sNssai]
| +--rw sNssai string
| +--rw status? string
| +--rw configData* [configParameter]
| +--rw configParameter string
| +--rw configValue? int64

SDN-RNCMP

from CPS point of view this case is similar as previous 2 cases (#3, #4), just different target (parent)data node.

suggested CPS-action: Update DataNode with children (in this case a list) all children will be replaced! All unchanged data has to be provided too!

<Need to discuss>


Would this be Create a new entry or is this updating an existing entry in a list?

Check list

, if it does not exists. Update, if it already exists.

6.6./api/sdnc-config-db/v4/gNBDUStore gNBDU, NRCellDU details

{
   "gNBDUId":4
   "gNBId":98763,
   "gNBIdLength":5,
   "pLMNId":"310-410",
   "gNBDUName":"gnduserver4",
   "nFType":"DU",
   "nearRTRICId":22,
   "cellDUList":[
       {
    "cellLocalId":112951561,
    "operationalState":"ENABLED",
    "administrativeState":"UNLOCKED",
    "cellState":"ACTIVE",
    "nRPCI":12,
    "nRTAC":310,
    "resourceType":"PRB",
    "pLMNInfoList":[
        {
            "pLMNId":"310-410",            
            "sNSSAI":{
                "sNSSAI":"001-010000",
                "status":"ACTIVE",
                "configData":{
               "dLThptPerSlice"9,
                "uLThptPerSlice"10
                }
            }
        }
    ]
},
{
    "cellLocalId":112951562,
    "operationalState":"ENABLED",
    "administrativeState":"UNLOCKED",
    "cellState":"ACTIVE",
    "nRPCI":12,
    "nRTAC":310,
    "resourceType":"PRB",
    "pLMNInfoList":[
        {
            "pLMNId":"310-410",            
            "sNSSAI":{
                "sNSSAI":"001-010000",
                "status":"ACTIVE",
                "configData":{
               "dLThptPerSlice"9,
                "uLThptPerSlice"10
                }
            }
        }
    ]
},
{
    "cellLocalId":112951568,
    "operationalState":"ENABLED",
    "administrativeState":"UNLOCKED",
    "cellState":"ACTIVE",
    "nRPCI":12,
    "nRTAC":310,
    "resourceType":"PRB",
    "pLMNInfoList":[
        {
            "pLMNId":"310-410",            
            "sNSSAI":{
                "sNSSAI":"001-010000",
                "status":"ACTIVE",
                "configData":{
               "dLThptPerSlice"9,
                "uLThptPerSlice"10
                }
            }
        }
    ]
}
   ]
}

cps-ran-schema-model

+--rw GNBDUFunction* [idGNBDUFunction]
| +--rw idGNBDUFunction string
| +--rw attributes
| | +--ro gNBId? int64
| | +--rw gNBIdLength? int32
| | +--rw gNBDUId? int64
| | +--rw gNBDUName? string
| +--rw NRCellDU* [idNRCellDU]
| +--rw idNRCellDU string
| +--rw attributes
| +--rw cellLocalId? int32
| +--rw pLMNInfoList* [mcc mnc]
| | +--rw mcc Mcc
| | +--rw mnc Mnc
| | +--rw sNSSAIList* [sNssai]
| | +--rw sNssai string
| | +--rw status? string
| | +--rw configData* [configParameter]
| | +--rw configParameter string
| | +--rw configValue? int64
| +--rw nRPCI? int32
| +--rw nRTAC? Tac

SDN-RNCMP

from CPS point of view this case is similar as previous 2 cases (#3, #4, #5), just different target (parent)data node.

suggested CPS-action: Update DataNode with children (in this case a list) all children will be replaced! All unchanged data has to be provided too!

<Need to discuss>


Would this be Create a new entry or is this updating an existing entry in a list?, if it does not exists. Update, if it already exists.

Will require a new method in cps core to add something to a list.

7./api/sdnc-config-db/v4/rrmPolicyStore network elements' RRMPolicy details

{
    "rrmPolicyID":1,
    "resourceID":"113025289",
    "resourceType":"PRB",
    "sliceType":"eMBB",
    "quotaType":"STRICT",
    "rRMPolicyMaxRatio":0,
    "rRMPolicyMinRatio":10,
    "rRMPolicyDedicatedRatio":0,
    "rRMPolicyMemberList":[
        {
            "pLMNId":"310-400",
            "sNSSAI":"001-010000"
        }
    ]
}

cps-ran-schema-model

+--rw RRMPolicyRatio* [id]
| | +--rw id string
| | +--rw attributes
| | +--rw resourceType? string
| | +--rw rRMPolicyMemberList* [idx]
| | | +--rw idx uint32
| | | +--rw mcc Mcc
| | | +--rw mnc Mnc
| | | +--rw sNSSAI? SNssai
| | +--rw quotaType? QuotaType
| | +--rw rRMPolicyMaxRatio? uint8
| | +--rw rRMPolicyMinRatio? uint8
| | +--rw rRMPolicyDedicatedRatio? uint8

SDN-R

Currently, CPS has no option to replace an entire list without updating its parent which seems what is required here.

<Need to discuss>Is this updating a single entry in a list? We were unable to find rrmPolicyID in the current model.


Update the parent and the child list for rRMPolicyMemberList - will update multiple instances of RRMPolicyRatio



8./api/sdnc-config-db/v4/ranslice-detailsRAN Inventory. Store RAN slice details

{


    "ranNFNSSIId":"3f2f23fa-c567-4dd8-8f15-f95ae3e6fd82",

    "ranNSSIList":[

        "ran4"

    ],

    "nsiList":[

        "nsi1","nsi2"

    ],

    "nSSAIList":[

        "001-010000"

    ],

    "sliceProfilesList":[

        {

            "sliceProfileId""878f32c0-3699-4dbd-95a3-1f01d6c763fd",

            "dLThptPerSlice"25,

            "uLThptPerSlice"30,

            "maxNumberofConns":3000,

            "sNSSAI":"001-010000",

            "pLMNIdList":"310-410"

        }

    ],

    "trackingAreaList":
        "Kingston" ,

    "subnetStatus":"ACTIVE",

    "nsstId":"NSSTID1",

    "sliceType":"eMBB",

    "isShareable":"true"

}

cps-ran-inventory

+--rw ran-inventory
+--rw ran-slices* [rannfnssiid]
+--rw rannfnssiid string
+--rw sliceProfilesList* [sliceProfileId]
| +--rw sliceProfileId string
| +--rw sNSSAI? string
| +--rw maxNumberofUEs? int64
| +--rw latency? int64
| +--rw uLThptPerSlice? int64
| +--rw dLThptPerSlice? int64
| +--rw maxNumberofConns? int64
| +--rw uEMobilityLevel? string
| +--rw resourceSharingLevel? string
| +--rw coverageAreaList* string
| +--rw pLMNIdList* [mcc mnc]
| +--rw mcc Mcc
| +--rw mnc Mnc
+--rw subnetStatus? string
+--rw nsstid? string
+--rw slicetype? string
+--rw isshareable? string

SDN-Rcps core

little difference can be found between the request payload and the yang model.  Yang model is the final one.


For CPS this seems like populating the whole data tree for a given model in one go. i.e. replace all existing data

Modified the YANG model to support storing a list of Slices


Replace datanode and children.

...