Adventures in Token Ring

Spend too much time and money on antiquated network technology!

Important notes: 1) I really don't know what I'm doing here. While I have a background in networking, my career started at the very end of Token Ring's life. I'm still learning and some of this information might be incorrect, abridged, or incomplete. 2) This is a work in progress. It's intended to serve as notes for myself to some degree, but perhaps it'll help others.

A brief overview

Token Ring is actually pretty cool. It's typically cabled in a hub and spoke fashion, but logically (and electrically?) the network forms a ring, with the transmit side of one node directly connected to the receive side of the next node, and so on, completing a full loop or ring.

An advantage of Token Ring over Ethernet, at least in the early days, was that there was no possibility for collision. In Ethernet, multiple devices could try to speak at once, canceling each other out. This would be detected and each device would wait a random interval before trying again. With Token Ring, a token is passed around to each node on the ring. If a node has something to say, it speaks. If it doesn't, it hands the token to the next machine in the ring.

Hardware and Software

You need a MAU - which is the Token Ring equivalent of a hub / switch / concentrator, despite operating nothing like them. A MAU is a fairly passive and simple device. In fact, early MAUs didn't even need power! The MAU's job is to keep the ring complete by bypassing any ports that are either not connected to a device, or the device connected isn't joined to the ring. When a connected device indicates it's ready and able to join the ring, a relay within the MAU opens the port.

A few thoughts on finding your first MAU:

My MAUs are from a long-defunct vendor called Proteon. I was able to find them fairly cheap on eBay as they didn't include the proprietary power supplies. The pictures clearly showed +12v and +5v labels, so I took a chance that I could power them with a typical PC power supply. I was correct!

You need Token Ring NICs. Early cards were 4mb only. I'd avoid these unless you have an architecture that requires it. There was 100mbps Token Ring - I don't know much about it, and cards are expensive, so I'd avoid these as well. A majority of the cards out there support 4mbps and 16mbps - this is what I'd go with.

I'd recommend cards that support both STP (DE9) and UTP (RJ-45) cabling. This will allow you to start with standard cabling that you probably already have lying around, but switch to the weirder proprietary stuff later if you want. Token Ring cards existed well into the PCI era, but not beyond. I've found PCI, ISA, and Microchannel (MCA) cards readily available and inexpensive on eBay - get a mix of cards that support your hardware.

There were many vendors. Thus far I've only used IBM cards and have had good success with finding information, drivers, and out-of-the-box support on some operating systems. 3Com and Madge are other common brands you might encounter.

You need cabling. If you've listened to my advice, your cards and MAU all support UTP, and you just need to make or use some Ethernet patch cables. If you've decided to skip right to the fun stuff, the cable you're looking for is usually called a Type 1 cable. One end will be a weird-looking plug, the other a DE-9 connector with (generally) 4 pins. You can find them on eBay and they're often unreasonably priced.

You need an operating system with Token Ring support. I recommend starting with something as modern as possible. With some trial and error, I've found Windows XP and Ubuntu 10.04 LTS to be the "newest" in their lineages to support Token Ring out of the box. Token Ring existed in Linux kernels up to ~3.5, so there may be newer versions of other distros with native support.

There are obvious security concerns to running old, unsupported operating systems on a network. Please take caution to isolate these systems appropriately if you decide to route/bridge them to modern networks.

Tips to get started

In no particular order...

Helpful links