Difficulty: Easy
Correct Answer: Cyclic redundancy check
Explanation:
Introduction:
Catching transmission errors efficiently is a cornerstone of reliable networking and storage. Among the most widely used techniques is a method where the sender computes a remainder by dividing the message bits by a fixed binary polynomial and appends this remainder to the frame. This question asks you to identify that specific error-detecting code.
Given Data / Assumptions:
Concept / Approach:
The technique described is the cyclic redundancy check (CRC). In CRC, the data bits are treated as coefficients of a polynomial over GF(2). The transmitter divides this polynomial by an agreed generator polynomial and appends the remainder (CRC) to the data. At the receiver, the same division is applied to the combined data+CRC; a zero remainder indicates that no detectable error has occurred. CRCs are excellent at detecting common error patterns (single-bit flips, bursts up to a certain length) with modest overhead and very fast hardware or software implementations.
Step-by-Step Solution:
1) Identify the operation: compute remainder = data(x) mod G(x), where G(x) is the generator polynomial.2) Append the remainder (CRC field) to the frame before transmission.3) On reception, compute (data(x) * x^k + CRC) mod G(x) and check if the result equals 0.4) If remainder is non-zero, declare a detected error and discard or request retransmission.
Verification / Alternative check:
Ethernet frames, many link-layer protocols, and storage formats (e.g., disk sectors) use CRCs because they are more powerful than simple parity or checksums for burst-error detection while remaining lightweight to implement.
Why Other Options Are Wrong:
Common Pitfalls:
Confusing CRC with parity or checksum; only CRC is defined by modulo-2 polynomial division using a generator polynomial such as CRC-16 or CRC-32.
Final Answer:
Cyclic redundancy check
Discussion & Comments