Wired computer networking in the modern era is dominated by Ethernet. Even if the standard ethernet cable – the 8P8C cable – isn’t used, the underlying protocol is still almost certainly ethernet, especially in LAN environments. Fibreoptic cables for example, still use the ethernet protocol in LAN environments.
In the early days, however, ethernet wasn’t the only game in town. Token ring was a competing standard. It was proposed by IBM in 1984 and standardised under 802.5 in 1989 by IEEE.
The network architecture
A token ring network, as you may have guessed from the name, uses a ring topology. This isn’t necessarily a physical ring topology, but it is a logical ring topology. A physical rung would require every device to have two network ports and two cables. A logical ring topology is easier to configure with Media Access Units or MAUs performing a vaguely similar role to an ethernet switch.
Each MAU configures a physical star topography. It can then connect in a ring to multiple other MAUs. The overall logical topography of the network though is a ring.
Avoiding collisions
Collisions are a problem for any shared access media. Ethernet has a feature called CSMA/CD or Carrier Sense Multiple Access with Collision Detection. In CSMA/CD a network node uses carrier sense to check if the network is clear, before transmitting. If it then detects a collision, it transmits a jam signal and backs off for a small random period of time before retransmitting, if the network is clear.
Token ring uses the titular token to determine if a host can transmit or not. When the network is silent, an empty packet is transmitted around the ring. Each device forwards on the empty packet unless it wants to transmit data. To transmit data it creates the packet it wants and adds a token value to it before sending it around the ring in place of the empty packet.
When a host determines that it is the recipient of a packet it reads the data, then zeros the token, and retransmits the packet. The packet makes a full loop of the ring. When it gets to the original sender, it checks that the token has been removed, indicating receipt. It then removes the packet and resends the empty packet.
A token ring network avoids network collisions by only allowing one token to be valid at any one time. As long as the empty packet isn’t using a token, any host can transmit.
Comparisons to ethernet
Access to the token ring is deterministic rather than contention-based. This ensures that there are no collisions rather than minimising the chance of them and handling them when they occur. Any two ethernet devices can simply be cabled together. historically that required a crossover cable, but modern devices tend to have auto-sense capabilities to enable this with any cable. Token ring doesn’t support this without extra hardware and software.
Multiple identical MAC addresses are supported in a token ring network. MAC addresses, however, must be unique on an ethernet network. The licensing costs for firmware for each token ring network port was more than three times as much as it was for ethernet. Additionally, routers were also significantly more expensive for token ring than ethernet. Ethernet also standardised a cheaper cable relatively early on giving it significant cost advantages. At this time, token ring and ethernet were roughly comparable bandwidth-wise, however, after it was clear that ethernet was the preferred technology, the token ring standard stopped being updated.
Conclusion
Token ring was a network protocol and connectivity standard in the mid-to-late 1980s and 1990s. It was somewhat successful in business environments, but was eclipsed in home and eventually business environments by ethernet which offered higher speeds at lower costs at the end of the standards war. It worked by using a ring topology and having a single token. If the token was unset, a host could claim it and transmit. If the token was set, a host must wait until the token was released to claim it and transmit. In modern times, token ring is essentially dead, with ethernet being the dominant network protocol and standard.
Did this help? Let us know!