Commit d67cd24d authored by jethanandani's avatar jethanandani
Browse files

Merge branch 'master' into 'bug#170'

# Conflicts:
#   src/yang/etsi-nfv-vnf.yang
parents 094395a0 82f542ca
Loading
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -6,7 +6,7 @@
# https://forge.etsi.org/etsi-software-license
# https://forge.etsi.org/etsi-software-license


YANG_MODULES="yang/yang/*"
YANG_MODULES="yang/yang/*"
OUTPUT="etsi-nfv.html"
OUTPUT="etsi-nfv-descriptors.html"
IMG_NAME="sol006"
IMG_NAME="sol006"
VERSION=latest
VERSION=latest
IMG="$IMG_NAME:$VERSION"
IMG="$IMG_NAME:$VERSION"
+51 −37
Original line number Original line Diff line number Diff line
<nfv xmlns="urn:etsi:params:xml:ns:yang:etsi-nfv">
<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>
@@ -11,15 +11,15 @@
      <name>Firewall VDU</name>
      <name>Firewall VDU</name>
      <int-cpd>
      <int-cpd>
        <id>inside</id>
        <id>inside</id>
        <layer-protocol>Ethernet</layer-protocol>
        <layer-protocol>ethernet</layer-protocol>
      </int-cpd>
      </int-cpd>
      <int-cpd>
      <int-cpd>
        <id>management</id>
        <id>management</id>
        <layer-protocol>Ethernet</layer-protocol>
        <layer-protocol>ethernet</layer-protocol>
      </int-cpd>
      </int-cpd>
      <int-cpd>
      <int-cpd>
        <id>outside</id>
        <id>outside</id>
        <layer-protocol>Ethernet</layer-protocol>
        <layer-protocol>ethernet</layer-protocol>
      </int-cpd>
      </int-cpd>
      <virtual-compute-desc>asa-vcd</virtual-compute-desc>
      <virtual-compute-desc>asa-vcd</virtual-compute-desc>
      <virtual-storage-desc>asa-vsd</virtual-storage-desc>
      <virtual-storage-desc>asa-vsd</virtual-storage-desc>
@@ -36,14 +36,21 @@
    </virtual-compute-desc>
    </virtual-compute-desc>
    <virtual-storage-descriptor>
    <virtual-storage-descriptor>
      <id>asa-vsd</id>
      <id>asa-vsd</id>
      <type-of-storage>root</type-of-storage>
      <type-of-storage>root-storage</type-of-storage>
      <size-of-storage>0</size-of-storage>
      <size-of-storage>0</size-of-storage>
    </virtual-storage-descriptor>
    </virtual-storage-descriptor>
    <sw-image-desc>
    <sw-image-desc>
      <id>asa-image</id>
      <id>asa-image</id>
      <name>ASA image</name>
      <version>1.1</version>
      <checksum>
	<algorithm>sha-224</algorithm>
	<hash>deadbeef</hash>
      </checksum>
      <container-format>bare</container-format>
      <container-format>bare</container-format>
      <disk-format>qcow2</disk-format>
      <disk-format>qcow2</disk-format>
      <min-ram>2.0</min-ram>
      <min-ram>2.0</min-ram>
      <size>1</size>
      <image>http://www.cisco.com/asa.qcow2</image>
      <image>http://www.cisco.com/asa.qcow2</image>
    </sw-image-desc>
    </sw-image-desc>
    <ext-cpd>
    <ext-cpd>
@@ -52,7 +59,7 @@
	<vdu-id>firewall</vdu-id>
	<vdu-id>firewall</vdu-id>
	<cpd>inside</cpd>
	<cpd>inside</cpd>
      </int-cpd>
      </int-cpd>
      <layer-protocol>Ethernet</layer-protocol>
      <layer-protocol>ethernet</layer-protocol>
    </ext-cpd>
    </ext-cpd>
    <ext-cpd>
    <ext-cpd>
      <id>management</id>
      <id>management</id>
@@ -60,7 +67,7 @@
	<vdu-id>firewall</vdu-id>
	<vdu-id>firewall</vdu-id>
	<cpd>management</cpd>
	<cpd>management</cpd>
      </int-cpd>
      </int-cpd>
      <layer-protocol>Ethernet</layer-protocol>
      <layer-protocol>ethernet</layer-protocol>
    </ext-cpd>
    </ext-cpd>
    <ext-cpd>
    <ext-cpd>
      <id>outside</id>
      <id>outside</id>
@@ -68,7 +75,7 @@
	<vdu-id>firewall</vdu-id>
	<vdu-id>firewall</vdu-id>
	<cpd>outside</cpd>
	<cpd>outside</cpd>
      </int-cpd>
      </int-cpd>
      <layer-protocol>Ethernet</layer-protocol>
      <layer-protocol>ethernet</layer-protocol>
    </ext-cpd>
    </ext-cpd>
    <df>
    <df>
      <id>normal</id>
      <id>normal</id>
@@ -80,14 +87,14 @@
      <instantiation-level>
      <instantiation-level>
        <id>double</id>
        <id>double</id>
        <vdu-level>
        <vdu-level>
          <id>firewall</id>
          <vdu-id>firewall</vdu-id>
          <number-of-instances>2</number-of-instances>
          <number-of-instances>2</number-of-instances>
        </vdu-level>
        </vdu-level>
      </instantiation-level>
      </instantiation-level>
      <instantiation-level>
      <instantiation-level>
        <id>single</id>
        <id>single</id>
        <vdu-level>
        <vdu-level>
          <id>firewall</id>
          <vdu-id>firewall</vdu-id>
          <number-of-instances>1</number-of-instances>
          <number-of-instances>1</number-of-instances>
        </vdu-level>
        </vdu-level>
      </instantiation-level>
      </instantiation-level>
@@ -106,15 +113,15 @@
      <name>Router VDU</name>
      <name>Router VDU</name>
      <int-cpd>
      <int-cpd>
        <id>left</id>
        <id>left</id>
        <layer-protocol>Ethernet</layer-protocol>
        <layer-protocol>ethernet</layer-protocol>
      </int-cpd>
      </int-cpd>
      <int-cpd>
      <int-cpd>
        <id>management</id>
        <id>management</id>
        <layer-protocol>Ethernet</layer-protocol>
        <layer-protocol>ethernet</layer-protocol>
      </int-cpd>
      </int-cpd>
      <int-cpd>
      <int-cpd>
        <id>right</id>
        <id>right</id>
        <layer-protocol>Ethernet</layer-protocol>
        <layer-protocol>ethernet</layer-protocol>
      </int-cpd>
      </int-cpd>
      <virtual-compute-desc>csr-vcd</virtual-compute-desc>
      <virtual-compute-desc>csr-vcd</virtual-compute-desc>
      <virtual-storage-desc>csr-vsd</virtual-storage-desc>
      <virtual-storage-desc>csr-vsd</virtual-storage-desc>
@@ -131,14 +138,21 @@
    </virtual-compute-desc>
    </virtual-compute-desc>
    <virtual-storage-descriptor>
    <virtual-storage-descriptor>
      <id>csr-vsd</id>
      <id>csr-vsd</id>
      <type-of-storage>root</type-of-storage>
      <type-of-storage>root-storage</type-of-storage>
      <size-of-storage>0</size-of-storage>
      <size-of-storage>0</size-of-storage>
    </virtual-storage-descriptor>
    </virtual-storage-descriptor>
    <sw-image-desc>
    <sw-image-desc>
      <id>csr-image</id>
      <id>csr-image</id>
      <name>CSR image</name>
      <version>1.1</version>
      <checksum>
	<algorithm>sha-224</algorithm>
	<hash>deadbeef</hash>
      </checksum>
      <container-format>bare</container-format>
      <container-format>bare</container-format>
      <disk-format>qcow2</disk-format>
      <disk-format>qcow2</disk-format>
      <min-ram>2.0</min-ram>
      <min-ram>2.0</min-ram>
      <size>1</size>
      <image>http://www.cisco.com/csr.qcow2</image>
      <image>http://www.cisco.com/csr.qcow2</image>
    </sw-image-desc>
    </sw-image-desc>
    <ext-cpd>
    <ext-cpd>
@@ -147,7 +161,7 @@
	<vdu-id>router</vdu-id>
	<vdu-id>router</vdu-id>
	<cpd>left</cpd>
	<cpd>left</cpd>
      </int-cpd>
      </int-cpd>
      <layer-protocol>Ethernet</layer-protocol>
      <layer-protocol>ethernet</layer-protocol>
    </ext-cpd>
    </ext-cpd>
    <ext-cpd>
    <ext-cpd>
      <id>management</id>
      <id>management</id>
@@ -155,7 +169,7 @@
	<vdu-id>router</vdu-id>
	<vdu-id>router</vdu-id>
	<cpd>management</cpd>
	<cpd>management</cpd>
      </int-cpd>
      </int-cpd>
      <layer-protocol>Ethernet</layer-protocol>
      <layer-protocol>ethernet</layer-protocol>
    </ext-cpd>
    </ext-cpd>
    <ext-cpd>
    <ext-cpd>
      <id>right</id>
      <id>right</id>
@@ -163,7 +177,7 @@
	<vdu-id>router</vdu-id>
	<vdu-id>router</vdu-id>
	<cpd>right</cpd>
	<cpd>right</cpd>
      </int-cpd>
      </int-cpd>
      <layer-protocol>Ethernet</layer-protocol>
      <layer-protocol>ethernet</layer-protocol>
    </ext-cpd>
    </ext-cpd>
    <df>
    <df>
      <id>normal</id>
      <id>normal</id>
@@ -175,14 +189,14 @@
      <instantiation-level>
      <instantiation-level>
        <id>double</id>
        <id>double</id>
        <vdu-level>
        <vdu-level>
          <id>router</id>
          <vdu-id>router</vdu-id>
          <number-of-instances>2</number-of-instances>
          <number-of-instances>2</number-of-instances>
        </vdu-level>
        </vdu-level>
      </instantiation-level>
      </instantiation-level>
      <instantiation-level>
      <instantiation-level>
        <id>single</id>
        <id>single</id>
        <vdu-level>
        <vdu-level>
          <id>router</id>
          <vdu-id>router</vdu-id>
          <number-of-instances>1</number-of-instances>
          <number-of-instances>1</number-of-instances>
        </vdu-level>
        </vdu-level>
      </instantiation-level>
      </instantiation-level>
@@ -206,7 +220,7 @@
      <vnf-profile>
      <vnf-profile>
        <id>firewall</id>
        <id>firewall</id>
        <vnfd-id>ASA</vnfd-id>
        <vnfd-id>ASA</vnfd-id>
        <flavor-id>normal</flavor-id>
        <flavour-id>normal</flavour-id>
        <instantiation-level>single</instantiation-level>
        <instantiation-level>single</instantiation-level>
        <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>
@@ -243,7 +257,7 @@
      <id>fw2dpi</id>
      <id>fw2dpi</id>
      <connectivity-type>
      <connectivity-type>
        <layer-protocol>
        <layer-protocol>
	  <protocol>Ethernet</protocol>
	  <protocol>ethernet</protocol>
	</layer-protocol>
	</layer-protocol>
      </connectivity-type>
      </connectivity-type>
      <df>
      <df>
@@ -258,7 +272,7 @@
      <id>mgmt</id>
      <id>mgmt</id>
      <connectivity-type>
      <connectivity-type>
        <layer-protocol>
        <layer-protocol>
	  <protocol>IPv4</protocol>
	  <protocol>ipv4</protocol>
	</layer-protocol>
	</layer-protocol>
      </connectivity-type>
      </connectivity-type>
      <df>
      <df>
@@ -273,7 +287,7 @@
      <id>r2fw</id>
      <id>r2fw</id>
      <connectivity-type>
      <connectivity-type>
        <layer-protocol>
        <layer-protocol>
	  <protocol>Ethernet</protocol>
	  <protocol>ethernet</protocol>
	</layer-protocol>
	</layer-protocol>
      </connectivity-type>
      </connectivity-type>
      <df>
      <df>
@@ -289,7 +303,7 @@
      <vnf-profile>
      <vnf-profile>
        <id>firewall</id>
        <id>firewall</id>
        <vnfd-id>ASA</vnfd-id>
        <vnfd-id>ASA</vnfd-id>
        <flavor-id>normal</flavor-id>
        <flavour-id>normal</flavour-id>
        <instantiation-level>single</instantiation-level>
        <instantiation-level>single</instantiation-level>
        <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>
@@ -311,7 +325,7 @@
      <vnf-profile>
      <vnf-profile>
        <id>router</id>
        <id>router</id>
        <vnfd-id>CSR</vnfd-id>
        <vnfd-id>CSR</vnfd-id>
        <flavor-id>normal</flavor-id>
        <flavour-id>normal</flavour-id>
        <instantiation-level>single</instantiation-level>
        <instantiation-level>single</instantiation-level>
        <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>
@@ -333,7 +347,7 @@
      <virtual-link-profile>
      <virtual-link-profile>
        <id>mgmt</id>
        <id>mgmt</id>
        <virtual-link-desc-id>mgmt</virtual-link-desc-id>
        <virtual-link-desc-id>mgmt</virtual-link-desc-id>
        <flavor-id>normal</flavor-id>
        <flavour-id>normal</flavour-id>
        <max-bitrate-requirements>
        <max-bitrate-requirements>
          <root>1000</root>
          <root>1000</root>
        </max-bitrate-requirements>
        </max-bitrate-requirements>
@@ -344,7 +358,7 @@
      <virtual-link-profile>
      <virtual-link-profile>
        <id>r2fw</id>
        <id>r2fw</id>
        <virtual-link-desc-id>r2fw</virtual-link-desc-id>
        <virtual-link-desc-id>r2fw</virtual-link-desc-id>
        <flavor-id>normal</flavor-id>
        <flavour-id>normal</flavour-id>
        <max-bitrate-requirements>
        <max-bitrate-requirements>
          <root>10000000</root>
          <root>10000000</root>
        </max-bitrate-requirements>
        </max-bitrate-requirements>
@@ -370,7 +384,7 @@
      <vnf-profile>
      <vnf-profile>
        <id>firewall</id>
        <id>firewall</id>
        <vnfd-id>ASA</vnfd-id>
        <vnfd-id>ASA</vnfd-id>
        <flavor-id>normal</flavor-id>
        <flavour-id>normal</flavour-id>
        <instantiation-level>single</instantiation-level>
        <instantiation-level>single</instantiation-level>
        <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>
@@ -399,7 +413,7 @@
      <vnf-profile>
      <vnf-profile>
        <id>router</id>
        <id>router</id>
        <vnfd-id>CSR</vnfd-id>
        <vnfd-id>CSR</vnfd-id>
        <flavor-id>normal</flavor-id>
        <flavour-id>normal</flavour-id>
        <instantiation-level>single</instantiation-level>
        <instantiation-level>single</instantiation-level>
        <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>
@@ -432,7 +446,7 @@
      <virtual-link-profile>
      <virtual-link-profile>
        <id>fw2dpi</id>
        <id>fw2dpi</id>
        <virtual-link-desc-id>fw2dpi</virtual-link-desc-id>
        <virtual-link-desc-id>fw2dpi</virtual-link-desc-id>
        <flavor-id>normal</flavor-id>
        <flavour-id>normal</flavour-id>
        <max-bitrate-requirements>
        <max-bitrate-requirements>
          <root>1000000</root>
          <root>1000000</root>
        </max-bitrate-requirements>
        </max-bitrate-requirements>
@@ -443,7 +457,7 @@
      <virtual-link-profile>
      <virtual-link-profile>
        <id>mgmt</id>
        <id>mgmt</id>
        <virtual-link-desc-id>mgmt</virtual-link-desc-id>
        <virtual-link-desc-id>mgmt</virtual-link-desc-id>
        <flavor-id>normal</flavor-id>
        <flavour-id>normal</flavour-id>
        <max-bitrate-requirements>
        <max-bitrate-requirements>
          <root>1000</root>
          <root>1000</root>
        </max-bitrate-requirements>
        </max-bitrate-requirements>
@@ -454,7 +468,7 @@
      <virtual-link-profile>
      <virtual-link-profile>
        <id>r2fw</id>
        <id>r2fw</id>
        <virtual-link-desc-id>r2fw</virtual-link-desc-id>
        <virtual-link-desc-id>r2fw</virtual-link-desc-id>
        <flavor-id>normal</flavor-id>
        <flavour-id>normal</flavour-id>
        <max-bitrate-requirements>
        <max-bitrate-requirements>
          <root>1000000</root>
          <root>1000000</root>
        </max-bitrate-requirements>
        </max-bitrate-requirements>
@@ -498,7 +512,7 @@
      <id>r2fw</id>
      <id>r2fw</id>
      <connectivity-type>
      <connectivity-type>
        <layer-protocol>
        <layer-protocol>
	  <protocol>IPv4</protocol>
	  <protocol>ipv4</protocol>
	</layer-protocol>
	</layer-protocol>
      </connectivity-type>
      </connectivity-type>
      <df>
      <df>
@@ -514,7 +528,7 @@
      <vnf-profile>
      <vnf-profile>
        <id>router</id>
        <id>router</id>
        <vnfd-id>CSR</vnfd-id>
        <vnfd-id>CSR</vnfd-id>
        <flavor-id>normal</flavor-id>
        <flavour-id>normal</flavour-id>
        <instantiation-level>single</instantiation-level>
        <instantiation-level>single</instantiation-level>
        <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>
@@ -529,7 +543,7 @@
      <virtual-link-profile>
      <virtual-link-profile>
        <id>r2fw</id>
        <id>r2fw</id>
        <virtual-link-desc-id>r2fw</virtual-link-desc-id>
        <virtual-link-desc-id>r2fw</virtual-link-desc-id>
        <flavor-id>r2fw</flavor-id>
        <flavour-id>r2fw</flavour-id>
        <max-bitrate-requirements>
        <max-bitrate-requirements>
          <root>500</root>
          <root>500</root>
        </max-bitrate-requirements>
        </max-bitrate-requirements>
@@ -570,7 +584,7 @@
    <version>1.0</version>
    <version>1.0</version>
    <ext-cpd>
    <ext-cpd>
      <id>outside</id>
      <id>outside</id>
      <layer-protocol>Ethernet</layer-protocol>
      <layer-protocol>ethernet</layer-protocol>
    </ext-cpd>
    </ext-cpd>
  </pnfd>
  </pnfd>
</nfv>
</nfv>
+1 −1
Original line number Original line Diff line number Diff line
@@ -10,7 +10,7 @@ cd src
echo "Testing compilation"
echo "Testing compilation"
CONFD_OPTS="--fail-on-warnings"
CONFD_OPTS="--fail-on-warnings"
CONFD_OPTS=""
CONFD_OPTS=""
confdc -c $CONFD_OPTS -o /opt/confd/etc/confd/etsi-nfv.fxs etsi-nfv.yang
confdc -c $CONFD_OPTS -o /opt/confd/etc/confd/etsi-nfv-descriptors.fxs etsi-nfv-descriptors.yang


echo "Starting ConfD"
echo "Starting ConfD"
confd
confd
+183 −10
Original line number Original line Diff line number Diff line
submodule etsi-nfv-common {
submodule etsi-nfv-common {
  yang-version 1.1;
  yang-version 1.1;
  belongs-to etsi-nfv {
  belongs-to etsi-nfv-descriptors {
    prefix nfv;
    prefix nfv;
  }
  }
  description
  description
@@ -20,22 +20,22 @@ submodule etsi-nfv-common {
   */
   */
  identity layer-protocol {
  identity layer-protocol {
  }
  }
  identity Ethernet {
  identity ethernet {
    base layer-protocol;
    base layer-protocol;
  }
  }
  identity MPLS {
  identity mpls {
    base layer-protocol;
    base layer-protocol;
  }
  }
  identity ODU2 {
  identity odu2 {
    base layer-protocol;
    base layer-protocol;
  }
  }
  identity IPv4 {
  identity ipv4 {
    base layer-protocol;
    base layer-protocol;
  }
  }
  identity IPv6 {
  identity ipv6 {
    base layer-protocol;
    base layer-protocol;
  }
  }
  identity Pseudo-Wire {
  identity pseudo-wire {
    base layer-protocol;
    base layer-protocol;
  }
  }


@@ -177,6 +177,69 @@ submodule etsi-nfv-common {
    base cp-role;
    base cp-role;
  }
  }


  identity checksum-algorithm {
    description
      "Identifies the algorithms supported for the purpose of
       calculating the checksum.";
    reference
      "GS NFV IFA011: Section 7.1.6.10 Checksum information element.";
  }

  identity sha-224 {
    base checksum-algorithm;
    description
      "SHA-224.";
    reference
      "GS NFV IFA011: Section 7.1.6.10 Checksum information element.";
  }

  identity sha-256 {
    base checksum-algorithm;
    description
      "SHA-256.";
    reference
      "GS NFV IFA011: Section 7.1.6.10 Checksum information element.";
  }

  identity sha-384 {
    base checksum-algorithm;
    description
      "SHA-384.";
    reference
      "GS NFV IFA011: Section 7.1.6.10 Checksum information element.";
  }

  identity sha-512 {
    base checksum-algorithm;
    description
      "SHA-512.";
    reference
      "GS NFV IFA011: Section 7.1.6.10 Checksum information element.";
  }

  identity storage-type {
    description
      "Base type of storage that identities can derive from.";
  }

  identity root-storage {
    base storage-type;
    description
      "Root type of storage.";
  }

  identity swap-storage {
    base storage-type;
    description
      "Swap type of storage.";
  }

  identity ephemeral-storage {
    base storage-type;
    description
      "Ephemeral type of storage.";
  }
  
  /*
  /*
   * Typedefs
   * Typedefs
   */
   */
@@ -215,8 +278,8 @@ submodule etsi-nfv-common {
      enum "end-healing";
      enum "end-healing";
      enum "start-termination";
      enum "start-termination";
      enum "end-termination";
      enum "end-termination";
      enum "start-vnf-flavor-change";
      enum "start-vnf-flavour-change";
      enum "end-vnf-flavor-change";
      enum "end-vnf-flavour-change";
      enum "start-vnf-operation-change";
      enum "start-vnf-operation-change";
      enum "end-vnf-operation-change";
      enum "end-vnf-operation-change";
      enum "start-vnf-ext-conn-change";
      enum "start-vnf-ext-conn-change";
@@ -392,7 +455,7 @@ submodule etsi-nfv-common {
    }
    }


    leaf-list layer-protocol {
    leaf-list layer-protocol {
      default Ethernet;
      default ethernet;
      type identityref {
      type identityref {
        base layer-protocol;
        base layer-protocol;
      }
      }
@@ -571,5 +634,115 @@ submodule etsi-nfv-common {
      reference
      reference
        "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
        "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
    }
    }

    leaf security-group-rule-id {
      type leafref {
        path "/nfv/vnfd/security-group-rule/id";
      }
      description
        "Reference of the security group rules bound to this
         CPD.";
      reference
        "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
    }
  }

  grouping security-group-rule {
    list security-group-rule {
      key "id";

      leaf id {
        type string;
        description
          "Identifier of this SecurityGroupRule information
           element.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      leaf description {
        type string;
        description
          "Human readable description of the security group rule.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      leaf direction {
        type enumeration {
          enum ingress;
          enum egress;
        }
        default "ingress";
        description
          "The direction in which the security group rule is applied.
           Permitted values: INGRESS, EGRESS. Defaults to INGRESS.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      leaf ether-type {
        type enumeration {
          enum ipv4;
          enum ipv6;
        }
        default "ipv4";
        description
          "Indicates the protocol carried over the Ethernet layer.
           Permitted values: IPV4, IPV6. Defaults to IPV4.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      leaf protocol {
        type enumeration {
          enum tcp;
          enum udp;
          enum icmp;
        }
        default "tcp";
        description
          "Indicates the protocol carried over the IP layer.
           Permitted values: any protocol defined in the IANA
           protocol registry, e.g. TCP, UDP, ICMP, etc. Defaults
           to TCP.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      leaf port-range-min {
        must ". <= ../port-range-max";
        type uint16;
        default "0";
        description
          "Indicates minimum port number in the range that is
           matched by the security group rule. Defaults to 0.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      leaf port-range-max {
        must ". >= ../port-range-min";
        type uint16;
        default "65535";
        description
          "Indicates maximum port number in the range that is
           matched by the security group rule. Defaults to 65535.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      description
        "Defines security group rules to be used by the VNF.";
      reference
        "GS NFV IFA011: Section 7.1.2, VNFD information element.";
    }
  }
  }
}
}
+2 −2
Original line number Original line Diff line number Diff line
module etsi-nfv {
module etsi-nfv-descriptors {
  yang-version 1.1;
  yang-version 1.1;
  namespace "urn:etsi:params:xml:ns:yang:etsi-nfv";
  namespace "urn:etsi:nfv:yang:etsi-nfv-descriptors";
  prefix nfv;
  prefix nfv;


  include etsi-nfv-common;
  include etsi-nfv-common;
Loading