Newer
Older
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
list instantiation-level {
key "id";
min-elements 1;
description
"Describes the various levels of resources that can be
used to instantiate the VNF using this flavour.
Examples: Small, Medium, Large. If there is only one
'instantiationLevel' entry, it shall be treated as the
default instantiation level for this DF.
The InstantiationLevel information element describes a
given level of resources to be instantiated within a
deployment flavour in term of the number of VNFC instances
to be created from each VDU.
All the VDUs referenced in the level shall be part of the
corresponding deployment flavour and their number shall
be within the range (min/max) for this deployment flavour.";
reference
"GS NFV IFA011: Section 7.1.8.2 VnfDf information element";
leaf id {
type string;
description
"Uniquely identifies a level with the DF.";
reference
"GS NFV IFA011: Section 7.1.8.7 InstantiationLevel
information element";
}
leaf description {
type string;
description
"Human readable description of the instantiation level";
reference
"GS NFV IFA011: Section 7.1.8.7 InstantiationLevel
information element";
}
list vdu-level {
key "vdu-id";
min-elements 1;
description
"Sets the number of instances for the VDU in this
instantiation level.";
reference
"GS NFV IFA011: Section 7.1.8.7 InstantiationLevel
information element";
leaf vdu-id {
type leafref {
path "../../../../vdu/id";
description
"Uniquely identifies a VDU.";
reference
"GS NFV IFA011: Section 7.1.8.9 VduLevel information
element";
leaf number-of-instances {
type uint16;
must ". <= ../../../../df/" +
"vdu-profile[id=current()/../vdu-id]/" +
"max-number-of-instances";
must ". >= ../../../../df/" +
"vdu-profile[id=current()/../vdu-id]/" +
"min-number-of-instances";
default 1;
"Number of instances of VNFC based on this VDU to
deploy for this level.";
"GS NFV IFA011: Section 7.1.8.9 VduLevel information
element";
}
}
list scaling-info {
key "scaling-aspect-id";
description
"The InstantiationLevel information element describes a
given level of resources to be instantiated within a
DF in term of the number of VNFC instances to be
created from each VDU.";
reference
"GS NFV IFA011: Section 7.1.8.7 InstantiationLevel
information element";
leaf scaling-aspect-id {
type leafref {
path "../../../scaling-aspect/id";
description
"Identifier of the scaling aspect.";
reference
"GS NFV IFA011: Section 7.1.8.8 ScaleInfo information
element";
}
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
leaf scale-level {
type uint32;
description
"The scale level, greater than or equal to 0.";
reference
"GS NFV IFA011: Section 7.1.8.8 ScaleInfo information
element";
}
}
}
leaf default-instantiation-level {
type leafref {
path "../instantiation-level/id";
}
description
"This attribute references the 'instantiationLevel'
entry which defines the default instantiation level for
this DF. It shall be present if there are multiple
'instantiationLevel' entries.";
reference
"GS NFV IFA011: Section 7.1.8.2 VnfDf information
element";
}
leaf-list supported-operation {
type identityref {
base supported-operation;
}
description
"Indicates which operations are available for this DF via
the VNF LCM interface. Instantiate VNF, Query VNF and
Terminate VNF are supported in all DF and therefore
need not be included in this list.
Values:
• Scale VNF
• Scale VNF to level
• Heal VNF
• Operate VNF
• etc.";
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
reference
"GS NFV IFA011: Section 7.1.8.2 VnfDf information
element";
}
container lcm-operations-configuration {
description
"This information element is a container for all
attributes that affect the invocation of the VNF
Lifecycle Management operations, structured by
operation.";
reference
"GS NFV IFA011: Section 7.1.8.2 VnfDf information
element";
container instantiate-vnf-op-config {
list parameter {
key "key";
leaf key {
type string;
description
"Array of KVP requirements for VNF-specific parameters
to be passed when invoking the InstantiateVnf
operation.";
reference
"GS NFV IFA011: Section 7.1.5.3
InstantiateVnfOpConfig information element";
description
"Configuration parameters for the InstantiateVnf
operation.";
reference
"GS NFV IFA011: Section 7.1.5.2
VnfLcmOperationsConfiguration information element";
}
container scale-vnf-op-config {
description
"Configuration parameters for the ScaleVnf operation.";
reference
"GS NFV IFA011: Section 7.1.5.2
VnfLcmOperationsConfiguration information element";
list parameter {
key "key";
leaf key {
type string;
}
leaf value {
type string;
"Array of KVP requirements for VNFspecific parameters
to be passed when invoking the ScaleVnf operation.";
"GS NFV IFA011: Section 7.1.5.4 ScaleVnfOpConfig
information element";
leaf scaling-by-more-than-one-step-supported {
type boolean;
default false;
"Signals whether passing a value larger than one in
the numScalingSteps parameter of the ScaleVnf
operation is supported by this VNF.
Default is FALSE, i.e. 'not supported'.";
"GS NFV IFA011: Section 7.1.5.4
ScaleVnfOpConfig information element";
container scale-vnf-to-level-op-config {
"This information element defines attributes that
affect the invocation of the ScaleVnfToLevel
operation.";
"GS NFV IFA011: Section 7.1.5.2
VnfLcmOperationsConfiguration information element";
list parameter {
key "key";
leaf key {
type string;
}
leaf value {
type string;
}
"Array of KVP requirements for VNF-specific parameters
to be passed when invoking the ScaleVnfToLevel
operation.";
"GS NFV IFA011: Section 7.1.5.5
ScaleVnfToLevelOpConfig information element";
leaf arbitrary-target-levels-supported {
type boolean;
default "false";
"Signals whether scaling according to the parameter
'scaleInfo' is supported by this VNF.";
"GS NFV IFA011: Section 7.1.5.5
ScaleVnfToLevelOpConfig information element";
container heal-vnf-op-config {
description
"This information element defines attributes that
affect the invocation of the HealVnf operation.";
reference
"GS NFV IFA011: Section 7.1.5.2
VnfLcmOperationsConfiguration information element";
list parameter {
key "key";
leaf key {
type string;
}
leaf value {
type string;
}
"Array of KVP requirements for VNF-specific parameters
to be passed when invoking the HealVnf operation.";
"GS NFV IFA011: Section 7.1.5.6 HealVnfOpConfig
information element";
"Supported 'cause' parameter values.";
"GS NFV IFA011: Section 7.1.5.6 HealVnfOpConfig
container terminate-vnf-op-config {
description
"This information element defines attributes that
affect the invocation of the TerminateVnf operation.";
reference
"GS NFV IFA011: Section 7.1.5.2
VnfLcmOperationsConfiguration information element";
leaf min-graceful-termination {
type yang:timeticks;
default "1";
"Minimum timeout value for graceful termination of
a VNF instance.";
"GS NFV IFA011: Section 7.1.5.7
TerminateVnfOpConfig information element";
leaf max-recommended-graceful-termination {
type yang:timeticks;
"Maximum recommended timeout value that can be needed
to gracefully terminate a VNF instance of a
particular type under certain conditions, such as
maximum load condition. This is provided by VNF
provider as information for the operator
facilitating the selection of optimal timeout value.
This value is not used as constraint.";
"GS NFV IFA011: Section 7.1.5.7
TerminateVnfOpConfig information element";
list parameter {
key "key";
leaf key {
type string;
}
leaf value {
type string;
"Array of KVP requirements for VNF-specific parameters
to be passed when invoking the TerminateVnf
operation.";
"GS NFV IFA011: Section 7.1.5.7
TerminateVnfOpConfig information element";
"This information element defines attributes that
affect the invocation of the OperateVnf operation.";
"GS NFV IFA011: Section 7.1.5.2
VnfLcmOperationsConfiguration information element";
leaf min-graceful-stop-timeout {
type yang:timeticks;
default "1";
description
"Minimum timeout value for graceful stop of a VNF
instance.";
reference
"GS NFV IFA011: Section 7.1.5.8
OperateVnfOpConfig information element";
}
leaf max-recommended-graceful-stop-timeout {
type yang:timeticks;
"Maximum recommended timeout value that can be
needed to gracefully stop a VNF instance of a
particular type under certain conditions, such as
maximum load condition. This is provided by VNF
provider as information for the operator facilitating
the selection of optimal timeout value. This value
is not used as constraint.";
"GS NFV IFA011: Section 7.1.5.8
OperateVnfOpConfig information element";
list parameter {
key "key";
leaf key {
type string;
}
leaf value {
type string;
"Array of KVP requirements for VNF-specific parameters
to be passed when invoking the OperateVnf
operation.";
"GS NFV IFA011: Section 7.1.5.8
OperateVnfOpConfig information element";
container change-vnf-flavour-op-config {
list parameter {
key "key";
leaf key {
type string;
}
leaf value {
type string;
}
description
"Array of KVP requirements for VNF-specific parameters
to be passed when invoking the OperateVnf
operation.";
reference
"GS NFV IFA011: Section 7.1.5.9
ChangeVnfFlavour information element";
}
description
"Configuration parameters for the ChangeVnfFlavour
operation.";
reference
"GS NFV IFA011: Section 7.1.5.2
VnfLcmOperationsConfiguration information element";
}
container change-ext-vnf-connectivity-op-config {
list parameter {
key "key";
leaf key {
type string;
}
description
"Array of KVP requirements for VNF-specific parameters
to be passed when invoking the
ChangeExtVnfConnectivity operation.";
reference
"GS NFV IFA011: Section 7.1.5.10
ChangeExtVnfConnectivityOpConfig information
element";
description
"Configuration parameters for the
ChangeExtVnfConnectivity operation.";
reference
"GS NFV IFA011: Section 7.1.5.2
VnfLcmOperationsConfiguration information element";
}
description
"Configuration parameters for the Create VNF Snapshot
operation.";
reference
"GS NFV IFA011: Section 7.1.5.2
VnfLcmOperationsConfiguration information element";
list parameter {
key "key";
leaf key {
type string;
}
leaf value {
type string;
}
description
"Array of KVP requirements for VNF-specific parameters
to be passed when invoking the
CreateSnapshotVnfOpConfig operation.";
"GS NFV IFA011: Section 7.1.5.11
CreateSnapshotVnfOpConfig information
element";
}
description
"Configuration parameters for the Revert-To VNF Snapshot
operation.";
reference
"GS NFV IFA011: Section 7.1.5.2
VnfLcmOperationsConfiguration information element";
list parameter {
key "key";
min-elements 1;
leaf value {
type string;
}
description
"Array of KVP requirements for VNF-specific parameters
to be passed when invoking the
RevertToSnapshotVnfOpConfig operation.";
"GS NFV IFA011: Section 7.1.5.12
RevertToSnapshotVnfOpConfig information
element";
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
container change-current-vnf-package-op-config {
description
"Configuration parameters for the
ChangeCurrentVnfPackageOpConfig operation.";
reference
"GS NFV IFA011: Section 7.1.5.2
VnfLcmOperationsConfiguration information element";
list parameter {
key "key";
leaf key {
type string;
}
leaf value {
type string;
}
description
"Array of KVP requirements for VNF-specific parameters
to be passed when invoking the change current VNF
Package operation.";
reference
"GS NFV IFA011: Section 7.1.5.13
ChangeCurrentVnfPackageOpConfig information
element";
}
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
}
list affinity-or-anti-affinity-group {
key "id";
description
"The AffinityOrAntiAffinityGroup describes the affinity
or anti-affinity relationship applicable between the
virtualization containers to be created based on
different VDUs, or between internal VLs to be created
based on different VnfVirtualLinkDesc(s).
Per VNF, the affinity/anti-affinity rules defined using
this information element, using the
LocalAffinityOrAntiAffinityRule information element, and
using the placement constraints in the
GrantLifecycleOperation as defined in ETSI GS NFV-IFA
007 [i.3] should be conflict-free. In case of conflicts,
the placement constraints in the
GrantLifecycleOperation shall take precedence.";
reference
"GS NFV IFA011: Section 7.1.8.2 VnfDf information
element";
"Identifier of this AffinityOrAntiAffinityGroup
information element.";
"GS NFV IFA011: Section 7.1.8.12
AffinityOrAntiAffinityGroup information element";
leaf type {
mandatory true;
type affinity-type;
description
"Specifies the type of relationship that the members of
the group have: 'affinity' or 'anti-affinity'.";
reference
"GS NFV IFA011: Section 7.1.8.12
AffinityOrAntiAffinityGroup information element";
}
leaf scope {
mandatory true;
type affinity-scope;
"Specifies the scope of the affinity or anti-affinity
relationship. Possible values are 'NFVI-PoP', 'Zone',
'ZoneGroup', 'NFVI-node' and 'network-link-and-node'.";
"GS NFV IFA011: Section 7.1.8.12
AffinityOrAntiAffinityGroup information element";
}
}
list indicator {
key "id";
leaf id {
type string;
description
"Unique identifier.";
reference
"GS NFV IFA011: Section 7.1.11.2 VnfIndicator
information element";
leaf name {
type string;
description
"The human readable name of the VnfIndicator.";
reference
"GS NFV IFA011: Section 7.1.11.2 VnfIndicator
information element";
}
leaf indicator-value {
type string;
description
"Defines the allowed values or value ranges of this
indicator.";
reference
"GS NFV IFA011: Section 7.1.11.2 VnfIndicator
information element";
}
leaf source {
type enumeration {
enum vnf;
enum em;
enum both;
}
"Describe the source of the indicator.
Values:
• VNF
• EM
• Both
This tells the consumer where to send the subscription
request.";
"GS NFV IFA011: Section 7.1.11.2 VnfIndicator
information element";
}
description
"Declares the VNF indicators that are supported by this
VNF (specific to this DF).";
reference
"GS NFV IFA011: Section 7.1.8.2 VnfDf information
list supported-vnf-interfaces {
key "name";
leaf name {
type enumeration {
enum vnf-configuration;
enum vnf-indicator;
enum vnf-lcm-coordination;
"Identifies an interface produced by the VNF.
Values:
• VNF_CONFIGURATION
• VNF_INDICATOR
• VNF_LCM_COORDINATION";
reference
"GS NFV IFA011: Section 7.1.8.16 VnfInterfaceDetails
information element";
}
leaf-list cpd-id {
type leafref {
path "../../../ext-cpd/id";
description
"References one or more CPDs from which to instantiate
external CPs through which interface endpoints on the
VNF side can be reached by the VNFM.";
reference
"GS NFV IFA011: Section 7.1.8.16 VnfInterfaceDetails
information element";
}
list interface-details {
key "key";
leaf key {
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
}
}
description
"Indicates which interfaces the VNF produces and provides
additional details on how to access the interface
endpoints.";
reference
"GS NFV IFA011: Section 7.1.8.2 VnfDf information
element";
}
list monitoring-parameter {
key "id";
description
"Defines the virtualised resources monitoring parameters
on VNF level.";
reference
"GS NFV IFA011: Section 7.1.8.2 VnfDf information
element";
leaf id {
type string;
description
"Unique identifier of the monitoring parameter.";
reference
"GS NFV IFA011: Section 7.1.11.3 MonitoringParameter
information element";
}
uses monitoring-parameter;
}
list scaling-aspect {
key "id";
description
"The scaling aspects supported by this DF of the VNF.
scalingAspect shall be present if the VNF supports
scaling.";
reference
"GS NFV IFA011: Section 7.1.8.2 VnfDf information
element";
leaf id {
type string;
description
"Unique identifier of this aspect in the VNFD.";
reference
"GS NFV IFA011: Section 7.1.10.2 ScalingAspect
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
}
leaf name {
type string;
description
"Human readable name of the aspect.";
reference
"GS NFV IFA011: Section 7.1.10.2 ScalingAspect
information element";
}
leaf description {
type string;
description
"Human readable description of the aspect.";
reference
"GS NFV IFA011: Section 7.1.10.2 ScalingAspect
information element";
}
leaf max-scale-level {
type uint32 {
range "1..max";
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
description
"The maximum scaleLevel for total number of scaling
steps that can be applied w.r.t. this aspect. The
value of this attribute corresponds to the number of
scaling steps can be applied to this aspect when
scaling it from the minimum scale level (i.e. 0) to the
maximum scale level defined by this attribute.";
reference
"GS NFV IFA011: Section 7.1.10.2 ScalingAspect
information element";
}
container aspect-delta-details {
list deltas {
key "id";
min-elements 1;
leaf id {
type string;
description
"Identifier of this scaling delta.";
reference
"GS NFV IFA011: Section 7.1.10.4 ScalingDelta
information element";
type leafref {
path "../../../../../../vdu/id";
}
"GS NFV IFA011: Section 7.1.8.9 VduLevel
information element";
}
leaf number-of-instances {
type uint32 {
range "0..max";
"Number of instances of VNFC based on this VDU to
deploy for an instantiation level or for a
scaling delta. Shall be zero or greater.";
"GS NFV IFA011: Section 7.1.8.9 VduLevel
description
"The number of VNFC instances based on particular
VDUs to be created or removed.";
reference
"GS NFV IFA011: Section 7.1.10.4 ScalingDelta
information element";
}
list virtual-link-bit-rate-delta {
key "id";
leaf id {
type string;
description
"Uniquely identifies a VnfVirtualLinkDesc.";
reference
"GS NFV IFA011: Section 7.1.10.5
VirtualLinkBitRateLevel information element";
}
container bit-rate-requirements {
leaf root {
type uint32;
units bits/sec;
mandatory true;
"Throughput requirement of the link (e.g.
bitrate of E-Line, root bitrate of E-Tree,
aggregate capacity of E-LAN).";
"GS NFV IFA011: Section 7.1.8.6
LinkBitrateRequirements information element";
leaf leaf {
type uint32;
units bits/sec;
"Throughput requirement of leaf connections to
the link when applicable to the connectivity
type (e.g. for E-Tree and E-LAN branches).";
"GS NFV IFA011: Section 7.1.8.6
LinkBitrateRequirements information element";
"Bitrate requirements for an instantiation level
or bitrate delta for a scaling step.";
"GS NFV IFA011: Section 7.1.10.5
VirtualLinkBitRateLevel information element";
"The bitrate to be added or removed to virtual links
created from particular virtual link descriptors.";
"GS NFV IFA011: Section 7.1.10.4 ScalingDelta
description
"Declares different scaling deltas, each of which is
applied for one or more scaling steps of this
aspect.";
reference
"GS NFV IFA011: Section 7.1.10.3 AspectDeltaDetails
information element";
}
leaf step-deltas {
type leafref {
path "../deltas/id";
"Identifiers of the individual scaling deltas to be
applied for the subsequent scaling steps of this
aspect. The first entry in the array shall correspond
to the first scaling step (between scale levels 0 to
1) and the last entry in the array shall correspond
to the last scaling step (between maxScaleLevel-1
and maxScaleLevel).
Each referenced scaling delta shall be declared in
the 'deltas' attribute.";
"GS NFV IFA011: Section 7.1.10.3 AspectDeltaDetails
description
"A specification of the deltas in terms of number of
instances of VNFCs and virtual link bit rates that
correspond to the scaling steps of this aspect. A
cardinality of zero indicates that this mapping has to
be specified in a lifecycle management script or be
otherwise known to the VNFM. The information in this
attribute, if provided, shall be consistent with the
information provided in the 'InstantiationLevel'
information element. If this attribute is provided, it
shall be provided for all scaling aspects.";
reference
"GS NFV IFA011: Section 7.1.10.2 ScalingAspect
information element";
}
container configurable-properties {
description
"Describes the configurable properties of the VNF
(e.g. related to auto scaling and auto healing).";
reference
"GS NFV IFA011: Section 7.1.2 VNFD information element";
leaf is-auto-scalable-enabled {
type boolean;
"It permits to enable (TRUE) / disable (FALSE) the
auto-scaling functionality.";
"GS NFV IFA011: Section 7.1.12 VnfConfigurableProperties
information element";
}
leaf is-auto-heal-enabled {
type boolean;
description
"It permits to enable (TRUE) / disable (FALSE) the
auto-healing functionality.";
reference
"GS NFV IFA011: Section 7.1.12 VnfConfigurableProperties
information element";
}
container vnfm-interface-info {
leaf interface-name {
type string {
pattern 'vnf-[lcm|pm|fm]';
}
description
"Identifies an interface produced by the VNFM.";
}
container details {
container uri-components {
leaf scheme {
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
description
"Corresponds to the scheme component of a URI, as
per IETF RFC 3986.";
reference
"RFC 3986: URI Generic Syntax.";
}
container authority {
leaf userinfo {
type string;
description
"Corresponds to the userinfo field of the authority
component of a URI, as per IETF RFC 3986.
For HTTP and HTTPS URIs, the provisions in
sections 2.7.1 and 2.7.2 of IETF RFC 7230 apply,
respectively.";
reference
"RFC 3986: URI Generic Syntax.";
}
leaf host {
description
"Corresponds to the host field of the authority
component of a URI, as per IETF RFC 3986.";
reference
"RFC 3986: URI Generic Syntax.";
}
leaf port {