IOFlow: A software-defined storage architecture

Eno Thereska, Hitesh Ballani, Greg O'Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black, Timothy Zhu

Research output: Chapter in Book/Report/Conference proceedingConference contribution

145 Scopus citations


In data centers, the IO path to storage is long and complex. It comprises many layers or "stages" with opaque interfaces between them. This makes it hard to enforce end-to-end policies that dictate a storage IO flow's performance (e.g., guarantee a tenant's IO bandwidth) and routing (e.g., route an untrusted VM's traffic through a sanitization middlebox). These policies require IO differentiation along the flow path and global visibility at the control plane. We design IOFlow, an architecture that uses a logically centralized control plane to enable high-level flow policies. IOFlow adds a queuing abstraction at data-plane stages and exposes this to the controller. The controller can then translate policies into queuing rules at individual stages. It can also choose among multiple stages for policy enforcement. We have built the queue and control functionality at two key OS stages - the storage drivers in the hypervisor and the storage server. IOFlow does not require application or VM changes, a key strength for deployability. We have deployed a prototype across a small testbed with a 40 Gbps network and storage devices. We have built control applications that enable a broad class of multi-point flow policies that are hard to achieve today.

Original languageEnglish (US)
Title of host publicationSOSP 2013 - Proceedings of the 24th ACM Symposium on Operating Systems Principles
Number of pages15
StatePublished - 2013
Event24th ACM Symposium on Operating Systems Principles, SOSP 2013 - Farmington, PA, United States
Duration: Nov 3 2013Nov 6 2013

Publication series

NameSOSP 2013 - Proceedings of the 24th ACM Symposium on Operating Systems Principles


Other24th ACM Symposium on Operating Systems Principles, SOSP 2013
Country/TerritoryUnited States
CityFarmington, PA

All Science Journal Classification (ASJC) codes

  • Software


Dive into the research topics of 'IOFlow: A software-defined storage architecture'. Together they form a unique fingerprint.

Cite this