首页 文章

在同一端口上发送/接收单播和组播UDP消息的优点/缺点?

提问于
浏览
1

我编写了一个C应用程序来发送/接收UDP消息通过套接字 . 该应用程序能够发送/接收多播和单播消息 .

我想知道,将单个端口用于多播和单播消息是否可以?或者,为单播和多播消息提供单独的端口更好吗?

我期待每秒大约100条消息,包括单播和多播 .

2 回答

  • 1

    应该没事 . 只是不要绑定到多播地址或网络接口地址(使用0.0.0.0:port)并且不要连接到远程地址 . 您将看到进入此端口的所有流量 .

  • 1

    只要您只有一个套接字,就可以同时接收单播和多播流量 .

    另一方面,如果在同一端口上打开了两个套接字,则可能会看到与单播相关的一些不一致行为 .

    在同一端口上有两个套接字,到达该点的任何多播流量都将被发送到两个套接字 . 但是,传入的单播流量要么随机出现在两个套接字上,要么出现在两个套接字中的一个上 . 确切的行为取决于相关的操作系统 .

    由于您希望同时接收单播和多播,因此请使用单个套接字 . Don 't use multiple sockets on the same port unless you'正在使用多播 only .

相关问题