The model below is taken from the ETSI IFA014 and IFA015 Nfv Information Model v2.5.1

From Resource Sub-Model

Class Diagram

Classes

Pnfd

The Pnfd class is a deployment template enabling on-boarding PNFs and referencing them from an NSD. It focuses on connectivity aspects only.

Parent class: NetworkFunctionDesc

Attribute Name

Type

Mult.

Stereotypes

Description

pnfdId

Identifier

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

Identifier of this Pnfd class. It uniquely identifies the PNFD.

 

 

provider

String

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

Identifies the provider of the PNFD. NOTE:  The provider of the PNFD might be different from the provider of the PNF.

 

 

version

Version

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

Identifies the version of the PNFD

 

 

security

SecurityParameters

0..1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

Provides a signature to prevent tampering.

 

 

functionDescription

String

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

Describes the PNF function.

 

 

pnfdInvariantId

Identifier

1

Experimental

OpenModelAttribute

  • isInvariant: true
  • valueRange:  no range constraint
  • support:  MANDATORY

Identifies a PNFD in a version independent manner. This attribute is invariant across versions of PNFD.

 

 

name

String

1

Experimental

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

Provides the human readable name of the PNFD.

 

 

_pnfExtCpd

PnfExtCpd

1..*

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

Specifies the characteristics of one or more connection points where to connect the PNF to a VL.

 

 

PnfExtCpd

 

A PnfExtCpd is a type of Cpd and describes the characteristics of an external interface, a.k.a external CP, where to connect the PNF to a VL.  

Parent class: ExtCpd

DataTypes

Inherited from Vnf Sub-Model

NetworkFunctionDesc

A NetworkFunction is a functional block within a network infrastructure that has well-defined external interfaces and well-defined functional behaviour.

Parent class: ResourceDesc (ResourceSpecification)


ResourceDesc

ResourceDesc represents physical and non-physical (virtual) components which are owned / managed by the business or provided by a Supplier and are used (directly or indirectly) to construct services.  In this context, a resource is something that goes into a resource catalog from which services are composed.


Inherited from Common Sub-Model

Classes

Cpd

A Cpd information element describes network connectivity to a compute resource or a VL. This is an abstract class used as parent for the various Cpd classes.


Attribute Name

Type

Mult.

Stereotypes

Description

cpdId

Identifier

1


Identifier of this Cpd information element.



cpRole

String

0..1


Identifies the role of the port in the context of the traffic flow patterns in the VNF, PNF or parent NS.  For example a VNF with a tree flow pattern within the VNF will have legal cpRoles of ROOT and LEAF.



description

String

0..1


Provides human-readable information on the purpose of the CP (e.g. CP for control plane traffic).



cpProtocol

CpProtocolData

1..*


Identifies the protocol layering information the CP uses for connectivity purposes and associated information. There shall be one cpProtocol for each layer protocol as indicated by the attribute layerProtocol.  Editor's note: the attribute "layerProtocol" still needs further discussion and not included in this table.



trunkMode

Boolean

1


Information about whether the CP instantiated from this CPD is in Trunk mode (802.1Q or other).




Datatypes

Security Parameters

The SecurityParameters contains the signature of a NSD, VLD, PNFD or VNFFGD instance together with information required to validate the signature.


Attribute Name

Type

Mult.

Access

Stereotypes

Description

signature

String

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

 Provides the signature of the signed part of the descriptor.



algorithm

String

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

 Identifies the algorithm used to compute the signature.



certificate

invalid

0..1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

 Provides a certificate or a reference to a certificate to validate the signature. NOTE: Cardinality of 0 corresponds to the case where the certificate is provided by means outside the NSD




Cp Protocol Data

CpProtocolData describes and associates the protocol layer that a CP uses together with other protocol and connection point information.


Attribute Name

Type

Mult.

Access

Stereotypes

Description

associatedLayerProtocol

LayerProtocol

1

RW


 One of the values of the attribute layerProtocol of the Cpd IE.



addressData

AddressData

0..*

RW


 Provides information on the addresses to be assigned to the CP(s) instantiated from the CPD.




Address Data

AddressData provides information about the addressing scheme and parameters applicable to a CP.


Attribute Name

Type

Mult.

Access

Stereotypes

Description

addressType

Identifier

1

RW


 Describes the type of the address to be assigned to the CP instantiated from the parent CPD. The content type shall be aligned with the address type supported by the layerProtocol attribute of the parent CPD.



l2AddressData

L2AddressData

0..1

RW


 Provides the information on the MAC addresses to be assigned to the CP(s) instantiated from the parent CPD. Shall be present when the addressType is MAC address.



l3AddressData

L3AddressData

0..1

RW


 Provides the information on the IP addresses to be assigned to the CP instantiated from the parent CPD. Shall be present when the addressType is IP address.



L2 Address Data


Attribute Name

Type

Mult.

Access

Stereotypes

Description

macAddressAssignment

Boolean

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

 Specify if the MAC address assignment is the responsibility of management and orchestration function or not.  If it is set to True, it is the management and orchestration function responsibility.  If it is set to False, it will be provided by an external entity, e.g. OSS/BSS.



L3 Address Data

The L3AddressData information element supports providing information about Layer 3 level addressing scheme and parameters applicable to a CP.


Attribute Name

Type

Mult.

Access

Stereotypes

Description

ipAddressAssignment

Boolean

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

 Specify if the address assignment is the responsibility of management and orchestration function or not.  If it is set to True, it is the management and orchestration function responsibility.



floatingIpActivated

Boolean

1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

 Specify if the floating IP scheme is activated on the CP or not.



ipAddressType

AddressType

0..1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

 Define address type.  NOTE: The address type should be aligned with the address type supported by the layerProtocol attribute of the parent Cpd.



numberOfIpAddress

Integer

0..1

RW

OpenModelAttribute

  • isInvariant: false
  • valueRange:  no range constraint
  • support:  MANDATORY

 Minimum number of IP addresses to be assigned based on this L3AddressData information element.



  • No labels

9 Comments

  1. I think that the PNFD needs to allow for artifacts related to the PNF to be attached.

    e.g., see the diagram below which is from:

    5G - PNF Pre-Onboarding & Onboarding


    1. As I understand it, the onboarding parts of the model will be divided into a package part and an associated descriptor part, where the PNFD is then just the descriptor part.

      Then I haven't fully understood whether all artifacts will be modelled in the package part... anyone know what the intention is? Kevin Scaggs?

    2. What artifacts did you have in mind? Note that the PNFD specified here is from ETSI IFA014, and there is no attachment of PNF artifacts.

  2. A few quick comments on the proposal (apologies that I'm a bit late with this):

    • The PNFD properties are in some cases similar to those in the VNFD, but with somewhat different names. Ideally these should be aligned, shouldn't they...?
    • "pnfdInvarientId" is misspelled, should be pnfdInvariantId
    • I don't see a cpProtocol property on PnfExtCpd in IFA014 or IFA015. Is this an addition needed to align to the VnfExtCpd?


    1. Hi Jacqueline-

            Here are my responses to your comments:

      1. Yes, they should be aligned, but as the VNFD/PNFD are aligned to ETSI specs, you would have to take that comment back to them
      2. I will correct this
      3. cpProtocol is inherited from cpd.
  3. Few comments from my side

    1) Is the parent class NetworkFunctionDesc defined in ETSI or ONAP specific ? A link reference to the definition could be good.

    2) Is there any gap this proposal is loosing deriving from CP instead of ExternalCP ? 

    3) It could be good adding the relationship with the link for completeness.

    1. Hi Michela-

           Here are my responses to your comments:

            1. The parent class is NetworkServiceDescriptor which is in the Resource model since R3. I can put a link to that.

            2. If you are talking about PnfExtCpd, it inherits from ExtCpd which inherits from Cpd actually. I have to change this now that ExtCpd is

                correctly defined in common. Neither Cpd nor ExtCpd bring new attributes.

            3. This is output from GenDoc. I don't quite understand what you are requesting here. Could you explain?

            

  4. As I stated in the call, we had a discussion on PNFD model in R3 as well, PNF resource IM proposal. A few new attributes are proposed to be added. And Benjamin Cheung  has also presented the corporation with SDC team before, based on which I remember the "software_version_list" attribute has been put into the DM. I wonder if we should incorporate those changes into this proposal.

  5. HI, Class diagram picture is not aligned to the PNFD attribute table. Can you align before the email poll is progressed ?