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


Sources:


Class Diagrams Discussion

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)

    NOTE: This diagram is being updated to align with the design time diagram.

  • Michela Bevilacqua:  ONAP VNF deployment diagram and ETSI IFA015  do not match 1to1. Can we compare and provide class mapping/identify gaps ?
  • IN IFA015 A VnfC is in relation to VirtualStorage, VirtualCompute, VirtualizationContainer and VnfcCp. 
  • In ONAP IM proposal where a VNFCInstance is in relaiton with VM (Type1 vServer), DockerorLinuxContainerInstance ( Type 2) and Type 3

    2) ETSI IFA IM (IFA015 VNFLogicalModel diagram)


              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

1) ONAP Resource Model UML

High Level Diagram



VNFDesc - Network View

VNFDesc - VNFCDesc


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)

4) Proposed ONAP R2+ 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.

Attribute Comparison

This section compares the different IM design from different 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 Yang: Need specification/reference for the value of this attribute? Xu Yang: 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 Yang: Should the attribute name aligned to "vnfc"?
    Jimmy Forsyth: No, in a network function we should not care if it's physical or virtual

    description of the vnfc instance
    prov-status

    Xu Yang: 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 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
    ipaddress-v4-oam-vip

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

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

    Xu Yang: not fully aligned, need to analysis which information need to be exposed

    Name 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 Yang: aligned with AAI model

    Mandatory 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 Yang: 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 Yang: 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 Yang: 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 Yang: 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 Yang: Need clarification on how this attribute is used.
    James Forsyth: Used for lifecycle management.

    Xu Yang: Are the valid values "in-service-path" and "out-of-service-path"? Don't understand what do these values mean, in use or not in use by a service?

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

    Xu Yang: deprecated?
    James Forsyth Yes

    OBSOLETE -  do not use
    equipment-role

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

    Client should send valid enumerated value
    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.
    heat-stack-id

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

    Xu Yang: 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 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
    management-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 management 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
    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 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.
    summary-status

    Xu Yang: 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 Yang: deprecated?
    James Forsyth Yes

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

    Xu Yang: deprecated?
    James Forsyth Yes

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

    Xu Yang: deprecated?
    James Forsyth Yes

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

    Xu Yang: 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 Yang: 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 Yang: 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 Yang: 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 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-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 Yang: what controller?
    James Forsyth: Not sure if it's being populated

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

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


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



    vnfIndicator

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


  • 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

3 Comments

  1. On "ClassONAP VNFD View" class diagram:


    I edited this comment and removed one question related to "RequestedAdditionalCapabilities". Looks like the class picture in this page is old.  Classdiagram in the Document   ONAP Resource 2017-12-09.docx does not have this deprecated component.


    Question/Comment 1:

    Description under "LogicalNodeDesc" in  ONAP Resource 2017-12-09.docx is this : "

    LogicalNodeDesc

    Class in package 'Resource'

    This information element describes compute, memory and I/O requirements that are to be associated with the logical node of infrastructure. The logical node requirements are a sub-component of the VDU level requirements. 
    "

    I agree with above description of compute/memory and IO requirements. I guess this is also for any additional Hardware Platform Awareness features.  Please confirm. 

    Since this is meant for compute and memory,  is there any need for "VirtualCPUDesc" and "VirtualMemoryDesc" blocks out of "VirtualComputeDesc".  Actually, it is good to remove them, as many Hyperscale platforms (Azure VM Sizes and AWS Instance types) support all hardware features at the same level.  Openstack recent versions also have all the feature combined into flavors unlike previous Openstack versions where CPU, memory and disk requirements used to be represented differently from other hardware features.  Uniformity is good and in my view there is no need to call out CPU and memory differently. 

    Question/comment 2:

    There is one to one relationship between VNFCDesc and VirtualComputeDesc.  That is expected.  But, what is the reason for showing 1 to many relationship between VNFDesc to VirtualComputeDesc?  That is indirectly shown anyway via VNFDesc-->VNFCDesc→VirtualComputeDesc.  Is there any special reason for showing relationship between VNFDesc to VirtualComputeDesc?

    Question/comment 3:

    When I first saw the VNFCDesc, I thought it is new name for VDU.  But I also see VDU.  What additional advantages do we see to keep VDU b;ock? Is it not redundant?

    Question/comment 4:

    I tried to search for corresponding TOSCA DM Model.  Is it in works?

  2. On sVNFM and EMS:

    I tried to find information in this document :    ONAP Resource 2017-12-09.docx

    Normally, a VNF is expected to be associated with vendor specific sVNFM and EMS. These are expected to do life cycle management and configuration of workload VNFCs.

    I don't see any reference to these.  Is it because :  They are also like any other VNFCs?  Or is it that ONAP likes to see GVNFM & App-Config of APPC to be used for this purpose? If it is former, isn't there a need for identifying these from workloads VNFCs?  I am thinking that VF-C/APP-C need to know sVNFM and EMS as they need to talk to them for any VNFC operations.

  3. On VNFC deployment choices:

    In ONAP Resource 2017-12-09.docx,  there are three diagrams shown for VNF - 1) Topology view 2) Desc view 3)Deployment view.

    It is good to see n(from Deployment view) that VNFC can be deployed as VM (type1), container in a VM (type2), container on bare-metal machine (Type3).

    There are many NF as a service providers such as Cloudflare.  Customer of cloudflare does not have an option of choosing VM or container. It is hidden for customer. It is also possible that Cloudflare may not be using VM or container model.  They may simply be using simple network namespaces for isolation.  In my view, it is good to support deploying NF using Nf-as-a-Service providers. 

    Even though deployment view showed VM and container,  VNFDesc view does not have this representation.  Is that work in progress?

    In case of "Container in a VM model" : I guess this requires bringing up VM before container can be brought up.  If the VM is already brought up before for some other container, I guess same can be used. There should be some representation and relationship between container VNFC and VM that hosts it. Is that going to be represented in IM or is that supposed to be taken care at the time of DM definition?