In-band means sending commands in an operating system through a standard NVMe driver and commands, while out-of-band means outside of the operating system knowledge, most commonly done with a host BMC through the SMBUS protocol, but now can be done over PCIe vendor defined messages as well.
Enclosure management is a way to monitor the physical presence of SSDs in an enclosure (find out what slot an SSD is in, operate LEDs), which may be a storage array, a JBOD/JBOF, etc., monitor temperature and fan speed, and send management commands to the SSDs from the storage enclosure.
Enclosure management, in-band tunneling, multi NVM subsystem management for complex devices, PCIe port numbering, and a table for identifying form factor and temperatures.
The NVMe-MI specification was created to define a command set and architecture for managing NVMe storage, making it possible to discover, monitor, configure, and update NVMe devices in multiple operating environments. It started with just out-of-band management for OS agnostic management of SSDs over SMBUS, to have a standard way for SSDs and host servers [...]
The NVMe-MI specification defines a command set and architecture for managing NVMe storage. NVMe-MI technology provides an industry standard for the management of NVMe devices in-band (through an operating system) and out-of-band (usually through a BMC, or baseboard management controller). Anchor features include standardized NVMe enclosure management, the ability to access NVMe-MI technology functionality in-band [...]