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

Compare with Current View Page History

« Previous Version 27 Next »

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


Table of Content

Sources:


Class Diagrams Discussion

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

  • Run Time Model (VNF Instance)

              IFA015, VNF Classes Mapping

Michela Bevilacqua: How do we map VNFInfo, InstantiatedVnfInfo and connected Info classes present in IFA015 to ONAP IM?

Xu Yang: In my opinion, the VnfInfo, InstantiatedVnfInfo, etc. can be mapped to attributes of the corresponding resource instance objects.

  • Design Time Model

Resource General View Diagram

    • Resource model includes design time model (ResourceDesc) and run time model (ResourceInstance). Based on one ResourceDesc, zero or more ResourceInstance(s) can be instantiated.
    • “Resource” is a generalization of many objects, for example, VNF, PNF, entitlement, etc. In the above diagram, only VNF, PNF and ServiceVirtualLink (virtual link between NFs) are shown. More specifically,
      • VnfDesc is derived from ResourceDesc, VnfInstance is derived from ResourceInstance. Based on one VnfDesc, zero or more VnfInstance(s) can be instantiated.
      • PnfDesc is derived from ResourceDesc, PnfInstance is derived from ResourceInstance. One PnfDesc is used to describe one PnfInstance.
      • SrvVlDesc is derived from ResourceDesc, SrvVlInstance is derived from ResourceInstance. Based on one SrvVlDesc, zero or more SrvVlInstance(s) can be instantiated.
    • VnfDesc can be composed of one or more VnfcDesc(s) and zero or more VnfVlDesc(s). Correspondingly, VnfInstance can be composed of zero or more VnfcInstance(s) and zero or more VlInstance(s). It should be noted that a VnfInstance comprises zero VnfcInstance is a special case that the VnfInstance object is created but not instantiated.
    • Based on one VnfVlDesc, zero or more VlInstance(s) can be instantiated. And Based on one VnfcDesc, zero or more VnfcInstance(s) can be instantiated.  

VnfDesc General View Diagram

NOTE: This diagram is a proposed model for the VnfDesc, mainly inspired by the model from ETSI IFA015. Not all elements in the VnfDesc are depicted.

    • VnfcDesc is composed of one or more DeploymentFlavor(s), one or more VnfcDesc(s), one or more VnfExtCpDesc(s) and zero or more VnfVlDesc(s).
    • DeploymentFlavor references VnfcDesc and VnfVlDesc.
    • VnfcDesc is composed of one VirtualComputeDesc, one or more VirtualStorageDesc(s), zero or more SwImageDesc(s) and one or more VnfcCpDesc(s).
    • A VirtualStorageDesc can reference a SwImageDesc.
    • A VnfExtCpDesc references to a VnfcCpDesc.
    • VnfcCpDesc can reference a VnfVlDesc.

IM Attribute Discussion

This section lists the attributes to be discussed before adding into to the information model.

Note: the attribute marked as blue is expected for moving into the clean version

  • NFC/VNFC Run Time Model

    AAI (aai_schema_v11 vnfc)ECOMP IM (VNFC Instance)ETSI IFA008 (VnfcInfo)CommentDescription
    orchestration-status
    vnfcState

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

    Xu Yang: vnfcState describes the state of a VNFC instance, possible values are: STARTED, STOPPED. STARTED means the VNFC instance is up and running, and STOPPED means the VNFC instance has been shut down (but not terminated/deleted). Similar to the VM power on/off concept.

    Orchestration status of this VNF, mastered by APP-C
    group-notation

    Xu Yang: 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-version-id


    the SDC model version for this resource model
    relationship-listassociation (VM, Docker, LXC)

    AAI: relationship with vserver, vf-module and generic-vnf
  • NFC/VNFC Design Time Model

    SDC (abstract.nodes.VFC)ECOMP IM (VNFCCatalogItem)ETSI IFA011 (VDU/VduProfile)CommentDescription
    Vm_type_tag


    Mandatory String property that indicates the vm-type as was defined by vendor


    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.



    configurableProperties

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

  • VNF Run Time Model

    AAI (generic_vnf)ECOMP IM (VNF instance)ETSI IFA007 (VnfInfo)CommentDescription
    orchestration-status

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

    Xu Yang: could you elaborate more on the valid values and their meaning?

    Orchestration status of this VNF, used by SO.
    management-option

    Xu Yang: 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-loopback0-address

    Xu Yang: 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 Yang: 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
    vcpu

    Xu Yang: 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 Yang: 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 Yang: 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 Yang: 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 Yang: 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 Yang: only used by uCPE?
    James Forsyth: Yes

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

    Xu Yang: 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.
    model-customization-id


    captures the id of all the configuration used to customize the resource for the service
    as-number

    Xu Yang: 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 Yang: 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-roleNetworkRole

    role in the network that this model will be providing
    selflink

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

    Path to the controller object
    vlan-id-outer

    Xu Yang: 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 Yang: 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


    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_role


    Mandatory property for short code that defines a Network function that the Vendor Software or PNF  is providing. E.g. vCE, vARM
    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.
    Availability_zone_max_count

    Xu Yang: 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


    deploymentFlavour

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



    modifiableAttributes

    Describes the modifiable attributes of the VNF.



    lifecycleManagementScript

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

  • ExternalVirtualLink Design Time Mode

    SDC
    (extVL)
    AAI ECOMP IMETSI IFA014
    (virtualLinkDesc)
    CommentsConfirmedDescription
    invariantUUID



    invariantUUIDConstant identifier of the external virtual link
    UUID

    virtualLinkDescId
    vldIdVersioned identifier of the external virtual link
    customizationUUID


    maopeng zhang

    is the resource instance referred to the run-time resource instance? If it is in the run-time, why is it in the design time?


    Identifier of the resource instance (uuid of the specific use of the resource model in this service). This identifier is regenerated whenever a user makes a change on the resource instance.

    version

    virtuaLinkDescVersion
    versionThe version of the external virtual link
    name



    nameThe name of the external virtual link
    description



    descriptionThe description of the external virtual link
    type




    The type of resource. Resource type can be either VF, VFC, VFCMT, CP or VL.
    category




    Category of the resource
    subcategory




    Sub-category of the resource
    resourceVendor




    specifies the vendor providing this asset
    resourceVendorRelease




    specifies the release version given by the vendor (no exact correlation to the version of the asset in the SDC catalog)
    resourceVendorModelNumber




    Metadata of resources (VFs, VFCs, PNF) will include new field resourceVendorModelNumber. The value for this field is the part number defined by the vendor, e.g. “MX960”.

    network_type



    network_typespecifies the nature of the physical network in the underlying cloud infra-structure. Examples are flat, vlan, gre or vxlan. For flat and vlan types, physical_network should be provided too.
    network_role




    Unique label that defines the role that this network performs.   example: vce oam network, vnat sr-iov1 network
    network_scope




    Uniquely identifies the network scope. Valid values for the network scope   includes: VF - VF-level network. Intra-VF network which connects the VFCs (VMs) inside the VF. SERVICE - Service-level network. Intra-Service network which connects  the VFs within the service GLOBAL - Global network which can be shared by multiple services
    network_technology




    ECOMP supported network technology
    network_ecomp_naming





    network_homing





    network_assignments





    provider_network





    network_flows





    vendor

    vitualLinkDescProvider


    vl_name


    same with the name

    ip_version



    ip_versionThe IP version of the requested network.
    cidr



    cidrThe cidr block of the requested network.
    start_ip



    start_ipThe IP address to be used as the 1st one in a pool of addresses derived from the cidr block full IP range.
    end_ip



    end_ipThe IP address to be used as the last one in a pool of addresses derived from the cidr block full IP range.
    gateway_ip



    gateway_ipThe gateway IP address.
    network_name



    network_nameAn Identifier that represents an existing Network instance in the underlying cloud infrastructure - OR - be used as the name of the new created network.
    network_id



    network_idAn Identifier that represents an existing Network instance in the underlying cloud infrastructure. This property is mutually exclusive with all other properties except network_name.
    segmentation_id



    segmentation_idA segmentation identifier in the underlying cloud infrastructure (e.g., VLAN id, GRE tunnel id). If the segmentation_id is specified, the network_type or physical_network properties should be provided as well.
    physical_network



    physical_networkidentifies the physical network on top of which the network is implemented, e.g. physnet1. This property is required if network_type is flat or vlan.
     dhcp_enabled



     dhcp_enabledIndicates the TOSCA container to create a virtual network instance with or without a DHCP service.



    testAccess





    virtualLinkDf





    ConnectivityType
    (layerProtocol,flowPattern)






    security



    • ExternalVirtualLink Run Time Model

    AAI
    (l3-network)
    ECOMP IM

    ETSI IFA013

    (VirtualLink)

    CommentsConfirmedDescription
    network-id
    nsVirtualLinkInstanceId
    virtualLinkInstanceId
    network-name
    description
    description
    network-role




    network-technology




    neutron-network-id
    ResourceHandle
    (vimId,resourceProviderId,resourceId)



    is-bound-to-vpn 




    service-id
    nsInstanceId
    componentInstanceId
    network-role-instance




    resource-version




    orchestration-status




    heat-stack-id




    mso-catalog-key




    contrail-network-fqdn




    model-invariant-id


    invariantUUID
    model-version-id


    UUID
    persona-model-version


    version
    model-customization-id




    widget-model-id




    widget-model-version




    physical-network-name




    is-provider-network 




    is-shared-network 




    is-external-network 




    selflink


    selfLink
    operational-status


    status


    nslinkport




  • No labels