c ++组播源

时间:2012-03-22 20:55:06

标签: c++ multicast

我正在尝试创建接收多播数据Feed的应用程序。

如果我有多个应用程序从同一个多播数据接口接收数据馈送,它是否会实际增加整体网络负载?

我的想法是,如果这3个应用程序监听相同的多播馈送,则数据应以某种方式立即发送到这些应用程序,因此它们不会增加整体网络负载。

有人可以就多播Feed的实际工作方式提供一些建议吗?

感谢。

1 个答案:

答案 0 :(得分:1)

如果您在单个硬件上有多个相同多播数据的消费应用程序,则必须将数据从内核模式复制到每个消费应用程序的用户空间。

  • 如果您在NIC上测量数据,则不会看到额外的带宽。
  • 当网络堆栈将多播消息复制到每个消费应用程序的用户空间时,您将看到在内核中花费的额外CPU负载。