In a network environment, data may be delivered to a device in response to a request by the device.  The data connection with the device may vary over time and under different conditions.  For example, the network itself may experience problems such as overloading, noise, and broken connections, or the device may have difficulty obtaining reliable signal strength with the network.  If the data connection happens to be poor during data delivery, then delivery may suffer.  This may be especially problematic where the data is expected to be delivered in a consistent manner, such as when the data represents streamed multimedia content.  Data connection problems are typically handled using a reactive process in which the data quality may be reduced or delayed until the data connection improves.  This type of reactive handling may sometimes result in a poor end user experience.  The foregoing and other shortcomings are address in this disclosure.