【问题标题】:Broadcasting UDP in Netty 4.0在 Netty 4.0 中广播 UDP
【发布时间】:2015-11-09 18:29:48
【问题描述】:

我看过这个帖子,但我认为它并没有真正解决我的担忧: UDP broadcasting in netty 4.x.x

我的问题是可以一次将广播 UDP 数据包发送到多个不同的地址吗?在 TCP 中,我可以在通道组上调用 write,但在 UDP 中,所有内容都流经单个通道*(*如果我在这里也错了,请纠正我)。

由于是单通道,我必须将每个数据包分别写给它自己的接收者。现在我只是遍历我的每个地址并发送一个数据包......这似乎效率低下。

有没有更好的方法来做到这一点?

【问题讨论】:

    标签: java udp netty broadcast


    【解决方案1】:

    IP multicast 可能就是您要找的。您不需要任何特殊的语言框架支持即可使用它。您的对等方加入多播“组”,您向该组发送数据报,所有对等方都将收到它们。在这种情况下,“组”只是来自multicast ranges 之一的 IP 地址。

    这通常可以在单个子网中可靠地运行,并且如果您能够控制组织中将子网连接在一起的路由器和防火墙,则可以使其正常运行。通常会发现防火墙在默认情况下会阻止多播,并且必须将路由器配置为在子网之间路由多播流量。

    【讨论】:

    • 不幸的是,我的应用程序适用于更广泛的互联网,因此我无法控制所涉及的路由器。
    猜你喜欢
    • 2012-09-24
    • 2017-04-19
    • 2012-11-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-03
    • 2012-03-07
    • 2016-02-25
    • 2013-05-15
    相关资源
    最近更新 更多