Patent ID: 8019862

Claim:
A method for estimating upload speeds of a plurality of hosts, the method comprising: sending a first bandwidth probe from a first host of the plurality of hosts to a second host of the plurality of hosts; receiving, at the first host, a second bandwidth probe sent from said second host; determining which of the first and second bandwidth probes was relatively slower; in a first instance when the first bandwidth probe was relatively slower than the second bandwidth probe, taking a speed of the first bandwidth probe as a first estimate of upload speed for the first host; and in a second instance when the first bandwidth probe was relatively faster than the second bandwidth probe: repeatedly exchanging, by the first host, one or more additional bandwidth probes with one or more additional hosts of the plurality of hosts until an individual one of the additional bandwidth probes sent from the first host to an individual one of the additional hosts is determined by the first host to be relatively slower than a corresponding one of the additional bandwidth probes received from the individual additional host, and taking a speed of the individual additional bandwidth probe sent from the first host that was determined to be relatively slower than the corresponding one of the additional bandwidth probes received from the individual additional host as the first estimate of upload speed for the first host.