Versions Compared

Key

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

SDN-R is modified for

  • RANSlice Instantiation
  • RANSlice Modification
  • RANSlice Activation
  • RANSlice Deactivation
  • RANSlice Termination
  • Closed Loop (covers intelligent slicing)

Refer the end-to-end RAN Slicing flow: https://wiki.onap.org/display/DW/RAN+Slicing+Flow

Assumptions & Limitations:

  1. PLMNInfo
    1. sNSSAI is configured in NRCellDU, NRCellCU, gNBCUUPFunction
    2. ConfigDB updates are not handled for activate and deactivate flows
  2. RRMPolicy
    1. rRMPolicyDedicatedRatio is alone considered for this release which indicates that resource sharing is not allowed across the RRMPolicymemberslist
    2. RRMPolicy update is handled for NRCellDU, NRCellCU, gNBCUUPFunction
  3. YANG Model
    1. NearRTRIC sliceprofile is not updated to Netconf in G-release

RAN Slice Lifecycle Management

Image Added

SDNR Development

Image Added

DMaapInterfaces Interfaces & I/O parameters:

SO (RAN NSSMF) → SDN-C :

...

      1. RAN-Slice-Mgmt – Requests from SO are posted at this topic. SDN-R polls the messagesTopic for Closed loop & intelligent slicing – TBD (Existing/New)The same topic is used for all RPCs

Asynchronous Response: (Callback to SO) 

      1. Yet to be confirmed (Topic/API)
      1. Call back to SO is sent via Rest API

DMaap MessagesRequest & Response Payload:

RAN NF NSSI Allocation

Code Block
titleRequest
collapsetrue
{
	"body": {
		"input": {
			"requestIdaction": "allocate",
			"payload": "{ \"input\": { \"sliceProfile\": { \"sliceProfileId\": \"1002\", \"sNSSAI\": \"2002\", \"maxNumberofUEs\": 20000, \"latency\": 10, \"uLThptPerSlice\": 3000, \"dLThptPerSlice\": 3000, \"maxNumberofConns\": 4000, \"coverageAreaList\": [\"Kingston\"], \"uEMobilityLevel\": \"\", \"resourceSharingLevel\": \"\", \"pLMNIdList\": [\"310-410\"] }, \"RANNSSIId\": \"\", \"RANNFNSSIId\": \"\", \"callbackURL\": \"\", \"additionalproperties\": { } } }",
			"common-header": {
				"timestamp": "2020-09-30T09:13:37.368Z",
				"api-ver": "1.0",
				"originator-id": "testing",
				"request-id": "9d2d790e-a5f0-11e8-98d0-529269fb1459",
				"sub-request-id": "",
				"flags": {
					"mode": "EXCLUSIVE",
					"force": "TRUE",
					"ttl": "0"
				}
			}
		}
	},
	"version":  "trackingArea":"",
  "shareability":"",
  "NSIId":"",
  "RANNSSIId":"",
  "RANNFNSSIId":"",
  "s-NSSAI":"",
  "NSSTId":"",
  “callbackURL”:””,
   “additionalproperties”:{
     “resourceConfig”:{
      //This maps contains value only on closed loop scenario
"1.0",
	"rpc-name": "instantiateRANSlice",
	"correlation-id": "9d2d790e-a5f0-11e8-98d0-529269fb1459-1",
	"type": "request"
}

RAN NF NSSI Modification

Requests available for below actions:

  1. modify-allocate
  2. modify-deallocate
  3. closed loop
  4. intelligent slicing
Code Block
titleRequest
collapsetrue
modify-allocate

{
    "body": {
        "input": {
            "action": "modify-allocate",
            "payload": "{\"input\":{\"sliceProfile\":{\"sliceProfileId\":\"b594-e98r-c7f2-ij78\",\"sNSSAI\":\"101-10000\",\"maxNumberofUEs\": 5000, \"uLThptPerSlice\":3000,\"dLThptPerSlice\":3000,\"maxNumberofConns\":4000},\"RANNFNSSIId\":\"ab9af40f13f721b5f13539d87484098\",\"callbackURL\":\"http://so-bpmn-infra.onap:8081/mso/WorkflowMessage/AsyncSdnrResponse/9d2d790e-a5f0-11e8-98d0-529269fb1459\",\"globalSubscriberId\":\"5GCustomer\",\"subscriptionServiceType\":\"5G\",\"additionalproperties\":{\"resourceConfig\":{}}}}",
            "common-header": {
                "timestamp": "2020-09-30T09:13:37.368Z",
                "api-ver": "1.0",
                "originator-id": "testing",
                "request-id": "9d2d790e-a5f0-11e8-98d0-529269fb1459",
                "sub-request-id": "",
                "flags": {
                    "mode": "EXCLUSIVE",
                    "force": "TRUE",
                    "ttl": "0"
                }
            }
        }
    },
     “action”:” allocate, modify-allocate, modify-deallocate, deallocate, activate, deactivate, reconfigure”
}

Code Block
titleResponse
{
  "status": "",
  "reason": {},
  "requestId": "",
  "action": ""
}

RAN NF NSSI Termination

Code Block
titleRequest
{
  "RANNFNSSIId": "",
  "requestId": "",
  “callbackURL”:””,
  "action": ""
}
"version": "1.0",
    "rpc-name": "instantiateRANSlice",
    "correlation-id": "9d2d790e-a5f0-11e8-98d0-529269fb1459-1",
    "type": "request"
}


modify-deallocate

{
    "body": {
        "input": {
            "action": "modify-deallocate",
            "payload": "{\"input\":{\"sliceProfile\":{\"sliceProfileId\":\"b594-e98r-c7f2-ij78\",\"sNSSAI\":\"001-100001\",\"maxNumberofUEs\": 5000, \"uLThptPerSlice\":3000,\"dLThptPerSlice\":3000,\"maxNumberofConns\":4000},\"RANNFNSSIId\":\"ab9af40f13f721b5f13539d87484098\",\"callbackURL\":\"\",\"globalSubscriberId\":\"5GCustomer\",\"subscriptionServiceType\":\"5G\",\"additionalproperties\":{\"resourceConfig\":{}}}}",
            "common-header": {
                "timestamp": "2020-09-30T09:13:37.368Z",
                "api-ver": "1.0",
                "originator-id": "testing",
                "request-id": "9d2d790e-a5f0-11e8-98d0-529269fb1459",
                "sub-request-id": "",
                "flags": {
                    "mode": "EXCLUSIVE",
                    "force": "TRUE",
                    "ttl": "0"
                }
            }
        }
    },
    "version": "1.0",
    "rpc-name": "instantiateRANSlice",
    "correlation-id": "9d2d790e-a5f0-11e8-98d0-529269fb1459-1",
    "type": "request"
}


Closed Loop

{
	"body": {
		"input": {
			"action": "reconfigure",
			"payload": "{ \"input\": { \"sliceProfile\": { \"sliceProfileId\": \"b594-e98r-c7f2-ij78\", \"sNSSAI\": \"100-10000\" }, \"RANNFNSSIId\": \"\", \"callbackURL\": \"http:\/\/so-bpmn-infra.onap:8081\/mso\/WorkflowMessage\/AsyncSdnrResponse\/9d2d790e-a5f0-11e8-98d0-529269fb1459\", \"additionalproperties\": { \"resourceConfig\": { \"data\": [{ \"nearRTRICId\": \"11\", \"dLThptPerSlice\": 50, \"uLThptPerSlice\": 40 }, { \"nearRTRICId\": \"22\", \"dLThptPerSlice\": 50, \"uLThptPerSlice\": 30 } ] } } } }",
			"common-header": {
				"timestamp": "2020-09-30T09:13:37.368Z",
				"api-ver": "1.0",
				"originator-id": "testing",
				"request-id": "9d2d790e-a5f0-11e8-98d0-529269fb1459",
				"sub-request-id": "",
				"flags": {
					"mode": "EXCLUSIVE",
					"force": "TRUE",
					"ttl": "0"
				}
			}
		}
	},
	"version": "1.0",
	"rpc-name": "instantiateRANSlice",
	"correlation-id": "9d2d790e-a5f0-11e8-98d0-529269fb1459-1",
	"type": "request"
}



Intelligent Slicing

{
	"body": {
		"input": {
			"action": "reconfigure",
			"payload": "{ \"input\": { \"sliceProfile\": { \"sliceProfileId\": \"b594-e98r-c7f2-ij78\" }, \"RANNFNSSIId\": \"\", \"callbackURL\": \"http:\/\/so-bpmn-infra.onap:8081\/mso\/WorkflowMessage\/AsyncSdnrResponse\/9d2d790e-a5f0-11e8-98d0-529269fb1459\", \"additionalproperties\": { \"resourceConfig\":  { \"snssai\": \"0001-0111\", \"data\": [{ \"gNBCUName\": \"cucpName\", \"nearRTRICId\": \"NearRTRIC1\", \"cellCUList\": [{ \"cellLocalId\": 111, \"configData\": { \"maxNumberofConns\": \"20\", \"predictedMaxNumberofConns\": \"25\", \"lastUpdatedTS\": \"yyyy\/MM\/dd HH:mm:ss\" } }, { \"cellLocalId\": 112, \"configData\": { \"maxNumberofConns\": \"20\", \"predictedMaxNumberofConns\": \"25\", \"lastUpdatedTS\": \"yyyy\/MM\/dd HH:mm:ss\" } } ] }, { \"gNBCUName\": \"cucpName2\", \"nearRTRICId\": \"NearRTRIC2\", \"cellCUList\": [{ \"cellLocalId\": 113, \"configData\": { \"maxNumberofConns\": \"20\", \"predictedMaxNumberofConns\": \"25\", \"lastUpdatedTS\": \"yyyy\/MM\/dd HH:mm:ss\" } }, { \"cellLocalId\": 114, \"configData\": { \"maxNumberofConns\": \"20\", \"predictedMaxNumberofConns\": \"25\", \"lastUpdatedTS\": \"yyyy\/MM\/dd HH:mm:ss\" } } ] } ] }  } } }",
			"common-header": {
				"timestamp": "2020-09-30T09:13:37.368Z",
				"api-ver": "1.0",
				"originator-id": "testing",
				"request-id": "9d2d790e-a5f0-11e8-98d0-529269fb1459",
				"sub-request-id": "",
				"flags": {
					"mode": "EXCLUSIVE",
					"force": "TRUE",
					"ttl": "0"
				}
			}
		}
	},
	"version": "1.0",
	"rpc-name": "instantiateRANSlice",
	"correlation-id": "9d2d790e-a5f0-11e8-98d0-529269fb1459-1",
	"type": "request"
}

RAN NF NSSI Termination

Code Block
titleRequest
collapsetrue
{
	"body": {
		"input": {
			"CommonHeader": {
				"TimeStamp": "2018-11-30T09:13:37.368Z",
				"APIver": "1.0",
				"RequestID": "9d2d790e-a5f0-11e8-98d0-529269fb1459",
				"SubRequestID": "1",
				"RequestTrack": {},
				"Flags": {}
			},
			"Action": " deallocate ",
			"Payload": "{\"input\":{\"RANNFNSSIId\":\"79f2ce09-3de3-44cb-aa05-cae0cbe8f778\",\"callbackURL\":\"\",\"sNSSAI\":\"001-100001\",\"sliceProfileId\":\"4b7c3c8f-eb79-401a-b40b-290d74f5b189\",\"additionalproperties\":{}}}"
		}
	},
	"version": "1.0",
	"rpc-name": "terminateRANSliceInstance",
	"correlation-id": "9d2d790e-a5f0-11e8-98d0-529269fb1459-1",
	"type": "request"
} 
Code Block
titleResponse
{
  "status": "",
  "reason": {},
  "requestId": "",
  "action": ""
}


RAN NF NSSI Activation

Code Block
titleRequest
collapsetrue
{
    "body": {
        "input": {
            "action": "activate",
            "payload": "{\"input\":{\"sliceProfileId\":\"1002\",\"RANNFNSSIId\":\"ccb2f161-f1a7-4f9e-aa2b-9e2965e3c8a0\",\"callbackURL\":\"http://so-bpmn-infra.onap:8081/mso/WorkflowMessage/SDNRActivateResponse/ecf745ab-167d-49b3-8f62-8218f2e6eb8a\",\"sNSSAI\":\"101-10000\"}}",
            "common-header": {
                "timestamp": "2020-09-30T09:13:37.368Z",
    "requestId            "api-ver": "1.0",
  “callbackURL”:””,
  "action              "request-id": "ecf745ab-167d-49b3-8f62-8218f2e6eb8a",
                "sub-request-id": "1"
}
Code Block
titleResponse
{
  "status            }
        }
    },
    "version": "1.0",
    "reasonrpc-name": {}"activateRANSliceInstance",
    "requestIdcorrelation-id": "ecf745ab-167d-49b3-8f62-8218f2e6eb8a",
    "actiontype": "request"
}


RAN NF NSSI Deactivation


Code Block
titleRequest
collapsetrue
{
    "body": {
        "input": {
            "action": "deactivate",
            "payload": "{\"input\":{\"sliceProfileId\":\"1002\",\"RANNFNSSIId\":\"ccb2f161-f1a7-4f9e-aa2b-9e2965e3c8a0\",\"callbackURL\":\"http://so-bpmn-infra.onap:8081/mso/WorkflowMessage/SDNRActivateResponse/ecf745ab-167d-49b3-8f62-8218f2e6eb8a\",\"sNSSAI\":\"101-10000\"}}",
            "common-header": {
                "timestamp": "2020-09-30T09:13:37.368Z",
                "api-ver": "1.0",
  "requestId              "request-id": "ecf745ab-167d-49b3-8f62-8218f2e6eb8a",
                "sub-request-id": "1"
            }
        }
    },
    "version": "1.0",
    "rpc-name": "activateRANSliceInstance",
  “callbackURL”:””  "correlation-id": "ecf745ab-167d-49b3-8f62-8218f2e6eb8a",
    "actiontype": "request"
}

Callback response to SO is sent through REST API.Callback:

EndPoint URL: Comes in SO request

Code Block
titleCallback Response
collapsetrue
{
  "status": "",
  "reason": {},
  "requestId": "",
  "action": "",
  "nfIds":{
	"CUCPs":[],
    "CUUPs":[],
     "DUs":[]
   }
}

CUCPs - List of gNBCUNames configured as part of this request

CUUPs - List of gNBCUUPId

DUs - List of gNBDUId

DMaap Consumer – RPC Mapping 

Scenarios

Action in DMaap message

RPC to invoke

ConfigureNSSI

allocate, modify-allocate, modify-deallocate, reconfigure

instantiateRANSlice

terminateNSSI

terminate

terminateRANSliceInstance

activateNSSI

activate

activateRANSliceInstance

deactivateNSSI

deactivate

activateRANSliceInstance

 RPCs Supported 

  1. configureNearRTRIC
  2. configureCU
  3. configureDU
  4. configureRANSliceInstance
  5. instantiateRANSlice
  6. terminateRANSliceInstance
  7. determineRANSliceResources - Not covered in G-release
  8. activateRANSliceInstance
  9. deactivateRANSliceInstance -  As this RPC repeats most of the actions of activateRANSliceInstance, it is clubbed with activateRANSliceInstance
  10. CMNotify - Not covered in G-release

RPCs 1,2,3, & 4 are grouped and implemented as a single RPC 'instantiateRANSlice'.

RPCs in detail

1. InstantiateRANSlice

        This RPC,

           a) Allocates resources for a slice subnet instance

           b) Configures NSSAI in RAN slice resources – cells, CU’s, DU’s, Near-RT RIC

           c) Updates Slice details in Config DB 

      Request: Dmaap payload as string

      Actions supported: allocate, modify-allocate, modify-deallocate, reconfigure

      allocate - new RAN Slice created across RAN manged elements covered in the Tracking Area (TA) in the DMAAP request. Managed elements for TA is obtained from ConfigDB.

      modify-allocate - sharing existing RAN slice for a new sNSSAI

      modify-deallocate - sNSSAI is removed from the existing RAN Slice when the RAN Slice is shared among more than one sNSSAI and it cannot be terminated. terminateRANSliceInstance RPC is used to          handle this action.

      reconfigure - indicates closed loop or intelligent slicing. It is differentiated, based on the resourceConfig received in the Dmaap payload.

 2. ActivateRANSliceInstance

          a) Update the RAN resources status as ‘activated’. This is needed to enable the traffic flow

          b) Currently, the status of sNSSAI is set to 'ÁCTIVE' for activate, 'INACTIVE' for deactivate

          c) Config DB will be updated

      Request: Dmaap payload as string     

      Action : activate, deactivate

4. TerminateRANSliceInstance

          a) Deallocate resources for a slice subnet instance

          b) Disassociate xNF’s to a slice subnet instance

          c) Remove RAN slice from Config DB

      Request: Dmaap payload as string

      Action: terminate

 Config DB updates

RPC

Entities to update

instantiateRANSlice

NearRTRIC, GNBDUFunction,  NRCellDU,  RRMPolicy, GNBCUCPFunction,

GNBCUUPFunction,  NRCellCU, RANSliceInventory, SliceProfile

terminateRANSlice

NearRTRIC, GNBDUFunction,  NRCellDU,  RRMPolicy, GNBCUCPFunction,

GNBCUUPFunction,  NRCellCU, RANSliceInventory, SliceProfile

Refer Config DB for schema details.