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 start from ECOMP Service IM model is designed as below class diagram:
Image Added
In this diagram, both design time and run time service related objects are depicted.
For the design time section on the left side,
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,
Image Removed
- 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 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.
Image Removed
Image Added
Attributes
R2+ Attributes | Description | Producer | Consumer |
...
serviceConfirmed Attributes | Description | invariantUUID | serviceInvariantUUIDInvariantUUID | Constant identifier of the service model |
UUID | service-id | ServiceUUID | serviceUUID | | 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) |
name | ServiceDisplayName | serviceName SDC | SDC/SO/UUI/VID | UUID | model-ver.model-version-id for that service model | ServiceUUID |
name | The name of the service |
description | service-description | ServiceDescription | serviceDescriptionmodel designed | SDC | SDC/SO/UUI/VID | name | model-ver.model-name for that service model
| ServiceDisplayName |
description | The description of the service |
Visible when the user hovers over this service in the design studio UI.
Category | Category | 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 |
and resource categories.Designer cannot define new Category. Process required to add/change/delete
service-version | Version | serviceVersion | The service version in SDC catalog | | 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 |
|
|
icon | The icon path of the service |
Process required to add new icon. | SDC | SDC/SO/UUI/VID |
| n/a | Icon |
serviceComponentUUID | The service component |
UUID descriptor UUIDs that the service includes |
(relationhip to Service Component) | SDC | SDC/SO/UUI/VID |
|
|
|
AAI (ServiceInstance) | Confirmed Attributes
| Description | Producer | Consumer | AAI(ServiceInstance) |
service-Instance-Id |
serviceInstanceId
| 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 |
serviceInstanceNameservice-instance-descprtion
| The |
name description assigned to the service-instance | UUI/VID/SO | AAI/UUI/VID/SO | service-instance-descprtion |
model-invariant- |
idserviceInvariantUUIDuuid
| 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 |
ServiceUUID(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 |
(this uuid is changed for every major version of the service)) | 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 |
ServiceVersion | The service version in SDC catalog |
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
|
selfLink | URL to endpoint where more details can be gotten | SO | AAI/UUI/VID/SO | selflink |
orchestration-status
|
status | Orchestration status of the service instance |
serviceComponentInstanceId | SO | AAI/UUI/VID/SO/Policy/Holmes | orchestration-status |
service-component-Instance-Id | The service component instance ID that the service instance includes |
ServiceComponentCatalogItem
| VFC/... | AAI/UUI/VID/SO/Policy/Holmes | Relationship to nested ServiceInstances |
ServiceComponentDescriptor
SDC (Service) | AAI (service) | ECOMP IM (ServiceComponentCatalogItem) | ETSI IFA014 (NetworkService) | Confirmed Attributes | Description |
invariantUUID | nsdInvariantId | invariantUUID | R2+ Attributes | Description | Producer | Consumer | SDC(Service) | ECOMP (ServiceComponent) | ETSIIFA014 (NetworkService) |
invariantUUID |
Constant identifier of the Service Component model |
UUID | service-id | ServiceComponentCatalogItem | nsdIdentifierSDC | 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) |
name | SDC | SDC/UUI/VFC | UUID | ServiceComponent CatalogItem | nsdIdentifier |
nsdName |
name | The name of the service component |
description | SDC | SDC/UUI/VFC | name |
| nsdName |
service-description |
description | The description of service component |
service-version | | SDC | SDC/UUI/VFC | description |
version |
|
|
version | The version of service component |
designer | 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 |
vnfdid | Confirmed Attributes | Description | vnfdid | References the VNFD of a constituent VNF. |
pnfdId | SDC | SDC/UUI/VFC | vnfdid |
pnfdId | References the PNFD of a constituent PNF. |
virtualLinkDesc | SDC | SDC/UUI/VFC | pnfdId |
virtualLinkDesc | Provides the constituent VLDs. | SDC | SDC/UUI/VFC | virtualLinkDesc |
R2+ Attributes | Descripion | Producer | Consumer | AAI |
(ServiceInstance)Confirmed Attributes | Descripion | service-Instance-Id | nsInstanceId |
instanceId | Uniquely identifies this instance of a service component |
service-instance-name | nsName | instanceNameSO/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- |
idnsdId | invariantUUID | Constant identifier of the service component model | SDC/VFC | AAI/UUI/VFC |
| nsdId |
model- |
version-idUUIDuuid | Versioned identifier of the service component model (this uuid is changed for every major version of the service component) |
persona-Model-Version | | SDC/VFC | AAI/UUI/VFC |
|
|
model-version | The service version in SDC catalog |
selflink | VFC | AAI/UUI/VFC |
|
|
selfLink | URL to endpoint where more details can be gotten | VFC | AAI/UUI/VFC |
|
|
orchestration-status |
nsState | status | Orchestration status of the service component instance |
description | VFC | AAI/UUI/VFC/Policy/Holmes |
| nsState |
description | The description of service component instance | VFC | AAI/UUI/VFC |
| description |
Inherit from ServiceComponentInstance
R2+ Attributes | Description | Producer | Consumer | ETSI IFA013 |
Confirmed | Descripion | vnfInfoId | Reference to information on constituent VNFs of this NS. |
pnfInfo | VFC | AAI/UUI/VFC | vnfInfoId |
pnfInfo | Information on the PNF(s) that are part of this NS. |
virtualLinkInfo | VFC | AAI/UUI/VFC | pnfInfo |
virtualLinkInfo | Information on the VLs of thisNS. | VFC | AAI/UUI/VFC | virtualLinkInfo |