UDP包在同一子网中有些机器可以收到,有些机器收不到是什么问题?用ping命令都可以通过。

解决方案 »

  1.   

    路由没有问题,在同一个子网没有防火墙,不知道这个会与switch有关系吗?
      

  2.   

    你是用广播或多播吗,不然只能有一台机器收到。另外,接收的机器要先运行,等待你机器的数据。这有socket UDP例子,找一个试试:
    http://download.csdn.net/detail/geoff08zhang/4571358
      

  3.   

    UDP包含单播、多播、广播。你是哪一种?
    首先确定都在同一个子网,互相能ping通。
    单播的话,主要是看看防火墙了。其他情况没理由收不到。
      

  4.   

    谢谢大家,问题已经找到了,是因为网络交换机设置造成UDP包延迟时间过长造成的,但是还是不太懂为什么延迟会造成丢包,怎么样才能修改程序减少延迟丢包?
      

  5.   


    我用的是多播,只是在指定的group ip上才能收到。
      

  6.   

    UDP本身就是不保证,存在丢包的可能性
      

  7.   

    这个不好处理,因为UDP包本来就是不可靠的,存在丢包的可能。
    要么设置网络交换机,
    要么让收到包的机器给个回音,这样就知道哪些机器没收到,然后重新发包