Mod1 Cak CN 18ec71
Mod1 Cak CN 18ec71
Mod1 Cak CN 18ec71
Data communications are the exchange of data between two devices via some
form of transmission medium such as a wire cable. For data communications to occur,
the communicating devices must be part of a communication system made up of a
combination of hardware (physical equipment) and software (programs). The
effectiveness of a data communications system depends on four fundamental
characteristics: delivery, accuracy, timeliness, and jitter.
1. Delivery. The system must deliver data to the correct destination. Data must be
received by the intended device or user and only by that device or user.
2. Accuracy. The system must deliver the data accurately. Data that have been
altered in transmission and left uncorrected are unusable.
3. Timeliness. The system must deliver data in a timely manner. Data delivered late
are useless. In the case of video and audio, timely delivery means delivering
data as they are produced, in the same order that they are produced, and
without significant delay. This kind of delivery is called real-time transmission.
4. Jitter. Jitter refers to the variation in the packet arrival time. It is the uneven
delay in the delivery of audio or video packets. For example, let us assume that
video packets are sent every 30 ms. If some of the packets arrive with 30-ms
delay and others with40-ms delay, an uneven quality in the video is the result
1.1.1 Components
2. Sender. The sender is the device that sends the data message. It can be a
computer, workstation, telephone handset, video camera, and so on.
3. Receiver. The receiver is the device that receives the message. It can be a
computer, workstation, telephone handset, television, and so on.
Information today comes in different forms such as text, numbers, images, audio, and
video.
Text
In data communications, text is represented as a bit pattern, a sequence of bits (0s or 1s).
Different sets of bit patterns have been designed to represent text symbols. Each set is
called a code, and the process of representing symbols is called coding. Today, the
prevalent coding system is called Unicode, which uses 32 bits to represent a symbol or
character used in any language in the world. The American Standard Code for
Information Interchange (ASCII), developed some decades ago in the United States,
now constitutes the first 127 characters in Unicode and is also referred to as Basic Latin.
Appendix A includes part of the Unicode.
Numbers
Numbers are also represented by bit patterns. However, a code such as ASCII is not usedto
represent numbers; the number is directly converted to a binary number to simplify
mathematical operations. Appendix B discusses several different numbering systems.
Images
Images are also represented by bit patterns. In its simplest form, an image is composed
of a matrix of pixels (picture elements), where each pixel is a small dot. The size of the
pixel depends on the resolution. For example, an image can be divided into 1000 pixels
or 10,000 pixels. In the second case, there is a better representation of the image (better
resolution), but more memory is needed to store the image.
After an image is divided into pixels, each pixel is assigned a bit pattern. The size
and the value of the pattern depend on the image. For an image made of only black- and-
white dots (e.g., a chessboard), a 1-bit pattern is enough to represent a pixel.
If an image is not made of pure white and pure black pixels, we can increase the
size of the bit pattern to include gray scale. For example, to show four levels of gray
scale, we can use 2-bit patterns. A black pixel can be represented by 00, a dark gray
pixel by 01, a light gray pixel by 10, and a white pixel by 11.
There are several methods to represent color images. One method is called
RGB, so called because each color is made of a combination of three primary colors:
red, green, and blue. The intensity of each color is measured, and a bit pattern is
assigned to it. Another method is called YCM, in which a color is made of a
combination of three other primary colors: yellow, cyan, and magenta.
Audio
Video
Video refers to the recording or broadcasting of a picture or movie. Video can either
be produced as a continuous entity (e.g., by a TV camera), or it can be a combination
of images, each a discrete entity, arranged to convey the idea of motion.
Simplex
Keyboards and traditional monitors are examples of simplex devices. The key-
board can only introduce input; the monitor can only accept output. The simplex
modecan use the entire capacity of the channel to send data in one direction.
Half-Duplex
In half-duplex mode, each station can both transmit and receive, but not at the same time.
When one device is sending, the other can only receive, and vice versa.
The half-duplex mode is like a one-lane road with traffic allowed in both
directions. When cars are traveling in one direction, cars going the other way must wait.
In a half-duplex transmission, the entire capacity of a channel is taken over by whichever
ofthe two devices is transmitting at the time. Walkie-talkies and CB (citizens band) radios
are both half-duplex systems.
The half-duplex mode is used in cases where there is no need for communication
in both directions at the same time; the entire capacity of the channel can be utilized for
each direction.
Full-Duplex
In full-duplex mode (also called duplex), both stations can transmit and receive
simultaneously (see Figure 1.2c).
The full-duplex mode is like a two-way street with traffic flowing in both
directions at the same time. In full-duplex mode, signals going in one direction share the
capacity of the link with signals going in the other direction. This sharing can occur in
two ways: Either the link must contain two physically separate transmission paths, one
for sending and the other for receiving; or the capacity of the channel is divided between
signals traveling in both directions.
1.2 NETWORKS
A network must be able to meet a certain number of criteria. The most important of
these are performance, reliability, and security.
Performance
Performance can be measured in many ways, including transit time and response
time. Transit time is the amount of time required for a message to travel from one
device to another. Response time is the elapsed time between an inquiry and a
response. The performance of a network depends on a number of factors, including
the number of users, the type of transmission medium, the capabilities of the
connected hardware, and the efficiency of the software.
Reliability
Security
Network security issues include protecting data from unauthorized access, protecting
data from damage and development, and implementing policies and procedures for
recovery from breaches and data losses.
Type of Connection
Multipoint:
A multipoint (also called multidrop) connection is one in which more than two
specific devices share a single link (see Figure 1.3b). In a multipoint environment, the
capacity of the channel is shared, either spatially or temporally. If several devices can
use the link simultaneously, it is a spatially sharedconnection. If users must take turns, it
is a timeshared connection.
Physical Topology
The term physical topology refers to the way in which a network is laid out physically.
Two or more devices connect to a link; two or more links form a topology. The topologyof
a network is the geometric representation of the relationship of all the links and linking
devices (usually called nodes) to one another. There are four basic topologies possible:
mesh, star, bus, and ring.
Mesh Topology: In a mesh topology, every device has a dedicated point-to-point link to
every other device. The term dedicated means that the link carries traffic only between
the two devices it connects. To find the number of physical links in a fully connected
mesh net- work with n nodes, we first consider that each node must be connected to
every other node. Node 1 must be connected to n – 1 nodes, node 2 must be connected to
n – 1 nodes, and finally node n must be connected to n – 1 nodes. We need n (n – 1)
physical links. However, if each physical link allows communication in both directions
(duplex mode), we can divide the number of links by 2. In other words, we can say that in
a mesh topology, we need n (n – 1) / 2 duplex-mode links. To accommodate that many
links, every device on the network must have n – 1 input/output (I/O) ports to be
connected to the other n – 1 stations.
A mesh offers several advantages over other network topologies. First, the use of
dedicated links guarantees that each connection can carry its own data load, thus
eliminating the traffic problems that can occur when links must be shared by multiple
devices. Second, a mesh topology is robust. If one link becomes unusable, it does not
incapacitate the entire system. Third, there is the advantage of privacy or security. When
every message travels along a dedicated line, only the intended recipient sees it. Physical
boundaries prevent other users from gaining access to messages. Finally, point-to-point
links make fault identification and fault isolation easy. Traffic can be routed to avoid
links with suspected problems. This facility enables the network manager to discover the
precise location of the fault and aids in finding its cause and solution.
The main disadvantages of a mesh are related to the amount of cabling and the
number of I/O ports required. First, because every device must be connected to every
other device, installation and reconnection are difficult. Second, the sheer bulk of the
wiring can be greater than the available space (in walls, ceilings, or floors) can
accommodate. Finally, the hardware required to connect each link (I/O ports and
cable) can be prohibitively expensive. For these reasons a mesh topology is usually
implemented in a limited fashion, for example, as a backbone connecting the main
computers of a hybridnetwork that can include several other topologies.
Star Topology: In a star topology, each device has a dedicated point-to-point link
only to a central controller, usually called a hub. The devices are not directly linked to
one another. Unlike a mesh topology, a star topology does not allow direct traffic
between devices. The controller acts as an exchange: If one device wants to send data
to another, it sends the data to the controller, which then relays the data to the other
connected device.
A star topology is less expensive than a mesh topology. In a star, each device needs
only one link and one I/O port to connect it to any number of others. This factor also
makes it easy to install and reconfigure. Far less cabling needs to be housed, and
additions, moves, and deletions involve only one connection: between that device and
the hub.
Other advantages include robustness. If one link fails, only that link is affected. All
other links remain active. This factor also lends itself to easy fault identification and
fault isolation. As long as the hub is working, it can be used to monitor link problems
and bypass defective links. One big disadvantage of a star topology is the dependency of
the whole topology on one single point, the hub. If the hub goes down, the whole system
is dead.
Although a star requires far less cable than a mesh, each node must be linked to a
Dept of ECE, RLJIT Page 8
Computer Networks Module-1 18EC71
central hub. For this reason, often more cabling is required in a star than in some other
topologies (such as ring or bus).
The star topology is used in local-area networks (LANs), .High-speed LANs often use a star
topology with a central hub.
Bus Topology: The preceding examples all describe point-to-point connections. A bus
topology, on the other hand, is multipoint. One long cable acts as a backbone to link all
the devices in anetwork.
Nodes are connected to the bus cable by drop lines and taps. A drop line is a
connection running between the device and the main cable. A tap is a connector that
eithersplices into the main cable or punctures the sheathing of a cable to create a contact
with the metallic core. As a signal travels along the backbone, some of its energy is
transformed into heat. Therefore, it becomes weaker and weaker as it travels farther and
farther. For this reason there is a limit on the number of taps a bus can support and on
the distance between those taps.
In addition, a fault or break in the bus cable stops all transmission, even
between devices on the same side of the problem. The damaged area reflects signals
back in thedirection of origin, creating noise in both directions.
Bus topology was the one of the first topologies used in the design of early local-
area networks. Traditional Ethernet LANs can use a bus topology, but they are less
Ring Topology: In a ring topology, each device has a dedicated point-to-point connection
with only the two devices on either side of it. A signal is passed along the ring in one
direction, from device to device, until it reaches its destination. Each device in the ring
incorporates a repeater. When a device receives a signal intended for another device, its
repeater regenerates the bits and passes them along.
A ring is relatively easy to install and reconfigure. Each device is linked to only
its immediate neighbors (either physically or logically). To add or delete a device
requires changing only two connections. The only constraints are media and traffic
considerations (maximum ring length and number of devices). In addition, fault
isolation is simplified. Generally, in a ring a signal is circulating at all times. If one
device does not receive a signal within a specified period, it can issue an alarm. The
alarm alerts the network operator to the problem and its location.
Ring topology was prevalent when IBM introduced its local-area network,
Token Ring. Today, the need for higher-speed LANs has made this topology less
popular.
After defining networks in the previous section and discussing their physical structures,
we need to discuss different types of networks we encounter in the world today. The criteria
of distinguishing one type of network from another is difficult and sometimes confusing.
We use a few criteria such as size, geographical coverage, and ownership to make this
distinction. After discussing two types of networks, LANs and WANs, we define
switching, which is used to connect networks to form an internetwork (a network of
networks).
Az Documents.in Page 10
Computer Networks Module-1 18EC71
A local area network (LAN) is usually privately owned and connects some hosts in a
single office, building, or campus. Depending on the needs of an organization, a LAN
can be as simple as two PCs and a printer in someone’s home office, or it can extend
throughout a company and include audio and video devices. Each host in a LAN has an
identifier, an address, that uniquely defines the host in the LAN. A packet sent by a hostto
another host carries both the source host’s and the destination host’s addresses.
In the past, all hosts in a network were connected through a common cable,
which meant that a packet sent from one host to another was received by all hosts. The
intended recipient kept the packet; the others dropped the packet. Today, most LANs use
a smart connecting switch, which is able to recognize the destination address of the
packet and guide the packet to its destination without sending it to all other hosts. The
switch alleviates the traffic in the LAN and allows more than one pair to communicate
with each other at the same time if there is no common source and destination among
them. Note that the above definition of a LAN does not define the minimum or maximum
number of hosts in a LAN. Figure 1.8 shows a LAN using either a common cable or a
switch.
When LANs were used in isolation (which is rare today), they were designed to
allow resources to be shared between the hosts. As we will see shortly, LANs today are
connectedto each other and to WANs (discussed next) to create communication at a wider
level.
Az Documents.in Page 11
Computer Networks Module-1 18EC71
a wider geographical span, spanning a town, a state, a country, or even the world. A LAN
interconnects hosts; a WAN interconnects connecting devices such as switches, routers,
or modems. A LAN isnormally privately owned by the organization that uses it; a WAN
is normally created and run by communication companies and leased by an
organization that uses it. We see two distinct examples of WANs today: point-to-point
WANs and switched WANs.
Switched WAN
A switched WAN is a network with more than two ends. A switched WAN, as we
will see shortly, is used in the backbone of global communication today. We can say
that a switched WAN is a combination of several point-to-point WANs that are
connected byswitches. Figure 1.10 shows an example of a switched WAN.
Internetwork
Today, it is very rare to see a LAN or a WAN in isolation; they are connected to one
another. When two or more networks are connected, they make an internetwork, or
Az Documents.in Page 12
Computer Networks Module-1 18EC71
internet. As an example, assume that an organization has two offices, one on the east
coast and the other on the west coast. Each office has a LAN that allows all employees in
the office to communicate with each other. To make the communication between
employees at different offices possible, the management leases a point-to-point dedicated
WANfrom a service provider, such as a telephone company, and connects the two LANs.
Now the company has an internetwork, or a private internet (with lowercase i).
Communicationbetween offices is now possible. Figure 1.11 shows this internet.
Figure 1.11 An internetwork made of two LANs and one point-to-point WAN
When a host in the west coast office sends a message to another host in the same
office, the router blocks the message, but the switch directs the message to the destination.
On the other hand, when a host on the west coast sends a message to a host on the east
coast, router R1 routes the packet to router R2, and the packet reaches the destination.
Figure 1.12 (see next page) shows another internet with several LANs and
WANs connected. One of the WANs is a switched WAN with four switches.
1.3.4 Switching
Circuit-Switched Network
In Figure 1.13, the four telephones at each side are connected to a switch. The
switch connects a telephone set at one side to a telephone set at the other side. The
thick line connecting two switches is a high-capacity communication line that can
Az Documents.in Page 13
Computer Networks Module-1 18EC71
handle four voice communications at the same time; the capacity can be shared
between all pairs of telephone sets. The switches used in this example have
forwarding tasks but nostoring capability.
Let us look at two cases. In the first case, all telephone sets are busy; four
people at one site are talking with four people at the other site; the capacity of the
thick line is fully used. In the second case, only one telephone set at one side is
connected to a telephone set at the other side; only one-fourth of the capacity of the
thick line is used. Thismeans that a circuit-switched network is efficient only when it
is working at its full capacity; most of the time, it is inefficient because it is working
at partial capacity. Thereason that we need to make the capacity of the thick line four
times the capacity of each voice line is that we do not want communication to fail
when all telephone sets at one side want to be connected with all telephone sets at the
other side.
Az Documents.in Page 14
Computer Networks Module-1 18EC71
Packet-Switched Network
In a computer network, the communication between the two ends is done in blocks of
data called packets. In other words, instead of the continuous communication we see
between two telephone sets when they are being used, we see the exchange of individual
data packets between the two computers. This allows us to make the switches function
for both storing and forwarding because a packet is an independent entity that can be
stored and sent later. Figure 1.14 shows a small packet-switched network that connects
four computers at one site to four computers at the other site.
A router in a packet-switched network has a queue that can store and forward the
packet. Now assume that the capacity of the thick line is only twice the capacity of the
data line connecting the computers to the routers. If only two computers (one at each
site) need to communicate with each other, there is no waiting for the packets. However,
if packets arrive at one router when the thick line is already working at its full capacity,
the packets should be stored and forwarded in the order they arrived. The two simple
examples show that a packet-switched network is more efficient than a circuit- switched
network, but the packets may encounter some delays.
As we discussed before, an internet (note the lowercase i) is two or more networks that
can communicate with each other. The most notable internet is called the Internet
(uppercase I ), and is composed of thousands of interconnected networks. Figure 1.15
shows a conceptual (not geographical) view of the Internet.
The figure shows the Internet as several backbones, provider networks, and
customer networks. At the top level, the backbones are large networks owned by
some communication companies such as Sprint, Verizon (MCI), AT&T, and NTT.
The back- bone networks are connected through some complex switching systems,
called peeringpoints. At the second level, there are smaller networks, called provider
networks, that use the services of the backbones for a fee. The provider networks are
connected to backbones and sometimes to other provider networks. The customer
networks are networks at the edge of the Internet that actually use the services
Az Documents.in Page 15
Computer Networks Module-1 18EC71
provided by the Inter-net. They pay fees to provider networks for receiving services.
Backbones and provider networks are also called Internet Service Providers
(ISPs). The backbones are often referred to as international ISPs; the provider net-
works are often referred to as national or regional ISPs.
1.4.1 Scenarios
Let us develop two simple scenarios to better understand the need for protocol layering.
First Scenario
In the first scenario, communication is so simple that it can occur in only one layer.
Assume Maria and Ann are neighbors with a lot of common ideas. Communication
between Maria and Ann takes place in one layer, face to face, in the same language, as
shown in Figure 1.16.
Az Documents.in Page 16
Computer Networks Module-1 18EC71
Even in this simple scenario, we can see that a set of rules needs to be
followed. First, Maria and Ann know that they should greet each other when they
meet. Second, they know that they should confine their vocabulary to the level of
their friendship. Third, each party knows that she should refrain from speaking
when the other party is speaking. Fourth, each party knows that the conversation
should be a dialog, not a monolog: both should have the opportunity to talk about the
issue. Fifth, they should exchange some nice words when they leave.
We can see that the protocol used by Maria and Ann is different from the
communication between a professor and the students in a lecture hall. The
communication in the second case is mostly monolog; the professor talks most of the
time unless a studenthas a question, a situation in which the protocol dictates that she
should raise her hand and wait for permission to speak. In this case, the
communication is normally very for-mal and limited to the subject being taught.
Second Scenario
In the second scenario, we assume that Ann is offered a higher-level position in her
company, but needs to move to another branch located in a city very far from Maria. The
two friends still want to continue their communication and exchange ideas because they
have come up with an innovative project to start a new business when they both retire.
They decide to continue their conversation using regular mail through the post
office. However, they do not want their ideas to be revealed by other people if the letters
are intercepted. They agree on an encryption/decryption technique. The sender of the
letter encrypts it to make it unreadable by an intruder; the receiver of the letter decrypts
it to get the original letter., but for the moment we assume that Maria and Ann use one
technique that makes it hard to decrypt the letter if one does not have the key for doing
so. Now we can say that the communication between Maria and Ann takes place in three
layers, as shown in Figure 1.17. We assume that Ann and Maria each have three
machines (or robots) that can perform the task at each layer.
Az Documents.in Page 17
Computer Networks Module-1 18EC71
Let us assume that Maria sends the first letter to Ann. Maria talks to the machine
at the third layer as though the machine is Ann and is listening to her. The third layer
machine listens to what Maria says and creates the plaintext (a letter in English), whichis
passed to the second layer machine. The second layer machine takes the plaintext,
encrypts it, and creates the cipher text, which is passed to the first layer machine. The
first layer machine, presumably a robot, takes the cipher text, puts it in an envelope, adds
the sender and receiver addresses, and mails it.
At Ann’s side, the first layer machine picks up the letter from Ann’s mail box,
recognizing the letter from Maria by the sender address. The machine takes out the
cipher- text from the envelope and delivers it to the second layer machine. The second
layer machine decrypts the message, creates the plaintext, and passes the plaintext to the
third-layer machine. The third layer machine takes the plaintext and reads it as though
Maria is speaking.
Protocol layering enables us to divide a complex task into several smaller and
simpler tasks. For example, in Figure 1.17, we could have used only one machine to
do the job of all three machines. However, if Maria and Ann decide that the
encryption/ decryption done by the machine is not enough to protect their secrecy,
they would have to change the whole machine. In the present situation, they need to
change only the second layer machine; the other two can remain the same. This is
referred to as modularity. Modularity in this case means independent layers. A layer
(module) can be defined as a black box with inputs and outputs, without concern
about how inputs are changed to outputs. If two machines provide the same outputs
when given the same inputs, they can replace each other. For example, Ann and
Maria can buy the second layer machinefrom two different manufacturers. As long as
the two machines create the same cipher- text from the same plaintext and vice versa,
they do the job.
vices from the lower layer and to give the services to the upper layer; we don’t care
about how the layer is implemented. For example, Maria may decide not to buy the
machine (robot) for the first layer; she can do the job herself. As long as Maria can
do the tasks provided by the first layer, in both directions, the communication
system works.
Is there any disadvantage to protocol layering? One can argue that having a
single layer makes the job easier. There is no need for each layer to provide a service
to the upper layer and give service to the lower layer. For example, Ann and Maria
could find or build one machine that could do all three tasks. However, as mentioned
above, if one day they found that their code was broken, each would have to replace
the whole machine with a new one instead of just changing the machine in the second
layer.
First Principle
Second Principle
The second principle that we need to follow in protocol layering is that the two
objects under each layer at both sites should be identical. For example, the object
under layer 3 at both sites should be a plaintext letter. The object under layer 2 at
both sites should be a cipher text letter. The object under layer 1 at both sites should
be a piece of mail.
After following the above two principles, we can think about logical connection between
each layer as shown in Figure 1.18. This means that we have layer-to-layer
communication. Maria and Ann can think that there is a logical (imaginary) connectionat
Az Documents.in Page 19
Computer Networks Module-1 18EC71
each layer through which they can send the object created from that layer. We will see
that the concept of logical connection will help us better understand the task of lay-ering
we encounter in data communication and networking.
Now that we know about the concept of protocol layering and the logical
communication between layers in our second scenario, we can introduce the TCP/IP
(Transmission Control Protocol/Internet Protocol). TCP/IP is a protocol suite (a set of
protocols organized in different layers) used in the Internet today. It is a hierarchical
protocol made upof interactive modules, each of which provides a specific functionality.
The term hierarchical means that each upper level protocol is supported by the services
provided by one or more lower level protocols. The original TCP/IP protocol suite was
defined as four software layers built upon the hardware. Today, however, TCP/IP is
thought of as afive-layer model. Figure 1.19. shows both configurations.
To show how the layers in the TCP/IP protocol suite are involved in communication
between two hosts, we assume that we want to use the suite in a small internet made upof
three LANs (links), each with a link-layer switch. We also assume that the links are
connected by one router, as shown in Figure 1.20.
Az Documents.in Page 20
Computer Networks Module-1 18EC71
The router is involved in only three layers; there is no transport or application layer
in a router as long as the router is used only for routing. Although a router is always
involved in one network layer, it is involved in n combinations of link and physical lay-
ers in which n is the number of links the router is connected to. The reason is that each
link may use its own data-link or physical protocol. For example, in the above figure, the
router is involved in three links, but the message sent from source A to destination B is
involved in two links. Each link may be using different link-layer and physical-layer
protocols; the router needs to receive a packet from link 1 based on one pair of proto-
cols and deliver it to link 2 based on another pair of protocols.
A link-layer switch in a link, however, is involved only in two layers, data-link and
physical. Although each switch in the above figure has two different connections, the
connections are in the same link, which uses only one set of protocols. This means that,
unlike a router, a link-layer switch is involved only in one data-link and one physical
layer.
After the above introduction, we briefly discuss the functions and duties of layers in
the TCP/IP protocol suite. Each layer is discussed in detail in the next five parts of the
book. To better understand the duties of each layer, we need to think about the logical
connections between layers. Figure 1.21 shows logical connections in our simple
internet.
Figure 1.21 Logical connections between layers of the TCP/IP protocol suite
Using logical connections makes it easier for us to think about the duty of each
layer. As the figure shows, the duty of the application, transport, and network layers is end-
to-end. However, the duty of the data-link and physical layers is hop-to-hop, in which a
hop is a host or router. In other words, the domain of duty of the top three layers is the
internet, and the domain of duty of the two lower layers is the link.
Another way of thinking of the logical connections is to think about the data unit
created from each layer. In the top three layers, the data unit (packets) should not be
changed by any router or link-layer switch. In the bottom two layers, the packet created
by the host is changed only by the routers, not by the link-layer switches.
Figure 1.22 shows the second principle discussed previously for protocol
identical objects below each layer related to each device.
Note that, although the logical connection at the network layer is between the
two hosts, we can only say that identical objects exist between two hops in this case
becausea router may fragment the packet at the network layer and send more packets
than received. Note that the link between two hops does not change the object.
Physical Layer
We can say that the physical layer is responsible for carrying individual bits in a
frame across the link. Although the physical layer is the lowest level in the TCP/IP
protocol suite, the communication between two devices at the physical layer is still a
logical communication because there is another, hidden layer, the transmission
media, under the physical layer. Two devices are connected by a transmission
medium (cable or air). We need to know that the transmission medium does not carry
bits; it carries electrical or optical signals. So the bits received in a frame from the data-
link layer are trans- formed and sent through the transmission media, but we can think
that the logical unit between two physical layers in two devices is a bit. There are
several protocols that transform a bit to a signal. We discuss them in Part II when we
discuss the physical layer and the transmission media.
Data-link Layer
We have seen that an internet is made up of several links (LANs and WANs) connected
by routers. There may be several overlapping sets of links that a datagram can travel
from the host to the destination. The routers are responsible for choosing the best links.
However, when the next link to travel is determined by the router, the data-link layer is
responsible for taking the datagram and moving it across the link. The link can be a
wired LAN with a link-layer switch, a wireless LAN, a wired WAN, or a wireless WAN.
We can also have different protocols used with any link type. In each case, the data-link
layer is responsible for moving the packet through the link.
TCP/IP does not define any specific protocol for the data-link layer. It supports
all the standard and proprietary protocols. Any protocol that can take the datagram and
carry it through the link suffices for the network layer. The data-link layer takes a data-
gram and encapsulates it in a packet called a frame.
Network Layer
The network layer is responsible for creating a connection between the source computer
and the destination computer. The communication at the network layer is host-to-host.
However, since there can be several routers from the source to the destination, the routersin
the path are responsible for choosing the best route for each packet. We can say that the
network layer is responsible for host-to-host communication and routing the packet
through possible routes. Again, we may ask ourselves why we need the network layer. We
could have added the routing duty to the transport layer and dropped this layer. One reason,
as we said before, is the separation of different tasks between different layers. The second
reason is that the routers do not need the application and transport layers. Separating the
tasks allows us to use fewer protocols on the routers.
The network layer in the Internet includes the main protocol, Internet Protocol
(IP), that defines the format of the packet, called a datagram at the network layer. IP also
defines the format and the structure of addresses used in this layer. IP is also responsible
for routing a packet from its source to its destination, which is achieved by each router
forwarding the datagram to the next router in its path.
The network layer also has some auxiliary protocols that help IP in its delivery
and routing tasks. The Internet Control Message Protocol (ICMP) helps IP to report
some problems when routing a packet. The Internet Group Management Protocol
(IGMP) is another protocol that helps IP in multitasking. The Dynamic Host
Configuration Protocol (DHCP) helps IP to get the network-layer address for a host.
The Address Resolution Protocol (ARP) is a protocol that helps IP to find the link-
layer address of a host or a router when its network-layer address is given.
Transport Layer
The logical connection at the transport layer is also end-to-end. The transport layer at
the source host gets the message from the application layer, encapsulates it in a
transport- layer packet (called a segment or a user datagram in different protocols)
and sends it, through the logical (imaginary) connection, to the transport layer at the
destination host. In other words, the transport layer is responsible for giving services
to the application layer: to get a message from an application program running on the
source host and deliver it to the corresponding application program on the destination
host. We may askwhy we need an end-to-end transport layer when we already have an
end-to-end application layer. The reason is the separation of tasks and duties, which
we discussed earlier. The transport layer should be independent of the application
layer. In addition, we will see that we have more than one protocol in the transport
layer, which means that each application program can use the protocol that best
matches its requirement.
Application Layer
As Figure 2.6 shows, the logical connection between the two application layers is
end- to-end. The two application layers exchange messages between each other as
though there were a bridge between the two layers. However, we should know that the
communication is done through all the layers.
The Hypertext Transfer Protocol (HTTP) is a vehicle for accessing the World
Wide Web (WWW). The Simple Mail Transfer Protocol (SMTP) is the main protocol
used in electronic mail (e-mail) service. The File Transfer Protocol (FTP) is used for
transferring files from one host to another. The Terminal Network (TELNET) and
Secure Shell (SSH) are used for accessing a site remotely. The Simple Network
Management Protocol (SNMP) is used by an administrator to manage the Internet at
global and local levels. The Domain Name System (DNS) is used by other protocols to
find the network-layer address of a computer. The Internet Group Management Protocol
(IGMP) is used to collect membership in a group.
We have not shown the layers for the link-layer switches because no encapsulation/
decapsulation occurs in this device. In Figure 1.23, we show the encapsulation in the
source host, decapsulation in the destination host, and encapsulation and decapsulationin
the router.
2. The transport layer takes the message as the payload, the load that the
transport layer should take care of. It adds the transport layer header to the
payload, which contains the identifiers of the source and destination
application programs that want to communicate plus some more information
that is needed for the end-to- end delivery of the message, such as information
needed for flow, error control, or congestion control. The result is the transport-
layer packet, which is called the segment (in TCP) and the user datagram (in
UDP). The transport layer then passes the packet to the network layer.
3. The network layer takes the transport-layer packet as data or payload and adds
its own header to the payload. The header contains the addresses of the source
and destination hosts and some more information used for error checking of
the header, fragmentation information, and so on. The result is the network-
layer packet, called a datagram. The network layer then passes the packet to
the data-link layer.
4. The data-link layer takes the network-layer packet as data or payload and adds
its own header, which contains the link-layer addresses of the host or the next
hop (the router). The result is the link-layer packet, which is called a frame.
The frame is passed to the physical layer for transmission.
At the router, we have both decapsulation and encapsulation because the router is
connected to two or more links.
1. After the set of bits are delivered to the data-link layer, this layer
decapsulates the datagram from the frame and passes it to the network
layer.
2. The network layer only inspects the source and destination addresses in the
datagram header and consults its forwarding table to find the next hop to which
the datagram is to be delivered. The contents of the datagram should not be
changed by the network layerin the router unless there is a need to fragment the
datagram if it is too big to be passedthrough the next link. The datagram is then
passed to the data-link layer of the next link.
3. The data-link layer of the next link encapsulates the datagram in a frame
and passes it to the physical layer for transmission.
At the destination host, each layer only decapsulates the packet received, removes the
payload, and delivers the payload to the next-higher layer protocol until the message
reaches the application layer. It is necessary to say that decapsulation in the host
1.5.4 Addressing
As the figure shows, there is a relationship between the layer, the address used in
that layer, and the packet name at that layer. At the application layer, we normally use
names to define the site that provides services, such as someorg.com, or the e-mail
address, such as somebody@coldmail.com. At the transport layer, addresses are called
port numbers, and these define the application-layer programs at the source and
destination. Port numbers are local addresses that distinguish between several programs
running at the same time. At the network-layer, the addresses are global, with the whole
Internet as the scope. A network-layer address uniquely defines the connection of a
device to the Internet. The link-layer addresses, sometimes called MAC addresses, are
locally defined addresses, each of which defines a specific host or router in a network
(LAN or WAN).
Since the TCP/IP protocol suite uses several protocols at some layers, we can say that we
have multiplexing at the source and demultiplexing at the destination. Multiplexing in this
case means that a protocol at a layer can encapsulate a packet from several next-higher
layer protocols (one at a time); demultiplexing means that a protocol can decapsulate and
deliver a packet to several next-higher layer protocols (one at a time). Figure 1.25 shows
the concept of multiplexing and demultiplexing at the three upper layers.
Although, when speaking of the Internet, everyone talks about the TCP/IP protocol
suite, this suite is not the only suite of protocols defined. Established in 1947, the
International Organization for Standardization (ISO) is a multinational body
dedicated to worldwide agreement on international standards. Almost three-fourths of
the countries in the world are represented in the ISO. An ISO standard that covers all
aspects of network communications is the Open Systems Interconnection (OSI)
model. It was first introduced in the late 1970s.
An open system is a set of protocols that allows any two different systems to
communicate regardless of their underlying architecture. The purpose of the OSI
model is to show how to facilitate communication between different systems without
requiring changes to the logic of the underlying hardware and software. The OSI
model is not a protocol; it is a model for understanding and designing a network
architecture that is flexible, robust, and interoperable. The OSI model was intended to
be the basis for the creation of the protocols in the OSI stack.
The OSI model is a layered framework for the design of network systems that
allows communication between all types of computer systems. It consists of seven
sep- arate but related layers, each of which defines a part of the process of moving
informationacross a network (see Figure 1.26).
When we compare the two models, we find that two layers, session and presentation, are
missing from the TCP/IP protocol suite. These two layers were not added to the TCP/IP
protocol suite after the publication of the OSI model. The application layer in the suite is
usually considered to be the combination of three layers in the OSI model, as shown in
Figure 1.27.
Two reasons were mentioned for this decision. First, TCP/IP has more than one
transport-layer protocol. Some of the functionalities of the session layer are available in
some of the transport-layer protocols. Second, the application layer is not only one
piece of software. Many applications can be developed at this layer. If some of the
functionalities mentioned in the session and presentation layers are needed for a
particular application, they can be included in the development of that piece of software.
Page 30
1.6.2 Lack of OSI Model’s Success
The OSI model appeared after the TCP/IP protocol suite. Most experts were at first
excited and thought that the TCP/IP protocol would be fully replaced by the OSI model.
This did not happen for several reasons, but we describe only three, which are agreed
upon by all experts in the field. First, OSI was completed when TCP/IP was fully in place
and a lot of time and money had been spent on the suite; changing it would cost a lot.
Second, some layers in the OSI model were never fully defined. For example, although
the services provided by the presentation and the session layers were listed in the
document, actual protocols for these two layers were not fully defined, nor were they
fully described, and the corresponding software was not fully developed. Third, when
OSI was implemented by an organization in a different application, it did not show a high
enough level of performance to entice the Internet authority to switch from the TCP/IP
protocol suite to the OSI model.