Versions Compared

Key

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

Slice-analysis MS: 

 

API Definition 

Get utilization of Slices 

Interface definition 

Description 

Content-Type 

application/json 

Operation 

GET 

URI 

/api/v1/slices-config 

Request Body 

Attribute 

Required 

Type 

Description 

sliceIdentifiers 

Y 

List<String> 

Identifier for the specific type of slices 

configParams 

Y 

List<String> 

configuration fields expected from Slice Analysis MS   

Request Body - Sample 

{ 

    "sliceIdentifiers": [ 

        "7e000ddc-7ba1-4fdb-a7ce-8f0a65ab3282", 

        "cb51e744-bfcf-4188-885a-e3e3c51ed53e" 

    ], 

    "configParams": [ 

        "dLThptPerSlice", 

        "uLThptPerSlice", 

        "maxNumberOfConns" 

    ] 

} 

 

Response Codes 

Code 

Description 

200 

Data returned successfully 

400 

Bad Request (Error in request attributes) 

500 

Internal server error 

Response Body 

Attribute 

Required 

Type 

Description 

sliceConfigResponse 

Y 

SliceConfigResponse 

Response body containing the configuration details for the requested slices 

SliceConfigResponse - Sample Response 

Response Body - Sample 

{ 

    "sliceConfigDetails": [{ 

        "sliceIdentifier""5d9b3293-fa20-4776-bb41-92ba5e384419", 

        "aggregatedConfig": { 

            "dLThptPerSlice":27, 

            "uLThptPerSlice":30, 

            "maxNumberOfConns":300 

        } 

    }, 

    { 

        "sliceIdentifier""e316f4b2-01fa-479a-8522-64fe9c0c2971", 

        "aggregatedConfig": { 

            "dLThptPerSlice":40, 

            "uLThptPerSlice":25, 

            "maxNumberOfConns":400 

        } 

    }] 

} 

 

NOTE: sliceIdentifier – can be SNSSAI/slice-profile-id 

 

Updates to Slice-Analysis: 

Add/Update the changes in controller/service classes. 

  1. If ‘sliceIdentifier’ is sNSSAI 

       2. Send request to DES to collect PM data. 

Uplink Throughput Data 

curl --header "Content-type: application/json" --request POST --data '{}' http://localhost:1681/datalake/v1/exposure/slice_config_ul -i 

{"result":[{"measValue":"84","measType":"SM.PrbUsedUl.001-00110"}],"request":{},"result_count":1} 


Downlink Throughput Data 

curl --header "Content-type: application/json" --request POST --data '{}' http://localhost:1681/datalake/v1/exposure/slice_config_dl -i 

{"result":[{"measValue":"75","measType":"SM.PrbUsedDl.001-00110"}],"request":{"interval":"10"},"result_count":1}


      3. Filter based on required SNSSAI(received in request) and aggregate UL and DL throughput for it.

      4. Step 2 handled in for-loop for each ‘sliceIdentifier’(‘sliceIdentifier’ is an array)

      5. Model the result (as per the sample response shown above) and send back the response.

      6. If ‘sliceIdentifier’ is slice-profile-id

    1. Use configDb/CPS to get the SNSSAI from the slice-profile-id received (from request).
    2. Continue from step 2. 

DES: 

Possible DES template: 

Data to be inserted in postgres DB:

insert into data_exposure(id, note,sql_template,db_id) values ('slice_config_ul','pm_message', 'select event.perf3gppFields.measDataCollection.measInfoList[1].measTypes.sMeasTypesList[2] as measType, event.perf3gppFields.measDataCollection.measInfoList[1].measValuesList[1].measResults[2].sValue as measValue from datalake',3); 

 

insert into data_exposure(id, note,sql_template,db_id) values ('slice_config_dl','pm_message', 'select event.perf3gppFields.measDataCollection.measInfoList[1].measTypes.sMeasTypesList[1] as measType, event.perf3gppFields.measDataCollection.measInfoList[1].measValuesList[1].measResults[1].sValue as measValue from datalake ',3); 

 

(order by ‘startEpochMicrosec’ can be used to get latest PM Data from DB, as well as LIMIT(number of data received at a time))