The origins of network email

The history of long distance communication is a fascinating, and huge, subject. I’m going to focus just on the history of network email – otherwise I’m going to get distracted by AUTODIN and semaphore and facsimile and all sorts of other telegraphy.
cable
Electronic messaging between users on the same timesharing computer was developed fairly soon after time-sharing computer systems were available, beginning around 1965 – including both instant messaging and mail. I’m interested in network mail, though, so we need to skip forward a few years.
You need a network. And a community.
Around 1968 the initial plans for “ARPANET”, a network to link the various ARPA-funded computers together were underway. Local mail between users on the same system was already a significant part of the nascent community.

Q.What did you discover?
A. The thing that really struck me about this evolution was how these three systems caused communities to get built. People who didn’t know one another previously would now find themselves using the same system. Because the systems allowed you to share files, you could find that so-and-so was interested in such-and-such and he had some data about it. You could contact him by e-mail and, lo and behold, you would have a whole new relationship.
Q.Were these first communities built around mailing lists?
A. Well, you had a directory, so you knew how to send them e-mail, but you might only know 2 or 3 people, and you would meet 20 or 30 through the computer.
It wasn’t a static medium. It was a dynamic medium. And that gave it a lot of power.
Q.It was all about community?
A. There was one other trigger that turned me to the ARPAnet. For each of these three terminals, I had three different sets of user commands. So if I was talking online with someone at S.D.C. and I wanted to talk to someone I knew at Berkeley or M.I.T. about this, I had to get up from the S.D.C. terminal, go over and log into the other terminal and get in touch with them.
I said, oh, man, it’s obvious what to do: If you have these three terminals, there ought to be one terminal that goes anywhere you want to go where you have interactive computing. That idea is the ARPAnet.
Robert W. Taylor

Linking those local messaging systems over ARPANET to create inter-computer mail was one of the earliest uses considered, even before the network was up and running.

J.C.R. Licklider mentioned inter-computer mail to me in a conversation about 1968, when he asked me if I was interested in a project he had in mind, “to connect all the ARPA-funded machines together, and see what they said to each other.” He was recruiting folks for what became the Project MAC networking group. By that time, many time-sharing systems had some kind of internal mail. Discussion of linking the mail systems on various computers was one of the earliest applications proposed for the ARPANet.Tom Van Vleck

User ?something? Host
In 1971 Ray Tomlinson was enhancing SNDMSG, the tool used to send local mail on TENEX systems. There had been discussions about how to implement a standardized form of network mail, but they were perhaps overly complex and too paper-based. Something less weighty was needed.
BBN had two TENEX systems, side-by-side, both attached to ARPANET. Ray realized he could extend SNDMSG to use an existing TENEX tool. CPYNET, that copied files from one machine to another, allowing it to send mail over the network. Sometimes you need a simple hack to demo a concept.
x118-17-ka10
 
That was the first mail sent from one computer to another over the network.
The “@” sign was a character not used in names, and wasn’t really used for anything on TENEX, so Ray chose to use it as a separator between the user and host. It’s a happy accident that BBN used TENEX systems; if they’d had the other type of system used on ARPANET, Multics, the “@” key would have already had a reserved use – deleting the current line – and we might not have seen it used for email.
It’d be nice to have a standard protocol about now
To make network mail work between different machines, you need a way to transfer the message that’s a bit more portable than CPYNET. File Transfer Protocol (FTP) was being developed as a standard way of copying files from one machine to another. At one of the FTP development meetings, someone proposed sending mail via FTP. Someone from BBN mentioned that Ray had done something similar, using user@host addresses. A standard for email transfer began to be born.
It’s a two-way conversation
SNDMSG already used “business memo” style messages – To:, From:, Subject:, Cc:, Date: etc. – so the messages it sent looked like modern email in many respects; that format was adopted, and began to be [rfc 561]standardized.[/rfc] At first the user interface was crude, allowing recent messages to be dumped to the users terminal or new messages to be composed. Fairly quickly tools were developed that allowed individual messages to be read or deleted.
There was still a critical element missing. That was the ability to reply to an email.
John Vittal combined and extended existing tools to create MSG, adding several new features including “Answer” – a command to automatically create a message formatted as a reply to the current one. MSG was the first integrated modern email client.

It included a command for replying to a message, similar to what is used today. My impression at the time was that, as soon as this command became widely available, e-mail use exploded. As one of MSG’s early users, I found that it permitted quick, convenient, and sustained conversations similar to the conversations we have come to expect over e-mail today.Dave Crocker

For me the ability to create a conversation, rather than just sending a message, is the key thing that makes email such an important and successful protocol.
Who invented email?
Ray Tomlinson sent the first mail over the network, and used the “@” sign. Dave Crocker developed the [rfc 822]standard format[/rfc] for mail (and continues to develop new standards). They were both honored by the IEEE “for their key roles in the conceptualization, first implementation and standardization of networked email“.
But email wasn’t invented by a single person, or by two people, or three. There was no single unknown genius who created it, or even a significant fraction of it, despite what recent PR campaigns may have tried to convince you of.
It was a collaborative effort by many people. I was going to list some of their names here, but the list kept getting longer and I was still sure that I was missing people.
Take a look at the authors of the early email RFCs I talked about yesterday, or the names in some of the articles I relied on today, and you’ll see some of the people who created email.
EmailHistory.org – Dave Crocker – a timeline, and lots of references
Citations and notes on the development of email – David C. Walden
The Technical Development of Internet Email –  Craig Partridge
A history of e-mail: Collaboration, innovation and the birth of a system – Dave Crocker
The History of Electronic Mail – Tom Van Vleck
The Evolution of ARPANET email – Ian R. Hardy
Networked E-mail – David Walden – BBN’s role
Email – Wikipedia
Email History – Livinginternet.com
 

Related Posts

The 500 mile email

This is a great story from Trey Harris about a real email delivery issue from the mid 1990s.
Here’s a problem that sounded impossible…  I almost regret posting the story to a wide audience, because it makes a great tale over drinks at a conference. 🙂  The story is slightly altered in order to protect the guilty, elide over irrelevant and boring details, and generally make the whole thing more entertaining.
I was working in a job running the campus email system some years ago when I got a call from the chairman of the statistics department.
“We’re having a problem sending email out of the department.”
“What’s the problem?” I asked.
“We can’t send mail more than 500 miles,” the chairman explained.
I choked on my latte.  “Come again?”
“We can’t send mail farther than 500 miles from here,” he repeated.  “A little bit more, actually.  Call it 520 miles.  But no farther.”
“Um… Email really doesn’t work that way, generally,” I said, trying to keep panic out of my voice.  One doesn’t display panic when speaking to a department chairman, even of a relatively impoverished department like statistics.  “What makes you think you can’t send mail more than 500 miles?”
“It’s not what I think,” the chairman replied testily.  “You see, when we first noticed this happening, a few days ago–”
“You waited a few DAYS?” I interrupted, a tremor tinging my voice.  “And you couldn’t send email this whole time?”
“We could send email.  Just not more than–”
“–500 miles, yes,” I finished for him, “I got that.  But why didn’t you call earlier?”
“Well, we hadn’t collected enough data to be sure of what was going on until just now.”  Right.  This is the chairman of *statistics*. “Anyway, I asked one of the geostatisticians to look into it–”
“Geostatisticians…”
“–yes, and she’s produced a map showing the radius within which we can send email to be slightly more than 500 miles.  There are a number of destinations within that radius that we can’t reach, either, or reach sporadically, but we can never email farther than this radius.”
“I see,” I said, and put my head in my hands.  “When did this start?  A few days ago, you said, but did anything change in your systems at that time?”
“Well, the consultant came in and patched our server and rebooted it. But I called him, and he said he didn’t touch the mail system.”
“Okay, let me take a look, and I’ll call you back,” I said, scarcely believing that I was playing along.  It wasn’t April Fool’s Day.  I tried to remember if someone owed me a practical joke.
I logged into their department’s server, and sent a few test mails.  This was in the Research Triangle of North Carolina, and a test mail to my own account was delivered without a hitch.  Ditto for one sent to Richmond, and Atlanta, and Washington.  Another to Princeton (400 miles) worked.
But then I tried to send an email to Memphis (600 miles).  It failed. Boston, failed.  Detroit, failed.  I got out my address book and started trying to narrow this down.  New York (420 miles) worked, but Providence
(580 miles) failed.
I was beginning to wonder if I had lost my sanity.  I tried emailing a friend who lived in North Carolina, but whose ISP was in Seattle. Thankfully, it failed.  If the problem had had to do with the geography of the human recipient and not his mail server, I think I would have broken down in tears.
Having established that–unbelievably–the problem as reported was true, and repeatable, I took a look at the sendmail.cf file.  It looked fairly normal.  In fact, it looked familiar.
I diffed it against the sendmail.cf in my home directory.  It hadn’t been altered–it was a sendmail.cf I had written.  And I was fairly certain I hadn’t enabled the “FAIL_MAIL_OVER_500_MILES” option.  At a loss, I telnetted into the SMTP port.  The server happily responded with a SunOS sendmail banner.
Wait a minute… a SunOS sendmail banner?  At the time, Sun was still shipping Sendmail 5 with its operating system, even though Sendmail 8 was fairly mature.  Being a good system administrator, I had standardized on Sendmail 8.  And also being a good system administrator, I had written a sendmail.cf that used the nice long self-documenting option and variable names available in Sendmail 8 rather than the cryptic punctuation-mark codes that had been used in Sendmail 5.
The pieces fell into place, all at once, and I again choked on the dregs of my now-cold latte.  When the consultant had “patched the server,” he had apparently upgraded the version of SunOS, and in so doing downgraded Sendmail.  The upgrade helpfully left the sendmail.cf alone, even though it was now the wrong version.
It so happens that Sendmail 5–at least, the version that Sun shipped, which had some tweaks–could deal with the Sendmail 8 sendmail.cf, as most of the rules had at that point remained unaltered.  But the new long configuration options–those it saw as junk, and skipped.  And the sendmail binary had no defaults compiled in for most of these, so, finding no suitable settings in the sendmail.cf file, they were set to zero.
One of the settings that was set to zero was the timeout to connect to the remote SMTP server.  Some experimentation established that on this particular machine with its typical load, a zero timeout would abort a connect call in slightly over three milliseconds.
An odd feature of our campus network at the time was that it was 100% switched.  An outgoing packet wouldn’t incur a router delay until hitting the POP and reaching a router on the far side.  So time to connect to a lightly-loaded remote host on a nearby network would actually largely be governed by the speed of light distance to the destination rather than by incidental router delays.
Feeling slightly giddy, I typed into my shell:

Read More

Email saves trees!

The arrival of my first spam email was a bit of a shock. I’d been on the internet for years by that point and had never seen junk mail in my inbox. Of course, the Internet was a very different place. The web was still a toddler. There was no email marketing industry. In fact, there wasn’t much commerce on the web at all. Much of the “surfing” I did was using gopher and ftp rather than the fancy new web browser called NCSA Mosaic. To share pictures we actually had to send printouts by postal mail.
It wasn’t just getting spam that was memorable (oh, great! now my inbox is going to look like my postal box, stuffed full of things I don’t want), it was the domain name: savetrees.com. Built into the domain name was an entire argument defending spam on the grounds of environmental friendliness. By sending spam instead of postal mail we could save the earth. Anyone who didn’t like it was morally corrupt and must hate the planet.
Why do I mention this history? During a discussion on a list for marketers earlier this week, multiple people mentioned that email marketing was clearly and obviously the much more environmentally sound way to do things. I mentioned this over on Facebook and one of my librarian friends (who was one of the people I was email friends with back in those early days) started doing her thing.
She posted her findings over on the Environmental News Bits blog: The comparative environmental impact of email and paper mail. It’s well worth a read, if only because a lot of companies have really looked into the issue in great detail. Much greater detail than I thought was being put into the issue.
I shared one of the links she found, the 2009 McAfee study, with the email marketing group discussing the issue. (You may want to put down the drinks before reading the next line.) It was universally panned as marketing and therefore the conclusions couldn’t be trusted.
Anyone who pays any attention knows that nothing we do and none of the choices we make are environmentally neutral. Plastic bags were supposed to save trees from becoming paper bags, but turned into an environmental mess of their own.
Simple slogans like “email saves trees” might make marketers feel better, and may have gained Cyberpromo a strong customer base in the early days. But the reality is different.

Read More

Email History through RFCs

Many aspects of email are a lot older than you may think.
There were quite a few people in the early 1970s working out how to provide useful services using ARPANET, the network that evolved over the next 10 or 15 years into the modern Internet.
arpanet3
They used Requests for Comment (RFCs) to document protocol and research, much as is still done today. Here are some of the interesting milestones.
April 1971 [rfc 114]RFC 114 A File Transfer Protocol.[/rfc] One of the earliest services that was deployed so as to be useful to people, rather than a required part of the network infrastructure, was a way to transfer files from one computer to another. In the [rfc 114]earliest versions[/rfc] of the service I can find it could already append text to an existing file. This was soon used for sending short messages, initially to a remote printer from where it would be sent by internal mail, but soon also to a mailbox where they could be read online.
August 1971 [rfc 221]RFC 221 A Mail Box Protocol, Version-2[/rfc] had this prescient paragraph:

Read More