12

When tracing the source of High Availability, I found to my surprise it led to a company named Tandem Computers which since 1974 made a series of minicomputers called NonStop system, to my surprise for I thought it should have been one of the concepts first implemented instead in mainframes from the Iron-Age if not Stone Age, like many other (if not all) of the ideas reinvented or rediscovered by modern PC industry and cluster/cloud server society.

I wounder how High Availability developed in its early years, and if minis get a head start over the big irons.

Link: A brief (non-chronological) history of high availability

6
  • 2
    In the 1970s, my machine of choice was the DEC PDP-10 (aka DECsystem-10). It wasn't a minicomputer, or a mainframe. It was a timesharing machine. A very large number of PDP-10s were on the ARPAnet at the time. Several timesharing vendors offered 24/7 availability except for maintenance, either scheduled or unscheduled. Jan 29, 2023 at 12:46
  • 3
    In the early days, enterprises were lucky if they could afford one computer - let alone a second one to back the first one up.
    – tofro
    Jan 29, 2023 at 17:22
  • 1
    @WalterMitty Mini vs mainframe is orthogonal to timesharing vs batch. The first is a description of the hardware, the second describes the OS architecture.
    – Barmar
    Jan 30, 2023 at 7:41
  • Some machines were architected to support a timeshared OS. Some were architected to optimize throughput. The PDP-10 was built with the idea that it was going to run timesharing. The VAX even more so. Jan 30, 2023 at 12:19
  • 1
    Of some interest might be ieeexplore.ieee.org/document/9767635 "Seeking High IMP Reliability in Maintenance of the 1970s ARPAnet" - to quote from the conlcusions "Computers in the late 1960s and early 1970s had a reliability of about 95%. We were able to increase the reliability of the ARPAnet IMP computers to 99.98%."
    – Jon Custer
    Jan 30, 2023 at 17:06

4 Answers 4

18

I'm pretty certain the concept of RAS (reliability, availability, serviceability) has been in IBM's mainframe line since very early on. I always found it funny that one of the big selling features of minis was the price, right up until the point where you engineered in the RAS characteristics to match the mainframe, then the price also approached that of the mainframe :-)

If you look at how the CPU "books" work in IBM z, with their redundancy, ability to hot-swap, and so on, you'll see one reason why why this is possible(1). Not saying similar non-mainframe systems can't do it but IBM's been doing it for a long time.

For example, the IBM System/360 OS document GC28-6534-4, fifth edition dated 1972 (so pre-dating your Tandem link), has this to say:

To protect against, or at least to diminish the effects of, a failure, reliability, availability, and serviceability (RAS) facilities interact with the control program. RAS facilities attempt to retry or repair machine malfunctions that result in system failure. One means available for RAS implementation is the Recovery Management support (RMS) for both System/360 and System/370.

I'm no mainframe fanboy though I did work for IBM, on z/OS itself as well as some applications for the mainframe, many moons ago. But I'll give credit where it's due, they were insanely reliable.


(1) I vaguely remember seeing a demo once where a CPU book was pulled out of a running system and it carried on as if nothing had happened, though probably after a short delay, and most likely slower because there were less CPUs to go around. WLM (Work Load Manager) simply took it in its stride and allocated the work elsewhere.

1
  • 1
    Your observation on price is no doubt correct, but minis found their way mostly into engineering-like departments where availability was not so important: as long as you have your numbers before the conference deadline you don't care that much if you get them now or tomorrow. Jan 31, 2023 at 14:41
9

Two high availability systems which predate Tandem Computers:

The IBM 9020 (a cluster based on IBM/360 mainframes) was developed for US air traffic control and is described in IBM Systems Journal 1967 issue 2. The term high availability is used in several places in this collection of papers.

The AT&T No. 1 ESS (telephone exchange) is described in Bell Systems Technical Journal 1964 issue 5. It was based around a specialised control computer which had duplication and synchronisation of CPU and memory. This computer was generalised to form the No. 1 ESS ADF which was the central computer in one of the first email systems.

8

Every Solution Needs a Problem

High Availability is like any other concept only useful in a context that needs such. Here the context is non planned requests at random time - or in other words: Online information/transaction systems.

There were none of these in the stone age of computing, as terminals in common distribution only became common in the late 60s. Without Availability no High Availability :))

It was a very niche niche market.

In addition one needs to understand that the primary solution was to increase reliability first. Even a fully functional mainframe of the 1970 records roughly one non-recoverable memory error per 32 KiB core stack per month. Make that a 1 MiB memory any you'll get a non-recoverable error per day, halting at least the application using that stack.

As a result, fast error recovery was prioritized.

Of course, for highest end applications hot standby systems were used. For example the information system at the 1972 Olympics consist of two /370 compatible mainframes (each with two MiB!) one active, one in hot standby with automated fall over, able to continue operation within minutes.

So yes, stuff like that was already common. Not just with mainframes but as well for communication nodes. Though, at extreme high cost - one had to almost double the investment. Either because of twice the hardware, or specialized dual units that simply sold less thus cost more.

Notable here is that none of the mainframe manufacturers made a big fuzz around, as these measures were simply seen as regular business case. Same way as multiple ways to disk controllers and disks create fail safety.

When looking at minis, some points need to be considered:

  • Minis opened computing to way more use cases, thus considerably more installations and thus more visibility - and more information to be found.
  • Likewise the niche of fault tolerant systems wasn't so niche anymore, thus more visible.
  • In the mini market every little improvement was shouted out like the invention of sliced bread, generating again more visibility.
  • Even more, a company like Tandem focused exactly on that niche (*1) will of course make shout out its USP broadly.

Long story short: Yes, those systems existed way before 1974, but all was considered standard business practice.


*1 - IIRC they were HP guys and HP wasn't really interested in the idea of hardware failover at all - too niche even for a mini manufacturer - at least at the time.

5
  • Hmm, not sure I agree with tying availability to the existence of terminals, availability is all about system uptime and theretofore has little to do solely with random transaction requests. It was needed even for batch workload that's planned well in advance. The rest of the answer seems okay to me though.
    – paxdiablo
    Jan 29, 2023 at 13:21
  • @paxdiablo As wiki says, "MST provided System/370 with four to eight times the circuit density and over ten times the reliability when compared to the previous second generation SLT technology of the System/360." Maybe reliability wasn't as much a thing back then?
    – Schezuk
    Jan 29, 2023 at 14:00
  • 1
    @paxdiablo There's a fundamental difference between Reliability, Availability and HIGH Availability. R. is about a system working without fault, while A. is about a system being operational, while H.A. is about that system being operational at any time with least to no interruption. Regarding terminals: Only interactive services need H.A. as they are about giving an answer right now - like airline booking. Data entry only needs A. during work hours, interruptions are bad but acceptable, while for Batch services it doesn't matter much if a batch runs half an hour later due a machine restart.
    – Raffzahn
    Jan 29, 2023 at 14:11
  • There are real-time systems that don't primarily get input from terminals that nevertheless need high availability. Process control, for example.
    – dave
    Jan 29, 2023 at 22:06
  • @another-dave Yes, there are. But have they been there early on? And not just as single instances? Also, production doesn't need so much High Availability, than Reliability first. Computers only became a real item in production during the 1970s. Before they were not only too expensive but as well sensible and faulty. It was an emerging tech.
    – Raffzahn
    Jan 29, 2023 at 22:11
5

Some examples of high availability systems from the 1960s and 1970s include:

These systems were designed to provide high availability—even if not applicable in the default configuration; however, the term "high availability" itself was not in use at the time.

High availability has roots in both the mainframe and minicomputer eras. The concept of HA was first introduced by Tandem Computers in the 1970s with their NonStop system, a series of minicomputers designed for fault-tolerance and high availability (as "failover"). Although, there may be some debate over this still.

  • Tandem's NonStop system featured redundant components and automatic "failover" capabilities which allowed the system to continue running in the event of a component failure.

In the minicomputer era, companies such as Tandem and Stratus Technologies were known for their high-availability systems, while in the mainframe era, IBM and other mainframe vendors were known for their disaster recovery and high-availability capabilities.

As the personal computer industry erupted, the focus on high availability shifted from hardware-based solutions to software-based solutions. Today, high availability can be achieved with a combination of hardware and software solutions; including virtualization, clustering, and cloud computing.

High availability has been an important concept in the computer industry for several decades, with its origins in the mainframe and minicomputer eras. Tandem Computers and other minicomputer vendors were early pioneers in the field, while mainframe vendors such as IBM also had a strong focus on high availability.

0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .