Commit 2ec0a0f9 authored by jethanandani's avatar jethanandani
Browse files

Merge branch 'v2.7.1' into 'bug#252'

# Conflicts:
#   example-data/nfv-nsd.xml
#   example-data/nfv-vnfd.xml
parents 70442076 a342a58a
Loading
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -133,4 +133,4 @@
      </ns-instantiation-level>
      </ns-instantiation-level>
    </df>
    </df>
  </nsd>
  </nsd>
</nsd>
</config>
+104 −3
Original line number Original line Diff line number Diff line
@@ -9,6 +9,14 @@ submodule etsi-nfv-common {
  description
  description
    "Common data types for ETSI data models.";
    "Common data types for ETSI data models.";


  revision 2019-10-01 {
    description
      "Version 2.7.1.

       Common data structures to support VNFD and NSD according to:
       ETSI GS NFV-IFA 014 Ed271v264
       ETSI GS NFV-IFA 011 Ed271v264";
  }
  revision 2019-04-25 {
  revision 2019-04-25 {
    description
    description
      "Initial revision
      "Initial revision
@@ -243,6 +251,99 @@ submodule etsi-nfv-common {
      "Ephemeral type of storage.";
      "Ephemeral type of storage.";
  }
  }


  identity forwarding-behaviour {
    description
      "Base identity for forwarding behaviour.";
  }

  identity all {
    base forwarding-behaviour;
    description
      "Traffic flows shall be forwarded simultaneously to all CP
       or SAP instances created from the referenced CP profile(s).";
  }

  identity lb {
    base forwarding-behaviour;
    description
      "Traffic flows shall be forwarded to one CP or SAP instance
       created from the referenced CP profile(s) selected based on
       a load-balancing algorithm.";
  }

  identity vip-function {
    description
      "Indicates the function the virtual IP address is used for.";
  }

  identity high-availability {
    base vip-function;
    description
      "High availability function.";
  }

  identity load-balancing {
    base vip-function;
    description
      "Load balancing function.";
  }

  identity vnic-type {
    description
      "Describes the type of the virtual network interface realizing
       the CPs instantiated from this CPD. This is used to determine
       which mechanism driver(s) to be used to bind the port. Value:
       • NORMAL
       • VIRTIO
       • DIRECT
       • BAREMETAL
       • VIRTIO-FORWARDER
       • DIRECT-PHYSICAL
       • SMART-NIC";
  }

  identity normal {
    base vnic-type;
    description
      "Normal NIC.";
  }

  identity virtio {
    base vnic-type;
    description
      "VirtIO NIC.";
  }

  identity direct {
    base vnic-type;
    description
      "Direct NIC type.";
  }

  identity bare-metal {
    base vnic-type;
    description
      "Bare metal NIC type.";
  }

  identity virtio-forwarder {
    base vnic-type;
    description
      "VirtIO Forwarder NIC type.";
  }

  identity direct-physical {
    base vnic-type;
    description
      "Direct physical NIC type.";
  }

  identity smart-nic {
    base vnic-type;
    description
      "SmartNIC or Smart NIC type.";
  }

  /*
  /*
   * Typedefs
   * Typedefs
   */
   */
@@ -294,8 +395,8 @@ submodule etsi-nfv-common {


  grouping local-affinity-or-anti-affinity-rule {
  grouping local-affinity-or-anti-affinity-rule {
    list local-affinity-or-anti-affinity-rule {
    list local-affinity-or-anti-affinity-rule {
      key "affinity-type affinity-scope";
      key "type scope";
      leaf affinity-type {
      leaf type {
        type affinity-type;
        type affinity-type;
        description
        description
          "Specifies whether the rule is an affinity rule or an
          "Specifies whether the rule is an affinity rule or an
@@ -305,7 +406,7 @@ submodule etsi-nfv-common {
           LocalAffinityOrAntiAffinityRule information element.";
           LocalAffinityOrAntiAffinityRule information element.";
      }
      }


      leaf affinity-scope {
      leaf scope {
        type affinity-scope;
        type affinity-scope;
        description
        description
          "Specifies the scope of the rule, possible values are
          "Specifies the scope of the rule, possible values are
+234 −162
Original line number Original line Diff line number Diff line
@@ -11,6 +11,14 @@ submodule etsi-nfv-ns {
  description
  description
    "Models for NS according to ETSI GS NFV-IFA 014.";
    "Models for NS according to ETSI GS NFV-IFA 014.";


  revision 2019-10-01 {
    description
      "Version 2.7.1.

       Common data structures to support VNFD and NSD according to:
       ETSI GS NFV-IFA 014 Ed271v264
       ETSI GS NFV-IFA 011 Ed271v264";
  }
  revision 2019-04-25 {
  revision 2019-04-25 {
    description
    description
      "Initial revision
      "Initial revision
@@ -97,7 +105,7 @@ submodule etsi-nfv-ns {


    leaf-list vnfd-id {
    leaf-list vnfd-id {
      type leafref {
      type leafref {
        path "../../vnfd/id";
        path "/nfv:nfv/nfv:vnfd/nfv:id";
      }
      }
      description
      description
        "References the VNFD of a constituent VNF.";
        "References the VNFD of a constituent VNF.";
@@ -108,7 +116,7 @@ submodule etsi-nfv-ns {


    leaf-list pnfd-id {
    leaf-list pnfd-id {
      type leafref {
      type leafref {
        path "../../pnfd/id";
        path "/nfv:nfv/nfv:pnfd/nfv:id";
      }
      }
      description
      description
        "References the PNFD of a constituent PNF.";
        "References the PNFD of a constituent PNF.";
@@ -164,7 +172,7 @@ submodule etsi-nfv-ns {
            leaf vnfd-id {
            leaf vnfd-id {
              mandatory true;
              mandatory true;
              type leafref {
              type leafref {
                path "../../../../vnfd/id";
                path "/nfv:nfv/nfv:vnfd/nfv:id";
              }
              }
              must "boolean(../../../vnfd-id[.=current()])";
              must "boolean(../../../vnfd-id[.=current()])";
            }
            }
@@ -172,7 +180,7 @@ submodule etsi-nfv-ns {
            leaf ext-cpd-id {
            leaf ext-cpd-id {
              mandatory true;
              mandatory true;
              type leafref {
              type leafref {
                path "deref(../vnfd-id)/../ext-cpd/id";
                path "deref(../vnfd-id)/../nfv:ext-cpd/nfv:id";
              }
              }
            }
            }
          }
          }
@@ -181,7 +189,7 @@ submodule etsi-nfv-ns {
            leaf pnfd-id {
            leaf pnfd-id {
              mandatory true;
              mandatory true;
              type leafref {
              type leafref {
                path "../../../../pnfd/id";
                path "/nfv:nfv/nfv:pnfd/nfv:id";
              }
              }
              must "boolean(../pnfd-id[.=current()])";
              must "boolean(../pnfd-id[.=current()])";
            }
            }
@@ -189,7 +197,7 @@ submodule etsi-nfv-ns {
            leaf ext-cpd-id {
            leaf ext-cpd-id {
              mandatory true;
              mandatory true;
              type leafref {
              type leafref {
                path "deref(../pnfd-id)/../ext-cpd/id";
                path "deref(../pnfd-id)/../nfv:ext-cpd/nfv:id";
              }
              }
            }
            }
          }
          }
@@ -415,21 +423,23 @@ submodule etsi-nfv-ns {
           element";
           element";
      }
      }


      list cpd-pool {
      list nfp-position-element {
        key "id";
        key "id";


        description
        min-elements 1;
          "Describes a pool of descriptors of connection points
           attached to one of the constituent VNFs and PNFs and/or
           one of the SAPs of the parent NS or of a nested NS.";
        reference
          "GS NFV IFA014: Section 6.4.2.2 Vnffgd information
           element";


        leaf id {
        leaf id {
          type string;
          type string;
          description
            "Identifier of this NfpPositionElemen information
             element. It uniquely identifies an
             NfpPositionElemen.";
          reference
            "GS NFV IFA014: Section 6.4.6.2 NfpPositionElement
                 information element";
        }
        }


        container desc {
          choice constituent-base-element-id {
          choice constituent-base-element-id {
            mandatory "true";
            mandatory "true";
            container vnf-profile {
            container vnf-profile {
@@ -437,7 +447,7 @@ submodule etsi-nfv-ns {
                must ". = deref(../../vnfd-profile-id)" {
                must ". = deref(../../vnfd-profile-id)" {
                }
                }
                type leafref {
                type leafref {
                path "../../../../../nsd/df/vnf-profile/id";
                  path "../../../../../../nsd/df/vnf-profile/id";
                }
                }
              }
              }
            }
            }
@@ -446,7 +456,7 @@ submodule etsi-nfv-ns {
                must ". = deref(../../pnfd-profile-id)" {
                must ". = deref(../../pnfd-profile-id)" {
                }
                }
                type leafref {
                type leafref {
                path "../../../../../nsd/df/pnf-profile/id";
                  path "../../../../../../nsd/df/pnf-profile/id";
                }
                }
              }
              }
            }
            }
@@ -455,15 +465,15 @@ submodule etsi-nfv-ns {
                must ". = deref(../../ns-profile-id)" {
                must ". = deref(../../ns-profile-id)" {
                }
                }
                type leafref {
                type leafref {
                path "../../../../../nsd/df/ns-profile/id";
                  path "../../../../../../nsd/df/ns-profile/id";
                }
                }
              }
              }
            }
            }
            description
            description
              "Reference to the profile of an NS constituent.";
              "Reference to the profile of an NS constituent.";
            reference
            reference
            "GS NFV IFA014: Section 6.4.8 CpdInConstituentElement
              "GS NFV IFA014: Section 6.4.8
             information element";
               CpdInConstituentElement information element";
          }
          }


          choice constituent-cpd-id {
          choice constituent-cpd-id {
@@ -472,12 +482,12 @@ submodule etsi-nfv-ns {
                must ". = deref(../../vnfd-profile-id)/../vnfd-id" {
                must ". = deref(../../vnfd-profile-id)/../vnfd-id" {
                }
                }
                type leafref {
                type leafref {
                path "../../../../../vnfd/id";
                  path "/nfv:nfv/nfv:vnfd/nfv:id";
                }
                }
              }
              }
              leaf cpd-id {
              leaf cpd-id {
                type leafref {
                type leafref {
                path "deref(../vnfd-id)/../ext-cpd/id";
                  path "deref(../vnfd-id)/../nfv:ext-cpd/nfv:id";
                }
                }
              }
              }
            }
            }
@@ -486,12 +496,12 @@ submodule etsi-nfv-ns {
                must ". = deref(../../pnfd-profile-id)/../pnfd-id" {
                must ". = deref(../../pnfd-profile-id)/../pnfd-id" {
                }
                }
                type leafref {
                type leafref {
                path "../../../../../pnfd/id";
                  path "/nfv:nfv/nfv:pnfd/nfv:id";
                }
                }
              }
              }
              leaf pnf-cpd-id {
              leaf pnf-cpd-id {
                type leafref {
                type leafref {
                path "deref(../pnfd-id)/../ext-cpd/id";
                  path "deref(../pnfd-id)/../nfv:ext-cpd/nfv:id";
                }
                }
              }
              }
            }
            }
@@ -502,7 +512,7 @@ submodule etsi-nfv-ns {
                }
                }


                type leafref {
                type leafref {
                path "../../../../../nsd/id";
                  path "../../../../../../nsd/id";
                }
                }
              }
              }
              leaf sap-cpd-id {
              leaf sap-cpd-id {
@@ -512,24 +522,33 @@ submodule etsi-nfv-ns {
              }
              }
            }
            }
            description
            description
            "A reference to the descriptor of a connection point
              "References the VNF external CPD for a given
             attached to one of the constituent VNFs and PNFs or to
               VnfProfile, or the PNF external CPD for a given
             the descriptor of a NS SAP.";
               PnfProfile, or a NS SAPD for a given NsProfile
               identified by the constituentBaseElementId.";
            reference
            reference
            "GS NFV IFA014: Section 6.4.4.2 CpdPool information
              "GS NFV IFA014: Section 6.4.8.2
             element";
               CpdInConstituentElement information element";
          }
          description
            "Specifies a CPD or SAPD in the context of a profile
             of an NS constituent element.";
          reference
            "GS NFV IFA014: Section 6.4.6.2 NfpPositionElement
             information element";
        }
        }
        description
          "One or a pair of CPDs or SAPDs. These descriptors
           shall be members of the CpdPool associated to the
           parent VNFFG.";
        reference
          "GS NFV IFA014: Section 6.4.5.2 NfpPositionDesc
           information element";
      }
      }


      list nfpd {
      list nfpd {
        key "id";
        key "id";


        description
          "The network forwarding path associated to the VNFFG.";
        reference
          "GS NFV IFA014: Section 6.4.2.2 Vnffgd information
           element";

        leaf id {
        leaf id {
          type string;
          type string;
          description
          description
@@ -544,32 +563,18 @@ submodule etsi-nfv-ns {
          type string;
          type string;
          description
          description
            "Provides an NFP classification and selection rule.
            "Provides an NFP classification and selection rule.
             The rule may be expressed as a criteria constructed
             The rule may be expressed as a criteria constructed out
             out of atomic assertions linked by Boolean operators
             of atomic assertions linked by Boolean operators AND,
             AND, OR and NOT.";
             OR and NOT.";
          reference
          reference
            "GS NFV IFA014: Section 6.4.3.2 Nfpd information
            "GS NFV IFA014: Section 6.4.3.2 Nfpd information
             element";
             element";
        }
        }


        list position-desc-id {
        list position-desc {
          key "id";
          key "id";


          description
	  min-elements 1;
            "Describes a position in the NFP in terms of one or
             more CP profiles and rules for distributing the
             traffic among CP and SAP instances created from the
             CPD or SAPD associated to these profiles. This shall
             be connection point profile, which is either a CPD
             associated with the VnfProfile of a constituent VNF,
             or a CPD associated with the PnfProfile of a
             constituent PNF, or a SAPD associated with the
             NsProfile of a nested NS. The related VnfProfile,
             PnfProfile and NsProfile shall be included in the
             parent VNFFGD.";
          reference
            "GS NFV IFA014: Section 6.4.3.2 Nfpd information
             element";


          leaf id {
          leaf id {
            type string;
            type string;
@@ -580,68 +585,69 @@ submodule etsi-nfv-ns {
               information element";
               information element";
          }
          }


          list cp-profile-id {
          leaf-list nfp-position-element-id {
            key "id";
            type leafref {

              path "../../../nfp-position-element/id";
            }
            description
            description
              "References the profile of a connection point to be
              "Reference to one or a pair of CPDs or SAPDs.";
               traversed by the traffic flows matching the criteria.
               This shall be a connection point attached to one of
               the constituent VNFs and PNFs of the parent VNFFG,
               or a SAP of one of the constituent nested NSs of the
               parent VNFFG.";
            reference
            reference
              "GS NFV IFA014: Section 6.4.5.2 NfpPositionDesc
              "GS NFV IFA014: Section 6.4.5.2 NfpPositionDesc
               information element";
               information element";
          }


            leaf id {
          leaf forwarding-behaviour {
              type string;
            type identityref {
              base forwarding-behaviour;
            }
            description
            description
                "Identifier of this CpProfile information element.
              "Identifies a rule to apply to forward traffic to CP or
                 It uniquely identifies a CpProfile.";
               SAP instances corresponding to the referenced CPD(s)
               and SAPD(s). The minimum list of rules to be supported
               shall include:
               • ALL = Traffic flows shall be forwarded simultaneously
                 to all CP or SAP instances created from the
                 referenced CP profile(s).
               • LB = Traffic flows shall be forwarded to one CP or SAP
                 instance created from the referenced CP profile(s)
                 selected based on a load-balancing algorithm.";
            reference
            reference
                "GS NFV IFA014: Section 6.4.6.2 CpProfile
              "GS NFV IFA014: Section 6.4.5.2 NfpPositionDesc
               information element";
               information element";
          }
          }


            list constituent-profile-elements {
          leaf forwarding-behavior-input-parameters {
              key "id";
            type string;

            description
            description
                "Specifies the constituents of the CpProfile.";
              "Provides input parameters to configure the forwarding
               behaviour (e.g. identifies a load balancing
               algorithm).";
            reference
            reference
                "GS NFV IFA014: Section 6.4.6.2 CpProfile
              "GS NFV IFA014: Section 6.4.5.2 NfpPositionDesc
               information element";
               information element";
          }


              leaf id {
                type string;
          description
          description
                  "Specifies the constituents of the CpProfile.";
            "Describes a position in the NFP in terms of one or more
             CPDs and SAPDs and rules for distributing the traffic
             among CP and SAP instances created from these CPDs
             and SAPDs.";
          reference
          reference
                  "GS NFV IFA014: Section 6.4.7.2
            "GS NFV IFA014: Section 6.4.3.2 Nfpd information
                   ConstituentProfileElements information element";
             element";
        }
        }

              leaf cpd-id {
                type string;
        description
        description
                  "References the VNF external CPD for a given
          "The network forwarding path associated to the VNFFG.";
                   VnfProfile, or the PNF external CPD for a given
                   PnfProfile, or a NS SAPD for a give NsProfile
                   identified by the constituentBasedElementId.";
        reference
        reference
                  "GS NFV IFA014: Section 6.4.7.2
          "GS NFV IFA014: Section 6.4.2.2 Vnffgd information
                   ConstituentProfileElements information element";
           element";
              }
            }
          }
        }
      }
      }
    }
    }


    leaf-list autoscale-rule {
    leaf-list autoscale-rule {
      type string;
      type string;
    }
    }

    list lifecycle-management-script {
    list lifecycle-management-script {
      key "event";
      key "event";
      leaf event {
      leaf event {
@@ -721,7 +727,7 @@ submodule etsi-nfv-ns {
        leaf vnfd-id {
        leaf vnfd-id {
          mandatory true;
          mandatory true;
          type leafref {
          type leafref {
            path "../../../../vnfd/id";
            path "/nfv:nfv/nfv:vnfd/nfv:id";
          }
          }
          description
          description
            "References a VNFD.";
            "References a VNFD.";
@@ -733,7 +739,7 @@ submodule etsi-nfv-ns {
        leaf flavour-id {
        leaf flavour-id {
          mandatory true;
          mandatory true;
          type leafref {
          type leafref {
            path "deref(../vnfd-id)/../df/id";
            path "deref(../vnfd-id)/../nfv:df/nfv:id";
          }
          }
          description
          description
            "Identifies a flavour within the VNFD.";
            "Identifies a flavour within the VNFD.";
@@ -745,7 +751,8 @@ submodule etsi-nfv-ns {
        leaf instantiation-level {
        leaf instantiation-level {
          mandatory true;
          mandatory true;
          type leafref {
          type leafref {
            path "deref(../flavour-id)/../instantiation-level/id";
            path "deref(../flavour-id)/../nfv:instantiation-level/" +
	         "nfv:id";
          }
          }
          description
          description
            "Identifier of the instantiation level of the VNF DF
            "Identifier of the instantiation level of the VNF DF
@@ -845,7 +852,7 @@ submodule etsi-nfv-ns {


            leaf constituent-cpd-id {
            leaf constituent-cpd-id {
              type leafref {
              type leafref {
                path "deref(../../../vnfd-id)/../ext-cpd/id";
                path "deref(../../../vnfd-id)/../nfv:ext-cpd/nfv:id";
              }
              }
              description
              description
                "A reference to the descriptor of a connection point
                "A reference to the descriptor of a connection point
@@ -879,7 +886,7 @@ submodule etsi-nfv-ns {


        leaf pnfd-id {
        leaf pnfd-id {
          type leafref {
          type leafref {
            path "../../../../pnfd/id";
            path "/nfv:nfv/nfv:pnfd/nfv:id";
          }
          }
          description
          description
            "References a PNFD.";
            "References a PNFD.";
@@ -935,7 +942,7 @@ submodule etsi-nfv-ns {


            leaf constituent-cpd-id {
            leaf constituent-cpd-id {
              type leafref {
              type leafref {
                path "deref(../../../pnfd-id)/../ext-cpd/id";
                path "deref(../../../pnfd-id)/../nfv:ext-cpd/nfv:id";
              }
              }
              description
              description
                "A reference to the descriptor of a connection point
                "A reference to the descriptor of a connection point
@@ -1283,6 +1290,71 @@ submodule etsi-nfv-ns {
          "GS NFV IFA014: Section 6.3.2.2 NsDf information element";
          "GS NFV IFA014: Section 6.3.2.2 NsDf information element";
      }
      }


      container ns-lcm-additional-params {
        container instantiate {
          list params {
            key "key";

            leaf key {
              type string;
            }

            leaf value {
              type string;
            }
	    description
              "Array of KVP requirements for additional parameters
               of NS to be passed when invoking the Instantiate Ns
               operation.";
            reference
              "GS NFV IFA014: Section 6.2.10.3
               InstantiateNsAdditionalParams information element";
          }
        }

        container scale {
          list params {
            key "key";

            leaf key {
              type string;
            }

            leaf value {
              type string;
            }
	    description
              "Array of KVP requirements for additional parameters
               of NS to be passed when invoking the Scale Ns
               operation.";
            reference
              "GS NFV IFA014: Section 6.2.10.4
               ScaleNsAdditionalParams information element";
          }
        }

        container heal {
          list params {
            key "key";

            leaf key {
              type string;
            }

            leaf value {
              type string;
            }
	    description
              "Array of KVP requirements for additional parameters
               of NS to be passed when invoking the Heal Ns
               operation.";
            reference
              "GS NFV IFA014: Section 6.2.10.5
               HealNsAdditionalParams information element";
          }
        }
      }

      list ns-profile {
      list ns-profile {
        must "min-number-of-instances <= max-number-of-instances" {
        must "min-number-of-instances <= max-number-of-instances" {
          error-message
          error-message
@@ -1506,7 +1578,7 @@ submodule etsi-nfv-ns {
        container vnf-indicator-info {
        container vnf-indicator-info {
          leaf vnfd-id {
          leaf vnfd-id {
            type leafref {
            type leafref {
              path "../../../../../vnfd/id";
              path "/nfv:nfv/nfv:vnfd/nfv:id";
            }
            }
            description
            description
              "Identifies a VNFD.";
              "Identifies a VNFD.";
@@ -1518,7 +1590,7 @@ submodule etsi-nfv-ns {
	  leaf vnf-indicator {
	  leaf vnf-indicator {
            mandatory true;
            mandatory true;
            type leafref {
            type leafref {
              path "deref(../vnfd-id)/../indicator/id";
              path "deref(../vnfd-id)/../nfv:indicator/nfv:id";
            }
            }
            description
            description
              "Identifies a VNF indicator within the VNFD.";
              "Identifies a VNF indicator within the VNFD.";
+10 −28
Original line number Original line Diff line number Diff line
@@ -4,7 +4,7 @@ module etsi-nfv-nsd {
  prefix nsd;
  prefix nsd;


  import etsi-nfv-descriptors {
  import etsi-nfv-descriptors {
    prefix vnf;
    prefix nfv;
  }
  }


  organization
  organization
@@ -13,6 +13,14 @@ module etsi-nfv-nsd {
  description
  description
    "Network Services Descriptors";
    "Network Services Descriptors";


  revision 2019-10-01 {
    description
      "Version 2.7.1.

       Common data structures to support VNFD and NSD according to:
       ETSI GS NFV-IFA 014 Ed271v264
       ETSI GS NFV-IFA 011 Ed271v264";
  }
  revision 2019-04-25 {
  revision 2019-04-25 {
    description
    description
      "Initial revision.
      "Initial revision.
@@ -20,23 +28,10 @@ module etsi-nfv-nsd {
  }
  }


  container nsd {
  container nsd {
    list vnfd {
      key "id";
      description
        "A VNF Descriptor (VNFD) is a deployment template which
         describes a VNF in terms of deployment and operational
         behaviour requirements. It also contains connectivity,
         interface and virtualised resource requirements";
      reference
        "GS NFV-IFA011: Section 7.1.2, VNFD information element";

      uses vnf:vnfd;
    }

    list nsd {
    list nsd {
      key "id";
      key "id";
      max-elements 1;
      max-elements 1;
      uses vnf:nsd;
      uses nfv:nsd;
      description
      description
	"The NSD information element is a deployment template whose
	"The NSD information element is a deployment template whose
         instances are used by the NFVO for the lifecycle management
         instances are used by the NFVO for the lifecycle management
@@ -45,18 +40,5 @@ module etsi-nfv-nsd {
        "GS NFV-IFA014: Section 6.2.2, Network Service Descriptor
        "GS NFV-IFA014: Section 6.2.2, Network Service Descriptor
         information element";
         information element";
    }
    }

    list pnfd {
      key "id";

      description
	"The Pnfd information element is a deployment template
         enabling on-boarding PNFs and referencing them from an
         NSD. It focuses on connectivity aspects only.";
      reference
        "GS NFV-IFA014: Section 6.6.2, Pnfd information element.";

      uses vnf:pnfd;
    }
  }
  }
}
}
+8 −12
Original line number Original line Diff line number Diff line
@@ -12,6 +12,14 @@ submodule etsi-nfv-pnf {
  description
  description
    "Models for PNFD according to GS NFV-IFA 014.";
    "Models for PNFD according to GS NFV-IFA 014.";


  revision 2019-10-01 {
    description
      "Version 2.7.1.

       Common data structures to support VNFD and NSD according to:
       ETSI GS NFV-IFA 014 Ed271v264
       ETSI GS NFV-IFA 011 Ed271v264";
  }
  revision 2019-04-25 {
  revision 2019-04-25 {
    description
    description
      "Initial revision.
      "Initial revision.
@@ -92,18 +100,6 @@ submodule etsi-nfv-pnf {
        "GS NFV-IFA014: Section 6.6.2, Pnfd information element";
        "GS NFV-IFA014: Section 6.6.2, Pnfd information element";
    }
    }


    list security {
      key "signature";
      uses security-parameters;
      description
        "Provides a signature to prevent tampering.
         Editor's Note: While IFA014 does specify that the PNFD
         includes a security parameter. SOL001 does not have one.
         We need to harmonize SOL001 & SOL006 on this point.";
      reference
        "GS NFV-IFA014: Section 6.6.2, Pnfd information element";
    }

    leaf geographical-location-info {
    leaf geographical-location-info {
      type string;
      type string;
      description
      description
Loading