IDM和Flashget如何......正在发挥作用? (最高速度下载)

时间:2012-09-25 12:57:38

标签: c# sockets download

我需要在C#中以最大可用下载速度下载。

FlashGet,IDM和其他下载管理器似乎能够。

3 个答案:

答案 0 :(得分:3)

没什么特别的,他们只是打开多个下载连接到同一个文件并使用分段下载,这样每个连接都会从文件中提取不同的字节范围。

有关详细信息,请参阅示例 - http://www.ehow.com/how-does_4615524_download-accelerator-work.html

对于C#方面,您可能希望查看现有的.NET项目,例如 - http://www.codeproject.com/Articles/21053/MyDownloader-A-Multi-thread-C-Segmented-Download-M

答案 1 :(得分:3)

神奇之处在于多重连接和http Range标题

假设文件大小为100MB。您打算打开10个连接。因此,对于每个连接,您都要下载10Mb。现在打开一个http连接并开始下载相同的文件,但是10个连接将分配给10个不同的段。

连接1发送Range: bytes=0-1048575

连接2发送Range: bytes=1048576-2097151

等等

答案 2 :(得分:2)

您必须在TCP协议中设置窗口大小。但是这个未来不是.net

的支持