It is funny how quickly we take things for granted that didn’t exist just a few years back (obligatory reference to Louis C.K. rant about appreciating technology). Today the thought of using a computer that’s not connected to a network is almost unimaginable. What would you do on that computer? How would you install new software? How would you send/receive email? How would you browse the web? And yet pervasive computer networking is a relatively recent arrival, especially wireless. That doesn’t mean networking itself is a new idea and there were networks going almost as far back as early computers.
Not surprisingly one of the first networks was military, the so called Semi-Automatic Ground Environment (SAGE) from the late 1950s. Then in the 1960s the Semi-Automatic Business Research Environment (SABRE) went online. If SABRE sounds familiar to you it should, because SABRE is the commercial airline reservation system that is still in use today! Another seminal network was the Dartmouth Time-Sharing System (DTSS) which was in operation from 1964 to 1999. What many early networks had in common is that they were more or less one off proprietary implementations.
Yet, today’s ubiquitous networking can trace its ancestry almost equally far back as these proprietary networks: the Advanced Research Projects Agency Network (ARPANET) was created in the 1960s also with the first message sent on October 29, 1969. The ideas underlying ARPANET go back to a series of memos written in the early 1960s by JCR Licklider who all the way back then used the term “Intergalactic Computer Network” (yeah for big thinking!) and to papers written around the same time by Leonard Kleinrock.
While the ARPANET innovations are too numerous to list here, there are a three that are absolutely critical to understand. First, is the notion of a packet-switched network. All communications until then had been circuit-switched. If you wanted to talk on the phone to another person across the country a complete electrical circuit had to be established between you and that person. A circuit is literally the electronic equivalent of two tin cans connected by string! Circuits have exactly the same problems as string: they don’t scale well as each conversation requires its own circuit and they are easily disrupted if a circuit (string) is dropped (cut). In a packet switched network communication is cut up into small data packets instead and these packets can travel along different paths between their origin and destination.
Second is the notion of a network of networks (hence Internet) or as it was initially known an “open-architecture network” that would connect networks that could be separately designed and maintained, recognizing that different approaches would be best for different settings (business versus military, radio transmission versus wire, etc). This idea was first put forth in the early 1970s by Bob Kahn. After setting out crucial core principles of “open-architecture” such as no global network control (i.e., a distributed system) and only requiring best effort (i.e., no guarantee of delivery), Kahn worked with Vint Cerf on coming up with a protocol. Their incredibly productive collaboration results in a first version of what became known as the Transmission Control Protocol (TCP) that allowed for reliable information transmission and still adhered to the core principles of an open archtiecture
A short while later they realized that TCP was too comprehensive and it was broken up into two pieces which became widely known as TCP/IP where the IP stands simply for Internet Protocol. The Internet Protocol defines what an address for a computer on the network looks like and how those addresses are used to route packets from one computer to another along a path of potentially many intermediary points. Those addresses are known as IP addresses. The current version of the Internet Protocol is IPv4 (version 4), which allows for 32-bit long addresses. At the end of the 1970s that must have seemed like it would last for a very long time as this allows for about 4 billion separate addresses! Yet in 2011 alone there will be about half a billion smartphones sold in the world, each essentially a computer on the network. In a subsequent post I will describe how we are currently dealing with the resulting address shortage and how we hope to deal with it in the future (if you have followed the Tech Tuesday series so far you should already be able to guess the answer: more bits for the addresses - 128-bits to be precise under IPv6).
If you are still reading this, you might ask, but what about “Ethernet” how does that fit into the equation? Or “Wifi”? Great questions! These are protocols at what is commonly referred to as the “Physical Layer” of networking. These quite literally address the question of how to transmit a series of bits down a wire or through the air. This is the third breakthrough innovation: a layered architecture of networks where each layer serves a different and well defined function. Over the years this model has become refined into what is now know as the Open Systems Interconnection (OSI) 7-layer model. The bottom most layer is the Physical Layer (#1) at which protocols such as Ethernet and Wifi live. Above it is the Data Link Layer (#2) which we will skip here. IPv4 and IPv6 live in the Network Layer (#3). TCP is in the Transport Layer (#4). We will also skip for the moment the Session Layer (#5) and the Presentation Layer (#6) to point out briefly that the now ubiquitous Hyper Text Transport Protocol (HTTP) which web browsers use lives at the Application Layer (#7).
Subsequent posts will drill deeper into every aspect of networking. For now, the takeaways should be that the people who created the core networking protocols had amazing foresight in two critical regards: they created a layered and open architecture. The layering and openness has allowed for massive innovation and scaling to proceed independently at different layers which has given us huge improvements in speed, types of transmission (wireless), number of connected devices and applications, including the world wide web.