All articles

Error Detection Methods in Data Transmission (IGCSE Computer Science)

Every IGCSE error detection method explained properly: parity checks, parity blocks, checksums, echo checks, check digits and ARQ.

Error Detection Methods in Data Transmission (IGCSE Computer Science)

Error Detection Methods in Data Transmission (IGCSE Computer Science)

What Are the Error Detection Methods in Data Transmission?

The main error detection methods tested in IGCSE Computer Science are parity checks, parity blocks, checksums, echo checks, check digits, and Automatic Repeat Requests (ARQ). Each one lets a receiving device work out whether data was corrupted on its way across a network or cable. Most of them can only flag that something's wrong. Only one, ARQ, actually does something about it.

That "detect versus fix" split is worth holding onto as you read the rest of this, because it's the fastest way to sort these six methods in your head under exam pressure.

Quick checklist before you attempt an error-detection question

  • Can you state the actual mechanism for each method (for example, "counts the number of 1-bits") rather than just its name?

  • Do you know which methods only detect an error and which one, ARQ, also corrects it?

  • Can you explain why a single parity check misses an even number of flipped bits?

  • Do you know the difference between a checksum (a whole data block) and a check digit (a single typed code)?

  • Can you list all four steps of ARQ, including the timeout, without dropping one?

Why Do Errors Happen During Data Transmission in the First Place?

Data travels as a stream of bits down a wire, through the air, or along fibre. Electrical interference, signal attenuation over long distances, and "noise" from other devices can flip a 0 to a 1 or a 1 to a 0 during that journey. The receiving device has no way of knowing this happened unless the data itself carries some way of checking it.

That's what every method on this page exists to do.

What Is a Parity Check and How Does It Detect Errors?

A parity check adds one extra bit to a byte so that the total number of 1-bits is always either even (even parity) or always odd (odd parity). The receiver recounts the 1-bits on arrival. If the count doesn't match the agreed rule, an error is flagged.

The parity bit is usually the left-most bit (LMB) of the byte, and it's set based on the other seven data bits:

  • Even parity: the parity bit is set so the total number of 1-bits in the whole byte is even.

  • Odd parity: the parity bit is set so the total is odd.

What does a worked parity check example look like?

Take the byte 0 1 0 1 1 0 1 0, using even parity, where the left-most bit is the parity bit.

Step 1: count the 1-bits in the seven data bits, ignoring the parity bit itself: 1, 0, 1, 1, 0, 1, 0. That's four 1-bits.

Step 2: check whether four is even. It already is, so the parity bit is set to 0 (adding nothing changes the total). That's why the byte reads 0 1 0 1 1 0 1 0: parity bit 0, data bits with four 1s, total 1-bits equals four, which is even. The receiver recalculates the same count on arrival. If the total comes back odd, at least one bit has flipped in transit, and an error is flagged.

Where students actually lose marks here: writing "the parity bit checks if it's even or odd" without stating that it's the count of 1-bits being checked, and without saying what happens next (a retransmission is requested; the parity check itself fixes nothing).

What are the limitations of a parity check?

A single parity check cannot detect an even number of bit flips, because two flipped bits cancel each other out and the total count of 1s stays correct. It also can't tell you which bit changed, even on the occasions it does catch something. This is precisely why parity blocks exist.

What Is a Parity Block and Why Is It More Reliable?

A parity block arranges a set of bytes into rows and columns, then applies a parity bit to every row and every column. Because each bit sits inside two parity checks at once, the intersection of the failing row and the failing column pinpoints the exact bit that flipped, something a single parity check can never do. This is the detail that separates a one-mark answer ("it's more accurate") from a three-mark answer that actually explains why.

What Is a Checksum and How Is It Different From a Parity Check?

A checksum is a value calculated from a block of data using an agreed algorithm before it's sent. The receiver runs the same algorithm on the data it receives and compares the two values. If they don't match, the receiver requests the data again.

The key exam distinction: a parity check works on a single byte, bit by bit. A checksum works on a whole block of data at once, using arithmetic rather than a simple bit count. That's also why a checksum catches multiple errors across a large transmission that a basic parity check would miss entirely; it isn't fooled by pairs of flipped bits the same way.

What Is an Echo Check and Why Is It Rarely Used Today?

An echo check works by having the receiver send the exact data it received straight back to the sender, who then compares it against the original. If the two don't match, an error occurred somewhere in the round trip.

Here's the catch, and a favourite exam question: an echo check can't tell you which leg of the journey the error happened on, the original send or the echo back. It's also bandwidth-heavy, since every piece of data effectively has to travel the line twice. That's mostly why it survives as a teaching example rather than something you'll actually find running a modern high-speed network.

What Are Check Digits and Where Are They Used?

A check digit is a single extra digit calculated from all the other digits in a code, then attached to the end of it. It's designed to catch human data-entry mistakes, not transmission noise. The classic exam example is a mistyped barcode or ID number, such as 6372 keyed in as 6379, or a digit dropped entirely, like 8432 becoming 842.

A checksum verifies a whole transmitted data block. A check digit verifies a single typed code. That's the distinction examiners are actually testing when they ask you to compare the two, not "which one is more accurate."

What Is Automatic Repeat Request (ARQ) and How Does It Work?

ARQ uses acknowledgements and timeouts to guarantee the receiver actually got the data intact, and it's the only method on this page that includes the fix, not just the detection.

  1. The receiver checks the incoming data for errors.

  2. If no error is found, it sends a positive acknowledgement (ACK) back to the sender.

  3. If an error is found, it sends a negative acknowledgement (NAK), and the sender resends the data.

  4. The sender also runs a timeout. If no acknowledgement of any kind arrives within a set time, it assumes the data was lost and resends it automatically.

That timeout step is the part students most often leave out. Without it, a lost acknowledgement, not just lost data, would stall the whole transmission forever.

If you want to see this compared against parity and checksum questions in actual past paper form, the Question Bank has topic-filtered questions on data transmission that mix all six methods the way CIE papers actually do, rather than testing them in isolation.

How Do the Error Detection Methods Compare?

Method

Detects errors in

Can it fix the error itself?

Main weakness

Parity check

A single byte

No, flags only

Misses even numbers of bit flips

Parity block

A block of bytes

No, but can locate the exact bit

More overhead to calculate

Checksum

A block of data

No, flags only

Doesn't identify which bit is wrong

Echo check

Data sent and its echo

No, flags only

Doubles bandwidth; can't tell which leg failed

Check digits

A typed/entered code

No, flags only

Only catches entry errors, not transmission noise

ARQ

Any data block

Yes, via resend on NAK or timeout

Adds delay while waiting for acknowledgement

What Mistakes Actually Cost the Most Marks on This Topic?

Five patterns account for nearly every dropped mark here, and none of them come from a genuine misunderstanding of how the methods work.

  • Saying "it checks for errors" with no mechanism attached. Name the actual thing being counted or compared: 1-bits for parity, a calculated value for a checksum, the received data itself for an echo check.

  • Assuming a parity check catches everything. It doesn't. An even number of flipped bits sails straight through.

  • Mixing up a checksum and a check digit. One verifies a transmitted block. The other verifies a single typed code. They're solving different problems.

  • Forgetting the ARQ timeout. Students remember ACK and NAK and stop there, missing the mechanism that saves the transmission when the acknowledgement itself is what gets lost.

  • Calling any method other than ARQ a "fix." Parity checks, parity blocks, checksums, echo checks and check digits only detect. Retransmission, when it happens, is a separate step the question is usually testing separately.

Where Does This Topic Sit in the Syllabus?

This is core content in Cambridge International's IGCSE Computer Science syllabus (0478/0984), where it sits under Data Transmission alongside packet switching and transmission media. Always check your own syllabus code for the exact command words your paper uses, since mark schemes can differ even between sessions on the same specification.

How Should You Actually Revise This Before the Exam?

Don't just re-read the six definitions until they sound familiar. Cover the table above and rebuild it from memory: method, what it detects, whether it fixes anything, its main weakness. Then work through the parity worked example again with a different byte, and try writing your own ARQ sequence for a piece of data that gets lost twice in a row.

If you want a quick way to check whether your own written explanation of, say, why parity blocks are more reliable than a single parity check would actually score full marks, the AI Tutor can grade a written answer against what a CIE mark scheme is looking for, rather than just telling you the general idea was right.

FAQ

What is the difference between a parity check and a checksum? A parity check tests a single byte by counting its 1-bits against an agreed even or odd rule. A checksum tests a whole block of data using a calculated value that the sender and receiver both work out and compare, which makes it better at catching multiple errors across larger transmissions.

Why can't a parity check detect an error if two bits change? Because a parity check only counts the total number of 1-bits in the byte. If two bits flip, one 0-to-1 and one 1-to-0, or any pair that keeps the total the same, the overall count stays correct, so the check passes even though the data is now wrong.

What is the difference between odd parity and even parity? Even parity sets the parity bit so the total number of 1-bits in the byte is even. Odd parity sets it so the total is odd. Both work the same way; only the target count differs, and the sender and receiver must agree on which one is being used before transmission starts.

Is echo check still used in modern networks? Rarely as a primary method, because it doubles the amount of data sent and can't identify which direction an error occurred in. It's mostly used in IGCSE Computer Science as a teaching example of a basic detection technique, with checksums and ARQ preferred in real systems.

What does ARQ stand for in IGCSE Computer Science? ARQ stands for Automatic Repeat Request. It's the only error detection method in this topic that also corrects the error itself, using acknowledgements (ACK/NAK) and a timeout to make sure the sender automatically resends any data that was lost or corrupted.