← IGCSE Computer Science Paper 1

Negative acknowledgement

A message (NAK) the receiver sends to the sender when the error check fails, telling it the data arrived with an error so the sender must resend the same data.

Understanding Negative acknowledgement in IGCSE Computer Science Paper 1

What it does: The sender reacts to a NAK by sending the same data again, not new data. The failed error check triggers the negative acknowledgement from the receiver to the sender. A NAK means the data arrived with an error, so the sender has to resend it. NAK is the usual short form of negative acknowledgement. A NAK is only sent when the error check fails, for example when a parity check or checksum does not match.

Common mistakes: When the error check fails the receiver must send a negative acknowledgement (NAK), not a positive one (ACK). It should be: IF check fails THEN send NAK. A NAK is only sent when the error check fails. The condition should be: IF error check fails THEN.

Class: _____________________  ·  Name: _____________________  ·  Date: _________

Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.

This module's key terms are also in a printable crossword (Modules 179–188) and word search (Modules 168–188).

Take this worksheet further — free with Cloodit

Each concept is reinforced from every angle — learned, then applied, then tested.

Learning
Duo
What does a receiver send when the error check on a packet fails?
A negative acknowledgement (NAK)A positive acknowledgement (ACK)
Matches
IF check passes THEN send NAK
↓
A NAK is sent when the check fails, not when it passes. A pass means the data is fine, so no NAK is needed.
Applying
Meanings
Term
negative acknowledgement
Meaning
A message (NAK) the receiver sends to the sender when the error check fails, telling it the data arrived with an error so the sender must resend the same data.
Practice
IF errorFound = TRUE THEN
Testing
Gaps
SEND ""
Check Answer
Spots
2check parity of packet
3IF check fails THEN send ACK

Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.

The 'Butterfly' badge — Branch Hopper, one of Cloodit's 106 collectible badges
Students earn collectable badges

Over 100 of them, across seven natural biomes.

Study Buddy
Students build a real study resource

Turns their work into revision material ready for Flash Cards and Exam study.

Diamond Dash — one of Cloodit's live, competitive Sprint games
Students lock in with Sprints

Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.

A Cloodit certificate of achievement, ready to personalise and print
Custom printable certificates

Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.

Quick Questions

1. What does a receiver send when the error check on a packet fails?
A. A negative acknowledgement (NAK) ✓
B. A positive acknowledgement (ACK)
A NAK tells the sender the data arrived with an error. An ACK is only sent when the check passes.
2. Which statement about a negative acknowledgement is correct?
A. It tells the sender the data must be sent again ✓
B. It tells the sender the data was received correctly
A NAK means the data arrived with an error, so the sender has to resend it.
3. Who sends a negative acknowledgement?
A. The receiver ✓
B. The sender
The receiver does the error check, so the receiver sends the NAK back to the sender.
4. A receiver finds a parity error in a byte. What should it do?
A. Send an ACK and keep the byte
B. Send a NAK so the data is resent ✓
A failed check means the data is wrong, so the receiver sends a NAK to ask for it again.
5. When the sender gets a NAK, which data does it send?
A. New, different data
B. The same data again ✓
The sender resends the same data that arrived with an error.

Match the Pairs

NAK → The short name for a negative acknowledgement, a message from the receiver saying the data arrived with an error
IF check fails THEN send NAK → When the receiver's error check fails, it sends a negative acknowledgement back to the sender
A NAK tells the sender to resend the same data because the received data had an error → IF message = NAK THEN resend same packet
The receiver sends a NAK back to the sender only when the error check fails → IF parity check fails THEN send NAK
IF check passes THEN send NAK → A NAK is sent when the check fails, not when it passes. A pass means the data is fine, so no NAK is needed.
IF message = NAK THEN send next packet → After a NAK the sender must resend the same data, not move on to the next packet, because the first copy arrived with an error.

Key Term

negative acknowledgement
A message (NAK) the receiver sends to the sender when the error check fails, telling it the data arrived with an error so the sender must resend the same data.

Fill in the Blanks

1. IF errorFound THEN SEND "NAK" ENDIF
Hint: Type the three-letter abbreviation for the message the receiver sends back when the error check fails.
2. IF errorFound THEN SEND "NAK" ENDIF
Hint: Type the command that transmits the message back to the sender.
3. IF reply = "NAK" THEN SEND sameData ENDIF
Hint: Type the operator that compares the reply with the negative acknowledgement, so the sender knows to resend.
4. IF checkOK THEN SEND "ACK" ELSE SEND "NAK" ENDIF
Hint: Type the keyword that chooses the other branch, taken when the check fails.
5. IF errorFound = TRUE THEN SEND "NAK" ENDIF
Hint: Type the Boolean value that means the error check failed.

Spot the Error

Question 1
A receive packet
B check parity of packet
C IF check fails THEN send ACK
D ELSE send ACK
Line C — When the error check fails the receiver must send a negative acknowledgement (NAK), not a positive one (ACK). It should be: IF check fails THEN send NAK.
Question 2
A receive packet
B IF error check passes THEN
C send NAK to sender
D ENDIF
Line B — A NAK is only sent when the error check fails. The condition should be: IF error check fails THEN.
Question 3
A receiver gets packet
B error check fails
C sender sends NAK to receiver
D sender resends the same data
Line C — The receiver sends the NAK to the sender, not the other way round. It should be: receiver sends NAK to sender.
Question 4
A sender sends packet 5
B receiver check fails
C receiver sends NAK
D sender sends packet 6
Line D — After a NAK the sender must resend the same data, which is packet 5. Sending packet 6 would skip the damaged packet. It should be: sender resends packet 5.
Question 5
A WHILE ACK is received
B resend the same packet
C ENDWHILE
Line A — The packet is resent only while a NAK keeps coming back, meaning the data arrived with an error. The loop should test for NAK, not ACK.

Student with a class code? Join your class →