Patent ID: 7568034

Claim:
A method for distributing data over a wide area network, comprising: receiving at a master, coupled to a plurality of slaves, a slave state of a first slave of said plurality of slaves, wherein the slave state of the first slave includes a current file length, for each of a plurality of files stored at the first slave, the current file length of each respective file representing an amount of the respective file currently stored at the first slave; determining at said master that said first slave requires data; selecting at said master, in accordance with a predefined bandwidth resource allocation method, a second slave of said plurality of slaves from which to transfer said data to said first slave; scheduling at said master, a data transfer of said data from said second slave to said first slave; transmitting instructions from said master to said first slave, instructing said first slave to obtain said data from said second slave; and after transmitting the instructions, receiving from said first slave a revised state of said first slave, and subsequently repeating the determining, scheduling and transmitting operations.