An apparatus for simultaneously distributing media content across a network to a plurality of client systems, the apparatus comprising: a media delivery request receiver operable to receive requests for the media content from one or more of the plurality of client systems, the media content being stored in a memory and delivered via outbound media flows; a flow rate subsystem operable to: calculate a maximum bandwidth for each of the outbound media flows; calculate a target flow rate for each of the outbound media flows to be less than or equal to the maximum bandwidth for each of the outbound media flows; determine a sum of the target flow rates of the outbound media flows; and determine a relationship between the sum of the target flow rates of the outbound media flows and a disk read speed or a buffer read speed associated with the memory; a delivery subsystem operable to deliver a portion of a requested media content using a respective one of the outbound media flows, to each of the one or more of the plurality of client systems; and a media delivery scheduling subsystem operable to: determine when the delivery subsystem delivers at least a portion of the media content, dynamically adjust, based on the relationship, a current flow rate for each of the outbound media flows, in order to meet the target flow rate for each of the outbound media flows; and instruct the media delivery request receiver to refuse incoming media requests when the media delivery scheduling subsystem detects that the target flow rate, for each of the outbound media flows, will not be achieved if additional media content requests are accepted, or instruct the delivery subsystem to deliver a portion of a lower quality media content to at least one client system of the plurality of client systems, to meet the target flow rate for each of the outbound media flows. a media delivery request receiver operable to receive requests for the media content from one or more of the plurality of client systems, the media content being stored in a memory and delivered via outbound media flows; a flow rate subsystem operable to: calculate a maximum bandwidth for each of the outbound media flows; calculate a target flow rate for each of the outbound media flows to be less than or equal to the maximum bandwidth for each of the outbound media flows; determine a sum of the target flow rates of the outbound media flows; and determine a relationship between the sum of the target flow rates of the outbound media flows and a disk read speed or a buffer read speed associated with the memory; calculate a maximum bandwidth for each of the outbound media flows; calculate a target flow rate for each of the outbound media flows to be less than or equal to the maximum bandwidth for each of the outbound media flows; determine a sum of the target flow rates of the outbound media flows; and determine a relationship between the sum of the target flow rates of the outbound media flows and a disk read speed or a buffer read speed associated with the memory; a delivery subsystem operable to deliver a portion of a requested media content using a respective one of the outbound media flows, to each of the one or more of the plurality of client systems; and a media delivery scheduling subsystem operable to: determine when the delivery subsystem delivers at least a portion of the media content, dynamically adjust, based on the relationship, a current flow rate for each of the outbound media flows, in order to meet the target flow rate for each of the outbound media flows; and instruct the media delivery request receiver to refuse incoming media requests when the media delivery scheduling subsystem detects that the target flow rate, for each of the outbound media flows, will not be achieved if additional media content requests are accepted, or instruct the delivery subsystem to deliver a portion of a lower quality media content to at least one client system of the plurality of client systems, to meet the target flow rate for each of the outbound media flows. determine when the delivery subsystem delivers at least a portion of the media content, dynamically adjust, based on the relationship, a current flow rate for each of the outbound media flows, in order to meet the target flow rate for each of the outbound media flows; and instruct the media delivery request receiver to refuse incoming media requests when the media delivery scheduling subsystem detects that the target flow rate, for each of the outbound media flows, will not be achieved if additional media content requests are accepted, or instruct the delivery subsystem to deliver a portion of a lower quality media content to at least one client system of the plurality of client systems, to meet the target flow rate for each of the outbound media flows.