做了类似QQ的东西,当然和QQ比差远了.就是向某个人传文件的速度很慢,但传过去的文件是完整的.传的过程中双方有一次确认收到包的握手.还有发送的包如果比较大(几十K,当然不会超过65535 BYTE的)时,丢包很严重,如果包只有几K时情况好的多.但发7M的文件要10分钟还多一点.QQ就快多了.
想问一下各位兄弟有没有什么高见?
实在不行我想用2条线程发,对方用2条收了.

解决方案 »

  1.   

    把文件分隔为多个小包方式,采用断点续传,且每个小包采用校验,解决数据丢失,小包方式最好小于0。5kbyte
      

  2.   

    用 UDP 伟文件,时间都浪费到中间的应答上面了.如果对速度要求比较高,那还是用 TCP 吧.
    TCP 不用中间应答都可以的.
      

  3.   

    UDP不支持流量控制,要自己做。
    否则从高速内网向Internet的接收者传送文件,很多包都被中间路由丢弃了,需要大量重传,当然慢了。
    另外通过Internet的传送,为提高效率,包的大小应该不超过路由MTU的大小(通常在1500字节)。
      

  4.   

    看看这个吧: http://www.realoa.net