Commit 94a5779a authored by ramanathan's avatar ramanathan
Browse files

Merge branch 'dev-v3.5.1' into 'issue#34'

# Conflicts:
#   src/yang/etsi-nfv-vnf.yang
parents 6d760e2d f64d644f
Loading
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -19,7 +19,7 @@ docker run "$IMG"
echo "Building HTML tree"
docker run -v"$(pwd)/src/yang/:/yang/" mjethanandani/pyang \
	"/bin/sh" -c "cd /yang/ && pyang -f jstree -p /yang/ \
	/yang/etsi-nfv.yang > etsi-nfv.html"
	/yang/etsi-nfv-descriptors.yang > etsi-nfv.html"

sed -r -i 's|<a href=\"http://www.tail-f.com">|<a href="http://etsi.org">|g' src/yang/etsi-nfv.html
sed -r -i 's|data\:image/gif\;base64,R0lGODlhS.*RCAA7|https://www.etsi.org/images/ETSILogoTwitter.png\" height=\"100|g' src/yang/etsi-nfv.html
+2 −2
Original line number Diff line number Diff line
@@ -240,7 +240,7 @@
      </lcm-operations-configuration>
      <affinity-or-anti-affinity-group>
        <id>control-plane</id>
        <type>anti-affinity</type>
        <affinityorAntiaffinity>anti-affinity</affinityorAntiaffinity>
        <scope>nfvi-node</scope>
      </affinity-or-anti-affinity-group>
    </df>
@@ -328,7 +328,7 @@
      </lcm-operations-configuration>
      <affinity-or-anti-affinity-group>
        <id>control-plane</id>
        <type>anti-affinity</type>
        <affinityorAntiaffinity>anti-affinity</affinityorAntiaffinity>
        <scope>nfvi-node</scope>
      </affinity-or-anti-affinity-group>
    </df>
+66 −23
Original line number Diff line number Diff line
@@ -482,8 +482,11 @@ submodule etsi-nfv-common {
          "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.";
           most preferred type.
           Values:
             • NO_MIGRATION
             • OFFLINE_MIGRATION
             • LIVE_MIGRATION.";
        reference
          "GS NFV-IFA011: Section 7.1.8.17, NfviMaintenanceInfo
           information element";
@@ -565,11 +568,15 @@ submodule etsi-nfv-common {
        }
	min-elements 1;
        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.";
          "Specifies the protocols that the VL uses
           Values:
             • Ethernet
             • MPLS
             • ODU2
             • IPV4
             • IPV6
             • Pseudo-Wire
             • etc.";
        reference
          "GS NFV IFA011: Section 7.1.7.3, ConnectivityType
           information element.";
@@ -578,7 +585,7 @@ submodule etsi-nfv-common {
      leaf flow-pattern {
        type flow-pattern;
        description
          "Identifies the flow pattern of the connectivity (Line,
          "Specifies the flow pattern of the connectivity (Line,
           Tree, Mesh).";
        reference
          "GS NFV IFA011: Section 7.1.7.3, ConnectivityType
@@ -700,9 +707,15 @@ submodule etsi-nfv-common {
        base layer-protocol;
      }
      description
        "Identifies a protocol that the connection points
         corresponding to the CPD support for connectivity purposes
         (e.g. Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire, etc.).";
        "Specifies which protocol the CP uses for connectivity purposes
         Values:
           • Ethernet
           • MPLS
           • ODU2
           • IPV4
           • IPV6
           • Pseudo-Wire
           • etc.";
      reference
        "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
    }
@@ -740,7 +753,15 @@ submodule etsi-nfv-common {
        }
        description
          "One of the values of the attribute layerProtocol of the Cpd
           IE.";
           IE.
           Values:
           • Ethernet
           • MPLS
           • ODU2
           • IPV4
           • IPV6
           • Pseudo-Wire
           • etc.";
        reference
          "GS NFV IFA011: Section 7.1.6.8 CpProtocolData information
           element";
@@ -756,10 +777,10 @@ submodule etsi-nfv-common {
          description
            "Describes the type of the address to be assigned to the
             CP instantiated from the parent CPD.
             Value:
               • MAC address.
               • IP address.
Etc.
             Values:
               • MAC address
               • IP address
etc.
             The content type shall be aligned with the address type
             supported by the layerProtocol attribute of the parent
             CPD.";
@@ -826,9 +847,10 @@ submodule etsi-nfv-common {
              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.";
              "Define address type.
               Values:
                 • IPV4
                 • IPV6.";
            reference
              "GS NFV IFA011: Section 7.1.3.4, L3AddressData
               information element.";
@@ -843,6 +865,16 @@ submodule etsi-nfv-common {
              "GS NFV IFA011: Section 7.1.3.4, L3AddressData
               information element.";
          }

          leaf fixed-ip-address {
            type string;
            description
              "IP address to be assigned to the CP instance.";
            reference
              "GS NFV IFA011: Section 7.1.3.4, L3AddressData
               information element.";
          }

        }
        description
          "Provides information on the addresses to be assigned to the
@@ -907,7 +939,10 @@ submodule etsi-nfv-common {
        default "ingress";
        description
          "The direction in which the security group rule is applied.
           Permitted values: INGRESS, EGRESS. Defaults to INGRESS.";
           Values:
             • INGRESS
             • EGRESS
           Defaults to INGRESS.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
@@ -921,7 +956,10 @@ submodule etsi-nfv-common {
        default "ipv4";
        description
          "Indicates the protocol carried over the Ethernet layer.
           Permitted values: IPV4, IPV6. Defaults to IPV4.";
           Values:
             • IPV4
             • IPV6
           Defaults to IPV4.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
@@ -937,8 +975,13 @@ submodule etsi-nfv-common {
        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.";
           protocol registry.
           Values:
             • TCP
             • UDP
             • ICMP
             • etc.
           Defaults to TCP.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
+255 −58
Original line number Diff line number Diff line
@@ -62,8 +62,10 @@ submodule etsi-nfv-ns {
      leaf type {
        type affinity-type;
        description
          "Specifies whether the rule is an affinity rule or an
           anti-affinity rule.";
          "Specifies the rule.
           Values:
             • AFFINITY
             • ANTI_AFFINITY.";
        reference
          "GS NFV IFA014: Section 6.3.8.2,
           LocalAffinityOrAntiAffinityRule information element.";
@@ -72,8 +74,13 @@ submodule etsi-nfv-ns {
      leaf scope {
        type affinity-scope;
        description
          "Specifies the scope of the rule, possible values are
           'NFVI-PoP', 'NFVI-node' network-link-and-node etc.";
          "Specifies the scope of the rule.
           Values:
             • NFVI_POP
             • ZONE
             • ZONE_GROUP
             • NFVI_NODE
             • etc.";
        reference
          "GS NFV IFA014: Section 6.3.8.2,
           LocalAffinityOrAntiAffinityRule information element.";
@@ -173,27 +180,6 @@ submodule etsi-nfv-ns {
        "GS NFV IFA014: Section 6.2.2.2 Network Service Descriptor
         information element";

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

      leaf address-assignment {
        type boolean;
        description
          "Specify whether the SAP address assignment is under the
           responsibility of management and orchestration functions
           or not. If it is set to True, management and
           orchestration functions are responsible for assigning
           addresses to the access points instantiated from this
           SAPD.";
        reference
          "GS NFV IFA014: Section 6.2.3.2 Sapd information element";
      }

      choice cpd-or-virtual-link {
        leaf virtual-link-desc {
          type leafref {
@@ -258,8 +244,22 @@ submodule etsi-nfv-ns {
          }
        }
      }

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

    uses security-group-rule;

    list virtual-link-desc {
      key "id";
      description
@@ -631,7 +631,7 @@ submodule etsi-nfv-ns {
              path "../../../nfp-position-element/id";
            }
            description
              "Reference to one or a pair of CPDs or SAPDs.";
              "References one or a pair of CPDs or SAPDs.";
            reference
              "GS NFV IFA014: Section 6.4.5.2 NfpPositionDesc
               information element";
@@ -642,16 +642,20 @@ submodule etsi-nfv-ns {
              base forwarding-behaviour;
            }
            description
              "Identifies a rule to apply to forward traffic to CP or
               SAP instances corresponding to the referenced CPD(s)
               and SAPD(s). The minimum list of rules to be supported
              "Specifies a rule to apply to forward traffic to CP or
               SAP instances corresponding to the referenced CP
               profiles(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.";
                 selected based on a load-balancing algorithm
               Values:
                 • ALL
                 • LB
                 • etc.";
            reference
              "GS NFV IFA014: Section 6.4.5.2 NfpPositionDesc
               information element";
@@ -758,7 +762,7 @@ submodule etsi-nfv-ns {
        leaf id {
          type string;
          description
            "Identifier of this vnfProfile information element. It
            "Identifier of this VnfProfile information element. It
             uniquely identifies a VnfProfile.";
          reference
            "GS NFV IFA014: Section 6.3.3.2 VnfProfile information
@@ -783,7 +787,7 @@ submodule etsi-nfv-ns {
            path "deref(../vnfd-id)/../nfv:df/nfv:id";
          }
          description
            "Identifies a flavour within the VNFD.";
            "References a flavour within the VNFD.";
          reference
            "GS NFV IFA014: Section 6.3.3.2 VnfProfile information
             element";
@@ -834,8 +838,8 @@ submodule etsi-nfv-ns {
            path "../../affinity-or-anti-affinity-group/id";
          }
          description
            "Identifier(s) of the affinity or anti-affinity
             group(s) the VnfProfile belongs to.";
            "Reference(s) the affinity or anti-affinity group(s)
             the VnfProfile belongs to.";
          reference
            "GS NFV IFA014: Section 6.3.3.2 VnfProfile information
             element";
@@ -1043,7 +1047,7 @@ submodule etsi-nfv-ns {
            path "deref(../virtual-link-desc-id)/../df/id";
          }
          description
            "Identifies a flavour within the VLD.";
            "Refernces a flavour within the VLD.";
          reference
            "GS NFV IFA014: Section 6.3.2.2 VirtualLinkProfile
             information element";
@@ -1056,9 +1060,9 @@ submodule etsi-nfv-ns {
            path "../../affinity-or-anti-affinity-group/id";
          }
          description
            "Identifies an affinity or anti-affinity group the
             VLs instantiated according to the VlProfile belong
             to.";
            "Reference(s) the affinity or anti-affinity group(s)
             the VLs instantiated according to the VlProfile
             belong to.";
          reference
            "GS NFV IFA014: Section 6.3.4.2 VirtualLinkProfile
             information element";
@@ -1082,6 +1086,170 @@ submodule etsi-nfv-ns {
             information element";
          uses link-bitrate-requirements;
        }
        container virtual-link-protocol-data {
          leaf associated-layer-protocol {
            type identityref {
              base layer-protocol;
            }
            description
              "One of the values of the attribute layerProtocol of
               the ConnectivityType IE.
               Values:
                 • Ethernet
                 • MPLS
                 • ODU2
                 • IPV4
                 • IPV6
                 • Pseudo-Wire
                 • etc.";
            reference
              "GS NFV IFA014: Section 6.3.13.2,
               VirtualLinkProtocolData information element.";
          }

          container l2-protocol-data {
            when "(../associated-layer-protocol = 'Ethernet') or " +
                 "(../associated-layer-protocol = 'MPLS') or " +
                 "(../associated-layer-protocol = 'ODU2') or " +
                 "(../associated-layer-protocol = 'Pseudo-Wire')";

            leaf name {
              type string;
              description
                "Network name associated with this L2 protocol.";
              reference
                "GS NFV IFA014: Section 6.3.14.2,
                 L2ProtocolData information element.";
            }

            leaf network-type {
              type enumeration {
                enum flat;
                enum vlan;
                enum vxlan;
                enum gre;
              }
              description
                "Specifies the network type for this L2 protocol.
                 Values:
                   • FLAT
                   • VLAN
                   • VXLAN
                   • GRE.";
              reference
                "GS NFV IFA014: Section 6.3.14.2,
                 L2ProtocolData information element.";
            }

            leaf vlan-transparent {
              type boolean;
              description
                "Specifies whether to support VLAN transparency for
                 this L2 protocol or not.";
              reference
                "GS NFV IFA014: Section 6.3.14.2,
                 L2ProtocolData information element.";
            }

            leaf mtu {
              type uint16;
              description
                "Specifies the maximum transmission unit (MTU) value
                 for this L2 protocol.";
              reference
                "GS NFV IFA014: Section 6.3.14.2,
                 L2ProtocolData information element.";
            }

            leaf segmentation-id {
              type string;
              description
                "If present, specifies a specific virtualised network
                 segment, which depends on the network type. For e.g.,
                 VLAN ID for VLAN network type and tunnel ID for
                 GRE/VXLAN network types.";
              reference
                "GS NFV IFA014: Section 6.3.14.2,
                 L2ProtocolData information element.";
            }

            description
              "Specifies the L2 protocol data for this virtual link.
               Shall be present when the associatedLayerProtocol
               attribute indicates a L2 protocol and shall be absent
               otherwise.";
            reference
              "GS NFV IFA014: Section 6.3.13.2,
               VirtualLinkProtocolData information element.";
          }

          container l3-protocol-data {
            when "(../associated-layer-protocol = 'IPv4') or " +
                 "(../associated-layer-protocol = 'IPv6')";

            leaf name {
              type string;
              description
                "Network name associated with this L3 protocol.";
              reference
                "GS NFV IFA014: Section 6.3.15.2,
                 L3ProtocolData information element.";
            }

            leaf ip-version {
              type enumeration {
                enum ipv4;
                enum ipv6;
              }
              default "ipv4";
              description
                "Specifies IP version of this L3 protocol.
                 Values:
                 • IPV4.
                 • IPV6.";
              reference
                "GS NFV IFA014: Section 6.3.15.2,
                 L3ProtocolData information element.";
            }

            leaf cidr {
              type string;
              description
                "Specifies the CIDR (Classless InterDomain Routing)
                 of this L3 protocol.
                 The network address and subnet mask in
                 cidr format.";
              reference
                "GS NFV IFA014: Section 6.3.15.2,
                 L3ProtocolData information element.";
            }

            leaf-list ip-allocation-pools {
              type string;
              description
                "Specifies the allocation pools with start and end
                 IP addresses for this L3 protocol.";
              reference
                "GS NFV IFA014: Section 6.3.15.2,
                 L3ProtocolData information element.";
            }
            description
              "Specifies the L3 protocol data for this virtual link.
               Shall be present when the associatedLayerProtocol
               attribute indicates a L3 protocol and shall be absent
               otherwise.";
            reference
              "GS NFV IFA014: Section 6.3.13.2,
               VirtualLinkProtocolData information element.";
          }
          description
            "Specifies the protocol data for a VL instantiated
             according to this profile. Cardinality 0 is used when
             no protocol data needs to be specified.";
          reference
            "GS NFV IFA014: Section 6.3.4.2 VirtualLinkProfile
             information element";
        }
      }

      list scaling-aspect {
@@ -1151,19 +1319,22 @@ submodule etsi-nfv-ns {
        leaf id {
          type string;
          description
            "Identifier of Identifier of this
             AffinityOrAntiAffinityGroup information element.";
            "Identifier of this AffinityOrAntiAffinityGroup
             information element.";
          reference
            "GS NFV IFA014: Section 6.3.5.2 AffinityOrAntiAffinity
             information element";
        }

        leaf type {
        leaf affinityorAntiaffinity {
          mandatory true;
          type affinity-type;
          description
            "Specifies the type of relationship that the members of
             the group have: 'affinity' or 'anti-affinity.'";
             the group have.
             Values:
                • AFFINITY
                • ANTI-AFFINITY";
          reference
            "GS NFV IFA014: Section 6.3.5.2 AffinityOrAntiAffinity
             information element";
@@ -1174,8 +1345,12 @@ submodule etsi-nfv-ns {
          type affinity-scope;
          description
            "Specifies the scope of the affinity or anti-affinity
             relationship e.g. a NFVI node, an NFVI PoP,
             network-link-and-node etc.";
             relationship.
             Values:
                • NFVI_NODE
                • NFVI_POP
                • NETWORK_LINK_AND_NODE
                • etc.";
          reference
            "GS NFV IFA014: Section 6.3.5.2 AffinityOrAntiAffinity
             information element";
@@ -1228,7 +1403,7 @@ submodule etsi-nfv-ns {
              path "../../../vnf-profile/id";
            }
            description
              "Identifies the profile to be used for a VNF
              "References the profile to be used for a VNF
               involved in an NS level.";
            reference
              "GS NFV IFA014: Section 6.7.4.2 VnfToLevelMapping
@@ -1262,7 +1437,7 @@ submodule etsi-nfv-ns {
              path "../../../virtual-link-profile/id";
            }
            description
              "Identifies the profile to be used for a VL involved
              "References the profile to be used for a VL involved
               in an NS level.";
            reference
              "GS NFV IFA014: Section 6.7.5.2
@@ -1288,7 +1463,7 @@ submodule etsi-nfv-ns {
              path "../../../ns-profile/id";
            }
            description
              "Identifies the profile to be used for a nested NS
              "References the profile to be used for a nested NS
               involved in the NS level.";
            reference
              "GS NFV IFA014: Section 6.7.6.2 NsToLevel information
@@ -1330,7 +1505,7 @@ submodule etsi-nfv-ns {
          path "../ns-instantiation-level/id";
        }
        description
          "Identifies the NS level which represents the default NS
          "References the NS level which represents the default NS
           instantiation level for this DF. It shall be present if
           there are multiple 'nsIinstantiationLevel' entries.";
        reference
@@ -1417,7 +1592,7 @@ submodule etsi-nfv-ns {
        key "id";

        description
          "Specifies a NS Profile supported by this NS DF.";
          "Specifies nested NS Profile to be used for this NS DF.";
        reference
          "GS NFV IFA014: Section 6.3.2.2 NsDf information element";

@@ -1436,7 +1611,7 @@ submodule etsi-nfv-ns {
            path "../../../../nsd/id";
          }
          description
            "Identifies the NSD applicable to NS instantiated
            "References the NSD applicable to NS instantiated
             according to this profile.";
          reference
            "GS NFV IFA014: Section 6.3.11.2 NsProfile information
@@ -1449,7 +1624,7 @@ submodule etsi-nfv-ns {
            path "deref(../nsd-id)/../df/id";
          }
          description
            "Identifies the applicable network service DF within
            "References the applicable network service DF within
             the scope of the NSD.";
          reference
            "GS NFV IFA014: Section 6.3.11.2 NsProfile information
@@ -1462,7 +1637,7 @@ submodule etsi-nfv-ns {
            path "deref(../ns-df-id)/../ns-instantiation-level/id";
          }
          description
            "Identifies the NS level within the referenced NS DF to
            "References the NS level within the referenced NS DF to
             be used in the context of the parent NS instantiation.
             If not present, the default NS instantiation level as
             declared in the referenced NSD shall be used.";
@@ -1500,8 +1675,8 @@ submodule etsi-nfv-ns {
            path "../../affinity-or-anti-affinity-group/id";
          }
          description
            "Identifies an affinity or anti-affinity group the NSs
             created according to this NsProfile belongs to.";
            "Reference(s) the affinity or anti-affinity group(s) the
             NSs created according to this NsProfile belongs to.";
          reference
            "GS NFV IFA014: Section 6.3.11.2 NsProfile information
             element";
@@ -1585,7 +1760,10 @@ submodule etsi-nfv-ns {
            }
          }
          description
            "References a VnfProfile or NsProfile.";
            "References a VnfProfile or NsProfile for
             describing dependencies between VNF and/or
             nested NS instances in terms of primary
             entities.";
          reference
            "GS NFV IFA014: Section 6.3.12.2 Dependencies
             information element";
@@ -1603,7 +1781,10 @@ submodule etsi-nfv-ns {
            }
          }
          description
            "References a VnfProfile or NsProfile.";
            "References a VnfProfile or NsProfile for
             describing dependencies between VNF and/or
             nested NS instances in terms of secondary
             entities.";
          reference
            "GS NFV IFA014: Section 6.3.12.2 Dependencies
             information element";
@@ -1623,7 +1804,7 @@ submodule etsi-nfv-ns {
              path "/nfv:nfv/nfv:vnfd/nfv:id";
            }
            description
              "Identifies a VNFD.";
              "References a VNFD.";
            reference
              "GS NFV IFA014: Section 6.2.7.2 VnfIndicatorData
               information element";
@@ -1635,7 +1816,7 @@ submodule etsi-nfv-ns {
              path "deref(../vnfd-id)/../nfv:indicator/nfv:id";
            }
            description
              "Identifies a VNF indicator within the VNFD.";
              "References a VNF indicator within the VNFD.";
            reference
              "GS NFV IFA014: Section 6.2.7.2 VnfIndicatorData
               information element";
@@ -1694,6 +1875,22 @@ submodule etsi-nfv-ns {
        }
      }

      leaf priority {
        type uint32;
        description
          "Specifies the priority for the NS instance.

           The allowed range will be reasonably high. The 'zero'
           value will express the highest priority and the fact
           that the NS instance based on this DF cannot be
           pre-empted during resource allocation.

           Examples for the usage of priority include conflict
           resolution in case of resource shortage.";
        reference
          "GS NFV IFA014: Section 6.3.2.2 NsDf information element";
      }

      leaf service-availability-level {
        type uint32;
        description
+361 −95

File changed.

Preview size limit exceeded, changes collapsed.