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
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.";
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";
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
description
"Configuration parameters for the
ChangeExtVnfConnectivity operation.";
reference
"GS NFV IFA011: Section 7.1.5.2
VnfLcmOperationsConfiguration information element";
}
}
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";
"Identifies an affinity or anti-affinity group to which
the affinity or anti-affinity rule applies.";
"GS NFV IFA011: Section 7.1.8.12
AffinityOrAntiAffinityGroup information element";
leaf type {
mandatory true;
type affinity-type;
description
"Specifies whether the rule is an affinity rule or an
anti-affinity rule.";
reference
"GS NFV IFA011: Section 7.1.8.12
AffinityOrAntiAffinityGroup information element";
}
leaf scope {
mandatory true;
type affinity-scope;
"Specifies the scope of the rule, possible values are
'NFVI-PoP', 'Zone', 'ZoneGroup', 'NFVI-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. The possible
values are:
• 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
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
list supported-vnf-interfaces {
key "name";
leaf name {
type enumeration {
enum vnf-configuration;
enum vnf-indicator;
}
description
"Identifies an interface produced by the VNF. Valid
values:
- VNF_CONFIGURATION
- VNF_INDICATOR";
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 {
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
}
}
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
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
}
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";
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
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 {
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
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 {
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
description
"Corresponds to the port field of the authority
component of a URI, as per IETF RFC 3986.";
reference
"RFC 3986: URI Generic Syntax.";
}
description
"Corresponds to the authority component of a URI,
as per IETF RFC 3986.";
reference
"RFC 3986: URI Generic Syntax.";
}
leaf path {
type string;
description
"Corresponds to the path component of a URI, as per
IETF RFC 3986.";
reference
"RFC 3986: URI Generic Syntax.";
}
leaf query {
type string;
description
"Corresponds to the query component of a URI, as per
IETF RFC 3986.";
reference
"RFC 3986: URI Generic Syntax.";
}
leaf fragment {
type string;
description
"Corresponds to the fragment component of a URI, as per
IETF RFC 3986.";
reference
"RFC 3986: URI Generic Syntax.";
}
description
"Provides components to build a Uniform Resource
Identifier (URI) where to access the interface end
point.";
}
leaf-list interface-specific-data {
type string;
description
"Provides additional details that are specific to the
type of interface considered.";
}
description
"Provide additional data to access the interface
endpoint (e.g. API URI prefix).";
}
leaf credentials {
type string;
description
"Provides credential enabling access to the interface.";
}
description
"Contains information enabling access to the NFV-MANO
interfaces produced by the VNFM (e.g. URIs and
credentials).";
reference
"GS NFV IFA011: Section 7.1.12 VnfConfigurableProperties
information element";
}
container vnfm-oauth-server-info {
description
"Contains information to enable discovery of the
authorization server protecting access to
VNFM interfaces.";
reference
"GS NFV IFA011: Section 7.1.12 VnfConfigurableProperties
information element";
}
container vnf-oauth-server-info {
description
"Contains information to enable discovery of the
authorization server to validate the access tokens
provided by the VNFM when the VNFM accesses the VNF
interfaces, if that functionality (token introspection) is
supported by the authorization server.";
reference
"GS NFV IFA011: Section 7.1.12 VnfConfigurableProperties
information element";
}
list additional-configurable-property {
key "key";
leaf key {
type string;
description
"It provides VNF specific configurable properties that can
be modified using the ModifyVnfConfiguration operation.";
reference
"GS NFV IFA011: Section 7.1.12 VnfConfigurableProperties
information element";
}
container modifiable-attributes {
description
"Describes the modifiable attributes of the VNF.";
reference
"GS NFV IFA011: Section 7.1.2 VNFD information element";
leaf-list extension {
type string;
"Additional VNF-specific attributes of VnfInfo that
affect the lifecycle management of a VNF instance and
that are writeable.
For each VNF instance, these attributes are stored
persistently by the VNFM and can be queried and
modified through the VNFM.
These attributes are intended to be consumed by the
VNFM or by the lifecycle management scripts during the
execution of VNF lifecycle management operations.
Modifying these values has no direct effect on the VNF
instance; however, modified 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.";
"GS NFV IFA011: Section 7.1.14 VnfInfoModifiableAttributes
information element";
}
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
leaf-list metadata {
type string;
description
"Additional VNF-specific attributes of VnfInfo that are
writeable and that provide metadata describing the VNF
instance.
For each VNF instance, these attributes are stored
persistently by the VNFM and can be queried and modified
through the VNFM.
These attributes are intended to provide information to
functional blocks external to the VNFM and will not be
used by the VNFM or the VNF lifecycle management
scripts when executing lifecycle management operations.
Modifying these attributes has no effect on the VNF
instance. It only affects the attribute values stored by
the VNFM.";
reference
"GS NFV IFA011: Section 7.1.14 VnfInfoModifiableAttributes
information element";
}
}
list lifecycle-management-script {
key "id";
description
"Includes a list of events and corresponding management
scripts performed for the VNF.";
reference
"GS NFV IFA011: Section 7.1.2 VNFD information element";
leaf id {
type string;
description
"A unique string that identfies the script in question.";
}
type union {
type internal-lifecycle-management-script-event;
type external-lifecycle-management-script-event;
}
description
"Describes VNF lifecycle event(s) or an external stimulus
detected on a VNFM reference point.
If the event is of type
internal-lifecycle-management-script-event, then depending
on whether the event is of type start-* or end-*, the
script associated with the VNF LCM operation needs to be
executed before the event, or after the event,
respectively.
On the other hand, if the event is of type
external-lifecycle-management-script-event, then the
script associated with the event needs to be executed
for the given VNF LCM operation.";
reference
"GS NFV IFA011: Section 7.1.13 LifeCycleManagementScript
information element";
}
leaf-list lcm-transition-event {
type string;
description
"Describes the transition VNF lifecycle event(s) that
cannot be mapped to any of the enumerated values
defined for the event attribute.";
reference
"GS NFV IFA011: Section 7.1.13 LifeCycleManagementScript
information element";
}