networkInterfaceRequirements:
derived_from: tosca.datatypes.Root
version: 1.0
description: "Describes the datatype for network interface requirements"
properties:
trunkMode:
description: >
Information about whether the CP instantiated from this Cp is in Trunk mode (802.1Q or other).
When operating in "trunk mode", the Cp is capable of carrying traffic for several VLANs.
Absence of this property implies that trunkMode is not configured for the Cp i.e.
It is equivalent to boolean value "false".
required: falsetrue
type: boolean
default: false
ipam:
description: >
TheIdentifies defaultwhether value ("infraProvided") means that the CNI specifies how IPAM is done and assigns
application expects IP address assignment to be managed by the cluster
infrastructure (CNI the IP address to the pod interface. IPAM plugin), or configured by orchestrator via for example helm input parameter,
or if IP assignment is handled by the application itself.
required required: falsetrue
type: string
constraints:
- valid_values: ["infraProvided", "orchestrated", "userManaged"]
default: "infraProvided"
interfaceType:
description: >
ThisIndicates attributewhat istype applicableof fornetwork passthroughinterface andthe memifapplication interfacesexpects.
Kernel Thebased defaultvirtual valuenetdev is ”kernel.netdev”.
required: false
type: stringbased on CNIs such as “ovs | bridge | macvlan | ipvlan, or
constraints:
PCIe dev directly visible in application - valid_values: ["kernel.netdev", "direct.userdriver", "direct.kerneldriver", "direct.bond", "userspace"]
interfaceOption:
namespace with kernel or userspace driver or
description: >
or bonded with the Bond CNI, or userspace-CNI based network interface (requires DPDK-OVS/VPP vSwitch).
required: Thisfalse
attribute is applicable for passthrough and memif interfaces.type: string
constraints:
The default value is ”kernel.netdev”.
- valid_values: ["kernel.netdev", "direct.userdriver", "direct.kerneldriver", "direct.bond", "userspace"]
default: "kernel.netdev"
interfaceOption:
description: >
This attribute is applicable for passthrough and memif interfaces.
The default value is ”kernel.netdev”.
required: false
type: list
entry_schema:
type: string
constraints:
- valid_values: [“virtio", "memif“]
interfaceRedundancy:
description: >
required: false
type: list Identifies switch-plane redundancy method the application uses, and that node infrastructure is required to comply with.
entry_schema:
type: string "infraProvided", “left” and “right”: The container sees a single vNIC that a) the infrastructure bonds over both
switchplanes constraints:
or b) that is connected to the network via only left or right the switchplane.
- valid_values: [“virtio", "memif“]
interfaceRedundancy:
The other cases are for a description:mated >pair
of vnics connecting to same network, but Defaultwhere valueone is "infra-provided”, which means that the infrastructure is expected to provide
vNIC connects
via left switch plane and the other via right switch networkplane, redundancyand forwhere the podapplication interface.manages Value "none" means that the application has no
the redundancy.
"activePassiveBond": the application bonds with requirementmove onof networkMAC redundancyaddress.
Value ”matedPair” means that the Pod asks for a mated pair"activeActiveBond“:
bonded left/right links must be part of a multi-chassis LAG
of non-redundant left/right network attachments (typically SRIOV) and handles redundancy on
"activePassiveL3": application will move application IP address between the vNICs.
application level. The same set of networks shall be configured on both interfaces.
"activeActiveL3": the application uses anycast/ECMP.
required: falsetrue
type: string
constraints:
- valid_values: ["infraProvided", "actPassBond", "actActBond", "actPassL3", "actActL3", "Left", "Right"]
nicOptions"Left", "Right"]
default: "infraProvided"
nicOptions:
description: >
Identifies nicsfor athe direct user space driver.userdriver interface type, the physical nics the applicationdriver is verified to work with. Allowed values from ETSI registry.
Allowed values for nic types must be handled via a registry or be standardized.
required required: false
type: list
entry_schema:
type: string |