1 Error Detection and Correction Flow and Error ControlSliding Window Protocol 1683138001751 PDF
1 Error Detection and Correction Flow and Error ControlSliding Window Protocol 1683138001751 PDF
Networks
for NTA UGC NET
(Computer Science)
Data Communication and
Computer Network
• Error Detection and Correction
• Flow and Error Control;
• Sliding Window Protocol
Hop
Single-bit Error
Burst Error
The term burst error means that two or
more bits in the data unit have changed
from 0 to 1 or vice-versa.
Burst Error
Burst errors are mostly likely to happen
in serial transmission. The duration of
the noise is normally longer than the
duration of a single bit, which means that
the noise affects data.
Error Detection codes
A. 11100010101
B. 11100010100
C. 1110001010
D. 111000101
Two-dimension Parity Check
Performance can be improved by using
two-dimensional parity check, which
organizes the block of bits in the form of
a table.
Parity check bits are calculated for each
row, which is equivalent to a simple
parity check bit.
Parity check bits are also calculated for
all columns then both are sent along with
the data.
At the receiving end these are compared
with the parity bits calculated on the
received data.
Two-dimension Parity Check
A burst error of more than n bits is also
detected by 2-D Parity check with a high
probability.
There is, however, one pattern of error
that remains elusive. If two bits in one
data unit are damaged and two bits in
exactly same position in another data
unit are also damaged, the 2-D Parity
check checker will not detect an error.
For example, if two data units: 11001100
and 10101100. If first and second from
bits in each of them is changed, making
the data units as 00101110,and
01001110 ,the error cannot be detected
by 2-D Parity check.
Two-dimension Parity Check
A burst error of more than n bits is also
detected by 2-D Parity check with a high
probability.
There is, however, one pattern of error
that remains elusive. If two bits in one
data unit are damaged and two bits in
exactly same position in another data
unit are also damaged, the 2-D Parity
check checker will not detect an error.
For example, if two data units: 11001100
and 10101100. If first and second from
bits in each of them is changed, making
the data units as 00101110,and
01001110 ,the error cannot be detected
by 2-D Parity check.
Two-dimension Parity Check
Two-dimension Parity Check
Two-dimension Parity Check
Checksum
In checksum error detection scheme, the
data is divided into k segments each of m
bits.
UGCNET-Sep2013-III-56
Cyclic Redundancy Checks (CRC)
CRC is a very effective error detection
technique.
: • CRC can detect all single-bit errors
• CRC can detect all double-bit errors
(three 1’s)
• CRC can detect any odd number of
errors (X+1)
• CRC can detect all burst errors of less
than the degree of the polynomial.
• CRC detects most of the larger burst
errors with a high probability.
Error Correcting Codes
Error Correction can be handled in two
ways.
• One is when an error is discovered;
the receiver can have the sender
retransmit the entire data unit. This
is known as backward error
correction.
• In the other, receiver can use an
error-correcting code, which
automatically corrects certain errors.
This is known as forward error
correction.
Single-bit error correction
Limitation:-
• A fast sender should not overwhelm a slow receiver, which must perform a certain
amount of processing before passing the data on to the higher-level software.
The most important functions of Data Link layer to satisfy the above requirements are
error control and flow control. Collectively, these functions are known as data link
control.
Data Link Control
For reliable and efficient data communication a great deal of coordination is necessary
between at least two machines. It is necessary to satisfy the following requirements:
• A fast sender should not overwhelm a slow receiver, which must perform a certain
amount of processing before passing the data on to the higher-level software.
The most important functions of Data Link layer to satisfy the above requirements are
error control and flow control. Collectively, these functions are known as data link
control.
Flow Control
Flow control refers to the set of procedures used to restrict the amount of data the
transmitter can send before waiting for acknowledgment.
When an error is detected, the receiver can have the specified frame retransmitted
by the sender. This process is commonly known as Automatic Repeat Request
(ARQ). There exist three popular ARQ techniques.
Stop-and-Wait ARQ
In Stop-and-Wait ARQ, which is simplest among all protocols, the sender (say
station A) transmits a frame and then waits till it receives positive
acknowledgement (ACK) or negative acknowledgement (NACK) from the receiver
(say station B).
Station B sends an ACK if the frame is received correctly, otherwise it sends NACK.
Station A sends a new frame after receiving ACK; otherwise it retransmits the old
frame, if it receives a NACK.
Go-back-N ARQ,
The most popular ARQ protocol is the go-back-N ARQ, where the sender sends the
frames continuously without waiting for acknowledgement.
As the receiver receives the frames, it keeps on sending ACKs or a NACK, in case a
frame is incorrectly received.
When the sender receives a NACK, it retransmits the frame in error plus all the
succeeding frames , Hence, the name of the protocol is go-back-N ARQ.
Go-back-N ARQ,
In case there is long delay before sending the NAK, the sender will resend the lost
frame after its timer times out.
If the ACK frame sent by the receiver is lost, the sender resends the frames after
its timer times out.
Selective-Repetitive ARQ
The selective-repetitive ARQ scheme retransmits only those for which NAKs are
received or for which timer has expired.
This is the most efficient among the ARQ schemes, but the sender must be more
complex so that it can send out-of-order frames.
The receiver also must have storage space to store the post NAK frames and
processing power to reinsert frames in proper sequence