我在交换机中使用启用了 IGMP 监听的多播通信,我有 6 个节点(A、B、C、D、E、F),3 个将数据发送到不同的多播地址,3 个从每个多播地址同时接收数据时间。第一种情况,A发给mcast_addr1,B发给mcast_addr2,我在D、E节点运行receiver程序,大家对每个组播地址做JOIN,D和E节点可以接收到流量组播。第二种情况是,A 发送到 mcast_addr1,B 发送到 mcast_addr2,C 发送到 mcast_addr3,我在节点中运行接收程序,首先在 D,然后是 E,最后是 F,仅在节点 E 和 F 中接收流量组播,它们是最后两个加入多播地址的节点。我可以通过 tcpdump 看到发送方将数据发送到多播地址。
如果我在不同时间运行第二种方案,则在节点 D、E 和 F 处接收到流量。
简而言之,流量仅由加入多播地址的最后两个节点接收。
交换机为 D-Link DGS-1248T、IGMPv3 和 OS Centos 6.5(内核 2.6.32-431.20.3)
任何人都知道 IGMP 有一些限制?有什么建议么?
问候, 拉