...
ESR INFO: Network Type and Vendor, must match with the ESRegistry
(Note: Above block diagram needs update)
Table of Contents
NSMF call NSSMF Adapter APIs
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "allocateCnNssi": { "nsstId": "NSST-C-001-HDBNJ-NSSMF-01-A-ZX", "nssiId": "NSST-C-001-HDBNJ-NSSMF-01-A-ZX", "nssiName": "eMBB-001", "sliceProfile": { "snssaiListsNSSAIList": [ "001-100001" ], "sliceProfileId": "ab9af40f13f721b5f13539d87484098", "plmnIdListpLMNIdList": [ "460-00", "460-01" ], "perfReq": { "perfReqEmbbList ": [ { "activityFactor": 50 } ] }, "maxNumberofUEs": 200, "coverageAreaTAList": [ "1", "2", "3", "4" ], "latency": 2, "resourceSharingLevel": "non-shared" }, "endPoint": { "IpAdress": "", "LogicalLinkId": "", "nextHopInfo": "" }, "nsiInfo": { "nsiId": "NSI-M-001-HDBNJ-NSMF-01-A-ZX", "nsiName": "eMBB-001" }, "scriptName": "CN1", "extension": { "XXX": "XXX" } }, "esrInfo": { "vendor": "huawei", "networkType": "core" }, "serviceInfo": { "serviceInvariantUuid": "e75698d9-925a-4cdd-a6c0-edacbe6a0b51", "serviceUuid": "8ee5926d-720b-4bb2-86f9-d20e921c143b", "globalSubscriberId": "5GCustomer", "nsiId": "NSI-M-001-HDBNJ-NSMF-01-A-ZX", "serviceType": "5G" } "nssiId": "NSST-C-001-HDBNJ-NSSMF-01-A-ZX", "subscriptionServiceType": "5G" } } |
Info:For the value of nsstId, if NSST doesn't contain artifact, the value is NSST UUID, otherwise it is the ID in the artifact file.
Attribute | Optional | Description |
---|---|---|
nssiId | Y | When reuse existing NSSI. |
nsstId | Y | NSST artifact ID |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "allocateTnNssi": { "networkSliceInfos": [ { "snssai": "123", "customer": "company_x", "serviceType": "IoT" } ], "transportSliceNetworks": [ { "connectionLinks": [ { "transportEndpointA": "tranportEp_ID_XXX", "transportEndpointB": "tranportEp_ID_YYY" }, { "transportEndpointA": "tranportEp_ID_AAA", "transportEndpointB": "tranportEp_ID_BBB" } ] }, { "connectionLinks": [ { "transportEndpointA": "tranportEp_ID_CCC", "transportEndpointB": "tranportEp_ID_DDD" }, { "transportEndpointA": "tranportEp_ID_EEE", "transportEndpointB": "tranportEp_ID_FFF" } ] } ] }, "esrInfo": { "vendor": "huawei", "networkType": "transport" }, "serviceInfo": { "serviceInvariantUuid": "e75698d9-925a-4cdd-a6c0-edacbe6a0b51", "serviceUuid": "8ee5926d-720b-4bb2-86f9-d20e921c143b", "globalSubscriberId": "5GCustomer", "serviceTypesubscriptionServiceType": "5G" } }, "nssiId": "NSST-C-001-HDBNJ-NSSMF-01-A-ZX" } } |
Response status:202
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "jobId": "db245365e79c47ed88fcd60caa8f6549" } |
...
Activate NSSI:
...
[AN/TN/CN]
Method | URL |
POST | {adapter-url}/api/rest/provMns/v1/NSS/{ |
snssai}/activation |
REQ example:
JSON Viewer | ||
---|---|---|
| ||
{
"modifyAnNSSI": {
"nssiId": "NSSI-C-001-HDBNJ-NSSMF-01-A-ZX",
"nssiName": "eMBB-001",
"sNssaiList": [
"001-100001"
],
"nsiInfo": {
"nsiId": "NSI-M-001-HDBNJ-NSMF-01-A-ZX",
"nsiName": "eMBB-001"
},
"scriptName": "TN1",
"additionalProperties": {
"XXX": "XXX"
}
},
"esrInfo": {
"vendor": "huawei",
"networkType": "transport"
}
} |
Response status:202
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"jobId": "db245365e79c47ed88fcd60caa8f6549"
} |
Activate NSSI: [AN/TN/CN]
...
Method
...
URL
...
POST
...
{adapter-url}/api/rest/provMns/v1/NSS/{snssai}/activation
Code Block | |||
---|---|---|---|
|
REQ example:
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "actDeActNssi": { "nsiId": "NSI-M-001-HDBNJ-NSMF-01-A-ZX", "nssiId": "NSSI-C-001-HDBNJ-NSSMF-01-A-ZX" }, "esrInfo": { "vendor": "huawei", "networkType": "core/access/transport" }, "serviceInfo": { "serviceInvariantUuid": "e75698d9-925a-4cdd-a6c0-edacbe6a0b51", "serviceUuid": "8ee5926d-720b-4bb2-86f9-d20e921c143b", "globalSubscriberId": "5GCustomer", "serviceTypesubscriptionServiceType": "5G", "nssiId": "NSSI-C-001-HDBNJ-NSSMF-01-A-ZX" } } |
Response status:202
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "actDeActNssi": { "nsiId": "NSI-M-001-HDBNJ-NSMF-01-A-ZX", "nssiId": "NSSI-C-001-HDBNJ-NSSMF-01-A-ZX" }, "esrInfo": { "vendor": "huawei", "networkType": "core/access/transport" }, "serviceInfo": { "serviceInvariantUuid": "e75698d9-925a-4cdd-a6c0-edacbe6a0b51", "serviceUuid": "8ee5926d-720b-4bb2-86f9-d20e921c143b", "globalSubscriberId": "5GCustomer", "serviceType": "5G""subscriptionServiceType": "5G", "nssiId": "NSSI-C-001-HDBNJ-NSSMF-01-A-ZX" } } |
Response status:202
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "deAllocateNssi": { "snssaiList": [ "001-100001" ], "nsiId": "NSI-M-001-HDBNJ-NSMF-01-A-ZX", "nssiId": "NSSI-C-001-HDBNJ-NSSMF-01-A-ZX ", "terminateNssiOption": 0, "scriptName": "CN1", "extension": { "XXX": "XXX" } }, "esrInfo": { "vendor": "huawei", "networkType": "core/access/transport" }, "serviceInfo": { "serviceInvariantUuid": "e75698d9-925a-4cdd-a6c0-edacbe6a0b51", "serviceUuid": "8ee5926d-720b-4bb2-86f9-d20e921c143b", "globalSubscriberId": "5GCustomer", "serviceTypesubscriptionServiceType": "5G", "nssiId": "NSSI-C-001-HDBNJ-NSSMF-01-A-ZX" } } |
Response status:202
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "responseId": "3", "esrInfo": { "vendor": "huawei", "networkType": "core/access/transport" }, "serviceInfo": { "nssiId": "NSSI-M-001-HDBNJ-NSSMF-01-A-ZX", "nsiId": "NSI-M-001-HDBNJ-NSMF-01-A-ZX", "nssiName": "eMBB-001", "sST":"embb", "PLMNIdList":"39-00", "globalSubscriberId": "5GCustomer", "serviceTypesubscriptionServiceType": "5G" "serviceInvariantUuid": "e75698d9-925a-4cdd-a6c0-edacbe6a0b51", "serviceUuid": "8ee5926d-720b-4bb2-86f9-d20e921c143b" } } |
...
JSON Viewer | ||
---|---|---|
| ||
{ "subnetCapabilityQuery": { "subnetTypes": [ "TN-FH","TN-MH","TN-BH" _FH"] }, "esrInfo": { "vendor": "huawei/ONAP_internal", "networkType": "transporttn" } } |
Response example:(TN)
JSON Viewer | ||
---|---|---|
| ||
{ "TN_FH{ "TN-FH":{ "latency": "", "maxThroughput": "" }, "TN-MH":{ "latency": "", "maxThroughput": "" }, "TN-BH":{ "latency": "", "maxThroughput": "" } } |
Response can be a json blob (or parameter list) containing a minimum set of relevant attributes such as the below (based on 3GPP TS 28.541):
...
JSON Viewer |
---|
{
"esrInfo": {
"vendor": "huawei/ONAP_internal",
"networkType": "transport"
}
} |
...
For Jobstatus api, the internal NSSMF needs to update db table resource_operation_status, the external NSSMF needs to provide this api.
External NSSMF
Allocate NSSINSSI (create NSSI with service)
Method | Domain | URL |
---|---|---|
POST | CN | /api/rest/provMns/{apiVersion}/NSS/ |
...
SliceProfiles | ||
POST | AN |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "nsstId": "NSST-C-01V-HBBJ-NSSMF-1-A-ZX", "nssiName": "CN_eMBB_02", "sliceProfile": { "snssaiListsNSSAIList": [ "001-111113" ], "sliceProfileId": "CN-001-111113", "plmnIdListpLMNIdList": [ "460-11" ], "perfReq": { "perfReqEmbbList": [ { "activityFactor": 50, "expDataRateDL": 1000, "expDataRateUL": 1000, "areaTrafficCapDL": 1000, "areaTrafficCapUL": 1000 } ] }, "maxNumberofUEs": 200, "maxNumberofPDUSession": 200, "totalDataVolume": 100, "upfDeployLocation": "customer", "coverageAreaTAList": [ "07D300" ], "latency": 30, "ueMobilityLevel": "stationary", "resourceSharingLevel": "non-shared" }, "nsiInfo": { "nsiId": "NSI-C-002-HBBJ-NSMF-1-A-ZX", "nsiName": "eMBB_02" }, "scriptName": "eMBB_02_base_111113" } |
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "nssiId": "NSSI-C-001-HDBNJ-NSSMF-01-A-ZX", "jobId": "db245365e79c47ed88fcd60caa8f6549" } |
...
DeallocateNSSI (deallocate NSSI with service)
Method | Domain | URL |
---|---|---|
DELETE | CN | /api/rest/provMns/{apiVersion}/NSS/SliceProfiles/{sliceProfileId} |
DELETE | AN |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "nsiId" : "4115d3c8-dd59-45d6-b09d-e756dee9b518", "nssiId" : "1a636c4d-5e76-427e-bfd6-241a947224b0", "snssaiList" : [ "01-6A106175" ], "terminateNssiOption": 0, "scriptName": "CN1" } |
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "jobId": "db245365e79c47ed88fcd60caa8f6549" } |
...
ActivateNSSI(activate NSSI)
Method | URL |
---|---|
PUT | /api/rest/provMns/{apiVersion}/NSS/{snssai}/activation |
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "jobId": "db245365e79c47ed88fcd60caa8f6549" } |
...
DeactivateNSSI(slice proflice(S-NSSAI) deactivate)
Method | URL |
---|---|
PUT | /api/rest/provMns/{apiVersion}/NSS/{snssai}/deactivation |
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "jobId": "db245365e79c47ed88fcd60caa8f6549" } |
...
GetJobStatus (query the operation progress)
Method | URL |
---|---|
GET | /api/rest/provMns/{apiVersion}/NSS/jobs/{jobId}?responseId={responseId} |
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "responseDescriptor": { "status": "processing", "progress": 40, "statusDescription": "Preparing for Instantiating NSSI", "responseId": "2", "responseHistoryList": [ { "status": "processing", "progress": 20, "statusDescription": "Initiating VNF Instance", "responseId": "1" } ] } } |
Internal NSSMF
NSSMF - WIP