作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
在某些 Windows 机器上,我发现多播 socket.close 调用需要大约 3 分钟。
这可以在 Java 和 .NET 中跨各种不同类型的 NIC 和 Windows 风格重现。
它在大多数机器上不可重现,但拥有它的机器似乎遵循相同的模式。 TTL>1 导致 3 分钟 socket.close 并且任何 TTL==1 似乎几乎立即关闭套接字。
我的问题是有没有其他人看到这个问题,有没有人知道为什么会这样?
最佳答案
我想我已经解开了使用多播 TTL 时 Socket.Close()
需要 3 分钟才能完成的谜团>1:每次启动路由和 RAS 服务 (RRAS) 时都会发生。此 KB 条目对其进行了解释并提供了修补程序: http://support.microsoft.com/kb/2555948/en-us
在管理 shell 中使用 netsh interface ipv4 set global multicastforwarding=disabled
使 Socket.Close()
时间恢复正常。
关于java - TTL>1 时多播 socket.close 需要 3 分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10229226/
我是一名优秀的程序员,十分优秀!