Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Ch01.pdf kurose and ross
1. 1
Chapter 1
Computer
Networks and
the Internet
02-068 C01 pp4 6/14/02 5:45 PM Page 1
Computer networking is one of the most exciting and important technological fields
of our time. The Internet interconnects millions (and soon billions) of computers,
providing a global communication, storage, and computation infrastructure. More-over,
the Internet is currently being integrated with mobile and wireless technology,
ushering in an impressive array of new applications. Yes, computer networking has
indeed come a long way since its infancy in the 1960s. But this is only the begin-ning—
a new generation of creative engineers and computer scientists will drive the
Internet to yet unforeseen terrains. This book will provide today’s students with the
vehicles they need to journey to and explore the new lands in this exciting field.
This first chapter presents an overview of computer networking and the Inter-net.
Our goal here is to paint a broad-brush picture of computer networking, to see
the forest through the trees. We’ll cover a lot of ground in this introductory chapter
and discuss a lot of “pieces” of a computer network, while not losing sight of the
“big picture.” The chapter lays the groundwork for the rest of the book. It can also
be used for a mini-course on computer networking.
In this chapter, after introducing some basic terminology and concepts, we will
first examine the “edge” of a computer network. We’ll look at the end systems and
network applications, and the transport services provided to these applications.
We’ll then explore the “core” of a computer network, examining the links and the
switches that transport data, as well as the access networks and physical media that
2. 02-068 C01 pp4 6/14/02 5:45 PM Page 2
2 CHAPTER 1 Computer Networks and the Internet
connect end systems to the network core. We’ll learn that the Internet is a network
of networks, and we’ll learn about how these networks connect with each other.
After having completed this overview of the “edge” and “core” of a computer
network, we’ll take a broader view. We’ll examine the causes of data-transfer delay
and loss in a computer network, and provide simple quantitative models for end-to-end
delay, models that take into account transmission, propagation, and queuing de-lays.
We’ll then introduce some of the key architectural principles in computer
networking, namely, protocol layering and service models. Finally, we’ll close this
chapter with a brief history of computer networking.
1.1 What Is the Internet?
In this book we use the public Internet, a specific computer network, as our princi-pal
vehicle for discussing computer network protocols. But what is the Internet? We
would like to be able to give you a one-sentence definition of the Internet, a defini-tion
that you can take home and share with your family and friends. Alas, the Inter-net
is very complex, both in terms of its hardware and software components, as well
as in the services it provides.
1.1.1 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 infrastruc-ture
that provides services to distributed applications. Let’s begin with the nuts-and-bolts
description, using Figure 1.1 to illustrate our discussion.
The public Internet is a worldwide computer network, that is, a network that in-terconnects
millions of computing devices throughout the world. Most of these com-puting
devices are traditional desktop PCs, UNIX-based workstations, and so-called
servers that store and transmit information such as Web pages and e-mail messages.
Increasingly, nontraditional Internet end systems such as PDAs (Personal Digital
Assistants), TVs, mobile computers, automobiles, and toasters are being connected
to the Internet. (Toasters [Toasty 2002] are not the only rather unusual devices to
have been hooked up to the Internet; see “Internet Home Appliances” [Appliance
2002].) In the Internet jargon, all of these devices are called hosts or end systems.
As of January 2002 there were 100–500 million end systems using the Internet; and
this number continues to grow exponentially [ISC 2002].
End systems are connected together by communication links.We’ll see in Sec-tion
1.4 that there are many types of communication links, which are made up of dif-ferent
types of physical media, including coaxial cable, copper wire, fiber optics,
3. 1.1 What Is the Internet? 3
02-068 C01 pp4 6/14/02 5:45 PM Page 3
Key:
Local ISP
Regional ISP
Company Network
Host
(or end system)
Server Mobile Router Modem Base
station
Satellite
link
Figure 1.1 Some pieces of the Internet
and radio spectrum. Different links can transmit data at different rates. The link
transmission rate is often called the bandwidth of the link, which is typically meas-ured
in bits/second.
End systems are not usually directly attached to each other via a single commu-nication
link. Instead, they are indirectly connected to each other through intermedi-ate
switching devices known as routers. A router takes a chunk of information
arriving on one of its incoming communication links and forwards that chunk of
4. 02-068 C01 pp4 6/14/02 5:45 PM Page 4
4 CHAPTER 1 Computer Networks and the Internet
information on one of its outgoing communication links. In the jargon of computer
networking, the chunk of information is called a packet. The path that the packet
takes from the sending end system, through a series of communication links and
routers, to the receiving end system is known as a route or path through the net-work.
Rather than provide a dedicated path between communicating end systems,
the Internet uses a technique known as packet switching that allows multiple com-municating
end systems to share a path, or parts of a path, at the same time. The first
packet-switched networks, created in the 1970s, are the earliest ancestors of today’s
Internet.
End systems access the Internet through Internet Service Providers (ISPs), in-cluding
residential ISPs such as AOL or MSN, university ISPs such as Stanford Uni-versity,
and corporate ISPs such as Ford Motor Company. Each ISP is a network of
routers and communication links. The different ISPs provide a variety of different
types of network access to the end systems, including 56 Kbps dial-up modem ac-cess,
residential broadband access such as cable modem or DSL, high-speed LAN
access, and wireless access. ISPs also provide Internet access to content providers,
connecting Web sites directly to the Internet. To allow communication among Inter-net
users and to allow users to access worldwide Internet content, these lower-tier
ISPs are interconnected through national and international upper-tier ISPs, such as
the UUNet and Sprint. An upper-tier ISP consists of high-speed routers intercon-nected
with high-speed fiber-optic links. Each ISP network, whether upper-tier or
lower-tier, is managed independently, runs the IP protocol (see below), and con-forms
to certain naming and address conventions. We will examine ISPs and their
interconnection more closely in Section 1.5.
End systems, routers, and other “pieces” of the Internet, run protocols that con-trol
the sending and receiving of information within the Internet. TCP (the Trans-mission
Control Protocol) and IP (the Internet Protocol) are two of the most
important protocols in the Internet. The IP protocol specifies the format of the pack-ets
that are sent and received among routers and end systems. The Internet’s princi-pal
protocols are collectively known as TCP/IP. We begin looking into protocols in
this introductory chapter. But that’s just a start—much of this book is concerned
with computer network protocols!
The public Internet (that is, 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 many corporate and government networks, whose hosts cannot
exchange messages with hosts outside of the private network (unless the messages
pass through so-called firewalls, which restrict the flow of messages to and from the
network). These private networks are often referred to as intranets, as they use the
same types of hosts, routers, links, and protocols 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)[IETF 2002]. The IETF
standards documents are called RFCs (request for comments). RFCs started out as
general requests for comments (hence the name) to resolve architecture problems
5. 1.1 What Is the Internet? 5
02-068 C01 pp4 6/14/02 5:45 PM Page 5
that 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 3,000 different RFCs.
1.1.2 A Service Description
The preceding discussion has identified many of the pieces that make up the Inter-net.
Let’s now leave the nuts-and-bolts description and take a service-oriented view.
The Internet allows distributed applications running on its end systems to ex-change
data with each other. These applications include remote login, electronic
mail,Web surfing, instant messaging, audio and video streaming, Internet teleph-ony,
distributed games, peer-to-peer (P2P) file sharing, and much, much more. 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 Internet provides two services to its distributed applications: a connection-oriented
reliable service and a connectionless unreliable service. Loosely
speaking, the connection-oriented reliable service guarantees that data transmit-ted
from a sender to a receiver will eventually be delivered to the receiver in or-der
and in its entirety. The connectionless unreliable service does not make any
guarantees about eventual delivery. Typically, a distributed application makes use
of one or the other (but not both) of these two services.
Currently, the Internet does not provide a service that makes promises about how
long it will take to deliver the data from sender to receiver. And except for increas-ing
your access bandwidth to your Internet service provider, you currently cannot
obtain better service (for example, bounded 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.
This second description of the Internet—that is, in terms of the services it provides
to distributed applications—is a nontraditional, 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.
We have just given two descriptions of the Internet, one in terms of its hardware
and software components, the other in terms of the services it provides to distrib-uted
applications. But perhaps you are still confused as to what the Internet is. What
are packet switching, TCP/IP, and connection-oriented service? What are routers?
What kinds of communication links are present in the Internet? What is a distrib-uted
application? If you feel a bit overwhelmed by all of this now, don’t worry—the
6. 02-068 C01 pp4 6/14/02 5:45 PM Page 6
6 CHAPTER 1 Computer Networks and the Internet
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 im-portant
terms and questions in the subsequent sections and chapters.
1.1.3 What Is a Protocol?
Now that we’ve got a bit of a feel for what the Internet is, let’s consider another im-portant
buzzword in computer networking: “protocol.” What is a protocol? What
does a protocol do? How would you recognize a protocol if you met one?
A Human Analogy
It is probably easiest to understand the notion of a computer network protocol by first
considering some human analogies, since we humans execute protocols all of the
time. Consider what you do when you want to ask someone for the time of day. A
typical exchange is shown in Figure 1.2. Human protocol (or good manners, at least)
TCP connection request
TCP connection reply
GET http://www.awl.com/kurose-ross
file
Time Time
Hi
Hi
Got the time?
2:00
Time Time
Figure 1.2 A human protocol and a computer network protocol
7. 1.1 What Is the Internet? 7
02-068 C01 pp4 6/14/02 5:45 PM Page 7
dictates that one first offer a greeting (the first “Hi” in Figure 1.2) to initiate commu-nication
with someone else. The typical response to a “Hi” is a returned “Hi” mes-sage.
Implicitly, one then takes a cordial “Hi” response as an indication that one can
proceed and ask for the time of day. A different response to the initial “Hi” (such as
“Don’t bother me!” or “I don’t speak English,” or some unprintable reply) might in-dicate
an unwillingness or inability to communicate. In this case, the human protocol
would be not to ask for the time of day. Sometimes one gets no response at all to a
question, in which case one typically gives up asking that person for the time. Note
that in our human protocol, there are specific messages we send, and specific actions
we take in response to the received reply messages or other events (such as no reply
within some given amount of time). Clearly, transmitted and received messages, and
actions taken when these messages are sent or received or other events occur, play a
central role in a human protocol. If people run different protocols (for example, if
one person has manners but the other does not, or if one understands the concept of
time and the other does not) the protocols do not interoperate and no useful work can
be accomplished. The same is true in networking—it takes two (or more) communi-cating
entities running the same protocol in order to accomplish a task.
Let’s consider a second human analogy. Suppose you’re in a college class (a
computer networking class, for example!). The teacher is droning on about proto-cols
and you’re confused. The teacher stops to ask, “Are there any questions?” (a
message that is transmitted to, and received by, all students who are not sleeping).
You raise your hand (transmitting an implicit message to the teacher). Your teacher
acknowledges you with a smile, saying “Yes . . .” (a transmitted message encourag-ing
you to ask your question—teachers love to be asked questions), and you then ask
your question (that is, transmit your message to your teacher). Your teacher hears
your question (receives your question message) and answers (transmits a reply to
you). Once again, we see that the transmission and receipt of messages, and a set of
conventional actions taken when these messages are sent and received, are at the
heart of this question-and-answer protocol.
Network Protocols
A network protocol is similar to a human protocol, except that the entities exchang-ing
messages and taking actions are hardware or software components of some de-vice
(for example, computer, router, or other network-capable device). All activity
in the Internet that involves two or more communicating remote entities is governed
by a protocol. For example, protocols in routers determine a packet’s path from
source to destination; hardware-implemented protocols in the network interface
cards of two physically connected computers control the flow of bits on the “wire”
between the two network interface cards; congestion-control protocols in end sys-tems
control the rate at which packets are transmitted between sender and receiver.
Protocols are running everywhere in the Internet, and consequently much of this
book is about computer network protocols.
8. 02-068 C01 pp4 6/14/02 5:45 PM Page 8
8 CHAPTER 1 Computer Networks and the Internet
As an example of a computer network protocol with which you are probably fa-miliar,
consider what happens when you make a request to a Web server, that is,
when you type in the URL of a Web page into your Web browser. The scenario is il-lustrated
in the right half of Figure 1.2. First, your computer will send a “connection
request” message to the Web server and wait for a reply. The Web server will eventu-ally
receive your connection request message and return a “connection reply” mes-sage.
Knowing that it is now OK to request the Web document, your computer then
sends the name of the Web page it wants to fetch from that Web server in a “GET”
message. Finally, the Web server returns the Web page (file) to your computer.
Given the human and networking examples above, the exchange of messages
and the actions taken when these messages are sent and received are the key defin-ing
elements of a protocol:
A protocol defines the format and the order of messages exchanged between
two or more communicating entities, as well as the actions taken on the trans-mission
and/or receipt of a message or other event.
The Internet, and computer networks in general, make extensive use of protocols.
Different protocols are used to accomplish different communication tasks. As you
read through this book, you will learn that some protocols are simple and straight-forward,
while others are complex and intellectually deep. Mastering the field of
computer networking is equivalent to understanding the what, why, and how of net-working
protocols.
1.1.4 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 maga-zines.
Some of 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 Web sites for network- and
Internet-related material. Throughout the book, we will also present links to rele-vant,
high-quality URLs that provide background, original, or advanced material re-lated
to the particular topic under study. Here is a set of key links that you may want
to consult as you proceed through this book:
Internet Engineering Task Force (IETF), http://www.ietf.org: 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 Inter-net
Architecture Board (IAB), http://www.iab.org, in 1986. The IETF meets three
times a year; much of its ongoing work is conducted via mailing lists by working
groups. The IETF is administered by the Internet Society, http://www.isoc.org,
whose Web site contains lots of high-quality, Internet-related material.
9. 1.2 The Network Edge 9
02-068 C01 pp4 6/14/02 5:45 PM Page 9
The World Wide Web Consortium (W3C), http://www.w3.org: The W3C was
founded in 1994 to develop common protocols for the evolution of the World
Wide Web. This is an outstanding site with fascinating information on emerging
Web technologies, protocols, and standards.
The Association for Computing Machinery (ACM), http://www.acm.org, and the
Institute of Electrical and Electronics Engineers (IEEE), http://www.ieee.org:
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), http://www.acm.org/
sigcomm, the IEEE Communications Society, http://www.comsoc.org, and the
IEEE Computer Society, http://www.computer.org, are the groups within these
bodies whose efforts are most closely related to networking.
Computer Networking: A Top-Down Approach Featuring the Internet (that is, the
Web site for this textbook!), http://www.awl.com/kurose-ross:You’ll find a wealth
of resources at the Web site, including hyperlinks to relevant Web pages, Java ap-plets
illustrating networking concepts, homework problems with answers, pro-gramming
projects, streaming audio lectures coupled to slides, and much more.
1.2 The Network Edge
In the previous sections we presented a high-level overview of the Internet and net-working
protocols. We are now going to delve a bit more deeply into the compo-nents
of a computer network (and the Internet, in particular). We begin in this
section at the edge of a network and look at the components with which we are most
familiar—namely, the computers that we use on a daily basis. In the next section we
will move from the network edge to the network core and examine switching and
routing in computer networks. Then in Section 1.4 we will discuss the actual physi-cal
links that carry the signals sent between computers and switches.
1.2.1 End Systems, Clients, and Servers
In computer networking jargon, the computers connected to the Internet are often
referred to as end systems. They are referred to as end systems because they sit at
the edge of the Internet, as shown in Figure 1.3. The Internet’s end systems include
many different types of computers. End users directly interface with some of these
computers, including desktop computers (desktop PCs, Macs, and UNIX-based
workstations) and mobile computers (portable computers and PDAs with wireless
Internet connections). The Internet’s end systems also include computers with which
users do not directly interface, such as Web servers and e-mail servers. Furthermore,
an increasing number of alternative devices, such as thin clients and household
10. 02-068 C01 pp4 6/14/02 5:45 PM Page 10
10 CHAPTER 1 Computer Networks and the Internet
Local ISP
Regional ISP
Company Network
Figure 1.3 End-system interaction
appliances [Thinplanet 2002],Web TVs and set top boxes [Nesbitt 2002], and digi-tal
cameras are being attached to the Internet as end systems. For interesting discus-sions
of the future of Internet appliances see [Manelli 2001; Appliance 2001;
Dertouzos 2001; Odlyzko 1999].
End systems are also referred to as hosts because they host (that is, run) appli-cation
programs such as a Web browser program, a Web server program, an e-mail
reader program, or an e-mail server program. Throughout this book we will use the
terms hosts and end systems interchangeably; that is, host = end system. Hosts are
sometimes further divided into two categories: clients and servers. Informally,
clients tend to be desktop and mobile PCs, PDAs, and so on, whereas servers tend to
be more powerful machines hosting servers such as Web servers and mail servers.
11. 1.2 The Network Edge 11
In the context of networking software, there is another definition of a client
and server, a definition that we’ll refer to throughout this book. A client program
is a program running on one end system that requests and receives a service from a
server program running on another end system. Studied in detail in Chapter 2, this
client/server model is undoubtedly the most prevalent structure for Internet appli-cations.
The Web, e-mail, file transfer, remote login (for example, Telnet), news-groups,
and many other popular applications adopt the client/server model. Since
a client program typically runs on one computer and the server program runs on
another computer, client/server Internet applications are, by definition, distributed
applications. The client program and the server program interact with each
other by sending each
other messages over the
Internet. At this level of
abstraction, the routers,
links and other “nuts and
bolts” of the Internet serve
as a “black box” that trans-fers
messages between the
distributed, communicat-ing
components of an In-ternet
application. This is
the level of abstraction de-picted
in Figure 1.3.
Not all Internet appli-cations
today consist of
pure client programs in-teracting
with pure server
programs. For example,
with the popular peer-to-
peer file sharing appli-cations
(Napster, Gnutella,
KaZaA, and so on), the
peer-to-peer application in
the user’s end system acts
as both a client program
and a server program. The
program running in a peer
(that is, a user’s machine)
acts as a client when it re-quests
a file from another
peer; and the program acts
as a server when it sends a
file to another peer.
Case History
SEARCH FOR EXTRATERRESTRIAL LIFE
One of the niftiest applications of the Internet is the SETI@home project
[SETI@home 2002], a scientific experiment that uses Internet-connected comput-ers
in the Search for Extraterrestrial Intelligence (SETI). Anyone can participate by
running a free client program that downloads and analyzes radio telescope data.
The goal of the project is to find, in the radio telescope data, signals that were cre-ated
by extraterrestrial life.
SETI@home searches for signs of intelligent life by analyzing radio data that
are collected from Arecibo, the largest radio telescope in the world, located in the
hills of northern Puerto Rico. Massive quantities of radio data are collected on
tapes and sent to Berkeley every week. At Berkeley, the data is divided into work
units of about 300 Kbytes, which are stored in a central SETI@home server. To
participate in this project, an Internet user (for example, you!) first downloads a
client program from SETI@home that runs in the background on a host computer
(for example, your PC). The client program then sets up a TCP connection to the
central server, obtains a work unit, and closes the connection. Once a host has ob-tained
a work unit, it processes the data—mostly FFT (Fast Fourier Transform) cal-culations—
which may take from an hour to several days, depending on the power
and usage of the host. When the calculations are finished, the client program re-connects
to the central server, sends back the results, and gets a new work unit.
Today, over 3 million users from more than 200 countries have downloaded and
run the client program. In a typical day, the hosts together perform over 20 trillion
floating-point operations per second, which is faster than the largest of the super-computers.
And the SETI@home project is only the tip of the iceberg for peer-based
scientific computing. If 10 percent of the approximately one billion Internet-connected
hosts participate in peer-based computing projects, there will be enough
computing power for 100 projects the size of SETI@home [Anderson 2001].
➤
02-068 C01 pp4 6/14/02 5:45 PM Page 11
12. 02-068 C01 pp4 6/14/02 5:45 PM Page 12
12 CHAPTER 1 Computer Networks and the Internet
1.2.2 Connectionless and Connection-Oriented Service
End systems use the Internet to communicate with each other. Specifically, end-system
programs use the services of the Internet to send messages to each other. The
links, routers, and other pieces of the Internet provide the means to transport these
messages between the end-system programs. But what are the characteristics of the
communication services that the Internet provides to its end systems?
TCP/IP networks, and in particular the Internet, provide two types of services
to end-system applications: connectionless service and connection-oriented ser-vice.
A developer creating an Internet application (for example, an e-mail application,
a file transfer application, a Web application, or an Internet phone application) must
design the application to use one of these two services. We now briefly describe
these two services. (We’ll discuss these two services in much more detail in Chapter
3, which covers transport layer protocols.)
Connection-Oriented Service
When an application uses the connection-oriented service, the client program and
the server program (residing in different end systems) send control packets to each
other before sending packets with real data (such as e-mail messages). This so-called
handshaking procedure alerts the client and server, allowing them to prepare
for an onslaught of packets. Once the handshaking procedure is finished, a connec-tion
is said to be established between the two end systems.
It is interesting to note that this initial handshaking procedure is similar to the
protocol used in human interaction. The exchange of “Hi’s” we saw in Figure 1.2 is
an example of a human “handshaking protocol” (even though handshaking is not lit-erally
taking place between the two people). For the Web interaction also shown in
Figure 1.2, the first two messages exchanged are also handshaking messages. The
subsequent two messages—the GET message and the response message containing
the file—include real data and are sent only after the connection has been established.
Why the terminology “connection-oriented service” and not just “connection
service”? This terminology is due to the fact that the end systems are connected in a
very loose manner. In particular, only the end systems themselves are aware of this
connection; the packet switches (that is, routers) within the Internet are completely
oblivious to the connection. Indeed, a connection in the Internet consists of nothing
more than allocated buffers and state variables in the end systems; the intervening
packet switches do not maintain any connection-state information.
The Internet’s connection-oriented service comes bundled with several other
services, including reliable data transfer, flow control, and congestion control. By
reliable data transfer, we mean that an application can rely on the connection to
deliver all of its data without error and in the proper order. Reliability in the Internet
is achieved through the use of acknowledgments and retransmissions. To get a pre-liminary
feel for how the Internet implements the reliable transport service, consider
an application that has established a connection between end systems A and B.
13. 1.2 The Network Edge 13
02-068 C01 pp4 6/14/02 5:45 PM Page 13
When end system B receives a packet from A, it sends an acknowledgment; when
end system A receives the acknowledgment, it knows that the corresponding packet
has definitely been received. When end system A doesn’t receive an acknowledg-ment,
it assumes the packet it sent wasn’t received by B and thus retransmits the
packet. Flow control makes sure that neither side of a connection overwhelms the
other side by sending too many packets too fast. Indeed, there is a risk that the re-ceiver
may not be able to keep up with the rate at which the sender is sending pack-ets.
The flow-control service forces the sending end system to reduce its rate
whenever there is such a risk. We’ll see in Chapter 3 that the Internet implements
the flow-control service by using sender and receiver buffers in the communicating
end systems. The Internet’s congestion-control service helps prevent the Internet
from entering a state of gridlock. When a router becomes congested, its buffers can
overflow and packet loss can occur. In such circumstances, if every pair of commu-nicating
end systems continues to pump packets into the network as fast as they can,
gridlock sets in and few packets are delivered to their destinations. The Internet
avoids this problem by forcing end systems to decrease the rate at which they send
packets into the network during periods of congestion. End systems are alerted to
the existence of severe congestion when they stop receiving acknowledgments for
the packets they have sent.
We emphasize here that although the Internet’s connection-oriented service
comes bundled with reliable data transfer, flow control, and congestion control,
these three features are by no means essential components of a connection-oriented
service. A different type of computer network may provide a connection-oriented
service to its applications without bundling in one or more of these features. Indeed,
any protocol that performs handshaking between the communicating entities before
transferring data is a connection-oriented service [Iren 1999].
The Internet’s connection-oriented service has a name—TCP (Transmission
Control Protocol); the initial version of the TCP protocol is defined in the Internet
Request for Comments RFC 793 [RFC 793]. The services that TCP provides to an
application include reliable transport, flow control, and congestion control. It is im-portant
to note that an application need only care about the services that are pro-vided;
it need not worry about how TCP actually implements reliability, flow
control, or congestion control. We, of course, are very interested in how TCP imple-ments
these services, and we shall cover these topics in detail in Chapter 3.
Connectionless Service
There is no handshaking with the Internet’s connectionless service. When one side
of an application wants to send packets to the other side of the application, the
sending program simply sends the packets. Since there is no handshaking proce-dure
prior to data packet transmission, data can be delivered sooner. But there is no
reliable data transfer either, so a source never knows for sure which packets have
arrived at the destination. Moreover, the Internet’s connectionless service makes no
provision for flow control or congestion control. The Internet’s connectionless
14. 02-068 C01 pp4 6/14/02 5:45 PM Page 14
14 CHAPTER 1 Computer Networks and the Internet
service is called UDP (User Datagram Protocol); UDP is defined in the Internet
Request for Comments RFC 768.
Most of the more familiar Internet applications use TCP, the Internet’s connection-oriented
service. These applications include Telnet (for remote login), SMTP (for
electronic mail), FTP (for file transfer), and HTTP (for the Web). Nevertheless, UDP,
the Internet’s connectionless service, is used by many applications, including many of
the emerging multimedia applications, such as Internet phone and video conferencing.
1.3 The Network Core
Having examined the end systems and end-end transport service model of the Inter-net,
let us now delve more deeply into the “inside” of the network. In this section
we study the network core—the mesh of routers that interconnect the Internet’s end
systems. Figure 1.4 highlights the network core with thick, shaded lines.
1.3.1 Circuit Switching and Packet Switching
There are two fundamental approaches toward building a network core: circuit
switching and packet switching. In circuit-switched networks, the resources
needed along a path (buffers, link bandwidth) to provide for communication be-tween
the end systems are reserved for the duration of the communication session.
In packet-switched networks, these resources are not reserved; a session’s messages
use the resources on demand, and as a consequence, may have to wait (that is,
queue) for access to a communication link. As a simple analogy, consider two
restaurants—one that requires reservations and another that neither requires reserva-tions
nor accepts them. For the restaurant that requires reservations, we have to go
through the hassle of first calling before we leave home. But when we arrive at the
restaurant we can, in principle, immediately communicate with the waiter and order
our meal. For the restaurant that does not require reservations, we don’t need to
bother to reserve a table. But when we arrive at the restaurant, we may have to wait
for a table before we can communicate with the waiter.
The ubiquitous telephone networks are examples of circuit-switched networks.
Consider what happens when one person wants to send information (voice or facsim-ile)
to another over a telephone network. Before the sender can send the information,
the network must first establish a connection between the sender and the receiver. In
contrast with the TCP connection that we discussed in the previous section, this is a
bona fide connection for which the switches on the path between the sender and re-ceiver
maintain connection state for that connection. In the jargon of telephony, this
connection is called a circuit. When the network establishes the circuit, it also re-serves
a constant transmission rate in the network’s links for the duration of the con-nection.
Since bandwidth has been reserved for this sender-to-receiver connection,
the sender can transfer the data to the receiver at the guaranteed constant rate.
15. 1.3 The Network Core 15
02-068 C01 pp4 6/14/02 5:45 PM Page 15
Local ISP
Regional ISP
Company Network
Figure 1.4 The network core
Today’s Internet is a quintessential packet-switched network. Consider what
happens when one host wants to send a packet to another host over the Internet. As
with circuit switching, the packet is transmitted over a series of communication
links. But with packet switching, the packet is sent into the network without reserv-ing
any bandwidth whatsoever. If one of the links is congested because other pack-ets
need to be transmitted over the link at the same time, then our packet will have
to wait in a buffer at the sending side of the transmission link, and suffer a delay.
The Internet makes its best effort to deliver packets in a timely manner, but it does
not make any guarantees.
Not all telecommunication networks can be neatly classified as pure circuit-switched
networks or pure packet-switched networks. For example, for networks
based on the Asynchronous Transfer Mode (ATM) technology (a topic we consider
16. 16 CHAPTER 1 Computer Networks and the Internet
in Chapter 5), a connection can make a reservation and yet its messages may still
wait for congested resources! Nevertheless, this fundamental classification into
packet- and circuit-switched networks is an excellent starting point in understanding
telecommunication network technology.
Circuit Switching
This book is about computer networks, the Internet, and packet switching, not about
telephone networks and circuit switching. Nevertheless, it is important to understand
why the Internet and other computer networks use packet switching rather than the
more traditional circuit-switching technology used in the telephone networks. For
this reason, we now give a brief overview of circuit switching.
Figure 1.5 illustrates a circuit-switched network. In this network, the four cir-cuit
switches are interconnected by four links. Each of these links has n circuits, so
that each link can support n simultaneous connections. The hosts (for example, PCs
End-to-end connection
between Hosts A and B, using
one “circuit” in each of the links
Each link consists
of n “circuits”
(TDM or FDM)
Key:
Host Circuit switch
Host A
Host B
Figure 1.5 A simple circuit-switched network consisting of four switches and
four links
02-068 C01 pp4 6/14/02 5:45 PM Page 16
17. 1.3 The Network Core 17
02-068 C01 pp4 6/14/02 5:45 PM Page 17
and workstations) are each directly connected to one of the switches. When two
hosts want to communicate, the network establishes a dedicated end-to-end connec-tion
between two hosts. (Conference calls between more than two devices are, of
course, also possible. But to keep things simple, let’s suppose for now that there are
only two hosts for each connection.) Thus, in order for host A to send messages to
host B, the network must first reserve one circuit on each of two links. Because each
link has n circuits, for each link used by the end-to-end connection, the connection
gets the fraction 1/n of the link’s bandwidth for the duration of the connection.
Multiplexing in Circuit-Switched Networks
A circuit in a link is implemented with either frequency-division multiplexing
(FDM) or time-division multiplexing (TDM).With FDM, the frequency spectrum
of a link is shared among the connections established across the link. Specifically,
the link dedicates a frequency band to each connection for the duration of the con-nection.
In telephone networks, this frequency band typically has a width of 4 kHz
(that is, 4,000 Hertz or 4,000 cycles per second). The width of the band is called, not
surprisingly, the bandwidth. FM radio stations also use FDM to share the mi-crowave
frequency spectrum.
The trend in modern telephony is to replace FDM with TDM. Most links in
most telephone systems in developed countries currently employ TDM. For a TDM
link, time is divided into frames of fixed duration, and each frame is divided into a
fixed number of time slots. When the network establishes a connection across a link,
the network dedicates one time slot in every frame to the connection. These slots are
dedicated for the sole use of that connection, with a time slot available for use (in
every frame) to transmit the connection’s data.
Figure 1.6 illustrates FDM and TDM for a specific network link supporting up
to four circuits. For FDM, the frequency domain is segmented into four bands, each
of bandwidth 4 kHz. For TDM, the time domain is segmented into frames, with four
time slots in each frame; each circuit is assigned the same dedicated slot in the re-volving
TDM frames. For TDM, the transmission rate of a circuit is equal to the
frame rate multiplied by the number of bits in a slot. For example, if the link trans-mits
8,000 frames per second and each slot consists of eight bits, then the transmis-sion
rate of a circuit is 64 Kbps.
Proponents of packet switching have always argued that circuit switching is
wasteful because the dedicated circuits are idle during silent periods. For example,
when one person in a telephone call stops talking, the idle network resources (fre-quency
bands or slots in the links along the connection’s route) cannot be used by
other ongoing connections. As another example of how these resources can be under-utilized,
consider a radiologist who uses a circuit-switched network to remotely access
a series of x-rays. The radiologist sets up a connection, requests an image, contem-plates
the image, and then requests a new image. Network resources are wasted during
the radiologist’s contemplation periods. Proponents of packet switching also enjoy
18. 02-068 C01 pp4 6/14/02 5:45 PM Page 18
18 CHAPTER 1 Computer Networks and the Internet
4KHz
FDM
TDM
Link Frequency
4KHz
2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
Slot
1
Key:
Frame
All slots labeled “2” are dedicated
to a specific sender-receiver pair.
2
Time
Figure 1.6 With FDM, each circuit continuously gets a fraction of the bandwidth.
With TDM, each circuit gets all of the bandwidth periodically during
brief intervals of time (that is, during slots).
pointing out that establishing end-to-end circuits and reserving end-to-end bandwidth
is complicated and requires complex signaling software to coordinate the operation of
the switches along the end-to-end path.
Before we finish our discussion of circuit switching, let’s work through a numeri-cal
example that should shed further insight on the topic. Let us consider how long it
takes to send a file of 640,000 bits from host A to host B over a circuit-switched net-work.
Suppose that all links in the network use TDM with 24 slots and have a bit rate
of 1.536 Mbps. Also suppose that it takes 500 msec to establish an end-to-end circuit
before host A can begin to transmit the file. How long does it take to send the file?
Each circuit has a transmission rate of (1.536 Mbps)/24 = 64 Kbps, so it takes
(640,000 bits)/(64 Kbps) = 10 seconds to transmit the file. To this 10 seconds we add
the circuit establishment time, giving 10.5 seconds to send the file. Note that the trans-mission
time is independent of the number of links: The transmission time would be
10 seconds if the end-to-end circuit passed through one link or 100 links. (The actual
end-to-end delay also includes a propagation delay; see Section 1.6.)
Packet Switching
We saw in Section 1.1 that applications exchange messages in accomplishing their
task. Messages can contain anything the protocol designer wants. Messages may
19. 1.3 The Network Core 19
02-068 C01 pp4 6/14/02 5:45 PM Page 19
perform a control function (for example, the “Hi” messages in our handshaking ex-ample)
or can contain data, such as an e-mail message, a JPEG image, or an MP3
audio file. In modern computer networks, the source breaks long messages into
smaller chunks of data known as packets. Between source and destination, each of
these packets travels through communication links and packet switches (also
known as routers). Packets are transmitted over each communication link at a rate
equal to the full transmission rate of the link. Most packet switches use store-and-forward
transmission at the inputs to the links. Store-and-forward transmission
means that the switch must receive the entire packet before it can begin to transmit
the first bit of the packet onto the outbound link. Thus store-and-forward packet
switches introduce a store-and-forward delay at the input to each link along the
packet’s route. This delay is proportional to the packet’s length in bits. In particular,
if a packet consists of L bits, and the packet is to be forwarded onto an outbound link
of R bps, then the store-and-forward delay at the switch is L/R seconds.
Each router has multiple links attached to it. For each attached link, the router
has an output buffer (also called an output queue), which stores packets that the
router is about to send into that link. The output buffers play a key role in packet
switching. If an arriving packet needs to be transmitted across a link but finds the
link busy with the transmission of another packet, the arriving packet must wait in
the output buffer. Thus, in addition to the store-and-forward delays, packets suffer
output buffer queuing delays. These delays are variable and depend on the level of
congestion in the network. Since the amount of buffer space is finite, an arriving
packet may find that the buffer is completely filled with other packets waiting for
transmission. In this case, packet loss will occur—either the arriving packet or one
of the already-queued packets will be dropped. Returning to our restaurant analogy
from earlier in this section, the queuing delay is analogous to the amount of time
you spend waiting at the restaurant’s bar for a table to become free. Packet loss is
analogous to being told by the waiter that you must leave the premises because there
are already too many other people waiting at the bar for a table.
Figure 1.7 illustrates a simple packet-switched network. In this and subsequent
figures, packets are represented by three-dimensional slabs. The width of a slab rep-resents
the packet’s length. In this figure, all packets have the same width and hence
the same length. Suppose hosts A and B are sending packets to host E. Hosts A and
B first send their packets along 10 Mbps Ethernet links to the first packet switch.
The packet switch directs these packets to the 1.5 Mbps link. If there is congestion
at this link, the packets will queue in the link’s output buffer before being transmit-ted
onto the link. Consider now how host A and host B packets are transmitted onto
this link. As shown in Figure 1.7, the sequence of A and B packets does not follow
any fixed pattern; instead the ordering is random because packets are sent whenever
they happen to be present at the link. Because of this random ordering, we often say
that packet switching employs statistical multiplexing. Statistical multiplexing
sharply contrasts with time-division multiplexing (TDM) in circuit switching, for
which each host gets the same slot in a revolving TDM frame.
20. 02-068 C01 pp4 6/14/02 5:45 PM Page 20
20 CHAPTER 1 Computer Networks and the Internet
10 Mbps Ethernet
Key:
A
B
Packets
C
D E
Statistical
multiplexing
1.5 Mbps
Queue of
packets waiting
for output link
Figure 1.7 Packet switching
Let’s now consider how long it takes to send a packet of L bits from one host to
another host across a packet-switched network. Let’s suppose that there are Q links
between the two hosts, each of rate R bps. Assume that queuing delays and end-to-end
propagation delays are negligible and that there is no connection establishment.
The packet must first be transmitted onto the first link emanating from host A; this
takes L/R seconds. It must then be transmitted on each of the Q–1 remaining links;
that is, it must be stored and forwarded Q–1 times. Thus the total delay is QL/R.
Packet Switching Versus Circuit Switching
Having described circuit switching and packet switching, let us compare the two.
Opponents of packet switching have often argued that packet switching is not suit-able
for real-time services (for example, telephone calls and video conference calls)
because of its variable and unpredictable end-to-end delays (due primarily to vari-able
and unpredictable queuing delays). Proponents of packet switching argue that
(1) it offers better sharing of bandwidth than circuit switching and (2) it is simpler,
more efficient, and less costly to implement than circuit switching. Generally speak-ing,
people who do not like to hassle with restaurant reservations prefer packet
switching to circuit switching.
Why is packet switching more efficient? Let us look at a simple example. Sup-pose
users share a 1 Mbps link. Also suppose that each user alternates between peri-ods
of activity, when the user generates data at a constant rate of 100 Kbps, and
periods of inactivity (when the user generates no data). Suppose further that the user
is active only 10 percent of the time (and is idle drinking coffee during the remain-
21. 1.3 The Network Core 21
02-068 C01 pp4 6/14/02 5:45 PM Page 21
ing 90 percent of the time). With circuit switching, 100 Kbps must be reserved for
each user at all times. Thus, the link can support only 10 ( = 1Mbps/100 Kbps) si-multaneous
users. With packet switching, the probability that a specific user is ac-tive
is 0.1 (that is, 10 percent). If there are 35 users, the probability that there are 11
or more simultaneously active users is approximately 0.0004. (Problem 10 outlines
how this probability is obtained.) When there are 10 or fewer simultaneously active
users (which happens with probability 0.9996), the aggregate arrival rate of data is
less than or equal to 1 Mbps, the output rate of the link. Thus, when there are 10 or
fewer active users, users’ packets flow through the link essentially without delay, as
is the case with circuit switching. When there are more than 10 simultaneously ac-tive
users, then the aggregate arrival rate of packets exceeds the output capacity of
the link, and the output queue will begin to grow. (It continues to grow until the ag-gregate
input rate falls back below 1 Mbps, at which point the queue will begin to
diminish in length.) Because the probability of having more than 10 simultaneously
active users is minuscule in this example, packet switching almost always has the
same delay performance as circuit switching, but does so while allowing for more
than three times the number of users.
Although packet switching and circuit switching are both prevalent in today’s
telecommunication networks, the trend is certainly in the direction of packet switch-ing.
Even many of today’s circuit-switched telephone networks are slowly migrat-ing
toward packet switching. In particular, telephone networks often use packet
switching for the expensive overseas portion of a telephone call.
Message Segmenting
In a modern packet-switched network, the source host segments long, application-layer
messages into smaller packets and sends the smaller packets into the network;
the receiver later reassembles the packets back into the original messages. But why
bother to segment the messages into packets in the first place, only to have to re-assemble
packets into messages? Doesn’t this place an additional and unnecessary
burden on the source and destination? Although segmentation and reassembly do
complicate the design of the source and receiver, researchers and network designers
concluded in the early days of packet switching that the advantages of segmentation
greatly compensate for its complexity. Before discussing some of these advantages,
we need to introduce some terminology. We say that a packet-switched network per-forms
message switching if the sources do not segment messages (that is, they send
a message into the network as a whole). Thus message switching is a specific kind
of packet switching, in which the packets traversing the network are themselves en-tire
application messages.
Figure 1.8 illustrates message switching in a route consisting of two packet
switches and three links. With message switching, the message stays intact as it tra-verses
the network. Because the switches are store-and-forward packet switches, a
packet switch must receive the entire message before it can begin to forward the
22. 02-068 C01 pp4 6/14/02 5:45 PM Page 22
22 CHAPTER 1 Computer Networks and the Internet
Message
Source Packet switch Packet switch Destination
Figure 1.8 Message sent from source to destination without message segmentation
Packet
Source Packet switch
Packet switch Destination
Figure 1.9 Message segmented into packets before being sent from source to
destination
message on an outbound link. Note the long width of the message, illustrating the
fact that a long message that has not been segmented into packets.
Figure 1.9 illustrates packet switching (with segmented messages) for the same
network. In this example, the original message has been divided into four distinct
packets. In Figure 1.9, the first packet has arrived at the destination, the second and
third packets are in transit in the network, and the last packet is still in the source.
Again, because the switches are store-and-forward packet switches, a packet switch
must receive an entire packet before it can begin to forward the packet on an out-bound
link. When the message is segmented into packets, the network is said to
pipeline message transmission—that is, portions of the message are transmitted in
parallel by the source and the two packet switches. (The term “pipelining” comes
from the computer architecture and parallel processing literature, but also applies
here to computer networks.)
One major advantage of packet switching (with segmented messages) is that it
achieves end-to-end delays that are typically much smaller than the delays associ-ated
with message switching. We illustrate this point with the following simple ex-ample.
Consider a message that is 7.5 • 106 bits long. Suppose that between source
and destination there are two packet switches and three links, and that each link has
a transmission rate of 1.5 Mbps. Assuming there is no congestion in the network,
how much time is required to move the message from source to destination with
message switching? It takes the source 5 seconds ( = 7.5 • 106 bits / 1.5 Mbps) to
move the message from the source to the first switch. Because the switches use
store-and-forward transmission, the first switch cannot begin to transmit any bits in
the message onto the link until this first switch has received the entire message.
Once the first switch has received the entire message, it takes 5 seconds to move the
message from the first switch to the second switch. Thus it takes 10 seconds to move
23. 1.3 The Network Core 23
02-068 C01 pp4 6/14/02 5:45 PM Page 23
Source Destination
Time
(in seconds)
Message
0
5
10
15
Key:
Figure 1.10 Timing of message transfer without message segmentation
the message from the source to the second switch. Following this logic we see that a
total of 15 seconds is needed to move the message from source to destination. These
delays are illustrated in Figure 1.10.
Continuing with the same example, now suppose that the source breaks the
message into 5,000 packets, with each packet being 1,500 bits long. Again assuming
that there is no congestion in the network, how long does it take to move the 5,000
packets from source to destination? As shown in Figure 1.11, it takes the source 1
msec to move the first packet from the source to the first switch. And it takes the first
switch 1 msec to move this first packet from the first to the second switch. But while
the first packet is being moved from the first switch to the second switch, the second
packet is simultaneously moved from the source to the first switch. Thus the second
packet reaches the first switch at time = 2 msec. Following this logic we see that the
last packet is completely received at the first switch at time = 5,000 msec = 5 sec-onds.
Since this last packet has to be transmitted on two more links, the last packet
is received by the destination at 5.002 seconds.
Amazingly enough, message segmentation has reduced the end-to-end delay by
a factor of three! But why is this so? What is packet switching doing that is different
from message switching? The key difference is that message switching is perform-ing
sequential transmission whereas packet switching is performing parallel trans-mission
(that is, pipelining). Observe that with message switching, while one node
(the source or one of the switches) is transmitting, the remaining nodes are idle.
With packet switching, once the first packet reaches the last switch, three nodes
transmit at the same time.
24. 02-068 C01 pp4 6/14/02 5:45 PM Page 24
24 CHAPTER 1 Computer Networks and the Internet
0
1
2
3
4
1
2
3
4
5
5000
packets
Source
4999
5000
5001
5002
5003
Time (msec)
Key:
Packet
switch
Packet
switch
Destination
1
2
4997
4998
4999
5000
1
2
3
4
4999
5000
1
2
3
4998
4999
5000
Figure 1.11 Timing of message transfer when the message is segmented into
5,000 packets
Message segmentation has yet another important advantage. As we will discuss
later in this book, bit errors can be introduced into packets as they transit the net-work.
When a switch detects an error in a packet, it typically discards the entire
packet. So, if the entire message is transported as a single packet, and one bit in the
message gets corrupted, the entire message is discarded. If, on the other hand, the
message is segmented into many packets and one bit in one of the packets is cor-rupted,
then only that one packet is discarded.
Message segmentation does have some drawbacks, however. We will see that
each packet must carry, in addition to the data being sent from the sending applica-tion
to the receiving application, some control information. This information, which
is carried in the packet header, might include the identity of the sender and receiver
and a packet identifier (for example, a number). Since the amount of header infor-mation
would be approximately the same for a message or a packet, the amount of
header overhead per byte of data is higher for packet switching (with message seg-mentation)
than for message switching.
Before moving on to the next subsection, you are highly encouraged to explore
the Message-Segmentation Java Applet that is available at the Web site for this book
(http://www.awl.com/kurose-ross). This applet will allow you to experiment with
25. 1.3 The Network Core 25
02-068 C01 pp4 6/14/02 5:45 PM Page 25
different message and packet sizes, and will allow you to examine the effect of addi-tional
propagation delays.
1.3.2 Packet Forwarding in Computer Networks
There are two broad classes of packet-switched networks: datagram networks and
virtual circuit networks. They differ in whether their switches use destination ad-dresses
or so-called virtual circuit numbers to forward packets toward their destina-tions.
We’ll call any network that forwards packets according to host destination
addresses a datagram network. The routers in the Internet forward packets accord-ing
to host destination addresses; hence the Internet is a datagram network. We’ll
call any network that forwards packets according to virtual circuit numbers a vir-tual
circuit network. Examples of packet-switching technologies that use virtual
circuits include X.25, frame relay, and ATM (asynchronous transfer mode). While
the difference between using destination addresses and virtual circuit numbers may
seem minor, the choice has a huge impact on how routes are set up and how routing
is managed, as we’ll see below.
Virtual Circuit Networks
A virtual circuit (VC) consists of (1) a path (that is, a series of links and packet
switches) between the source and destination hosts, (2) virtual circuit numbers, one
number for each link along the path, and (3) entries in VC-number translation tables
in each packet switch along the path. Once a VC is established between source and
destination, the source can send packets into the VC with the appropriate VC num-ber.
Because a VC has a different VC number on each link, an intermediate packet
switch must replace the VC number of each traversing packet with a new one. The
new VC number is obtained from the VC-number translation table.
To illustrate the concept, consider the network shown in Figure 1.12. Suppose
host A requests that the network establish a VC between itself and host B. Suppose
that the network chooses the path A-PS1-PS2-B and assigns VC numbers 12, 22,
32 to the three links in this path. Then, when a packet as in VC leaves host A, the
A PS1 PS2 B
1 2
3
1 2
3
PS3 PS4
Figure 1.12 A simple virtual circuit network
26. 02-068 C01 pp4 6/14/02 5:45 PM Page 26
26 CHAPTER 1 Computer Networks and the Internet
value in the VC-number field is 12; when it leaves PS1, the value is 22; and when it
leaves PS2, the value is 32. The numbers next to the links of PS1 are the interface
numbers.
How does the switch determine the replacement VC number for a packet tra-versing
the switch? Each switch has a VC-number translation table; for example, the
VC-number translation table in PS1 might look something like this:
Incoming Interface Incoming VC # Outgoing Interface Outgoing VC #
1 12 2 22
2 63 1 18
3 7 2 17
1 97 3 87
... ... ... ...
Whenever a new VC is established across a switch, an entry is added to the VC-number
table. Similarly, whenever a VC terminates, the entries in each table along
its path are removed.
You might be wondering why a packet doesn’t just keep the same VC number
on each of the links along its route. The answer is twofold. First, by replacing the
number from link to link, the length of the VC field is reduced. Second, and more
important, by permitting a different VC number for each link along the path of the
VC, a network management function is simplified. Specifically, with multiple VC
numbers, each link in the path can choose a VC number independently of what the
other links in the path choose. If a common number were required for all links along
the path, the switches would have to exchange and process a substantial number of
messages to agree on the VC number to be used for a connection.
If a network employs virtual circuits, then the network’s switches must maintain
state information for the ongoing connections. Specifically, each time a new connec-tion
is established across a switch, a new connection entry must be added to the
switch’s VC-number translation table; and each time a connection is released, an entry
must be removed from the table. Note that even if there is no VC-number translation, it
is still necessary to maintain state information that associates VC numbers to output in-terface
numbers. The issue of whether or not a packet switch maintains state informa-tion
for each ongoing connection is a crucial one—one that we return to shortly below.
Datagram Networks
Datagram networks are analogous in many respects to the postal service. When a
sender sends a letter to a destination, the sender wraps the letter in an envelope and
writes the destination address on the envelope. This destination address has a hierar-chical
structure. For example, letters sent to a location in the United States include
27. 1.3 The Network Core 27
02-068 C01 pp4 6/14/02 5:45 PM Page 27
the country (USA), the state (for example, Pennsylvania), the city (for example,
Philadelphia), the street (for example, Walnut Street), and the number of the house
on the street (for example, 421). The postal service uses the address on the envelope
to route the letter to its destination. For example, if the letter is sent from France,
then a postal office in France will first forward the letter to a postal center in the
United States. This postal center in the United States will then forward the letter to a
postal center in Philadelphia. Finally, a mail carrier working in Philadelphia will de-liver
the letter to its ultimate destination.
In a datagram network, each packet traversing the network contains in its
header the address of the packet’s destination. As with postal addresses, this address
has a hierarchical structure. When a packet arrives at a packet switch in the network,
the packet switch examines a portion of the packet’s destination address and for-wards
the packet to an adjacent switch. More specifically, each packet switch has a
forwarding table that maps destination addresses (or portions of the destination ad-dresses)
to an outbound link. When a packet arrives at a switch, the switch examines
the address and indexes its table with this destination address to find the appropriate
outbound link. The switch then directs the packet to this outbound link.
The end-to-end routing process is also analogous to a car driver who does
not use maps but instead prefers to ask for directions. For example, suppose Joe is
driving from Philadelphia to 156 Lakeside Drive in Orlando, Florida. Joe first
drives to his neighborhood gas station and asks how to get to 156 Lakeside Drive
in Orlando, Florida. The gas station attendant extracts the Florida portion of the ad-dress
and tells Joe that he needs to get onto the interstate highway I-95 South,
which has an entrance just next to the gas station. He also tells Joe that once he en-ters
Florida he should ask someone else there. Joe then takes I-95 South until he
gets to Jacksonville, Florida, at which point he asks another gas station attendant
for directions. The attendant extracts the Orlando portion of the address and tells
Joe that he should continue on I-95 to Daytona Beach and then ask someone else.
In Daytona Beach another gas station attendant also extracts the Orlando portion of
the address and tells Joe that he should take I-4 directly to Orlando. Joe takes I-4
and gets off at the Orlando exit. Joe goes to another gas station attendant, and this
time the attendant extracts the Lakeside Drive portion of the address and tells
Joe the road he must follow to get to Lakeside Drive. Once Joe reaches Lakeside
Drive, he asks a kid on a bicycle how to get to his destination. The kid extracts the
156 portion of the address and points to the house. Joe finally reaches his ultimate
destination.
We will be discussing packet forwarding in datagram networks in great detail in
this book. But for now we mention that, in contrast with VC networks, datagram
networks do not maintain connection-state information in their switches. In fact, a
packet switch in a pure datagram network is completely oblivious to any flows of
traffic that may be passing through it. A packet switch in a datagram network makes
forwarding decisions based upon a packet’s destination address, not upon the connec-tion
to which the packet belongs. Because VC networks must maintain connection-state
information in their switches, opponents of VC networks argue that VC networks
28. 02-068 C01 pp4 6/14/02 5:45 PM Page 28
28 CHAPTER 1 Computer Networks and the Internet
are overly complex. These opponents include most researchers and engineers in the
Internet community. Proponents of VC networks feel that VCs can offer applications
a richer variety of networking services.
How would you actually like to see the end-to-end route that packets take in the
Internet? We now invite you to get your hands dirty by interacting with the Trace-route
program, by visiting the site http://www.traceroute.org. (See a discussion of
Traceroute in Section 1.6.)
Network Taxonomy
We have now introduced several important networking concepts: circuit switching,
packet switching, virtual circuits, connectionless service, and connection-oriented
service. How does it all fit together?
First, in our simple view of the world, a telecommunication network either em-ploys
circuit switching or packet switching (see Figure 1.13). A link in a circuit-switched
network can employ either FDM or TDM. Packet-switched networks are
either virtual circuit networks or datagram networks. Switches in virtual circuit net-works
forward packets according to the packets’ VC numbers and maintain connec-tion
state. Switches in datagram networks forward packets according to the packets’
destination addresses and do not maintain connection state.
A datagram network is not, however, either a connectionless or a connection-oriented
network. Indeed, a datagram network can provide connectionless service to
some of its applications and connection-oriented service to other applications. For
example, the Internet, which is a datagram network, provides both connectionless
and connection-oriented service to its applications. We saw in Section 1.2 that these
services are provided in the Internet by the UDP and TCP protocols, respectively.
Networks with VCs are, however, always connection-oriented.
Telecommunications
networks
Circuit-switched
networks
Packet-switched
networks
FDM TDM Networks
with VCs
Datagram
networks
Figure 1.13 Taxonomy of telecommunication networks
29. 1.4 Network Access and Physical Media 29
02-068 C01 pp4 6/14/02 5:45 PM Page 29
1.4 Network Access and Physical Media
In Sections 1.2 and 1.3 we examined the roles of end systems and routers in a com-puter
network. In this section we consider network access—the physical link(s) that
connect an end system to its edge router, which is the first router on a path from the
end system to any other distant end system. Figure 1.14 shows several types of ac-cess
links from end system to edge router; the access links are highlighted in thick,
shaded lines. Since network access technology is closely tied to physical media
technology (fiber, coaxial pair, twisted-pair telephone wire, radio spectrum), we
consider these two topics together in this section.
Local ISP
Regional ISP
Company Network
Figure 1.14 Access networks
30. 02-068 C01 pp4 6/14/02 5:45 PM Page 30
30 CHAPTER 1 Computer Networks and the Internet
1.4.1 Network Access
Network access can be loosely classified into three categories:
Residential access, connecting home end systems into the network
Company access, connecting end systems in a business or educational institu-tion
into the network
Mobile access, connecting mobile end systems into the network
These categories are not hard and fast—for example, some company end systems
may use the access technology that we ascribe to residential access, and vice versa.
The following descriptions are meant to hold for the common cases.
Residential Access
Residential access refers to connecting a home end system (typically a PC, but per-haps
a Web TV or some Internet home appliance) to an edge router. A prevalent
form of residential access remains the dial-up modem over an ordinary analog tele-phone
line into a residential ISP (such as America Online). The home modem con-verts
the digital output of the PC into analog format for transmission over the analog
phone line. This analog phone line is made of twisted-pair copper wire, and is the
same telephone line used to make ordinary phone calls. (We will discuss twisted pair
later in this section.) At the other end of the analog phone line, a modem in the ISP
converts the analog signal back into digital form for input to the ISP router. Thus,
the access network is simply a pair of modems along with a point-to-point dial-up
phone line. Today’s modem speeds allow dial-up access at rates up to 56 Kbps.
However, due to the poor quality of the twisted-pair line between many homes and
ISPs, many users get an effective rate significantly less than 56 Kbps.
Many residential users find a dial-up modem’s 56 Kbps access to be excruciat-ingly
slow. For example, it takes approximately eight minutes to download a single
three-minute MP3 song over a 56 Kbps dial-up modem. Moreover, dial-up modem
access ties up a user’s ordinary phone line—while a residential user uses a dial-up
modem to surf the Web, the user cannot receive and make ordinary phone calls over
the phone line. Fortunately, new broadband access technologies are providing resi-dential
users higher bit rates; and they are also providing a means for users to access
the Internet and talk on the phone at the same time. There are two common types of
broadband residential access: digital subscriber line (DSL) [DSL 2002] and hy-brid
fiber coaxial cable (HFC) [Cable 2002].
As of January 2001, broadband residential access was much less prevalent than
56 Kbps dial-up modem access: the percentage of homes with broadband Internet
access was 9.2 percent in South Korea, 4.2 percent in Canada, and 2.2 percent in the
United States, with even lower penetration rates in Europe [Economist 2001]. How-ever,
DSL and HFC are being rapidly deployed throughout the world, with HFC be-
31. 1.4 Network Access and Physical Media 31
02-068 C01 pp4 6/14/02 5:45 PM Page 31
Fiber
node
Fiber cable
Coaxial cable
ing generally more prevalent in the United States and DSL being generally more
prevalent in Europe and Asia.
DSL access is typically provided by a telephone company (for example, Pacific
Bell or France Telecom), sometimes in partnership with an independent ISP. Con-ceptually
similar to dial-up modems, DSL is a new modem technology again run-ning
over existing twisted-pair telephone lines. But by restricting the distance
between user and ISP modem, DSL can transmit and receive data at much higher
rates. The data rates are typically asymmetrical in the two directions, with a higher
rate from ISP router to home than from the home to ISP router. The asymmetry in
the data rates reflects the belief that a home user is more likely to be a consumer of
information (bringing data into the home) than a producer of information. In theory,
DSL can provide rates of more than 10 Mbps from ISP to home and more than 1
Mbps from home to ISP. However, in practice the rates offered by DSL providers
are much less. As of 2002, typical downstream rates are 384 Kbps to 1.5 Mbps; and
typical upstream rates are 128 Kbps to 256 Kbps.
DSL uses frequency division multiplexing, as described in the previous section.
In particular, DSL divides the communication link between the home and the ISP
into three nonoverlapping frequency bands:
A high-speed downstream channel, in the 50kHz to 1MHz band
A medium-speed upstream channel, in the 4kHz to 50kHz band
An ordinary two-way telephone channel, in the 0 to 4kHz band
Hundreds
of homes
Head end
Hundreds
Fiber of homes
node
Figure 1.15 A hybrid fiber-coax access network
32. 02-068 C01 pp4 6/14/02 5:45 PM Page 32
32 CHAPTER 1 Computer Networks and the Internet
The actual amount of downstream and upstream bandwidth potentially available to
the user is a function of the distance between the home modem and the ISP modem,
the gauge of the twisted-pair line, and the degree of electrical interference. In fact,
unlike dial-up modems, engineers have explicitly designed DSL for short distances
between residential and ISP modems, allowing for substantially higher transmission
rates than dial-up access.
While DSL and dial-up modems use ordinary phone lines, HFC access net-works
are extensions of the current cable network used for broadcasting cable tele-vision.
In a traditional cable system, a cable head end broadcasts through a
distribution network of coaxial cable and amplifiers to residences. As illustrated in
Figure 1.15, fiber optics connect the cable head end to neighborhood-level junctions,
from which traditional coaxial cable is then used to reach individual houses and
apartments. Each neighborhood junction typically supports 500 to 5,000 homes.
As with DSL, HFC requires special modems, called cable modems. Compa-nies
that provide cable Internet access require their customers to either purchase
or lease a modem. Typically, the cable modem is an external device and connects
to the home PC through a 10-BaseT Ethernet port. (We will discuss Ethernet in
great detail in Chapter 5.) Cable modems divide the HFC network into two chan-nels,
a downstream and an upstream channel. As with DSL, the downstream chan-nel
is typically allocated more bandwidth and hence a faster transmission rate.
However, with HFC (and not with DSL), these rates are shared among the homes,
as we discuss next.
One important characteristic of HFC is that it is a shared broadcast medium. In
particular, every packet sent by the head end travels downstream on every link to
every home; and every packet sent by a home travels on the upstream channel to the
head end. For this reason, if several users are simultaneously downloading different
MP3s on the downstream channel, the actual rate at which each user receives its
MP3 will be significantly less than the downstream rate. On the other hand, if there
are only a few active users and they are all Web surfing, then each of the users may
actually receive Web pages at the full downstream rate, as users will rarely request a
Web page at exactly the same time. Because the upstream channel is also shared,
packets sent by two different homes at the same time will collide, which further de-creases
the effective upstream bandwidth. (We will discuss this collision issue in
some detail when we discuss Ethernet in Chapter 5.) Advocates of DSL are quick to
point out that DSL is a point-to-point connection between the home and ISP, and
therefore all the DSL bandwidth is dedicated rather than shared. Cable advocates,
however, argue that a reasonably dimensioned HFC network provides higher band-widths
than DSL. The battle between DSL and HFC for high-speed residential ac-cess
has clearly begun.
One of the attractive features of DSL and HFC is that the services are always on;
that is, the user can leave his or her computer on and remain permanently connected
to an ISP while simultaneously making and receiving ordinary telephone calls.
33. 1.4 Network Access and Physical Media 33
02-068 C01 pp4 6/14/02 5:45 PM Page 33
Company Access
On corporate and university campuses, a local area network (LAN) is typically used to
connect an end system to the edge router. As we will see in Chapter 5, there are many
different types of LAN technology. However, Ethernet technology is currently by far
the most prevalent access technology in company networks. Ethernet operates at 10
Mbps or 100 Mbps (and now even at 1 Gbps and 10 Gbps). It uses either twisted-pair
copper wire or coaxial cable to connect a number of end systems with each other and
with an edge router. The edge router is responsible for routing packets that have desti-nations
outside of that LAN. Like HFC, Ethernet uses a shared medium, so that end
users share the transmission rate of the LAN. More recently, shared Ethernet technol-ogy
has been migrating toward switched Ethernet technology. Switched Ethernet uses
multiple twisted-pair Ethernet segments connected at a “switch” to allow the full
bandwidth of an Ethernet to be delivered to different users on the same LAN simulta-neously.
We will explore shared and switched Ethernet in detail in Chapter 5.
Mobile Access
Accompanying the current Internet revolution, the wireless revolution is also having
a profound impact on the way people work and live. In the year 2000, more people
in Europe had a mobile phone than had a PC or a car. And the wireless trend is con-tinuing,
with many analysts predicting that mobile handheld devices—such as mo-bile
phones and PDAs—will overtake wired computers as the dominant Internet
access devices throughout the world by 2004 [Dornan 2001]. Today, there are
two broad types of wireless Internet access. In a wireless LAN, mobile users trans-mit/
receive packets to/from a base station (also known as a wireless access point)
within a radius of a few tens of meters. The base station is typically connected to the
wired Internet and thus serves to connect wireless users to the wired network. In
wide-area wireless access networks, the base station is managed by a telecommu-nications
provider and serves users within a radius of tens of kilometers.
Wireless LANs, based on IEEE 802.11b technology (also known as wireless
Ethernet and Wi-Fi), are currently enjoying rapid deployment in university depart-ments,
business offices, coffee cafes, and homes. For example, Polytechnic Univer-sity
has installed IEEE 802.11b base stations on its Brooklyn campus, and all of
Polytechnic’s students are required to purchase a portable computer equipped with
802.11b. Using this wireless LAN infrastructure, students send and receive e-mail
or surf the Web from anywhere on campus (for example, library, dorm room, class-room,
or outdoor campus bench). The 802.11b technology, which we will discuss in
detail in Chapter 5, provides a shared bandwidth of 11 Mbps.
Today many homes are combining broadband residential access (that is, cable
modems or DSL) with inexpensive wireless LAN technology to create powerful
home networks. Figure 1.16 shows a schematic of a typical home network (actually,
34. 02-068 C01 pp4 6/14/02 5:45 PM Page 34
34 CHAPTER 1 Computer Networks and the Internet
Cable
headend
House
Internet
Figure 1.16 A schematic of a typical home network
this is precisely the home network setup of one of the authors). This home network
consists of a roaming laptop as well as a stationary PC; a base station (the wireless
access point) which communicates with the roaming PC; a cable modem, providing
the broadband access to the Internet; and a router, which interconnects the base sta-tion
and the stationary PC with the cable modem. This network allows two house-hold
members to have broadband access to the Internet, with one member roaming
from the kitchen to the backyard to the bedrooms. The total fixed cost for such a net-work
is less than $500 (including the cable/DSL modem) and is dropping rapidly
[Bricklin 2001].
When you access the Internet through wireless LAN technology, you typically
need to be within a few tens of meters of a base station. This is feasible for home ac-cess,
coffee shop access, and, more generally, access within and around a building.
But what if you are on the beach or in your car and you need Internet access? For
such wide-area access, roaming Internet users make use of the portable phone infra-structure,
accessing base stations that are up to tens of kilometers away.
WAP (wireless access protocol), widely available in Europe, and i-mode, widely
available in Japan, are two technologies that allow for Internet access over the portable
phone infrastructure. Resembling ordinary wireless phones but with somewhat bigger
screens, WAP phones provide low-speed Internet access as well as portable phone
service. Instead of HTML, WAP phones use a special markup language—WML
(WAP Markup Language)—that has been optimized for small screens and low-speed
access. In Europe, the WAP protocol runs on top of Europe’s highly successful GSM
wireless telephony infrastructure, which uses time-division multiplexing. WAP has
35. 1.4 Network Access and Physical Media 35
02-068 C01 pp4 6/14/02 5:45 PM Page 35
been a flop in Europe to date but is expected to become more popular when the new
GPRS (General Packet Radio Service) packet technology is widely available in
2002–2003. On the other hand, the proprietary i-mode technology, which is similar in
concept and functionality to WAP, has been a huge success in Japan.
Telecommunications companies are currently making enormous investments in
3G, standing for Third Generation wireless, which will provide packet-switched
wide-area wireless Internet access at speeds in excess of 384 Kbps [Dornan 2001].
3G systems should provide high-speed access to the Web and interactive video, and
should provide voice quality that is better than that of an ordinary wired telephone.
The first 3G systems have been deployed in Japan. With such huge investments be-ing
made in 3G technology, infrastructure, and licenses, many analysts (and in-vestors!)
wonder whether 3G will be the great success that it is hyped to be. Will it
instead lose out to competing technologies such as IEEE 802.11? The jury is still
out. (See [Weinstein 2002] and the case history in Section 5.7.)
1.4.2 Physical Media
In the previous subsection, we gave an overview of some of the most important net-work
access technologies in the Internet. As we described these technologies, we
also indicated the physical media used. For example, we said that HFC uses a com-bination
of fiber cable and coaxial cable. We said that dial-up 56 Kbps modems and
ADSL use twisted-pair copper wire. And we said that mobile access networks use
the radio spectrum. In this subsection we provide a brief overview of these and other
transmission media that are commonly employed in the Internet.
In order to define what is meant by a physical medium, let us reflect on the brief
life of a bit. Consider a bit traveling from one end system, through a series of links
and routers, to another end system. This poor bit gets transmitted many, many times!
The source end system first transmits the bit, and shortly thereafter the first router in
the series receives the bit; the first router then transmits the bit, and shortly there-after
the second router receives the bit; and so on. Thus our bit, when traveling from
source to destination, passes through a series of transmitter-receiver pairs. For each
transmitter-receiver pair, the bit is sent by propagating electromagnetic waves or op-tical
pulses across a physical medium. The physical medium can take many shapes
and forms and does not have to be of the same type for each transmitter-receiver pair
along the path. Examples of physical media include twisted-pair copper wire, coax-ial
cable, multi-mode fiber-optic cable, terrestrial radio spectrum, and satellite radio
spectrum. Physical media fall into two categories: guided media and unguided
media. With guided media, the waves are guided along a solid medium, such as a
fiber-optic cable, a twisted-pair copper wire, or a coaxial cable. With unguided me-dia,
the waves propagate in the atmosphere and in outer space, such as in a wireless
LAN or a digital satellite channel.
But before we get into the characteristics of the various media types, let us say
a few words about their costs. The actual cost of the physical link (copper wire,
36. 02-068 C01 pp4 6/14/02 5:45 PM Page 36
36 CHAPTER 1 Computer Networks and the Internet
fiber-optic cable, and so on) is often relatively minor compared with other network-ing
costs. In particular, the labor cost associated with the installation of the physical
link can be orders of magnitude higher than the cost of the material. For this reason,
many builders install twisted pair, optical fiber, and coaxial cable in every room in a
building. Even if only one medium is initially used, there is a good chance that an-other
medium could be used in the near future, and so money is saved by not having
to lay additional wires in the future.
Twisted-Pair Copper Wire
The least expensive and most commonly used guided transmission medium is
twisted-pair copper wire. For over 100 years it has been used by telephone networks.
In fact, more than 99 percent of the wired connections from the telephone handset
to the local telephone switch use twisted-pair copper wire. Most of us have seen
twisted pair in our homes and work environments. Twisted pair consists of two insu-lated
copper wires, each about 1 mm thick, arranged in a regular spiral pattern. The
wires are twisted together to reduce the electrical interference from similar pairs
close by. Typically, a number of pairs are bundled together in a cable by wrapping
the pairs in a protective shield. A wire pair constitutes a single communication link.
Unshielded twisted pair (UTP) is commonly used for computer networks
within a building, that is, for local area networks (LANs). Data rates for LANs us-ing
twisted pair today range from 10 Mbps to 1 Gbps. The data rates that can be
achieved depend on the thickness of the wire and the distance between transmitter
and receiver. Two types of UTP are common in LANs: category 3 and category 5.
Category 3 corresponds to voice-grade twisted pair, commonly found in office
buildings. Office buildings are often prewired with two or more parallel pairs of cat-egory
3 twisted pair; one pair is used for telephone communication, and the addi-tional
pairs can be used for additional telephone lines or for LAN networking. 10
Mbps Ethernet, one of the most prevalent LAN types, can use category 3 UTP. Cat-egory
5, with its more twists per centimeter and Teflon™ insulation, can handle
higher bit rates. 100 Mbps Ethernet running on category 5 UTP has become very
popular in recent years. Category 5 UTP has become common for preinstallation in
new office buildings.
When fiber-optic technology emerged in the 1980s, many people disparaged
twisted pair because of its relatively low bit rates. Some people even felt that fiber-optic
technology would completely replace twisted pair. But twisted pair did not
give up so easily. Modern twisted-pair technology, such as category 5 UTP, can
achieve data rates of 100 Mbps for distances up to a few hundred meters. Even
higher rates are possible over shorter distances. In the end, twisted pair has emerged
as the dominant solution for high-speed LAN networking.
As discussed in the section on access networks, twisted pair is also commonly
used for residential Internet access. We saw that dial-up modem technology enables
access at rates of up to 56 Kbps over twisted pair. We also saw that DSL (digital sub-
37. 1.4 Network Access and Physical Media 37
02-068 C01 pp4 6/14/02 5:45 PM Page 37
scriber line) technology has enabled residential users to access the Internet at rates
in excess of 6 Mbps over twisted pair (when users live close to the ISP’s modem).
Coaxial Cable
Like twisted pair, coaxial cable consists of two copper conductors, but the two con-ductors
are concentric rather than parallel. With this construction and a special insu-lation
and shielding, coaxial cable can have high bit rates. Coaxial cable comes in
two varieties: baseband coaxial cable and broadband coaxial cable.
Baseband coaxial cable, also called 50-ohm cable, is about a centimeter thick,
lightweight, and easy to bend. It is commonly used in LANs; in fact, the computer
you use at work or at school may be connected to a LAN with either baseband coax-ial
cable or with UTP. Take a look at the connection to your computer’s interface
card. If you see a telephone-like jack and some wire that resembles telephone wire,
you are using UTP; if you see a T-connector and a cable running out of both sides of
the T-connector, you are using baseband coaxial cable. The term baseband comes
from the fact that the stream of bits is dumped directly into the cable, without shift-ing
the signal to a different frequency band. 10 Mbps Ethernets can use either UTP
or baseband coaxial cable. However, almost all new Ethernet installments use UTP,
rendering Ethernet with coaxial cable a legacy technology.
Broadband coaxial cable, also called 75-ohm cable, is quite a bit thicker, heav-ier,
and stiffer than the baseband variety. Broadband cable is quite common in cable
television systems. As we saw earlier, cable television systems have recently been
coupled with cable modems to provide residential users with Internet access at rates
of 1 Mbps or higher. With broadband coaxial cable, the transmitter shifts the digital
signal to a specific frequency band, and the resulting analog signal is sent from the
transmitter to one or more receivers. Both baseband and broadband coaxial cable
can be used as a guided shared medium. Specifically, a number of end systems can
be connected directly to the cable, and all the end systems receive whatever is sent
by the other end systems.
Fiber Optics
An optical fiber is a thin, flexible medium that conducts pulses of light, with each
pulse representing a bit. A single optical fiber can support tremendous bit rates, up
to tens or even hundreds of gigabits per second. They are immune to electromag-netic
interference, have very low signal attenuation up to 100 kilometers, and are
very hard to tap. These characteristics have made fiber optics the preferred long-haul
guided transmission media, particularly for overseas links. Many of the long-distance
telephone networks in the United States and elsewhere now use fiber optics
exclusively. Fiber optics is also prevalent in the backbone of the Internet. However,
the high cost of optical devices—such as transmitters, receivers, and switches—has
hindered their deployment for short-haul transport, such as in a LAN or into the
38. 02-068 C01 pp4 6/14/02 5:45 PM Page 38
38 CHAPTER 1 Computer Networks and the Internet
home in a residential access network. [Goralski 2001], [Ramaswami 1998], and
[Green 1992] provide in-depth coverage of optical networks.
Terrestrial Radio Channels
Radio channels carry signals in the electromagnetic spectrum. They are an attractive
medium because they require no physical wire to be installed, can penetrate walls,
provide connectivity to a mobile user, and can potentially carry a signal for long
distances. The characteristics of a radio channel depend significantly on the propa-gation
environment and the distance over which a signal is to be carried. Environ-mental
considerations determine path loss and shadow fading (which decrease the
signal strength as the signal travels over a distance and around/through obstructing
objects), multipath fading (due to signal reflection off of interfering objects), and in-terference
(due to other radio channels or electromagnetic signals).
Terrestrial radio channels can be broadly classified into two groups: those
that operate in local areas, typically spanning from ten to a few hundred meters;
and those that operate in the wide area, spanning tens of kilometers. The wireless
LAN products described in Section 1.4.1 use local-area radio channels; WAP,
i-mode, and 3G technologies, also discussed in Section 1.4.1, use wide-area radio
channels. See [Dornan 2001] for a survey and discussion of the technology and
products.
Satellite Radio Channels
A communication satellite links two or more Earth-based microwave transmitter/re-ceivers,
known as ground stations. The satellite receives transmissions on one fre-quency
band, regenerates the signal using a repeater (discussed below), and
transmits the signal on another frequency. Satellites can provide bandwidths in the
gigabit per second range. Two types of satellites are used in communications: geo-stationary
satellites and low-altitude satellites.
Geostationary satellites permanently remain above the same spot on Earth. This
stationary presence is achieved by placing the satellite in orbit at 36,000 kilometers
above Earth’s surface. This huge distance from ground station through satellite back
to ground station introduces a substantial signal propagation delay of 250 millisec-onds.
Nevertheless, satellite links, which can operate at speeds of hundreds of Mbps,
are often used in telephone networks and in the backbone of the Internet.
Low-altitude satellites are placed much closer to Earth and do not remain per-manently
above one spot on Earth. They rotate around Earth just as the Moon does.
To provide continuous coverage to an area, many satellites need to be placed in or-bit.
There are currently many low-altitude communication systems in development.
Lloyd’s satellite constellation Web page [Wood 2002] provides and collects infor-mation
on satellite constellation systems for communications. Low-altitude satellite
technology may be used for Internet access sometime in the future.