Multicast MAC and Unicast IP Address

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.

So let me know if you know about a standard specifying this.

Thanks. Mat

Reply to
Matthias Schaerer
Loading thread data ...

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

Reply to
Rich Seifert

The default action of a switch is the same for both multicasts and broadcasts; the frame is forwarded onto all ports except the port on which the frame arrived. Thus, for this simple case, the switch need only look at the unicast/multicast bit, as you note.

The standards allow for more complex handling of multicast than this simple default behavior, however. Automatic multicast pruning (e.g., using GMRP) can restrict the propagation of specific multicast addresses onto specific ports. Manual configuration of the switch's forwarding tables (by a network administrator) can also be used to control the handling of specific multicast frames. In both of these cases, all 48 bits of the multicast must be examined in order to make the appropriate forwarding decision. From the switch designer's perspective, it may be easier to think of a multicast not as a "limited broadcast," but as a unicast that may be forwarded onto more than one port. The entire address is compared to the entries in a lookup table, which outputs the set of ports onto which to forward the frame. The output for a unicast will generally be only a single port; the output for a multicast will generally be one or more ports. Thus, unicasts and multicasts are processed identically.

-- 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

Reply to
Rich Seifert

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.

Geert Jan

Reply to
Geert Jan de Groot

Geert Jan,

thanks a lot for this hint. That almost explains everything. With some very good lawyers you could argue that multicast MAC addresses are not specified explicitly so they are not addressed in the broadcast section. But as you say: multicast = limited broadcast. Therefore Nokia, Microsoft and StoneSoft will have a hard time explaining their cluster implementations.

Cheers. The next Grolsch is >>Is it allowed to have a multicast MAC address linked to a unicast IP

Reply to
Matthias Schaerer

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

formatting link
- All you want to know about taking care of networks is here.
formatting link
- 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: snipped-for-privacy@anyweb.ch

Reply to
Matthias Schaerer

(snip)

(snip)

It also nicely removes the possibility of claiming compliance for a device that sends every packet as a link layer broadcast.

Still, I would not be surprised if some systems accept them.

-- glen

Reply to
glen herrmannsfeldt

And that would not necessarily be a Bad Thing (tm).

Seifert's Law of Networking #24: Be conservative in what you send, and liberal in what you receive.

That is, always send your own data in conformance with the protocol specification, but don't necessarily discard data received from others that is not in strict syntactical compliance, if you can reasonably make sense of the data and use it properly. "Forgive others their sins," so to speak.

-- 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

Reply to
Rich Seifert

Cabling-Design.com Forums website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.