Newer
Older
rameshnaraya
committed
# Copyright (c) ETSI 2017.
# https://forge.etsi.org/etsi-forge-copyright-notice.txt
definitions:
Samir Medjiah
committed
HealNsRequest:
description: >
This type represents request parameters for the "Heal NS" operation. This operation supports the healing of an NS
instance, either by healing the complete NS instance or by healing one of more of the VNF instances that are part of this
NS. It shall comply with the provisions defined in Table 6.5.2.13-1.
Either the parameter healNsData or the parameter healVnfData, but not both shall be provided.
Samir Medjiah
committed
type: object
oneOf:
- required:
- healNsData
- required:
- healVnfData
Samir Medjiah
committed
properties:
healNsData:
description: >
Provides the information needed to heal an NS. See note
Samir Medjiah
committed
$ref: "#/definitions/HealNsData"
healVnfData:
description: >
Provides the information needed to heal a VNF. See note.
Samir Medjiah
committed
type: array
items:
$ref: "#/definitions/HealVnfData"
CancelMode:
description: >
This type represents a parameter to select the mode of canceling an ongoing NS LCM operation occurrence.
It shall comply with the provisions defined in Table 6.5.2.16-1.
type: object
required:
- cancelMode
properties:
cancelMode:
description: >
Cancellation mode to apply.
$ref: "#/definitions/CancelModeType"
HealNsData:
description: >
This type represents the information used to heal a NS.
It shall comply with the provisions defined in Table 6.5.3.43-1.
type: object
required:
- degreeHealing
oneOf:
- required:
- actionsHealing
- required:
- healScript
Samir Medjiah
committed
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
properties:
degreeHealing:
description: >
Indicates the degree of healing. Possible values
include:
- HEAL_RESTORE: Complete the healing of
the NS restoring the state of the NS before
the failure occurred
- HEAL_QOS: Complete the healing of the NS
based on the newest QoS values
- HEAL_RESET: Complete the healing of the
NS resetting to the original instantiation state of the NS
- PARTIAL_HEALING
type: string
enum:
- HEAL_RESTORE
- HEAL_QOS
- HEAL_RESET
- PARTIAL_HEALING
actionsHealing:
description: >
Used to specify dedicated healing actions in a
particular order (e.g. as a script). The actionsHealing
attribute can be used to provide a specific script whose
content and actions might only be possible to be
derived during runtime.
type: array
items:
$ref: "../../definitions/SOL005_def.yaml#/definitions/String"
healScript:
description: >
Reference to a script from the NSD that shall be used
to execute dedicated healing actions in a particular
order. The healScript, since it refers to a script in the
NSD, can be used to execute healing actions which
are defined during NS design time.
$ref: "#/definitions/IdentifierInNsd"
Samir Medjiah
committed
additionalParamsforNs:
description: >
Allows the OSS/BSS to provide additional
parameter(s) to the healing process at the NS level.
$ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs"
HealVnfData:
description: >
This type represents the information to heal a VNF that is part of an NS.
The NFVO shall then invoke the Heal VNF operation towards the appropriate VNFM.
Samir Medjiah
committed
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
It shall comply with the provisions defined in Table 6.5.3.44-1.
type: object
required:
- vnfInstanceId
properties:
vnfInstanceId:
description: >
Identifies the VNF instance, part of the NS, requiring a
healing action.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
cause:
description: >
Indicates the reason why a healing procedure is required.
type: string
additionalParams:
description: >
Additional parameters passed by the NFVO as input to
the healing process, specific to the VNF being healed.
EXAMPLE: Input parameters to VNF-specific healing procedures.
$ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs"
TerminateNsRequest:
description: >
This type represents a NS termination request.
It shall comply with the provisions defined in Table 6.5.2.15-1.
type: object
properties:
terminationTime:
description: >
Timestamp indicating the end time of the NS, i.e. the NS
will be terminated automatically at this timestamp.
Cardinality "0" indicates the NS termination takes place immediately
$ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime"
terminateNsData:
description: >
Provides additional parameters to the termination process at the NS level.
Information needed for terminating specific VNF instances shall only be specified
in the "terminateVnfData" attribute, and not in the "terminateNsData" attribute.
$ref: "#/definitions/TerminateNsData"
terminateVnfData:
description: >
Provides the information to terminate VNF instance(s).
Information needed for terminating specific VNF instances
shall only be specified in the "terminateVnfData" attribute, and not in the "terminateNsData" attribute.
VNF instance(s) part of this NS instance is(are) terminated as part of Terminate NS operation
only if the instance(s) is(are) not used by any other NS instance.
type: array
items:
$ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime"
Samir Medjiah
committed
CreateNsRequest:
type: object
required:
- nsdId
- nsName
- nsDescription
properties:
nsdId:
description: >
Identifier of the NSD that defines the NS instance to be
created.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
nsName:
description: >
Human-readable name of the NS instance to be created.
type: string
nsDescription:
description: >
Human-readable description of the NS instance to be created.
type: string
moscatelli
committed
CancelModeType:
description: >
Cancellation mode.
The NFVO shall not start any new VNF lifecycle management and resource
management operation, and shall wait for the ongoing VNF lifecycle management
and resource management operations in the underlying system, typically the VNFM
and VIM, to finish execution or to time out. After that, the NFVO shall put the
operation occurrence into the FAILED_TEMP state.
The NFVO shall not start any new VNF lifecycle management and resource
management operation, shall cancel the ongoing VNF lifecycle management and
resource management operations in the underlying system, typically the VNFM and
VIM, and shall wait for the cancellation to finish or to time out. After that, the NFVO
shall put the operation occurrence into the FAILED_TEMP state.
type: string
enum:
- GRACEFUL
- FORCEFUL
NsInstance:
description: >
This type represents a response for Query NS operation.
It shall comply with the provisions defined in Table 6.5.2.10-1.
type: object
required:
- id
- nsInstanceName
- nsInstanceDescription
- nsdId
- nsdInfoId
- nsState
properties:
id:
description: >
Identifier of the NS instance.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
nsInstanceName:
description: >
Human readable name of the NS instance.
type: string
nsInstanceDescription:
description: >
Human readable description of the NS instance.
type: string
nsdId:
description: >
Identifier of the NSD on which the NS instance is based. The value is copied from the NSD.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
nsdInfoId:
description: >
Identifier of the NSD information object on which the
NS instance is based. This identifier has been allocated by the NFVO.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
flavourId:
description: >
Identifier of the NS deployment flavor applied to
the NS instance. This attribute shall be present if the nsState attribute
value is INSTANTIATED.
$ref: "#/definitions/IdentifierInNsd"
vnfInstance:
description: >
Information on constituent VNF(s) of the NS instance.
type: array
items:
moscatelli
committed
$ref: "#/definitions/VnfInstance"
pnfInfo:
description: >
Information on the PNF(s) that are part of the NS instance.
type: array
items:
moscatelli
committed
$ref: "#/definitions/PnfInfo"
virtualLinkInfo:
description: >
Information on the VL(s) of the NS instance.
This attribute shall be present if the nsState attribute
value is INSTANTIATED and if the NS instance has
specified connectivity.
type: array
items:
moscatelli
committed
$ref: "#/definitions/NsVirtualLinkInfo"
vnffgInfo:
description: >
Information on the VNFFG(s) of the NS instance.
type: array
items:
moscatelli
committed
$ref: "#/definitions/VnffgInfo"
sapInfo:
description: >
Information on the SAP(s) of the NS instance.
type: array
moscatelli
committed
items:
$ref: "#/definitions/SapInfo"
nestedNsInstanceId:
description: >
Identifier of the nested NS(s) of the NS instance.
type: array
moscatelli
committed
items:
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
vnfSnapshotInfoIds:
description: >
Identifier of information on VNF snapshots of VNF instances that are part of this NS instance.
type: array
items:
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
nsState:
description: >
The state of the NS instance.
Permitted values:
NOT_INSTANTIATED: The NS instance is
terminated or not instantiated.
INSTANTIATED: The NS instance is instantiated.
type: string
moscatelli
committed
enum:
moscatelli
committed
- INSTANTIATED
monitoringParameter:
description: >
Performance metrics tracked by the NFVO (e.g. for
auto-scaling purposes) as identified by the NS
designer in the NSD.
type: array
items:
$ref: "#/definitions/NsMonitoringParameter"
nsScaleStatus:
description: >
Status of each NS scaling aspect declared in the
applicable DF, how "big" the NS instance has been
scaled w.r.t. that aspect.
This attribute shall be present if the nsState attribute
rameshnaraya
committed
value is INSTANTIATED.
moscatelli
committed
$ref: "#/definitions/NsScaleInfo"
additionalAffinityOrAntiAffinityRule:
description: >
Information on the additional affinity or anti-affinity
rule from NS instantiation operation. Shall not
conflict with rules already specified in the NSD.
type: array
moscatelli
committed
items:
$ref: "#/definitions/AffinityOrAntiAffinityRule"
wanConnectionInfo:
description: >
Information about WAN related connectivity enabling multi-site VLs.
type: array
items:
$ref: "#/definitions/WanConnectionInfo"
rameshnaraya
committed
description: Links to resources related to this resource.
required:
- self
properties:
self:
description: >
URI of this resource.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
nestedNsInstances:
description: >
Links to resources related to this notification.
type: array
items:
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
vnfSnapshotInfos:
description: >
Links to the VNF snapshots associated to VNF instances which are part of this NS instance.
type: array
items:
$ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
instantiate:
description: >
Link to the "instantiate" task resource, if the related
operation is possible based on the current status of
this NS instance resource (i.e. NS instance in
NOT_INSTANTIATED state).
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
terminate:
description: >
Link to the "terminate" task resource, if the related
operation is possible based on the current status of
this NS instance resource (i.e. NS instance is in
INSTANTIATED state).
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
update:
description: >
Link to the "update" task resource, if the related
operation is possible based on the current status of
this NS instance resource (i.e. NS instance is in
INSTANTIATED state).
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
scale:
description: >
Link to the "scale" task resource, if the related
operation is supported for this NS instance, and is
possible based on the current status of this NS
instance resource (i.e. NS instance is in
INSTANTIATED state).
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
heal:
description: >
Link to the "heal" task resource, if the related
operation is supported for this NS instance, and is
possible based on the current status of this NS
instance resource (i.e. NS instance is in
INSTANTIATED state).
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Link"
moscatelli
committed
VnfInstance:
description: >
This type represents a VNF instance.
Clause B.3.2 of ETSI GS NFV-SOL 003 [4] provides examples illustrating the relationship among the
different run-time information elements (CP, VL and link ports) used to represent the connectivity of a
VNF.
type: object
required:
- id
- vnfdId
- vnfProvider
- vnfProductName
- vnfSoftwareVersion
- vnfdVersion
- vnfPkgId
- instantiationState
properties:
id:
description: >
Identifier of the VNF instance.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
vnfInstanceName:
description: >
Name of the VNF instance.
Modifications to this attribute can be requested using the "ModifyVnfInfoData" structure.
type: string
vnfInstanceDescription:
description: >
Human-readable description of the VNF instance.
Modifications to this attribute can be requested using the "ModifyVnfInfoData" structure.
type: string
vnfdId:
description: >
Identifier of the VNFD on which the VNF instance is based.
Modifications to this attribute can be requested using the "ModifyVnfInfoData" structure.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
vnfProvider:
description: >
Provider of the VNF and the VNFD. The value is copied from the VNFD.
type: string
vnfProductName:
description: >
Name to identify the VNF Product. The value is copied from the VNFD.
type: string
vnfSoftwareVersion:
description: >
Software version of the VNF. The value is copied from the VNFD.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Version"
vnfdVersion:
description: >
Identifies the version of the VNFD. The value is copied from the VNFD.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Version"
vnfPkgId:
description: >
moscatelli
committed
Identifier of information held by the NFVO about
the specific VNF package on which the VNF is
based. This identifier has been allocated by the NFVO.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
vnfConfigurableProperties:
description: >
Additional VNF-specific attributes that provide the current values
of the configurable properties of the VNF instance.
These attributes represent values that are stored persistently in the
VnfInstance structure and that correspond to configuration parameters
of the VNF instance.
Modifying these attributes affects the configuration of the VNF instance
either directly(if the VNF instance is in INSTANTIATED state at the time
of the modification) or as part of the subsequent VNF instantiation operation
(if the VNF instance is in NOT_INSTANTIATED state at the time of the modification).
Configurable properties referred in these attributes are declared in
ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD
based on TOSCA specifications.
VNF configurable properties are sometimes also referred to as
configuration parameters applicable to a VNF. Some of these are set
prior to instantiation and cannot be modified if the VNF is
instantiated, some are set prior to instantiation (are part of
initial configuration) and can be modified later, and others can be
set only after instantiation. The applicability of certain
configuration may depend on the VNF and the required operation of
the VNF at a certain point in time.
These configurable properties include the following standard
attributes, which are declared in the VNFD if auto-scaling and/or
auto-healing are supported by the VNF:
- isAutoscaleEnabled: If present, the VNF supports auto-scaling. If
set to true, auto-scaling is currently enabled. If set to false,
auto-scaling is currently disabled.
- isAutohealEnabled: If present, the VNF supports auto-healing. If
set to true, auto-healing is currently enabled. If set to false,
auto-healing is currently disabled.
Modifications to this attribute can be requested using the "ModifyVnfInfoData" structure.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs"
vimId:
description: >
Identifier of a VIM that manages resources for the VNF instance.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
instantiationState:
description: >
The instantiation state of the VNF.
type: string
enum:
- NOT_INSTANTIATED
- INSTANTIATED
instantiatedVnfInfo:
description: >
Information specific to an instantiated VNF instance. This attribute
shall be present if the instantiateState attribute value is INSTANTIATED.
type: object
required:
- flavourId
- vnfState
properties:
flavourId:
description: >
Identifier of the VNF deployment flavor applied to this VNF instance.
$ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVnfd"
vnfState:
description: >
The state of the VNF instance.
$ref: "#/definitions/VnfOperationalStateType"
scaleStatus:
description: >
Scale status of the VNF, one entry per aspect. Represents for every
scaling aspect how "big" the VNF has been scaled w.r.t. that aspect.
type: array
items:
$ref: "#/definitions/VnfScaleInfo"
maxScaleLevels:
description: >
Maximum allowed scale levels of the VNF, one
entry per aspect.
This attribute shall be present if the VNF
supports scaling.
type: array
items:
$ref: "#/definitions/VnfScaleInfo"
extCpInfo:
description: >
Information about the external CPs exposed by the VNF instance.
When trunking is enabled, the list of entries includes both,
external CPs corresponding to parent ports of a trunk, and external
CPs associated to sub-ports of a trunk.
type: array
minItems: 1
items:
$ref: "#/definitions/VnfExtCpInfo"
extVirtualLinkInfo:
description: >
Information about the external VLs the VNF instance is connected to.
type: array
items:
$ref: "#/definitions/ExtVirtualLinkInfo"
extManagedVirtualLinkInfo:
description: >
External virtual links the VNF instance is connected to.
It is possible to have several ExtManagedVirtualLinkInfo for the same VNF internal VL in case of a multi-site
VNF spanning several VIMs. The set of ExtManagedVirtualLinkInfo corresponding to the same VNF internal VL
shall indicate so by referencing to the same VnfVirtualLinkDesc and externally-managed multi-site VL instance
(refer to clause 6.5.3.59).
type: array
items:
$ref: "#/definitions/ExtManagedVirtualLinkInfo"
monitoringParameters:
description: >
Performance metrics tracked by the VNFM (e.g. for
auto-scaling purposes) as identified by the VNF
provider in the VNFD.
$ref: "#/definitions/VnfMonitoringParameter"
localizationLanguage:
description: >
Information about localization language of the VNF (includes e.g.
strings in the VNFD). The localization languages supported by a VNF
can be declared in the VNFD, and localization language selection can
take place at instantiation time.
The value shall comply with the format defined in IETF RFC 5646.
type: string
vnfcResourceInfo:
description: >
moscatelli
committed
Information about the virtualised compute and storage resources used
by the VNFCs of the VNF instance.
type: array
items:
$ref: "#/definitions/VnfcResourceInfo"
virtualLinkResourceInfo:
description: >
Information about the virtualised network resources used by the VLs
of the VNF instance.
type: array
items:
$ref: "#/definitions/VnfVirtualLinkResourceInfo"
virtualStorageResourceInfo:
description: >
Information on the virtualised storage resource(s) used as storage for the VNF instance.
type: array
items:
$ref: "#/definitions/VirtualStorageResourceInfo"
metadata:
description: >
Additional VNF-specific attributes that provide
metadata describing the VNF instance.
These attributes represent values that are
stored persistently in the VnfInstance structure
for consumption by functional blocks that
invoke the VNF lifecycle management
interface. They are not consumed by the
VNFM, or the lifecycle management scripts.
Modifying the values of these attributes has no
effect on the VNF instance, it only affects the
information represented in the VnfInstance
structure.
Metadata that the VNF provider foresees are expected to be declared in the VNFD.
Modifications to these attributes can be requested using the "ModifyVnfInfoData" structure.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs"
extensions:
description: >
Additional VNF-specific attributes that affect the lifecycle management of this VNF instance.
These attributes represent values that are stored persistently in the VnfInstance structure
for consumption by the VNFM, or by the lifecycle management scripts. during the execution
of VNF lifecycle management operations.
Modifying the values of these attributes has no direct effect on the VNF instance; however,
the modified attribute values can be considered during subsequent VNF lifecycle management
operations, which means that the modified values can indirectly affect the configuration of the VNF instance.
Extensions that are allowed for the VNF are declared in the VNFD.
Modifications to these attributes can be requested using the "ModifyVnfInfoData" structure.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs"
moscatelli
committed
moscatelli
committed
required:
moscatelli
committed
properties:
nsInstance:
description: >
Link to the resource representing the NS instance to
which the notified change applies..
$ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink"
subscription:
description: >
Link to the subscription that triggered this notification.
$ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink"
description: >
Link to the lifecycle operation occurrence that this
notification is related to. Shall be present if there is a
related lifecycle operation occurrence
$ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink"
moscatelli
committed
VnfOperationalStateType:
type: string
enum:
- STARTED
- STOPPED
moscatelli
committed
VnfScaleInfo:
required:
- aspectId
- scaleLevel
type: object
properties:
aspectId:
description: >
Identifier of the scaling aspect.
$ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVnfd"
vnfdId:
description: >
Identifier of the VNFD.
Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change
current VNF package" operation or due to its final failure).
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
scaleLevel:
description: >
Indicates the scale level. The minimum value shall be 0 and the
maximum value shall be <= maxScaleLevel as described in the VNFD.
type: integer
PnfInfo:
description: >
This type represents the information about a PNF that is part of an NS instance.
It shall comply with the provisions
defined in Table 6.5.3.13-1.
type: object
required:
- pnfId
- pnfdId
- pnfdInfoId
- pnfProfileId
properties:
pnfId:
description: >
Identifier of the PNF. This identifier is allocated by the OSS/BSS.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
pnfName:
description: >
Name of the PNF.
type: string
pnfdId:
description: >
Identifier of the PNFD on which the PNF is based.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
pnfdInfoId:
description: >
Identifier of the PNFD information onject related to this
PNF. This identifier is allocated by the NFVO
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
pnfProfileId:
description: >
Identifier of the related PnfProfile in the NSD on which
the PNF is based.
$ref: "#/definitions/IdentifierInNsd"
cpInfo:
description: >
Information on the external CP of the PNF.
$ref: "#/definitions/PnfExtCpInfo"
moscatelli
committed
PnfExtCpInfo:
description: >
This type represents the information about the external CP of the PNF.
It shall comply with the provisions defined in
Table 6.5.3.17-1.
type: object
required:
- cpInstanceId
- cpdId
properties:
cpInstanceId:
description: >
Identifier of the CP in the scope of the PNF.
$ref: "#/definitions/IdentifierInPnf"
cpdId:
description: >
Identifier of (reference to) the Connection Point
Descriptor (CPD) for this CP.
$ref: "#/definitions/IdentifierInNsd"
cpProtocolData:
description: >
Parameters for configuring the network protocols on the CP.
type: array
moscatelli
committed
items:
Samir Medjiah
committed
$ref: "#/definitions/CpProtocolData"
moscatelli
committed
NsVirtualLinkInfo:
description: >
This type specifies the information about an NS VL instance.
It shall comply with the provisions defined in
Table 6.5.3.53-1
type: object
required:
- id
- nsVirtualLinkDescId
- nsVirtualLinkProfileId
properties:
id:
description: >
Identifier of the VL instance.
$ref: "#/definitions/IdentifierInNs"
nsVirtualLinkDescId:
description: >
Identifier of the VLD in the NSD.
$ref: "#/definitions/IdentifierInNsd"
nsVirtualLinkProfileId:
description: >
Identifier of the VL profile in the NSD.
$ref: "#/definitions/IdentifierInNsd"
resourceHandle:
description: >
Identifier(s) of the virtualised network resource(s) and/or multi-site connectivity service(s)
realizing the VL instance.
As an NS can include NFs deployed in NFVI PoPs under the control of several different VIMs, therefore deploying
an NS VL can involve several VIMs, each allocating different virtualised network resources, as well as WIMs
handling the connectivity in between the NFVI-PoPs in the form of multi-site connectivity services. When this
NsVirtualLink is provided as an ExtVirtualLink as input of a VNF LCM operation, the id of the ExtVirtualLink
shall be the same as the corresponding NsVirtualLink.
moscatelli
committed
items:
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/ResourceHandle"
linkPort:
description: >
Link ports of the VL instance.
Cardinality of zero indicates that no port has yet been
created for the VL instance.
type: array
moscatelli
committed
items:
$ref: "#/definitions/NsLinkPortInfo"
VnffgInfo:
description: >
Information on the VNFFG(s) of the NS instance.
type: object
required:
- id
- vnffgdId
- vnfInstanceId
- pnfInfoId
properties:
id:
description: >
Identifier of this VNFFG instance.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
vnffgdId:
description: >
Identifier of the VNFFGD in the NSD.
$ref: "#/definitions/IdentifierInNsd"
vnfInstanceId:
description: >
Identifier(s) of the constituent VNF instance(s) of this VNFFG instance.
type: array
moscatelli
committed
items:
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
pnfdInfoId:
description: >
Identifier(s) of the constituent PNF instance(s) of this
VNFFG instance.
type: array
moscatelli
committed
items:
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
nsVirtualLinkInfoId:
description: >
Identifier(s) of the constituent VL instance(s) of this
VNFFG instance.
type: array
moscatelli
committed
items:
$ref: "#/definitions/IdentifierInNs"
nsCpHandle:
description: >
Identifiers of the CP instances attached to the
constituent VNFs and PNFs or the SAP instances of the
VNFFG. See note.
NfpInfo:
description: >
This type represents an NFP instance. It shall comply with
the provisions defined in Table 6.5.3.66-1.
type: object
required:
- id
- nfpRule
- nfpState
properties:
id:
description: >
Identifier of this NFP instance.
$ref: "#/definitions/IdentifierInNs"
nfpdId:
description: >
Identifier of the NFPD used to instantiate this NFP
instance. It shall be present if the NFP instance is
instantiated from the NFPD.
$ref: "#/definitions/IdentifierInNsd"
nfpName:
description: >
Human readable name for the NFP instance.
type: string
description:
description: >
Human readable description for the NFP instance.
type: string
cpGroup:
description: >
Group(s) of CPs and/or SAPs which the NFP passes through.
When multiple identifiers are included, the position of
the identifier in the CpGroup data type specifies the
position of the group in the path.
type: array
minItems: 1
items:
totalCp:
description: >
Total number of CP and SAP instances in this NFP instance.
type: integer
nfpRule:
description: >
NFP classification and selection rule.
$ref: "#/definitions/NfpRule"
nfpState:
description: >
The state of the NFP instance.
Permitted values:
* ENABLED: The NFP instance is enabled.
* DISABLED: The NFP instance is disabled.
type: string
enum:
- ENABLED
- DISABLED
NsCpHandle:
description: >
This type represents an identifier of the CP or SAP instance.
It shall comply with the provisions defined in
Table 6.5.3.56-1.
moscatelli
committed
type: object
oneOf:
- required:
- vnfInstanceId
- vnfExtCpInstanceId
- required:
- pnfInfoId
- pnfExtCpInstanceId
- required:
- nsInstanceId
- nsSapInstanceId
properties:
vnfInstanceId:
description: >
Identifier of the VNF instance associated to the CP instance.
This attribute shall be present if the CP instance is VNF external CP.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
vnfExtCpInstanceId:
description: >
Identifier of the VNF external CP instance in the scope
of the VNF instance. This attribute shall be present if the CP instance is VNF
external CP. See notes 1 and 4.
$ref: "#/definitions/IdentifierInVnf"
pnfInfoId:
description: >
Identifier of the PNF instance associated to the CP
instance. This attribute shall be present if the CP instance is PNF
external CP. See notes 2 and 4.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
pnfExtCpInstanceId:
description: >
Identifier of the PNF external CP instance in the scope
of the PNF. This attribute shall be present if the CP instance is PNF
external CP. See notes 2 and 4.
$ref: "#/definitions/IdentifierInPnf"
nsInstanceId:
description: >
Identifier of the NS instance associated to the SAP
instance. This attribute shall be present if the CP instance is NS
SAP. See notes 3 and 4.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
nsSapInstanceId:
description: >
Identifier of the SAP instance in the scope of the NS
instance. This attribute shall be present if the CP instance is NS
SAP. See notes 3 and 4.
$ref: "#/definitions/IdentifierInNs"
moscatelli
committed
SapInfo:
description: >
This type represents an SAP instance. It shall comply with the provisions defined in Table 6.5.3.67-1.
type: object
required:
- id
- sapdId
- sapName
- sapProtocolInfo
properties:
id:
description: >
Identifier of the SAP instance.
$ref: "#/definitions/IdentifierInNs"
sapdId:
description: >
Identifier of the SAPD in the NSD.
$ref: "#/definitions/IdentifierInNsd"
sapName:
description: >
Human readable name for the SAP instance.
type: string
description:
description: >
Human readable description for the SAP instance.
type: string
sapProtocolInfo:
description: >
Network protocol information for this SAP.
type: array
moscatelli
committed
items:
$ref: "#/definitions/CpProtocolInfo"
moscatelli
committed
NsMonitoringParameter:
description: >
This type represents a monitoring parameter that is tracked by the NFVO, for example,
for auto-scaling purposes. It shall comply with the provisions defined in Table 6.5.3.68-1.
type: object
required:
- id
- performanceMetric
properties:
id:
description: >
Identifier of the monitoring parameter defined in the NSD.
$ref: "#/definitions/IdentifierInNsd"
name:
description: >
Human readable name of the monitoring parameter, as defined in the NSD.
type: string
performanceMetric:
description: >
Performance metric that is monitored. This attribute shall contain the related
"Measurement Name" value as defined in clause 7.2 of ETSI GS NFV-IFA 027.
type: string
VnfMonitoringParameter:
description: >
This type represents a monitoring parameter that is tracked by the VNFM, for example,
for auto-scaling purposes. It shall comply with the provisions defined in Table 6.5.3.69-1.
type: object
required:
- id
- performanceMetric
properties:
id:
description: >
Identifier of the monitoring parameter defined in the VNFD.
$ref: "#/definitions/IdentifierInNsd"
vnfdId:
description: >
Identifier of the VNFD.
Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a
"Change current VNF package" operation or due to its final failure).
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
name:
description: >
Human readable name of the monitoring parameter, as defined in the VNFD.
type: string
performanceMetric:
description: >
Performance metric that is monitored. This attribute shall contain the related
"Measurement Name" value as defined in clause 7.2 of ETSI GS NFV-IFA 027.
type: string
VnfExtCpInfo:
description: >
This type represents information about an external CP of a VNF. It shall comply
with the provisions defined in Table 6.5.3.70-1.
type: object
required:
- id
- cpdId
- required:
- associatedVnfcCpId
- required:
- associatedVnfVirtualLinkId
properties:
id:
description: >
Identifier of the external CP instance and the related information instance.
$ref: "#/definitions/IdentifierInVnf"
cpdId:
description: >
Identifier of the external CPD, VnfExtCpd, in the VNFD.
$ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVnfd"
cpConfigId:
description: >
Identifier that references the applied "VnfExtCpConfig" entry in the "cpConfig"
map of the "currentVnfExtCpData" in the "ExtVirtualLinkInfo" structure.
$ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVnfd"
vnfdId:
description: >
Identifier of the VNFD.
Shall be present in case the value differs from the vnfdId attribute of the
VnfInstance (e.g. during a "Change current VNF package" operation or due to
its final failure).
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
cpProtocolInfo:
description: >
Network protocol information for this CP.
type: array
minItems: 1
items:
$ref: "#/definitions/CpProtocolInfo"
extLinkPortId:
description: >
Identifier of the "extLinkPortInfo" structure inside the "extVirtualLinkInfo"
structure. Shall be present if the CP is associated to a link port.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
metadata:
description: >
Metadata about this external CP.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs"
associatedVnfcCpId:
description: >
Identifier of the "vnfcCpInfo" structure in "VnfcResourceInfo" structure
that represents the VNFC CP which is exposed by this external CP instance.
Shall be present in case this CP instance maps to a VNFC CP(s).
The attributes "associatedVnfcCpId" and "associatedVnfVirtualLinkId" are
mutually exclusive. One and only one shall be present.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
associatedVnfVirtualLinkId:
description: >
Identifier of the "VnfVirtualLinkResourceInfo" structure that represents
the internal VL, which is exposed by this external CP instance. Shall be
present in case this CP instance maps to an internal VL.
The attributes "associatedVnfcCpId" and "associatedVnfVirtualLinkId" are
mutually exclusive. One and only one shall be present.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
CpGroupInfo:
description: >
This type represents describes a group of CPs and/or SAPs pairs associated to
the same position in an NFP. It shall comply with the provisions defined in
Table 6.5.3.71-1.
type: object
properties:
cpPairInfo:
description: >
One or more pair(s) of ingress and egress CPs or SAPs which the NFP passes by.
All CP or SAP pairs in a group shall be instantiated from connection point
descriptors or service access point descriptors referenced in the corresponding
NfpPositionDesc.
type: array
minItems: 1
items:
$ref: "#/definitions/CpPairInfo"
forwardingBehaviour:
description: >
Identifies a rule to apply to forward traffic to the ingress CPs or SAPs of
the group.
Permitted values:
* ALL = Traffic flows shall be forwarded simultaneously to all CPs or SAPs
of the group.
* LB = Traffic flows shall be forwarded to one CP or SAP of the group selected
based on a loadbalancing algorithm.
type: string
enum:
- ALL
- LB
forwardingBehaviourInputParameters:
description: >
Provides input parameters to configure the forwarding behaviour (e.g. identifies
a load balancing algorithm and criteria).
$ref: "#/definitions/ForwardingBehaviourInputParameters"
CpPairInfo:
description: >
This type represents describes a pair of ingress and egress CPs or SAPs which
the NFP passes by. It shall comply with the provisions defined in Table 6.5.3.72-1.
type: object
properties:
vnfExtCpIds:
description: >
Identifier(s) of the VNF CP(s) which form the pair.
The presence of a single vnfExpCpId, pnfExtCpId, or sapId occurrence indicates
that the CP or SAP is used both as an ingress and egress port at a particular
NFP position.
type: array
maxItems: 2
items:
$ref: "#/definitions/IdentifierInVnf"
pnfExtCpIds:
description: >
Identifier(s) of the PNF CP(s) which form the pair.
The presence of a single vnfExpCpId, pnfExtCpId, or sapId occurrence indicates
that the CP or SAP is used both as an ingress and egress port at a particular
NFP position.
type: array
maxItems: 2
items:
$ref: "#/definitions/IdentifierInPnf"
sapIds:
description: >
Identifier(s) of the SAP(s) which form the pair.
The presence of a single vnfExpCpId, pnfExtCpId, or sapId occurrence indicates
that the CP or SAP is used both as an ingress and egress port at a particular
NFP position.
type: array
maxItems: 2
items:
$ref: "#/definitions/IdentifierInNs"
Samir Medjiah
committed
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
ForwardingBehaviourInputParameters:
description: >
This type represents provides input parameters to configure the forwarding behaviour.
It shall comply with the provisions defined in Table 6.5.3.73-1.
type: object
properties:
algortihmName:
description: >
May be included if forwarding behaviour is equal to LB. Shall not be included otherwise.
Permitted values:
* ROUND_ROBIN
* LEAST_CONNECTION
* LEAST_TRAFFIC
* LEAST_RESPONSE_TIME
* CHAINED_FAILOVER
* SOURCE_IP_HASH
* SOURCE_MAC_HASH
type: string
enum:
- ROUND_ROBIN
- LEAST_CONNECTION
- LEAST_TRAFFIC
- LEAST_RESPONSE_TIME
- CHAINED_FAILOVER
- SOURCE_IP_HASH
Samir Medjiah
committed
algorithmWeights:
description: >
Percentage of messages sent to a CP instance. May be included if applicable to
the algorithm.
If applicable to the algorithm but not provided, default values determined by
the VIM or NFVI are expected to be used.
Weight applies to the CP instances in the order they have been created.
type: array
items:
type: integer
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
CpProtocolInfo:
description: >
This type describes the protocol layer(s) that a CP or SAP uses together with protocol-related information, like
addresses. It shall comply with the provisions defined in Table 6.5.3.58-1.
type: object
required:
- layerProtocol
- ipOverEthernet
properties:
layerProtocol:
description: >
The identifier of layer(s) and protocol(s)
associated to the network address information.
Permitted values: IP_OVER_ETHERNET See note.
type: string
enum:
- IP_OVER_ETHERNET
ipOverEthernet:
description: >
IP addresses over Ethernet to assign to the CP
or SAP instance. Shall be present if
layerProtocol is equal to "
IP_OVER_ETHERNET", and shall be absent otherwise.
$ref: "#/definitions/IpOverEthernetAddressInfo"
IpOverEthernetAddressInfo:
moscatelli
committed
description: >
This type represents information about a network address that has been assigned.
It shall comply with the provisions defined in Table 6.5.3.18-1.
type: object
anyOf:
- required:
- macAddress
- required:
- ipAddresses
moscatelli
committed
properties:
macAddress:
description: >
Assigned MAC address.
$ref: "#/definitions/MacAddress"
segmentationId:
description: >
Identification of the network segment to which the Cp instance connects to.
If the Cp instance represents a subport in a trunk, "segmentationId" shall be present.
Otherwise it shall not be present.
Depending on the NFVI networking infrastructure, the "segmentationId" may indicate the actual network segment
value (e.g. vlan Id, Vxlan segmentation id, etc.) used in the transport header of the packets or it may be an
identifier used between the application and the NFVI networking infrastructure to identify the network sub-interface
of the trunk port in question. In the latter case the NFVI infrastructure will map this local "segmentationId"
to whatever "segmentationId" is actually used by the NFVI’s transport technology.
type: string
moscatelli
committed
ipAddresses:
description: >
Addresses assigned to the CP instance. Each entry represents IP
addresses assigned by fixed or dynamic IP address assignment per
subnet.
type: array
items:
type: object
required:
- type
oneOf:
- required:
- addresses
- required:
- addressRange
moscatelli
committed
properties:
type:
description: >
The type of the IP addresses.
Permitted values: IPV4, IPV6.
type: string
enum:
- IPV4
- IPV6
addresses:
description: >
Fixed addresses assigned (from the subnet defined by
"subnetId" if provided).
type: array
items:
$ref: "#/definitions/IpAddress"
moscatelli
committed
isDynamic:
description: >
Indicates whether this set of addresses was assigned
dynamically (true) or based on address information provided as
input from the API consumer (false). Shall be present if
"addresses" is present and shall be absent otherwise.
type: boolean
addressRange:
description: >
An IP address range used, e.g., in case of egress connections.
Exactly one of "addresses" or "addressRange" shall be present.
type: object
required:
- minAddress
- maxAddress
properties:
minAddress:
description: >
Lowest IP address belonging to the range.
$ref: "#/definitions/IpAddress"
moscatelli
committed
maxAddress:
description: >
Highest IP address belonging to the range
$ref: "#/definitions/IpAddress"
moscatelli
committed
subnetId:
description: >
Subnet defined by the identifier of the subnet resource in
the VIM.
In case this attribute is present, IP addresses are bound
to that subnet.
$ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVim"
moscatelli
committed
type:
description: >
The type of the IP addresses
type: string
enum:
- PV4
- PV6
addresses:
description: >
Fixed addresses assigned (from the subnet
defined by "subnetId" if provided). See note.
type: array
items:
$ref: "#/definitions/IpAddress"
moscatelli
committed
isDynamic:
description: >
Indicates whether this set of addresses was
assigned dynamically (true) or based on address
information provided as input from the API
consumer (false). Shall be present if "addresses"
is present and shall be absent otherwise.
type: boolean
addressRange:
description: >
An IP address range used, e.g. in case of egress
connections. See note.
type: object
required:
- minAddress
- maxAddress
properties:
minAddress:
description: >
Lowest IP address belonging to the range.
$ref: "#/definitions/IpAddress"
moscatelli
committed
maxAddress:
description: >
Highest IP address belonging to the range
$ref: "#/definitions/IpAddress"
moscatelli
committed
minAddress:
description: >
Lowest IP address belonging to the range
$ref: "#/definitions/IpAddress"
moscatelli
committed
maxAddress:
description: >
Highest IP address belonging to the range.
$ref: "#/definitions/IpAddress"
moscatelli
committed
subnetId:
description: >
Subnet defined by the identifier of the subnet
resource in the VIM.
In case this attribute is present, IP addresses
are bound to that subnet.
$ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVim"
moscatelli
committed
ExtVirtualLinkInfo:
type: object
required:
- id
- resourceHandle
properties:
id:
moscatelli
committed
description: >
Identifier of the external VL and the related external VL
information instance.
The identifier is assigned by the NFV-MANO entity that manages this
VL instance.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
resourceHandle:
description: >
Reference to the resource realizing this VL.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/ResourceHandle"
extLinkPorts:
description: >
Link ports of this VL.
type: array
items:
$ref: "#/definitions/ExtLinkPortInfo"
currentVnfExtCpData:
description: >
Allows the API consumer to read the current CP configuration information
for the connection of external CPs to the external virtual link, as
specified in clause 5.5.3.2 of ETSI GS NFV-SOL 003.
$ref: "#/definitions/VnfExtCpData"
ExtLinkPortInfo:
description: >
This type represents information about a link port of an external VL,
i.e. a port providing connectivity for the VNF to an NS VL.
type: object
required:
- id
- resourceHandle
properties:
id:
description: >
Identifier of this link port as provided by the entity that has
created the link port.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
resourceHandle:
description: >
Reference to the virtualised resource realizing this link port.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/ResourceHandle"
cpInstanceId:
description: >
Identifier of the external CP of the VNF connected to this link
port. There shall be at most one link port associated with any
external connection point instance. The value refers to an
"extCpInfo" item in the VnfInstance.
$ref: "#/definitions/IdentifierInVnf"
ExtManagedVirtualLinkInfo:
type: object
required:
- id
- vnfVirtualLinkDescId
properties:
id:
description: >
Identifier of the externally-managed internal VL and the related
externally-managed VL information instance.
The identifier is assigned by the NFV-MANO entity that manages this
VL instance.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
vnfdId:
description: >
Identifier of the VNFD.
Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a
"Change current VNF package" operation or due to its final failure).
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
vnfVirtualLinkDescId:
description: >
Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD.
$ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVnfd"
networkResource:
description: >
Reference to the VirtualNetwork resource or multi-site connectivity service providing this VL.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/ResourceHandle"
vnfLinkPorts:
description: >
Link ports of this VL.
type: array
items:
$ref: "#/definitions/VnfLinkPortInfo"
extManagedMultisiteVirtualLinkId:
description: >
Identifier of the externally-managed multi-site VL instance. The identifier is assigned by the NFV-MANO entity
that manages the externally managed multi-site VL instance. It shall be present when the present externally-managed
internal VL is part of a multi-site VL, e.g., in support of multi-site VNF spanning several VIMs.
All externally-managed internal VL instances corresponding to an internal VL created based on the same virtualLinkDescId
shall refer to the same extManagedMultisiteVirtualLinkId.
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
VnfLinkPortInfo:
type: object
required:
- id
- resourceHandle
properties:
id:
description: >
Identifier of this link port as provided by the entity that has created the link port.
$ref: "#/definitions/IdentifierInVnf"
resourceHandle:
description: >
Reference to the virtualised resource realizing this link port.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/ResourceHandle"
cpInstanceId:
description: >
When the link port is used for external connectivity by the VNF,
this attribute represents the identifier of the external CP of the
VNF to be connected to this link port.
When the link port is used for internal connectivity in the VNF,
this attribute represents the VNFC CP to be connected to this link
port.
Shall be present when the link port is used for external
connectivity by the VNF.
may be present if used to reference a VNFC CP instance.
There shall be at most one link port associated with any external
connection point instance or internal connection point
(i.e. VNFC CP) instance.
The value refers to an "extCpInfo" item in the VnfInstance or a
"vnfcCpInfo" item of a "vnfcResouceInfo" item in the VnfInstance.
$ref: "#/definitions/IdentifierInVnf"
cpInstanceType:
description: >
Type of the CP instance that is identified by cpInstanceId.
Shall be present if "cpInstanceId" is present, and shall be
absent otherwise.
Permitted values:
* VNFC_CP: The link port is connected to a VNFC CP
* EXT_CP: The link port is associated to an external CP.
type: string
enum:
- VNFC_CP
- EXT_CP
MonitoringParameter:
type: object
required:
- id
- value
- timeStamp
properties:
id:
description: >
Identifier of the monitoring parameter defined in the VNFD.
$ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVnfd"
name:
description: >
Human readable name of the monitoring parameter, as defined in the VNFD.
type: string
value:
description: >
Value of the monitoring parameter known to the VNFM (e.g. obtained
rameshnaraya
committed
for auto-scaling purposes).
The type of the "value" attribute (i.e. scalar, structure (Object in
JSON), or array (of scalars, arrays or structures/Objects)) is
assumed to be defined in an external measurement specification.
type: object
rameshnaraya
committed
timeStamp:
description: >
Represents the point in time when the measurement has been performed,
as known to the VNFM.
Should be formatted according to ETF RFC 3339.
type: string
VnfcResourceInfo:
description: >
This type represents the information on virtualised compute and storage
resources used by a VNFC in a VNF instance.
type: object
required:
- id
- vduId
- computeResource
properties:
id:
description: >
Identifier of this VnfcResourceInfo instance.
$ref: "#/definitions/IdentifierInVnf"
vnfdId:
description: >
Identifier of the VNFD.
Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a
"Change current VNF package" operation or due to its final failure).
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
vduId:
description: >
Reference to the applicable VDU in the VNFD.
$ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVnfd"
computeResource:
description: >
Reference to the VirtualCompute resource.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/ResourceHandle"
storageResourceIds:
description: >
References to the VirtualStorage resources. The value refers to a
VirtualStorageResourceInfo item in the VnfInstance.
type: array
items:
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
reservationId:
description: >
The reservation identifier applicable to the resource. It shall be
present when an applicable reservation exists.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
vnfcCpInfo:
description: >
CPs of the VNFC instance.
Shall be present when that particular CP of the VNFC instance is
exposed as an external CP of the VNF instance or is connected to
an external CP of the VNF instance.
A VNFC CP is "connected to" an external CP if the VNFC CP is
connected to an internal VL that exposes an external CP. A VNFC
CP is "exposed as" an external CP if it is connected directly to
an external VL. May be present otherwise.
type: array
items:
type: object
required:
- id
- cpdId
properties:
id:
description: >
Identifier of this VNFC CP instance and the associated array
entry.
$ref: "#/definitions/IdentifierInVnf"
cpdId:
description: >
Identifier of the VDU CPD, cpdId, in the VNFD.
$ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVnfd"
vnfExtCpId:
description: >
Identifier of the related external CP. Shall be present when the VNFC CP is exposed as an external CP
of the VNF instance or connected to an external CP of the VNF instance and shall be absent otherwise.
A VNFC CP is "connected to" an external CP if the VNFC CP is connected to an internal VL that exposes
an external CP. A VNFC CP is "exposed as" an external CP if it is connected directly to an external VL.
$ref: "#/definitions/IdentifierInVnf"
cpProtocolInfo:
description: >
Network protocol information for this CP.
May be omitted if the VNFC CP is exposed as an external CP.
The information can be omitted because it is already available as part of the external CP information.
type: array
items:
$ref: "#/definitions/CpProtocolInfo"
vnfLinkPortId:
description: >
Identifier of the "vnfLinkPorts" structure in the "VnfVirtualLinkResourceInfo" structure. Shall be present if
the CP is associated to a link port on an internal VL of the VNF instance and shall be absent otherwise.
$ref: "#/definitions/IdentifierInVnf"
metadata:
description: >
Metadata about this CP.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs"
metadata:
description: >
Metadata about this resource.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs"
VnfVirtualLinkResourceInfo:
moscatelli
committed
description: >
This type represents the information that allows addressing a virtualised
resource that is used by an internal VL instance in a VNF instance.
type: object
required:
- id
- vnfVirtualLinkDescId
- networkResource
properties:
id:
description: >
Identifier of this VnfVirtualLinkResourceInfo instance.
$ref: "#/definitions/IdentifierInVnf"
vnfdId:
description: >
Identifier of the VNFD.
Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a
"Change current VNF package" operation or due to its final failure).
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
moscatelli
committed
vnfVirtualLinkDescId:
description: >
Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD.
$ref: "../../definitions/SOL005_def.yaml#/definitions/IdentifierInVnfd"
moscatelli
committed
networkResource:
description: >
Reference to the VirtualNetwork resource.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/ResourceHandle"
moscatelli
committed
reservationId:
description: >
The reservation identifier applicable to the resource. It shall be
present when an applicable reservation exists.
Samir Medjiah
committed
$ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier"
moscatelli
committed
vnfLinkPorts:
description: >
Links ports of this VL.
Shall be present when the linkPort is used for external connectivity
by the VNF (refer to VnfLinkPortInfo).
May be present otherwise.
type: array
items:
$ref: "#/definitions/VnfLinkPortInfo"
metadata:
description: >
Metadata about this resource.