刷新多播组成员身份 [英] Refresh multicast group membership

查看:124
本文介绍了刷新多播组成员身份的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

I have several embedded machines listening and streaming rtp audio data to a multicast group. They are connected to a smart managed switch (Netgear GS108Ev2) which does basic igmp snooping and multicast filtering on its ports, so that the rest of my (W)LAN doesn't get flooded.

开始时,一切正常约500-520秒.之后,他们将再接收任何数据,直到他们离开并再次加入该小组.我猜这是在超时后切换忘记"了联接.

At start everything works fine for about 500-520 seconds. After that, they don't receive any more data until they leave and join the group again. I guess the switch is "forgetting" about the join after a timeout.

是否有任何方法可以刷新组成员身份,即让交换机知道仍然有人在听,而不会丢失数据包?

Is there any way to refresh the group membership, i.e. letting the switch know, that there ist still someone listening, without losing packets?

系统信息:

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

推荐答案

这是组播/IGMP协议的工作方式.客户必须通过发送会员报告来定期加入该小组,否则将假定他在短暂的超时后离开了该小组.但是,这些报告通常仅在从本地多播路由器收到会员查询时才发送.您的客户要么没有收到查询,要么没有报告.

This is the way multicast / the IGMP protocol works. A client has to join the group periodically by sending a Membership Report or it will be assumed that he has left the group after some short timeout. However, those reports are usually sent only when receiving a Membership Query from the local multicast router. Either your clients don't receive the query or don't respond with a report.

尝试使用Wireshark之​​类的工具,以查看通过您的网络发送了哪些IGMP数据包.

Try to use a tool like wireshark in order to see which IGMP packets are sent through your network.

这篇关于刷新多播组成员身份的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆