Multi-Tenant SSD Sharing

Overview

Multi-tenant SSD sharing is the architecture in which a single physical SSD is shared by multiple VMs or tenants, with the goal of giving each tenant a performance-isolated slice that "feels like a performance isolated smaller drive" with guaranteed SLAs even in the presence of noisy neighbors. It is a defining challenge for hyperscalers, where consistent and predictable VM storage performance must hold regardless of co-tenants, hardware generation, or scheduling location.

Historically hyperscalers achieved multi-tenancy with hyperscaler-specific logic and vendor-specific SSD modifications, an approach that does not scale across the industry. The industry is now replacing it with NVMe and OCP standards — primarily TP4176 for performance isolation and FDP for garbage-collection isolation. Key open problems remain: a large deallocate command can monopolize SSD resources and spike latency for co-tenant IOs, so extending QoS rate limiting to deallocates is a recognized gap. Future work may expand the tenant definition from per-controller to per-group-of-submission-queues, enabling Linux namespace-based tenants and intra-tenant priority differentiation for SPDK applications.

Sign in to read the full article.

Sign In