2011-06-06 99 views
3

我的應用程序將使用proxys,其中幾個,我如何找出每個代理提供的下載速度,我想先使用最高速度的代理,尋找簡單的實施。措施下載速度

請提供建議,粗略的想法也歡迎。

預先感謝您。

回答

2

您可以使用動態生成的後臺工作人員從每個代理

推出下載使用基於 http://www.devtoolshed.com/content/c-download-file-progress-bar

的算法可以使用ReportProgress手柄來衡量的下載速度和停止後臺工作具有最高的延遲。

有了這個技術,你可以選擇從每個代理只下載了5-10%,然後丟棄每秒收到的最慢

2

你還沒有提供任何關於你如何實現這個的細節 - 你已經把它標記爲c#和.net - 這是否意味着你將用這些程序構建你的測試工具?

簡單的答案是測量下載已知大小的文件需要多長時間。但是真的需要從不同位置下載大量文件,然後根據大小繪製所需時間 - 然後對點進行擬合(使用最少r^2是最簡單的方法)。它跨越時間訪問的點將會給你平均的端到端延遲,斜率就是平均帶寬。注意,這與連接的帶寬並不相同,只是衡量有效吞吐量。

OTOH如果要使用服務器的真實Web流量來測量長時間內的有效帶寬和延遲,請查看Yahoo Boomerang。

1

威爾總字節數什麼的帶寬不會告訴或加速您的接收。當然,必須每秒精確計算一次。

但是,在任何時間點,只有一個代理流可以使流量正確?以及哪個代理獲得更多的時間片,以獲得更多的時間帶寬。

希望我的理解是對的!如果沒有,道歉。