开发者

Measure Download Speed

I application will be using proxys, a few of them, ho开发者_StackOverflow社区w do i find out the download speed provided by each proxy, i want to use the proxy with the highest speed first, looking for easy implementation.

Please provide suggestions, rough ideas also welcome.

Thank you in advance.


You can use several background workers created dynamically to launch a download from each proxy

Using an algorithm based on http://www.devtoolshed.com/content/c-download-file-progress-bar

you can use the ReportProgress handle to measure the download speed and stop the background worker that has the highest latency.

With this technique you can choose to download just the 5-10% from each proxy and then discard the slowest


You've not provided any details of how you propose implementing this - you've tagged this as c# and .net - does that mean you'll be building your test tool with these programs?

The simple answer is to measure how long it takes to download a file of known size. But really you need to download lots of files from different locations then plot the time taken against the size - then fit a line to the points (using least r^2 is the simplest approach). The point where it crosses the time access will give you the average end-to-end latency and the slope is the average bandwidth. NB this is not the same thing as the bandwidth of the connection - jsut a measure of effective throughput.

OTOH if you want to measure effective bandwidth and latency over a long period of time using real web traffic from your server, have a look at Yahoo Boomerang.


Will Total Bytes received per sec will not tell whats the bandwidth or speed your receiving. Of course it has to be calculated every sec for accuracy.

But again, at any point of time only one proxy stream can get traffic into right? and which proxy gets more time slice for larger portion of time then it has more bandwidth.

Hope my understanding is right!! If not, apologies.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜