我有一个程序每 50 毫秒发送一个 IPv6 多播数据包(到 ff12::2:0:8afb:382b:c053:85f%en1)。我让它在一个非常简单的单计算机 LAN 上运行(Mac mini <-wifi-> Linksys wifi 路由器 <-cat5-> DSL 调制解调器 <-> Internet)。在我的测试中,没有计算机加入这个多播组(即没有人在监听这些数据包)
我的问题是,当这个程序运行时,Mac 的 WiFi 性能下降了 50% 以上。据推测,问题在于所有这些多播数据包都占用了我的大量 WiFi 带宽并导致拥塞……但我根本不明白为什么要传输这些数据包。我的理解是多播使用生成树算法来确保多播数据包只路由到真正有兴趣接收它们的主机。如果这是真的,并且鉴于我的 LAN 上没有其他计算机加入到这个多播地址,我的 Mac 难道不应该意识到这一点并且实际上不发送任何数据包,除非/直到其他主机加入多播组?或者生成树剔除仅在交换机上实现,而不是由主机本身实现?