You are on page 1of 13

ISO-OSI 7-Layer Network Architecture

This lecture introduces the ISO-OSI layered architecture of Networks. According to the ISO
standards, networks have been divided into 7 layers depending on the complexity of the
fucntionality each of these layers provide. The detailed description of each of these layers is
given in the notes below. We will first list the layers as defined by the standard in the increasing
order of function complexity:
1. Physical Layer
2. Data Link Layer
3. Network Layer
4. Transport Layer
5. Session Layer
6. Presentation Layer
7. Application Layer
Physical Layer
This layer is the lowest layer in the OSI model. It helps in the transmission of data between two
machines that are communicating through a physical medium, which can be optical fibres,copper
wire or wireless etc. The following are the main functions of the physical layer:
1. Hardware Specification: The details of the physical cables, network interface cards,
wireless radios, etc are a part of this layer.
2. Encoding and Signalling: How are the bits encoded in the medium is also decided by
this layer. For example, on the coppar wire medium, we can use differnet voltage levels
for a certain time interval to represent '0' and '1'. We may use +5mV for 1nsec to
represent '1' and -5mV for 1nsec to represent '0'. All the issues of modulation is dealt with
in this layer. eg, we may use Binary phase shift keying for the representation of '1' and '0'
rather than using different volatage levels if we have to transfer in RF waves.
3. Data Transmission and Reception: The transfer of each bit of data is the responsibility
of this layer. This layer assures the transmissoin of each bit with a high probability. The
transmission of the bits is not completely reliable as their is no error correction in this
layer.
4. Topology and Network Design: The network design is the integral part of the physical
layer. Which part of the network is the router going to be placed, where the switches will
be used, where we will put the hubs, how many machines is each switch going to handle,
what server is going to be placed where, and many such concerns are to be taken care of
by the physical layer. The variosu kinds of netopologies that we decide to use may be
ring, bus, star or a hybrid of these topologies depending on our requirements.
Data Link Layer
This layer provides reliable transmission of a packet by using the services of the physical layer
which transmits bits over the medium in an unreliable fashion. This layer is concerned with :
1. Framing : Breaking input data into frames (typically a few hundred bytes) and caring
about the frame boundaries and the size of each frame.
2. Acknowledgment : Sent by the receiving end to inform the source that the frame was
received without any error.
3. Sequence Numbering : To acknowledge which frame was received.
4. Error Detection : The frames may be damaged, lost or duplicated leading to errors.The
error control is on link to link basis.
5. Retransmission : The packet is retransmitted if the source fails to receive
acknowledgment.
6. Flow Control : Necessary for a fast transmitter to keep pace with a slow receiver.
Data Link Layer
Network Layer
Its basic functions are routing and congestion control.
Routing: This deals with determining how packets will be routed (transferred) from source to
destination. It can be of three types :
• Static : Routes are based on static tables that are "wired into" the network and are rarely
changed.
• Dynamic : All packets of one application can follow different routes depending upon the
topology of the network, the shortest path and the current network load.
• Semi-Dynamic : A route is chosen at the start of each conversation and then all the
packets of the application follow the same route.
Routing

The services provided by the network can be of two types :


• Connection less service: Each packet of an application is treated as an independent
entity. On each packet of the application the destination address is provided and the
packet is routed.
• Connection oriented service: Here, first a connection is established and then all packets
of the application follow the same route. To understand the above concept, we can also
draw an analogy from the real life. Connection oriented service is modeled after the
telephone system. All voice packets go on the same path after the connection is
established till the connection is hung up. It acts like a tube ; the sender pushes the
objects in at one end and the receiver takes them out in the same order at the other end.
Connection less service is modeled after the postal system. Each letter carries the
destination address and is routed independent of all the others. Here, it is possible that the
letter sent first is delayed so that the second letter reaches the destination before the first
letter.
Congestion Control: A router can be connected to 4-5 networks. If all the networks send packet
at the same time with maximum rate possible then the router may not be able to handle all the
packets and may drop some/all packets. In this context the dropping of the packets should be
minimized and the source whose packet was dropped should be informed. The control of such
congestion is also a function of the network layer. Other issues related with this layer are
transmitting time, delays, jittering.

Internetworking: Internetworks are multiple networks that are connected in such a way that
they act as one large network, connecting multiple office or department networks. Internetworks
are connected by networking hardware such as routers, switches, and bridges.Internetworking is
a solution born of three networking problems: isolated LANs, duplication of resources, and the
lack of a centralized network management system. With connected LANs, companies no longer
have to duplicate programs or resources on each network. This in turn gives way to managing the
network from one central location instead of trying to manage each separate LAN. We should be
able to transmit any packet from one network to any other network even if they follow different
protocols or use different addressing modes.

Inter-Networking

Network Layer does not guarantee that the packet will reach its intended destination. There are
no reliability guarantees.
Transport Layer
Its functions are :
• Multiplexing / Demultiplexing : Normally the transport layer will create distinct
network connection for each transport connection required by the session layer. The
transport layer may either create multiple network connections (to improve throughput)
or it may multiplex several transport connections onto the same network connection
(because creating and maintaining networks may be expensive). In the latter case,
demultiplexing will be required at the receiving end. A point to note here is that
communication is always carried out between two processes and not between two
machines. This is also known as process-to-process communication.
• Fragmentation and Re-assembly : The data accepted by the transport layer from the
session layer is split up into smaller units (fragmentation) if needed and then passed to
the network layer. Correspondingly, the data provided by the network layer to the
transport layer on the receiving side is re-assembled.
• Types of service : The transport layer also decides the type of service that should be
provided to the session layer. The service may be perfectly reliable, or may be reliable
within certain tolerances or may not be reliable at all. The message may or may not be
received in the order in which it was sent. The decision regarding the type of service to be
provided is taken at the time when the connection is established.
• Error Control : If reliable service is provided then error detection and error recovery
operations are also performed. It provides error control mechanism on end to end basis.
• Flow Control : A fast host cannot keep pace with a slow one. Hence, this is a mechanism
to regulate the flow of information.
• Connection Establishment / Release : The transport layer also establishes and releases
the connection across the network. This requires some sort of naming mechanism so that
a process on one machine can indicate with whom it wants to communicate.
NETWORK ARCHITECTURES:
Computer networks are build in a highly strucutred way. To reduce their design complexity,
most networks are organized as a series of layers or levels, each one built upon its predecessors.
The numbers of layers and the functions in each layer differ from network to network, however
all the networks purpose is to offer services to the higher layers shielding those layers from the
details of the how the offered services are actually implemented. Layer n on one machine carries
a conversation with layern n on other machine. The rules and conventions used in the
conversation are collectively know as the layer n protocol. The entities comprising the
corresponding layers on different machines are called peer processes. In reality no data is
transmitted from layer n on one machine to layer n on other machine instead data and control
information is passed to the layer immediately below it. Between each pair of adjacent layers
there is an Interface. The interface defines which primitive operations and services the lower
layer offers to the upper one. The set of layers and protocols is called the Network
Architecture.
One of the practical reference model is OSI REFERENCE MODEL. It was developed by the
International standard rganisation(ISO). It is also called as ISO OSI(Open Systems
Interconnection) because it deal with connecting open systems-that is systems that are open for
communication with other systems.
The OSI model has seven layers. The divison of these layers were done based on the following
principles.
1. A layer should be created where a different level of abstraction is needed.
2. Each layer should perform a well defined function.
3. The function of each layer should be done in accordance with international
protocols.
4. The flow of information between the layers should low.
5. The number of layers should be large enough so that distant information
should not be kept in the same layer out of necessity, and small enough that
the architecture doesnot become unwieldy.
The network architecture of OSI REFERENCE MODEL will be as shown click here
Physical layer
Data link layer
Network layer
Transport layer
Session layer
Presentation layer
Application layer
DESCRIPTION OF EACH LAYER IN THE OSI MODEL:

Physical layer:
Physical layer is mainly concerned with transmittiong raw bits over a
communication channel. The design issue is to make sure that, if a send sends a 1
or 0 bit it must be recieved by the reciever exactly the same. It is also concerned
with how much voltage should be used to represent a 1 or 0 bit, and how long the
voltage should be and how many pins the network connector has and what each pin
is used for. The design issues here largely deal with mechanical, electrical and
physical interfaces which lies below the physical layer. Physcial layer can be
properly considered to be within the domain of electrical engineer.

Various physical media can be used for the actual transmission. Some of them are
• Magnetic media.
• twisted pair.
• Baseband coaxial cable.
• fiber optics.
Fiber Optics:
Developments in Optical technology have made it possible to transmit the data by pulses of light.
A light pulse is used to signal 1 and the ablsens of light a 0 bit. Since light has a frequency of
exponential 8 MHZ, enormous data can be transfered.
An optical transmission has three components: transmission media, the light source and detector.
The transmission medium is an ultra thin fibre of glass or fused silica. The light source is an
LED ( Ligt emitting diode) or a laser diode which emits light when current is applied. The
detector is a Photo Diode which generates an electric signal when light falls on it. By attaching a
LED on one end and a photo diode at the other end, we have a unidirectional transmission which
accepts electric signals, converts and transmits it in light pulses and then reconverts those light
pulses in to electric signals at the recieving end. Each medium has some critical angle, when
light falls above this critical angle it gets refracted back in to the media
Data Link layer:
Data link layer has several functions to perform they are providing a well defined service to the
network layer, determining how the bits of the physical layer are grouped into frames, dealing
with transmission errors, regulating the flow of frames so that slow receivers are not swamped by
fast senders, and general link management.
Services provided to the network layer:
The principal service provided by the data link layer to the network layer is the transmission of
data from the source network layer to destination network layer. This can be accompolished in 3
ways:
1. Un acknowledged connectionless service.
2. Acknowledged connectionless service.
3. Connection oriented service.
Unacknowledged connectionless service consists of having the source machine send independent
frames to the destination machine without having the destination machine acknowledge them.
This is used where the re is a very low chance of transmission errors.
In Acknowledged connectionless service the source machine send the frames indepenedently to
the destination machine, but with acknowlegement to each and every frame from the destination
machine.
In connectin oriented service a connection is established between the source and the destination
until all the data is transfered.
Framing:
In order to provide service to the network layer data link layer must use the service provided by
the physical layer. Physical layer deal with transmission of raw bit streams from the source
machine to the destination machine. The number of bits recieved by the destination machine may
be less, more or equal it is upto the data link layer to deal with. The usual approach is to break
the bit stream into discrete frames and compute the check sum for each frame. When the frame
arrives the destination machine, it computes the check sum again if the newly computed
checksum is different from the old one an error has been occured and the data link layer takes
necessary steps to deal with it.
The following methods are commonly used for calculating the check sum:
1. Character count.
2. Starting and ending characters, with character stuffing.
3. Starting and ending flags, with bit sutffing.
4. Physical layer coding violation.
Error control:
Data link layer also deals with the delivery of all frames to the network layer at the destination.
The usual approach is thats the destination giving a positive or negative acknowledgement after
the delivery of each frame. If the sender recieves a positive acknowledgement it assumes that the
frames has arrived correctly at the destination, a negative acknowledgement means that
something has gone wrong, and the frame must be transmitted again.
An additional complication comes when a hardware touble may cause a frame to vanish
completely. In that case the reciever will not react. This case is dealt with by using timers. When
a frame was sent a timer will be started for each frame, if the acknowledgement was not recieved
before the timer turn off, sender assumes that there was some problem, and retransmits the
frame. When the frame or acknowledgement was lost it will alert the sender to retransmit the
frame, which will cause a potential problem of sending the same frame multiple times. This can
be dealt with by using sequence number to each frame.
Flow control:
Another potential problem is how to deal when a sender transmits the
frames faster than the reciever accepts them. The usual solution is to
introduce the flowcontrol to throttle the sender into sending no faster
than the receiver can handle the traffic. The throttle generally requires
some kind of feedback mechanism, so the sender can be made aware of
whether or not the receiver is able to handle the frame.
NETWORK LAYER:
The network layer is concerned with getting packets from the source all the way to
the destination. This function contrasts with the goal of the data link layers whose
purpose is to just transmit the bits from one end of a wire to the other end. The
network layer design issues include the service provided to the transport layer,
routing of packets through the subnet, congestion control, and connection of
multiple networks together.In some networks transport layer runs in the IMPS and
the transport layer runs in the hosts, the boundary provided by the network and
transport layers in the networks is also the boundary between the subnet and the
hosts.

The network layer services have been designed with the following goals in:
1. The services should be independent of the subnet technology.
2. The transport layer should be shielded from the number, type, and topology
of the subnets present.
3. The network addresses made available to the transport layer should use a
uniform numbering plan even across LANs and WANs.

Routing:
The real function of the network layers is routing the packets from the source machine to the
destination machine. The Routing algorithm is part of the network layer responsible for
deciding which output line an incoming packet should be transmitted on. If the subnet uses a
datagram internally, the decision is made for every arriving data packet.If the subnet uses a
virtual circuit decision is made only when a new virtual circuit is being set up. Routing
algorithms have certain properties they are correctness, simplicity, robustness, stability, fairness
and optimality.

Transport layer:
The basic function of the transport layer is to accept the data from the session layer split it up if
necessary and transmit these to the network layer and ensure that the peieces all arrive correctly
at the other end. The transport layer also determines wat type of service to be provided to the
session layer, ultimately the users of the network. The most popular service is the error-free
point-to-point channel that delivers messages in the order in which they were sent.
Network layer is a part of the subnet, and if there is any problem in transmitting the data, the user
wont have any control by replacing the IMPS or error correction, the only possibility is to create
one more layer so that if there is any problem the transport layer creates a connection between
the sender and receiver talks with the reciever, and find it out what data was sent and what was
left, and start sending the frames where it was left.
Session layer:
The session layer allows users on different machines to establish session between
them. One of the services of the session layer is to manage the dialogue control.
Sessions can allow traffic to go in both direction at the same time, or in only one
direction at a time. A related session service is the Token management. For some
protocols it is essential that both sides dont attempt the same operation at the
same time. To manage this session layer provides tokens that can be exchanged.
Only the side holding the token may perform the operation. Another sessionservice
is the Synchronization. After each transfer was aborted the whole transfer would
have to start over again, and would probably fail again when the network was
crashed. To avoid this, session layer provides check points into the data stream, so
that after a crash only the data after a last check point have to be repeated.

Presentation layer:
The presentation layer is concerned with syntax and semantics of the information transmitted.
The presentation layer is also concerned with othe aspects of the data representation. For
example, data compression can be used here to reduce the number of bits being transmitted and
cryptography is frequently required for privacy and authentication.
Application layer:
The application layer function is file transfer. Different file systems have different file naming
conventions, different ways of representing text lines, and so on. Transfering a file between two
different systems requires handling these and other incompatibilities.

PROTOCOLS
• A ``protocol'' is a predefined way of communicating
• A set of ``rules'' between processes
• Example: A ``person query'' protocol
○ I send you the name of a person
○ You send me a ``yes'' or a ``no'' depending upon whether that person lives in your
house
○ If I send anything except a name, or you reply with anything except a ``yes'' or
``no'', the protocol is broken
CLIENTS AND SERVERS
• The Client/Server model is a common way of structuring networked applications
• It uses clients, servers, and services
SERVICES
• A service is a task that is executed for you
• It is a specification of
○ What function is provided
○ Parameters required
○ Results returned
MODES OF SERVICE
• Connection-Mode service
○ Often called ``virtual-circuit'' service
○ Enables transmission in a reliable, sequenced manner
○ Analogous to a telephone call
○ Good for long lived interactions
• Connectionless-Mode service
○ Often called ``datagram'' service
○ Message-oriented, self contained data units
○ Delivery of data is not guaranteed
○ Analogous to a postal letter
SERVERS
• A server is a machine that offers the service
• It allows other machines to use its resources
CLIENTS
• A client is the machine that uses the service
• Makes a call to the server to perform the service
• LAN -- Local Area Network
○ Popular technologies are
 Ethernet -- 10 Mbps (million bits/second)
 Token Ring -- 4 and 16 Mbps
 FDDI (Fiber Distributed Data Interface) -- 100 Mbps
• WAN -- Wide Area Network
○ Usually leased telephone lines
○ Slower than LANs
• MAN -- Metropolitan Area Network
○ Usually co-axial cable (similar to cable TV)
• Host -- a computer on a network
• Router -- A host connected to two networks that can forward network messages from one
network to another
What is a Distributed System?
Definition: A distributed system consists
of a collection of autonomous computers,
connected through a network and
distribution middleware, which enables
computers to coordinate their activities
and to share the resources of the system,
so that users perceive the system as a
single, integrated computing facility.4

Distributed System Characteristics


1. n Multiple autonomous components
2. n Components are not shared by all users
3. n Resources may not be accessible
4. n Software runs in concurrent processes on
5. different processors
6. n Multiple Points of control 5. Multiple Points of failure

Goals of Distributed Systems


_ Connecting resources and users
_ Distribution transparency
_ Openness
_ Scalability
What is a Client process?
The client is a process (program) that sends a message to a server process
(program), requesting that the server perform a task (service).Client
programs usually
manage the user-interface portion of the application, validate data entered
by the user,
dispatch requests to server programs, and sometimes execute business
logic. The clientbased
process is the front- end of the application that the user sees and interacts
with.
The client process contains solution-specific logic and provides the interface
between the
user and the rest of the application system. The client process also manages
the local
resources that the user interacts with such as the monitor, keyboard,
workstation CPU
and peripherals. One of the key elements of a client workstation is the
graphical user
interface (GUI). Normally a part of operating system i.e. the window manager
detects
user actions, manages the windows on the display and displays the data in
the windows.
 What is a Server process?
A server process (program) fulfills the client request by performing the task
requested.
Server programs generally receive requests from client programs, execute
database
retrieval and updates, manage data integrity and dispatch responses to
client requests.
Sometimes server programs execute common or complex business logic. The
serverbased
process "may" run on another machine on the network. This server could be
the
host operating system or network file server; the server is then provided
both file system
services and application services. Or in some cases, another desktop
machine provides
the application services. The server process acts as a software engine that
manages
shared resources such as databases, printers, communication links, or high
poweredprocessors.
The server process performs the back-end tasks that are common to similar
applications.
 What is Middleware?
Connectivity allows applications to transparently communicate with other
programs or
processes, regardless of their location. The key element of connectivity is the
network
operating system (NOS). NOS provide services such as routing, distribution,
messaging,
file and print, and network management services. NOS rely on
communication protocols
to provide specific services. The protocols are divided into three groups:
media, transport
and client-server protocols. Media protocols determine the type of physical
connections
used on a network (some examples of media protocols are Ethernet, Token
Ring, Fiber
Distributed Data Interface (FDDI), coaxial and twisted-pair). A transport
protocol provides
the mechanism to move packets of data from client to server (some
examples of
transport protocols are Novell's IPX/SPX, Apple's AppleTalk, Transmission
Control
Protocol/ Internet Protocol (TCP/IP), Open Systems Interconnection (OSI) and
Government Open Systems Interconnection Profile (GOSIP)). Once the
physical
connection has been established and transport protocols chosen, a client-
server protocol
is required before the user can access the network services. A client-server
protocol
dictates the manner in which clients request information and services from a
server and
also how the server replies to that request (some examples of client- server
protocols are
NetBIOS, RPC, Advanced Program-to-Program Communication (APPC),
Named Pipes,
Sockets, Transport Level Interface (TLI) and Sequenced Packet Exchange
(SPX)).
 What are the characteristics of client/server architecture?
The basic characteristics of client/server architectures are:
1) Combination of a client or front-end portion that interacts with the user,
and a server or
back-end portion that interacts with the shared resource. The client process
contains
solution-specific logic and provides the interface between the user and the
rest of the
application system. The server process acts as a software engine that
manages shared
resources such as databases, printers, modems, or high powered processors.
2) The front-end task and back-end task have fundamentally different
Requirements for
computing resources such as processor speeds, memory, Disk speeds and
capacities,
and input/output devices.
3) The environment is typically heterogeneous and multivendor. The
Hardware platform
and operating system of client and server are not usually the same. Client
and server
processes communicate through a well-defined set of standard application
program
interfaces (API's) and RPC's.
4) An important characteristic of client-server systems is scalability. They
can be scaled
horizontally or vertically. Horizontal scaling means adding or removing client
workstations
with only a slight performance impact. Vertical scaling means migrating to a
larger and
faster server machine or multiservers.
 Client/Server Business Application Architectures.
Traditional applications architectures have been based on function. Today, to
meet the
needs of the business application architecture should reflect the complete
range of
business requirements. Therefore, client/server computing demands a three
layer view of
the organization.
1 The user interface layer, which implements the functional model
2 The business function layer, which implements the process model
3 The data layer, which implements the information model
It should be noted that this application architecture does not demand
multiple hardware
platforms, although such technology can be utilized, if the environment is
robust and
reliable enough and the business is prepared to pay the additional costs
associated with
workstation and LAN technology.

• http://www.cse.iitk.ac.in/~dheeraj/cs425/lec02.html

Details of TCP/IP:
• The term ``TCP/IP'' refers to an entire communication protocol family based on the
Transmission Control Protocol and the Internet Protocol.
• It defines protocols at the network layer and the transport layer.
• TCP/IP can be configured to run over almost any type of communications media,
including
○ Ethernet local area networks,
○ Token Ring local area networks,
○ X.25 public data networks,
○ and point-to-point links.
• The functionality of TCP/IP is divided into well-defined distinct layers.
• The TCP/IP model has six basic elements:
○ Applications,
○ the Transmission Control Protocol (TCP),
○ the User Datagram Protocol (UDP),
○ the Internet Protocol (IP),
○ auxiliary protocols like the Internet Control Message Protocol (ICMP) and the
Address Resolution Protocol (ARP)
○ and one or more network device drivers.
• IP routes packets.
• When an application sends a data packet to another machine, IP determines to which
network the packet should go, and if necessary, routes the packet from one network to
another.
• IP figures out where to send a packet based on the IP address of the recipient.

You might also like