如何测试两个服务器之间的多播 UDP 连接?

如何测试两个服务器之间的多播 UDP 连接?

我在同一个子网上有两台服务器。我安装了一个应用程序,它使用多播 UDP 在两台服务器之间传播事件并保持同步。

这似乎没有发生,因此我想确保多播 UDP 消息能够顺利通过,这是我的第一步。

服务器运行的是Windows 2008 R2。

如何测试两个服务器之间的多播 UDP 连接?

答案1

答案2

iperf 是一款很棒的工具,但安装过程可能很长;大多数存储库都没有此包。根据您的发行版,netcat 几乎在每个存储库中都可用

您也可以使用 netcat:

服务器:nc -lu -p 端口号

客户端:nc -vzu 服务器 IP 端口号

答案3

我强烈推荐套接字性能测试

它是检查 TCP 和 UDP(包括 UDP 多播)性能的绝佳工具。

多播 UDP 流的示例:

  • 在服务器上:sockperf server -i 224.4.4.4 -p 1234
  • 在客户端上:sockperf ping-pong -i 224.4.4.4 -p 1234

答案4

如果一台服务器已在监听多播(netstat -g将会告诉您是否如此)。

您可以使用普通的 netcat 进行广播,并使用 tcpdump 进行检测。

向多播地址发送固定大小的消息。

echo -n 1234567890| ncat -vu 224.4.4.4 4444

你应该看到一个 10 字节的 UDP 数据包到达tcpdump服务器

# tcpdump -i eth0 host 224.4.4.4 and port 444
09:23:26.694624 IP srchost.56837 > 224.4.4.4.4444: UDP, length 10

如果您没有 tcpdump,wireshark 或 pcap 也会看到它。

tcpdump -A如果您想确认消息是,请使用1234567890

相关内容