The TCP/IP Protocol Architecture
The TCP/IP Protocol Architecture
The TCP/IP Protocol Architecture
TCPIP is a result of protocol research and development conducted on the experimental packet-
switched network, ARPANET, funded by the Defense Advanced Research Projects Agency
(DARPA), and is generally referred to as the TCPIP protocol suite. This protocol suite consists
of a large collection of protocols that have been issued as Internet standards by the Internet
Architecture Board (IAB).
There is no official TCPIP protocol model as there is in the case of OSI. However, based on
the protocol standards that have been developed, the communication task for TCPIP is
organized into five relatively independent layers:
Application layer
Host-to-host, or transport layer
Internet layer
Network access layer
Physical layer
Physical layer
The physical layer covers the physical interface between a data transmission device (e.g.,
workstation, computer) and a transmission medium or network. This layer is concerned with
specifying the characteristics of the transmission medium, the nature of the signals, the data
rate, and related matters.
The network access layer is concerned with the exchange of data between an end system and
the network to which it is attached. The sending computer must provide the network with the
address of the destination computer, so that the network may route the data to the appropriate
destination. The sending computer may
wish to invoke certain services, such as priority, that might be provided by the network. The
specific software used at this layer depends on the type of network to be used; different
standards have been developed for circuit-switching, packet-switching (e.g., X.25), local area
networks (e.g., Ethernet), and others. Thus, it makes sense to separate those functions having
to do with network access into a separate
layer. By doing this, the remainder of the communications software, above the network access
layer, need not be concerned about the specifics of the network to be used. The same higher-
layer software should function properly regardless of the particular network to which the
computer is attached.
The network access layer is concerned with access to and routing data across a network for two
end systems attached to the same network.
Internet layer
In those cases where two devices are attached to different networks, procedures are needed to
allow data to traverse multiple interconnected networks. This is the function of the internet
layer. The internet protocol (IP) is used at this layer to provide the routing function across
multiple networks. This protocol is implemented not only in the end systems but also in routers.
A router is a processor that connects two networks and whose primary function is to relay data
from one network to the other on its route from
the source to the destination end system.
Regardless of the nature of the applications that are exchanging data, there is usually a
requirement that data be exchanged reliably. That is, we would like to be assured that all of the
data arrive at the destination application and that the data arrive in the same order in which they
were sent. As we shall see, the mechanisms for providing reliability are essentially independent
of the nature of the applications. Thus, it makes sense to collect those mechanisms in a common
layer shared by all applications; this is referred to as the host-to-host layer, or transport layer.
The transmission control protocol (TCP) is the most commonly-used protocol to provide this
functionality.
Application layer
Finally, the application layer contains the logic needed to support the various user
applications. For each different type of application, such as file transfer, a separate module is
needed that is peculiar to that application.
Figure 1.9 shows how the TCPIP protocols are implemented in end systems
FIGURE 1.9 TCPIP Protocol architecture model.
Note that : the physical and network access layers provide interaction between the end system
and the network, whereas the transport and application layers are what is known as end-to-end
protocols; they support interaction between two end systems. The internet layer has the flavor
of both. At this layer, the end system communicates routing information to the network but
also must provide some common functions between the two end systems;