Re: Multicast MAC and Unicast IP Address



Rich Seifert wrote:
In article <4305c5d5$0$11080$e4fe514c@xxxxxxxxxxxxxx>,
 Geert Jan de Groot <> wrote:


Is it allowed to have a multicast MAC address linked to a unicast IP
address? If not what standard specifies this?
I know that this mechanism is used for clustering but that certain vendors
do not like it very much. I am interested in knowing what the rules are
because up to now everybody just told me that it is a strange way to use
multicast but some also said that it is illegal. Without proving it.

RFC1122, page 67: When a host sends a datagram to a link-layer broadcast address, the IP destination address MUST be a legal IP broadcast or IP multicast address.

        A host SHOULD silently discard a datagram that is received via
        a link-layer broadcast (see Section 2.4) but does not specify
        an IP multicast or broadcast destination address.

I can think of several stacks (including ones on which I've worked myself),
that would fail in the scenario you describe: they flag the packet
as broadcast (multicast = limited broadcast) and hence, for instance TCP SYN packets are dropped on the floor in this case.





The RFC discusses *broadcasts*; it is moot on the issue of *multicasts*. A multicast is NOT a broadcast; the standards treat them as distinct entities. I believe that the use of a multicast MAC address to send a unicast IP packet to a group of devices (e.g., a cluster) is a perfectly correct use of link-layer multicast, assuming that the cluster software knows how to deal with the fact that multiple devices are receiving the same IP datagram.


The reason for the wording of RFC1122 becomes clearer when one considers that some link-layer technologies provide broadcast capability, but not Ethernet-style multicast (e.g., ARCnet). The RFC simply says that link-layer broadcast can be used to send IP broadcast or IP multicasts, but not IP unicasts. The RFC says nothing about how one would use an Ethernet-style multicast mechanism.


-- Rich Seifert Networks and Communications Consulting 21885 Bear Creek Way (408) 395-5700 Los Gatos, CA 95033 (408) 228-0803 FAX

Send replies to: usenet at richseifert dot com

Hi Rich,

as I am no implementor or LAN HW I ask myself the question:

How if not by looking at the multicast bit does a switch decide to multicast/broadcast a frame? I doubt that many implementors make a distinction between broadcast and multicast by looking at more bits than that one.

But you are right, it's not specified clear enough.

Thanks for your suggestion.

Mat

----------------------------------------------------------------------
-------------
Matthias Schärer
Network Engineer, Instructor
Mob: +41 79 419 4557

http://www.anyweb.ch - All you want to know about taking care of
networks is here.
http://www.anyweb-osys.ch - All you want to know about networking
training is here.
(Don't be afraid to ask.)

In case of trouble with resending emails to me
mailto:matthias.schaerer@xxxxxxxxx
.



Relevant Pages

  • Wireless LAN unter Gentoo Linux auf Acer Aspire 3022
    ... UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 ... eth1 Link encap:UNSPEC HWaddr ... Date format: Timestamp ...
    (de.comp.os.unix.linux.hardware)
  • Re: [Full-Disclosure] Windows SP2 firewall: Famous for 3 seconds?
    ... > | Multicast and broadcast network traffic differ from unicast traffic ... > | number of scenarios from working, ... This has much bigger significance for IPv6 where ARP messages have been ...
    (Full-Disclosure)
  • Re: vb6.0 udp multicast problem
    ... I use winsock withUDPfor ... broadcast in a mixed Windows / Irix environment. ... Keep in mind that the UNIX box is broadcasting multicast and ... Me.udpServer.RemoteHost = udpRemoteHost ...
    (microsoft.public.vb.general.discussion)
  • Re: When does Linux drop UDP packets?
    ... On Fri, 5 Jun 2009, Alexander Clouter wrote: ... It's dead easy to transmit and receive multicast traffic, ... By using broadcast traffic the load (okay, ... discovering that multicast can be used for device discovery rather than ...
    (Linux-Kernel)
  • Re: is there a way for a client to detect a server on the network
    ... >> broadcast over the network to discover availlable servers and the ... >> user could then select the server he prefers. ... > .NET remoting does not provide service discovery nor service dictionary, so> you need to do it yourself. ... >> network however this would take hours as it is far to slow> Ever heard about IP broadcast or multicast? ...
    (microsoft.public.dotnet.framework.remoting)