Ming Liu

Project Overview

Modern cloud infrastructures widely employ storage disaggregation to improve scalability, resource utilization, and cost efficiency. However, today’s disaggregated storage systems continue to follow a “smart-sender, dumb-receiver” design philosophy, where each remote NVMe SSD is exposed as a locally attached block device managed entirely by the client-side storage stack. While this abstraction enables seamless adoption without modifying existing applications, it leaves the storage infrastructure largely passive. As a result, storage systems cannot adapt to dynamic workload interference, coordinate resources across tenants, or exploit the growing programmability of modern storage and networking hardware, leading to unpredictable performance and inefficient resource utilization.

The Programmable Disaggregated Storage (PDS) project builds a new type of disaggregated storage by making the entire storage access path programmable. PDS leverages the recent and upcoming hardware innovations across the networking and storage infrastructures (such as open, computational, and virtualizable SSDs, programmable adapters at the endpoints, and programmable switching fabric in the middle). It co-designs storage software with these hardware substrates to provide adaptive storage abstractions, end-to-end observability, distributed resource management, and programmable I/O processing. The goal is to build storage systems that dynamically adapt to application demands and infrastructure conditions while delivering higher performance, predictable latency, efficient multi-tenancy, and better resource utilization.

Challenges

Emerging storage and networking hardware change how disaggregated storage systems should be built. However, existing software continues to treat NVMe SSDs, storage adapters, and SAN switches as isolated components, leaving their capabilities largely underutilized. Building PDS requires unified abstractions, end-to-end observability, coordinated resource management across heterogeneous devices, and integrated control over the entire storage access path. This incurs several challenges:

Our Approach

Our insight is that the disaggregated storage I/O path can be architected as an end-to-end and reconfigurable active substrate rather than a passive data transport pipeline. We ask: How can PDS leverage emerging hardware innovations to deliver high-performance I/O with predictable latency, efficient multi-tenancy, and cost-effective resource utilization? In this project, we have built systems for storage virtualization, adaptive I/O scheduling, end-to-end orchestration, elastic block storage, NVMe-over-Fabrics observability, and SAN networking fabric, and retrofitted their benefits for distributed file systems, key-value stores and databases.

Here are the systems we have built.