要传输的文件100M左右!1,保证数据传输的正确性。
2,保证传输的效率性(真用cpu,内存都要小).用CSockey,tcp,udp,完成端口?
那个效率更高,为什么,参与的都有分,谢谢分享你的看法,意见!
我会另外发贴给分的!请大家放心!

解决方案 »

  1.   

    采用Udp就可以,我试过得,加上中间得握手,不会丢包得!
    而且速度很快,可以先做个测试程序试试!!!
      

  2.   

    还是TCP吧,UDP虽然说是在局域网中的可靠性很高,但是不怕一万就怕万一。如果是丢了一个包那么不是很麻烦?呵呵
      

  3.   

    to jiudon(有一种感觉,叫想你::) 
    加上中间的握手,你的方式是怎么握手?
    首先
    分包,
    发送要发送的包号(t yx),接收,返回收到的包.
    如果发现有丢包,就重发,是这样码?
      

  4.   

    上面写错啦,对不起
    to jiudon(有一种感觉,叫想你::) 
    加上中间的握手,你的方式是怎么握手?
    首先
    分包,
    发送要发送的包号(tcp),
    fa发送数据包(udp);
    接收数据包(udp),
    返回收到的包(tcp).
    如果发现有丢包,就重发,是这样码?
      

  5.   

    http://community.csdn.net/Expert/topic/3755/3755993.xml?temp=.1322595
      

  6.   

    有现成的tcp不用却要用udp自己处理握手,新鲜!
      

  7.   

    UDP要快,TCP要安全些
    只能两者中取舍
      

  8.   

    我用的方法是WSAEventSelect+Overlap IO
      

  9.   

    局域网就不用考虑什么模型了
    考虑TCP或者UDP吧如果发送100M的数据,跟windows的联机拷贝一样,TCP下CPU的肯定会慢下来UDP没试过,不过也应该跟TCP一样,CPU速度跟文件大小有关,跟网络状态没关吧
      

  10.   

    局域网??  我真是晕了楼上的几位了,传个文件嘛,
    简单的几行代码就搞定了,TCP,阻塞模型,开线程收发;
      

  11.   

    to gdy119(夜风微凉) 
    [email protected]
    看看你的代码先
      

  12.   

    to DentistryDoctor(雅克医生<改行做程序员了>) 
    WSAEventSelect+Overlap IO
    你有代码?我看看你的实现方法,谢谢!
    [email protected]
      

  13.   

    to  cococut(渔港人)
     给你发了一份,没怎么优化
      

  14.   

    我也学习一下
    我的email:[email protected]
      

  15.   

    to gdy119(夜风微凉) ,
    谢谢你给我发的原码,
    到这里去
    http://community.csdn.net/Expert/topic/3759/3759743.xml?temp=.5876428
    领分!
      

  16.   

    用Tcp比较好,如果要保证正确性,可以自己定义包,加入差错控制,用奇偶、CRC等校验,不过速度要慢一些。
      

  17.   

    大文件传输就是用TCP吧,虽然比udp占用资源多一点,但只要不是大规模集群文件传送,其实和udp没有明显区别,但是TCP面向连接,传输数据可靠,再自己实现一个CRC校验就更可靠了。
    UDP适合小数据报文的发送和接收,由于每个包头都要包括发送和接收的地址信息,大量发送时实际上会占用网络带宽
      

  18.   

    to : orbit(桔皮干了) 
    请大概的分析一下CRC校验的实现!to  llprince(历历) 
    请大概的分析一下差错控制,用奇偶谢谢两位!
      

  19.   

    你可以到www.vckbase.com内有一个语音传送的(局域网的),他的处理就非常好
    http://www.vckbase.com/document/viewdoc/?id=1080
      

  20.   

    to carbon107(&lt;软件开发思想.h&gt;) 
    该例子的思路就是先发送数据的长度,
    然后循环的发送该长度的数据,
    如果本次发送的数据+已经发送的长度<要数据的长度,
    就继续发送!如果上面的方法能够保证数据不丢失,
    为什么tcp上面的应用层还要加差错控制,用奇偶
    ,CRC校验之类的控制,
    请各位帮我分析一下!
      

  21.   

    另外,谁提供一个UDP局域网里发送文件的例子,200分奉上!
    谢谢!
      

  22.   

    在局域网内,UDP加上自己的控制,与TCP比感觉优势不是很明显。尤其是连续的文件,个人推荐用TCP。原因,引用“orbit(桔皮干了)”--UDP适合小数据报文的发送和接收,由于每个包头都要包括发送和接收的地址信息,大量发送时实际上会占用网络带宽。 另外,UDP在组播方面比较好用