Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
NFV - Network Functions Virtualisation
SOL006
Commits
3c8adb91
Commit
3c8adb91
authored
Jun 27, 2022
by
ramanathan
Browse files
Merge branch 'dev-v4.3.1' into 'issue#53'
# Conflicts: # src/yang/etsi-nfv-vnf.yang
parents
db9f697a
ce2345cc
Changes
4
Hide whitespace changes
Inline
Side-by-side
src/yang/etsi-nfv-common.yang
View file @
3c8adb91
...
...
@@ -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
{
...
...
src/yang/etsi-nfv-ns.yang
View file @
3c8adb91
...
...
@@ -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"
;
}
}
}
src/yang/etsi-nfv-pnf.yang
View file @
3c8adb91
...
...
@@ -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
...
...
src/yang/etsi-nfv-vnf.yang
View file @
3c8adb91
...
...
@@ -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