Linux Kernel Architecture

(Jacob Rumans) #1

Chapter 12: Networks........................................................


backbone of the network subsystem, and it is thesethat interest us in this chapter. Our discussion is
restricted mainly to the TCP/IP implementation because it is by far the most widely used network
protocol.

Of course, development of the network layer did not start with a clean sheet. Standards and conventions
for exchanging data between computers had already existed for decades and were well known and well
established. Linux also implements these standards to link to other computers.

12.1 Linked Computers


Communication between computers is a complex topic that raises many questions such as:

❑ How is the physical connection established? Which cables are used? Which
restrictions and special requirements apply in terms of the media?
❑ How are transmission errors handled?
❑ How are individual computers identified in a network?
❑ How are data exchanged between computers connected to each other via intervening
computers? And how is the best route found?
❑ How are data packaged so that they are not relianton special features of individual computers?
❑ If there are several network services on a computer, how are they identified?

This catalog of questions could be extended at will.Unfortunately, the number of answers as well as the
number of questions is almost unlimited, so that over time many suggestions have been put forward as
to how to deal with specific problems. The most ‘‘reasonable‘‘ systems are those that classify problems
into categories and create various layers to resolveclearly defined issues and communicate with the other
layers by means of set mechanisms. This approach dramatically simplifies implementation, maintenance,
and, above all, troubleshooting.

12.2 ISO/OSI and TCP/IP Reference Model


TheInternational Organization for Standardization— better known as ISO — has devised a reference model
that defines the various layers that make up a network. This model comprises the seven layers shown in
Figure 12-1 and is called theOpen Systems Interconnection(OSI) model.

However, the division into seven layers is too detailed for some issues. Therefore, in practice, use is often
made of a second reference model in which some layers of the ISO/OSI model are combined into new
layers.Thismodelhasonlyfourlayerssothatitsstructureissimpler.ItisknownastheTCP/IP reference
model, where IP stands forInternet Protocoland TCP forTransmission Control Protocol. Most of today’s
communication across the Internet is based on this model. Figure 12-1 compares the layers of the two
models.

Each layer may speak only to the layer immediately above or below. For instance, the transport layer in
the TCP/IP model may communicate only with the Internet and application layer but is totally indepen-
dent of the host-to-network layer (ideally, it does not even know that such a layer exists).
Free download pdf