我一直遇到我的服务器软件的问题,如果一个线程加入多播,另一个线程可能不会在同一时刻在不同的多播上接收传入的数据报 . 我不确定这是否可以被视为由于UDP多播的“不可靠性”导致的预期损失,或者如果这是一个严重的驱动程序/ nic缺陷 . 数据包捕获也显示了那一刻的差距 .

我在多个nic模型和制造商(包括Intel和HP)上观察到了这个问题 . 我觉得这是一个尼特或驱动程序问题的原因是,如果我运行一个将接口置于混杂模式的数据包嗅探器,问题根本不会发生 .

是否有可能在IGMP加入或离开时更新nic中的转发表时,它只是在那时停止转发所有多播流量?这可以接受吗?