Learning Objectives
- Describe how a checksum is generated and checked.
- Explain that a checksum represents a block of transmitted data.
- Describe the complete echo-check process.
- Compare the data overhead of checksum and echo check.
- Explain what happens when sender and receiver results differ.
Key Terms
- Checksum
- A value calculated from a block of data and transmitted so the receiver can repeat and compare the calculation.
- Check value
- Additional data used to test whether a transmission is likely to be correct.
- Echo check
- A method in which received data is sent back to the sender for comparison.
- Comparison
- Testing two values or data sets to see whether they match.
- Retransmission
- Sending data again after a mismatch or detected error.

Checksum Process
A checksum is calculated from a block of data before transmission. The sender applies an agreed calculation and sends the resulting checksum with the data. The exact arithmetic can vary, but both sender and receiver must use the same method.
The receiver performs the same calculation on the data it received. It compares its result with the transmitted checksum. If the two values match, the block is accepted as having passed the check. If they differ, an error is detected.
A checksum summarises a larger block using a smaller check value. This creates less additional traffic than returning the complete data, but different corrupted blocks can sometimes produce the same checksum. Therefore a match indicates that no error was detected, not absolute proof that the data is perfect.
A Simple Checksum Illustration
For learning purposes, a question may provide a simple rule such as add the byte values and keep only a specified number of bits. Students should follow the rule given in the question rather than assume a particular real-world checksum algorithm.
The sender calculates from the original data. The receiver calculates independently from the received data. The power of the method comes from comparing two results produced at different ends of the transmission.
If interference changes the data, the receiver’s calculation is likely to change, producing a mismatch. The data can then be rejected or requested again.
Echo Check Process
In an echo check, the receiver sends the received data back to the sender. The sender compares the returned copy with the original data. If the two match, the sender can conclude that no difference was found by this check.
If the returned data differs, the sender knows that an error occurred either during the original transmission or during the return transmission. The original data is sent again.
Echo checking is conceptually simple because the actual data is compared, but it requires the data to travel back across the communication link. This increases transmission time and bandwidth use.
Comparing The Methods
A checksum sends a relatively small calculated value in addition to the data. An echo check returns the whole received data. Therefore, echo checking normally creates more additional traffic.
A checksum requires calculation at both sender and receiver. An echo check requires storage of the original at the sender and a direct comparison after the echo returns. Both methods can lead to retransmission when a mismatch is found.
When answering a process question, present the stages in the correct order. For checksum: calculate, send, recalculate, compare. For echo: send, return received copy, compare with original, retransmit if different.
Checksum And Echo Check Compared
| Feature | Checksum | Echo Check |
|---|---|---|
| Additional transmission | A check value is sent with the data. | The whole received data is sent back. |
| Receiver action | Recalculates checksum. | Returns the received data. |
| Sender action | Creates original checksum. | Compares echo with original. |
| Mismatch | Error detected; data can be resent. | Error detected; data can be resent. |
| Overhead | Usually smaller | Usually larger |
Checksum Stages
| Stage | Action |
|---|---|
| 1 | Sender calculates checksum from original data. |
| 2 | Sender transmits data and checksum. |
| 3 | Receiver recalculates checksum from received data. |
| 4 | Receiver compares the two checksum values. |
| 5 | A mismatch indicates an error. |
Worked Examples
Simple Checksum
Question: A question defines the checksum as the sum of values modulo 256. Values are 80, 90 and 100. Find the checksum.
- Add the values: 80 + 90 + 100 = 270.
- Subtract 256 to keep the remainder in an 8-bit range.
Answer: 14.
Checksum Mismatch
Question: The transmitted checksum is 73 and the receiver calculates 69. What conclusion is made?
- Compare the two check values.
- They are different.
- The received block has failed the check.
Answer: An error is detected and the data should not be accepted without further action.
Echo Check
Question: The sender transmits 101101 and receives echo 101001. What should happen?
- Compare original and echoed patterns.
- The fourth bit differs.
- Treat the transmission as erroneous.
Answer: The data should be retransmitted.
Examination Guidance
- Do not invent a checksum formula unless the question gives one.
- State that the receiver recalculates the checksum.
- For echo check, say the receiver returns the data to the sender.
- A matching checksum means no error was detected, not that correctness is guaranteed.
Common Mistakes
- Saying the checksum is the packet number.
- Comparing a checksum with the original data rather than with the receiver’s calculated checksum.
- Claiming echo check sends only one parity bit back.
- Forgetting retransmission after a mismatch.
Knowledge Check
1. Who calculates the first checksum?
2. What does the receiver do with a checksum?
3. What is returned in an echo check?
4. Why does echo checking use more bandwidth?
5. What does a checksum mismatch indicate?