Commit 5a61062e authored by jethanandani's avatar jethanandani
Browse files

Revert "Merge branch 'bug#94' into 'master'"

This reverts merge request !10
parent 41533b76
Loading
Loading
Loading
Loading
Loading
+11 −37
Original line number Diff line number Diff line
@@ -11,14 +11,17 @@
      <name>Firewall VDU</name>
      <int-cpd>
        <id>inside</id>
        <ext-cpd>inside</ext-cpd>
        <layer-protocol>Ethernet</layer-protocol>
      </int-cpd>
      <int-cpd>
        <id>management</id>
        <ext-cpd>management</ext-cpd>
        <layer-protocol>Ethernet</layer-protocol>
      </int-cpd>
      <int-cpd>
        <id>outside</id>
        <ext-cpd>outside</ext-cpd>
        <layer-protocol>Ethernet</layer-protocol>
      </int-cpd>
      <virtual-compute-desc>asa-vcd</virtual-compute-desc>
@@ -48,26 +51,14 @@
    </sw-image-desc>
    <ext-cpd>
      <id>inside</id>
      <int-cpd>
	<vdu-id>firewall</vdu-id>
	<cpd>inside</cpd>
      </int-cpd>
      <layer-protocol>Ethernet</layer-protocol>
    </ext-cpd>
    <ext-cpd>
      <id>management</id>
      <int-cpd>
	<vdu-id>firewall</vdu-id>
	<cpd>management</cpd>
      </int-cpd>
      <layer-protocol>Ethernet</layer-protocol>
    </ext-cpd>
    <ext-cpd>
      <id>outside</id>
      <int-cpd>
	<vdu-id>firewall</vdu-id>
	<cpd>outside</cpd>
      </int-cpd>
      <layer-protocol>Ethernet</layer-protocol>
    </ext-cpd>
    <df>
@@ -106,14 +97,17 @@
      <name>Router VDU</name>
      <int-cpd>
        <id>left</id>
        <ext-cpd>left</ext-cpd>
        <layer-protocol>Ethernet</layer-protocol>
      </int-cpd>
      <int-cpd>
        <id>management</id>
        <ext-cpd>management</ext-cpd>
        <layer-protocol>Ethernet</layer-protocol>
      </int-cpd>
      <int-cpd>
        <id>right</id>
        <ext-cpd>right</ext-cpd>
        <layer-protocol>Ethernet</layer-protocol>
      </int-cpd>
      <virtual-compute-desc>csr-vcd</virtual-compute-desc>
@@ -143,26 +137,14 @@
    </sw-image-desc>
    <ext-cpd>
      <id>left</id>
      <int-cpd>
	<vdu-id>router</vdu-id>
	<cpd>left</cpd>
      </int-cpd>
      <layer-protocol>Ethernet</layer-protocol>
    </ext-cpd>
    <ext-cpd>
      <id>management</id>
      <int-cpd>
	<vdu-id>router</vdu-id>
	<cpd>management</cpd>
      </int-cpd>
      <layer-protocol>Ethernet</layer-protocol>
    </ext-cpd>
    <ext-cpd>
      <id>right</id>
      <int-cpd>
	<vdu-id>router</vdu-id>
	<cpd>right</cpd>
      </int-cpd>
      <layer-protocol>Ethernet</layer-protocol>
    </ext-cpd>
    <df>
@@ -243,9 +225,7 @@
      <id>fw2dpi</id>
      <version>1.0</version>
      <connectivity-type>
        <layer-protocol>
	  <protocol>Ethernet</protocol>
	</layer-protocol>
        <layer-protocol>Ethernet</layer-protocol>
      </connectivity-type>
      <df>
        <id>normal</id>
@@ -259,9 +239,7 @@
      <id>mgmt</id>
      <version>1.0</version>
      <connectivity-type>
        <layer-protocol>
	  <protocol>IPv4</protocol>
	</layer-protocol>
        <layer-protocol>IPv4</layer-protocol>
      </connectivity-type>
      <df>
        <id>normal</id>
@@ -275,9 +253,7 @@
      <id>r2fw</id>
      <version>1.0</version>
      <connectivity-type>
        <layer-protocol>
	  <protocol>Ethernet</protocol>
	</layer-protocol>
        <layer-protocol>Ethernet</layer-protocol>
      </connectivity-type>
      <df>
        <id>normal</id>
@@ -471,9 +447,7 @@
      <id>r2fw</id>
      <version>1.0</version>
      <connectivity-type>
        <layer-protocol>
	  <protocol>IPv4</protocol>
	</layer-protocol>
        <layer-protocol>IPv4</layer-protocol>
      </connectivity-type>
      <df>
        <id>r2fw</id>
+28 −271
Original line number Diff line number Diff line
@@ -6,13 +6,13 @@ submodule etsi-nfv-common {
  description
    "Common data types for ETSI data models.";

  revision 2019-03-18 {
  revision 2018-06-19 {
    description
      "Initial revision

       Common data structures to support VNFD and NSD according to:
       ETSI GS NFV-IFA 014 Ed261v252
       ETSI GS NFV-IFA 011 Ed261v254";
       ETSI GS NFV-IFA 014 Ed251v244
       ETSI GS NFV-IFA 011 Ed251v243";
  }

  /*
@@ -253,20 +253,14 @@ submodule etsi-nfv-common {

  grouping connectivity-type {
    container connectivity-type {
      list layer-protocol {
	key "protocol";

	leaf protocol {
      leaf layer-protocol {
        mandatory true;
        type identityref {
          base layer-protocol;
        }
	}
        description
          "Identifies the protocols that the VL uses (Ethernet,
           MPLS, ODU2, IPV4, IPV6, Pseudo-Wire). The top layer
           protocol of the VL protocol stack shall always be provided.
           The lower layer protocols may be included when there are
           specific requirements on these layers.";
          "Identifies the protocol this VL gives access to (Ethernet,
           MPLS, ODU2, IPV4, IPV6, Pseudo-Wire).";
        reference
          "GS NFV IFA011: Section 7.1.7.3, ConnectivityType
           information element.";
@@ -376,23 +370,30 @@ submodule etsi-nfv-common {
    }
  }

  // The following grouping is Cpd information element as defined in
  // IFA014. IFA011 defines its own Cpd information element, which
  // is defined in etsi-nfv-vnf.yang file. Do not use this grouping
  // for inclusion in a Vnf.
  grouping cpd {
    description
      "A Cpd information element describes network
       connectivity to a compute resource or a VL.";
      "The Cpd information element specifies the characteristics of
       connection points attached to NFs and NSs. This is an
       abstract class used as parent for the various Cpd classes.
       It has an attribute 'trunkMode' which enables the NFVO to
       identify whether the Cp instantiated from the Cpd is in trunk
       mode or not.";
    reference
      "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
      "GS NFC IFA014: Section 6.6.3.1 Cpd information element";

    leaf id {
      type string;
      description
        "Identifier of this Cpd information element.";
      reference
        "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
        "GS NFC IFA014: Section 6.6.3.1 Cpd information element";
    }

    leaf-list layer-protocol {
      default Ethernet;
    leaf layer-protocol {
      mandatory true;
      type identityref {
        base layer-protocol;
      }
@@ -401,9 +402,8 @@ submodule etsi-nfv-common {
         corresponding to the CPD support for connectivity purposes
         (e.g. Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire, etc.).";
      reference
        "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
        "GS NFC IFA014: Section 6.6.3.1 Cpd information element";
    }

    leaf role {
      type identityref {
        base cp-role;
@@ -415,9 +415,8 @@ submodule etsi-nfv-common {
         a tree flow pattern within the NS will have legal cpRoles
         of ROOT and LEAF.";
      reference
        "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
        "GS NFC IFA014: Section 6.6.3.1 Cpd information element";
    }

    leaf description {
      type string;
      description
@@ -425,140 +424,8 @@ submodule etsi-nfv-common {
         connection point (e.g. connection point for control plane
         traffic).";
      reference
        "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
    }

    list protocol {
      key "associated-layer-protocol";

      leaf associated-layer-protocol {
        type identityref {
          base layer-protocol;
        }
        description
          "One of the values of the attribute layerProtocol of the Cpd
           IE.";
        reference
          "GS NFV IFA011: Section 7.1.6.8 CpProtocolData information
           element";
      }

      list address-data {
        key "type";

        leaf type {
          type identityref {
            base address-type;
          }
          description
            "Describes the type of the address to be assigned to the
             CP instantiated from the parent CPD.
             Value:
               • MAC address.
               • IP address.
               • Etc.
             The content type shall be aligned with the address type
             supported by the layerProtocol attribute of the parent
             CPD.";
          reference
            "GS NFV IFA011: Section 7.1.3.3 AddressData information
             element";
        }

        container l2-address-data {
          when "../type='mac-address'";
          leaf mac-address-assignment {
            type boolean;
            default true;
            description
              "Specify if the MAC address assignment is the
               responsibility of management and orchestration function
               or not. If it is set to True, it is the management and
               orchestration function responsibility. If it is set to
               False, it will be provided by an external entity,
               e.g. OSS/BSS.";
            reference
              "GS NFV IFA011: Section 7.1.3.5 L2AddressData
               information element";
          }

          description
            "Provides the information on the MAC addresses to be
             assigned to the CP(s) instantiated from the parent CPD.
             Shall be present when the addressType is MAC address.";
          reference
            "GS NFV IFA011: Section 7.1.3.3 AddressData information
             element";
        }

        container l3-address-data {
          when "../type='ip-address'";
          leaf ip-address-assignment {
            type boolean;
            default "true";
            description
              "Specify if the address assignment is the responsibility
               of management and orchestration function or not. If it
               is set to True, it is the management and orchestration
               function responsibility. ";
            reference
              "GS NFV IFA011: Section 7.1.3.4, L3AddressData
               information element.";
          }

          leaf floating-ip-activated {
            type boolean;
            default "true";
            description
              "Specify if the floating IP scheme is activated on the CP
               or not.";
            reference
              "GS NFV IFA011: Section 7.1.3.4, L3AddressData
               information element.";
          }

          leaf ip-address-type {
            type enumeration {
              enum "ipv4";
              enum "ipv6";
            }
            description
              "Define address type. The address type should be aligned
               with the address type supported by the layerProtocol
               attribute of the parent VnfExtCpd.";
            reference
              "GS NFV IFA011: Section 7.1.3.4, L3AddressData
               information element.";
          }

          leaf number-of-ip-addresses {
            type uint32;
            description
              "Minimum number of IP addresses to be assigned based on
               this L3AddressData information element.";
            reference
              "GS NFV IFA011: Section 7.1.3.4, L3AddressData
               information element.";
          }
        }
        description
          "Provides information on the addresses to be assigned to the
           CP(s) instantiated from the CPD.";
        reference
          "GS NFV IFA011: Section 7.1.6.8 CpProtocolData information
           element";
        "GS NFC IFA014: Section 6.6.3.1 Cpd information element";
    }
      description
        "Identifies the protocol layering information the CP uses for
         connectivity purposes and associated information. There shall
         be one cpProtocol for each layer protocol as indicated by the
         attribute layerProtocol. When a PnfExtCpd as defined in ETSI
         GS NFV-IFA 014 [i.8] is inherited from this Cpd, the
         cardinality is set to 0.";
      reference
        "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
    }

    leaf trunk-mode {
      type boolean;
      description
@@ -569,117 +436,7 @@ submodule etsi-nfv-common {
         is not configured for the Cp i.e. It is equivalent to
         Boolean value 'false'.";
      reference
        "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.";
        "GS NFC IFA014: Section 6.6.3.1 Cpd information element";
    }
  }
}
+25 −23
Original line number Diff line number Diff line
@@ -4,21 +4,24 @@ submodule etsi-nfv-ns {
    prefix nfv;
  }

  include etsi-nfv-common;
  import etsi-nfv-common {
    prefix common;
  }

  include etsi-nfv-vnf;
  include etsi-nfv-pnf;

  description
    "Models for NS according to ETSI GS NFV-IFA 014.";

  revision 2019-03-18 {
  revision 2017-01-20 {
    description
      "Initial revision
       Common data structure to support NSD according to:
       ETSI GS NFV-IFA 014 Ed261v252";
       ETSI GS NFV-IFA 011 Ed251v243";

    reference
      "ETSI GS NFV-IFA 014 Ed261v252";
      "ETSI GS NFV-IFA 011 Ed251v243";
  }

  grouping resource-handle {
@@ -130,7 +133,7 @@ submodule etsi-nfv-ns {
          description
            "Identifier of this Cpd information element.";
          reference
            "GS NFV IFA014: Section 6.6.3.1 Cpd information element";
            "GS NFC IFA014: Section 6.6.3.1 Cpd information element";
        }

        leaf address-assignment {
@@ -245,7 +248,7 @@ submodule etsi-nfv-ns {
             information element";
        }

        uses connectivity-type;
        uses common:connectivity-type;

        list df {
          key "id";
@@ -269,7 +272,6 @@ submodule etsi-nfv-ns {
          }

          container qos {
	    presence "VL QoS parameters";
            description
              "The QoS information element specifies quality of
               service parameters applicable to a VL.";
@@ -362,7 +364,7 @@ submodule etsi-nfv-ns {
            "GS NFV IFA014: Section 6.5.2.2 NsVirtualLinkDesc
             information element";
        }
        uses security-parameters;
        uses common:security-parameters;
      }

      list vnffgd {
@@ -483,7 +485,7 @@ submodule etsi-nfv-ns {
            }
            container ns {
              leaf nsd-id {
                must ". = deref(../../nested-ns-profile-id)/../nsd-id" {
                must ". = deref(../../ns-profile-id)/../nsd-id" {
                }

                type leafref {
@@ -743,7 +745,7 @@ submodule etsi-nfv-ns {
          }

          leaf min-number-of-instances {
            default 1;
            mandatory true;
            type uint16;
            description
              "Minimum number of instances of the VNF based on this
@@ -754,7 +756,7 @@ submodule etsi-nfv-ns {
          }

          leaf max-number-of-instances {
            default 1;
            mandatory true;
            type uint16;
            description
              "Maximum number of instances of the VNF based on this
@@ -764,7 +766,7 @@ submodule etsi-nfv-ns {
               element";
          }

          uses local-affinity-or-anti-affinity-rule;
          uses common:local-affinity-or-anti-affinity-rule;

          list affinity-or-anti-affinity-group {
            key "id";
@@ -930,7 +932,7 @@ submodule etsi-nfv-ns {
               information element";
          }

          uses local-affinity-or-anti-affinity-rule;
          uses common:local-affinity-or-anti-affinity-rule;

          list affinity-or-anti-affinity-group {
            key "id";
@@ -957,7 +959,7 @@ submodule etsi-nfv-ns {
            reference
              "GS NFV IFA014: Section 6.3.4.2 VirtualLinkProfile
               information element";
            uses link-bitrate-requirements;
            uses common:link-bitrate-requirements;
          }
          container min-bitrate-requirements {
            description
@@ -966,7 +968,7 @@ submodule etsi-nfv-ns {
            reference
              "GS NFV IFA014: Section 6.3.4.2 VirtualLinkProfile
               information element";
            uses link-bitrate-requirements;
            uses common:link-bitrate-requirements;
          }
        }

@@ -1046,7 +1048,7 @@ submodule etsi-nfv-ns {

          leaf affinity-type {
            mandatory true;
            type affinity-type;
            type common:affinity-type;
            description
              "Specifies the type of relationship that the members of
               the group have: 'affinity' or 'anti-affinity.'";
@@ -1057,7 +1059,7 @@ submodule etsi-nfv-ns {

          leaf affinity-scope {
            mandatory true;
            type affinity-scope;
            type common:affinity-scope;
            description
              "Specifies the scope of the affinity or anti-affinity
               relationship e.g. a NFVI node, an NFVI PoP, etc.";
@@ -1121,7 +1123,7 @@ submodule etsi-nfv-ns {
            }

            leaf number-of-instances {
              default 1;
              mandatory true;
              type uint32;
              description
                "Specifies the number of VNF instances required for
@@ -1154,7 +1156,7 @@ submodule etsi-nfv-ns {
                 VirtualLinkToLevelMapping information element";
            }

            uses link-bitrate-requirements;
            uses common:link-bitrate-requirements;
          }

          list ns-to-level-mapping {
@@ -1181,7 +1183,7 @@ submodule etsi-nfv-ns {
            }

            leaf number-of-instances {
              default 1;
              mandatory true;
              type uint32;
              description
                "Specifies the number of nested NS instances required
@@ -1287,7 +1289,7 @@ submodule etsi-nfv-ns {
          }
          leaf min-number-of-instances {
            type uint16;
            default 1;
            mandatory true;
            description
              "Minimum number of nested NS instances based on the
               referenced NSD that is permitted to exist for this
@@ -1298,7 +1300,7 @@ submodule etsi-nfv-ns {
          }
          leaf max-number-of-instances {
            type uint16;
            default 1;
            mandatory true;
            description
              "Maximum number of nested NS instances based on the
               referenced NSD that is permitted to exist for this
@@ -1482,7 +1484,7 @@ submodule etsi-nfv-ns {
          }
	}
      }
      uses security-parameters;
      uses common:security-parameters;
    }
  }
}
+3 −4
Original line number Diff line number Diff line
@@ -12,15 +12,15 @@ submodule etsi-nfv-pnf {
  description
    "Models for PNFD according to GS NFV-IFA 014.";

  revision 2019-03-18 {
  revision 2018-06-25 {
    description
      "Initial revision.

       Common data structure to support VNFD according to:
       ETSI GS NFV-IFA 014 Ed261v252";
       ETSI GS NFV-IFA 014 Ed251v244";

    reference
      "ETSI GS NFV-IFA 014 Ed261v252";
      "ETSI GS NFV-IFA 014 Ed251v244";
  }

  grouping pnfd {
@@ -111,7 +111,6 @@ submodule etsi-nfv-pnf {
        reference
          "GS NFV-IFA014: Section 6.6.2, Pnfd information element";
      }
      uses security-group-rule;
    }
  }
}
+178 −188

File changed.

Preview size limit exceeded, changes collapsed.

Loading