不知道多线程为什么可以提高下载速度。
带宽就那么多,多线程提高下载速度是否有限呢。我猜测多线程只是在下载大文件的时候,在提高文件读写速度上作贡献,间接提高网络下载速度。另外,flashget或者netants使用多线程时,每个线程对应不同的端口吗,对应不同的端口也许可以提高网络速度。不过同时用多个端口可能性不大。

解决方案 »

  1.   

    总速度不会超出带宽的限制多线程下载的时候
    Flashget会在本地开设n个端口(根据你的设定确定)
    本地的每一个端口和对方服务器连接,然后根据获得的文件大小
    判定每一个线程下载的起始字节数实现多线程功能举例:
    假设你从一个WEB Server下载大小为1G的文件,开了5个线程
    你使用 netstat 命令可以看到Flashget在本地开了多少端口
    假设看到的结果是:
    Remote            Local
    XXXX.COM:80      Flashget:4581
    XXXX.COM:80      Flashget:4582
    XXXX.COM:80      Flashget:4583
    XXXX.COM:80      Flashget:4584
    XXXX.COM:80      Flashget:4585
      

  2.   

    //============================
    另外,flashget或者netants使用多线程时,每个线程对应不同的端口吗,对应不同的端口也许可以提高网络速度。不过同时用多个端口可能性不大。
    //=============================
    但是实际上就是通过多个线程每个线程对应不同的端口
    这是我抓下来的:
    NetTransport.ex:608 TCP cui:1221 cui:0 LISTENING
    NetTransport.ex:608 TCP cui:1222 cui:0 LISTENING
    NetTransport.ex:608 TCP cui:1223 cui:0 LISTENING
    NetTransport.ex:608 TCP cui:1224 cui:0 LISTENING
    NetTransport.ex:608 TCP cui:1225 cui:0 LISTENING
    NetTransport.ex:608 TCP cui:1221 210.245.165.171:http ESTABLISHED
    NetTransport.ex:608 TCP cui:1222 210.245.165.171:http ESTABLISHED
    NetTransport.ex:608 TCP cui:1223 210.245.165.171:http ESTABLISHED
    NetTransport.ex:608 TCP cui:1224 210.245.165.171:http ESTABLISHED
    NetTransport.ex:608 TCP cui:1225 210.245.165.171:http ESTABLISHED
    //================================================================
    看见了吧,用本地的多个端口连接远程的同一个服务端口