Versions Compared

Key

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

...

Based on the input from ECOMP Service IM input, ONAP R2+ Service IM is designed as below class diagram:

Image RemovedImage Added

  • In this diagram, both design time and run time service related objects are depicted.

  • For the design time section on the left side,

    • ServiceCatalogItem ServiceDescriptor is used to model the design time representation of a service. 

      • Nested Service Design is supported by the association "ServiceComprisedOf", as a ServiceCatalogItem can as a ServiceDescriptor can be composed of other ServiceCatalogItemServiceDescriptor(s).

      • Complicated Service Design is supported by the association "ServiceComposedOf", as a ServiceCatalogItem can ServiceDescriptor  can be composed of  at least 1 or more ServiceComponentCatalogItemServiceComponentDescriptor(s).

      • Hybrid Service Design is also supported, as a part of a ServiceCatalogItem ServiceDescriptor can be composed of ServiceComponentCatalogItemServiceComponenDescriptor(s) and part of it can be composed of other ServiceCatalogItemServiceDescriptor(s).
    • ServcieComponentItem ServcieComponentDescriptor is used to model the design time represenation representation of a service component or network service.
      • Nested Service Component Design is supported by the association "ServiceComponentComprisedOf", as a ServiceComponentCatalogItem can as a ServiceComponentDescriptor can be composed of other ServiceComponentCatalogItemServiceComponentDescriptor(s).

      • Complicated Service Component Design is supported by the association "ServiceComponentComposedOf", as a ServiceComponentCatalogItem ServiceComponentDescriptor can be composed of  at least 1 or more ResourceCatalogItemResourceDescriptor(s).

      • Hybrid Service Component Design is also supported, as a part of a ServiceComponenetCatalogItem ServiceComponenetDescriptor can be composed of ServiceComponentCatalogItemServiceComponentDescriptor(s) and part of it can be composed of other ResourceCatalogItemResourceDescriptor(s).

    • ResourceCatalogItem ResourceDescriptor is used to model the design time representation of a resource.

      • Cross reference in resource design is supported via the association "ResourceCatalogReferencesResourceReferences".

  • For the run time section on the right side, similiar layering from top to bottom of instance items and relationship between is modeled, as the result of the model-driven instantiation process from a given ServiceCatalogItemServiceDescriptor. In particular,

    • Based on 1 ServiceCatalogItemServiceDescriptor, 0 or more ServiceInstance(s) can be instantiated, which also instantiate the association "ServiceCatalogItemMadeAvailableAsServiceDescriptorMadeAvailableAs". A ServiceInstance can comprise other ServiceInstance(s) or ServiceComponentInstance(s), as modeled by the associations "ServiceComprisedOf" and "ServiceComposedOf".
    • Based on 1 ServiceComponentCatalogItemServiceComponentDescriptor, 0 or more ServiceComponentInstance(s) can be instantiated, which also instantiate the association "ServiceComponentCatalogItemMadeAvailableAsServiceComponentDescriptorMadeAvailableAs". A ServiceComponentInstance can comprise other ServiceComponentInstance(s) or ResourceInstance(s), as modeled by the associations "ServiceComponentComprisedOf" and "ServiceComponentComposedOf".
    • Based on 1 ResourceCatalogItemResourceDescriptor, 0 or more ResourceInstance(s) can be instantiated, which also instantiates the association "ResourceCatalogItemMadeAvailableAsResourceDescriptorMadeAvailableAs". A ResourceInstance can reference other ResourceInstance(s).

...

  • Products are made up of services (ServiceCatalogItems on ServiceDescriptor on the design side, ServiceInstances on the runtime side).
  • Services are made up of service components. A service component is not seen or known to products like SID ResourceFacingServices are not seen by products. Services can be composed of other Services and may be referred to as complex services. Network Service, or WAN service are as the service components in the service.
  • ServiceComponents are made up of ServiceComponents or resources.  The resources include VNF, PNF, VL, etc.

...

Take the ONAP R1 VoLTE use case as an example.  The E2E VoLTE service can be designed as the service; The IMS, EPC, and WAN can be designed as the service components.  The HSS, CSCF, TAS, SBC, MME, and SPGW etc, and the link between them can be design as the resources.


Image AddedImage Removed


Attributes

ServiceDesc (ServiceCatalogItem)  (Note from Chesla:  

...

 A&AI has a model/model-ver concept which captures the descriptor from ASDC. The model vertex type contains the model-invariant-id and the model-type (e.g., service or resource).  The model-ver vertex type contains the model-version-id, the model-version, the model-name, and a model-description.

...

In short, A&AI split the invariant part of the model away from the version-dependent pieces.  In this manner, you can relate ALL versions of a model to something  by using the model-invariant-id (e.g., get me all the resources for this model) or you can relate a specific version of a model (e.g., get me all resources for this version of the model) by using the model-version-id in combination with the model-invariant-id.  Recall that A&AI stores the model/model-ver elements as "JOIN" keys to the SDC descriptor world.  A&AI does not try to capture all the details of the models.

...

It's not clear whether you can equate model-name to service-name or model-description to service-description.  The model-name really names the MODEL, not necessarily the service.  The same applies to the service-description.

  • ServiceDescriptor

ALSO NOTE as referenced on a prior wiki page:  The A&AI service vertex type is deprecated and should not be used in ONAP.)

R2+ AttributesDescriptionProducerConsumer

SDC(Service)

AAI(
service
model+model-ver)ECOMP IM(ServiceCatalogItem)
serviceInvariantUUID
InvariantUUIDConstant identifier of the service modelSDCSDC/SO/UUI/VIDinvariantUUIDmodel.model-invariant-id for that service model
serviceUUID

UUID

Versioned identifier of the service model (this uuid is changed for every major version of the service)

SDCSDC/SO/UUI/VIDUUID
service-id

model-ver.model-version-id for that service model

ServiceUUID 
serviceName 
name 

The name of the service model designed

SDCSDC/SO/UUI/VIDnamemodel-ver.model-name for that service model
ServiceDisplayName 
serviceDescription
description

The description of the service model designed

SDCSDC/SO/UUI/VID
description
service-
description

model-ver.model-description for that service model

ServiceDescription 
category

A predefined list which identifies the construct's category. There is a predefined list of service categories

SDCSDC/SO/UUI/VIDCategoryn/aCategory  
serviceVersion
versionThe service model versionSDCSDC/SO/UUI/VID

service-version


model-ver.model-version for that service model

Version 
serviceTypeAn optional string field defining a generic type (like category) of the service. E.g. this field can be used for defining the service as “TRANSPORT”.SDCSDC/SO/UUI/VIDserviceType

serviceRoleAn optional string field for shortcode that defines the function that the service is providing. E.g. “MISVPN” or “AIM”.SDCSDC/SO/UUI/VIDserviceRole

icon

The icon path of the service

SDCSDC/SO/UUI/VID
n/aIcon 
serviceComponentUUIDThe service component descriptor UUIDs that the service includes (relationhip to Service Component)SDCSDC/SO/UUI/VID
nested model (either service or resource type)typerolefunction




  • ServiceInstance

R2+ Attributes
DescriptionProducerConsumerAAI(ServiceInstance)
serviceInstanceIdservice-Instance-Id
Uniquely identifies this instance of a serviceSOAAI/UUI/VID/SO/Policy/Holmesservice-Instance-Id
serviceInstanceNameservice-instance-name
The name assigned to the service-instanceUUI/VID/SOAAI/UUI/VID/SOservice-instance-name
service-instance-descprtion
The description assigned to the service-instanceUUI/VID/SOAAI/UUI/VID/SOservice-instance-descprtion
serviceInvariantUUIDmodel-invariant-uuid
Constant identifier of the service model (relationship to service model)SDC/SOAAI/UUI/VID/SO

model-invariant-id

model-invariant-id + model-version-id

(model-uuid) stand for the relationships with the descriptor and persona-mode-version (model-version) is an attribute of the description.


ServiceUUIDmodel-uuid
Versioned identifier of the service model (relationship to service model)SDC/SOAAI/UUI/VID/SO

model-version-id


model-invariant-id + model-version-id

(model-uuid) stand for the relationships with the descriptor and persona-mode-version (model-version) is an attribute of the description.


ServiceVersionmodel-version
The service model version in SDC catalogSDC/SOAAI/UUI/VID/SO

persona-Model-Version


model-invariant-id + model-version-id (model-uuid) stand for the relationships with the descriptor and persona-mode-version (model-version) is an attribute of the description.


service-typeAn optional string field defining a generic type (like category) of the service. E.g. this field can be used for defining the service as “TRANSPORT”. service model?)SDC/SOAAI/UUI/VID/SO

service-type

service-type and service-role should be in the descriptor and not the instance (at the info modeling level).

service-roleAn optional string field for shortcode that defines the function that the service is providing. E.g. “MISVPN” or “AIM”.SDC/SOAAI/UUI/VID/SO

service-role


service-type and service-role should be in the descriptor and not the instance (at the info modeling level).

persona-Model-Version


selfLinkURL to endpoint where more details can be gottenSOAAI/UUI/VID/SOselflinkorchestrationStatus
orchestration-status
Orchestration status of the service instanceSOAAI/UUI/VID/SO/Policy/Holmesorchestration-statusserviceComponentInstanceId
service-component-Instance-IdThe service component instance ID that the service instance includesVFC/...AAI/UUI/VID/SO/Policy/HolmesRelationship to nested ServiceInstancestyperolefunction
  • ServiceComponentCatalogItem


  • ServiceComponentDescriptor

R2+ AttributesDescriptionProducerConsumerSDC(Service)

ECOMP

(ServiceComponent)

ETSIIFA014

(NetworkService)

invariantUUIDConstant identifier of the Service Component modelSDCSDC/UUI/VFCinvariantUUID
nsdInvariantId
UUIDVersioned identifier of the Service Component model (this uuid is changed for every major version of the service component)SDCSDC/UUI/VFCUUID

ServiceComponent

CatalogItem

nsdIdentifier
nameThe name of the service componentSDCSDC/UUI/VFCname
nsdName
descriptionThe description of service componentSDCSDC/UUI/VFCdescription

versionThe version of service componentSDCSDC/UUI/VFC

version
designerThe designer of service componentSDCSDC/UUI/VFC

designer

...

R2+ AttributesDescriptionProducerConsumerETSI IFA014(NetworkService)
vnfdid

References the VNFD of a constituent VNF.

SDCSDC/UUI/VFCvnfdid
pnfdId

References the PNFD of a constituent PNF.

SDCSDC/UUI/VFCpnfdId
virtualLinkDescProvides the constituent VLDs.SDCSDC/UUI/VFCvirtualLinkDesc



  • ServiceComponentInstance


R2+ AttributesDescripionProducerConsumerAAI
(ServiceInstance)

ETSI IFA013(NS)

instanceIdUniquely identifies this instance of a service componentSO/VFCAAI/UUI/VFC/Policy/Holmes
service-Instance-Id

nsInstanceId
instanceName
nameThe name assigned to the service component instanceUUI/VFCAAI/UUI/VFC/Policy/Holmes
nsName
service
model-
instance-namensNameinvariantUUID
invariant-uuidConstant identifier of the service component modelSDC/VFCAAI/UUI/VFC
nsdId
model-
invariant-idnsdIdUUID
uuidVersioned identifier of the service component model (this uuid is changed for every major version of the service component)SDC/VFCAAI/UUI/VFC

model-
version-id
versionThe service version in SDC catalogVFCAAI/UUI/VFC
persona-Model-Version


selfLinkURL to endpoint where more details can be gottenVFCAAI/UUI/VFC
selflink


orchestration-statusOrchestration status of the service component instanceVFCAAI/UUI/VFC/Policy/Holmes
orchestration-status

nsState
descriptionThe description of service component instanceVFCAAI/UUI/VFC
description


    • Network Service Instance

Inherit from ServiceComponentInstance

...