The SecurityParameters contains the signature of a NSD, VLD, PNFD or VNFFGD instance together with information required to validate the signature.
Provides the signature of the signed part of the descriptor.
Identifies the algorithm used to compute the signature.
Provides a certificate or a reference to a certificate to validate the signature.
NOTE: Cardinality of 0 corresponds to the case where the certificate is provided by means outside the NSD
This primitive type defines the version of an element.
type string {
pattern
'[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'; }
A Universally Unique IDentifier in the string representation defined in RFC 4122. The canonical representation uses lowercase characters.
The following is an example of a UUID in string representation: f81d4fae-7dec-11d0-a765-00a0c91e6bf6 ";
reference
"RFC 4122: A Universally Unique IDentifier (UUID) URN Namespace"
type string;
The uri type represents a Uniform Resource Identifier (URI) as defined by STD 66.
Objects using the uri type MUST be in US-ASCII encoding, and MUST be normalized as described by RFC 3986 Sections 6.2.1, 6.2.2.1, and 6.2.2.2. All unnecessary percent-encoding is removed, and all case-insensitive characters are set to lowercase except for hexadecimal digits, which are normalized to uppercase as described in Section 6.2.2.1.
The purpose of this normalization is to help provide unique URIs. Note that this normalization is not sufficient to provide uniqueness. Two URIs that are textually distinct after this normalization may still be equivalent.
Objects using the uri type may restrict the schemes that they permit. For example, 'data:' and 'urn:' schemes might not be appropriate.
A zero-length URI is not a valid URI. This can be used to express 'URI absent' where required.
In the value set and its semantics, this type is equivalent to the Uri SMIv2 textual convention defined in RFC 5017.
reference
"RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
RFC 3305: Report from the Joint W3C/IETF URI Planning Interest Group: Uniform Resource Identifiers (URIs), URLs, and Uniform Resource Names (URNs): Clarifications and Recommendations
RFC 5017: MIB Textual Conventions for Uniform Resource Identifiers (URIs)"
Primitive type describing a rule.
This primitive type is a superset of the standard UML numbering primitives, e.g. Integer and Real.
priority - processing priority.
object - objects are model elements that represent instances of a class or of classes
key - the key datatype is a tuple which provides the name of a key along with its value and relative order.
keyName - Name of the key.
keyOrder - Relative sequence or order of the key (with respect to other keys).
keyValue - Value of the key.
Specifies the type of rule.
Defines the scope of the rule.
A base / value business entity used to represent a period of time, between two timepoints
An instant of time, starting at the TimePeriod
Notes:
If null, then represents to the beginning of time
An instant of time, ending at the TimePeriod:
Notes:
If null, then represents to the end of time
DateTime - RFC 2822 standard date/time format.
RFC 2822 format
day-of-week, dd MM yyyy HH’:’mm’:’ss ‘GMT’
e.g. Tue, 21 Jun 2016 14:05:20 GMT
the latest unix time aka epoch time associated with the event from any component--as microseconds elapsed since 1 Jan 1970 not including leap seconds
A primitive Type
Legend
Blue - Review Complete
Green - Ready for Review
White - Not Ready for Review
configurableProperties is a datatype
Does NF have a direct asociation to elementgroups, or would that be through a df?
Onboarding??
Onboarding
Abstract
Concrete
Design Time
Runtime
Attributes in Pink are adds (not in IFA 01
Common part of the various VLDs.
Uniquely identifies a VLD in the parent descriptor.
For VnfVirtualLinkDesc, the parent descriptor is the VNFD.
For NsVirtualLinkDesc, the parent descriptor is the NSD.
Note: the description of this class are different in ETSI GS NFV IFA 011 and ETSI GS NFV IFA 014. The present definition merges the 2 definitions.
Specifies the protocol exposed by a VL and the flow pattern supported by the VL.
Provides human-readable information on the purpose of the VL (e.g. control plane traffic).
A set of connection points along with the connectivity relationship between them and any associated target performance metrics (e.g. bandwidth, latency, QoS). NOTE: The Virtual Link can interconnect two or more entities (VNF components, VNFs, or PNFs) and it is supported by a Virtual Network (VN) of the NFVI.
Link ports of this VL.
Identifier of the virtual link instance.
An intelligent or human readable name of the virtual link instance.
Additional intelligent or human readable name of the virtual link instance.
Generic description of the type of Virtual Link
Role in the network this virtual link will be providing
English description of the function this specific virtual link will be providing
virtual link assigned (actual) bandwidth
provisioning status, used as a trigger for operational monitoring of this resource by service assurance systems valid value example: PROVISIONED, PREPROVISIONED, CAPPED
Administrative status of the virtual link
Specifies the minimum bitrate requirements for the virtual link
Specifies the maximum bitrate requirements for the virtual link
Indicates whether DHCP is enabled
Indicates whether VLAn transparent mode is supported
Indicates whether Trunk Mode is enabled
Outer vlan tag
Inner vlan tag
Identified the layerProtocol and flowPattern used by the virtual link
Represents the port of the link.
CP to be connected to this link port.
Parent for all connection point classes.
Identifier of the connection point instance.
Name of the Cp instance.
alternative name of the Cp instance.
Generic description of the type of Cp
Role in the network this Cp will be providing
English description of the function this specific Cp will be providing
Cp description
Cp (max? assigned?) bandwidth
Cp assigned (actual) bandwidth
provisioning status, used as a trigger for operational monitoring of this resource by service assurance systems valid value example: PROVISIONED, PREPROVISIONED, CAPPED
Administrative status of the connection point.
Protocol used by the Cp
Indicator whether the Cp is in trunk mode
Type of address: MAC address or IP address
Only present when addressType is MAC address
Only present when addressType is IP address
The Cpd class specifies the characteristics of connection points attached to NFs and NSs. This is an abstract class used as parent for the various Cpd classes.
Note 1: the description of this class is different in ETSI GS NFV IFA 011 and ETSI GS NFV IFA 014. The present definition uses the definition in ETSI GS NFV IFA 014 as it is the more general.
Identifier of this Cpd information element.
Identifies the role of the port in the context of the traffic flow patterns in the VNF or parent NS.
For example a VNF with a tree flow pattern within the VNF will have legal cpRoles of ROOT and LEAF.
Provides human-readable information on the purpose of the CP (e.g. CP for control plane traffic).
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.
Editor's note: the attribute "layerProtocol" still needs further discussion and not included in this table.
Information about whether the CP instantiated from this CPD is in Trunk mode (802.1Q or other).
Identifies which protocol the CP uses for connectivity purposes (Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire, etc.).
Reference of the security group rules bound to this CPD.
The AffinityOrAntiAffinityGroup class describes the affinity or anti-affinity relationship. For NSs, those rules are applicable between the VNF instances created using different VnfProfiles, the Virtual Link instances created using different VlProfiles or the nested NS instances created using different NsProfiles.
For VNFs, those rules are applicable between the virtualization containers to be created based on different VDUs, or between internal VLs to be created based on different VnfVirtualLinkDesc(s).
Identifies an affinity or anti-affinity group to which the affinity or anti-affinity rule applies.
Specifies whether the rule is an affinity rule or an anti-affinity rule.
Specifies the scope of the rule.
PlatformDescriptor is an abstract class that extends Descriptor to represent classes of objects that represent platofrm or internal descriptors.
ID that spans multiple versions of the same descriptor.
Type/Role/Function (a datatype). Classification may be a base type.
OnboardingNfDescriptor is an abstract class that extends Descriptor to represent classes of objects that represent onboarded network function descriptors.
Provider of the NF and of the NFD being onboarded.
Human readable name for the NF Product. Can change during the NF Product lifetime.
Software version of the NF. This is changed when there is any change to the software that is included in the NF Package.
Information about localization languages of the NF (includes e.g. strings in the NFD).
NOTE: This allows to provide one or more localization languages to support selecting a specific localization language at NF instantiation time.
valueRange: refer to ISO936 https://www.iso.org/iso-639-language-codes.html
Human readable description of the NF Product. Can change during the NF Product lifetime.
Default localization language that is instantiated if no information about selected localization language is available.
valueRange: refer to ISO936 https://www.iso.org/iso-639-language-codes.html
condition: Shall be present if "localizationLanguage" is present and shall be absent otherwise.
PlatformNfDescriptor is an abstract class that extends PlatformDescriptor to represent classes of design time objects that represent internal, or platform network function descriptors.
The CpdPool class specifies a pool of descriptors of connection points and service access points.
Identifier of this CpdPool class. It identifies a pool of descriptors of connection points and NS SAPs.
The AddressData information element supports providing information about the addressing scheme and parameters applicable to a CP.
Describes the type of the address to be assigned to the CP instantiated from the parent CPD. The content type shall be aligned with the address type supported by the layerProtocol attribute of the parent CPD.
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.
Provides the information on the IP addresses to be assigned to the CP instantiated from the parent CPD.
Shall be present when the addressType is IP address.
The ConnectivityType datatype specifies the protocol exposed by a VL and the flow pattern supported by the VL.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 protocols to which this VL gives access (Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire).
Identifies the flow pattern of the connectivity (Line, Tree, Mesh).
A CpProtocolData information element describes and associates the protocol layer that a CP uses together with other protocol and connection point information.
One of the values of the attribute layerProtocol of the Cpd IE.
Provides information on the address to be assigned to the CP(s) instantiated from the CPD.
The L2AddressData information element supports providing information about Layer 2 level addressing applicable to a CP.
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.
The L3AddressData information element supports providing information about Layer 3 level addressing scheme and parameters applicable to a CP.
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.
Specify if the floating IP scheme is activated on the CP or not.
Define address type.
NOTE: The address type should be aligned with the address type supported by the layerProtocol attribute of the parent Cpd.
Minimum number of IP addresses to be assigned based on this L3AddressData information element.
Identifies the protocol to which this VL gives access.
The LinkBitrateRequirements information element describes the requirements in terms of bitrate for a VL.
Throughput requirement of the link (e.g. bitrate of E-Line, root bitrate of E-Tree, aggregate capacity of E-LAN).
Throughput requirement of leaf connections to the link when applicable to the connectivity type (e.g. for E-Tree and E?LAN branches).
NOTE: The present document does not specify the means to declare different bitrate requirements for leaf connections (e.g. E-LAN leaves).
The LocalAffinityOrAntiAffinityRule describes the affinity or anti-affinity rule applicable between the virtualization containers to be created based on a particular VDU, or between internal VLs to be created based on a particular VnfVirtualLinkDesc.
Per VNF, the affinity/anti-affinity rules defined using this information element, using the AffinityOrAntiAffinityGroup information element, and using the placement constraints in the GrantLifecycleOperation as defined in ETSI GS NFV IFA 007 [i.3] should be conflict-free. In case of conflicts, the placement constraints in the GrantLifecycleOperation shall take precedence.
Specifies whether the rule is an affinity rule or an anti-affinity rule.
Specifies the scope of the rule.
The L2ProtocolData information element describes the L2 protocol related data for a virtual link.
Network name associated with this L2 protocol.
Specifies the network type for this L2 protocol. Possible values: FLAT, VLAN, VXLAN, GRE.
Note: If this attribute is included in the VNFD, the attribute value shall be provided at run-time, unless a default value is provided at design time in the VNFD.
If a default value is provided at design-time, this value may be overridden at run-time.
Specifies whether to support VLAN transparency for this L2 protocol or not.
Specifies the maximum transmission unit (MTU) value for this L2 protocol.
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.
The connected physical network of network type (VLAN or VxLAN) .
Specify if a vrouter comes from an external network.
Specifies the network type for this L2 protocol.
The L3ProtocolData information element describes the L3 protocol related data for a virtual link.
Network name associated with this L3
protocol.
Specifies IP version of this L3 protocol.
Value:
• IPV4.
• IPV6.
NOTE : The value of the ipVersion attribute shall be consistent with the value of the layerProtocol attribute of the
ConnectivityType IE .
Specifies the CIDR (Classless Inter-
Domain Routing) of this L3 protocol.
NOTE : If this attribute is included in the VNFD, the attribute value shall be provided at run-time, unless a default value
is provided at design time in the VNFD. If a default value is provided at design-time, this value may be
overridden at run-time.
Specifies the allocation pools
with start and end IP addresses for this L3
protocol.
NOTE : If this attribute is included in the VNFD, the attribute value shall be provided at run-time, unless a default value
is provided at design time in the VNFD. If a default value is provided at design-time, this value may be
overridden at run-time.
Specifies the gateway IP address for this
L3 protocol.
NOTE : If this attribute is included in the VNFD, the attribute value shall be provided at run-time, unless a default value
is provided at design time in the VNFD. If a default value is provided at design-time, this value may be
overridden at run-time.
Indicates whether DHCP (Dynamic Host Configuration Protocol) is enabled or disabled for this L3 protocol.
NOTE : If this attribute is included in the VNFD, the attribute value shall be provided at run-time, unless a default value
is provided at design time in the VNFD. If a default value is provided at design-time, this value may be
overridden at run-time.
Specifies IPv6 address mode. Possible values:
• SLAAC.
• DHCPV6-STATEFUL.
• DHCPV6-STATELESS.
May be present when the value of the ipVersion attribute is "IPV6" and shall be absent otherwise.
NOTE : If this attribute is included in the VNFD, the attribute value shall be provided at run-time, unless a default value
is provided at design time in the VNFD. If a default value is provided at design-time, this value may be
overridden at run-time.
Specifies IPv6 address mode for vrouter. Possible values:
• SLAAC.
• DHCPV6-STATEFUL.
• DHCPV6-STATELESS.
May be present when the value of the ipVersion attribute is "IPV6" and shall be absent otherwise. Must be present when the VLAN/VXLAN connects to one or more vrouters.
Note: The value of ipv6RaMode and ipv6AddressMode must be same.
Static routing list, including estination and nexthop information.
DNS server list.
Specifies IPv6 address mode.
May be present when the value of the
ipVersion attribute is IPV6 and shall be
absent otherwise.
Specifies IP version of this L3 protocol.
Value:
• IPV4.
• IPV6.
The QoS datatype specifies quality of service parameters applicable to a VL.
It is the asbstract parent of the NsQos and VnfQos datatypes, as the NsQoS (QoS in ETSI GS NFV IFA 014) includes a priority attribute, while VnfQoS (QoS in ETSI GS NFV IFA 011) does not.
Maximum latency in ms.
Maximum jitter in ms.
Maximum packet loss ratio. Cardinality is 0 if no packetLossRatio requirement exists.
Qos ID.
Human readable Qos name.
Detailed requirements of Qos, including maximum bandwidth limitation{max_kbps}、maximum burst bandwidth limitation{max_burst_kbps} 、direction{egress|ingress},etc.
Type of address
A set of common business entities that collectively serve as the foundation of the ONAP Information Model.. This set of root classess enable the entities in different domains of the Information Model to be associated with each other, providing greater overall coherence.
A Parameter can be in more than one ParameterGroup, and a ParameterGroup can have some number of Parameters.
Perhaps all these attributes can be moved up to OnboardingNfDescriptor
Add tosca.nodes.nfvl.nf attributes here (from https://wiki.onap.org/pages/viewpage.action?pageId=45303981)
defaultLocalizationLangauge- string, not required (*) goes to OnboardingNfDescriptor
Perhaps put Polilcy, Descriptor under Entity
Should ManagedEntity be a subclass or an aggregation?
Do we root business interaction
can digitally communicate
Mgmt Domain
Note: This concept has some basis on the TMF SID Characteristic Pattern.
Colored classes are examples in the context of tis proposal.
valueMin<valueMax
This is the top of the ONAP class hierarchy. The purpose of the RootEntity is to define a set of attributes that are common to all entities that derive from it. These properties enable us to name, describe, and identify all objects in the environment.
Represents a user-friendly identifier of an object. It is a (possibly ambiguous) name by which the object is commonly known in some limited scope (such as an organization) and conforms to the naming conventions of the country or culture with which it is associated. It is NOT used as a naming attribute (i.e., to uniquely identify an instance of the object).
Defines a textual free-form description of the object.
Unambiguously distinguishes different object instances. It is the naming attribute of the object.
Identifier of this information element. This attribute shall be globally unique.
This is an abstract class that extends the RootEntity class and represents characteristics and behaviors of concepts that pertain to the NFV managed environment.
Defines a collection of entities that share a common purpose. In addition, each constituent Entity in an Domain is both uniquely addressable and uniquely identifiable within that Domain
A ManagedEntity is used to specify that an Entity is manageable by electronic means.
This is an enumerated integer that defines the particular type of management method that is currently being used.
Permitted Values:
0: Unknown
1: None
2: CLI
3: SNMP
4: TL1
5: CMIP
6: Proprietary
This is an array of integers that define the different management methods that are supported by this object.
Permitted Values:
0: Unknown
1: None
2: CLI
3: SNMP
4: TL1
5: CMIP
6: Proprietary
A template which describes an OperationalEntity in terms of deployment and operational behavior requirements.
Note: The only fields being used in this class are Name and MRN (manufactureReferenceNumber. The rest are optional.
The period during which the design entity is valid.
The condition of the specification, such s active, inactive, or planned.
Represents a user-friendly identifier of an object. It is a (possibly ambiguous) name by which the object is commonly known in some limited scope (such as an organization) and conforms to the naming conventions of the country or culture with which it is associated. It is NOT used as a naming attribute (i.e., to uniquely identify an instance of the object).
Defines a textual free-form description of the object.
An OperationalEntity is a deployment in a NFV environment of a DesignEntity.
SelectionCriteria finds descriptors and instances according to specific properties of those entities.
Unique indentifier of this SelectionCriteria.
A SelectionCriteria that is an aggregation of multiple selection criterias. Agregation can be for example AND, OR, or XOR logical operations.
Logical operation for filters composition, e.g. logical AND, OR, XOR.
A simple (atomic) selection criteria that holds a specific attribute comparision expression.
Name of compared parameter or attribute.
Comparison operator, e.g. equal, less than, greater or etc.
Compared value (can be a name of a parameter in referenced class).
The type of the value property (String, Integer, Real, ...).
A group of parameters that somehow relate or work together.
Name of ParameterGroup
Description of ParameterGroup.
ID of ParameterGroup.
Some parameter that is part of a ParameterGroup. If parameter can only hold certain values, those values are specified via ParameterSpecValue (design time). The actual value is specified via ParameterValue (runtime).
Name of parameter.
Boolean that specifices if this parameter is an input parameter.
Parameter can have some number of runtime ParameterValues. Each ParameterValue is also associated with some OperationalEntity (VnfInstance, ServiceInstance, ...).
Bolean that specifices if the value can be modified or changed during the life of this parameter.
The type of this parameter (integer, string, ...).
A length, surface, volume, dry measure, liquid measure, money, weight, time, and the like. In general, a determinate quantity or magnitude of the kind designated, taken as a standard of comparison for others of the same kind, in assigning to them numerical values, as 1 foot, 1 yard, 1 mile, 1 square foot.
Description of the parameter.
The actual value of Parameter (runtime).
Runtime ParameterValue is associated with exactly one Parameter. Parameter can have some number of runtime ParameterValues.
The actual value of Parameter (runtime).
RangeValueSpec is generally expected to be of valueType integer or
RangeValueSpec generally should have a valueType of either integer or real. valueFrom, valueTo, and rangeStep should all be of the same valuetype for some Parameter.
valueTo should be greater than valueFrom
rangeStep should be greater than zero.
rangeStep>0
The minimum value that a Parameter can take on.
The maximum value that the parameter can take on.
The specification that a range of values increases in steps, such as a range from 0 to 100 in steps of 5 with the resulting permitted values being 0, 5, 10, 15,...100. This complements the valueFrom and valueTo attributes.
DiscreteValueSpec represents a specific valid value that a given Parameter can take on.
A discrete value that the Parameter can take on.
A valid value of parameter (design time). Values can be either a range (RangeValueSpec) or discrete (DiscreteValueSpec).
The operator being applied to to some group of selectoin critiera.
The operator being applied to some atomic selection critera.
Dynamic, configurable properites of some entity.
The specific configurable properties of some entity.
Associates a business interction that is referenced by a business interction
Associates a business interaction that references
PolicyEvent is part of another effort, and is NOT agreed to at this time.
ServiceOrder and VesEvent are part of other contributions, and have already been accepted.
A type of BusinessInteraction that represents a contract or arrangement, either written or verbal and sometimes enforceable by law.
A reference number assigned to an Agreement that follows a prescribed numbering system.
An overview and goals of the Agreement.
A BusinessInteraction is an arrangement, contract, communication or joint activity between one or more PartyRoles, ResourceRoles, or CustomerAccounts. A BusinessInteraction may consist of one or more BusinessInteractionItems. A BusinessInteractionItem may refer to a Product, Service, Resource, or one of their specifications. A BusinessInteraction is further defined by one or more Places. One BusinessInteraction may reference another BusinessInteraction and one BusinessInteractionItem may reference another BusinessInteractionItem on the same or different BusinessInteraction. Types of BusinessInteractions include : Requests, Responses, Notifications, and Agreements.
Date interaction initiated
The date on which an interaction is closed or completed.
The current condition of an interaction, such as open, in research, closed, and so forth
The purpose for the BusinessInteraction expressed in terms of a ProductSpecification, ProductOffering, ServiceSpecification or ResourceSpecification or may refer to a Product, Service, or Resource.
Quantity of an interaction item involved in an interaction.
The action to take for an InteractionItem, such as add, change, remove.
The invariant characteristics (attributes in the business view, and methods, constraints, relationships, and behavior in the system view) and behavior of a BusinessInteraction. This is done by optionally defining a set of BusinessInteractionSpecItems, each of which aggregates one or more other types of Specifications. This helps to ensure that different BusinessInteractions have the same basic characteristics and behavior by deriving them from the same BusinessInteractionSpec.
Version of the business interaction.
The act of asking that something be done that typically involves a Response. Request is a type of Business Interaction.
A communication that informs about something that has or will happen. A Notification is typically one-sided, in that no Response is expected. A Notification can be created as the result of a Request; for example, a Trouble Report may result in Notifications being sent to affected Parties. A Notification is a type of Business Interaction.
A reply to a Request
An association between two Interactions. For example, a Notification sent to customers affected by a problem contained on a Trouble Report; a response to a request, an agreement and the interactions that led up to the agreement.
A categorization of the relationship, such as bulk, parent/child, and so forth.
Time period for which the relationship is valid
The type of relationship such as contains, relies on.
Time period for which the relationship is valid