What Is Protocol ?

curvyrawrNetworking and Communications

Oct 23, 2013 (3 years and 7 months ago)


What Is

A protocol is a system of rules that define how something is to be done. In

terminology, a protocol is usually an agreed
upon or standardized method for transmitting

and/or establishing communications between different devices. Just as two humans need to have
a common language between them before they can begin to share ideas and information, so must
ers have a common way of sending information between them. The

is often used
as an example of a successful protocols
based system in which the implementation of key
qualities of protoco
ls, such as error correction and message formatting, are utilized and respected
across a wide variety of


To d
emonstrate a common usage of a popular protocol, we can examine the Internet's
TCP/IP protocol. Computers can communicate different types of information over TCP/IP such
as text, pictures,

ce Over Internet Protocol), and more. To indicate that a user wants
the page "protocol.html" from the What
What website, the
web browser


connects to
the What

and sends this information: "GET /what_is/protocol.html HTTP/1.1".
The server knows that the request is divided into three sections by spaces,

and knows what
values to expect in each section. The first section specifies the type of request, in this case a GET
request. The next section is the location request, in this case the file "protocol.html" which is
located in the "
what is
" directory. The
final section is the transport protocol that the browser
would like to use, in this case version 1.1 of HTTP (HyperText Transfer Protocol). If Firefox
were to request these properties in a different order, say, with the GET section at the end instead
of at

the beginning, the web server would not be able to understand the request. The order, and
type, of the request is defined in the TCP/IP suite of protocols.

In the previous example, we saw how one protocol, TCP/IP, was used to specify the use
of another pr
otocol, HTTP. This is an example of high

and low
level protocols and how they
interact. TCP and IP are low
level protocols, that are used in establishing the basic connection
between two computers on a
. However, just simply connecting does nothing practical,
and information must actually be transferred. Just like the low
level protocol defines the
properties of the connection, a high
level protocol (such as HTTP) defines the properties of

data transfer. In addition to the familiar HTTP protocol, other common Internet protocols include
FTP (File Transfer Protocol), DHCP (Dynamic Host Configuration Protocol), SMTP (Simple
Mail Transfer Protocol), POP3 (Post Office Protocol version 3), an
d IMAP (Internet Message
Access Protocol). You have probably noticed that all these acronyms end in the letter "P". In
fact, whenever encountered with an unfamiliar computer
related acronym that ends in "P", there
is a very good chance that it defines a pr

Typical properties

While protocols can vary greatly in purpose and sophistication, most specify one or more of the
following properties:

Detection of the underlying physical connection (wired or wireless), or the existence of
the other endpoint or


Negotiation of various connection characteristics

How to start and end a message

Procedures on formatting a message

What to do with corrupted or improperly formatted

messages (
error correction

How to detect unexpected loss of the connection, and what to do next

Termination of the session and or connection.


The protocols in human communication are separate rules about appearance, speaking,
listening and understanding. All these rules, also called
protocols of conversation
, represent
different layers of communication. They work together to help peop
le successfully communicate.
The need for protocols also applies to network devices. Computers have no way of learning
protocols, so network engineers have written rules for communication that must be strictly
followed for successful host
host communica
tion. These rules apply to different layers of
sophistication such as which physical connections to use, how hosts listen, how to interrupt, how
to say good
bye, and in short how to communicate, what language to use and many others. These
rules, or protoco
ls, that work together to ensure successful communication are grouped into what
is known as a
protocol suite

The widespread use and expansion of
communications protocols

is both a prerequisite for
, and a major contributor to its power and success. The
pair of
Internet Protocol

IP) and
Transmission Control Pr

(or TCP) are the most important of these, and the term

refers to a collection (a "protocol suite") of its most used protocols. Most of the Inte
communication protocols are described in the

documents of the
Internet Engineering Task

(or IETF).

oriented programming

has extended the use of the term to include the
programming protocols

available for connections and communication between objects.

Generally, only the simplest protocols are used alone. Most protocols, especially in the context
of com
munications or networking, are layered together into
protocol stacks

where the various
tasks listed above are divided among different protocols in the stack.

Whereas the protoc
ol stack denotes a specific combination of protocols that work
together, a
reference model

is a
software architecture

that lists each layer and the services each
should offer. The classic seven
layer reference model is the
OSI model
, which is used for
g protocol stacks and peer entities. This reference model also provides an
opportunity to teach more general
software engineering

concepts like hiding, modularity,
delegation of tasks. This model has endured in spite of the demise of many of its protocols (and
protocol stacks) originally sanctioned by the

Common protocols


(Internet Protocol)


(User Datagram Protocol)


(Transmission Control Protocol)


(Dynamic Host Configuration Protocol)


(Hypertext Transfer Protocol)


(File Transfer Protocol)


(Telnet Remote Protocol)


(Secure Shell Remote Protocol)


(Post Office Protocol 3)


(Simple Mail Transfer Protocol)


(Internet Message Access Protocol)


(Simple Object Access Protocol)


Point Protocol)

Protocol testing

In general, protocol testers work by capturing the information exchanged between a
Device Under Test (DUT) and a reference device known to operate properly. In the example of a
manufacturer producing a new keyboard for a personal computer, the Device Under

Test would
be the keyboard and the reference device, the PC. The information exchanged between the two
devices is governed by rules set out in a technical specification called a "communication
protocol". Both the nature of the communication and the actual

data exchanged are defined by
the specification. Since communication protocols are state
dependent (what should happen next
depends on what previously happened), specifications are complex and the documents describing
them can be hundreds of pages.

The ca
ptured information is decoded from raw digital form into a human
readable format
that permits users of the protocol tester to easily review the exchanged information. Protocol
testers vary in their abilities to display data in multiple views, automatically

detect errors,
determine the root causes of errors, generate timing diagrams, etc.

Some protocol testers can also generate traffic and thus act as the reference device. Such
testers generate protocol
correct traffic for functional testing, and may also ha
ve the ability to
deliberately introduce errors to test for the DUT's ability to deal with error conditions.

Protocol testing is an essential step towards commercialization of standards
products. It helps to ensure that products from different manufa
cturers will operate together
properly ("interoperate") and so satisfy customer expectatio