Chapter 1. Introduction
applications are designed so that one end is the client and the other side the server. The server
provides some type of service to clients, in this case access to files on the server host. In the
remote login application, Telnet, the service provided to the client is the ability to login to the
server's host.
Each layer has one or more protocols for communicating with its peer at the same layer. One
protocol, for example, allows the two TCP layers to communicate, and another protocol lets the
two IP layers communicate.
On the right side of Figure 1.2 we have noted that normally the application layer is a user
process while the lower three layers are usually implemented in the kernel (the operating
system). Although this isn't a requirement, it's typical and this is the way it's done under Unix.
There is another critical difference between the top layer in Figure 1.2 and the lower three
layers. The application layer is concerned with the details of the application and not with the
movement of data across the network. The lower three layers know nothing about the application
but handle all the communication details.
We show four protocols in Figure 1.2, each at a different layer. FTP is an application layer
protocol, TCP is a transport layer protocol, IP is a network layer protocol, and the Ethernet
protocols operate at the link layer. The TCP/IP protocol suite is a combination of many
protocols. Although the commonly used name for the entire protocol suite is TCP/IP, TCP and
IP are only two of the protocols. (An alternative name is the Internet Protocol Suite.)
The purpose of the network interface layer and the application layer are obvious-the former
handles the details of the communication media (Ethernet, token ring, etc.) while the latter
handles one specific user application (FTP, Telnet, etc.). But on first glance the difference
between the network layer and the transport layer is somewhat hazy. Why is there a distinction
between the two? To understand the reason, we have to expand our perspective from a single
network to a collection of networks.
One of the reasons for the phenomenal growth in networking during the 1980s was the
realization that an island consisting of a stand-alone computer made little sense. A few stand-
alone systems were collected together into a network. While this was progress, during the 1990s
we have come to realize that this new, bigger island consisting of a single network doesn't make
sense either. People are combining multiple networks together into an internetwork, or an
internet. An internet is a collection of networks that all use the same protocol suite.
The easiest way to build an internet is to connect two or more networks with a router. This is
often a special-purpose hardware box for connecting networks. The nice thing about routers is
that they provide connections to many different types of physical networks: Ethernet, token ring,
point-to-point links, FDDI (Fiber Distributed Data Interface), and so on.
These boxes are also called IP routers, but we'll use the term router.
Historically these boxes were called gateways, and this term is used throughout much of the TCP/IP literature.
Today the term gateway is used for an application gateway: a process that connects two different protocol suites
file:///D|/Documents%20and%20Settings/bigini/Docu...homenet2run/tcpip/tcp-ip-illustrated/introduc.htm (3 of 20) [12/09/2001 14.46.31]