The Cambridge Ring
Abstract
In 1974 Maurice Wilkes decided that local networks no longer had to borrow their technology from the telephone companies, and the University of Cambridge Computer Laboratory began to build one from computer logic. The Cambridge Ring, designed by David Wheeler and developed with Andy Hopper and Roger Needham, ran at 10 megabits per second around the laboratory’s buildings. Instead of letting stations shout and retry, as Ethernet did, it sent a fixed train of tiny slots round a loop, each carrying two bytes of data, and every slot came back to its sender with a report of what had happened to it. By the early 1980s British firms sold it, British universities installed it and it was a national standard. Ethernet won anyway. The Ring’s slotted, fixed-size cells survived in its successors, the Cambridge Fast Ring and, through Hopper’s later companies, ATM.
Wilkes’s Idea
By 1974 the Computer Laboratory had a time-sharing service, the CAP capability computer under construction and a growing number of minicomputers that needed to talk to each other (see Maurice Wilkes and EDSAC). In the laboratory’s account, it appeared to Wilkes that year that local networks based on traditional telecommunication technology could profitably be replaced by networks of much wider bandwidth based on computer technology. He had visited the Swiss firm Hasler, which had built an experimental ring network, and the Bell Labs engineer John R. Pierce had described a loop network carrying fixed-size messages in the Bell System Technical Journal in 1972. A design study for the Cambridge version appeared in 1975.
The division of labour was clear to those involved. “Maurice conceived it, and David Wheeler designed it,” Hopper said later; Needham built the distributed system on top of it. Hopper, who arrived in 1974 as a PhD student, worked on how to put a ring station into integrated circuits and finished his thesis on local area networks in 1978. His own contribution to the design, he said, was “one or two minor, well, not major, contributions,” among them parity bits that let maintainers find which section of the ring was degrading.
Slots, Not Collisions
The ring was a loop of twisted-pair cable, with a section of optical fibre, running through the laboratory’s buildings. At intervals sat a station with a repeater, which regenerated the signal and drew its power from the ring, connected by an access box to a computer or other device. All stations were identical except for their address, so the interface to each kind of machine lived in the access box. A monitor station started the ring, set up the structure of circulating slots, cleared corrupted ones and counted errors.
The unit of transmission was what Needham called a minipacket: a source byte, a destination byte, two bytes of data and a few control bits, 38 bits in all. A station that wanted to send loaded the destination and the data into a shift register and waited for an empty slot to pass. It filled the slot, and the minipacket went round the ring past the receiver and back to the sender, always, whatever had happened to it. The control bits then told the sender the outcome: accepted; busy, if the receiver had not yet dealt with its previous minipacket; not selected, if the receiver had set its select register to refuse that sender; or ignored, if the receiver was switched off. A round trip, the ring delay, took about 10 microseconds in 1979.
Two rules followed from the design. A station could not reuse the slot it had just emptied, so it had to let it pass on, and with m stations each was guaranteed at least 1/(m+1) of the ring’s capacity, an automatic limit on any one station hogging the network. And a station that kept getting busy or refused replies was told of them more and more slowly, after up to 16 ring delays, so that blind retransmission could not flood the ring. Ethernet, built at Xerox PARC in the same years, let any station transmit when the cable was quiet and detected collisions afterwards (see Bob Metcalfe and Ethernet). The Ring had no collisions to detect.
Needham measured the error rate at about one bit in 5 × 10^11. That changed how the laboratory wrote protocols. Packets, called basic blocks, were built from a header minipacket, a port number, the data minipackets and an optional checksum, and the laboratory used the ring to archive whole disks with a retransmission unit of one 28-megabyte disk. “This is not perhaps a practice to be recommended, but it makes the point,” Needham wrote. Protocols existed for end-to-end flow control, not for error recovery. The commonest cause of failure, he argued, was a crashed or unplugged computer, which only a timeout could detect anyway.
A Distributed System
Because the ring tolerated slow and simple devices, the laboratory attached printers and other peripherals not to dedicated computers but to small microcomputers of about eighteen chips that did device control and little else. The spooling, scheduling and accounting were done by ordinary computers elsewhere on the ring, which clients saw as the printing service. On the CAP the whole packet protocol was handled in microcode, so that a program could ask to receive 43,592 bytes from another machine on a given port and be interrupted only when they had arrived.
Research on the Cambridge Model Distributed System began in 1978, and Wilkes and Needham described it in 1980. Needham, Wilkes and Andrew Herbert built a distributed software environment on top of the ring, in which services such as file storage and printing ran on separate machines and clients reached them over the ring, an arrangement Needham’s memoir later compared to thin-client computing. Needham and Herbert described it in the book The Cambridge Distributed Computing System (1982). In the 1980s Ian Leslie and others carried the work into the UNIVERSE and UNISON projects, which linked rings at several sites over satellite channels and carried real-time voice and video.
Beyond Cambridge
By 1980 a study by Peter Cowley counted commercial implementors: Ferranti made gate arrays for the ring, Inmos semiconductors, and Linotype Paul, Logica VTS, MDB Systems and Toltec Data sold interface boards. In March 1981 Computerwoche reported that Toltec, a Cambridge systems house, had developed its Dataring with the Computer Laboratory and that it was the basis of new internal networks at many English universities; Toltec supplied the software, mostly written in BCPL, with the Basic Block, Single Shot and Byte Stream protocols for file transfer between different operating systems. The Rutherford Laboratory planned a ring in 1979. The British Computer Society gave the Computer Laboratory its Technical Award for “The Cambridge Digital Communication Ring” in 1981, the ring became a national standard in 1982, and the British Standards Institution published 10 Mbit/s slotted-ring specifications as BS 6531 and BS 6532 in 1984. ISO followed in July 1991 with ISO 8802-7, the slotted-ring part of its local-area network series, since withdrawn.
From 1977 a government programme for advanced computer technology paid for an attempt to put the ring into a chip. Hopper remembered that it “paid for one person, me,” while the Ethernet chip was being developed jointly by Intel, Xerox and DEC. He and Hermann Hauser founded the company Orbis to sell ring products; it was absorbed into CPU, the company behind Acorn, and its networking turned towards an Ethernet-style design for low-end computers. The chip-design experience fed into Acorn’s chips for the BBC Micro and later into the processor that became ARM.
The Fast Ring and ATM
Development of a successor began in 1980. The Cambridge Fast Ring ran at 100 megabits per second, ten times faster, with a two-chip VLSI implementation that Hopper and Needham described in a laboratory report in June 1986. It kept the slotted design but with larger cells, carrying 256 bits of data with 16-bit addresses. Hopper went on to direct Olivetti’s research laboratory in Cambridge, where work on the Fast Ring continued, and in 1993 co-founded Advanced Telecommunications Modules (ATML) to build ATM switches. He traced ATM, the cell-based technology that the telephone industry adopted for its broadband networks in the 1990s, back to “the design of the Cambridge Ring originally.” ATML later became the DSL chip company Virata.
Dead End: Fair, Reliable and Outnumbered
“In the battle of the two technologies; Ethernet and the Ring, the Ethernet finally won,” Hopper said. The Ring had technical arguments on its side. Its access was fair by construction, its delay was bounded, it never wasted capacity on collisions, and it was closer to the synchronous behaviour that telephony needed. Needham’s paper describes digital telephony as the obvious example of a device that could talk to the ring with no protocol at all.
It also paid for those properties. Each 38-bit minipacket carried 16 bits of data, and Toltec’s figures put the effective bandwidth of a 10-megabit ring at about 4 megabits per second, shared among all users. A ring needed a monitor station and depended on every repeater in the loop, while an Ethernet was a passive cable. The larger difference was industrial. Xerox, Intel and DEC agreed a common Ethernet specification in 1979 and 1980 and developed its chips together, while the Ring’s chip project at Cambridge was one research student.
📚 Sources
- Needham, R. M.: “Systems Aspects of the Cambridge Ring,” Proceedings of the 7th ACM Symposium on Operating Systems Principles (SOSP ‘79), December 1979, 82–85 (minipacket format, response codes, ring delay, anti-hogging, back-off, error rate, packets and ports, CAP microcode, peripheral microcomputers, 28-megabyte disk archiving, digital telephony)
- Maurice V. Wilkes, short biography, University of Cambridge Computer Laboratory (1974 judgement on local networks, 1975 design study, Cambridge Model Distributed System 1980)
- Interview with Sir Andrew Hopper, Archives of IT (Wilkes conceived it, Wheeler designed it; Hasler; his PhD and parity bits; one-person chip project; Orbis; ARM; ATM and ATML; “the Ethernet finally won”)
- Cambridge Ring (computer network), Wikipedia (twisted pair with fibre section, 255-node limit, Pierce’s 1972 Bell Labs ring, Cowley’s 1980 list of commercial implementors)
- EDSAC 99: Computer Laboratory history (Ring project 1974, chip project 1977, Model Distributed System 1978, Fast Ring 1980, BCS Technical Award 1981, national standard 1982)
- Spärck Jones, Karen: “Roger Needham: an informal memoir,” Computer Laboratory, 2003 (10 Mbit/s Ring and 100 Mbit/s Fast Ring, Cambridge Model Distributed System with Wilkes and Herbert, thin-client comparison, UNIVERSE and UNISON with Ian Leslie)
- Needham, R. M.; Herbert, A. J.: The Cambridge Distributed Computing System, Addison-Wesley, 1982, Open Library
- “Datentransport im Kreisverkehr,” Computerwoche, 27 July 1979 (Rutherford Laboratory plans)
- “Toltec macht Uni-Produkt marktreif: Dataring verbindet verschiedenste Systeme,” Computerwoche, 13 March 1981 (38-bit packets with 16 data bits, monitor, self-powered repeaters, about 4 megabaud effective, BCPL software, protocols, English universities)
- Hopper, A.; Needham, R. M.: “The Cambridge Fast Ring Networking System,” Computer Laboratory technical report UCAM-CL-TR-90, June 1986 (100 Mbit/s, two-chip VLSI implementation)
- Greaves, D. J.; Wilson, I. D.: Cambridge Fast Ring review, Olivetti Research technical report 89.1, 1989 (mini-packet with 16-bit addresses and 256 data bits)
- Andy Hopper, Wikipedia (Cambridge Ring and Fast Ring with Wilkes; Olivetti Research Laboratory; ATML)
- ISO 8802-7:1991, Standards Council of Canada (slotted ring access method, published July 1991, withdrawn; BS 6531/6532 of 1984 as earlier editions)
- Image: Cambridge Ring.jpg by University of Cambridge Computer Laboratory Archive (CC BY 2.0 UK), via Wikimedia Commons