刷新组播组成员资格

der*_*och 6 c linux multicast uclinux

我有几台嵌入式计算机正在监听并将rtp音频数据流式传输到多播组.它们连接到智能管理交换机(Netgear GS108Ev2),它在其端口上执行基本的igmp监听和多播过滤,因此我的(W)LAN的其余部分不会被淹没.

开始时一切正常,大约500-520秒.之后,他们在离开并再次加入该组之前不会再收到任何数据.我想交换机在超时后"忘记"加入了.

有没有办法刷新组成员资格,即让交换机知道,还有人在监听,而不会丢失数据包?

系统信息:

Arch: blackfin

# cat /proc/version
Linux version 2.6.28.10-ADI-2009R1-uCBF54x-EMM
(gcc version 4.3.3 (ADI) ) #158 PREEMPT Tue Jun 5 20:05:42 CEST 2012
Run Code Online (Sandbox Code Playgroud)

sca*_*cai 3

这就是多播/IGMP 协议的工作方式。客户端必须通过发送成员报告定期加入该组,否则将假定他在短暂的超时后已离开该组。然而,这些报告通常仅在从本地多播路由器接收到成员资格查询时才发送。您的客户要么没有收到查询,要么没有回复报告。

尝试使用像wireshark这样的工具来查看哪些IGMP数据包通过您的网络发送。