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