Commit a00b1bf3 authored by ppree's avatar ppree
Browse files

issue #53 Adding MegaCR FEAT17 Cloud-native VNFs

parent 8cb93f0a
Loading
Loading
Loading
Loading
Loading
+209 −0
Original line number Diff line number Diff line
@@ -212,6 +212,7 @@ submodule etsi-nfv-vnf {
          "Specifies the scope of the rule.
           Values:
             • NFVI-PoP
             • CIS-node
             • Zone
             • ZoneGroup
             • NFVI-node
@@ -676,6 +677,182 @@ submodule etsi-nfv-vnf {
          }
        }
      }

      list logical-node {
        key "id";

        leaf id {
          type string;
          description
            "Identifies this set of logical node requirements.";
          reference
            "GS NFV IFA011: Section 7.1.9.6, LogicalNodeRequirements
             Information elements.";
        }

        list requirement-detail {
          key "key";
          min-elements 1;

          leaf key {
            type string;
          }

          leaf value {
            type string;
          }
          description
            "The logical node-level compute, memory and I/O
             requirements. An array of key-value pairs that
             articulate the deployment requirements.

             This could include the number of CPU cores on this
             logical node, a memory configuration specific to a
             logical node (e.g. such as available in the Linux
             kernel via the libnuma library) or a requirement
             related to the association of an I/O device with the
             logical node.";
          reference
            "GS NFV IFA011: Section 7.1.9.6, LogicalNodeRequirements
             information element.";
        }
	    }
      list request-additional-capability {
        key "name";

        leaf name {
          type string;
          description
            "Identifies a requested additional capability for the
             VDU. ETSI GS NFV-IFA 002 [i.1] describes acceleration
             capabilities.";
          reference
            "GS NFV IFA011: Section 7.1.9.5,
             RequestedAdditionalCapabilityData Information element.";
        }

        leaf support-mandatory {
          type boolean;
          description
            "Indicates whether the requested additional capability
             is mandatory for successful operation.";
          reference
            "GS NFV IFA011: Section 7.1.9.5,
             RequestedAdditionalCapabilityData Information
             element.";
        }

        leaf min-version {
          type string;
          description
            "Identifies the minimum version of the requested
             additional capability.";
          reference
            "GS NFV IFA011: Section 7.1.9.5,
             RequestedAdditionalCapabilityData Information element.";
        }

        leaf preferred-version {
          type string;
          description
            "Identifies the preferred version of the requested
             additional capability.";
          reference
            "GS NFV IFA011: Section 7.1.9.5,
             RequestedAdditionalCapabilityData Information element.";
        }

        list target-performance-parameters {
          key "key";

          leaf key {
            type string;
          }

          leaf value {
            type string;
          }
          description
            "Identifies specific attributes, dependent on the
             requested additional capability type.";
          reference
            "GS NFV IFA011: Section 7.1.9.5,
             RequestedAdditionalCapabilityData Information element.";
        }
      }

      leaf-list mcio-constraint-params {
        type enumeration {
          enum "affinityNfviPop";
          enum "affinityZone";
          enum "affinityZoneGroup";
          enum "affinityNfviNode";
          enum "affinityCisNode";
          enum "antiAffinityNfviPop";
          enum "antiAffinityZone";
          enum "antiAffinityZoneGroup";
          enum "antiAffinityNfviNode";
          enum "antiAffinityCisNode";
          enum "localAffinityNfviPop";
          enum "localAffinityZone";
          enum "localAffinityZoneGroup";
          enum "localAffinityNfviNode";
          enum "localAffinityCisNode";
          enum "localAntiAffinityNfviPop";
          enum "localAntiAffinityZone";
          enum "localAntiAffinityZoneGroup";
          enum "localAntiAffinityNfviNode";
          enum "localAntiAffinityCisNode";
          enum "nodeAdditionalCapabilitySsd";
          enum "nodeAdditionalCapabilityDpdk";
          enum "nodeAdditionalCapabilitySriov";
          enum "nodeAdditionalCapabilityGpu";
          enum "nodeAdditionalCapabilityFpga";
          enum "nodeAdditionalCapabilityCpuPin";
          enum "nodeCapabilityLogicalNuma";
          enum "nodePool";
        }
        description
          "The parameter names for constraints expected to be
           assigned to MCIOs realizing this Vdu.The value specifies
           the standardized semantical context of the MCIO
           constraints and the parameter names for the MCIO
           constraints in the MCIO declarative descriptor.
           The mcioConstraintParams attribute shall have one of the
           following values, expressing the associated semantical
           context.
           VALUES:
           • affinityNfviPop
           • affinityZone
           • affinityZoneGroup
           • affinityNfviNode
           • affinityCisNode
           • antiAffinityNfviPop
           • antiAffinityZone
           • antiAffinityZoneGroup
           • antiAffinityNfviNode
           • antiAffinityCisNode
           • localAffinityNfviPop
           • localAffinityZone
           • localAffinityZoneGroup
           • localAffinityNfviNode
           • localAffinityCisNode
           • localAntiAffinityNfviPop
           • localAntiAffinityZone
           • localAntiAffinityZoneGroup
           • localAntiAffinityNfviNode
           • localAntiAffinityCisNode
           • nodeAdditionalCapabilitySsd
           • nodeAdditionalCapabilityDpdk
           • nodeAdditionalCapabilitySriov
           • nodeAdditionalCapabilityGpu
           • nodeAdditionalCapabilityFpga
           • nodeAdditionalCapabilityCpuPin
           • nodeCapabilityLogicalNuma
           •  nodePool.";
        reference
            "GS NFV IFA011: Section 7.1.6.2, Vdu Information elements.";
	    }
    }

    list virtual-compute-desc {
@@ -1132,6 +1309,37 @@ submodule etsi-nfv-vnf {
	  }
	}
      }

      uses nfvi-maintenance-info {
        description
          "When present, provides information on the rules to be
           observed when an instance based on this
           VirtualStorageDesc is impacted during NFVI operation
           and maintenance (e.g. NFVI resource upgrades).";
        reference
          "GS NFV IFA011: Section 7.1.9.4, Information elements
          related to Virtual Storage.";
      }

      leaf per-vnfc-instance {
        type boolean;
        default "true";
        description
          "Indicates whether the virtual storage resource shall be
          instantiated per VNFC instance.
          If the value is true (default), a virtual storage
          resource shall be instantiated for each VNFC instance
          that is based on a VDU referring to this virtual storage
          descriptor and have the same lifetime as the VNFC instance.
          If the value is false, a single virtual storage resource
          shall be instantiated with a lifetime independent of the
          lifetime of individual VNFC instances based on a VDU
          referring to this virtual storage descriptor.The storage
          resource shall have the same lifetime as the VNF instance";
        reference
          "GS NFV IFA011: Section 7.1.9.4, Information elements
          related to Virtual Storage.";
      }
    }

    list sw-image-desc {
@@ -2790,6 +2998,7 @@ submodule etsi-nfv-vnf {
                • Zone
                • ZoneGroup
                • NFVI-node
                • CIS-node
                • network-link-and-node";
          reference
            "GS NFV IFA011: Section 7.1.8.12