Commit 48fd1d37 authored by Michele Carignani's avatar Michele Carignani

Merge branch 'merge-v2.8.1-and-v3.3.1' into 'master'

Merge v2.8.1 and v3.3.1

See merge request !80
parents 3587cb0e cd8c03e1
Pipeline #5796 passed with stage
in 0 seconds
Note: At this time this document is in draft state, and subject to change till the final approval. As such, files accessed/used from this repository are subject to change. Do not use as reference material.
When approved, this README will be updated to reflect the status of the document.
\ No newline at end of file
...@@ -80,8 +80,12 @@ ...@@ -80,8 +80,12 @@
</virtual-compute-desc> </virtual-compute-desc>
<virtual-storage-desc> <virtual-storage-desc>
<id>root</id> <id>root</id>
<type-of-storage>root-storage</type-of-storage> <type-of-storage>block</type-of-storage>
<size-of-storage>10</size-of-storage> <block-storage-data>
<size-of-storage>10</size-of-storage>
<rdma-enabled>true</rdma-enabled>
<sw-image-desc>CP</sw-image-desc>
</block-storage-data>
</virtual-storage-desc> </virtual-storage-desc>
<sw-image-desc> <sw-image-desc>
<id>CP</id> <id>CP</id>
...@@ -118,12 +122,18 @@ ...@@ -118,12 +122,18 @@
<connectivity-type> <connectivity-type>
<layer-protocol>ipv4</layer-protocol> <layer-protocol>ipv4</layer-protocol>
</connectivity-type> </connectivity-type>
<nfvi-maintenance-info>
<impact-notification-lead-time>1</impact-notification-lead-time>
</nfvi-maintenance-info>
</int-virtual-link-desc> </int-virtual-link-desc>
<int-virtual-link-desc> <int-virtual-link-desc>
<id>mgmt</id> <id>mgmt</id>
<connectivity-type> <connectivity-type>
<layer-protocol>ipv4</layer-protocol> <layer-protocol>ipv4</layer-protocol>
</connectivity-type> </connectivity-type>
<nfvi-maintenance-info>
<impact-notification-lead-time>1</impact-notification-lead-time>
</nfvi-maintenance-info>
</int-virtual-link-desc> </int-virtual-link-desc>
<ext-cpd> <ext-cpd>
<id>in</id> <id>in</id>
...@@ -152,22 +162,27 @@ ...@@ -152,22 +162,27 @@
<id>control-plane-active</id> <id>control-plane-active</id>
<min-number-of-instances>1</min-number-of-instances> <min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>1</max-number-of-instances> <max-number-of-instances>1</max-number-of-instances>
<affinity-or-anti-affinity-group> <affinity-or-anti-affinity-group-id>control-plane</affinity-or-anti-affinity-group-id>
<id>control-plane</id> <nfvi-maintenance-info>
</affinity-or-anti-affinity-group> <impact-notification-lead-time>1</impact-notification-lead-time>
</nfvi-maintenance-info>
</vdu-profile> </vdu-profile>
<vdu-profile> <vdu-profile>
<id>control-plane-standby</id> <id>control-plane-standby</id>
<min-number-of-instances>1</min-number-of-instances> <min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>1</max-number-of-instances> <max-number-of-instances>1</max-number-of-instances>
<affinity-or-anti-affinity-group> <affinity-or-anti-affinity-group-id>control-plane</affinity-or-anti-affinity-group-id>
<id>control-plane</id> <nfvi-maintenance-info>
</affinity-or-anti-affinity-group> <impact-notification-lead-time>1</impact-notification-lead-time>
</nfvi-maintenance-info>
</vdu-profile> </vdu-profile>
<vdu-profile> <vdu-profile>
<id>data-plane</id> <id>data-plane</id>
<min-number-of-instances>2</min-number-of-instances> <min-number-of-instances>2</min-number-of-instances>
<max-number-of-instances>8</max-number-of-instances> <max-number-of-instances>8</max-number-of-instances>
<nfvi-maintenance-info>
<impact-notification-lead-time>1</impact-notification-lead-time>
</nfvi-maintenance-info>
</vdu-profile> </vdu-profile>
<instantiation-level> <instantiation-level>
<id>il-1</id> <id>il-1</id>
...@@ -210,6 +225,18 @@ ...@@ -210,6 +225,18 @@
<operate-vnf-op-config> <operate-vnf-op-config>
<min-graceful-stop-timeout>1</min-graceful-stop-timeout> <min-graceful-stop-timeout>1</min-graceful-stop-timeout>
</operate-vnf-op-config> </operate-vnf-op-config>
<create-snapshot-vnf-op-config>
<parameter>
<key>1</key>
<value>1</value>
</parameter>
</create-snapshot-vnf-op-config>
<revert-to-snapshot-vnf-op-config>
<parameter>
<key>1</key>
<value>1</value>
</parameter>
</revert-to-snapshot-vnf-op-config>
</lcm-operations-configuration> </lcm-operations-configuration>
<affinity-or-anti-affinity-group> <affinity-or-anti-affinity-group>
<id>control-plane</id> <id>control-plane</id>
...@@ -223,22 +250,27 @@ ...@@ -223,22 +250,27 @@
<id>control-plane-active</id> <id>control-plane-active</id>
<min-number-of-instances>1</min-number-of-instances> <min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>1</max-number-of-instances> <max-number-of-instances>1</max-number-of-instances>
<affinity-or-anti-affinity-group> <affinity-or-anti-affinity-group-id>control-plane</affinity-or-anti-affinity-group-id>
<id>control-plane</id> <nfvi-maintenance-info>
</affinity-or-anti-affinity-group> <impact-notification-lead-time>1</impact-notification-lead-time>
</nfvi-maintenance-info>
</vdu-profile> </vdu-profile>
<vdu-profile> <vdu-profile>
<id>control-plane-standby</id> <id>control-plane-standby</id>
<min-number-of-instances>1</min-number-of-instances> <min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>1</max-number-of-instances> <max-number-of-instances>1</max-number-of-instances>
<affinity-or-anti-affinity-group> <affinity-or-anti-affinity-group-id>control-plane</affinity-or-anti-affinity-group-id>
<id>control-plane</id> <nfvi-maintenance-info>
</affinity-or-anti-affinity-group> <impact-notification-lead-time>1</impact-notification-lead-time>
</nfvi-maintenance-info>
</vdu-profile> </vdu-profile>
<vdu-profile> <vdu-profile>
<id>data-plane</id> <id>data-plane</id>
<min-number-of-instances>1</min-number-of-instances> <min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>4</max-number-of-instances> <max-number-of-instances>4</max-number-of-instances>
<nfvi-maintenance-info>
<impact-notification-lead-time>1</impact-notification-lead-time>
</nfvi-maintenance-info>
</vdu-profile> </vdu-profile>
<instantiation-level> <instantiation-level>
<id>il-1</id> <id>il-1</id>
...@@ -281,6 +313,18 @@ ...@@ -281,6 +313,18 @@
<operate-vnf-op-config> <operate-vnf-op-config>
<min-graceful-stop-timeout>1</min-graceful-stop-timeout> <min-graceful-stop-timeout>1</min-graceful-stop-timeout>
</operate-vnf-op-config> </operate-vnf-op-config>
<create-snapshot-vnf-op-config>
<parameter>
<key>1</key>
<value>1</value>
</parameter>
</create-snapshot-vnf-op-config>
<revert-to-snapshot-vnf-op-config>
<parameter>
<key>1</key>
<value>1</value>
</parameter>
</revert-to-snapshot-vnf-op-config>
</lcm-operations-configuration> </lcm-operations-configuration>
<affinity-or-anti-affinity-group> <affinity-or-anti-affinity-group>
<id>control-plane</id> <id>control-plane</id>
......
<nsd xmlns="urn:etsi:nfv:yang:etsi-nfv-nsd"> <?xml version="1.0" encoding="UTF-8"?>
<nfv xmlns="urn:etsi:nfv:yang:etsi-nfv-descriptors">
<vnfd> <vnfd>
<id>ASA</id> <id>ASA</id>
<provider>My Company</provider> <provider>My Company</provider>
...@@ -36,8 +37,10 @@ ...@@ -36,8 +37,10 @@
</virtual-compute-desc> </virtual-compute-desc>
<virtual-storage-desc> <virtual-storage-desc>
<id>asa-vsd</id> <id>asa-vsd</id>
<type-of-storage xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:root-storage</type-of-storage> <type-of-storage xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:block</type-of-storage>
<size-of-storage>0</size-of-storage> <block-storage-data>
<size-of-storage>0</size-of-storage>
</block-storage-data>
</virtual-storage-desc> </virtual-storage-desc>
<sw-image-desc> <sw-image-desc>
<id>asa-image</id> <id>asa-image</id>
...@@ -49,7 +52,7 @@ ...@@ -49,7 +52,7 @@
</checksum> </checksum>
<container-format>bare</container-format> <container-format>bare</container-format>
<disk-format>qcow2</disk-format> <disk-format>qcow2</disk-format>
<min-disk>20</min-disk> <min-disk>0</min-disk>
<min-ram>2.0</min-ram> <min-ram>2.0</min-ram>
<size>1</size> <size>1</size>
<image>http://www.mycompany.com/asa.qcow2</image> <image>http://www.mycompany.com/asa.qcow2</image>
...@@ -84,6 +87,9 @@ ...@@ -84,6 +87,9 @@
<id>firewall</id> <id>firewall</id>
<min-number-of-instances>1</min-number-of-instances> <min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>2</max-number-of-instances> <max-number-of-instances>2</max-number-of-instances>
<nfvi-maintenance-info>
<impact-notification-lead-time>1</impact-notification-lead-time>
</nfvi-maintenance-info>
</vdu-profile> </vdu-profile>
<instantiation-level> <instantiation-level>
<id>double</id> <id>double</id>
...@@ -100,6 +106,20 @@ ...@@ -100,6 +106,20 @@
</vdu-level> </vdu-level>
</instantiation-level> </instantiation-level>
<default-instantiation-level>single</default-instantiation-level> <default-instantiation-level>single</default-instantiation-level>
<lcm-operations-configuration>
<create-snapshot-vnf-op-config>
<parameter>
<key>1</key>
<value>1</value>
</parameter>
</create-snapshot-vnf-op-config>
<revert-to-snapshot-vnf-op-config>
<parameter>
<key>1</key>
<value>1</value>
</parameter>
</revert-to-snapshot-vnf-op-config>
</lcm-operations-configuration>
</df> </df>
</vnfd> </vnfd>
<nsd> <nsd>
...@@ -133,4 +153,4 @@ ...@@ -133,4 +153,4 @@
</ns-instantiation-level> </ns-instantiation-level>
</df> </df>
</nsd> </nsd>
</config> </nfv>
...@@ -35,8 +35,11 @@ ...@@ -35,8 +35,11 @@
</virtual-compute-desc> </virtual-compute-desc>
<virtual-storage-desc> <virtual-storage-desc>
<id>asa-vsd</id> <id>asa-vsd</id>
<type-of-storage xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:root-storage</type-of-storage> <type-of-storage xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:file</type-of-storage>
<size-of-storage>0</size-of-storage> <file-storage-data>
<size-of-storage>0</size-of-storage>
<int-virtual-link-desc>asa-image</int-virtual-link-desc>
</file-storage-data>
</virtual-storage-desc> </virtual-storage-desc>
<sw-image-desc> <sw-image-desc>
<id>asa-image</id> <id>asa-image</id>
...@@ -48,7 +51,7 @@ ...@@ -48,7 +51,7 @@
</checksum> </checksum>
<container-format>bare</container-format> <container-format>bare</container-format>
<disk-format>qcow2</disk-format> <disk-format>qcow2</disk-format>
<min-disk>20</min-disk> <min-disk>0</min-disk>
<min-ram>2.0</min-ram> <min-ram>2.0</min-ram>
<size>1</size> <size>1</size>
<image>http://www.mycompany.com/asa.qcow2</image> <image>http://www.mycompany.com/asa.qcow2</image>
...@@ -71,6 +74,9 @@ ...@@ -71,6 +74,9 @@
<id>firewall</id> <id>firewall</id>
<min-number-of-instances>1</min-number-of-instances> <min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>2</max-number-of-instances> <max-number-of-instances>2</max-number-of-instances>
<nfvi-maintenance-info>
<impact-notification-lead-time>1</impact-notification-lead-time>
</nfvi-maintenance-info>
</vdu-profile> </vdu-profile>
<instantiation-level> <instantiation-level>
<id>double</id> <id>double</id>
...@@ -87,5 +93,19 @@ ...@@ -87,5 +93,19 @@
</vdu-level> </vdu-level>
</instantiation-level> </instantiation-level>
<default-instantiation-level>single</default-instantiation-level> <default-instantiation-level>single</default-instantiation-level>
<lcm-operations-configuration>
<create-snapshot-vnf-op-config>
<parameter>
<key>1</key>
<value>1</value>
</parameter>
</create-snapshot-vnf-op-config>
<revert-to-snapshot-vnf-op-config>
<parameter>
<key>1</key>
<value>1</value>
</parameter>
</revert-to-snapshot-vnf-op-config>
</lcm-operations-configuration>
</df> </df>
</vnfd> </vnfd>
...@@ -36,8 +36,12 @@ ...@@ -36,8 +36,12 @@
</virtual-compute-desc> </virtual-compute-desc>
<virtual-storage-desc> <virtual-storage-desc>
<id>asa-vsd</id> <id>asa-vsd</id>
<type-of-storage>root-storage</type-of-storage> <type-of-storage>block</type-of-storage>
<size-of-storage>0</size-of-storage> <block-storage-data>
<size-of-storage>1</size-of-storage>
<rdma-enabled>true</rdma-enabled>
<sw-image-desc>asa-image</sw-image-desc>
</block-storage-data>
</virtual-storage-desc> </virtual-storage-desc>
<sw-image-desc> <sw-image-desc>
<id>asa-image</id> <id>asa-image</id>
...@@ -67,6 +71,9 @@ ...@@ -67,6 +71,9 @@
<connectivity-type> <connectivity-type>
<layer-protocol>ethernet</layer-protocol> <layer-protocol>ethernet</layer-protocol>
</connectivity-type> </connectivity-type>
<nfvi-maintenance-info>
<impact-notification-lead-time>1</impact-notification-lead-time>
</nfvi-maintenance-info>
</int-virtual-link-desc> </int-virtual-link-desc>
<ext-cpd> <ext-cpd>
<id>inside</id> <id>inside</id>
...@@ -95,6 +102,9 @@ ...@@ -95,6 +102,9 @@
<id>firewall</id> <id>firewall</id>
<min-number-of-instances>1</min-number-of-instances> <min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>2</max-number-of-instances> <max-number-of-instances>2</max-number-of-instances>
<nfvi-maintenance-info>
<impact-notification-lead-time>1</impact-notification-lead-time>
</nfvi-maintenance-info>
</vdu-profile> </vdu-profile>
<virtual-link-profile> <virtual-link-profile>
<id>inside-vl</id> <id>inside-vl</id>
...@@ -141,6 +151,18 @@ ...@@ -141,6 +151,18 @@
<operate-vnf-op-config> <operate-vnf-op-config>
<min-graceful-stop-timeout>1</min-graceful-stop-timeout> <min-graceful-stop-timeout>1</min-graceful-stop-timeout>
</operate-vnf-op-config> </operate-vnf-op-config>
<create-snapshot-vnf-op-config>
<parameter>
<key>1</key>
<value>1</value>
</parameter>
</create-snapshot-vnf-op-config>
<revert-to-snapshot-vnf-op-config>
<parameter>
<key>1</key>
<value>1</value>
</parameter>
</revert-to-snapshot-vnf-op-config>
</lcm-operations-configuration> </lcm-operations-configuration>
</df> </df>
</vnfd> </vnfd>
...@@ -181,8 +203,11 @@ ...@@ -181,8 +203,11 @@
</virtual-compute-desc> </virtual-compute-desc>
<virtual-storage-desc> <virtual-storage-desc>
<id>csr-vsd</id> <id>csr-vsd</id>
<type-of-storage>root-storage</type-of-storage> <type-of-storage>file</type-of-storage>
<size-of-storage>0</size-of-storage> <file-storage-data>
<size-of-storage>1</size-of-storage>
<int-virtual-link-desc>csr-image</int-virtual-link-desc>
</file-storage-data>
</virtual-storage-desc> </virtual-storage-desc>
<sw-image-desc> <sw-image-desc>
<id>csr-image</id> <id>csr-image</id>
...@@ -229,6 +254,9 @@ ...@@ -229,6 +254,9 @@
<id>router</id> <id>router</id>
<min-number-of-instances>1</min-number-of-instances> <min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>2</max-number-of-instances> <max-number-of-instances>2</max-number-of-instances>
<nfvi-maintenance-info>
<impact-notification-lead-time>1</impact-notification-lead-time>
</nfvi-maintenance-info>
</vdu-profile> </vdu-profile>
<instantiation-level> <instantiation-level>
<id>double</id> <id>double</id>
...@@ -255,6 +283,18 @@ ...@@ -255,6 +283,18 @@
<operate-vnf-op-config> <operate-vnf-op-config>
<min-graceful-stop-timeout>1</min-graceful-stop-timeout> <min-graceful-stop-timeout>1</min-graceful-stop-timeout>
</operate-vnf-op-config> </operate-vnf-op-config>
<create-snapshot-vnf-op-config>
<parameter>
<key>1</key>
<value>1</value>
</parameter>
</create-snapshot-vnf-op-config>
<revert-to-snapshot-vnf-op-config>
<parameter>
<key>1</key>
<value>1</value>
</parameter>
</revert-to-snapshot-vnf-op-config>
</lcm-operations-configuration> </lcm-operations-configuration>
</df> </df>
</vnfd> </vnfd>
......
...@@ -3,12 +3,37 @@ submodule etsi-nfv-common { ...@@ -3,12 +3,37 @@ submodule etsi-nfv-common {
belongs-to etsi-nfv-descriptors { belongs-to etsi-nfv-descriptors {
prefix nfv; prefix nfv;
} }
import ietf-yang-types {
prefix yang;
reference
"RFC 6991: Common YANG Data Types.";
}
organization organization
"European Telecommunications Standards Institute (ETSI)"; "European Telecommunications Standards Institute (ETSI)";
description description
"Common data types for ETSI data models."; "Common data types for ETSI data models.";
revision 2020-06-10 {
description
"Version 3.3.1.
Common data structures to support VNFD and NSD according to:
ETSI GS NFV-IFA 014 Release 3
ETSI GS NFV-IFA 011 Release 3.";
}
revision 2020-06-01 {
description
"Version 2.8.1.
Common data structures to support VNFD and NSD according to:
ETSI GS NFV-IFA 014 271
ETSI GS NFV-IFA 011 271.";
}
revision 2019-10-01 { revision 2019-10-01 {
description description
"Version 2.7.1. "Version 2.7.1.
...@@ -17,6 +42,7 @@ submodule etsi-nfv-common { ...@@ -17,6 +42,7 @@ submodule etsi-nfv-common {
ETSI GS NFV-IFA 014 Ed271v264 ETSI GS NFV-IFA 014 Ed271v264
ETSI GS NFV-IFA 011 Ed271v264"; ETSI GS NFV-IFA 011 Ed271v264";
} }
revision 2019-04-25 { revision 2019-04-25 {
description description
"Initial revision "Initial revision
...@@ -233,22 +259,22 @@ submodule etsi-nfv-common { ...@@ -233,22 +259,22 @@ submodule etsi-nfv-common {
"Base type of storage that identities can derive from."; "Base type of storage that identities can derive from.";
} }
identity root-storage { identity block {
base storage-type; base storage-type;
description description
"Root type of storage."; "Block type of storage.";
} }
identity swap-storage { identity object {
base storage-type; base storage-type;
description description
"Swap type of storage."; "Object type of storage.";
} }
identity ephemeral-storage { identity file {
base storage-type; base storage-type;
description description
"Ephemeral type of storage."; "File type of storage.";
} }
identity forwarding-behaviour { identity forwarding-behaviour {
...@@ -369,6 +395,7 @@ submodule etsi-nfv-common { ...@@ -369,6 +395,7 @@ submodule etsi-nfv-common {
enum "zone-group"; enum "zone-group";
enum "zone"; enum "zone";
enum "nfvi-pop"; enum "nfvi-pop";
enum "network-link-and-node";
} }
} }
...@@ -390,30 +417,142 @@ submodule etsi-nfv-common { ...@@ -390,30 +417,142 @@ submodule etsi-nfv-common {
enum "end-vnf-ext-conn-change"; enum "end-vnf-ext-conn-change";
enum "start-vnfinfo-modification"; enum "start-vnfinfo-modification";
enum "end-vnfinfo-modification"; enum "end-vnfinfo-modification";
enum "start-vnf-snapshot-creation";
enum "end-vnf-snapshot-creation";
enum "start-vnf-snapshot-reverting-to";
enum "end-vnf-snapshot-reverting-to";
enum "start-change-current-vnf-package";
enum "end-change-current-vnf-package";
} }
} }
grouping local-affinity-or-anti-affinity-rule { typedef external-lifecycle-management-script-event {
list local-affinity-or-anti-affinity-rule { type enumeration {
key "type scope"; enum "instantiation";
leaf type { enum "scaling";
type affinity-type; enum "healing";
enum "termination";
enum "vnf-flavour-change";
enum "vnf-operation-change";
enum "vnf-ext-conn-change";
enum "vnfinfo-modification";
enum "vnf-snapshot-creation";
enum "vnf-snapshot-reverting-to";
enum "change-current-vnf-package";
}
}
grouping nfvi-maintenance-info {
container nfvi-maintenance-info {
leaf impact-notification-lead-time {
type yang:timeticks;
mandatory true;
description
"The value specifies the minimum notification lead time
requested for upcoming impact of the virtualised resource
or their group (i.e. between the notification and the
action causing the impact).";
reference
"GS NFV-IFA011: Section 7.1.8.17, NfviMaintenanceInfo
information element";
}
leaf is-impact-mitigation-requested {
type boolean;
description
"When set to True, it is requested that at the time of the
notification of an upcoming change that is expected to have
an impact on the VNF, virtualised resource(s) of the same
characteristics as the impacted ones is/are provided to
compensate for the impact. Cardinality 0 corresponds to the
value False.";
reference
"GS NFV-IFA011: Section 7.1.8.17, NfviMaintenanceInfo
information element";
}
leaf-list supported-migration-type {
type enumeration {
enum "no-migration";
enum "offline-migration";
enum "live-migration";
}
description
"Applicable to VirtualComputeDesc and VirtualStorageDesc.
When present, specifies the allowed migration types in the
order of preference in case of an impact starting with the
most preferred type. Possible values: NO_MIGRATION,
OFFLINE_MIGRATION, LIVE_MIGRATION.";
reference
"GS NFV-IFA011: Section 7.1.8.17, NfviMaintenanceInfo
information element";
}
leaf max-undetectable-interruption-time {
type yang:timeticks;
description description
"Specifies whether the rule is an affinity rule or an "Applicable to VirtualComputeDesc and VirtualStorageDesc.
anti-affinity rule."; When present, it specifies the maximum interruption time
that can go undetected at the VNF level and therefore
which will not trigger VNFinternal recovery during live
migration.";
reference reference
"GS NFV IFA011: Section 7.1.8.11, "GS NFV-IFA011: Section 7.1.8.17, NfviMaintenanceInfo
LocalAffinityOrAntiAffinityRule information element."; information element";
} }
leaf scope { leaf min-recovery-time-between-impacts {
type affinity-scope; type yang:timeticks;
description description
"Specifies the scope of the rule, possible values are "When present, it specifies the time required by the group
'NFVI-PoP', 'Zone', 'ZoneGroup', 'NFVI-node'."; to recover from an impact, thus, the minimum time
requested between consecutive impacts of the group.";
reference reference
"GS NFV IFA011: Section 7.1.8.11, "GS NFV-IFA011: Section 7.1.8.17, NfviMaintenanceInfo
LocalAffinityOrAntiAffinityRule information element."; information element";
}
list max-number-of-impacted-instances {
key "group-size";
ordered-by user;
must "./max-number-of-impacted-instances <= ./group-size";
leaf group-size {
type uint32;
description
"When present, it determines the size of the group for
which the maxNumberOfImpactedInstances is specified.
Otherwise the size is not limited.
Each groupSize value specified for a group of virtual
resources shall be unique, and it shall be possible
to form an ascending ordered list of groupSizes.
The number of instances in the group for which the
maxNumberOfImpactedInstances is specified may be equal
to groupSize or less. When the number of instances is
less than the groupSize, it shall be at least 1 if this
is the first groupSize in the ordered list of groupSizes,
or it shall be greater by at least 1 than the previous
groupSize in the ordered list of groupSizes.";
reference
"GS NFV-IFA011: Section 7.1.8.17, NfviMaintenanceInfo
information element";
}
leaf max-number-of-impacted-instances {
type uint32 {
range "1 .. max";
}
description
"The maximum number of instances that can be impacted
simultaneously within the group of the specified size.";
reference
"GS NFV-IFA011: Section 7.1.8.17, NfviMaintenanceInfo
information element";
}
} }
} }
} }
...@@ -424,6 +563,7 @@ submodule etsi-nfv-common { ...@@ -424,6 +563,7 @@ submodule etsi-nfv-common {
type identityref { type identityref {
base layer-protocol; base layer-protocol;
} }
min-elements 1;
description description
"Identifies the protocols that the VL uses (Ethernet, "Identifies the protocols that the VL uses (Ethernet,
MPLS, ODU2, IPV4, IPV6, Pseudo-Wire). The top layer MPLS, ODU2, IPV4, IPV6, Pseudo-Wire). The top layer
......
...@@ -14,6 +14,22 @@ module etsi-nfv-descriptors { ...@@ -14,6 +14,22 @@ module etsi-nfv-descriptors {
description description
"Network Function Virtualization Descriptors"; "Network Function Virtualization Descriptors";
revision 2020-06-10 {