Wednesday, 30 January 2013

THE NEED FOR A PROTOCOL ARCHITECTURE

THE NEED FOR A PROTOCOL ARCHITECTURE

 When computers, terminals, and/or other data processing devices exchange data, the
procedures involved can be quite complex. Consider, for example, the transfer of a
file between two computers. There must be a data path between the two computers,
either directly or via a communication network. But more is needed. Typical tasks to
be performed include the following:
1. The source system must either activate the direct data communication path or
inform the communication network of the identity of the desired destination
system.
2. The source system must ascertain that the destination system is prepared to
receive data.
3. The file transfer application on the source system must ascertain that the file
management program on the destination system is prepared to accept and store
the file for this particular user.
4. If the file formats used on the two systems are incompatible, one or the other
system must perform a format translation function.
It is clear that there must be a high degree of cooperation between the two
computer systems. Instead of implementing the logic for this as a single module, the
task is broken up into subtasks, each of which is implemented separately. In a protocol
architecture, the modules are arranged in a vertical stack. Each layer in the stack
performs a related subset of the functions required to communicate with another
system. It relies on the next lower layer to perform more primitive functions and to
conceal the details of those functions. It provides services to the next higher layer.
Ideally, layers should be defined so that changes in one layer do not require changes
in other layers.
Of course, it takes two to communicate, so the same set of layered functions
must exist in two systems. Communication is achieved by having the corresponding,
or peer, layers in two systems communicate. The peer layers communicate by means
protocol. The key features of a protocol are as follows:
• Syntax: Concerns the format of the data blocks
• Semantics: Includes control information for coordination and error handling
• Timing: Includes speed matching and sequencing

No comments:

Post a Comment