- Shopping Bag ( 0 items )
[Figures are not included in this sample chapter]
[Figures are not included in this sample chapter]
This chapter introduces the Open Systems Interconnection (OSI) Reference Model
that will serve as a framework for discussion throughout this book. The OSI Model
will be described in detail in both a theoretical and real-world context.
Specific topics will include:
Have you gone shopping for a computer recently? Or looked at advertisements for
computers? If so, you'll know that it is extremely easy to become completely overwhelmed
by the sheer number of options available. Different manufacturers make various models
with a whole range of capabilities. Yet, as you are swept away in the sea of acronyms
and computer jargon, some of it actually makes sense and ultimately you are able
to make some comparisons between computers.
Why? Well, if you think about it, most of us have an idea of what the basic components
of a personal computer are. For instance, your component list may resemble:
You know all this because it is part of the reference model that you can use to
think about computers. This model allows you to compare different computers and have
some understanding as to their differences. It allows you to use a common notation
to describe computers.
Like the process of describing a computer, describing a network can be quite difficult.
Networks are by their very nature quite complex, and some framework is needed within
which to discuss their existence.
In the late 1970s, the International Standards Organization (ISO) began to develop
a theoretical network model. In 1978, the organization released the first version
of what was to become know as the Open Systems Interconnection (OSI) Reference Model.
In 1984, a revision was published that has now become an international standard and
the basis for most discussions of networking.
NOTE The term open systems relates to the fact that the model was designed
to allow connections between dissimilar computer systems. As such, it was not bound
by any one vendor's proprietary systems.
The OSI Reference Model described networked communication as a series of layers.
To understand the concepts of layered communication, you should consider an example
of how communication can happen in the physical world.
Let's say that Fred is an executive with a large corporation in one city who would
like to send a document to Sally, an executive with the same corporation but in another
The process on Fred's end might occur as follows:
At this point the package enters the network of the transportation provider. In
most cases, it is probably brought to a central hub and then sent to a regional facility,
where ultimately it winds up in some van or truck being driven to Sally's location.
Now let's look at the process on Sally's end:
All these steps are necessary simply to deliver a document. Yet through this layered
approach, documents do get delivered from office to office. Notice that there was
a sequence followed on both ends of the communication path. Several layers were involved
before the document even reached the transportation provider. Likewise, several layers
were involved after the package reached the destination building.
For a computer network, the OSI Reference Model breaks down the communication
into seven layers, as shown in Figure 3.1.
FIG. 3.1 The OSI Reference Model consists of seven layers.
At the top of the model in the Application Layer are the actual programs operated
by the computer users. A program of this type could be an e-mail package, database
program, or something as basic as the Windows File Manager or Explorer. On the bottom
is the Physical Layer comprised of the network media that makes the actual physical
connection between computers. In between lie all the layers that make the actual
Before discussing the individual layers, you should first understand a bit more
about how the model actually works.
Each computer on a network needs to have a protocol stack (sometimes referred
to as a protocol suite) which provides the software necessary for the computer to
communicate on the network. Common protocol stacks include:
These stacks are each comprised of several different protocols that perform the
functions of the various layers of the OSI Reference Model. For more information
about how different protocol stacks fit the OSI Reference Model, see "Real-World
Application of the OSI Reference Model" later in this chapter.
When an application sends information from one computer to another, that data
is passed down through the protocol stack on the sending computer, across the network,
and then up through the protocol stack on the receiving computer. This relationship
is shown in Figure 3.2.
FIG. 3.2 When two computers communicate, data passes down through the sender's
protocol stack, across the network, and up through the receiver's protocol stack.
The actual process is a bit more complex. In truth, at each level of the process,
header information is attached to the data as it is sent. On the receiving end, those
headers are stripped off until the data is finally available to the receiving application.
The actual transmission resembles Figure 3.3.
Each layer can only communicate with the layer above and below it. A request from
one computer for a file on another computer must pass down through all the layers
on the sending computer and up through all the layers on the receiving computer.
Each layer knows only how to transfer the information to the layer above or below
it, but does not know (or need to know) how that information is passed on to the
lower (or upper) layers.
FIG. 3.3 When data is sent between two protocol stacks, information is
added and removed at the beginning and end of the data packet as it passes through
a protocol stack.
The beauty of this approach is that a programmer can write an application that interacts
with the Application Layer of a protocol stack and the application should always
work with the network, regardless of whatever lower-level protocols are used. For
instance, the Windows File Manager or Explorer will allow you to access files on
a remote file server, regardless of whether the network is using a TCP/IP, NetBEUI,
or Novell NetWare protocol stack.
However, one of the details of this model is that each layer of the receiving
protocol stack must know how to remove the header information added by each layer
of the sending protocol stack. To go back to our earlier example, suppose that Fred
had written his document entirely in French and sent it on to Sally. Now if Sally
knows French, the communication can happen perfectly fine. However, if she does not,
Fred's letter will be meaningless, and the communication will fail.
As another variation, suppose that Fred and Sally both spoke English, but let's
change the scenario and say that Sally is with another company. All Fred has for
an address is a U.S. Post Office box. Because almost all overnight express services
(except, of course, the U.S. Postal Service) will not deliver to a P.O. Box, the
package will not be delivered to that address if Fred's mail-room staff tries to
send it through one of those services.
In both cases, the communication failed because somewhere along the way there
were significant differences in the layers of communication.
Back in the realm of computer networking, this same problem can occur when two
computers are set up to use two different types of networks. If one computer uses
IPX/SPX and the other computer uses TCP/IP, no communication can occur.
You should understand, too, that only the protocol stacks on the two computers
must be similar. One of the strengths of computer networking is that the actual computers
can be quite different. A Windows PC can easily communicate with an Apple Macintosh--provided
they both use the same protocol stack (for instance, TCP/IP).
NOTE It is possible in today's computer networks to actually run multiple
protocol stacks on one computer. For instance, a computer might run TCP/IP to communicate
with the Internet and UNIX workstations, but might also run Novell NetWare to communicate
with file servers. This will be discussed in more detail in Chapter 7, "Data
At the top of the OSI Reference Model, the Application Layer is primarily concerned
with the interaction of the user with the computer. Services at this level support
user applications such as electronic mail, database queries, and file transfer. Network
protocol stacks provide programmers with functions that allow the programmers to
interact with the network. This interaction is usually accomplished through an Application
Programming Interface (API) incorporated into the protocol stack.
Returning to our earlier interoffice mail example, this OSI layer could be compared
to Fred composing his document and again to Sally reading the document.
At the Application Layer, user applications interact with the network.
The Presentation Layer performs several functions with the data. Its main function
is to take the data from the Application Layer and translate it into a format understandable
to all computers. For instance, some computers encode the actual characters differently
from others. Other computers order the actual bits and bytes differently. The Presentation
Layer is responsible for translating the data to an intermediary format on outbound
messages, and translating the data from the intermediary format to the computer-specific
format on inbound messages.
If any type of encryption is used in the communication, this is the layer at which
the encryption occurs. Outbound messages are encrypted for transmission, and inbound
messages are decrypted for presentation to the Application Layer.
Finally, the Presentation Layer may apply some type of data compression to reduce
the size of the data as it goes across the network.
When the Presentation Layer is finished, the data is in its final form to be sent
across the network. It may be sliced into smaller pieces by the lower levels, but
there is no more manipulation of the actual data.
Going back to the interoffice mail example, the OSI Presentation Layer roughly
compares to Fred's assistant typing the message and placing it in an envelope for
transmission. The assistant is preparing it for transmission. Likewise, on the receiving
end, Sally's assistant opens the envelope and prepares the document to be seen by
NOTE Within Microsoft networks, a service called a redirector operates at
this layer. Essentially, the redirector represents network information to the applications
that are calling network resources through the Application Layer. For example, when
you are in the Windows File Manager or Explorer and want to see the directory listing
of a folder on a server, the File Manager makes the same request that it would make
to a local disk drive. That request, however, is redirected to the appropriate network
server. The redirector intercepts that request and passes it along through the network.
The redirector also handles network printing requests.
Think of the Presentation Layer as preparing the data to be presented to either the
network (if outbound) or the applications (if inbound).
Have you ever sat at a railroad crossing and waited for a very long train to pass?
If you haven't had that experience, I'm sure you can imagine that it isn't too much
fun. You sit there wishing that there could be a pause so that you could get across
the tracks and go on your way. The operators of the train, on the other hand, want
to move as much cargo as they can with the fewest number of trains.
Within a computer network, you frequently do want to move large amounts of data,
but you also want others to be able to use the network at the same time. To solve
this, networks break data down into small packets for transmission. When you save
a large document to a network file server, that document isn't just sent across the
network in one large block. It is actually broken down into many small packets and
Somehow, though, the receiving computer has to know when a transmission begins
and ends. This role belongs to the Session Layer. When you want to save that document,
your computer indicates to the file server that it wants to open a session with the
server. If security permissions are okay, the connection will begin. After that document
has been successfully saved, the Session Layer indicates that the transfer has been
successful and terminates the connection.
The Session Layer also performs an important function by placing and verifying
checkpoints in the data stream as the data is being sent out. If there should be
some temporary network failure, the sending computer will only need to retransmit
the data sent after the last checkpoint.
Remember the Session Layer as opening, using, and closing a session between two computers.
Let's go back to our layered networking example with Fred and Sally. The mail
room staff may use a delivery service that requires that all packages not exceed
five pounds. If someone wants to send 12 pounds worth of documents from one office
to the other, the mail room staff is going to have to break that material up into
three separate boxes. Two of those boxes will have five pounds of material and the
last will contain two pounds. If the staff is cost-conscious, they will try to find
any additional mail that is going to that office to fill up the last box so that
it can be as close to five pounds as possible. Finally, they will number the boxes
("1 of 3", "2 of 3", "3 of 3") and ship them out.
On the receiving end, the other mail room staff will sign for the delivery to
acknowledge receipt. Next, they will open those boxes, reassemble the 12 pounds of
documents and also sort out any other mail that was sent along. If they notice that
a box is missing, they will call the sending office to track down the problem.
This, in essence, is what happens at the Transport Layer of the protocol stack.
Its mission is to deliver the data without any errors and in the proper sequence.
Protocols at this layer know the packet size required by the lower levels and break
the data into the appropriate-sized packets. They also combine smaller pieces of
data together to reach the optimum packet size.
On the receiving end, the Transport Layer typically acknowledges the receipt of
each packet and resequences the packets if they arrived out of order. If any packets
are missing, it will request a retransmission of the missing packet.
Remember the Transport Layer as ensuring error-free and properly sequenced transportation
for the data.
Returning to our interoffice mail example, when Fred's document reaches the mail
room, the mail room staff determines how the package should get to Sally. The staff
may evaluate different shipping options and choose the option best suited to deliver
Fred's document. Once the document is sent, it may travel through several different
mail hubs and be carried by multiple transportation devices, such as trucks or airplanes.
Fred doesn't care how the document gets to Sally as long as it gets there. His mail
room staff and the transportation company are responsible for the delivery.
This routing of messages to addresses is the primary responsibility of the Network
Layer in a computer network. The Network Layer is responsible for addressing a message
and determining the best route based on network traffic, priority levels, and other
If one of those routes requires a different packet size than what was received
from the Transport Layer, the Network Layer can refragment data before it is sent.
On the receiving end, the Network Layer will reassemble the fragmented data.
In large networks, devices known as routers operate at the Network Layer to allow
packets to be sent between different networks or network segments. For instance,
if your organization is directly connected to the Internet, you will have a router
allowing computers on your network to interact with other routers out on the Internet.
Ultimately, the Network Layer is responsible for converting a logical name into
a physical address (such as the address of the Ethernet card) for delivery on a local
network. Even if the Network Layer determines that the packet must be sent to a router
for delivery to another network, it will still generate the physical address for
the router so that the packet can be delivered to the router.
Remember that the Network Layer routes messages to the appropriate address by the
best available path.
At the Data Link Layer, all these packets sent down from the upper layers are
placed into data frames for actual transmission by the Physical Layer. In addition
to header information, this layer usually adds a trailing Cyclical Redundancy Check
(CRC) that the receiving computer can use to verify that the data was received intact,
as shown in Figure 3.4.
FIG. 3.4 At the Data Link Layer, a CRC is added to the data frame.
The Data Link Layer is responsible for ensuring that the frames are received error-free.
After sending the frame, the layer waits for an acknowledgment from the recipient.
If no acknowledgment is received, the frame is resent.
On the receiving end, the Data Link Layer is responsible for uniquely identifying
the computer on the network (usually through the address encoded into the network
adapter card). When it detects an incoming packet to its address, it assembles all
the bits from the Physical Layer into a frame, verifies the CRC to check the integrity
of the packet, and then passes the packet up to the Network Layer. If the CRC check
fails, this layer will request that the packet be retransmitted.
This layer is also responsible for controlling which computer can access the physical
network connection at any given time. As you could imagine, if every computer on
the network started transmitting data all at once, it would be hard to determine
whose data belonged to whom. Several methods of controlling access will be discussed
in Chapter 7, "Data Transmission."
In large networks, devices called bridges typically work at this layer to essentially
combine different segments of a network into one large network.
Remember the Data Link Layer as the layer packaging data into frames and providing
an error-free link between two computers.
Just as the communication between Fred and Sally ultimately uses trucks, trains,
and planes, all computer networking communication comes down to 1s and 0s, which
themselves are merely electrical impulses traveling across a wire. At the Physical
Layer, the data is finally converted into bits to be sent across whatever physical
media is being used to connect computers. In a protocol stack, this layer defines
the actual medium used for connection, as well as how that medium is connected to
the computer (for example, how many pins are used on the physical connector). This
layer defines the voltage used and any kind of encoding necessary to convert the
bits into electrical signals.
In most networks, devices such as hubs, repeaters, and transceivers operate at
Remember the Physical Layer as the actual physical connection between computers.
At the same time as the International Standards Organization was developing the
OSI Reference Model, the Institute of Electrical and Electronics Engineers (IEEE)
was also engaged in the process of developing standards for the network interface
card and the physical connection. This effort became known as Project 802 (after
the year and month when it started--February 1980).
The IEEE project resulted in the 802 specifications, which define the way in which
data is actually placed on the physical network media by network interface cards.
The standards fall into 12 categories, as outlined in Table 3.1.
|802.2||Logical Link Control|
|802.3||Carrier-Sense Multiple Access with Collision Detection LAN (CSMA/CD, or Ethernet)|
|802.6||Metropolitan Area Network (MAN)|
|802.7||Broadband Technical Advisory Group|
|802.8||Fiber-Optic Technical Advisory Group|
|802.9||Integrated Voice/Data Networks|
|802.12||Demand Priority Access LAN, 100 BaseVG-AnyLAN|
Tip For the exam, you should know that 802.3 signifies an Ethernet LAN, 802.4
signifies a Token Bus, 802.5 signifies a Token-Ring LAN, and 802.2 specifies Logical
Both the ISO and IEEE projects were developed simultaneously, and both sets of
committees exchanged information. The IEEE 802 specifications focused on the two
lowest levels of the OSI Reference Model, the Physical and Data Link Layers, and
have become the primary standards for those levels.
The IEEE made one major enhancement to the OSI model. The engineers felt that
the Data Link Layer needed further clarification and divided the layer into two sublayers
(see Figure 3.5):
FIG. 3.5 The IEEE Project 802 divided the OSI Data Link Layer into two
The Logical Link Control sublayer is responsible for maintaining the link between
two computers when they are sending data across the physical network connection.
It does this by establishing a series of interface points, known as Service Access
Points (SAPs), that other computers can use to communicate with the upper levels
of the network protocol stack. The primary specification for this sublayer is 802.2.
Basically, the MAC sublayer allows the computers on a network to take turns sending
data on the physical network medium. This sublayer specifies the method whereby a
computer determines if it can send a packet out onto the network. It is also responsible
for ensuring that the data reaches the other computer without any errors.
The major IEEE 802 specifications for this sublayer include those listed in Table
|802.3||Carrier-Sense Multiple Access with Collision Detection LAN (CSMA/CD or Ethernet)|
These categories will be discussed in further detail in Chapter 7, "Data
These specifications for the MAC sublayer also define the network medium used in
the Physical Layer.
While the OSI Reference Model provides a theoretical framework for discussion
of computer networks, in reality most protocol stacks do not fit into seven neat,
orderly layers. The layered concept is still present, but the lines dividing the
layers may be in different locations. Some protocol stacks may take the functions
of a single OSI layer and divide them between multiple protocols. There are also
protocols that might provide the functions of a single OSI layer, while other protocols
might provide the functions of multiple OSI layers.
For instance, in the Novell NetWare protocol suite, the NetWare Core Protocol
(NCP) operates at the OSI Application, Presentation, and Session Layers. In the TCP/IP
protocol suite, the Transmission Control Protocol (TCP) provides the services of
the OSI Session Layer and some of the services of the Transport Layer, while the
Internet Protocol (IP) provides the remainder of the Transport Layer services and
most of the Network Layer services.
In truth, no one model can be applied to all computer networks. The OSI Reference
Model is useful in that it defines all the functions that should occur within a network
protocol stack. In general, however, most network protocol stacks do fit into a four-layer
model, as shown in Figure 3.6.
FIG. 3.6 Real-world protocols may provide the functions of several layers
of the OSI model.
Within the four-layer model, application protocols are concerned with the user interaction
and data interchange. Transport protocols establish sessions between computers and
provide for the exchange of error-free and properly sequenced data. Network protocols
deal with routing and addressing issues. Finally, the Physical Layer, as in the OSI
model, defines the physical connection and transmission of bits between computers.
Network protocols will be discussed in detail in Chapter 9, "Network Protocols,"
but if you have some previous experience with network protocols, Table 3.3 may help
you understand how various networks fit broadly into the OSI model. (The Physical
Layer does not appear in the table because it is essentially the same in all networks.)
|Layer NetWare||TCP/IP Protocol Networks||
|Application||Telnet, FTP, SMTP||NCP||SMB, Redirectors||Apple Share, AFP|
The question you may be asking now is--if network protocols generally fit into
four layers, why does the OSI Reference Model have to have seven layers?
To answer this, look back at the model for a computer that was outlined in the
section "The Need for a Conceptual Framework" at the beginning of the chapter.
It lists 11 items that could define a computer. But do all computers have all 11
items? Does every computer have a sound card or CD-ROM? In reality, you could collapse
that model to six categories:
Now this model will work for almost every computer. With the exception of some
servers and diskless workstations, you should be able to say that every computer
you know of has at least the first five categories and possibly the sixth. But if
you said to someone, "Yes, my computer has a processor, memory, storage devices,
input devices, a monitor, and some peripherals," what would their next question
be? Probably "What type of storage devices?" This reduced model simply
doesn't provide enough descriptive detail.
Likewise, while most network protocol stacks can fit into the four-layer reduced
model, those four layers alone really don't fully describe what is involved with
network communication. The larger OSI Reference Model (with the IEEE 802 enhancements)
provides this higher level of descriptive detail.
The OSI Reference Model provides a framework in which to describe computer networks
and compare the functions of different protocol stacks used in networking. The OSI
model divides network communication into seven layers:
The IEEE 802 project further breaks down the OSI Data Link Layer into two sublayers:
Tip It goes without saying that for the exam you should know and understand
the layers of the OSI Reference Model and IEEE 802 enhancements. You may find it
helpful to come up with a phrase that includes all the letters of the OSI model.
For instance: All Pilots Seek To Not Destroy Planes, Angry Patrons Seek To Not Deliver
Payments, All People Should Try New Data Processors.
The IEEE 802 project also defines a number of categories that relate both to the
Media Access Control sublayer as well as to the Physical Layer. The most important
categories to remember are:
If you have read and understood the material in this chapter, you are ready to
test your knowledge. Insert the CD-ROM that comes with this book and run the self-test
software as described in Appendix H, "Using the CD-ROM."
If you understand the OSI Reference Model and would like to begin exploring how
networks are actually put together, proceed to Chapter 5, "The Physical Connection."
If you would like to skip ahead to learn more about network protocols, explore
Chapter 9, "Network Protocols."