Communication protocol is a set of rules that govern data communication . It represents an agreement between the communicating devices. Without a protocol two devices can only be connected but not communicated ,just as a person speaking French cannot be understood by a person who speaks only Japanese. So here Harry and Gary can communicate if they agree on the language English.
Entity : An entity is anything capable of sending or receiving information. Examples -- user application programs, file transfer packages, data base management systems, electronic mail facilities.
System : A system is a physically distinct object that contains one or more entities. Examples --- computers, terminals, and remote sensors.
For two entities to successfully communicate, they must agree on some protocol. The set of conventions which may be defined as a set of rules governing the exchange of data between two entities is called the communication protocol.
Protocol suite : A single protocol addresses one particular issue that helps to enable communication. When combined with other protocols, the protocol group that results is called a protocol suite . TCP/IP, for example, is a protocol suite.
protocol suite : A combination of protocols.
Some of the popular protocol suites in today's network communications include:
• IPX/SPX : This is the protocol suite that Novell has implemented with its operating system.
• AppleTalk : This is the protocol suite that Apple has implemented with its operating system.
• TCP/IP : This is the protocol suite that has been made a standard of the Internet Anyone who would like to use the Internet must use the TCP/IP suite.
Monolithic Protocol : To be truly monolithic, the package would need to include all of the rules in a single layer. A change in any aspect means that this huge package must be modified. This type of protocol is called monolithic protocol.
Structured Protocol : Instead of a single protocol, there is a set of protocols that exhibit a hierarchical or layered structure. This type of protocol is called structured protocol.
Symmetric Protocol : Most of the protocols are symmetric; that is, they involve communication between peer entities. The peer entities have the same protocol. This type of protocol is called symmetric protocol.
Asymmetric Protocol : Asymmetry may be dictated by the desire to keep the logic of one of the entities or systems as simple as possible. An example of the latter situation is the normal response mode of HDLC. Typically, this involves a computer that polls and selects a number of terminals. The logic on the terminal end is quite straightforward but the logic on the server side is too complex. This type of protocol is called asymmetric protocol.
Non-Standard Protocol : A nonstandard protocol is one built for a specific communications situation or, at most, a particular model of a computer . Thus, if K different kinds of information sources have to communicate with L types of information receivers, (KL) different protocols are needed without standards and a total of (2KL) implementations are required
Standard Protocol : If all systems share a common protocol, only (K+L) implementations would be needed . The increasing use of distributed processing and the decreasing inclination of customers to remain locked into a single vendor dictate that all vendors implement protocols that conform to an agreed-upon standard.
Segmentation : The transfer can be characterized as consisting of a sequence of blocks of data of some bounded size. At the application level, we refer to a logical unit of data transfer as a message. Now, whether the application entity sends data in messages or in a continuous stream, lower-level protocols may need to break the data up into blocks of some smaller bounded size: this process is called segmentation.
Protocol data unit (PDU) : A block of data exchanged between two entities via a protocol as a protocol data unit (PDU).
Encapsulation: Each PDU contains not only data but control information. Indeed, some PDUs consist solely of control information and no data. The control information falls into three general categories:
Address : The address of the sender and/or receiver may be indicated.
Error-detecting code : Some sort of frame check sequence is often included for error detection.
Protocol control : Additional information is included to implement the protocol functions
The addition of control information to data is referred to as encapsulation .
Data are accepted or generated by an entity and encapsulated into a PDU containing that data plus control information
Connection less data control : An entity may transmit data to another entity in such a way that each PDU is treated independently of all prior PDUs. This process is known as connectionless data transfer; an example is the use of the datagram.
Connection oriented data control : Connection-oriented data transfer is to be preferred (even required) if stations anticipate a lengthy exchange of data and/or certain details of their protocol must be worked out dynamically. A logical association, or connection, is established between the entities. Three phases occur
Flow control : In essence, flow control is a function performed by a receiving entity to limit the amount or rate of data that is sent by a transmitting entity.
Error control : Techniques are needed to guard against loss or damage of data and control information. Most techniques involve error detection, based on a frame check sequence, and PDU retransmission. Retransmission is often activated by a timer. If a sending entity fails to receive an acknowledgment to a PDU within a specified period of time, it will retransmit .
Application of Communication Protocol: TCP/IP protocol suite (Layers):