The tale of a single MAC

Date: Mon, 3 Jan 2011 08:45:54 +1030
From: Mark Smith <nanog@85d5b20a518b8f6864949bd940457dc124746ddc.nosense.org>

Hi,

>
>
> >

<snip>

> >>
> >> Excellent example is, IIRC, the older sparc stuff, where the ethernet
> >> cards didn't have MAC addresses as part of the card, but were stored in
> >> non-volatile or battery backed memory.
> >
> > This was actually the intended way to use "MAC" addresses, to used as
> > host addresses rather than as individual interface addresses, according
> > to the following paper -
> >
> > "48-bit Absolute Internet and Ethernet Host Numbers"
> > Yogan K. Dalal and Robert S. Printis, July 1981
> > http://ethernethistory.typepad.com/papers/HostNumbers.pdf
>
> Yup.
> >
> > That paper also discusses why 48 bits were chosen as the size, despite
> > "Ethernet systems" being limited to 1024 hosts.
> >
> > I think things evolved into MAC per NIC because when add-in NICs
> > were invented there wasn't any appropriate non-volatile storage on the
> > host to store the address.
> >
> On really old Sun gear, the MAC address was stored on a separate ROM chip; if the
> motherboard was replaced, you'd just move the ROM chip to the new board.
>
> I'm not sure what you mean, though, when you say "when add-in NICs were
> invented" -- the Ethernet cards I used in 1982 plugged into Unibus slots
> on our VAXen, so that goes back quite a ways...
>

More that as add-in cards supplied their own "storage" for the MAC
address, rather than expecting it from the host (e.g. something like
MAC addresses set by init scripts at boot or the ROM chip you
mentioned on Suns), this has now evolved into an expected model of a
MAC address tightly bound to an Ethernet interface and supplied by the
Ethernet interface e.g. by an add-in board if one is added. Now that
this model as been around for a long time, people find it a bit strange
when MAC addresses aren't as tightly bound to a NIC/Ethernet interface.
This is all speculation on my part though, I'd be curious if the
reasons are different.

When I first read that paper, it was really quite surprising that "MAC"
addresses were designed to be more general host addresses/identifiers
that were also to be used as Ethernet addresses. One example they talk
about is using them as unique host identifiers when sharing files via
floppy disk.

My Ethernet experience goes back before VAXen and the DEUNA to the
original DIX Ethernet 3Com and InterLAN cards. They had the MAC in a ROM
on the card set. (Yes, they were 2 card sets with a top of the card
ribbon cable between them.) Don't confuse this with the REALLY old
Ethernet V1 3Com and Wang 1 and 10 Mbps Ethernet, which I did not
personally deal with.

I worked with early Ethernet on quite a few systems and the only one I
ever ran into that implemented the single per-system hardware MAC was
Sun, though others (notably Digital, SGI and Xerox) would re-write all
MACs with a single value derived from the network address (DECnet or
XNS) at boot time. I seem to remember that Tektronix systems also did
this before they bought the rights to the CMU TCP-IP stack and moved to
IP.