Acronyms and Definitions

Table 1.
API Application programming interface
BDEV Any logical block storage item managed by xiRAID block layer. BDEVs can be stacked and form multi-level topology.
Block device Any backend storage block device, such as an NVMe namespace, logical BDEV, or a frontend block device exposed by a target of any type (Vhost, NVME-TCP, NVME-RDMA or other).
Chunk The unit in which data is spread over the RAID disks. One chunk of continuous data is written to a certain disk, the next data is written to another disk.
CLI Command Line Interface implemented by xiRAID Opus utility for the xiRAID engine management.
Device, physical device A device directly attached via PCI or network, either physically or virtually through a hypervisor. The device can represent a single drive or multiple drives storing user and RAID control data. An example of such a device is a PCIe-connected NVMe.
DMA A device directly attached via PCI or network, either physically or virtually through a hypervisor. The device can represent a single drive or multiple drives storing user data. An example of such a device is a PCIe-connected NVMe drive.
Drive, disk The lowest level logical block device created on top of a physical or virtual device. It is internally represented as BDEV. It can be used as a backing disk for a RAID.
Driver A specific computer program enabling the operating system or an application to access to a hardware target device. Usually to a disk or network port in scope of this document subject.
gRPC Google Remote Procedure Calls protocol is a framework based on the proto3 specification.
Host A machine where xiRAID Opus software is installed and running.
Initiator The endpoint that initiates a RAID data access session. the initiator usually is a part of user’s application.
IO Input/output is the flow of data to and from the storage drive, backend disk, target, or another data path component.
IOMMU group An IOMMU group is the smallest set of devices that can be considered isolated from the IOMMU’s perspective. Devices from the same IOMMU group should not be split between different users and host drivers.
InfiniBand A computer networking communications standard used for data interconnection.
Metadata Persisted RAID control parameters located at the RAID backing drives. the metadata is not available for client application and is used for the RAID operation and data recovery.
NIC The Network Interface Controller enables computers to communicate over a computer network.
NVMe-oF A specification-defined extension to NVMe that enables NVMe-based communication over interconnects other than PCIe. This interface makes it possible to connect “external” storage enclosures to a server, either directly or through a switch, while still using NVMe as the fundamental communication mechanism.
Namespace A quantity of nonvolatile memory that can be formatted into logical blocks. This definition is virtually identical to the SCSI concept of a logical unit. A logical block device that is part of physical NVMe device.
NQN NVMe Qualified Name. An identifier for a remote NVMe target.
OS Operating System.
RAID Redundant Array of Independent Disks is a single usable data disk, where several physical disks are combined into an array for better speed and fault tolerance.
Server The machine where xiRAID software is running.
SSD Solid State Drive.
Subsystem The NVM subsystem is a collection of physical fabric interfaces (ports), one or more controllers, one or more namespaces and an interface between the controller(s) and non-volatile memory storage medium.
Target The endpoint that waits for initiators' commands and provides required input/output data transfers. The part of xiRAID software.
UUID Globally unique 128-bit identifier. Unique identifier of a disk, logical drive, RAID or a configuration component
VirtIO transport An abstraction layer in the hypervisor to expose a software block devices to the guest as if they are physical devices using a specific transport method
VM socket The character device used to connect a block storage by using VirtIO protocol.
xiRAID Xinnor xiRAID Opus product or engine
xiRAID Opus xiRAID Opus (Optimized Performance in User Space) is a high-performance software RAID engine based on the SPDK libraries