Communication Protocols
An Introduction
|
Prof. David Bernstein
James Madison University
|
|
Computer Science Department |
bernstdh@jmu.edu |
|
Other Kinds of Protocols
- Diplomatic:
- Rules, procedures, conventions and ceremonies which
relate to relations between state
- Legal:
- An international agreement which supplements or
amends a treaty (e.g., the Kyoto Protocol)
- Science/Medicine:
- A predefined (written) method describing the way to implement
an experiment
Definition of "Communications Protocol"
- Informal:
- An agreement about how communication will proceed
- Formal:
- An agreement that governs the procedures used to exchange
information between cooperating entities
The First Documented Communications Protocol
- The Document:
- The play Agamemnon (458 B.C.)
- The Communications Challenge:
- Communicate the fall of Troy (using fire signals)
The First Documented Communications Protocol (cont.)
- A Critique:
- Polybius (2nd Century B.C.) argued that the system couldn't
be used to communicate unexpected events
- The Solution:
- Use 5 torches at both ends
- Some Questions:
- How many messages/events can be represented?
- Is this a complete protocol?
A Discussion/Exercise
- Provide some examples of communications protocols
(that are not computer-specific)
- Formally define the protocol
- Describe possible problems with the protocol
Common Elements of a Communications Protocol
- Message types (and formats)
- Sequencing rules
- Size rules
- Timing rules
- Error handling
Distinguishing Communications Protocols from Services
- Service:
- A set of operations/primitives
- Communications Protocol:
- The rules used to provide a service
Distinguishing Communications Protocols from Services (cont.)
- A Programming Analogy:
- A Common Problem:
- Many (especially older) systems did not distinguish
the service from the protocol
Defining/Expressing Communications Protocols as a Language
- Lexicon:
- The valid components of a message
- Syntax:
- The rules for constructing messages
- Semantics:
- The meaning of different messages
Defining/Expressing Communications Protocols Using UML State Diagrams
Communications Protocols Using UML State Diagrams (cont.)
- An Example:
- Is Anything Missing?
Defining/Expressing Communications Protocols Using Other FSM Diagrams
Defining/Expressing Communications Protocols Using UML Sequence Diagrams
An Example
Communications Protocol Standards Organizations