Java - 通过MulticastSocket发送UDP数据包来减少UDP数据包的生存时间?

标签 java sockets udp multicast

我需要发送一些无法到达目的地的 UDP 数据包(生存时间值非常小)。我正在使用 Java 工作,我不想仅仅为了设置几个数据包的 TTL 值而为 Windows、Ubuntu 和 Mac 编写和编译 native 代码。我注意到 java.net.MulticastSocket 有一个“设置生存时间”选项,并且它扩展了 DatagramSocket。即使短期数据包没有进行多播,我是否可以通过具有较小 TTL 值的 MulticastSocket 而不是通过 DatagramSocket 发送短期数据包?这行得通吗?

最佳答案

没有。它不适用于所有数据包。 MulticastSocket.setTimeToLive(0) 不会影响通过 MulticastSocket 发送的正常 UDP 流量 - 它只会影响作为多播一部分发送的数据包。

关于Java - 通过MulticastSocket发送UDP数据包来减少UDP数据包的生存时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31017592/

相关文章:

java - Android 如何使用 location.distanceTo()

c - 框成一个大的一维数组

sockets - 使用中间主机建立 TCP Socket 连接

c++ - 为什么在关闭初始程序后我在 ncat 上看不到 UDP?

docker - docker 容器之间丢失 UDP 数据包

c - Windows套接字程序未收到udp数据

Java正则表达式比较组和字符串

java - 如何从 Android 中的 Web 服务检索二进制数据?

java - javamail中有没有同时搜索所有邮箱的解决方案?

java - 客户端在不接受的情况下连接到 ServerSocket - 为什么?