Chapter -8 Data Link Protocols. Asynchronous Protocols Synchronous Protocols Character-Oriented Protocols Bit-Oriented Protocols. Data Link Control Protocol. INTRODUCTION
The DTE must separate the characters on the communications line into messages.
The part of the protocol consisting of rules specifying what happens when an error is detected, what to do if communications suddenly and unexplainably cease, and the way communications are reestablished after they are broken is called error control.
The part of a protocol consisting of rules for ending the communications under normal and abnormal circumstances is called termination.
The protocol allow the transmission of data from any data coding system.
The protocol should use as few characters as possible to control the data transmission so that most of the line capacity can be used for actual data transmission.
Data messages normally consist of three parts: the header, text, and trailer.
The header of a message contains and conveys information about the message, such as the destination node’s address, a sequence number, and perhaps a date and time.
Message format showing examples of the kinds of control characters the protocol might employ.
Stop-and-wait Flow Control: Stop-and-wait Flow Control is the simplest form control.
The data flow of stop-and-wait flow control.
Sliding WindowFlow Control
The flow control technique that allows multiple frames to be in transit on the line at one time is called sliding window.
There are two common implementations of sliding window flow control: go-back-n and selective repeat.
The data flow in a simple sliding window flow control.
Asynchronous data link protocols deal with individual characters rather than blocks of data.
PPP’s frame format
Other Asynchronous Protocols:
Start-stop transmission is a least efficient technology.
We need to bundle bytes to reach high efficiency transmissions.
STX Packet# Checksum
1 byte compliment 1 byte
A Frame with Header
S-frames specify mode and sequence numbers
I-frames exchange user data,
S-frames acknowledge and provide flow/error control
U-frames initiate and acknowledge
Forward error correction uses codes containing sufficient redundancy to prevent errors by detecting and correcting them at the receiving end without retransmission of the original message.
One of the oldest and simplest method, parity checking adds 1 additional bit to each byte in the message. The value of this parity bit is dependent on the number of 1’s in each byte transmitted. Even parity causes the sum of all bits (including the parity bit) to be even. Odd parity causes the sum to be odd.
Unfortunately if two bits are erroneous, the parity checking will fail. Parity checking results in about a 50% reliability rate.
Assume we are using even parity with 7-bit ASCII.
The letter V in 7-bit ASCII is encoded as 0110101.
Because there are four 1s (an even number), parity is set to zero.
This would be transmitted as: 01101010.
Assume we are using odd parity with 7-bit ASCII.
The letter W in 7-bit ASCII is encoded as 1010111 (Oct127).
Because there are five 1s (an odd number), parity is set to zero.
This would be transmitted as: 10101110.
LRC was developed to overcome the problem with parity’s low probability of detection.
LRC adds one additional character, called the block check character (BCC) to the end of the entire message or packet of data.
The value of the BCC is calculated much like the Parity bit, but for the entire message. Results in a 98% reliability rate.
For example, suppose we were to send the message “DATA”
using odd parity and LRC with 7-bit ASCII:
(Note that the parity bit in the BCC is determined by parity,
Like LRC, polynomial checking adds 1 or more characters to the end of the message based on a mathematical algorithm.
With checksum, 1 byte is added to the end of the message. It is obtained by summing the message values, and dividing by 255. The remainder is the checksum. (95% effective)
With Cyclical Redundancy Check (CRC), 8, 16, 24 or 32 bits are added, computed by calculating a remainder to a division problem.