问题标签 [unicast]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
udp - 设置为接收多播数据包的 IPv6 UDP 套接字是否也能够接收单播数据包?
我有一个小客户端程序,它在 IPv6 多播组(例如 ff12::blah:blah%en0)上侦听服务器发出的多播数据包。它运作良好。
服务器有时还想向我的客户端发送一个单播数据包(因为如果该数据包仅与一个客户端相关,那么用它来打扰多播组的所有其他成员是没有意义的)。所以我的服务器只是对我的客户端的 IP 地址和客户端的 IPv6 多播套接字正在侦听的端口执行 sendto()。
如果我的客户端在 MacOS/X 下运行,这可以正常工作;单播数据包由接收多播数据包的同一个套接字接收。在 Windows 下,OTOH,客户端永远不会收到单播数据包(即使它确实收到了多播数据包而没有任何问题)。
我的问题是,是否期望多播侦听器 IPv6 UDP 套接字也应该能够在同一端口上接收单播数据包(在这种情况下,我可能做错了什么,或者 Windows 配置错误)?或者这是在 MacOS/X 下“恰好可以工作”但不能保证的东西,所以它在 Windows 下对我不起作用的事实只是意味着我有错误的期望?
publish-subscribe - 多播可以与 OMG DDS 标准中的可靠消息传递一起使用,还是需要单播?
我目前正在尝试弄清楚DDS
我编写的应用程序。
我的作者和读者目前具有可靠性,因此如果读者错过了一条消息,作者将重新发布该消息。我还使用默认的多播,而不是使用单播来发现发布者和订阅者。
根据多播协议,我只使用端口7000
并且7001
需要打开。但是,当我使用wireshark 进行分析时,我看到端口7010
和7011
(单播)端口也是打开的。
经过一番挖掘,我发现了这个链接,似乎要为读者和作者使用可靠性,你需要启用单播,这就是为什么单播端口也打开并被使用的原因。
是否必须真正启用单播才能可靠地传递消息,如果需要,为什么需要这样做,以及为什么多播不能执行此功能?
udp - 如何在standalone-ha.xml 中将 Jgroups UDP 设置为单播而不是默认多播
Jgroups 默认使用“IP 多播”向所有成员发送消息(UDP)并用于发现初始成员。但是,如果无法使用多播,则可以将 UDP 配置为发送多条单播消息而不是一条多播消息。要配置UDP 使用多个单播消息来发送组消息而不是使用 IP 多播,必须将 ip_mcast 属性设置为 false。” (根据 jboss 文档https://developer.jboss.org/)
我的问题是如何在 Wildfly 中将“ip_mcast”值传递给 false?下面是standalone-ha.xml 中的示例jgroups 子系统。在 xsd 中,我看不到传递此值的方法。请帮忙!!
testing - Bluez 5 Set L2CAP 扩展功能掩码
我正在尝试设置我的 L2CAP 扩展功能掩码以启用单播无连接数据,以完成蓝牙签名认证。我似乎找不到任何地方可以做到这一点。我试图通过的特定蓝牙 PTS 测试如下:
TC_CLS_UCD_BV_01_C:验证 IUT 在 L2CAP 扩展功能掩码中设置了 UCD 位,以指示支持接收单播无连接数据...
有人知道怎么做这个吗?
谢谢
network-programming - UDP单播比广播更可靠?
我们有一个当前支持单播和广播的网络引擎——到目前为止我们一直在使用单播,但我正在探索广播功能以减少网络流量。
我的测试似乎表明单播比广播更可靠——这不是我期望看到的(我没有强大的网络背景)。
例如,在一个简单的测试场景中,数据包通过千兆以太网 LAN 从主机发送到客户端 - 我可以每秒单播 15,000 个 1000 字节数据包而不会丢失数据包。如果我切换到广播,我只能管理大约 1200 个 1000 字节的数据包,然后遇到 +/- 20% 的数据包丢失。
这是预期的吗?在阅读有关单播和广播之间差异的信息时,我无法找到这个特定问题的明确答案。
如果这确实是预期的行为,那么在这方面(“可靠性”)多播会更类似于单播而不是广播吗?
测试详情
我开发了一个应用程序,它允许操纵各种设置(发送速率、数据包大小、每次“迭代”发送的数据包数量等)。我在本地运行了这个应用程序的几个实例,然后在网络上的其他 PC 上运行了更多实例(我只在我的 PC 和另一台 PC 上运行了一个实例)。
每个数据包都包含发送它的应用程序实例的名称、一个整数 ID(每次应用程序发送数据包时递增)和一个有效负载(通常为 0、500、1000 或 1400 字节大)。
当收到一个数据包时,会检查 ID 字段并确定它是否是预期的 ID(我跟踪我希望从每个应用程序实例接收的下一个 ID)。晚于预期的 ID 表明数据包已丢失或无序到达,早于预期的 ID 表明数据包已无序到达。
发送速率可以修改,默认我使用 20ms 延迟。每次发送的数据包数量也可以修改 - 例如,我可以指定我想每 20 毫秒发送 50 个数据包(每个数据包都有一个唯一的 ID)。
c# - 通过约定配置的事件不会导致订阅
我的应用程序正在尝试从端点接收事件。
如果我显式订阅<>(),我会在发布端点看到订阅。如果我尝试通过配置约定来获得相同的结果,它会失败。
我错过了什么?
我的配置如下所示:
最相关的文档和示例代码似乎没有提到我应该做的任何其他事情https://docs.particular.net/nservicebus/messaging/conventions?version=core_5
java - MulticastSocket 确定收到的消息是否为单播
我的服务器目前能够发送和接收多播数据包。我正在添加接收和发送单播数据包的能力。所以我创建了“DatagramSocket uniRecv”和“DatagramSocket uniSend”来模仿多播的完成方式。问题是当我收到一个数据包时,我需要一种方法来判断它是多播还是单播。我认为“multiRecv.receive(packet)”只适用于多播数据包,但显然它也适用于单播数据包。有没有办法在执行 .receive(packet) 之前或之后判断它是哪种数据包?
我需要知道,因为当我发出回复时,必须使用与收到回复相同的方法来完成。因此,如果我收到单播,我需要发送单播,如果我收到多播,我需要发送多播。
另一方面,MulticastSocket 也可以发送单播消息吗?
编辑:虽然接受的帖子是真实的,但我能够找到解决方法。通过强制服务器将数据包发送给我,使用不同的端口进行单播和多播,我能够通过使用 packet.getPort() 找出它是哪一个。
tcp - JBoss 节点未加入 tcp 独立集群
我正在尝试设置一个独立的 TCP 集群。我看不到两个节点加入集群。
流程截图如下:
jboss 21682 11484 0 07:56 pts/0 00:00:00 /bin/sh /data/jboss/jboss-eap-6.4/bin/standalone.sh -c Standalone-full-ha.xml -b 10.21.141.109 jboss 21789 21682 1 07:56 pts/0 00:00:38 /usr/lib/jvm/java-1.8.0/bin/java -D[独立] -server -XX:+UseCompressedOops -verbose:gc -Xloggc:/ data/jboss/jboss-eap-6.4/standalone/log/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=3M -XX:-TraceClassUnloading - Xms1303m -Xmx1303m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djboss.modules.policy-permissions=true - Dorg.jboss.boot.log.file=/data/jboss/jboss-eap-6.4/standalone/log/server.log -Dlogging.configuration=file:/data/jboss/jboss-eap-6.4/standalone/configuration/记录。属性 -jar /data/jboss/jboss-eap-6.4/jboss-modules.jar -mp /data/jboss/jboss-eap-6.4/modules -jaxpmodule javax.xml.jaxp-provider org.jboss.as.standalone - Djboss.home.dir=/data/jboss/jboss-eap-6.4 -Djboss.server.base.dir=/data/jboss/jboss-eap-6.4/standalone -c Standalone-full-ha.xml -b 10.21。 141.109
jboss 28082 25185 0 07:56 pts/0 00:00:00 /bin/sh /data/jboss/jboss-eap-6.4/bin/standalone.sh -c Standalone-full-ha.xml -b 10.21.142.37 jboss 28173 28082 0 07:56 pts/0 00:00:27 java -D[Standalone] -server -XX:+UseCompressedOops -verbose:gc -Xloggc:/data/jboss/jboss-eap-6.4/standalone/log/gc .log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=3M -XX:-TraceClassUnloading -Xms1303m -Xmx1303m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack =true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djboss.modules.policy-permissions=true -Dorg.jboss.boot.log.file=/data/jboss/ jboss-eap-6.4/standalone/log/server.log -Dlogging.configuration=file:/data/jboss/jboss-eap-6.4/standalone/configuration/logging.properties -jar /data/jboss/jboss-eap-6.4 /jboss 模块。jar -mp /data/jboss/jboss-eap-6.4/modules -jaxpmodule javax.xml.jaxp-provider org.jboss.as.standalone -Djboss.home.dir=/data/jboss/jboss-eap-6.4 -Djboss .server.base.dir=/data/jboss/jboss-eap-6.4/standalone -c Standalone-full-ha.xml -b 10.21.142.37
server.log 条目:
07:56:57,757 INFO [stdout] (ServerService 线程池 -- 67) --------------------------------- ---------------------------------- 07:56:57,757 INFO [stdout] (ServerService 线程池 -- 67 ) GMS: address=pkumarips045001/web, cluster=web, 物理地址=10.21.141.109:7600 07:56:57,758 INFO [stdout] (ServerService Thread Pool -- 67) ------------ -------------------------------------------------- ----- 07:56:57,757 INFO [stdout] (ServerService 线程池 -- 67) 07:56:57,757 INFO [stdout] (ServerService 线程池 -- 67) ----------- -------------------------------------------------- ------ 07:56:57,757 INFO [stdout] (ServerService 线程池 -- 67) GMS: address=pkumarips045001/web, cluster=web, 物理地址=10.21.141.109:7600 07:56:57,758 INFO [stdout] (ServerService 线程池 -- 67) ------------------------------------------------- ------------------------------ 07:57:00,776 信息 [org.infinispan.remoting.transport.jgroups.JGroupsTransport] ( ServerService 线程池 -- 67)ISPN000094:收到新的集群视图:[pkumarips045001/web|0] [pkumarips045001/web]
请求您的帮助。
谢谢你。
gnuradio - GNURadio 中的单播消息
我有一台 USRP B210 和 E312,它们之间传输的所有消息都是通过广播消息。
有没有办法在 GNURadio 中传输单播消息(点对点)?
如果是的话,你能帮我举个例子吗?
sockets - 如何通过广播将IP数据包发送到直接连接的Peer?
让我们两台机器直接连接在点对点链路上:
A如何仅通过广播向B发送IP数据包?
如果 A 用Dest mac = ff:ff:ff:ff:ff:ff
anddest ip : 192.168.4.255
制作数据包,这会使数据包发往 B 吗?如果是,有人可以解释这是如何工作的吗?