<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - module-rtp-send floods the network with UDP packets, crippling it severely"
href="https://bugs.freedesktop.org/show_bug.cgi?id=44777#c22">Comment # 22</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - module-rtp-send floods the network with UDP packets, crippling it severely"
href="https://bugs.freedesktop.org/show_bug.cgi?id=44777">bug 44777</a>
from <span class="vcard"><a class="email" href="mailto:piotr@prokocim.org" title="Piotr Górski <piotr@prokocim.org>"> <span class="fn">Piotr Górski</span></a>
</span></b>
<pre>All problems with RTP module flooding network, Wifi are caused by lack of IGMP
support in rtp_send module.
When pulseaudio with rtp_recv module is started proper IGMPv2 signalling works
like it should:
root@orangepione:~# tshark -i eth0 -Y "igmp"
Capturing on 'eth0'
117 6.950723148 192.168.254.141 -> 239.255.1.56 IGMPv2 46 Membership Report
group 239.255.1.56
177 10.430705605 192.168.254.141 -> 239.255.1.56 IGMPv2 46 Membership Report
group 239.255.1.56
215 13.660683494 192.168.254.141 -> 239.255.1.56 IGMPv2 46 Membership Report
group 239.255.1.56
Pulseaudio creates Multicast group (I don't use default group). As IGMP
signalling is OK - IGMP capable switches enable that multicast group only on
ports that need it.
If pulseaudio is configured with rtp_send module - there is no IGMP signalling.
Looking at code of module-rtp-recv.c we can find:
mr4.imr_multiaddr = ((const struct sockaddr_in*) sa)->sin_addr;
r = setsockopt(fd, IPPROTO_IP, IP_ADD_MEMBERSHIP, &mr4,
sizeof(mr4));
IP_ADD_MEMBERSHIP tells kernel to join multicast group.
There is no such command is module-rtp-send.c
It needs fixing ASAP</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>