ONAP R2+ Service IM Clean version

This page is used for the deposition of clean version ONAP R2+ Servcie IM.

Class Diagram

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

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

  • For the design time section on the left side,

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

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

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

      • Hybrid Service Design is also supported, as a part of a ServiceDescriptor can be composed of ServiceComponenDescriptor(s) and part of it can be composed of other ServiceDescriptor(s).

    • ServcieComponentDescriptor is used to model the design time representation of a service component or network service.

      • Nested Service Component Design is supported by the association "ServiceComponentComprisedOf", as a ServiceComponentDescriptor can be composed of other ServiceComponentDescriptor(s).

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

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

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

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

  • 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 ServiceDescriptor. In particular,

  •  

    • Based on 1 ServiceDescriptor, 0 or more ServiceInstance(s) can be instantiated, which also instantiate the association "ServiceDescriptorMadeAvailableAs". A ServiceInstance can comprise other ServiceInstance(s) or ServiceComponentInstance(s), as modeled by the associations "ServiceComprisedOf" and "ServiceComposedOf".

    • Based on 1 ServiceComponentDescriptor, 0 or more ServiceComponentInstance(s) can be instantiated, which also instantiate the association "ServiceComponentDescriptorMadeAvailableAs". A ServiceComponentInstance can comprise other ServiceComponentInstance(s) or ResourceInstance(s), as modeled by the associations "ServiceComponentComprisedOf" and "ServiceComponentComposedOf".

    • Based on 1 ResourceDescriptor, 0 or more ResourceInstance(s) can be instantiated, which also instantiates the association "ResourceDescriptorMadeAvailableAs". A ResourceInstance can reference other ResourceInstance(s).

Use Case Example

From the very high level, in summary,

  • Products are made up of services (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.

VoLTE

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.




Attributes

  • ServiceDescriptor

R2+ Attributes

Description

Producer

Consumer

SDC(Service)

AAI(model+model-ver)

ECOMP IM(ServiceCatalogItem)

InvariantUUID

Constant identifier of the service model

SDC

SDC/SO/UUI/VID

invariantUUID

model.model-invariant-id for that service model



UUID

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

SDC

SDC/SO/UUI/VID

UUID

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

ServiceUUID 

name 

The name of the service model designed

SDC

SDC/SO/UUI/VID

name

model-ver.model-name for that service model

ServiceDisplayName 

description

The description of the service model designed

SDC

SDC/SO/UUI/VID

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

SDC

SDC/SO/UUI/VID

Category

n/a

Category  

version

The service model version

SDC

SDC/SO/UUI/VID



model-ver.model-version for that service model

Version 

serviceType

An 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”.

SDC

SDC/SO/UUI/VID

serviceType





serviceRole

An optional string field for shortcode that defines the function that the service is providing. E.g. “MISVPN” or “AIM”.

SDC

SDC/SO/UUI/VID

serviceRole





icon

The icon path of the service

SDC

SDC/SO/UUI/VID



n/a

Icon 

serviceComponentUUID

The service component descriptor UUIDs that the service includes (relationhip to Service Component)

SDC

SDC/SO/UUI/VID









  • ServiceInstance

R2+ Attributes

Description

Producer

Consumer

AAI(ServiceInstance)

service-Instance-Id

Uniquely identifies this instance of a service

SO

AAI/UUI/VID/SO/Policy/Holmes

service-Instance-Id

service-instance-name

The name assigned to the service-instance

UUI/VID/SO

AAI/UUI/VID/SO

service-instance-name

service-instance-descprtion

The description assigned to the service-instance

UUI/VID/SO

AAI/UUI/VID/SO

service-instance-descprtion

model-invariant-uuid

Constant identifier of the service model (relationship to service model)

SDC/SO

AAI/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.



model-uuid

Versioned identifier of the service model (relationship to service model)

SDC/SO

AAI/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.



model-version

The service model version in SDC catalog

SDC/SO

AAI/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-type

An 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”.

SDC/SO

AAI/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-role

An optional string field for shortcode that defines the function that the service is providing. E.g. “MISVPN” or “AIM”.

SDC/SO

AAI/UUI/VID/SO

service-role



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



selfLink

URL to endpoint where more details can be gotten

SO

AAI/UUI/VID/SO

selflink

orchestration-status

Orchestration status of the service instance

SO

AAI/UUI/VID/SO/Policy/Holmes

orchestration-status

service-component-Instance-Id

The service component instance ID that the service instance includes

VFC/...

AAI/UUI/VID/SO/Policy/Holmes

Relationship to nested ServiceInstances



  • ServiceComponentDescriptor

R2+ Attributes

Description

Producer

Consumer

SDC(Service)

ECOMP

(ServiceComponent)

ETSIIFA014

(NetworkService)

invariantUUID

Constant identifier of the Service Component model

SDC

SDC/UUI/VFC

invariantUUID



nsdInvariantId

UUID

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

SDC

SDC/UUI/VFC

UUID

ServiceComponent

CatalogItem

nsdIdentifier

name

The name of the service component

SDC

SDC/UUI/VFC

name



nsdName

description

The description of service component

SDC

SDC/UUI/VFC

description





version

The version of service component

SDC

SDC/UUI/VFC





version

designer

The designer of service component

SDC

SDC/UUI/VFC





designer



  • Network Service Descriptor

    Inherit from ServiceComponentCatalogItem

R2+ Attributes

Description

Producer

Consumer

ETSI IFA014(NetworkService)

vnfdid

References the VNFD of a constituent VNF.

SDC

SDC/UUI/VFC

vnfdid

pnfdId

References the PNFD of a constituent PNF.

SDC

SDC/UUI/VFC

pnfdId

virtualLinkDesc

Provides the constituent VLDs.

SDC

SDC/UUI/VFC

virtualLinkDesc




  • ServiceComponentInstance



R2+ Attributes

Descripion

Producer

Consumer

AAI

ETSI IFA013(NS)

instanceId

Uniquely identifies this instance of a service component

SO/VFC

AAI/UUI/VFC/Policy/Holmes



nsInstanceId

name

The name assigned to the service component instance

UUI/VFC

AAI/UUI/VFC/Policy/Holmes



nsName

model-invariant-uuid

Constant identifier of the service component model

SDC/VFC

AAI/UUI/VFC



nsdId

model-uuid

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

SDC/VFC

AAI/UUI/VFC





model-version

The service version in SDC catalog

VFC

AAI/UUI/VFC





selfLink

URL to endpoint where more details can be gotten

VFC

AAI/UUI/VFC





orchestration-status

Orchestration status of the service component instance

VFC

AAI/UUI/VFC/Policy/Holmes



nsState

description

The description of service component instance

VFC

AAI/UUI/VFC



description



  •  

    • Network Service Instance

Inherit from ServiceComponentInstance



R2+ Attributes

Description

Producer

Consumer

ETSI IFA013(NS)

vnfInfoId

Reference to information on constituent VNFs of this NS.

VFC

AAI/UUI/VFC

vnfInfoId

pnfInfo

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

VFC

AAI/UUI/VFC

pnfInfo

virtualLinkInfo

Information on the VLs of thisNS.

VFC

AAI/UUI/VFC

virtualLinkInfo