花时间研究一下,http://curl.haxx.se/libcurl,应该比自己去写省时间,

解决方案 »

  1.   

    本帖最后由 oyljerry 于 2014-01-16 23:34:23 编辑
      

  2.   

    http://download.csdn.net/detail/robertbaker/6853795
    用 libevent http 做服务器,然后就可以用 URLDownload windows API(名字记不太清了)下栽, perfect
      

  3.   

    sample 里面有 http_server.c,good luck!
      

  4.   

    感觉楼主是想自己写个文件传输。
    支持这样做,即便现在第三方库很多,但是用好的基础还是你理解它。1、我同意楼上这些高手说的方式。
    2、文件传输,发送缓冲区和接收缓冲区应开得大些,能有效提高效率。
    3、如果你发送端要自己拆解发送,则尽量增加单次发送容量,减少发送次数。当然如果你整体投进去,我就不说了。
    4、选择合适的模型,select、asyncselect、eventselect都行,不建议其他模型。
    5、发送端一定要等接收端先close/shutdown,自己确认后再close。
    6、有时间学习一下qos。现在这个版本是qWAVE。我曾经以为自己做的文件传输吞吐量远高于windows的文件传输而自豪,但后来发现当服务负载不断增加时,交换设备由于匮乏带宽而造成的tcp慢启动和tcp全局同步使得数据传输效率不稳定,且效率更加低。能想到的就这些了,希望能对你有用。
      

  5.   

    典型CS模型,传输文件用套接字,遍历文件用Win32的API,也可以用MFC的CFile类,建议新起线程来实现传输过程,这样会比较快,有疑问可以发邮件[email protected],这个东西,我以前做过,不过只是单个文件发送