Difficulty: Easy
Correct Answer: cyclic redundancy codes
Explanation:
Introduction / Context: The data link layer packages network-layer packets into frames and is responsible for detecting corrupted frames so they can be discarded or retransmitted. A widely used technique for error detection at this layer is the cyclic redundancy check (CRC).
Given Data / Assumptions:
Concept / Approach: CRC treats the bit string as coefficients of a polynomial over GF(2). The transmitter divides by a generator polynomial and appends the remainder (the CRC). The receiver repeats the division; a nonzero remainder indicates an error.
Step-by-Step Solution: 1) Choose a generator polynomial G(x) standardized for the link (e.g., CRC-32 for Ethernet).2) Compute remainder R = Data(x) * x^k mod G(x), where k is CRC length.3) Append R to the frame as the FCS (frame check sequence).4) Receiver divides (Data || R) by G(x).5) If remainder = 0, accept; else, discard or request retransmission.
Verification / Alternative check: CRCs detect common error patterns (single-bit errors, burst errors up to a length bound) with extremely low undetected error probability when G(x) is well-chosen.
Why Other Options Are Wrong: Bit stuffing: A framing method to avoid flag emulation in bit-oriented protocols; not error detection.
Hamming codes: Primarily for error correction; used at physical/other layers, not typically the default link-layer detector.Equalization: Channel compensation at the physical layer, not link-layer detection.Scrambling: Randomizes patterns to aid timing/EMI; not an integrity check.Common Pitfalls: Confusing CRC (detection) with FEC (correction). Also thinking a CRC fixes errors; it only detects them.
Final Answer: cyclic redundancy codes
Discussion & Comments