Addis Ababa University
Faculty of Informatics
Department of Computer Science
Networking Protocols
2.1 Network Protocols
a protocol is a set of rules that governs data
communications
a protocol defines what is communicated, how it is
communicated, and when it is communicated
for instance, for one computer to send a message to
another computer, the first computer must perform the
following general steps
break the data into small sections called packets
add addressing information to the packets identifying the
destination computer
deliver the data to the network card for transmission
over the network
the receiving computer must perform the same steps, but in
reverse order
accept the data from the NIC
remove transmitting information that was added by the
transmitting computer
reassemble the packets of data in to the original
message
the key elements of a protocol are syntax, semantics, and
timing
syntax: refers to the structure or format of the data
semantics: refers to the meaning of each section of bits
timing: refers to when data should be sent and how fast
they can be sent
functions of protocols
each device must perform the same steps the same way
so that the data will arrive and reassemble properly; if
one device uses a protocol with different steps, the two
devices will not be able to communicate with each other
3
the following are categories of functions that form the basis
of protocols
encapsulation
segmentation and reassembly
connection control
addressing
multiplexing
transmission services
Encapsulation
the inclusion of control information to data is called
encapsulation. Each frame contains not only data but also
control information
such control information falls into three categories:
address (sender/receiver), error-detecting code and
protocol control (information about protocol functions)
1.
2.
Segmentation (by the sender) and reassembly (by the receiver)
a block of data for transmission is of some bounded size
at the application level, we refer to a logical unit of data
transfer as a message
lower level protocols may need to break the data up into
blocks of some bounded size
this process is called segmentation
reasons for segmentation:
the communication network may only accept blocks of
data up to a certain size
error control may be more efficient with a smaller frame
size; fewer bits need to be retransmitted when a frame
gets corrupted
facilitates more equitable access to shared transmission
facilities (for example, without maximum block size one
station could monopolize a multipoint medium)
5
disadvantages
since a frame contains certain amount of control
information, the smaller the block size, the greater the
percentage overhead
frame arrivals may generate an interrupt that must be
serviced; hence smaller blocks result in more interrupts
more time is spent processing smaller, more numerous
frames
the counterpart of segmentation is reassembly
on receipt, the segmented data must be reassembled in to a
message appropriate to the application by the receiving
device
3.
Connection control
two types of protocols (services)
connectionless service
the packets are sent from one party to another with no
need for connection establishment or connection
release
the packets are not numbered, they may be delayed,
lost, or arrive out of sequence; there is no
acknowledgement either
UDP, one of the transport layer protocols, is
connectionless
e.g., audio and video
connection-oriented service
in connection-oriented data transfer, a logical
association or connection is established between the
communicating computers (devices)
7
three phases are involved
connection establishment (agreement to exchange
data)
data transfer (data and control information
exchanged)
connection termination (termination request) - by
any of the two parties
TCP is connection-oriented
the key characteristics of connection oriented data
transfer is that sequencing is used
each side sequentially numbers the frames that it
sends to the other side
because each side remembers that it is engaged in a
logical connection, it can keep track of both outgoing
numbers, which it generates, and incoming numbers
which are generated by the other side
8
sequencing supports three main functions
ordered delivery: frames may not arrive in the order in
which they were sent, because they may traverse different
paths
flow control: a receiving station has to limit the amount or
rate of data that is sent by a transmitting station
the simplest form of flow control is stop and wait
procedure in which each frame must be acknowledged
before the next can be sent
more efficient protocols involve some form of credit
provided to the transmitter, which is the amount of
frames that can be transmitted without an
acknowledgement; e.g. sliding window technique
error control: error control is implemented as two separate
functions; error detection and retransmission
if an error is detected, the receiver discards the frame
upon failing to receive an acknowledgement to the frame
in a specified reasonable time, the sender retransmits
the frame
some protocols also employ error correction which
enables the receiver not only to detect errors but, in
some cases, to correct them
addressing
a unique address is associated with each end-system (e.g.
workstation, server) and each intermediate system (e.g.
router) in a configuration
an example is an IP address in TCP/IP connection
4.
10
5.
6.
multiplexing
occurs when multiple connections share a single
connection (multiple access)
transmission services
a variety of additional services can be provided
priority: messages such as control messages may need to
get through to the destination station with minimum delay
security: security mechanisms, restricting access, may be
invoked
Protocols in a layered architecture
protocols that work together to provide a layer or layers of
the model are/is known as a protocol stack or suite, e.g.
TCP/IP
each layer handles a different part of the communications
process and has its own protocol
11
THE NEED FOR STANDARDS
Over the past years many of the networks that were built
used different hardware and software implementations, as a
result they were incompatible and it became difficult for
networks using different specifications to communicate
with each other.
To address the problem of networks being incompatible and
unable to communicate with each other, the International
Organisation for Standardisation (ISO) researched various
network schemes.
The ISO recognised there was a need to create a NETWORK
MODEL that would help vendors create interoperable
network implementations.
12
THE NEED FOR STANDARDS
In 1984 in order to aid network interconnection without
necessarily requiring complete redesign, the Open Systems
Interconnection (OSI) reference model was approved as an
international standard for communications architecture.
13
THE OSI REFERENCE MODEL
The model was developed by the International Organisation for
Standardisation (ISO) in 1984. It is now considered the primary Architectural
model for inter-computer communications.
The Open Systems Interconnection (OSI) reference model is a descriptive
network scheme. It ensures greater compatibility and interoperability
between various types of network technologies.
The OSI model describes how information or data makes its way from
application programmes (such as spreadsheets) through a network medium
(such as wire) to another application programme located on another
network.
The OSI reference model divides the problem of moving information
between computers over a network medium into SEVEN smaller and more
manageable problems .
This separation into smaller more manageable functions is known as
layering.
14
A LAYERED NETWORK MODEL
The OSI Reference Model is composed of seven layers,
each specifying particular network functions.
15
THE SEVEN OSI REFERENCE MODEL LAYERS
The process of breaking up the functions or tasks of networking
into layers reduces complexity.
Each layer provides a service to the layer above it in the protocol
specification.
Each layer communicates with the same layers software or
hardware on other computers.
The lower 4 layers (transport, network, data link and physical
Layers 4, 3, 2, and 1) are concerned with the flow of data from end
to end through the network.
The upper four layers of the OSI model (application, presentation
and sessionLayers 7, 6 and 5) are orientated more toward
services to the applications.
Data is Encapsulated with the necessary protocol information as it
moves down the layers before network transit.
16
LAYER 7: APPLICATION
The application layer is the OSI layer that is closest to the
user.
It provides network services to the users applications.
contains all the higher level protocols that are commonly
needed by users; examples are
HTTP (Hypertext Transfer Protocol)
the basis for the WWW - when a browser wants a Web
page, it sends the name of the page it wants to the
server using HTTP; the server then sends the page
back
TELNET - virtual terminal, to log on to a remote machine
FTP - file transfer
SMTP - e-mail
DNS - for mapping host names onto their network
addresses
17
LAYER 6: PRESENTATION
The presentation layer ensures that the information
that the application layer of one system sends out is
readable by the application layer of another system.
If necessary, the presentation layer translates
between multiple data formats by using a common
format.
Provides encryption and compression of data.
Examples :- JPEG, MPEG, ASCII, EBCDIC, HTML.
18
LAYER 5: SESSION
The session layer defines how to start, control and end
conversations (called sessions) between applications.
This includes the control and management of multiple bidirectional messages using dialogue control.
keeping track of whose turn it is to transmit
It also synchronizes dialogue between two hosts'
presentation layers and manages their data exchange.
preventing two parties from attempting the same
critical operation at the same time
The session layer offers provisions for efficient data transfer.
checkpointing long transmissions to allow them to
continue from where they were after a crash
Examples :- SQL, ASP(AppleTalk Session Protocol).
19
LAYER 4: TRANSPORT
accepts data from above, splits it up into smaller
units if need be, passes them to the network layer,
and ensure that the pieces all arrive correctly at the
other end
The transport layer segments data from the sending
host's system and reassembles the data into a data
stream on the receiving host's system.
Layer 4 protocols include TCP (Transmission Control
Protocol) and UDP (User Datagram Protocol).
20
LAYER 3: NETWORK
Defines end-to-end delivery of packets.
Defines logical addressing so that any endpoint can be
identified.
Defines how routing works and how routes are learned so that
the packets can be delivered.
The network layer also defines how to fragment a packet into
smaller packets to accommodate different media.
Examples :- IP, IPX, AppleTalk.
21
LAYER 2: DATA LINK
The data link layer provides access to the networking media and
physical transmission across the media and this enables the data to
locate its intended destination on a network.
The data link layer provides reliable transit of data across a physical
link by using the Media Access Control (MAC) addresses.
The data link layer uses the MAC address to define a hardware or
data link address in order for multiple stations to share the same
medium and still uniquely identify each other.
Concerned with network topology, network access, error
notification, ordered delivery of frames, and flow control.
Examples :- Ethernet, Frame Relay, FDDI.
22
LAYER 1: PHYSICAL
The physical layer deals with the physical characteristics of
the transmission medium.
It defines
mechanical: the size and shape of the network
connector, how many pins does the network
connector has and what each pin is used for
electrical: how many volts represent a 1 and how
many a 0
timing: how many nanoseconds a bit lasts
whether communication is one way or in both
directions simultaneously
Such characteristics as voltage levels, timing of voltage
changes, physical data rates, maximum transmission
distances, physical connectors, and other similar attributes
are defined by physical layer specifications.
Examples :- EIA/TIA-232, RJ45, BNC.
23
Physical layer
24
SUMMARY
There was no standard for networks in the early days and as a result it was
difficult for networks to communicate with each other.
The International Organisation for Standardisation (ISO) recognised this and
researched various network schemes, and in 1984
introduced the Open Systems Interconnection (OSI) reference model.
The OSI reference model has standards which ensure vendors greater
compatibility and interoperability between various types of network
technologies.
The OSI reference model organizes network functions into seven numbered
layers.
Each layer provides a service to the layer above it in the protocol
specification and communicates with the same layers software or hardware
on other computers.
Layers 1-4 are concerned with the flow of data from end to end through the
network and Layers 5-7 are concerned with services to the applications.
25