Newer
Older
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
CertificateInfo:
description: >
This type provides input information related to certificate and certificate
management. It shall comply with the provisions defined in table 5.5.3.37-1.
type: object
required:
- id
properties:
id:
description: Identifier of this certificate information.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
certificateConfigurationInfo:
description: >
Configuration for certificate management such as certificate profile
and security policy.
$ref: "#/definitions/CertificateConfigurationInfo"
certificateContents:
description: >
Information for contents of issued certificates. The information
contained in this attribute may be updated over time during the VNF
LCM, e.g., certificate(s) renewal.
type: array
items:
$ref: "#/definitions/CertificateContent"
CertificateConfigurationInfo:
description: >
This type provides input information related to certificate management.
It shall comply with the provisions defined in table 5.5.3.38-1.
type: object
properties:
certificateBaseProfile:
description: Information for certificate profile.
type: array
items:
$ref: "#/definitions/CertificateBaseProfile"
securityPolicy:
description: Information for security policy to be satisfied for certificate.
type: array
items:
$ref: "#/definitions/SecurityPolicy"
delegationSupportedCertificateManagements:
description: Describes supported certificate management information.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs"
cmfInfo:
description: Information for CMF.
$ref: "#/definitions/CmfInfo"
CertificateContent:
description: >
NOTE: The CertificateDesc data type is defined in clause 7.1.19.2 of ETSI GS NFV IFA 011 [10].
This type provides input information related to certificate content.
It shall comply with the provisions defined in table 5.5.3.39-1.
type: object
required:
- id
- certificateDescId
- certificateType
properties:
id:
description: Identifier of this certificate.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
certificateDescId:
description: >
Identifier of certificate description in VNFD to be used to issue
this certificate. See note.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd"
certificateType:
description: Type of this certificate.
type: string
enum:
- VNFCI_CERT
- VNFOAM_CERT
supportedCertificateManagements:
description: Describes supported certificate management information.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs"
version:
description: Version of this certificate.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Version"
serialNumber:
description: Serial number of this certificate.
type: integer
signatureAlgorithm:
description: Algorithm of this certificate’s signature.
type: string
issuer:
description: Issuer of this certificate.
type: string
notBefore:
description: Start date of the valid period for this certificate.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime"
notAfter:
description: End date of the valid period for this certificate.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime"
subject:
description: Subject of this certificate.
type: string
publicKeyAlgorithm:
description: Algorithm of this certificate’s public key.
type: string
publicKey:
description: Public key of this certificate.
type: string
certificateExtensions:
description: Extension of this certificate.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs"
CreateVnfRequest:
description: >
This type represents request parameters for the "Create VNF identifier" operation.
type: object
required:
- vnfdId
properties:
vnfdId:
description: >
Identifier that identifies the VNFD which defines the VNF instance to
be created.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
vnfInstanceName:
description: >
Human-readable name of the VNF instance to be created.
type: string
vnfInstanceDescription:
description: >
Human-readable description of the VNF instance to be created.
type: string
metadata:
description: >
If present, this attribute provides additional initial values, overriding those obtained from the VNFD, for
the "metadata" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling metadata
during the operation are defined in clause 5.4.2.3.1.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs"
certificateConfigurationData:
description: >
Configuration for certificate management such as certificate profile, information of CMF and security policy
in this VNF. It shall be present when using delegation mode, otherwise it shall be absent.
This attribute shall be supported when delegation mode of certificate management is applicable.
$ref: "#/definitions/CertificateConfigurationData"
ScaleVnfRequest:
description: >
This type represents request parameters for the "Scale VNF" operation.
type: object
required:
- type
- aspectId
properties:
type:
description: >
Indicates the type of the scale operation requested.
Permitted values:
* SCALE_OUT: adding additional VNFC instances to the VNF to increase
capacity
* SCALE_IN: removing VNFC instances from the VNF in order to release
unused capacity.
type: string
enum:
- SCALE_OUT
- SCALE_IN
aspectId:
description: >
Identifier of the scaling aspect.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd"
numberOfSteps:
description: >
Number of scaling steps to be executed as part of this Scale VNF
operation. It shall be a positive number and the default value
shall be 1.
type: integer
default: 1
additionalParams:
description: >
Additional parameters passed by the NFVO as input to the scaling
process, specific to the VNF being scaled, as declared in the VNFD
as part of "ScaleVnfOpConfig" defined in ETSI GS NFV-IFA 011 [10].
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs"
ScaleVnfToLevelRequest:
description: >
This type represents request parameters for the "Scale VNF to Level" operation.
NOTE 1: Either the instantiationLevelId attribute or the scaleInfo attribute shall
be included.
NOTE 2: If the referenced instantiationLevel or the scaleInfo attribute contain information related to VNFCs that are not
going to be instantiated due to the selection of deployable modules, the information is stored in the VNFM for
later use and included in the instantiatedVnfInfo. If, during the lifecycle of the VNF, as a result of a change of
the selected deployable modules any of those VNFCs is going to be instantiated, the stored information
determines the number of instances, unless the request that triggered the change also contains information
about the number of instances
type: object
anyOf:
- oneOf:
- required:
- instantiationLevelId
- required:
- scaleInfo
properties:
instantiationLevelId:
description: >
Identifier of the target instantiation level of the current
deployment flavour to which the VNF is requested to be scaled.
See note 1 and 2.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd"
scaleInfo:
description: >
For each scaling aspect of the current deployment flavour, indicates
the target scale level to which the VNF is to be scaled.
See note 1 and 2.
type: array
items:
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ScaleInfo"
additionalParams:
description: >
Additional parameters passed by the NFVO as input to the scaling
process, specific to the VNF being scaled, as declared in the
VNFD as part of "ScaleVnfToLevelOpConfig" defined in ETSI GS NFV-IFA 011 [10].
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs"
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
CancelMode:
description: >
This type represents a parameter to select the mode of cancelling an
ongoing VNF LCM operation occurrence.
type: object
required:
- cancelMode
properties:
cancelMode:
description: >
Cancellation mode to apply.
$ref: "#/definitions/CancelModeType"
LccnSubscriptionRequest:
description: >
This type represents a subscription request related to notifications
about VNF lifecycle changes.
type: object
required:
- callbackUri
properties:
filter:
description: >
Filter settings for this subscription, to define the subset of all
notifications this subscription relates to. A particular
notification is sent to the subscriber if the filter matches, or if
there is no filter.
$ref: "#/definitions/LifecycleChangeNotificationsFilter"
callbackUri:
description: >
The URI of the endpoint to send the notification to.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri"
authentication:
description: >
Authentication parameters to configure the use of Authorization when
sending notifications corresponding to this subscription, as defined
in clause 8.3.4 of ETSI GS NFV-SOL 013.
This attribute shall only be present if the subscriber requires
authorization of notifications.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/SubscriptionAuthentication"
verbosity:
description: >
This attribute signals the requested verbosity of LCM operation occurrence notifications. If it is not present,
it shall default to the value "FULL".
$ref: "#/definitions/LcmOpOccNotificationVerbosityType"
LccnSubscription:
description: >
This type represents a subscription related to notifications about VNF
lifecycle changes.
type: object
required:
- id
- callbackUri
- verbosity
- _links
properties:
id:
description: >
Identifier of this subscription resource.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
filter:
description: >
Filter settings for this subscription, to define the subset of all
notifications this subscription relates to. A particular
notification is sent to the subscriber if the filter matches, or if
there is no filter.
$ref: "#/definitions/LifecycleChangeNotificationsFilter"
callbackUri:
description: >
The URI of the endpoint to send the notification to.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri"
verbosity:
description: >
This attribute signals the verbosity of LCM operation occurrence notifications.
$ref: "#/definitions/LcmOpOccNotificationVerbosityType"
_links:
description: >
Links to resources related to this resource.
type: object
required:
- self
properties:
self:
description: >
URI of this resource.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link"
ExtVirtualLinkInfo:
description: >
This type represents information about an external VL.
NOTE: This attribute reflects the current configuration information that has resulted from merging into this attribute
the "VnfExtCpData" information which was passed as part of the "ExtVirtualLinkData" structure in the input of the
most recent VNF LCM operation such as "InstantiateVnfRequest", "ChangeExtVnfConnectivityRequest", "ChangeVnfFlavourRequest"
or "ChangeCurrentVnfPkgRequest", or in the Grant response. If applying such change results in an empty list of
"currentVnfExtCpData" structure instances, the affected instance of "ExtVirtualLinkInfo" shall be removed from its
parent data structure.
type: object
required:
- id
- resourceHandle
- currentVnfExtCpData
properties:
id:
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.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
resourceHandle:
description: >
Reference to the resource realizing this VL.
$ref: "../../General_Definitions/SOL003_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. See note.
type: array
items:
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VnfExtCpData"
extNetAttDefResource:
description: >
Network attachment definition resources that provide the specification of the interface to attach connection points
to this VL.
type: array
items:
$ref: "#/definitions/NetAttDefResourceInfo"
VnfLinkPortInfo:
description: >
This type represents a link port of an internal VL of a VNF.
NOTE 1: Either cpInstanceId with cpInstanceType set to "EXT_CP" or any combination of cpInstanceId
with cpInstanceType set to "VNFC_CP" and vipCpInstanceId (i.e. one or both of them) shall be
present for a VnfLinkPortInfo. In case both cpInstanceId with cpInstanceType set to "VNFC_CP"
and vipCpInstanceId are present, the two different CP instances share the linkport.
NOTE 2: Annex A.4 of ETSI GS NFV-IFA 007 provides examples for configurations where both vipCpInstanceId
and vnfcCpInstanceId are present (UC#5 and UC#5-b), only vnfcCpInstanceId is present (UC#2), or
only vipCpInstanceId is present (UC6 and UC#6-b).
NOTE 3: The value of "trunkResourceId" is scoped by the value of "vimConnectionId" in the "resourceHandle"
attribute.
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: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf"
resourceHandle:
description: >
Reference to the virtualised resource realizing this link
port.
$ref: "../../General_Definitions/SOL003_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 associated with this link port.
When the link port is used for internal connectivity in the VNF, this attribute represents the
identifier of 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 "vnfcResourceInfo"
item in the VnfInstance. See note 1.
$ref: "../../General_Definitions/SOL003_def.yaml#/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.
See note 1.
type: string
enum:
- VNFC_CP
- EXT_CP
vipCpInstanceId:
description: >
VIP CP instance of the VNF connected to this link port. May be present.
See notes 1, and 2.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf"
trunkResourceId:
description: >
Identifier of the trunk resource in the VIM.
Shall be present if the present link port corresponds to the parent port that the trunk resource is associated with.
See note 3.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim"
ExtLinkPortInfo:
description: >
This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to
NOTE 1: The use cases UC#4 and UC#5 in clause A.4 of ETSI GS NFV-IFA 007 provide examples for such a configuration.
NOTE 2: The value of "trunkResourceId" is scoped by the value of "vimConnectionId" in the "resourceHandle" attribute.
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: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
resourceHandle:
description: >
Reference to the virtualised resource realizing this link
port.
$ref: "../../General_Definitions/SOL003_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: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf"
secondaryCpInstanceId:
description: >
Additional external CP of the VNF connected to this link port.
If present, this attribute shall refer to a "secondary" ExtCpInfo item in the VNF instance that exposes a virtual
IP CP instance which shares this linkport with the external CP instance referenced by the "cpInstanceId" attribute.
See note 1.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf"
trunkResourceId:
description: >
Identifier of the trunk resource in the VIM.
Shall be present if the present link port corresponds to the parent port that the trunk resource is associated with.
See note 2.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim"
CpProtocolInfo:
description: >
This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses.
NOTE: This attribute allows to signal the addition of further types of layer and protocol in future versions of the
present document in a backwards-compatible way. In the current version of the present document, only IP over
Ethernet is supported.
type: object
required:
- layerProtocol
properties:
layerProtocol:
description: >
The identifier of layer(s) and protocol(s) associated to the network address information.
Permitted values:
- IP_OVER_ETHERNET
- IP_FOR_VIRTUAL_CP
See note.
type: string
enum:
- IP_OVER_ETHERNET
ipOverEthernet:
description: >
IP addresses over Ethernet to assign to the extCP instance. Shall be
present if layerProtocol is equal to " IP_OVER_ETHERNET", and shall
be absent otherwise.
$ref: "#/definitions/IpOverEthernetAddressInfo"
virtualCpAddress:
description: >
IP address data assigned to an external CP instance exposing a virtual CP. It shall be present if
layerProtocol is equal to “IP_FOR_VIRTUAL_CP” and the external CP instance exposes a virtual CP and
shall not be present otherwise.
$ref: "#/definitions/VirtualCpAddressInfo"
IpOverEthernetAddressInfo:
description: >
This type represents information about a network address that has been assigned.
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
NOTE 1: At least one of "macAddress" or "ipAddresses" shall be present.
NOTE 2: Exactly one of "addresses" or "addressRange" shall be present.
NOTE 3: If the Cp instance represents a subport in a trunk, segmentationId shall be present.
Otherwise it shall not be present.
NOTE 4: 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: object
anyOf:
- required:
- macAddress
- required:
- ipAddresses
properties:
macAddress:
description: >
MAC address, if assigned. See note 1.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/MacAddress"
segmentationId:
description: >
Identification of the network segment to which the Cp instance connects to. See notes 3 and 4.
type: string
ipAddresses:
description: >
Addresses assigned to the CP instance. Each entry represents IP addresses assigned by fixed or
dynamic IP address assignment per subnet. See note 1.
type: array
items:
type: object
required:
- type
oneOf:
- required:
- addresses
- required:
- addressRange
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). See note 2.
type: array
items:
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IpAddress"
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 2.
type: object
required:
- minAddress
- maxAddress
properties:
minAddress:
description: >
Lowest IP address belonging to the range.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IpAddress"
maxAddress:
description: >
Highest IP address belonging to the range
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IpAddress"
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: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim"
MonitoringParameter:
type: object
required:
- id
- performanceMetric
properties:
id:
description: >
Identifier of the monitoring parameter defined in the VNFD.
$ref: "../../General_Definitions/SOL003_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: "../../General_Definitions/SOL003_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
LifecycleChangeNotificationsFilter:
description: >
This type represents a subscription filter related to notifications about VNF lifecycle changes.
At a particular nesting level in the filter structure, the following applies: All attributes shall
match in order for the filter to match (logical "and" between different filter attributes).
If an attribute is an array, the attribute shall match if at least one of the values in the array
matches (logical "or" between the values of one filter attribute).
NOTE: The permitted values of the "notificationTypes" attribute are spelled exactly as the names of
the notification types to facilitate automated code generation systems.
type: object
properties:
vnfInstanceSubscriptionFilter:
description: >
Filter criteria to select VNF instances about which to notify.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VnfInstanceSubscriptionFilter"
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
notificationTypes:
description: >
Match particular notification types.
Permitted values:
- VnfLcmOperationOccurrenceNotification
- VnfIdentifierCreationNotification
- VnfIdentifierDeletionNotification
See note.
type: array
items:
type: string
enum:
- VnfLcmOperationOccurrenceNotification
- VnfIdentifierCreationNotification
- VnfIdentifierDeletionNotification
operationTypes:
description: >
Match particular VNF lifecycle operation types for the notification
of type VnfLcmOperationOccurrenceNotification.
May be present if the "notificationTypes" attribute contains the
value "VnfLcmOperationOccurrenceNotification", and shall be absent
otherwise.
type: array
items:
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/LcmOperationType"
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
operationStates:
description: >
Match particular LCM operation state values as reported in
notifications of type VnfLcmOperationOccurrenceNotification.
May be present if the "notificationTypes" attribute contains the
value "VnfLcmOperationOccurrenceNotification", and shall be absent
otherwise.
type: array
items:
$ref: "#/definitions/LcmOperationStateType"
LccnLinks:
description: >
This type represents the links to resources that a notification can
contain.
type: object
required:
- vnfInstance
- subscription
properties:
vnfInstance:
description: >
Link to the resource representing the VNF instance to which the
notified change applies.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink"
subscription:
description: >
Link to the related subscription.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink"
vnfLcmOpOcc:
description: >
Link to the VNF lifecycle management operation occurrence that this
notification is related to. Shall be present if there is a related
lifecycle operation occurrence.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink"
VnfExtCpInfo:
description: >
This type represents information about an external CP of a VNF.
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
NOTE 1: The attributes "associatedVnfcCpId", "associatedVipCpId", "associatedVirtualCpId" and
"associatedVnfVirtualLinkId" are mutually exclusive. Exactly one shall be present.
NOTE 2: An external CP instance is not associated to a link port in the cases indicated for the
“extLinkPorts” attribute in clause 4.4.1.11.
NOTE 3: Cardinality greater than 1 is only applicable for specific cases where more than one network
attachment definition resource is needed to fulfil the connectivity requirements of the external
CP, e.g. to build a link redundant mated pair in SR-IOV cases.
NOTE 4: When more than one netAttDefResourceId is indicated, all shall belong to the same namespace.
type: object
required:
- id
- cpdId
- cpConfigId
- cpProtocolInfo
oneOf:
- required:
- associatedVnfcCpId
- required:
- associatedVipCpId
- required:
- associatedVnfVirtualLinkId
properties:
id:
description: >
Identifier of the external CP instance and the related information instance.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf"
cpdId:
description: >
Identifier of the external CPD, VnfExtCpd, in the VNFD.
$ref: "../../General_Definitions/SOL003_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: "../../General_Definitions/SOL003_def.yaml#/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: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
cpProtocolInfo:
description: >
Network protocol information for this CP.
type: array
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. See note 2.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
metadata:
description: >
Metadata about this external CP.
$ref: "../../General_Definitions/SOL003_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, either directly or via a floating IP address.
Shall be present in case this CP instance maps to a VNFC CP. See note 1.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf"
associatedVipCpId:
description: >
Identifier of the VIP CP instance that is exposed as this VnfExtCp instance, either directly or via a
floating IP address, and the related "VipCpInfo" structure in "VnfInstance". Shall be present if the
cpdId of this VnfExtCp has a vipCpd attribute. See note 1.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf"
associatedVirtualCpId:
description: >
Identifier of the "VirtualCpInfo" structure that represents the Virtual CP that is exposed by this
external CP instance. Shall be present in case this CP instance maps to a Virtual CP. See note 1.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf"
associatedVnfVirtualLinkId:
description: >
Identifier of the "VnfVirtualLinkResourceInfo" structure that represents the internal VL or of the
"ExtManagedVirtualLinkInfo" structure that represents the externally-managed internal VL which is
exposed by this external CP instance. Shall be present in case this CP instance maps to an internal
VL (including externally-managed internal VL). See note 1.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf"
netAttDefResourceId:
description: >
Identifier of the “NetAttDefResourceInfo” structure that provides the specification of the interface to attach the
connection point to a secondary container cluster network. See notes 3 and 4.
It shall be present if the external CP is associated to a VNFC realized by one or a set of OS containers and
is connected to a secondary container cluster network. It shall not be present otherwise.
type: array
items:
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
certificateContentId:
description: >
Identifier of the "CertificateContent" structure that provides the information of the certificate that this
VNF CP instance uses. Shall be present when using in delegation-mode. Otherwise shall not be present.
This attribute shall be supported when delegation mode in certificate management is applicable.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
VnfOperationalStateType:
description: >
STARTED: The VNF instance is up and running.
STOPPED: The VNF instance has been shut down.
type: string
enum:
- STARTED
- STOPPED
LcmOperationStateType:
description: >
STARTING: The LCM operation is starting.
PROCESSING: The LCM operation is currently in execution.
COMPLETED: The LCM operation has been completed successfully.
FAILED_TEMP: The LCM operation has failed and execution has stopped,
but the execution of the operation is not considered to be closed.
FAILED: The LCM operation has failed and it cannot be retried or rolled back,
as it is determined that such action won't succeed.
ROLLING_BACK: The LCM operation is currently being rolled back.
ROLLED_BACK: The LCM operation has been successfully rolled back,
i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible.
type: string
enum:
- STARTING
- PROCESSING
- COMPLETED
- FAILED_TEMP
- FAILED
- ROLLING_BACK
- ROLLED_BACK
CancelModeType:
description: >
Cancellation mode.
GRACEFUL: If the VNF LCM operation occurrence is in "PROCESSING" or
"ROLLING_BACK" state, the VNFM shall not start any new resource
management operation and shall wait for the ongoing resource management
operations in the underlying system, typically the VIM, to finish
execution or to time out. After that, the VNFM shall put the operation
occurrence into the FAILED_TEMP state.
If the VNF LCM operation occurrence is in "STARTING" state, the VNFM
shall not start any resource management operation and shall wait for
the granting request to finish execution or time out. After that, the
VNFM shall put the operation occurrence into the ROLLED_BACK state.
FORCEFUL: If the VNF LCM operation occurrence is in "PROCESSING" or
"ROLLING_BACK" state, the VNFM shall not start any new resource
management operation, shall cancel the ongoing resource management
operations in the underlying system, typically the VIM, and shall wait
for the cancellation to finish or to time out. After that, the VNFM
shall put the operation occurrence into the FAILED_TEMP state.
If the VNF LCM operation occurrence is in "STARTING" state, the VNFM
shall not start any resource management operation and put the operation
occurrence into the ROLLED_BACK state.
type: string
enum:
- GRACEFUL
- FORCEFUL
########################################################################################################################
VnfIdentifierCreationNotification:
description: >
This type represents a VNF identifier creation notification, which
informs the receiver of the creation of a new "Individual VNF instance" resource and
the associated VNF instance identifier.
This notification shall be triggered by the VNFM when it has created an
"Individual VNF instance" resource and the associated VNF instance identifier.
type: object
required:
- id
- notificationType
- subscriptionId
- timeStamp
- vnfInstanceId
- _links
properties:
id:
description: >
Identifier of the VNF instance.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
notificationType:
description: >
Discriminator for the different notification types. Shall be set to
"VnfIdentifierCreationNotification" for this notification type.
type: string
enum:
- VnfIdentifierCreationNotification
subscriptionId:
description: >
Identifier of the subscription that this notification relates to.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
timeStamp:
description: >
Date-time of the generation of the notification.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime"
vnfInstanceId:
description: >
The created VNF instance identifier.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
_links:
description: >
Links to resources related to this notification.
$ref: "#/definitions/LccnLinks"
VnfIdentifierDeletionNotification:
description: >
This type represents a VNF identifier deletion notification, which
informs the receiver of the deletion of a new "Individual VNF instance" resource and
the associated VNF instance identifier.
This notification shall be triggered by the VNFM when it has deleted an
"Individual VNF instance" resource and the associated VNF instance identifier.
type: object
required:
- id
- notificationType
- subscriptionId
- timeStamp
- vnfInstanceId
- _links
properties:
id:
description: >
Identifier of this notification. If a notification is sent multiple
times due to multiple subscriptions, the "id" attribute of all these
notifications shall have the same value.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
notificationType:
description: >
Discriminator for the different notification types. Shall be set to
"VnfIdentifierDeletionNotification" for this notification type.
type: string
enum:
- VnfIdentifierDeletionNotification
subscriptionId:
description: >
Identifier of the subscription that this notification relates to.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
timeStamp:
description: >
Date-time of the generation of the notification.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime"
vnfInstanceId:
description: >
The deleted VNF instance identifier.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier"
_links:
description: >
Links to resources related to this notification.
$ref: "#/definitions/LccnLinks"
VnfcInfoModifications:
description: >
This type represents modifications of an entry in an array of "VnfcInfo" objects.
* NOTE: The attribute "id" in this data type represents the same identifier as the attribute
"vnfcInstanceId" in other related data types in the present document. For reasons of backward
compatibility, this misalignment is not corrected.
type: object
required:
- id
- vnfcConfigurableProperties
properties:
id:
description: >
Identifier of the VNFC instance of which the information is to be modified.
The identifier references the "id" attribute in a "VnfcInfo" structure. See note.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf"
vnfcConfigurableProperties:
description: >
Changes of the configurable properties of the VNFC instance.
When this structure is part of a request, the modifications signalled in this attribute
shall be applied according to the rules of JSON Merge Patch (see IETF RFC 7396).
In addition, the provisions in clause 5.7 shall apply.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs"
VnfcInfo:
description: >
This type represents the information about a VNFC instance that is part of a VNF instance.
* NOTE: This allows to represent the error condition that a VNFC instance has lost its resources.
type: object
required:
- id
- vduId
- vnfcState
properties:
id:
description: >
Identifier of the VNFC instance.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf"
vduId:
description: >
Reference to the applicable VDU information element in
the VNFD.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf"
vnfcResourceInfoId:
description: >
Identifier of the VnfcResourceInfo instance representing
the virtualised resources used by this VNFC instance. See note.
$ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf"
vnfcState:
description: >
Identifier of the VnfcResourceInfo instance representing
the virtualised resources used by this VNFC instance.
State of the VNFC instance.
Permitted values: