Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

This page is used for the ONAP R2+ Resource IM drafting and discussion.

Current Resource Information Model UML Documentation: ONAP Resource 2017-11-08.docx

UML Comparison

This section illustrates the core IM design related to VNF resource from different sources.  

  • Run Time Model (VNF Instance)

    1) ECOMP IM (vNF deployment diagram)

    Questions:
      - What's the relationship between VNFC instance and VNF module? What's the usage of VNF module?
      - Why does network only associate with the VM, but not with Docker/LXC? Why is the cardinality 1:1?
      - Why does storage have no association with VNFC instance?
      - Why does VNFImage have 1:1 association with VNF instance, instead of VNFC instance?
      - No model for network port?

    Is the VNF Instance model still under discussion like the VNFD model?

    2) ETSI IFA IM (IFA015 VNFLogicalModel diagram)

  • Design Time Model

    1) ONAP Resource Model UML




  • 2) ETSI IFA IM (IFA015 VNFD)

    (besides VduCpd, Vdu also has relationship with VirtualComputeDesc, VirtualStorageDesc and swImageDesc; which are omitted in this diagram)

    3) SDC IM (normative and heat types)

(omit several types for simplicity)

Attribute Comparison

This section compares the different IM design from different sources.

Sources:

  • VNFC Run Time Model

    AAI (aai_schema_v11 vnfc)ECOMP IM (VNFC Instance)ETSI IFA008 (VnfcInfo)CommentDescription
    vnfc-name
    vnfcInstanceId
    identifier of the vnfc instance
    nfc-naming-code

    Xu: Need specification/reference for the value of this attribute? Xu: Should the attribute name aligned to "vnfc"?

    James Forsyth: No, in a network function we should not care if it's physical or virtual

    short code of the vnfc instance
    nfc-function

    Xu: Should the attribute name aligned to "vnfc"?
    James Forsyth No, in a network function we should not care if it's physical or virtual

    description of the vnfc instance
    prov-status

    Xu: need further clarification on how this attribute is used
    James Forsyth: Service assurance systems use this status in their logic to determine the provisioning status.  Values such as: PROVISIONED, PREPROVISIONED, CAPPED might be stored in this attribute

    Trigger for operational monitoring of this resource by Service Assurance systems
    orchestration-status
    vnfcState

    Xu: Is it the same as vnfcState (i.e., start or stop)?
    James Forsyth: Used for lifecycle management.  We don't know what vnfcState is.

    Orchestration status of this VNF, mastered by APP-C
    ipaddress-v4-oam-vip

    Xu: Is this attribute mandatory? and applicable for all kinds of VNFCs?
    James Forsyth: Not mandatory and this field should be deprecated in ONAP

    Oam V4 vip address of this vnfc
    in-maint

    Pamela Dragosh: DCAE monitors this flag. If set it does not "observe" alarms/traps/etc. during control loop.

    whether in maintenance mode
    is-closed-loop-disabled

    Xu: used by DCAE?
    James Forsyth: There are closed loop actions that DCAE might have policies for, and operations can turn off those actions with this flag

    Pamela Dragosh: Yes actually Policy has the rules that check for this. DCAE does not. DCAE does however check the in-maint flag.

    used to indicate whether closed loop function is enabled on this node
    group-notation

    Xu: need further clarification on how this attribute is used
    James Forsyth: In some applications, a two or more VMs or VNFCs is referred to by a name, and group-notation represents the name.  Might want to use instance-group to replace this over time.

    Group notation of VNFC
    model-invariant-id
    vduId
    the SDC model id for this resource model
    model-version-id


    the SDC model version for this resource model
    resource-version

    Xu: Is it used internally in AAI? can be omitted in the general model.
    James Forsyth: It's used internally in AAI to enforce concurrency control, other systems use it to pass to AAI on updates and delete operations.  It can be omitted from the general model

    Used for optimistic concurrency.  Must be empty on create, valid on update and delete
    l3-interface-ipv4-address-list


    l3 interface addresses, ipv4
    l3-interface-ipv6-address-list


    l3 interface addresses, ipv6
    relationship-listassociation (VM, Docker, LXC)

    AAI: relationship with vserver, vf-module and generic-vnf

  • VNFC Design Time Model

    SDC (abstract.nodes.VFC)ECOMP IM (VNFCCatalogItem)ETSI IFA011 (VDU/VduProfile)CommentDescription
    Nfc_function
    descriptionXu: Should the attribute name aligned to "vdu"?description of the vdu
    High_availability


    An optional String property that indicates the high_availability functionality of this VFC (e.g. “geo-activeactive”)
    Vm_image_name
    swImageDescXu: not fully aligned, need to analysis which information need to be exposedName or information of the software image used by the vdu.
    Vm_flavor_name


    An optional String property that provides the vm flavor name
    Nfc_naming_code

    Xu: aligned with AAI modelMandatory String property that describes the role of the VFC in the VF context. E.g. Signaling Session Controller (SSC), Media Session Controller (MSC)
    Vm_type_tag


    Mandatory String property that indicates the vm-type as was defined by vendor
    Nfc_naming
    name
    name of the vdu
    Min_instances
    minNumberOfInstances
    minimal amount of the VNFC instances allowed to be instantiated in the containing VNF instance
    Max_instances
    maxNumberOfInstances
    maximum amount of the VNFC instances allowed to be instantiated in the containing VNF instance
    UUID
    vduId
    identifier of the model
    (other metadata attributes)


    version of the model, type of the model, category/subcategory, ...

    association (VNFCConfiguration, VNFCCapability)




    intCpd

    Describes network connectivity between a VNFC instance (based on this Vdu) and an internal Virtual Link (VL).



    virtualComputeDesc

    Describes CPU, Memory and acceleration requirements of the Virtualisation Container realising this Vdu.



    virtualStorageDesc

    Describes storage requirements for a VirtualStorage instance attached to the virtualisation container created from virtualComputeDesc defined for this Vdu.



    bootOrder

    The key indicates the boot index (lowest index defines highest boot priority). The Value references a descriptor from which a valid boot device is created e.g. VirtualStorageDesc from which a VirtualStorage instance is created.



    nfviConstraint

    Describes constraints on the NFVI for the VNFC instance(s) created from this Vdu.



    monitoringParameter

    Defines the virtualised resources monitoring parameters on VDU level.



    configurableProperties

    Describes the configurable properties of all VNFC instances based on this VDU.



    localAffinityOrAntiAffinityRule

    Specifies affinity or anti-affinity rules applicable between the virtualisation containers (e.g. virtual machines) to be created based on this VDU.



    affinityOrAntiAffinityGroupId

    Identifier(s) of the affinity or anti-affinity group(s) the VDU belongs to.

  • VNF Run Time Model

    AAI (generic_vnf)ECOMP IM (VNF instance)ETSI IFA007 (VnfInfo)CommentDescription
    vnf-id
    vnfInstanceId
    identifier of the vnf instance
    vnf-name
    vnfInstanceName
    name of the vnf instance
    vnf-name2

    Xu: use case for alternative name?
    James Forsyth: Customer want aliases, so this is an alias for a VNF

    alternative name of the vnf instance
    vnf-typeVFType

    Xu: Is there any reference/specification for the value of this attribute?
    James Forsyth: This attribute should be deprecated, it was used prior to SDC modelling

    String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures.
    service-id

    Xu: deprecated?
    James Forsyth
    This attribute should be deprecated, it was used prior to SDC modelling

    Unique identifier of service, does not necessarily map to ASDC service models.  SOON TO BE DEPRECATED
    regional-resource-zone


    Regional way of organizing pservers, source of truth should define values
    prov-status

    Xu: Need clarification, similar to vnfc instance model.
    James Forsyth: Service assurance systems use this status in their logic to determine the provisioning status.  Values such as: PROVISIONED, PREPROVISIONED, CAPPED might be stored in this attribute

    Trigger for operational monitoring of this resource by Service Assurance systems.
    operational-status

    Xu: Need clarification on how this attribute is used.
    James Forsyth: Used for lifecycle management. 

    Indicator for whether the resource is considered operational. Valid values are in-service-path and out-of-service-path.
    license-key

    Xu: deprecated?
    James Forsyth Yes

    OBSOLETE -  do not use
    equipment-role

    Xu: Please clarify the usage of this attribute.
    James Forsyth: Deprecated

    Client should send valid enumerated value
    orchestration-status

    Xu: only used by SO?
    James Forsyth: Used by anyone who wants to check it, set by SO

    Orchestration status of this VNF, used by SO.
    heat-stack-id

    Xu: only used by SO?
    James Forsyth: Not being used anymore, deprecated.

    Heat stack id corresponding to this instance, managed by SO
    mso-catalog-key

    Xu: only used by VCE?
    James Forsyth: Predates SDC modelling, deprecated

    Corresponds to the SDN-C catalog id used to configure this VCE
    management-option

    Xu: Need clarification on how this attribute is used.
    James Forsyth: indicates who manages a specific resource, whether it's the service provider or a customer

    identifier of managed by service provider or customer
    ipv4-oam-address

    Xu: Is this attribute mandatory? and applicable for all kinds of VNFs? (same question as VNFC instance model)
    James Forsyth: Not mandatory, and it can be applicable for all kinds of VNFs, depending on the requirements of the VNF

    Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf.
    ipv4-loopback0-address

    Xu: same as above
    James Forsyth: Not mandatory, and it can be applicable for all kinds of VNFs, depending on the requirements of the VNF

    v4 Loopback address
    nm-lan-v6-address

    Xu: same as above
    James Forsyth: Not mandatory, and it can be applicable for all kinds of VNFs, depending on the requirements of the VNF

    v6 Loopback address
    management-v6-address

    Xu: same as above
    James Forsyth: Not mandatory, and it can be applicable for all kinds of VNFs, depending on the requirements of the VNF

    v6 management address
    vcpu

    Xu: only used by uCPE?
    James Forsyth: Yes

    number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE
    vcpu-units

    Xu: only used by uCPE?
    James Forsyth: Yes

    units associated with vcpu, used for VNFs with no vservers/flavors, to be used only by uCPE
    vmemory

    Xu: only used by uCPE?
    James Forsyth: Yes

    number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE
    vmemory-units

    Xu: only used by uCPE?
    James Forsyth: Yes

    units associated with vmemory, used for VNFs with no vservers/flavors, to be used only by uCPE
    vdisk

    Xu: only used by uCPE?
    James Forsyth: Yes

    number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only uCPE
    vdisk-units

    Xu: only used by uCPE?
    James Forsyth: Yes

    units associated with vdisk, used for VNFs with no vservers/flavors, to be used only by uCPE
    in-maint


    indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs
    is-closed-loop-disabled


    indicate whether closed loop function is enabled on this node
    resource-version

    Xu: Is it used internally in AAI? can be omitted in the general model.
    James Forsyth It's used internally in AAI to enforce concurrency control, other systems use it to pass to AAI on updates and delete operations

    Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
    summary-status

    Xu: deprecated?
    James Forsyth: Yes

    details regarding the generic-vnf operation, PLEASE DISCONTINUE USE OF THIS FIELD.
    encrypted-access-flag


    indicates whether generic-vnf access uses SSH
    entitlement-assignment-group-uuid

    Xu: deprecated?
    James Forsyth Yes

    UUID of the Entitlement group used for licensing VNFs, OBSOLETE -  See child relationships.
    entitlement-resource-uuid

    Xu: deprecated?
    James Forsyth Yes

    UUID of the specific entitlement resource.  OBSOLETE -  See child relationships
    license-assignment-group-uuid

    Xu: deprecated?
    James Forsyth Yes

    UUID of the license assignment group.  OBSOLETE -  See child relationships.
    license-key-uuid

    Xu: deprecated?
    James Forsyth Yes

    UUID of the actual license resource.  OBSOLETE -  See child relationships.
    model-invariant-idVNF Model IdvnfdId
    identifier of the VNF model
    model-version-idVNF Model VersionvnfdVersion
    version of the VNF model
    persona-model-version

    Xu: It seems to be used internally in AAI, need clarification on the usage of this attribute.
    James Forsyth Deprecated, use model-version-id

    the ASDC model version for this resource or service model
    model-customization-id
    vnfConfigurableProperty
    captures the id of all the configuration used to customize the resource for the service
    widget-model-id

    Xu: Is it used internally in AAI? Can be omitted in general model
    James Forsyth It's never been populated, yes can be omitted

    the ASDC data dictionary widget model. This maps directly to the A&AI widget.
    widget-model-version

    Xu: Is it used internally in AAI? Can be omitted in general model
    James Forsyth It's never been populated, yes can be omitted

    the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
    as-number

    Xu: Please clarify the usage of this attribute.
    James Forsyth Has to do with routing, not applicable for all VNFs

    as-number of the VNF
    regional-resource-subzone


    Regional way of organizing pservers, source of truth should define values
    nf-type

    Xu: What's the difference between vnf-type and nf-type?
    James Forsyth - we are getting rid of vnf-type and replacing with nf-type, nf-function, and nf-role

    Generic description of the type of NF
    nf-function
    vnfInstanceDescription
    description of the VNF instance
    nf-roleNetworkRole

    role in the network that this model will be providing
    nf-naming-code


    string assigned to this model used for naming purposes
    selflink

    Xu: what controller?
    James Forsyth: Not sure if it's being populated

    Path to the controller object
    ipv4-oam-gateway-address

    Xu: Is this attribute mandatory? and applicable for all kinds of VNFs?
    James Forsyth There should be an edge to a network that has a gateway assigned to it, so this attribute should be deprecated

    Gateway address
    ipv4-oam-gateway-address-prefix-length

    Xu: same as above
    James Forsyth There should be an edge to a network that has a gateway assigned to it, so this attribute should be deprecated

    Prefix length for oam-address
    vlan-id-outer

    Xu: only used by VCE?
    James Forsyth Not sure

    Temporary location for S-TAG to get to VCE
    nm-profile-name


    Network Management profile of this VNF
    relationship-list

    Xu: Is the description correct?
    James Forsyth - The edge rules has the exhaustive list of possible relationships for generic-vnf

    relationship with l-interface, availability-zone, lag-interface, l3-network, pserver, vserver, service-instance, vf-module, volume-group, vnfc and logical-link

    l-interfaces


    logical interfaces
    lag-interfaces


    Collection of link aggregate interfaces
    vf-modules


    a deployment unit of VNFCs
    licenses


    license information
    entitlements


    entitlement information

    HomingPolicy

    Reference to VNF-level homing policy that ECOMP will use when VNF deployment target node is auto-selected

    TargetNodePrompt

    "Y" indicates operator-supplied VNF instance target deployment node required. Present prompt to operator: "Enter target node for deployment of this VNF instance"

    "N" indicates that the target deployment node for this VNF instance will be auto-selected by ECOMP

    VLAN Range Plan

    Identifies the VNF-level VLAN Range Plan that must be used by ECOMP to assign VLAN tags to an instance of this VNF type

    VNF Name Prompt

    "Y" indicates operator-supplied VNF name required. Present prompt to operator: "Enter the name for this VNF instance"

    "N" indicates that the name for the VNF instance will be auto-generated by ECOMP

    VNF Naming Policy

    Reference to VNF-level naming policy that ECOMP will use when VNF-level name is auto-generated

    VNF Network Tag

    Must correlate to the set of defined “network-role” identifiers from the associated HEAT templates


    vnfSoftwareVersion

    Software version of the VNF. This is changed when there is any change to the software that is included in the VNF
    Package.



    vnfProvider
    Provider of the VNF and of the VNFD.


    vnfProductName

    Name to identify the VNF Product. Invariant for the VNF Product lifetime.



    onboardedVnfPkgInfoId

    Identifier of the specific VNF Package on which the VNF is based.



    instantiationState
    The instantiation state of the VNF instance.

    Possible values: NOT_INSTANTIATED (VNF instance is terminated or not instantiated, and the identifier of the VNF instance exists), INSTANTIATED (VNF instance is instantiated).



    instantiatedVnfInfo

    Information specific to an instantiated VNF instance. Shall be present if the VNF is in INSTANTIATED instantiation state.



    metadata

    Additional VNF-specific metadata describing the VNF instance.



    extension

    VNF-specific attributes that affect the lifecycle management of this VNF instance by the VNFM, or the lifecycle management scripts.

  • VNF Design Time Model

    SDC (generic_VF)ECOMP IM (VNFCatalogItem)ETSI IFA011 (VNFD)CommentDescription
    Nf_functiondescriptionvnfProductInfoDescription
    description of the VNF model
    Nf_role


    Mandatory property for short code that defines a Network function that the Vendor Software or PNF  is providing. E.g. vCE, vARM
    Nf_naming_codeshort-name

    Mandatory string providing short code that is used in VNF, PNF, and VM instance naming.  The NF Code  can be the same value or a different value than the NF Role.
    Nf_type


    Mandatory String property defining a generic type (like category) of the VF. The value is regulated and should be from a list defined in ASDC.
    Nf_namingnamevnfProductName
    name of the VNF


    vnfProductInfoName

    Human readable name for the VNF Product. Can change during the VNF Product lifetime.

    Availability_zone_max_count

    Xu: need clarfication on how this attribute is used.An optional integer of  availability zones count in the VF. Value should be either 0, 1 or 2
    Min_instances


    An optional property declaring the minimum number of this VF in the Service
    Max_instances


    An optional property declaring the maximum number of this VF in the Service
    UUIDidvnfdId
    identifier of the VNF model

    logo

    logo

    vendorvnfProvider
    Provider of the VNF and of the VNFD.
    versionversionvnfdVersion
    version of the VNF model


    vnfSoftwareVersion

    Software version of the VNF. This is changed when there is any change to the
    software that is included in the VNF Package.



    vnfmInfo

    Identifies VNFM(s) compatible with the VNF described in this version of the
    VNFD.



    localizationLanguage

    Information about localization languages of the VNF (includes e.g. strings in the
    VNFD).



    defaultLocalizationLanguage
    Default localization language


    vdu
    Virtualisation Deployment Unit. VNFC model


    virtualComputeDesc

    Defines descriptors of virtual compute resources to be used by the VNF.



    virtualStorageDesc

    Defines descriptors of virtual storage resources to be used by the VNF.



    intVirtualLinkDesc

    Represents the type of network connectivity mandated by the VNF provider between two or more CPs which includes at least one internal CP.



    vnfExtCpd

    Describes external interface(s) exposed by this VNF enabling connection with a VL.



    deploymentFlavour

    Describes specific DF(s) of a VNF with specific requirements for capacity and
    performance.



    configurableProperties

    Describes the configurable properties of the VNF (e.g. related to auto scaling and
    auto healing).



    modifiableAttributes

    Describes the modifiable attributes of the VNF.



    lifecycleManagementScript

    Includes a list of events and corresponding management scripts performed for the VNF.



    elementGroup

    Describes the associated elements (i.e. VDUs and/or VLs) of a VNFD for a certain purpose during VNF lifecycle management.



    vnfIndicatorXu: Indicators are vendor-specified information which can indicate the VNF behaviour.

    Declares the VNF indicators that are supported by this VNF.



    autoScale

    Rule that determines when a scaling action needs to be triggered on a VNF
    instance e.g. based on certain VNF indicator values or VNF indicator value
    changes or a combination of VNF indicator value(s) and monitoring parameter(s).

  • PNF Run Time Model

  • PNF Design Time Model

  • Network Run Time Model

  • Network Design Time Model

  • No labels