Subject: Re: Multicast ethernet question
To: Dave Huang <khym@bga.com>
From: Chirayu Patel <chirayu@idc.tandem.com>
List: tech-net
Date: 11/03/1997 09:45:18
On Sun, 2 Nov 1997, Dave Huang wrote:

> Hi folks, I've been working on a driver for the AMD MACE chip...
> currently, the driver doesn't support multicast yet. What's the right
> thing to do? Not set the IFF_MULTICAST flag, and return EINVAL for
> SIOCADD/DELMULTI?

Yup!

> 
> Also, how should I go about adding multicast support? The MACE has a
> 64-bit "logical address filter" register that's supposed to be for
> multicast. It works by calculating the CRC of the destination ethernet
> address (using the Ethernet FCS algorithm), and looking at the top 6 bits
> of the result. If the corresponding bit in the logical address filter is
> set, the chip signals that it's got a packet and passes it to the driver.
> Otherwise, it just ignores it.
> So, is that good enough for me, or do I have to then do my own comparison
> and see if it exactly matches one of the interface's multicast addresses
> before passing it on to ether_input()?

No you have to do your own comparison for the address. Sometimes you might
take packets for some other multicast packets not configured for your
interface.

Does your TCP/IP stack support Multicasting? If no, then unless you are
planning to make some other use for Multicasting (other than IP
multicasting) multicasting support in the driver might not be useful. 

 -- Chirayu

> 
> Name: Dave Huang     |   Mammal, mammal / their names are called /
> INet: khym@bga.com   |   they raise a paw / the bat, the cat /
> FurryMUCK: Dahan     |   dolphin and dog / koala bear and hog -- TMBG
> Dahan: Hani G Y+C 22 Y++ L+++ W- C++ T++ A+ E+ S++ V++ F- Q+++ P+ B+ PA+ PL++
> 
> 
>