Skip to main content

Overview

Mango BoostX™ NRT is an NVMe-oF target accelerator card that offloads the NVMe/RoCEv2 data path to dedicated hardware. It exports the NVMe SSDs installed in the enclosure to remote hosts at line rate without consuming host CPU cycles, which makes it suited to headless JBOF (Just a Bunch Of Flash) systems that have no application CPU of their own. A configuration daemon on the card discovers the installed SSDs at boot and publishes them according to a single policy file, so the enclosure serves storage without any command being run by hand.

Highlights

JBOF-Ready NVMe/RDMA Target

  • Headless NVMe/RDMA target accelerator for JBOF storage enclosures
  • NVMe-oF storage expansion at low system power

Zero-CPU I/O Path

  • Line-rate performance at 200GbE
  • No CPU consumption in the NVMe-oF I/O path
  • Direct communication with the NVMe SSDs without CPU intervention

Interoperability and Compatibility with Standards

  • Compatible with RoCEv2 standardized infrastructure
  • NVMe-compliant solution certified by UNH-IOL

Supported Hardware

NRT 1x200GbE (HHHL)

Mango BoostX NRT board

Hardware Specification

Network Interface

  • 1x QSFP-DD port
  • 1x 200GbE support
  • Support active and passive cables
  • 4500-byte MTU

PCIe Interface

  • PCIe Gen5 x8
  • Root Complex

Form Factor

  • HHHL, single slot
  • PCIe add-in card

Processing Unit

  • 2x Arm Cortex-A72
  • 2x Arm Cortex-R5F

Memory

  • 8GB LPDDR4, ECC support
  • 256MB OSPI flash
  • 64GB eMMC flash

Management

  • PCIe in-band management
  • MCTP over SMBus
  • FRU (Field Replaceable Unit)
  • UART

Environmental

  • Maximum power consumption: 75W
  • 12V, 3.3V, 3.3V_AUX input voltage via PCIe gold finger
  • Operating Temperature: 0°C to 55°C
  • Operating Relative Humidity: 20% to 80%
  • Storage Temperature: -20°C to 60°C
  • Storage Relative Humidity: 10% to 90%

Regulatory

  • FCC/CE/KC
  • UL/RoHS

RDMA Features

  • Configuration-free RoCEv2

Capabilities

ItemValue
HostsUp to 32
NVMe-oF I/O queue pairsUp to 32
NVMe-oF queue depth32 entries
NVM subsystemsUp to 26
NVMe SSDsUp to 26
Namespaces per SSD1
Logical block size512 B
Maximum data transfer size (MDTS)128 KiB

Standards Compliance

Certified by the University of New Hampshire InterOperability Laboratory (UNH-IOL).

  • NVM Express® Base Specification 2.2
  • NVM Command Set Specification 1.1
  • NVMe over RDMA Transport Specification 1.1

System Components

ComponentRuns onRole
mango-jbofCardsystemd service that configures the appliance at boot. The default operating path
mango-ctlCardCLI for managing the appliance. The nvmf subcommand controls the NVMe-oF target
mango-smiCardDevice and sensor summary
NVMe-oF target daemonCardThe target itself, started manually by mango-ctl nvmf start or automatically by mango-jbof
NVMe-oF initiatorCustomer hostConnects with nvme connect
info

This guide assumes the Linux in-kernel NVMe-oF initiator, driven with nvme-cli on the host. Other initiator implementations are not covered.

Operating Modes

There are two ways to configure the appliance, and they are not meant to be used at the same time.

  • Automatic (recommended). mango-jbof configures the network interface, discovers the SSDs, and creates the subsystems, namespaces, and listeners at boot. You only edit the policy file. See Automatic Configuration.
  • Manual. You run the mango-ctl nvmf commands yourself. Intended for special layouts and for diagnosis. See Manual Configuration.
warning

If the automatic service is enabled, it re-applies its own policy and reverts a configuration you built by hand. To keep a manual configuration across restarts, pin it with mango-ctl nvmf autoconfig --commit-state, or disable the service with mango-ctl nvmf autoconfig --disable. See Pinning the Running Configuration.

Command Results

Every mango-ctl nvmf subcommand reports its result through its exit code, so scripts should branch on the code rather than on the text of the output.

CodeMeaning
0success
1the operation ran and failed
2missing, invalid or conflicting arguments
3the NVMe-oF service is not running
4subsystem, controller or device does not exist
5refused: destructive, re-run with -f/--force
6refused: connections or resources still in use

Code 3 is the expected result before the target has been started. See Exit Codes for the rules that apply between them.

Where to Go Next