[En-Nut-Discussion] Where are things at with Multicast UDP support

Bernd Walter enut at cicely.de
Wed May 25 11:20:01 CEST 2011


On Wed, May 25, 2011 at 09:01:56AM +0200, Michael Fischer wrote:
> Hello Henrik,
> 
>  >I for example ended up to simply patch the NIC driver (AVR, RTL8019AS)
>  >to support multicast. However this patch is hard-coded to the
>  >01.00.5e.ff.ff.fa address for UPnP SSDP, so not usable in a generic context.
> Is it possible to get this patch? Than I can try to port this feature to the
> EIR.

I've done the MAC-filter support more generally in the IPv6 branch,
since multicast is required for IPv6, but so far it is implemented for
the AT91-EMAC driver only, but it also handles IPv4 multicast.
Setup of multicast filters is device specific, although the style
used by the RTL8019AS is quite common - the AT91 however uses something
else.
Unfortunately I'm currently too short on time to continue working on
the branch, but will continue, since I need IPv6 myself.

Adding the MAC-filter is required in any case, but only sufficient if
there is no multicast switch in that LAN segment and you only want
to receive packets from the same LAN segment.
With the deployment of IP-TV multicast capable switches are more
common these days, so IGMP isn't really an option today.
Multicast capable switches are advised not to require IGMP for
224.0.0.1 to 224.0.0.9, so for those addresses you likely can live
without IGMP.
Also the existence of a multicast router daemon in the same network
can get you into trouble, if you don't do IGMP, since the daemon gets
the sender into registration mode, so it might not send the data at
all without anyone requesting the data via IGMP.

As a workaround you can implement IGMP in quick and dirty style,
that is just send regular group memebership messages, without caring
about the membership inquiries by the network.
The inquiries are just there to reduce membership traffic.
And not sending an end message means that you receive packets until
the membership times out.

-- 
B.Walter <bernd at bwct.de> http://www.bwct.de
Modbus/TCP Ethernet I/O Baugruppen, ARM basierte FreeBSD Rechner uvm.



More information about the En-Nut-Discussion mailing list