本帖最后由 mxzy55560593 于 2014-02-13 12:12:31 编辑

解决方案 »

  1.   

    你的两种理解都是对的,不可靠就是说什么情况都可能发生(乱序、收不完整、全部收不到),因为internet太大,谁也不知道中间的线路和设备是否处于正常状态
      

  2.   

    UDP就是不可靠,就是说网络传输阶段什么都可能发生,所以自己要有重发等
      

  3.   

    两种理解是互斥的啊- -! 这样吧,一个更精确的例子
    客户端我用sendto发送4000个字节,注意,我只调用了一次sendto
    服务器又正好收到4000个字节
    那么请问: 这4000个是不是一定是值得信赖的,也就是没有乱序
      

  4.   


    我现在想知道
    如果我只调用了sendto一次,发送了4000个字节
    是不是就能肯定: 服务器要么正确有序的收到4000个字节,要么一个字节都收不到
      

  5.   

    不值得信赖,UDP通常用在语音聊天。为了保证你这4000个字节不丢失而且顺序正确,最保险的方法是使用TCP
      

  6.   

    就我个人而言,因为UDP不可靠,我在学习的时候压根就没学习UDP的那几个函数,我只把TCP的部分学习了。我就是觉得UDP不可靠没啥用,毕竟大多数时候我们都需要可靠的信息传输,谁愿意丢东西呢?与其发现错误重新传送,到不如把这个工作交给TCP,这样多方便