HostNvmeController

HostNvmeController
HostNvmeController

This data object represents an NVME controller.

Some terminology is borrowed from the NVM Express over Fabrics and the NVM Express 1.3 specifications, which are available at the following address: https://nvmexpress.org/resources/specifications/

AllOf
This class requires all of the following:
JSON Example
{
    "_typeName": "string",
    "key": "string",
    "controllerNumber": 0,
    "subnqn": "string",
    "name": "string",
    "associatedAdapter": {
        "_typeName": "string",
        "key": "string",
        "device": "string",
        "bus": 0,
        "status": "string",
        "model": "string",
        "driver": "string",
        "pci": "string",
        "storageProtocol": "string"
    },
    "transportType": "string",
    "fusedOperationSupported": false,
    "numberOfQueues": 0,
    "queueSize": 0,
    "attachedNamespace": [
        {
            "_typeName": "string",
            "key": "string",
            "name": "string",
            "id": 0,
            "blockSize": 0,
            "capacityInBlocks": 0
        }
    ],
    "vendorId": "string",
    "model": "string",
    "serialNumber": "string",
    "firmwareVersion": "string"
}
string
key
Required

The linkable identifier.

integer As int32 As int32
controllerNumber
Required

The controller number uniquely identifies the NVME Controller within its HostSystem.

This should not be confused with Controller ID (see "NVM Express over Fabrics 1.0", Section 4.2, "Controller model" for details), which only serves as an identifier within a particular NVME subsystem.

string
subnqn
Required

The NVME subsystem qualified name.

Each NVME controller is associated with an NVME subsystem which can present a collection of controllers to the adapter. For more details, refer to:

  • "NVM Express over Fabrics 1.0", Section 1.5.2, "NVM Subsystem".
string
name
Required

Name of the controller.

Each controller has a name. For NVME over Fabrics controllers, it is generated when the controller is connected to an NVME over Fabrics adapter.

associatedAdapter
Required

This data object type describes the bus adapter for the host.

A host bus adapter (HBA) is a hardware or software adapter that connects the host to storage devices.

string
transportType
Required

The transport type supported by the controller.

The set of possible values is described in HostNvmeTransportTypeEnum. For details, see:

  • "NVM Express over Fabrics 1.0", Section 1.5.1, "Fabrics and Transports".
boolean
fusedOperationSupported
Required

Indicates whether fused operations are supported by the controller.

An NVME controller may support fused operations. This is required to support shared storage, otherwise data corruption may occur. For more details, see:

  • "NVM Express 1.3", Section 6.2, "Fused Operations".
integer As int32 As int32
numberOfQueues
Required

The number of I/O queues allocated for the controller.

integer As int32 As int32
queueSize
Required

The size of each of the I/O queues.

This will not be greater than the Maximum Queue Entries Supported (mqes) value for the controller. For more information, see:

  • "NVM Express 1.3", section 3.1, "Register definition".
attachedNamespace
Optional

List of NVME namespaces attached to the controller.

Namespaces provide access to a non-volatile storage medium which is part of the NVM subsystem. For an overview, see:

  • "NVM Express over Fabrics 1.0", Section 1.5.2, "NVM Subsystem".
  • "NVM Express 1.3", section 6.1, "Namespaces".
string
vendorId
Optional

The vendor ID of the controller, if available.

string
model
Optional

The model name of the controller, if available.

string
serialNumber
Optional

The serial number of the controller, if available.

string
firmwareVersion
Optional

The firmware version of the controller, if available.