- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在创建 MulticastSocket 后加入多播组。
做类似的事情:
MulticastSocket mySocket = new MulticastSocket(4444);
mySocket.joinGroup(InetAddress.getByName("230.0.0.1")); // as an example
工作正常。但是,当我使用接受 SocketAddress 作为参数的 MulticastSocket 构造函数时,多播组未加入,需要单独调用 joinGroup()。
MulticastSocket mySocket = new MulticastSocket(new InetSocketAddress("230.0.0.1", 4444));
这是为什么?
谢谢!
最佳答案
除非我错了多播是通过向本地网络交换机注册(使用发送 IGMP 消息的 joinGroup
方法)实现的,然后交换机会将发送到多播地址的所有数据包转发到每个已注册的设备。如果您不调用 joinGroup
,则不会发送组注册消息,本地交换机不知道您关心这些消息,因此您实际上不会收到任何消息。
有些交换机在发送方面比其他交换机更严格:我见过一些交换机,其中设备可以在不注册的情况下发送到多播组,但不会接收到多播组的数据包,我还看到其他交换机设备必须注册才能成功发送到组播组的其他成员或接收发送到组播组的数据包。
关于java - MulticastSocket 中 joinGroup() 的用途,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6133480/
我的服务器当前能够发送和接收多播数据包。我还添加了接收和发送单播数据包的功能。因此,我创建了“DatagramSocket uniRecv”和“DatagramSocket uniSend”来模仿多播
我正在使用多播编写一个java聊天应用程序。客户端可以在它们之间进行通信,但它们也可以向服务器发送预定义的消息,服务器始终对相应的预定义消息有相同的答案。 客户端和服务器端都可以接收和发送消息。它们都
我正在尝试让多播套接字在“服务器”应用程序上工作,该应用程序将向一堆 Android 手机发送信息。负责设置套接字并发送一些数据的代码片段如下: private MulticastSocket
我正在编写一个通过 MulticastSocket 进行通信的 Android 应用程序。它基本上工作正常,但我遇到了一个奇怪的错误:每当连接中断并恢复时(例如设备短暂失去 WiFi 连接),应用程序
这个问题已经有答案了: 奥 git _a (1 个回答) 已关闭 9 年前。 我编写了一些应该从 MulticastSocket 接收数据的代码。由于某种原因,套接字永远不会接收。我已将其分解为下面的
我正在尝试在我的 PC(Ubuntu,客户端)和手机(Android,服务器)之间创建简单的多播通信。 单播/TCP 连接工作没有任何问题,定义的端口 (37659) 在 PC 和手机上均打开。尝试使
我正在研究多人游戏中服务器-客户端通信的结构。 我得出的结论是,UDP 是最佳选择,因为它采用“一劳永逸”的使用方式,即使数据包丢失也不会阻止应用程序。我还将使用 TCP 发送需要可靠性的数据包,例如
我正在尝试订阅一个特定的市场数据提要,通过 FAST 协议(protocol)以多播方式分发。在Java中,有MulticastSocket,也有DatagramChannel支持多播。 我使用的
尝试调用 MulticastSocket 上的 joinGroup(addr) 时出现 SocketException。这只发生在我们设置为在机器启动时自动启动我们的应用程序的 Windows 机器上
我在 Android 中有一个应用程序使用 MulticastSocket 进行通信。我想在 J2ME 中编写类似的应用程序,使用 MulticastSocket 通过 WiFi 与 Android
我正在尝试在 Java 上执行一个简单的多播套接字示例。 MulticastSocket s = new MulticastSocket(6789); InetAddress group = In
我有 2 个线程想要调用: multicastSocket.send(dP1) 和 multicastSocket.send(dP2) 分别,其中dP1和dP2是不同的DatagramPacket对象
我有两个线程。第一个在循环中发送带有 MulticastSocket 的数据报;第二个线程在循环中使用相同的 MulticastSocket 实例接收数据报。 它似乎工作正常,但我仍然有疑问。 这两个
我开发客户端-服务器应用程序,实时工作。服务器和客户端通过小消息交换,所以我选择 UDP 作为我的体系结构(正如网络中许多文章所建议的那样)。使用默认 java 的 DatagramSocket/Da
我有一些线程在同一个 MulticastSocket 上写入(取决于调度,可能会发生多于一个线程同时在 MulticastSocket 上写入)。我是否必须通过使用某种形式的锁定让他们在每个计时器上写
我正在尝试在创建 MulticastSocket 后加入多播组。 做类似的事情: MulticastSocket mySocket = new MulticastSocket(4444); mySoc
当一个服务器向多个客户端广播时,哪个实现更快/更有效:MulticastSocket 或 DatagramSocket? 也请大家讨论一下,谢谢! 传递的消息涉及字符串和 float 。 最佳答案 决
我正在推理我的应用程序中的多播套接字线程安全性。首先,我有多个线程共享同一个多播套接字实例,该多播套接字用于加入同一端口上的不同组。这是我的问题: 我是否必须同步对 joinGroup() 和 lea
我可能对此处的绑定(bind)一词有根本的误解,但我对 MulticastSocket 的用法感到困惑。它是构造函数。他们不会做我理解他们应该做的事情,因此任何能帮助我消除误解的人都将不胜感激。 首先
我开始使用 MulticastSocket 编写代码,尝试制作一个简单的应用程序,使用客户端和服务器来发送消息。 我为服务器准备的代码: import java.io.IOException;
我是一名优秀的程序员,十分优秀!