Tag Archives: TCP/IP

Our Very Own Babel Fish and How It Made the Internet Possible

In Douglas Adams’ classic science fiction series, The Hitchhiker’s Guide to the Galaxy, there was a small animal called a babel fish that when inserted in one’s ear would translate languages into the user’s language.

We actually have such a thing in reality. It’s called TCP/IP, and it’s what allows you and I to interact today through countless computers, hubs, switches, routers, and servers to our monitor. Back in the dawning age of the Internet, when the U.S. Dept. of Defense was first playing around with it in the 1960s, they found that different computers manufactured by different companies and bought by the U.S. could not communicate with one another directly on a network. They didn’t speak the same language, you see.

The solution to this became what we now know as TCP/IP, which stands for Transmission Control Protocol/Internet Protocol. Were it not for this simple solution, you and I would be sending letters written with ink on paper back and forth to one another right now, instead of using this instantaneous method of communication that we’ve all come to love and sometimes hate. Of course, the United States Postal Service would love it to still be that way. HA! Fortunately for us, some really smart folks at the U.S. Dept. of Defense came up with TCP/IP.

How TCP/IP basically works:

As with all other communications protocol, TCP/IP is composed of layers:

  • IP – is responsible for moving packet of data from node to node. IP forwards each packet based on a four byte destination address (the IP number). The Internet authorities assign ranges of numbers to different organizations. The organizations assign groups of their numbers to departments. IP operates on gateway machines that move data from department to organization to region and then around the world.
  • TCP – is responsible for verifying the correct delivery of data from client to server. Data can be lost in the intermediate network. TCP adds support to detect errors or lost data and to trigger retransmission until the data is correctly and completely received.
  • Sockets – is a name given to the package of subroutines that provide access to TCP/IP on most systems.*

Here’s a little byte of the history of TCP/IP:

The Internet Protocol Suite resulted from research and development conducted by the Defense Advanced Research Projects Agency (DARPA) in the early 1970s. After initiating the pioneering ARPANET in 1969, DARPA started work on a number of other data transmission technologies. In 1972, Robert E. Kahn joined the DARPA Information Processing Technology Office, where he worked on both satellite packet networks and ground-based radio packet networks, and recognized the value of being able to communicate across both. In the spring of 1973, Vinton Cerf, the developer of the existing ARPANET Network Control Program (NCP) protocol, joined Kahn to work on open-architecture interconnection models with the goal of designing the next protocol generation for the ARPANET.^

It can be fascinating to read a bit about how technologies were created and evolved. I don’t believe anyone from the 1960s,even with their wildest imaginations, could have dreamed that their tinkering with this and that would create what we now know as the Internet and the World Wide Web. It’s absolutely amazing, actually. Can you imagine what it’ll be like 50 years from now? Some of you younger folks will get to see it.

Arthur C. Clarke’s Third Law of Prediction: Any sufficiently advanced technology is indistinguishable from magic.

Learn something new. It won’t hurt you. I promise.



* Source: Yale University – Introduction to TCP/IP

^Source: Wikipedia – Internet Protocol Suite

–> If you learned something worthwhile at Wikipedia today, please help out a bit. Thanks!

Click to buy this book