A method for managing a storage pool comprising: maintaining a queue of one or more input/output (I/O) requests intended for a storage device, wherein each I/O request comprises an order value indicative of the order in which that I/O request was received at a storage management system; calculating a difference between a first order value associated with a first I/O request in the queue and a second order value associated with a second I/O request in the queue, wherein the first I/O request is the I/O request in the queue having the oldest order value and the second I/O request is the I/O request in the queue having the newest order value; comparing, to a threshold value, the calculated difference between the first order value and the second order value; and transmitting the oldest I/O request that has not already been transmitted to the storage device from the queue of the one or more I/O requests to the storage device when the calculated difference between the first order value and the second order value is less than or equal to the threshold value; wherein the method further comprises the steps of: receiving a new I/O request for the storage device; associating a new order value to the new I/O request for the storage device; adding the new I/O request and the new order value to the queue; and receiving a completion indicator from the storage device indicating that an I/O request has been completed and removing a corresponding I/O request from the queue. maintaining a queue of one or more input/output (I/O) requests intended for a storage device, wherein each I/O request comprises an order value indicative of the order in which that I/O request was received at a storage management system; calculating a difference between a first order value associated with a first I/O request in the queue and a second order value associated with a second I/O request in the queue, wherein the first I/O request is the I/O request in the queue having the oldest order value and the second I/O request is the I/O request in the queue having the newest order value; comparing, to a threshold value, the calculated difference between the first order value and the second order value; and transmitting the oldest I/O request that has not already been transmitted to the storage device from the queue of the one or more I/O requests to the storage device when the calculated difference between the first order value and the second order value is less than or equal to the threshold value; wherein the method further comprises the steps of: receiving a new I/O request for the storage device; associating a new order value to the new I/O request for the storage device; adding the new I/O request and the new order value to the queue; and receiving a completion indicator from the storage device indicating that an I/O request has been completed and removing a corresponding I/O request from the queue. receiving a new I/O request for the storage device; associating a new order value to the new I/O request for the storage device; adding the new I/O request and the new order value to the queue; and receiving a completion indicator from the storage device indicating that an I/O request has been completed and removing a corresponding I/O request from the queue.