Our History of IP Addresses series starts off with (like any good Superhero movie sequel no one asked for) an origin story.
Ever since the late 19th century when Alexander Graham Bell invented the telephone, voice and data communications were a circuit-switching operation. Every telephone call had a dedicated, end-to-end, electronic connection between the two communicating parties.
As communication evolved, these communicating parties started to involve computers and started to grow in complexity. It wasn’t just voices being sent over the lines, it was crucial data that needed more bandwidth and more encryption.
But we’re getting ahead of ourselves.
Early in the 1960s, Paul Baran, an American computer scientist as part of a research program at the Research and Development (RAND) Corporation funded by the United States Department of Defense, developed something called “Distributed Adaptive Message Block Switching” which was the foundation for packet switching—a step above the aforementioned circuit switching historically used for communications up to this point—coined by Donald Davies, a computer scientist at the United Kingdom’s National Physical Laboratory.
Packet switching did catch on and that’s where we come to ARPANET.
The Advanced Research Projects Agency Network (ARPANET) was a funded by and a branch of the Advanced Research Projects Agency (ARPA) of the United States Department of Defense.
ARPANET took Davies’s (and a few others’) packet switching work and developed a network that could share a single communication link for communication between multiple pairs of receivers and transmitters.
In other words: The basis for a computer network.
The head of Behavioral Sciences and Command and Control programs at ARPA, J. C. R. Licklider (the mind behind the “Intergalactic Computer Network”—a fascinating topic for another time), convinced Ivan Sutherland (head of ARPA’s Information Processing Techniques Office (IPTO)) and Bob Taylor (NASA; later ARPA) that a computer network was crucial and needed to be developed.
Sutherland and Taylor started to create this network motivated by the fact that computers provided by ARPA would help researchers at various corporate and academic institutions to quickly distribute newly developed software and other computer science studies.
In his office, Taylor had three computer terminals connected to separate ARPA-funded computers:
In a particularly poignant anecdote, Taylor recalls,
“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. That idea is the ARPANET.”
Remember Paul Baran at the RAND Corporation? The one who’s “Distributed Adaptive Message Block Switching” concept would lead to Davies’s development of packet switching which led to Taylor’s predicament? Well he was researching systems that could survive nuclear war (this is the ‘60s, remember).
Taylor took this information and convinced ARPA’s Director, Charles M. Herzfeld, to fund his network project in 1966. Herzfeld took millions of dollars from a ballistic missile defense program and transferred it to Taylor’s budget.
That’s right—the Internet was basically funded by a ballistic missile defense program. There’s a trivia-night stopper for you.
Taylor’s ARPANET and Davies’s packet switching network at the United Kingdom’s National Physical Laboratory (NPL) would soon be connected in 1973.
To start his project, Taylor gathered a team and began working on what the standards would be in regards to the identification and authentication of users, transmission of characters, and error checking and retransmission procedures—you know, network stuff. https://www.youtube.com/embed/qkD4HVRnGJE
After everything was agreed upon, ARPA looked for bidders, 140 to be exact.
Most computer science companies, however, thought the proposal was outlandish and only 12 of the 140 potential bidders actually submitted a bid.
BBN Technologies won the bid to build the network on April 7th, 1969. BBN’s team was headed by Frank Heart and Robert Kahn.
BBN’s network composed of small computers called Interface Message Processors (IMPs) which is an infantile construct to modern-day routers. IMPs acted as gateways interconnecting local resources. At each site, IMPs were interconnected with leased lines via telecommunication data sets (i.e. modems) which had speeds of 56 kbit/s.
The host computers were connected to the IMPs through custom serial communication interfaces.
The Network Control Program
The Network Control Program (NCP) was the protocol stack running on the middle layers of the host computers on the ARPANET. The NCP utilized two port addresses (we told you it was a history of IP Addresses), which established two connections for two-way communications. An even and odd port were reserved for each application layer application or protocol.
The NCP eventually gave way to TCP/IP which we’ll go over in part two of this series.
This entire ARPANET system was designed and installed by BBN in nine months.
According to Stephen J. Lukasik, Deputy Director and Director of DARPA (1967 – 1974), the goal of ARPANET was to, “exploit new computer technologies to meet the needs of military command and control against nuclear threats, achieve survivable control of US nuclear forces, and improve military tactical and management decision making.”
The first ARPANET consisted of four IMPs located at:
The very first successful message on the ARPANET was sent by Charley Kline, a UCLA studen programmer, at 10:30 pm on October 29th, 1969.
Kline sent the message from UCLA’s host computer to the Stanford Research Institute’s host computer and the message was simply, “lo.”
Kline had meant to send, “login,” but only the letters “l” and “o” were sent before the entire system crashed.
An hour later, the systems were repaired and the full message, “login,” was received by the SIR. By December 5th, 1969, all four nodes on the ARPANET network were established.
By March of 1970, the ARPANET reached the East Coast of the United States at BBN’s headquarters in Cambridge, Massachusetts. From those five IMPs, the ARPANET grew to nine IMPs by June 1970, 13 by December 1970, 18 by September 1971, and eventually, by 1981, 213 IMPs were connected with another every 20 days thereafter.
The first country outside of the United States to be linked to the ARPANET was Norway in 1973 via a transatlantic satellite link. At the same time, a terrestrial circuit was connected to an IMP in London.
By 1975, the ARPANET was considered to be operational and the Defense Communications Agency took control away from ARPA.
In 1982, a handbook of ARPANET etiquette was published at MIT’s AI Lab and because of the government’s involvement:
“It is considered illegal to use the ARPANet for anything which is not in direct support of Government business … personal messages to other ARPANet subscribers (for example, to arrange a get-together or check and say a friendly hello) are generally not considered harmful … Sending electronic mail over the ARPANet for commercial profit or political purposes is both anti-social and illegal. By sending such messages, you can offend many people, and it is possible to get MIT in serious trouble with the Government agencies which manage the ARPANet.”
Eventually, ARPANET’s technology limitations were beginning to show under the heavy, now world-wide usage.
This led to researchers trying to improve the system and eventually two computer scientiests, the aforementioned Robert Kahn of BBN and Vint Cerf of DARPA invented TCP/IP which gave birth to the not only IP Addresses, but the Internet as we know it.
Stay tuned for Part 2 of this series when we get into how TCP/IP replaced NCP, why it was better, and how ARPANET eventually gave way to the Internet in the early 1990s.