Versions Compared

Key

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

...

GAP Analysis SO E2E Service Instance NBI Vs SOL 005 API.


1.     Parameter Parameter Analysis for InstantiateNS

Parameter

SO NBI

Not Present(NP)/Present(P)

Mandatory(M)

/Optional(O)

Significance

nsFlavourId

NP

M

Identifier of the NS deployment flavour to be instantiated

sapData

NP

O

Create data concerning the SAPs of this NS

addpnfData

NP

O

Information on the PNF(s) that are part of this NS.

vnfInstanceData

NP

O

Specify an existing VNF instance to be used in the NS. If needed, the VNF Profile to be used for this VNF instance is also provided.

nestedNsInstanceId

NP

O

Specify an existing NS instance to be used as a nested NS within the NS.

localizationLanguage

Structure

{

"vnfProfileId":"",

    "locationConstraints":{

     "countryCode":"",

        "civicAddressElement":{

               "caType":1,

               "caValue":""

       }

   }

}

Partially Provided. Only vnfProfileId is provided. More details are in following rows


O

Defines the location constraints for the VNF to be instantiated as part of the NS instantiation. An example can be a constraint for the VNF to be in a specific geographic location.

localizationLanguage.vnfProfileId

P

M


localizationLanguage.locationConstraints

P

O


localizationLanguage.locationConstraints.countryCode

NP

M


localizationLanguage.locationConstraints.civicAddressElement

NP

M


additionalParamsForNs

P

"requestInputs"

Note:

Present under

service.parameters.requestInputs


O

Allows the OSS/BSS to provide additional parameter(s) at the NS level (as opposed to the VNF level, which is covered in additionalParamsForVnf).

additionalParamsForVnf

P

requestInputs

Note:

Present under

service.parameters.resources.requestInputs


O

Allows the OSS/BSS to provide additional parameter(s) per VNF instance (as opposed to the NS level, which is covered in additionalParamsForNs). This is for VNFs that are to be created by the NFVO as part of the NS instantiation and not for existing VNF that are referenced for reuse.

startTime

NP

O

Timestamp indicating the earliest time to instantiate the NS.

nsInstantiationLevelId

NP

O

Identifies one of the NS instantiation levels declared in the DF applicable to this NS instance. If not present, the default NS instantiation level as declared in the NSD shall be used.

additionalAffinityOrAntiAffiniityRule

NP

O

Specifies additional affinity or anti-affinity constraint for the VNF instances to be instantiated as part of the NS instantiation. Shall not conflict with rules already specified in the NSD.

       

2.        Parameter Parameter Analysis for createNS

Parameter

SO NBI

Not Present(NP)

/Present(P)

Mandatory(M)

/Optional(O)

Significance

nsdId

P (serviceUuid)

M

Identifier of the NSD that defines the NS instance to be created.

nsName

P (name)

M

Human-readable name of the NS instance to be created

nsDescription

P (description)

M

Human-readable description of the NS instance to be created.


3.        Parameter Parameter Analysis for terminateNS

Parameter

SO NBI

Not Present(NP)

/Present(P)

Mandatory(M)

/Optional(O)

Significance

terminationTime

NP

O

Timestamp indicating the end time of the NS, i.e. the NS will be terminated automatically at this timestamp. Cardinality "0" indicates the NS termination takes place immediately.

...

#

SO NBI API

SO NBI Payload

SOL API

SOL 005 Payload

Identified GAPs

1.

Create NS and Instance NS
(Create NS call to SO do both create and Instantiate)


/onap/so/infra/e2eServiceInstances/{version}



Code Block
themeMidnight
firstline1
titleModel
linenumberstrue
collapsetrue
{
   "service":{
      "name":"test2",
      "description":"test2",
      "serviceInvariantUuid":"b412dbf3-d410-4124-8a5b-7076e6708ee6",
      "serviceUuid":"af392bf6-be0d-4ba4-921f-a83255b439a9",
      "globalSubscriberId":"Demonstration",
      "serviceType":"vCPE",
      "parameters":{
         "locationConstraints":[
         ],
         "resources":[
            {
               "resourceName":"vcpe_e2e_vnf",
               "resourceInvariantUuid":"a5028cc1-7316-48ea-b623-f7190e509905",
               "resourceUuid":"3cb66f1e-3127-4d5d-8e9d-208758137154",
               "resourceCustomizationUuid":"4d3a835c-29c8-4a63-83a4-50de5f7ffe16",
               "parameters":{
                  "locationConstraints":[
                     {
                        "vnfProfileId":"9c1a95db-a620-4a78-bb59-96b34a828ba2",
                        "locationConstraints":{
                           "vimId":"CloudOwner_regionOne"
                        }
                     },
                     {
                        "vnfProfileId":"4e9c2017-5dad-487a-976b-999a34f8291f",
                        "locationConstraints":{
                           "vimId":"CloudOwner_regionOne"
                        }
                     },
                     {
                        "vnfProfileId":"237429bb-a4e7-45c4-ba93-75235e45b004",
                        "locationConstraints":{
                           "vimId":"CloudOwner_regionOne"
                        }
                     },
                     {
                        "vnfProfileId":"e78d6821-1498-4853-8fae-ebd6b5975d68",
                        "locationConstraints":{
                           "vimId":"CloudOwner_regionOne"
                        }
                     },
                     {
                        "vnfProfileId":"fd29e0fd-8766-4000-a1c8-e340ae0ee2fa",
                        "locationConstraints":{
                           "vimId":"CloudOwner_regionOne"
                        }
                     }
                  ],
                  "resources":[
                  ],
                  "requestInputs":{
                  }
               }
            }
         ],
         "requestInputs":{
            "nsd0_providing_service_uuid":"5791dbeb-19d4-43e8-bf44-5b327ccf6bca",
            "max_instances":"1",
            "orchestrator": "VFC"
         }
      }
   }
}



/ns_instances

Create NS Payload

Code Block
themeMidnight
firstline1
titleModel
linenumberstrue
collapsetrue
{
  "nsdId": "",
  "nsName": "",
  "nsDescription": ""
}



  • There is sufficient data for create NS call in SOL005.

2.

Query NS details

/onap/so/infra/e2eServiceInstances/{version}/{serviceId}/operations/{operationId}

No Payload


/ns_instances/{nsInstanceId}No PayloadNo Gap identified
3.

Terminate NS

/onap/so/infra/e2eServiceInstances/{version}/{serviceId}


Code Block
themeMidnight
firstline1
titleModel
linenumberstrue
collapsetrue
{
   "globalSubscriberId":"Demonstration",
   "serviceType":"vCPE"
}


/ns_instances/{nsInstanceId}/terminate


Code Block
themeMidnight
firstline1
titleModel
linenumberstrue
collapsetrue
{
"terminationTime":""
}


No Gap Identified
4.

InstantiateNS

/onap/so/infra/e2eServiceInstances/{version}

Same API for Create and Instantiate/ns_instances/{nsInstanceId}/instantiate


Code Block
themeMidnight
firstline1
titleModel
linenumberstrue
collapsetrue
{
   "nsFlavourId":"",
   "sapData":[
      {
         "sapdId":"",
         "sapName":"",
         "description":"",
         "sapProtocolData":{
            "layerProtocol":"IP_OVER_ETHERNET",
            "ipOverEthernet":{
               "macAddress":"",
               "ipAddresses":{
                  "type":"",
                  "fixedAddresses":"",
                  "numDynamicAddresses":1,
                  "addressRange":{
                     "minAddress":"",
                     "maxAddress":""
                  },
                  "subnetId":""
               }
            }
         }
      }
   ],
   "addpnfData":[
      {
         "pnfId":"",
         "pnfName":"",
         "pnfdId":"",
         "pnfProfileId":"",
         "cpData":[
            {
               "cpInstanceI16":"",
               "cpdId":"",
               "cpProtocolData":{
                  "layerProtocol":"IP_OVER_ETHERNET",
                  "ipOverEthernet":{
                     "macAddress":{

                     },
                     "ipAddresses":{
                        "type":"",
                        "fixedAddresses":"",
                        "numDynamicAddresses":1,
                        "addressRange":{
                           "minAddress":"",
                           "maxAddress":""
                        },
                        "subnetId":""
                     }
                  }
               }
            }
         ]
      }
   ],
   "vnfInstanceData":[
      {
         "vnfInstanceId":"",
         "vnfProfileId":""
      }
   ],
   "nestedNsInstanceId":[

   ],
   "localizationLanguage":[
      {
         "vnfProfileId":"",
         "locationConstraints":{
            "countryCode":"",
            "civicAddressElement":{
               "caType":1,
               "caValue":""
            }
         }
      }
   ],
   "additionalParamsForNs":{

   },
   "additionalParamsForVnf":[
      {
         "vnfProfileId":"",
         "additionalParams":{

         }
      }
   ],
   "startTime":"",
   "nsInstantiationLevelId":"",
   "additionalAffinityOrAntiAffiniityRule":[
      {
         "vnfdId":[

         ],
         "vnfProfileId":[

         ],
         "vnfInstanceId":[

         ],
         "affinityOrAntiAffiinty":"",
         "Scope":""
      }
   ]
}


For instantiate NS the following are the data that is missing in SO NBI
  • nsFlavorId
  • sapData
  • pnfDetails

...