A method for providing Quality of Service, QoS, over a virtual interface for solid-state storage, comprising: tracking, over a pre-defined duration of time, bandwidth used per namespace through which data of solid-state storage is accessible; receiving through a first queue of inbound command elements, via a host interface and from a host device, an input/output, I/O, command for data access that is associated with an identifier for a virtual interface associated with a namespace; determining, based on the I/O command, an amount of the data of the solid-state storage that the I/O command will access through the namespace; determining whether the amount of data that the I/O command will access through the namespace exceeds a predefined threshold for data access through the namespace over the duration of time; and releasing, via a storage media interface and based on the namespace, the I/O command to the solid-state storage in response to determining that the amount of data that the I/O command will access does not exceed the predefined threshold for data access through the namespace; and delaying the release of the I/O command to the solid-state storage device in response to determining that the amount of data that the I/O command will access meets or exceeds the predefined threshold for data access through the namespace, wherein the delaying comprises storing the I/O command to a second queue for command elements that are staged for reevaluation for release to the solid-state storage, wherein the I/O command is reevaluated responsive to (i) the first queue reaching an empty state or (ii) a third queue of command elements released to the solid-state storage reaching an empty state. tracking, over a pre-defined duration of time, bandwidth used per namespace through which data of solid-state storage is accessible; receiving through a first queue of inbound command elements, via a host interface and from a host device, an input/output, I/O, command for data access that is associated with an identifier for a virtual interface associated with a namespace; determining, based on the I/O command, an amount of the data of the solid-state storage that the I/O command will access through the namespace; determining whether the amount of data that the I/O command will access through the namespace exceeds a predefined threshold for data access through the namespace over the duration of time; and releasing, via a storage media interface and based on the namespace, the I/O command to the solid-state storage in response to determining that the amount of data that the I/O command will access does not exceed the predefined threshold for data access through the namespace; and delaying the release of the I/O command to the solid-state storage device in response to determining that the amount of data that the I/O command will access meets or exceeds the predefined threshold for data access through the namespace, wherein the delaying comprises storing the I/O command to a second queue for command elements that are staged for reevaluation for release to the solid-state storage, wherein the I/O command is reevaluated responsive to (i) the first queue reaching an empty state or (ii) a third queue of command elements released to the solid-state storage reaching an empty state.