Previous Page TOC Next Page


2

Introducing the Internet

This chapter provides a brief history of the Internet. And yet, no exact history can be written about the Internet because the Internet is not an easily definable thing. It is a consensus of ideas, an agreement among friends and colleagues, a reflection of technological trends. It is evidence of the notion that communication among peoples is a good thing; it is a quiet affirmation of individual initiative. In short, the Internet is a very large concept.

Therefore, what you will read in the following pages is the history of a number of discrete events that, when combined in history, resulted in the Internet.

From the Cold War—A Hot Network

The 1960s were a peculiar time in the United States. The start of the decade saw the arrival of nuclear missiles in Cuba. The simmering Cold War with Russia rose to a near boil; the threat of nuclear annihilation was a constant in nearly everyone's daily life.

Concurrent with the blockade of Cuba, the beginning of the Vietnam conflict, and political intrigue in many Third World countries, the Cold War was being fought in research labs, fueled by federal spending and public fear. It was thought that the ability to create and keep a technological edge would determine the winner of the war. Technological advances were coming in a rush, and nowhere were they coming more quickly than in the field of computers.

By the late 1960s, every major federally funded research center, including for-profit businesses and universities, had a computer facility equipped with the latest technology that America's burgeoning computer industry could offer.

The idea developed quickly that these various computer centers could be connected to share data. But the actual means by which they would be connected was colored by the ever-present Russian threat. Any network linking these defense-related centers had to be capable of withstanding disruption by a nuclear attack.

The Advanced Research Projects Agency (ARPA) within the Department of Defense was charged with finding the best way to interconnect these various computer sites.

The government's research did not start in a vacuum. Both the National Physics Lab in the United Kingdom and France's Societé Internationale de Télécommunications Aeronautiques were experimenting with a means of intercomputer communications called packet switching, which provides tremendous flexibility and reliability in moving commands and data from one computer to another.


PACKET SWITCHING VERSUS CIRCUIT SWITCHING

Packet switching solved the difficult problem of creating a network that could survive attack while providing the greatest communications flexibility. To understand the advantages of packet switching, consider the following analogy. Suppose that you work for a company that has three buildings (as shown in Figure 2.1); you want to link the computers in each building. You can string a telephone line from A to B, another from A to C, and another from B to C. When the computer in building A has a message for the computer in building C, it switches to Circuit AC and sends the message. A similar process occurs if the computer in building C has a message for the computer in build-ing B. It turns on Circuit BC and sends the message. This is called circuit switching, a method that works just fine as long as all the circuits are in place and functioning.

But what happens if a large object falls from the sky, smashing one of the telephone poles between buildings A and B, thus destroying Circuit AB? The computer in building A can no longer communicate with the computer in building B.

There is another way: Instead of depending on a circuit to send a message between buildings A and B, you can stuff your message into an electronic envelope (called a packet), put building B's address on the outside of the packet, and, if B can't receive it, send it to any computer on the network that can receive it. In this case, building C would receive the packet, read the address on it, and send it out over its working lines to building B.

Packet switching does not rely on fixed connections between two computers. Rather, messages are contained in packets, which can be routed among computers until they reach their final destination. Very large messages are divided into several packets, each of which is addressed and contains a sequence number so that the message can be reassembled at its destination. In the early days of the Internet, every computer contained a list of all the other computers it knew about on the network. The list had to be updated on a regular basis and was difficult to maintain. Today, a number of computers throughout the world are responsible for keeping track of and registering new computer names on the Internet. (See Chapter 6, "Domain Names and Internet Addresses," for more on domain names.)

Packets can be nearly any size, but they rarely exceed 1,500 bytes in length. The packet "envelope" usually contains a "to" address, a "from" address, information about the size of the particular packet, and information on where the packet fits in the series of packets that make up a large message. The computer that receives the packet checks particular predefined locations within each packet to get this information.

Packets offer the following benefits:

Information is divided into discrete chunks that can be routed independently, along various routes, to the destination and then reassembled.

If a packet disappears or is corrupted during transmission, only the damaged packet must be re-sent, not the whole message.

Packets can be encoded for security.

Packets can be compressed to save transmission time.

A packet can contain information about itself (a checksum) that the receiver can use to validate the accuracy of the contents.

By use of a standard packet protocol (an agreement on exactly how the packets are to be handled and routed), computers and networks using different kinds of hardware and software can be linked together.

The best use of communications links can be made because packets from various locations on the network can be intermixed. Instead of getting a "busy signal" until another site is totally finished sending packets, new packets can be slipped into small breaks in the traffic—sort of like carrying on a conversation between the words of someone else's conversation.


FIGURE 2.1. Circuit switching depends on functioning circuits between any two computers that are communicating.

ARPA funded a study by the firm Bolt Beranek and Newman (BBN) to find out how communications between these research centers and military installations could be maintained in spite of a nuclear attack. By 1969, BBN had come up with a packet-switching network protocol called the Network Control Protocol and had designed a network controlling computer called an Information Message Processor (IMP), which could manage the network tasks for mainframe computers. The very first IMP was installed at UCLA that same year. By 1970, the first packet-switched computer network in the United States had been created. As shown in Figure 2.2, ARPAnet connected the University of California at Los Angeles, the University of California at Santa Barbara, Stanford University, and the University of Utah in Salt Lake City.


FIGURE 2.2. The original ARPAnet connected four university campuses.

This was the start of the Internet—four universities connected by a packet-switching network funded by ARPA. If any one link of the network failed, information could still be routed along the remaining links. This satisfied the original criteria for developing a computer network that could withstand hostile attack.

By using packets for communications, each computer was at a peer level with every other computer on the network. This arrangement decentralized network control. No one computer was the master and all had equal standing on the network. This fundamental design element was key in encouraging the growth of networks throughout the world and the eventual linking of many of these networks into one world-wide Internet.

By 1972, there were 40 different sites attached to ARPAnet. The electronic traffic between these sites included small text files sent between individual users—a transfer called electronic mail or e-mail. The University of Utah was the first to control a remote computer over the network—a process called remote login or rlogin. Large text and data files were transferred between computers on ARPAnet using File Transfer Protocol (FTP). Thus, by 1972, the core technology was in place.

Outcome of the First ICCC

In 1972, the first International Conference on Computer Communications was held in Washington, D.C. Attended by representatives from around the world, the conference sought an agreement about communication protocols between different computers and networks. Vinton Cerf, who was involved in the establishment of the ARPAnet at UCLA, was named the first chairman of the InterNetwork Working Group, a group that was charged with creating a protocol that could be used by nearly any computer network in the world to communicate with any other network.

The year following the ICCC, ARPA, newly renamed Defense Advanced Research Projects Agency (DARPA), began a program called the Internetting Project to study how to link packet-switching networks together.

These two projects resulted in the development and introduction of the two basic Internet protocols. In 1974, Vinton Cerf and Robert Kahn released the Internet Protocol (IP) and the Transmission Control Protocol (TCP). These two protocols defined the way in which messages (files or commands) are passed among computer networks on the Internet.


TCP/IP—AN OVERVIEW

Fundamentally, communications protocols are rules that govern the way one machine communicates with another. We can use the English language to demonstrate. When you are reading text written in English, you have some idea of what rules—protocols—govern the language. For example, you know that most sentences start with a capitalized word, and that a sentence ends with some sort of punctuation mark. In between, sentence fragments are separated by commas, semicolons, or colons. Large thoughts are divided into paragraphs (unless you are Norman Mailer), and so on. Thus, there are commonly understood rules governing written communication.

The Internet Protocol (IP) is a similar body of rules that forms the foundation for all communications over the Internet. Among the rules the IP establishes are these:

1. Every node (computer) on the Internet has an Internet address made up of four numbers, and each number is less than 256. (For example, my Internet provider's address is 192.108.254.10.) The address numbers are separated by periods when written out.

2. All messages are divided into packets of information.

3. Each message packet is assembled (electronically speaking) into an IP envelope.

4. The IP envelope contains the address to which the envelope is being sent and the address of the computer sending the message.

Some of the computers that make up the Internet are called routers. These computers are responsible for directing packets sent out on the Internet to the correct destination. Not every computer on the Internet is a router, nor is it necessary that every computer on the Internet know the location and path to the computer that the packet is being sent to. It is analogous to your mail carrier picking up an envelope you have addressed to Aunt Flo who lives on 220 E. West St. in Walla Walla, Washington. The person who picked up your mail may not even know where Walla Walla is. But your mail carrier carries the envelope to a post office that routes the envelope to a central post office near Walla Walla, which, in turn, routes the envelope to Aunt Flo's local post office, where a postal carrier picks it up and delivers it to 220 E. West St.

The IP address contains finer and finer location information as you read from left to right. The first IP number indicates which major part of Internet the destination network is on; the right-most number indicates the specific machine being addressed. Again using my Internet provider as an example, the right-most number (10) in the IP address 192.108.254.10 is a Sun workstation named Kelly.

Most protocols have layers, and the Internet protocols are no exception. The Internet Protocol (IP) is the foundation; laying on top of the IP is yet another protocol called the Transmission Control Protocol (TCP). Most often, you see these two protocols referred to together as TCP/IP.

TCP is used to handle large amounts of data and to handle situations in which the transmitted data is corrupted. TCP divides large messages into multiple packets. Each packet is then assembled into a TCP envelope, which is in turn assembled into an IP envelope. At the receiving end, the TCP envelopes are separated from the IP envelopes and the original message or data is reassembled. If one or more packets are corrupted (as indicated by bad checksums), the originating computer is sent a request to issue a replacement for the bad packet.

The work done by Kahn and Cerf continues to serve the Internet community. TCP/IP is the protocol of choice in most new networks established today. The approach used in TCP/IP is so straightforward that the original goal of creating a communications pathway among many different kinds of networks using their own internal protocols continues to be met.

It was, however, a curious, counter-intuitive event (given the times and the Cold War fears) that truly made the Internet broadly available: DARPA decided to release TCP/IP to the world, free of charge, with no restrictions. In other words, a core technology that solved the problem of computer-network reliability in times of war was suddenly released to the world.

UNIX and Digital Equipment Corporation

The next part of the Internet story involves the development of a new concept in computer operating systems and a low-cost minicomputer.

Digital Equipment Corporation (DEC) was one of the early developers of the minicomputer, a breakthrough in relatively low-cost computers for the masses (as opposed to the large mainframes from IBM and Control Data that cost hundreds of thousands or even millions of dollars). DEC developed the PDP series of computers, followed in the early 1970s by the VAX family of computers. These moderately powerful computers could be afforded by many colleges, universities, and high-tech businesses. Originally, the VAX computers were only shipped with operating system software called VMS, but that was soon to change.

About the same time, researchers at AT&T Bell Labs were experimenting with a home-grown, multitasking, operating system that ran on DEC minicomputers: a system called UNIX.

UNIX was, from the beginning, an operating system that understood networking. In 1976, Mike Lesk at AT&T Bell Labs created a software package called the UNIX-to-UNIX Copy Program, or UUCP. With UUCP, any UNIX computer with a modem could call any other UNIX computer with a modem and transfer files. AT&T Bell Labs starting shipping UUCP with UNIX version 7 in 1977.

Here was a widely available and affordable computer that could run an operating system that actually had built-in support for networking. The UNIX/DEC combination spread like wildfire throughout industry and academia. Networking was no longer an esoteric act performed on expensive, government-sponsored computer facilities. All those slightly renegade UNIX users quickly understood and adopted the idea of networking.

UNIX was the original "open" system, and it promoted an anarchistic attitude toward computing. Clashes between traditional data processing organizations (with their rightful focus on limited access and security) were the antithesis of the UNIX approach. As much as anything else, UNIX was a game, and its users were global players.


AN UNDERGROUND NETWORK

The community was held in some disrepute by the data-processing community in many companies. While working at Tektronix, Inc. in the late 1970s and early 1980s, I had the privilege of watching a bit of anarchistic behavior unfold.

During that time, a new business unit inside Tektronix was started for developing products to serve the emerging microcomputer marketplace. During the course of creating the business unit, the company purchased several DEC VAX computers and the decision was made to use the UNIX operating system. In addition, the computers were networked to one another internally, and a few modems were purchased to provide dial-up capability. Of course, if users could dial in, they could usually dial out, too.

There was a certain amount of fear at the corporate level about having a computer network—used to develop new products—communicating with other computer sites. Because UNIX was a fairly open operating system, it was difficult to guarantee that outsiders could not break into the development computers and steal designs. Therefore, Tektronix had a list of approved external sites. Any site not on the list could not be dialed up, nor could any site that was not on the list dial in to Tektronix's com-puters.

Within 20 miles or so of the Tektronix site was a private institution of higher learning called Reed College. Because of the rambunctious nature of college students, it was determined that there would be no computer-to-computer communications between Reed College and Tektronix.

Not everyone at the lower levels believed in this policy. In fact, there were those determined to demonstrate the folly of placing artificial limitations on a computer network. Work was immediately undertaken to establish an alternative, "underground," connection to Reed College. This connection is shown in Figure 2.3.

Tektronix could not communicate directly with Reed College. However, the University of California at Berkeley was on the approved list. UC Berkeley could, in turn, establish a link between its UNIX computers and Duke University in North Carolina. Duke had a link to Reed. Therefore, a long-distance link was established between the VAX computers in Beaverton, Oregon, and Reed College's computers in Portland, Oregon.

This UUCP network was carried over the public telephone system, which was drafted to serve as the information superhighway of the moment.


FIGURE 2.3. Using UUCP to make a local call.

The wide distribution of DEC minicomputers running the UNIX operating system created a very large, casual network of computers running over the public telephone systems. This was the epitome of a decentralized, ungoverned network.

Independent Network Evolution

Toward the end of the 1970s, networks were starting to pop up everywhere, and they ran on all kinds of computers.

In 1977, the University of Wisconsin decided to create a network for science researchers. More than 100 researchers used Theorynet to trade e-mail messages with one another.

At this time, ARPAnet was serving a select number of research centers, but not all. Many centers, including the University of Wisconsin, were justifiably concerned that sites connected to the ARPAnet over its high-speed dedicated network were receiving an unfair advantage when compared to non-ARPAnet sites depending on slower telephone lines and UUCP. Wisconsin felt that there might be a real need for another network: one like ARPAnet but focused specifically on computer science. In 1979, a meeting was held between a number of researchers from various universities (including Wisconsin), DARPA, and the National Science Foundation.

That meeting in 1979 turned out to be the launch meeting for the creation of the Computer Science Research Network (CSnet), funded in large part by the National Science Foundation.

The story swings back now to Vinton Cerf. In 1980, Cerf suggested connecting ARPAnet and CSnet with a gateway, using the TCP/IP protocols he and Robert Kahn had developed. Cerf also suggested that CSnet could exist as a collection of several independent networks that shared a gateway to ARPAnet (see Figure 2.4).


FIGURE 2.4. The new CSnet linked to ARPAnet with a gateway.

It can be argued that this was the real birth of the Internet. Keep in mind that the Internet does not exist as a physical entity. You cannot reach your finger out and touch anything that can be called the Internet. The Internet is a collection of independent, free-standing networks that have come to an agreement about how to talk to one another. That is what Vinton Cerf envisioned when he suggested coupling CSnet to ARPAnet.

By 1982, researchers could dial in to CSnet to read and send e-mail both to sites within CSnet and to sites within ARPAnet. Thus was born the physical implementation of Internet.

Start Spreading the News

While CSnet was being created and joined to ARPAnet, Steve Bellovin was busy at the University of North Carolina. Steve had the idea for a software application to create an electronic newspaper.

Actually, the newspaper paradigm doesn't quite fit unless your local newspaper has an editorial section as large as all the rest of the newspaper to which you can respond instantly. News on the Internet is definitely interactive, promoting letters to the editor, letters to authors, and even letters to innocent bystanders.

Steve's concept was turned into Release A of Usenet, developed by Steve Daniel and Tom Truscutt. This first release firmed up the concept of newsgroups and newsgroup hierarchies. The newsgroup hierarchies have since been expanded (and, in one notable case, sidestepped), but the fundamental operation remains the same.

Usenet's function was to provide a network that would enable any user to submit an article that would be routed to all computers on the network. It allowed any user to send a message that all other users on the network could have access to, or to all users that subscribed to one or more specific newsgroups. UUCP was called into action; very soon, a series of computers were calling one another, copying files back and forth. If a user posted an article, it was distributed to the host computer and sent out over the network, moving from host to host.


USENET IS ORGANIZED

In the beginning of Usenet, there were only two hierarchies: The mod hierarchy was intended to discuss product modifications and bug fixes; the net hierarchy was used to discuss network-related issues. Starting in 1986, the Usenet hierarchies underwent a major change, and seven new main hierarchies were created in the Great Renaming:

comp computer-related discussions
news news about Usenet
rec recreation discussions
sci science discussions
soc sociological discussion
talk chit-chat
misc miscellaneous discussions

The creation of the new hierarchies allowed for a more logical grouping of messages. Groups were organized by category, subcategory, sub-subcategory, and so on. For example, under sci, there are now a number of subcategories such as chem, physics, and med (medicine). Under these subcategories are further subcategories. These groups are listed in a standard way such as this:

sci.med.pharmacy
sci.med.psychobiology
sci.med.nutrition

Of equal importance, however, was that a number of controversial discussions began, which also created subgroups. These were all lumped into the talk hierarchy, and they fostered a certain amount of sponsor censorship.

In the early days of Usenet, news feeds were being leaked on to the DARPA-sponsored ARPAnet. By the time the official ARPAnet overseers noticed that there may have been news traffic unsuitable for forwarding over a government network, it was too late. This prompted the creation of a new protocol called Network News Transfer Protocol (NNTP), which is used to carry Usenet news over TCP/IP connections only to sites that want it.

More top-level categories have been added. One of the most popular of these is alt The alt groups have a simpler procedure for adding new groups (see Chapter 17, "Reading and Posting the News: Using Usenet," for information about group creation).The alt category has grown rapidly and now includes some of the most esoteric, often interesting, and borderline (un)acceptable groups.

Usenet now has over 10,000 different groups. If you can think of a topic, there's probably already a group discussing it!

1983—The Year of the Network

By 1983, it seemed that networks were cropping up everywhere. Within the halls of the City University of New York, Bitnet emerged. (Bitnet is an acronym for the Because It's Time Network.) Bitnet is another source of news and opinion. Bitnet uses a mechanism called the Listserv. Under Bitnet operation, if you want to read the postings to a specific group, you subscribe to that discussion group by sending an e-mail subscription request to the appropriate Listserv. Newly posted articles are routed directly to all of the group's subscribers using e-mail.

Bitnet is waning in popularity and use, but there are now lists supported by programs such as listproc, majordomo, and L-Soft. Many former Bitnet sites are porting their lists to the Internet directly.

The use of Listserver software to support discussion groups migrated to other parts of the Internet, and the number of discussion groups is continuing to grow. As of this writing, there are more than 7,500 discussion lists available on the Internet.

In San Francisco, another important network was born: FidoNet. In 1983, Tom Jennings wrote a personal computer bulletin-board system called FidoBBS. The software rapidly grew in popularity, and soon there were Fido bulletin boards across the nation. The following year, Jennings released FidoNet, a networking package that could link all the different Fido bulletin boards using a modem and telephone line; FidoNet allows users to send e-mail to one another to create discussion groups just like Usenet and Bitnet.

By 1987, the UNIX-to-UNIX Copy (UUCP) software originally developed for the UNIX operating system was ported to the IBM PC and its clones; thus, FidoNet could share traffic with Usenet.

Because it is based on the PC, FidoNet is used world wide, linking all kinds of users to the larger Internet family.

Supercomputing and the National Science Foundation

In the latter half of the 1980s, a new concern worried the U.S. government, a fear that America's lead in the high-end computing platform business would be eroded by foreign competition. One of the outcomes of that fear was the creation of the National Science Foundation Network (NSFnet), which linked a handful of supercomputer centers across the United States. The purpose of NSFnet was to provide the highest quality computing services to researchers nationwide.

The NSFnet sites were linked by state-of-the-art transmission lines. Each of the sites in turn served as the central point for a local network or networks. The number of key sites grew over the years to more than 14, divided into two different regions: East and West.

Network Evolution and Growth

While NSFnet was being formed, the existing networks were undergoing transformations, and new networks were being developed.

In 1983, the military portion of ARPAnet was spun off into its own network, Milnet (which soon disappeared from view). ARPAnet, the grandfather of networks, was slowly being supplanted by NSFnet; in 1990, ARPAnet was removed from service.

In 1989, Bitnet merged with CSnet, the Computer Science Research Network established a decade earlier. However, in two short years, CSnet closed down, shunted aside by NSFnet.

Although at this point it may seem that all existing networks were being consumed by NSFnet, nothing could be further from the truth. New, independent networks emerged, including services such as CompuServe, Prodigy, and America Online. Businesses, particularly those involved in research and product development, created huge networks, most of which are linked to the Internet.

At the other end of the scale, alternative, independent networks continue to come and go (there are no rules that say you cannot start your own network any time you like and link it into the vast Internet). Indeed, these small, local, or international networks benefit greatly from the larger, federally supported networks because their packets can "go along for the ride," using the NSFnet high-speed transmission lines to move data from one end of the continent to the other.

It's a Wonder It Survived

As you've seen, the Internet is an amalgam of over 45,000 different, independent networks with a system largely open to all.

Looking back, we see that it could have been far different. Computer networking was started with federal funding. The government could have stepped in at any time during the past 20 years and seriously restricted its development. Fortunately, that didn't happen. Industry as well could have prevented communications with the outside world. That too, for the most part, has not happened.

The result is an Internet that spans the globe. You can send e-mail to the South Pole, Fiji, Germany, and even to the land that had such a large and inadvertent role in the development of networks in the first place—Russia.

Previous Page TOC Next Page