Using delay lines as computer memory

Computer memories were once far more exotic than today's neat, tiny rows of chips. 

There was, for example, the principle internal storage system for the Univac 1 which consisted of tubes of mercury 22.75 inches long into which sound was pumped modulated to correspond to a sequence of bits. 

Univac I mercury delay line memory

Univac I mercury delay line memory courtesy Ron Mak

The mercury acted as a delay line long enough to hold 10 words each consisting of 12 seven bit characters (6 bits plus odd parity). This system actually worked despite it's complexity but it not only had limited storage and was expensive, it was also rather big ... in fact, it was room-sized.

Physical overview of Univac 1

Physical overview of Univac 1 (note mercury memory tanks INSIDE the computer. The UNIVAC 1 computer was actually a little room.)

As a list-friend pointed out the other day, a key metric of this system was how many bits per gallon could be stored.

Then there was Bubble memory. As explained on The Vintage Technology Association's web site:

Magnetic bubble memory is a non-volatile data storage medium invented at Bell Labs in 1967. Bubble memory uses a thin magnetic film on a garnet substrate, which forms cylindrical domains when constricted under a magnetic field. These domains, or bubbles, each store one bit of data. The bubbles are created by a generator signal, pushed around the film in racetrack-like loops, and eventually detected by a sense amplifier. Unlike semiconductor memories, bubble memory is sequential access, rather than random access. Conceptually, it is like a tiny magnetic diskette and drive, but with no moving parts. Instead of the disk moving, the bits move.

intel 7110

The Intel 7110, a high density 1-megabit bubble memory device. 

What other medium could you use for delay line storage? Another list-friend, Joseph S. Barrera III, figured a fiber optic loop from Los Angeles to New York and back would be about 8,000 km long. At 10Gb/s a bit would be 0.03 meters long so the delay line could store (((8,000,000 / 0.03) / 8,388,608) = 31.79 MB (although if you throw in a parity bit your storage will be only 28.26 MB).

But as storage solutions go this wouldn't be cheap; fiber optic cable costs about $0.66 per meter so the actual loop (ignoring any other costs involved in laying the loop) would cost about $5.3 million or $166,723.58 per MB. Kind of pricey and the latency would be brutal.

Ah ... but you don't have a spare $5.3 million? For (perhaps) less money you could bounce laser pulses off the moon. No fiber optic cable needed and at 10Gb/s over 384,400 km you could store 1.35774965639 GB but the lasers, detectors, and gear to track the moon would get expensive and then there's the problem that the moon sets every night so you'd need multiple ground stations and some heavy engineering ... you'd still be spending a serious amount of cash.

What about using the Internet as a delay line? Yep, someone has done just that ... it's called PingFS, the Ping Filesystem, and it's described as:

... a set of python scripts which, in Linux, provide virtual disk storage on the network. Each file is broken up into 64-1024 byte blocks, [which are] sent over the wire in an ICMP echo request, and promptly erased from memory. Each time the server sends back your bundle of joy, PingFS recognizes its data and sends another gift [the data].

In other words once uploaded the file's contents will be constantly circulating the Internet in chunks and once it's put into the system there's never more than 1,024 bytes of the file on the originating machine (and then only for as long as it takes to resend). Brilliant but insane.

So, there you have it; the old (mercury delay lines and magnetic bubble memories) are reborn anew as ICMP ECHO requests. 

Don't delay your comment below then follow me on, and Facebook.

Join the Network World communities on Facebook and LinkedIn to comment on topics that are top of mind.
Must read: 10 new UI features coming to Windows 10