1.1 What is the Internet?
In this book we use the public Internet, a specific computer network (and
one which probably most readers have used), as our principle vehicle for
discussing computer networking protocols. But what is the Internet? We
would like to give you a one-sentence definition of the Internet, a definition
that you can take home and share with your family and friends. Alas, the
Internet is very complex, both in terms of its hardware and software components,
as well as the services it provides.
A Nuts and Bolts Description
Instead of giving a one-sentence definition, let's try a more descriptive
approach. There are a couple of ways to do this. One way is to describe
the nuts and bolts of the Internet, that is, the basic hardware and software
components that make up the Internet. Another way is to describe the Internet
in terms of a networking infrastructure that provides services to distributed
applications. Let's begin with the nuts-and-bolts description, using Figure
1.1-1 to illustrate our discussion.
Figure 1.1-1: Some "pieces" of the Internet
The public Internet is a world-wide computer network, i.e., a network
that interconnects millions of computing devices throughout the world.
Most of these computing devices are traditional desktop PCs, Unix-based
workstations, and so called "servers" that store and transmit information
such as WWW pages and e-mail messages. Increasingly, non-traditional
computing devices such as Web TVs, mobile computers, pagers and toasters
are being connected to the Internet. (Toasters are not the only rather
unusual devices to have been hooked up to the Internet; see the The
Future of the Living Room.) In the Internet jargon, all of these
devices are called hosts or end systems. The Internet
applications with which many of us are familiar, such as the WWW and e-mail,
are network application programs that run on such end systems.
We will look into Internet end systems in more detail in section 1.3 and
then delve deeply into the study of network applications in Chapter 2.
End systems, as well as most other "pieces" of the Internet, run
that control the sending and receiving of information within the Internet.
TCP (the Transmission Control Protocol) and
IP (the Internet
Protocol) are two of the most important protocols in the Internet.
The Internet's principle protocols are collectively known as TCP/IP
protocols. We begin looking into protocols in section 1.2. But that's
just a start --much of this entire book is concerned with computer network
End systems are connected together by communication links. We'll
see in section 1.5 that there are many types of communication links.
Links are made up of different types of physical media: coaxial
cable, copper wire, fiber optics, and radio spectrum. Different links can
transmit data at different rates. The link transmission rate is often
called the link bandwidth, and is typically measured in bits/second.
Usually, end systems are not directly attached to each other via a single
communication link. Instead, they are indirectly connected to each
other through intermediate switching devices known as routers.
A router takes information arriving on one of its incoming communication
links and then forwards that information on one of its outgoing communication
links. The IP protocol specifies the format of the information
that is sent and received among routers and end systems. The path that
transmitted information takes from the sending end system, through a series
of communications links and routers, to the receiving end system is known
as a route or path through the network. We introduce
routing in more detail in section 1.4, and study the algorithms used to
determine routes, as well as the internal structure of a router itself,
in Chapter 4.
Rather than provide a dedicated path between communicating end systems,
the Internet uses a technique known as packet switching that allows
multiple communicating end systems to share a path, or parts of a path,
at the same time. We will see that packet switching can often use a link
more "efficiently" than circuit switching (where each pair of communicating
end systems gets a dedicated path). The earliest ancestors of the
Internet were the first packet-switched networks; today's public Internet
is the grande dame of all existing packet-switched networks.
The Internet is really a network of networks. That is, the
Internet is an interconnected set of privately and publicly owned and managed
networks. Any network connected to the Internet must run the IP protocol
and conform to certain naming and addressing conventions. Other than these
few constraints, however, a network operator can configure and run its
network (i.e., its little "piece" of the Internet) however it chooses.
Because of the universal use of the IP protocol in the Internet, the IP
protocol is sometimes referred to as the Internet dail tone.
The topology of the Internet, i.e., the structure of the interconnection
among the various pieces of the Internet, is loosely hierarchical.
Roughly speaking, from bottom-to-top, the hierarchy consists of end systems
connected to local Internet Service Providers (ISPs) though access
networks. An access network may be a so-called local area network
within a company or university, a dial telephone line with a modem, or
a high-speed cable-based or phone-based access network. Local ISP's are
in turn connected to regional ISPs, which are in turn connected to national
and international ISPs. The national and international ISPs are connected
together at the highest tier in the hierarchy. New tiers and branches (i.e.,
new networks, and new networks of networks) can be added just as a new
piece of Lego can be attached to an existing Lego construction. In
the first half of 1996, approximately 40,000 new network addresses
were added to the Internet [Network 1996]
- an astounding growth rate.
The public Internet (i.e., the global network of networks discussed above)
is the network that one typically refers to as the Internet.
There are also many private networks, such as certain corporate and government
networks, whose hosts are not accessible from (i.e., they can not exchange
messages with) hosts outside of that private network. These private
networks are often referred to as intranets, as they often use the
same "internet technology" (e.g., the same types of host, routers, links,
protocols, and standards) as the public Internet.
At the technical and developmental level, the Internet is made possible
through creation, testing and implementation of Internet Standards.
These standards are developed by the Internet
Engineering Task Force (IETF). The IETF standards documents are called
(request for comments). RFCs started out as general request for
comments (hence the name) to resolve architecture problems which faced
the precursor to the Internet. RFCs, though not formally standards, have
evolved to the point where they are cited as such. RFCs tend to be
quite technical and detailed. They define protocols such as TCP,
IP, HTTP (for the Web) and SMTP (for open-standards e-mail). There
are more than 2000 different RFC's
A Service Description
The discussion above has identified many of the pieces that make up the
Internet. Let's now leave the nuts and bolts description and take
a more abstract, service-oriented, view:
The Internet allows distributed
applications running on its end systems to exchange data with each
other. These applications include remote login, file transfer, electronic
mail, audio and video streaming, real-time audio and video conferencing,
distributed games, the World Wide Web, and much much more [AT&T
1998]. It is worth emphasizing that the Web is not a separate network
but rather just one of many distributed applications that use the
communication services provided by the Internet. The Web could
also run over a network besides the Internet. One reason that the Internet
is the communication medium of choice for the Web, however, is that no
other existing packet-switched network connects more than 43
million [Network 1999] computers together
and has 100 million or so users [Almanac]. (By
the way, determining the number of computers hooked up to the Internet
is a very difficult task, as no one is responsible for maintaining a list
of who's connected. When a new network is added to the Internet,
its administrators do not need to report which end systems are connected
to that network. Similarly, an exiting network does not report its
changes in connected end systems to any central authority.)
The Internet provides two services to its distributed applications: a connection-oriented
service and a connectionless service. Loosely speaking, connection-oriented
service guarantees that data transmitted from a sender to a receiver will
eventually be delivered to the receiver in-order and in its entirety.
Connectionless service does not make any guarantees about eventual delivery.
Typically, a distributed application makes use of one or the other of these
two services and not both. We examine these two different services in section
1..3 and in great detail in Chapter 3.
Our second description of the Internet - in terms of the services
it provides to distributed applications -- is a non-traditional, but important,
one. Increasingly, advances in the "nuts and bolts" components of the Internet
are being driven by the needs of new applications. So it's important to
keep in mind that the Internet is an infrastructure in which new
applications are being constantly invented and deployed.
Currently the Internet does not provide a service that makes promises about
long it will take to deliver the data from sender to receiver.
And except for increasing your access bit rate to your Internet Service
Provider (ISP), you currently cannot obtain better service (e.g., shorter
delays) by paying more -- a state of affairs that some (particularly Americans!)
find odd. We'll take a look at state-of-the art Internet research
that is aimed at changing this situation in Chapter 6.
We have given two descriptions of the Internet, one in terms of the
hardware and software components that make up the Internet, the other in
terms of the services it provides to distributed applications. But perhaps
you are even more confused as to what the Internet is. What is packet
switching, TCP/IP and connection-oriented service? What are routers? What
kinds of communication links are present in the Internet? What is a distributed
application? What does the Internet have to do with children's toys?
If you feel a bit overwhelmed by all of this now, don't worry - the
purpose of this book is to introduce you to both the nuts and bolts of
the Internet, as well as the principles that govern how and why it works.
We will explain these important terms and questions in the subsequent sections
Some Good Hyperlinks
As every Internet researcher knows, some of the best and most accurate
information about the Internet and its protocols is not in hard copy books,
journals, or magazines. The best stuff about the Internet is in the Internet
itself! Of course, there's really too much material to sift
through, and sometimes the gems are few and far between. Below, we list
a few generally excellent WWW sites for network- and Internet-related material.
Throughout the book, we will also present links to relevant, high quality
URL's that provide background, original (i.e., a citation),
or advanced material related to the particular topic under study. Here
is a set of key links that you will want to consult while you proceed through
Internet Engineering Task Force (IETF):
The IETF is an open international community concerned with the development
and operation of the Internet and its architecture. The IETF was formally
established by the Internet Architecture
Board (IAB) in 1986. The IETF meets three times a year; much of its
ongoing work is conducted via mailing lists by working groups. Typically,
based upon previous IETF proceedings, working groups will convene at meetings
of the IETF to discuss the work of the IETF working groups.
The IETF is administered by the Internet Society, whose WWW
site contains lots of high-quality, Internet-related material.
The World Wide Web Consortium
(W3C): The W3C was founded in 1994 to develop common protocols for
the evolution of the World Wide Web. This an outstanding site with fascinating
information on emerging Web technologies, protocols and standards.
The Association for Computing Machinery
(ACM) and the Institute of Electrical and
Electronics Engineers (IEEE): These are the two main international
professional societies that have technical conferences, magazines, and
journals in the networking area. The ACM
Special Interest Group in Data Communications (SIGCOMM), the IEEE
Communications Society, and the IEEE
Computer Society are the groups within these bodies whose efforts are
most closely related to networking.
Connected: An Internet
Encyclopedia: An attempt to take the Internet tradition of open, free
protocol specifications, merge it with a 1990s Web presentation, and produce
a readable and useful reference to the technical operation of the Internet.
The site contains material on over 100 Internet topics.
Data communications tutorials
from the online magazine Data Communications:
One of the better magazines for data communications technology. The site
includes many excellent tutorials.
Media History Project: You
may be wondering how the Internet got started. Or you may wonder how electrical
communications got started in the first place. And you may even wonder
about what preceded electrical communications! Fortunately, the Web contains
an abundance of excellent resources available on these subjects. This site
promotes the study of media history from petroglyths to pixels. It covers
the history of digital media, mass media, electrical media, print media,
and even oral and scribal culture.
[Almanac 1998] Computer Industry Almanac,
December 1998, http://www.c-i-a.com/
[AT&T 1998] "Killer Apps," AT&T
WWW page http://www.att.com/attlabs/brainspin/networks/killerapps.html
[Network 1996] Network Wizards,
Internet Domain Survey, July 1996, http://www.nw.com/zone/WWW-9607/report.html
[Network 1999] Network Wizards,
Internet Domain Survey, January 1999, http://www.nw.com/zone/WWW/top.html
Table Of Contents
Copyright Keith W. Ross and Jim