1. A method comprising: receiving at a master server rank information from a media server, wherein the media server comprises a plurality of data movers, each data mover of the plurality of data movers is configured to monitor utilization of at least one resource used by the each data mover to process a data flow, the each data mover of the plurality of data movers is configured to determine an aggregate measure of response time for the each data mover based on a plurality of active data protection tasks, the rank information is calculated by the each data mover based upon the utilization of the at least one resource used by the each data mover to process the data flow and the aggregated measure of response time for the each data mover based on the plurality of active data protection tasks in response to detecting a change in the utilization of the at least one resource and a change in the aggregated response time, the each data mover of the plurality of data movers asynchronously transmits the rank information to the master server in response to the detecting the change in utilization of the at least one resource and the change in the aggregated response time, and processing the data flow is part of a first data protection task; storing the rank information at the master server as part of a list, wherein the list represents a collection of rank information received from the each data mover of the plurality of data movers; selecting a selected data mover from the plurality of data movers according to the rank information; in response to the selecting, scheduling the selected data mover to perform a second data protection task; and receiving at the master server updated rank information from the media server, wherein the each data mover of the plurality of data movers calculates the updated rank information in response to the scheduling, and the updated rank information is based on the change in the utilization of the at least one resource and the change in the aggregated response time.