|
Introduction
& Advantages of Layered Model
Application
Layer
Presentation
Layer
Session
Layer
Transport
Layer
Multiplexing &
De-multiplexing
Sequencing - Acknowledgements - Flow Control (Windowing)
Network
Layer
Data-Link
Layer
Process
of finding hosts on the same network segment - ARP
Physical
Layer
When computers were first linked together into networks, moving
information between different types of computers was a very difficult
task.
In the early 1980s, the International Standards Organization (ISO)
recognized the need for a standard network model. This would help
vendors to create interpretable network devices. The Open Systems
Interconnection (OSI) reference model, released in 1984, addressed this
need.
The OSI model describes how information makes its way from application
programs through a network medium to another application program in
another computer. It divides this one big problem into seven smaller
problems.
Each of these seven problems is reasonably self-contained and therefore
more easily solved without excessive reliance on external information.
Each problem is addressed by one of the seven layers of the OSI model.
The seven layers of the OSI model are:-
•
application
• presentation
• session
• transport
•
network
• data-link
• physical
The acronym used to remember these layers is: All People
Seem To Need Data
Processing.
The lower two OSI model layers are implemented with hardware and
software.
The upper five are generally implemented only in software.
Advantages
of Layered Approach
The
layered approach to network communications provides the following
benefits:
•
reduced complexity
• improved teaching and learning
• modular engineering
• accelerated evolution
• interoperable technology
• standard interfaces
As the information to be sent descends through the layers of a system it
looks less and less like human language and more and more like the 1s
and 0s that a computer understands.
Top
Example
Let's
look at an example of OSI-type communication. Assume that System A has
information to send to System B. System A's application program
communicates with System A's layer seven (Application Layer). Layer
seven communicates with layer six which communicates with layer five and
so on until System A's layer one is reached. The information traverses
the physical medium and is received by System B's layer one.
It then ascends through System B's layers in reverse order until it
finally reaches System B's application program.
Each
of System A's layers has certain tasks it must perform. Each layer
communicates directly with its adjacent layers. However, its primary
concern in carrying out its tasks is to communicate with its peer layer
in System B.
For example, the primary concern of layer six in System A is to
communicate with layer six in System B. It does this using its own layer
protocol. Each layer's protocol exchanges information, called protocol
data units (PDUs), between peer layers. Each layer uses a specific term
for its PDU.
For
example, in TCP/IP the transport layer, TCP communicates to the peer TCP
function using "segments".
Each layer in System A must rely on services provided by its lower
layers for it to communicate with its System B peer. The upper layer is
said to be the service user while the lower layer is the service
provider. The lower layer services are provided to the upper layer at a
service access point (SAP).
Top
The
application layer of the OSI model is the layer that is closest to the
user. Instead of providing services to other OSI layers, it provides
services to application programs outside the scope of the OSI model.
It's services are often part of the application process. Main functions
are:-
•
identifies and establishes the availability of the intended
communication partner.
• synchronizes the sending and receiving applications.
• establishes agreement on procedures for error recovery and control
of data integrity.
• determines whether sufficient resources for the intended
communications exist.
Devices:-
•
Browsers
• Search engines
• E-mail programs
• Newsgroup and chat programs
• Transaction services
• Audio/video conferencing
• Telnet
• SNMP
It
ensures that information sent by the application layer of one system
will be readable by the application layer of another system. It provides
a common format for transmitting data across various systems, so that
data can be understood, regardless of the types of machines involved.
The presentation layer concerns itself not only with the format and
representation of actual user data, but also with data structure used by
programs. Therefore, the presentation layer negotiates data transfer
syntax for the application layer.
Devices:-
• Encryption
• EBCDIC and ASCII
• GIF & JPEG
Top
The Session Layer
The
main function of the OSI model's session layer is to control
"sessions", which are logical connections between network
devices. A session consists of a dialog, or data communications
conversation, between two presentation entities. Dialogs can be
•
simplex (one-way)
• half-duplex (alternate)
• full-duplex (bi-directional)
Simplex conversations are rare on networks. Half-duplex conversations
require a good deal of session layer control, because the start and end
of each transmission need to be monitored.
Most networks are of course capable of full-duplex transmission, but in
fact many conversations are in practice half-duplex.
Devices:-
Some
examples of session layer protocols and interfaces are:
•
Network File System (NFS)
• Concurrent database access
• X-Windows System
• Remote Procedure Call (RPC)
• SQL
• NetBIOS Names
• AppleTalk Session Protocol (ASP)
• Digital Network Architecture
You
can think of the transport layer of the OSI model as a boundary between
the upper and lower protocols. The transport layer provides a data
transport service that shields the upper layers from transport
implementation issues such as the reliability of a connection.
The transport layer provides mechanisms for:-
•
multiplexing upper layer applications
• the establishment, maintenance, and orderly termination of virtual
circuits
• information flow control
• transport fault detection and recovery
Devices:-
• TCP, UDP, SPX and Sliding Windows.
Multiplexing
& De-multiplexing
The
transport layer uses a technique called multiplexing to segment and
reassemble data from several upper layer applications onto the same
transport layer data stream.
When data is being sent, the source machine includes extra bits with the
data that encode the message type, originating application, and
protocols used.
The destination machine de-multiplexes the data stream, and reassembles
the data so that it can be passed up to the destination peer
application.
The transport layer data stream provides end-to-end transport
services.
It
constitutes a logical connection between the end points of an
internetwork, that is, the originating host and the destination host.
Before data transfer can begin, both the sending and receiving
applications inform their respective operating systems that a connection
is going to be initiated.
In essence, one machine places a call that must be accepted by the
other.
Protocol software modules in the two operating systems communicate by
sending messages across the network to verify that the transfer is
authorized and that both sides are ready.
After all the synchronization has occurred, a connection is said to be
established and data transfer can begin.
Top
Sequencing - Acknowledgements - Flow Control (Windowing)
During
a transfer using TCP, the two machines continue to communicate with
their protocol software to verify that data is received correctly. Once
data transfer is in progress, congestion can occur for two
reasons.
First, the sending device might be able to generate traffic faster than
the network can transfer it.
Second, if multiple devices need to send data through the same gateway,
or to the same destination, the gateway or destination may experience
congestion.
When datagrams arrive too quickly for a device to process, it
temporarily stores them in memory and the process being called as
buffering. If the datagrams are part of a small burst, this buffering
solves the problem.
However, if the traffic continues to arrive at this rate, the device
eventually exhausts its memory and must discard additional datagrams
that arrive. Instead of losing data, the transport function can issue a
"not ready" indicator to the sender. This acts like a stop
sign and signals the sender to discontinue sending segment traffic to
its peer.
After the receiving device has processed sufficient segments to free
space in its buffers, the receiver sends a ready transport indicator -
which is like a go signal. When it receives this indicator, the sender
can resume segment transmission.
The transport layer may provide a reliable service regardless of the
quality of the underlying network. One technique that is used to
guarantee reliable delivery is called "positive acknowledgement
with retransmission".
This requires the receiver to issue an acknowledgement message to the
sender when it receives data. The sending device keeps a record of each
packet it sends and it waits for an acknowledgement before sending
another packet. The sender also starts a timer when it sends a packet.
It retransmits the packet if the timer expires before an acknowledgement
is received.
Acknowledging
every data segment, however, has its drawbacks. If the sender has to
wait for an acknowledgement of each data segment, the throughput will be
very low.
A technique called "windowing" is used to increase the
throughput. Time is available after the sender finishes transmitting the
data segment, but before the sender finishes processing any received
acknowledgement. This is used for transmitting more data. The number of
data elements the sender is allowed to have outstanding is known as the
"window".
For example, with a window size of three the sender can transmit three
data segments before expecting an acknowledgement.
In reality, the acknowledgements and data segments will intermix as they
communicate across the network. This is known as "piggyback
acknowledgement".
Top
Layer three of the OSI model is the network layer.
• The network layer sends packets from source network to destination
network.
• It provides consistent end-to-end packet delivery services to its user,
the transport layer.
In wide area networking a substantial geographic distance and many
networks can separate two end systems that wish to communicate.
Between the two end systems the data may have to be passed through a
series of widely distributed intermediary nodes.
These intermediary nodes are normally routers.
Routers are special stations on a network, capable of making complex
routing decisions.
• The network layer is the domain of routing.
Routing protocols select optimal paths through the series of
interconnected networks.
Network layer protocols then move information along these paths.
• One of the functions of the network layer is "path
determination".
Path determination enables the router to evaluate all available paths to
a destination and determine which to use.
It can also establish the preferred way to handle a packet.
After the router determines which path to use it can proceed with
switching the packet.
It takes the packet it has accepted on one interface and forwards it to
another interface or port that reflects the best path to the packet's
destination.
Devices:-
• IP, IPX, Routers, Routing Protocols (RIP, IGRP, OSPF, BGP etc), ARP,
RARP, ICMP.
Top
Layer two of the OSI reference model is the data-link layer.
This layer is responsible for providing reliable transit of data across
a physical link.
The data-link layer is concerned with
•
physical addressing; Bridges, Transparent Bridges, Layer 2 Switches
• network topology; CDP
• line discipline (how end
systems will use the
network link)
• error notification
• ordered delivery of frames
• flow control
• Frame Relay, PPP, SDLC, X.25, 802.3, 802.3, 802.5/Token Ring, FDDI.
At the data-link layer, the bits that come up from the physical layer
are formed into data frames, using any of a variety of data-link
protocols.
Frames consist of fields, containing bits.
The data-link layer is subdivided into two sub layers:
• the logical link control (LLC) sub layer
• the media access control (MAC) sub layer
The LLC sub layer provides support for
•
connections between
applications running on
a LAN
• flow control to the upper
layer by means of
ready/not ready codes
• sequence control bits.
The LLC sub layer rests on top of other media access protocols to provide
interface flexibility.
Because the LLC sub layer operates independently of specific media access
protocols, upper layer protocols, for example IP at the network layer,
can operate autonomously without concern as to the specific type of LAN
media.
The LLC sub layer can depend on lower layers to provide access to the
media. It provides Service Access Points (SAP's) and flow control. This
layer puts 1's & 0's into a logical frame.
The MAC sub layer provides orderly access to the LAN medium.
For multiple stations to share the same medium and still uniquely
identify each other, the MAC sub layer defines a hardware, or data-link
address called the "MAC address". The MAC address is unique for each LAN interface.
On most LAN interface cards the MAC address is burned into ROM.
The ROM MAC address is sometimes known as the burned-in address (BIA).
The MAC address is a 48-bit address expressed as 12 hexadecimal digits
written in three groups of four digits.
The first six hexadecimal digits (the first 24 bits) represent a vendor
code known as the organizationally unique identifier (OUI).
To ensure vendor uniqueness, the IEEE administers OUIs.
The last six hexadecimal digits are administered by the vendor and often
represent the interface serial number.
Top
Process
of Finding Hosts on the Same Network Segment- ARP
Before a frame is exchanged with a device on the same LAN, the sending
device needs to have a MAC address it can use as a destination address.
The sending device may use an address resolution protocol (such as
TCP/IP's address resolution protocol (ARP)) to discover the
destination's MAC address.
In other protocols the MAC address can be determined directly from the
network address.
For example, assume that host Y and host Z are on the same LAN.
Host Y broadcasts an ARP request onto the LAN looking for host Z.
Because it is a broadcast message all devices on the LAN, including host
Z, process the request.
However, host Z is the only device to respond and it does so with its
MAC address.
Host Y receives host Z's reply and stores the MAC address in local
memory.
This is often called an "ARP cache".
The next time host Y needs to communicate with host Z it recalls host
Z's stored MAC address.
Process of Finding Hosts on the Different Network Segment- ARP +
Router
Let's look at how host Y communicates with host X on a different LAN,
which it can access via router A.
As before host Y broadcasts its ARP request.
Router A, along with all the other devices on the LAN, processes the
request. It knows that host X will not see the request because it is on another
LAN, and that any packets destined for host X will have to be relayed.
So instead, router A provides its own MAC address to host Y as a
"proxy" reply to the ARP request.
Host Y receives the router's response and saves the MAC address in its
ARP cache memory.
The next time host Y needs to communicate with host X, it recalls the
stored MAC address of router A.
Top
Layer one of the OSI model is the physical layer.
The physical layer is concerned with the interface to the transmission
medium.
At the physical layer, data is transmitted onto the medium (e.g. coaxial
cable or optical fiber) as a stream of bits.
So, the physical layer is concerned, not with networking protocols, but
with the transmission media on the network.
The physical layer defines the electrical, mechanical, procedural, and
functional specifications for activating, maintaining, and deactivating
the physical link between end systems. This layer puts 1's & 0's
onto the wire.
Characteristics specified by the physical layer include
•
voltage levels
• timing of voltage changes
• physical data rates
• maximum transmission
distances
• physical connectors
Devices:-
• Hubs, FDDI Hardware, Fast Ethernet, Token Ring Hardware.
Top
Example
of Layered Transmission
Let's
look at the transport layer in TCP/IP as an example.
The transport layer must use the services of the network layer in order
to communicate to the peer TCP function on another system.
Each lower layer in turn takes upper layer information as part of the
PDUs it exchanges with its peer layer.
Each lower layer adds whatever headers and trailers it requires to
perform its functions. This is called "data
encapsulation".
The transport layer's segments become part of the network layer's
"packets"
exchanged between IP peers.
Network layer packets are also known as "datagrams".
The network layer adds to the start of the PDU, a
header to the data that identifies the source and destination logical
addresses. These addresses help network devices send the packets across the network
along a chosen path.
The Host-to-network layer takes the IP packet and adds a header to form
a "frame".
The header contains information required to complete the data-link
functions.
For example, the frame header contains a physical address which allows
the network device to communicate over its interface to the next
directly connected network device on the link.
Ultimately, these frames must be converted into electrical pulses as the
data is finally transmitted by the physical layer protocol across the
wire or other physical medium used by the network.
Top
|