As we mentioned previously, the origin of cloud computing was computer timesharing, a service created in the 1970’s. To be viable, commercial computer timesharing requires two technologies: the first is a computer capable of serving many simultaneous users such that they each think they have the computer all to themselves. Just as important is another technology: a reliable and ubiquitous means to connect many remote users to that computer. This post is about the latter. It is the first of several by Norm Hardy on Tymnet. Norm was a creator and developer of Tymnet from its very beginning.
The Origins of Tymnet
By Norm Hardy
Tymshare began providing timesharing service on the SDS 940 in September 1966. The machine came from Scientific Data Systems with “CTE equipment” that attached about 16 terminals or modems, each with an RS232 voltage mode plug. Until recently modems had the same shape plug. The only practical terminal then was the model 33 Teletype from Teletype Corporation, a subsidiary of AT&T. It ran at 110 baud yielding 10 characters per second. It was upper case only, heavy and noisy. It was also cheap and reliable.
During the first year or so customers dealt with the phone company to reach the computer center in Palo Alto, California. Most were in toll free calling radius. Tymshare soon established another computer center near Los Angeles and developed a largely disjoint set of customers there. It planned further expansion.
There were frequency division multiplexers on the market that would handle about 16 Teletype circuits over one voice grade line. Each user was assigned a frequency and full duplex leased voice lines would connect the multiplexers. The company tried these but they were expensive and error prone. Mini computers, costing several thousand dollars, were then becoming available and it seemed clear that they could do a variety of communication tricks which would soon pay their way in saving communications costs. I joined Tymshare in Q4 1967 from IBM and LaRoy Tymes joined in Q1 1968 from Lawrence Livermore labs where we had met in the early 1960s. Because of our experiences together there we were both eager to pursue this adventure. Howard Steadman, already at Tymshare, dealt in hardware and encouraged us to suggest innovative solutions to interfacing with modems. Dave Schmidt was vice president of Tymshare and understood the technical and economic advantages to Tymshare of these schemes. LarRoy wrote almost all of the early Tymnet code. He and I did the design.
At that time the phone company (AT&T) was considered a natural monopoly. They held that modems were the sole province of the telco. Tymshare had already produced acoustic couplers that competed with the telco’s 103A data sets (data set = modem), but AT&T’s lawyers were busy fighting what they considered to be more serious encroachments on their turf.
Initially we found a strange little computer called the SPC12. It had 4K of 12 bit words. Most significantly it had parallel input and output, 12 bits wide, which could be interfaced with modems with simple voltage converters. The software would prepare and time the signals and there was no hardware devoted to timing the bits for each communications line. Precursors to this plan had been done at Livermore and in military applications before that.
The first deployment used the SPC12 as a fixed time division multiplexor, providing full duplex service for 29 terminals, each running at 110 baud. Pairs of such multiplexers were connected with a voice grade line, leased from AT&T, and two AT&T 201 data sets at 2400 bits/sec. There was no error control. These were deployed for a short while. We found the SCP12 too small and had located another machine, a Varian Data Machines model that used 16 bit words, and which could be expanded beyond 4K words. This machine, and its direct descendants, served as the Tymnet workhorse for the next several years. Howard Steadman equipped the machine with parallel I/O like the SPC12. We programmed this machine to do statistical multiplexing which took advantage of the fact that not all lines ran continuously. This allowed more users per leased line. We added backward error control on the multiplexed lines.
With this phase of Tymnet (not yet so named, however) pairs of nodes would be connected by a leased line. One node, the base, would sit next to the 940 computer, connected thereto by many cables. This still required the CTE equipment. The other node would typically sit in some Tymshare sales office. That office could access only that one 940 computer.
Several developments then began. Ann Hardy began the modification to the 940 operating system to supplant most of the function of the local node, thus avoiding work both in the 940 host and in the 620 node. The 940 and 620 exchanged teletype traffic in a portion of 940 host memory to which the 620 had read-write access via hardware we had built. LaRoy reprogramed the 620 to send and receive TTY traffic there. With this change the CTE equipment was retired and one cable connected the host to the Tymnet 620 base.
About this time the remote echo issue bubbled to the top of the queue.
We also began to introduce forwarding logic in the nodes so that traffic could travel through several nodes, each hop via another leased line. This required routing which was provided by static routing tables. A dial-up access port would reach the same host for weeks at a time, but at least we had much greater flexibility in allocating ports to hosts. Sales spent many painful meetings devoted to this allocation.
We had been thinking about dynamic routing tables to be built as new users logged in. We had no computer with enough power to do this in a brute force way. We could have put it on a Varian machine but that lacked sufficient memory. We chose to program it for the 940 with a slightly modified version of the operating system. Laroy wrote that program using algorithms to dynamically sense the network topology. That first “Supervisor” knew several versions of the node software and the sizes and absolute addresses of routing tables in each of those versions. The supervisor would send out “data-grams” to cause the distributed nodes to change their routing tables. Several 940s (at least two) would simultaneously host supervisors who would politely agree among themselves which was to supervise the network. If such a supervisor or its host crashed, another supervisor would notice, discover the current net topology and assert control. This might take a few minutes, during which current sessions were unaffected but new users could not log in. Most days went by without such disturbances.
I recall bringing up the first supervisor.
Tymnet was running well and already serving customers very well. Circuits were laid out manually much as AT&T would manually engineer leased lines to be rented by customers. That was tedious and often involved a few weeks response time.
We had vaguely imagined from the beginning of Tymnet the real-time automation of new circuits. The SDS 940 was the largest machine we had available (192 KB) and so we used it to dynamically setup circuits at the beginning of each login session. The new program was called the supervisor.
We converted a small fraction of Tymnet, perhaps 20 nodes around Cupertino, to the new system. With the new system any dialup port would be able to reach any timesharing host. We went thru the normal debugging stages which were eased since the nodes were all local. There were manifest difficulties in arranging yet larger test networks. The flexibility of switched circuits was badly needed. The cost of the switchover included manually reloading a few hundred nodes in many cities. We finally decided in November 1971 to bite the bullet and convert the whole network. One Friday evening as the timesharing load waned, we took down the whole network by beginning to load the new Tymnet node code into each of the many nodes.
The 940 struggled valiantly reporting the number of nodes whose connections it had discerned. We waited and would take occasional steps to help it along by adjusting heuristic parameters. I am not of much use after midnight and I went home. Laroy (Tymes) stayed on. Early the next morning I came in and found all of Tymnet up with customers. I assumed that Laroy, who had written all the code, had found and fixed the problems. An hour or so later Laroy came in and assumed that I had found the problems that morning. The supervisor had not been able to come up while we were still there and meddling. After Laroy had finally left the supervisor did its methodical thing and had mapped and taken over the whole net.
Of course other bugs were found and improvements were made but Tymnet remained supervised from that point on.
One day in a marketing meeting, Virgil Swearingen suggested the name “Tymnet”. Few liked the name but it was clear that it was the best that had yet been suggested. It improved with time.
That was Tymnet I. It is described here at this link too, fairly well.