Commit 3c8adb91 authored by ramanathan's avatar ramanathan
Browse files

Merge branch 'dev-v4.3.1' into 'issue#53'

# Conflicts:
#   src/yang/etsi-nfv-vnf.yang
parents db9f697a ce2345cc
......@@ -413,6 +413,8 @@ submodule etsi-nfv-common {
enum "zone";
enum "nfvi-pop";
enum "network-link-and-node";
enum "L2-network";
enum "conatiner_namespace";
}
}
......@@ -459,6 +461,20 @@ submodule etsi-nfv-common {
}
}
typedef scaler-units-size {
type enumeration {
enum "B";
enum "kB";
enum "KiB";
enum "MB";
enum "MiB";
enum "GB";
enum "GiB";
enum "TB";
enum "TiB";
}
}
grouping nfvi-maintenance-info {
container nfvi-maintenance-info {
......
......@@ -102,6 +102,46 @@ submodule etsi-nfv-ns {
}
}
grouping version-dependency {
list version-dependency{
key "dependent-constituent-id";
leaf dependent-constituent-id{
type string;
description
"Identifier of the NSD constituent which has version
dependencies on other NSD constituents.";
reference
"GS NFV IFA014: Section 6.3.17,
VersionDependency information element.";
}
container version-dependency-statement {
leaf-list descriptor-id {
type string;
}
description
"Identifies a VNFD, NSD or PNFD upon which the entity
using this information element depends.
When more than one descriptor is indicated, they shall
correspond to versions of the same VNF, NS or PNF and
they represent. alternatives, i.e. the presence of one
of them fulfills the dependency.";
reference
"GS NFV IFA014: Section 6.3.18,
VersionDependencyStatement information element";
}
description
"Identifies one or multiple versions of an NSD
constituent upon which the dependent constituent
identified by dependentConstituentId has a dependency.";
reference
"GS NFV IFA014: Section 6.3.17,
VersionDependency information element.";
}
}
grouping nsd {
leaf id {
type string;
......@@ -145,7 +185,20 @@ submodule etsi-nfv-ns {
description
"Identifies an NSD in a version independent manner. This
attribute is invariant across versions of the network
service descriptor.";
service descriptor with no constraint on the changes
across versions.";
reference
"GS NFV IFA014: Section 6.2.2.2 Network Service Descriptor
information element";
}
leaf ext-invariant-id {
type string;
description
"Identifies an NSD in a version independent manner.
This attribute is invariant across versions of the
NSD that fulfil certain conditions related to the
external connectivity and management of the NS.";
reference
"GS NFV IFA014: Section 6.2.2.2 Network Service Descriptor
information element";
......@@ -805,6 +858,21 @@ submodule etsi-nfv-ns {
element";
}
leaf vnfd-ext-invariant-id {
type string;
description
"Identifies a VNFD in a version independent manner.
If present it shall have the same value as the
vnfdExtInvariantId in the VNFD referenced by the
vnfdId attribute. It allows for VNF instances
during NS LCM the use of a VNFD different from the
one referenced by the vnfdId attribute, provided
they have the same vnfdExtInvariantId.";
reference
"GS NFV IFA014: Section 6.3.3.2 VnfProfile information
element";
}
leaf flavour-id {
mandatory true;
type leafref {
......@@ -825,9 +893,43 @@ submodule etsi-nfv-ns {
}
description
"Identifier of the instantiation level of the VNF DF
to be used for instantiation. If not present, the
default instantiation level as declared in the VNFD
shall be used.";
to be used for instantiation.";
reference
"GS NFV IFA014: Section 6.3.3.2 VnfProfile information
element";
}
list target-vnf-scale-level-info {
key "aspect-id";
leaf aspect-id {
mandatory true;
type leafref {
path "deref(../../flavour-id)/../nfv:scaling-aspect/" +
"nfv:id";
}
description
"References the scaling aspect of the VNF.";
reference
"GS NFV IFA014: Section 6.3.16, VnfScaleInfo
information element.";
}
leaf scale-level {
mandatory true;
type uint16;
description
"The scale level, greater than or equal to 0.";
reference
"GS NFV IFA014: Section 6.3.16, VnfScaleInfo
information element.";
}
description
"This attribute is applicable if VNF supports target
scale level instantiation.
For each scaling aspect of the current VNF deployment
flavour, the attribute specifies the scale level of
VNF constituents (e.g., VDU level) to be instantiated.";
reference
"GS NFV IFA014: Section 6.3.3.2 VnfProfile information
element";
......@@ -927,6 +1029,18 @@ submodule etsi-nfv-ns {
element";
}
}
leaf-list affinity-or-anti-affinity-group-id {
type leafref {
path "../../../affinity-or-anti-affinity-group/id";
}
description
"Reference(s) the affinity or anti-affinity
group(s) the NsVirtualLinkConnectivity belong to.";
reference
"GS NFV IFA014: Section 6.3.7.2, NsVirutalLinkConnectivity
information element.";
}
}
leaf service-availability-level {
......@@ -943,6 +1057,8 @@ submodule etsi-nfv-ns {
"GS NFV IFA014: Section 6.3.3.2 VnfProfile information
element";
}
uses version-dependency;
}
list pnf-profile {
......@@ -974,6 +1090,21 @@ submodule etsi-nfv-ns {
element";
}
leaf pnfd-ext-invariant-id {
type string;
description
"Identifies a PNFD in a version independent manner.
If present it shall have the same value as the
pnfdExtInvariantId in the PNFD referenced by the
pnfdId attribute. It allows for PNF instances during
NS LCM the use of a PNFD different from the one
referenced by the pnfdId attribute, provided they
have the same pnfdExtInvariantId ";
reference
"GS NFV IFA014: Section 6.3.6.2 PnfProfile information
element";
}
list virtual-link-connectivity {
key "virtual-link-profile-id";
......@@ -1032,7 +1163,20 @@ submodule etsi-nfv-ns {
element";
}
}
leaf-list affinity-or-anti-affinity-group-id {
type leafref {
path "../../../affinity-or-anti-affinity-group/id";
}
description
"Reference(s) the affinity or anti-affinity
group(s) the NsVirtualLinkConnectivity belong to.";
reference
"GS NFV IFA014: Section 6.3.7.2, NsVirutalLinkConnectivity
information element.";
}
}
uses version-dependency;
}
list virtual-link-profile {
......@@ -1374,6 +1518,8 @@ submodule etsi-nfv-ns {
• NFVI_NODE
• NFVI_POP
• NETWORK_LINK_AND_NODE
• L2_NETWORK
• CONTAINER_NAMESPACE
• etc.";
reference
"GS NFV IFA014: Section 6.3.5.2 AffinityOrAntiAffinity
......@@ -1642,6 +1788,21 @@ submodule etsi-nfv-ns {
element";
}
leaf nsd-ext-invariant-id {
type string;
description
"Identifies an NSD in a version independent manner.
If present it shall have the same value as the
nsdExtInvariantId in the NSD referenced by the nsdId
attribute. It allows for nested NS instances during
NS LCM the use of an NSD different from the one
referenced by the nsdId attribute, provided they
have the same nsdExtInvariantId.";
reference
"GS NFV IFA014: Section 6.3.11.2 NsProfile information
element";
}
leaf ns-df-id {
mandatory true;
type leafref {
......@@ -1694,6 +1855,8 @@ submodule etsi-nfv-ns {
element";
}
uses ns-local-affinity-or-anti-affinity-rule;
leaf-list affinity-or-anti-affinity-group-id {
type leafref {
path "../../affinity-or-anti-affinity-group/id";
......@@ -1756,7 +1919,20 @@ submodule etsi-nfv-ns {
element";
}
}
leaf-list affinity-or-anti-affinity-group-id {
type leafref {
path "../../../affinity-or-anti-affinity-group/id";
}
description
"Reference(s) the affinity or anti-affinity
group(s) the NsVirtualLinkConnectivity belong to.";
reference
"GS NFV IFA014: Section 6.3.7.2, NsVirutalLinkConnectivity
information element.";
}
}
uses version-dependency;
}
list dependencies {
......@@ -1934,5 +2110,19 @@ submodule etsi-nfv-ns {
}
}
uses security-parameters;
leaf strict-nsd-constituent-onboarding {
type boolean;
description
"Indicates if all NSD constituents referenced by this NSD
shall be onboarded before onboarding the NSD identified by
this information element.
Default (when the attribute is not present) is True
(all referenced constituents shall be onboarded).";
reference
"GS NFV IFA014: Section 6.2.2.2 Network Service Descriptor
information element";
}
}
}
......@@ -106,11 +106,23 @@ submodule etsi-nfv-pnf {
type string;
description
"Identifies a PNFD in a version independent manner. This
attribute is invariant across versions of PNFD.";
attribute is invariant across versions of PNFD with no
constraint on the changes across versions.";
reference
"GS NFV-IFA014: Section 6.6.2, Pnfd information element";
}
leaf ext-invariant-id {
type string;
description
"Identifies a PNFD in a version independent manner.
This attribute is invariant across versions of the
PNFD that expose the same external connectivity,
i.e. same number of pnfExtCpds and same identifiers.";
reference
"GS NFV-IFA014: Section 6.6.2, Pnfd information element";
}
leaf name {
type string;
description
......
......@@ -94,9 +94,27 @@ submodule etsi-nfv-vnf {
VirtualNetworkInterfaceRequirements information element";
}
list standardized-network-interface-requirements {
key "key";
max-elements "1";
leaf key {
type string;
}
leaf value {
type string;
}
description
"The requirements on standardized network interface
capabilities, e.g., SR-IOV or secondary container
cluster network interface deployment requirements.";
reference
"GS NFV-IFA011: Section 7.1.6.6,
VirtualNetworkInterfaceRequirements information element";
}
list network-interface-requirements {
key "key";
min-elements "1";
max-elements "1";
leaf key {
......@@ -106,9 +124,10 @@ submodule etsi-nfv-vnf {
type string;
}
description
"The network interface requirements. An element from an
array of key-value pairs that articulate the network
interface deployment requirements.";
"The additional network interface requirements beyond those
specified in the standardizedNetworkInterfaceRequirementsattribute.
An element from an array of key-value pairs that articulate the
network interface deployment requirements.";
reference
"GS NFV-IFA011: Section 7.1.6.6,
VirtualNetworkInterfaceRequirements information element";
......@@ -479,7 +498,6 @@ submodule etsi-nfv-vnf {
list int-cpd {
key "id";
min-elements 1;
description
"A internal-connection-point element is a type of
connection point and describes network connectivity
......@@ -563,7 +581,17 @@ submodule etsi-nfv-vnf {
• BAREMETAL
• VIRTIO-FORWARDER
• DIRECT-PHYSICAL
• SMART-NIC";
• SMART-NIC
Additional values of the attribute for VDUs realized
by one or set of OS containers:
• BRIDGE
• IPVLAN
• LOOPBACK
• MACVLAN
• PTP
• VLAN
• HOST-DEVICE
etc.";
reference
"GS NFV IFA011: Section 7.1.6.4, VduCpd information
element.";
......@@ -600,14 +628,29 @@ submodule etsi-nfv-vnf {
information element.";
}
leaf-list os-container-desc {
type leafref {
path "../../os-container-desc/id";
}
description
"Describes CPU, memory requirements and limits, and
software images of the OS Containers realizing this
Vdu corresponding to OS Containers sharing the same
host and same network namespace. Each unique identifier
is referenced only once within one VDU.";
reference
"GS NFV IFA011: Section 7.1.6.2, VDU information
element. ";
}
leaf-list virtual-storage-desc {
type leafref {
path "../../virtual-storage-desc/id";
}
description
"Describes storage requirements for a VirtualStorage
instance attached to the virtualisation container
created from virtualComputeDesc defined for this VDU.";
instance attached to the virtualisation container(s)
created from virtualComputeDesc or osContainerDesc
defined for this VDU.";
reference
"GS NFV IFA011: Section 7.1.6.2, VDU information
element, and Section 7.1.9.4, Information elements
......@@ -862,13 +905,42 @@ submodule etsi-nfv-vnf {
reference
"GS NFV IFA011: Section 7.1.6.2, Vdu Information elements.";
}
container mcio-identification-data {
leaf name {
mandatory true;
type string;
description
"The name of the mcio.";
}
leaf type {
mandatory true;
type enumeration {
enum "Deployment";
enum "StatefulSet";
}
description
"The type of the mcio.";
}
description
"Name and type of the MCIO that realizes this VDU.It allows
the VNFM to identify the MCIO e.g. when querying the CISM.
It shall be present when the VDU is realized by one or a
set of OS containers and shall be absent otherwise.";
reference
"GS NFV IFA011: Section 7.1.6.2, VDU Information
element.";
}
}
list virtual-compute-desc {
key "id";
description
"Defines descriptors of virtual compute resources to be
used by the VNF.";
used by the VNF when each of the VNFC instances of the
VNF is intended to be deployed in a single VM.";
leaf id {
type string;
description
......@@ -1246,6 +1318,199 @@ submodule etsi-nfv-vnf {
}
}
list os-container-desc {
key "id";
description
"Defines descriptors of container compute resources to be used
by the VNF when the VDUs of the VNF are realized by a set of
OS Containers sharing the same host and same networking namespace.";
reference
"GS NFV IFA011: Section 7.1.2, VNFD Information element.";
leaf id {
type string;
description
"Unique identifier of this OsContainerDesc in the VNFD.";
reference
"GS NFV IFA011: Section 7.1.6.13, OsContainerDesc
information element.";
}
leaf name {
type string;
description
"Human readable name of this OS container.";
reference
"GS NFV IFA011: Section 7.1.6.13, OsContainerDesc
information element.";
}
leaf description {
type string;
description
"Human readable description of this OS container.";
reference
"GS NFV IFA011: Section 7.1.6.13, OsContainerDesc
information element.";
}
leaf requested-cpu-resources {
type uint32;
description
"Number of CPU resources requested for the container
(e.g. in milli-CPU-s).";
reference
"GS NFV IFA011: Section 7.1.6.13, OsContainerDesc
information element.";
}
leaf requested-memory-resources {
type uint64;
description
"Amount of memory resources requested for the container
(e.g. in MB).";
reference
"GS NFV IFA011: Section 7.1.6.13, OsContainerDesc
information element.";
}
leaf requested-ephemeral-storage-resources {
type uint64;
units "GB";
description
"Size of ephemeral storage resources requested for the container
(e.g. in GB).";
reference
"GS NFV IFA011: Section 7.1.6.13, OsContainerDesc
information element.";
}
list extended-resource-requests {
key "extended-resource amount";
leaf extended-resource{
type string;
description
"The hardware platform specific extended resource.";
}
leaf amount {
type uint32;
description
"Requested amount of the indicated extended resource.";
}
description
"An array of key-value pairs of extended resources
required by the container.";
reference
"GS NFV IFA011: Section 7.1.6.13, OsContainerDesc
information element.";
}
leaf cpu-resource-limit {
type uint32;
description
"Number of CPU resources the container can maximally use
(e.g. in milli-CPU).";
reference
"GS NFV IFA011: Section 7.1.6.13, OsContainerDesc
information element.";
}
leaf memory-resource-limit {
type uint64;
description
"Amount of memory resources the container can maximally
use(e.g. in MB).";
reference
"GS NFV IFA011: Section 7.1.6.13, OsContainerDesc
information element.";
}
leaf ephemeral-storage-resource-limit {
type uint64;
units "GB";
description
"Size of ephemeral storage resources the container can
maximally use(e.g. in GB).";
reference
"GS NFV IFA011: Section 7.1.6.13, OsContainerDesc
information element.";
}
list huge-page-resources {
key "hugepage-size";
max-elements "1";
leaf hugepage-size{
type uint32;
description
"Specifies the size of the hugepage.";
}
leaf requested-size {
type uint32;
description
"Specifies the total size required for all the
hugepages of the size indicated by hugepage-size.";
}
leaf size-unit {
type scaler-units-size;
description
"Specifies the unit used for both hugepage-size
and requested-size";
}
description
"An array of key-value pairs of HugePages resources
requested for the container, which the container
can maximally use (e.g., \"hugepages-2Mi: 100Mi\").";
reference