3Mb Ethernet and Holy Wars

1/ Almost the 49th birthday of Ethernet (3Mb)! Here’s another History lesson and a story about my role in “holy wars” with 3Mb Ethernet and UNIX. Few people realize how long-lived and widespread 3Mb Ethernet became… 🧵

2/ May 22, 1973 is considered the birthday of “3 Megabit” Ethernet, when Bob Metcalfe published his memo at Xerox PARC detailing its planned operation.

3/ But it’s not really 3Mbps, it’s 2.94 Mbps. That speed is 1/2 of the clock rate of the Xerox Alto computer, and that clock rate was determined by the access speed of DRAM at the time.

4/ Bob Metcalfe liked to point out that the difference between 3Mbps and 2.94Mbps was greater than the Arpanet backbone speeds back then!

5/ By 1980 or so, 3Mb Ethernet was pretty common within Xerox, and was spreading to partner universities like Stanford and CalTech. There were a number of other computers and printers designed by Xerox with Ethernet, and universities got some of those too.

6/ Stanford, of course, loved the idea of Altos and Ethernets, but wanted something cheaper built on more common standards. Thus was the SUN workstation project born!

7/ But there were purely commercial instances of 3Mb Ethernet as well. Ungermann-Bass was founded in 1979, and shipped, in early 1980, a terminal concentrator/multiplexor based on 3Mb Ethernet.

8/ They had some success, but the market then mostly wanted broadband solutions which could cover a much larger area. Sytek had some popular broadband products.

9/ At Stanford, Andy Bechtolsheim designed a 3Mb Ethernet board for “Multibus” – an open system bus being pushed broad and wide by Intel at the time. The original “workstation” was a set of 3 Multibus boards: CPU, Ethernet, and Video.

10/ Andy obtained the rights to the Sun boards from Stanford, and started a company called “VLSI Systems” to produce the boards for universities and to license the design to other companies.

11/ VLSI Systems, Inc. was absorbed into Sun Microsystems, Inc. when Sun was started in Feb. of 1982. But Andy had commitments to some universities to ship some 3Mb Ethernet boards.

12/ That batch of boards was finished in late May – so Sun’s first revenue products were 3Mb Ethernet boards! The 1st complete Sun workstation made it out the door on June 1.

13/ Anyways, 3Mb Ethernet was already 9 years old when this happened — with many more years to come! Another direction Ethernet was expanding was into minicomputers. Xerox in El Segundo designed a UNIBUS board for 3Mb Ethernet which worked with DEC’s PDP-11 and VAX systems.

14/ Just like the Alto bus and the Multibus, the UNIBUS was a (mostly) open 16 bit wide bus.

15/ In 1980, Danny Cohen (RIP) published a wonderful article called “On Holy Wars and a Plea for Peace” which cemented the terminology of “little-endian” and “big-endian” is describing bit and byte order serialization used in computers systems.

16/ The Xerox Alto, the 68000 CPU chip used in Suns, and the PDP-10s and IBM mainframes that dominated at Stanford were all “big-endian” systems, and official byte order for Ethernet, Arpanet, and most other protocols was always big-endian.

17/ OTOH, up at Berkeley, there was a hotbed of PDP-11 and VAX systems being used to develop Berkeley UNIX. PDP-11s and VAXen were little-endian, so those big-endian network protocols were less convenient.

18/ Xerox had designed the UNIBUS board in the obvious way, which was to transfer a 16-bit words one at a time from memory to network or vice-versa. See where this is heading?

19/ One day in late 1982, Bill Shannon(RIP) and I loaded up a Sun workstation with 3Mb Ethernet into the back of my VW Rabbit (SUN UNIX plates) and headed up to Berkeley to do some TCP/IP interoperability testing between Suns and VAXen (4.1c BSD UNIX).

20/ Once we plugged everything together, we were all distressed to find NOTHING worked.

21/ From my days of porting UNIX to IBM mainframes, I was very familiar with byte-swapping problems, so as soon as I saw some packet traces I figured out what was going on: all of Berkeley’s PDP-11s and VAXen were happily talking among themselves, but…

22/ with the wrong byte order!! A quick hack to the UNIBUS driver “fixed” the problem, but at a serious performance cost! Handling every byte another time on a slow minicomputer was enough to significantly reduce the Ethernet performance.

23/ So Berkeley decided to keep the wrong byte order as the default – creating a little-endian sect of 3Mb Ethernet! Nobody was happy with the choices available. Xerox should’ve done better with the hardware design.

24/ Beyond 1982: By the time 10Mb Ethernet came out, 3Mb was well-entrenched in a bunch of places. Bridges and routers were largely unheard of, so the market for 3Mb cards continued.

25/ Cisco shipped its first router in 1986, and the 3Mb option was very important for selling to Stanford and other places. I’ve seen Cisco price lists that carry that 3Mb option at least to 1989.

26/ So, the “experimental” 3Mb Ethernet lasted at least 16 years – maybe longer. And the Xerox Alto and 3Mb Ethernet continue to run today at the @ComputerHistory museum! computerhistory.org/revolution/inp…

Leave a Reply