Error Detection in Data Transmission What exactly is an error in data? Imagine you are typing a sentence to someone else via an instant messaging service. You type ‘I’d love to be fit and healthy’, but it is received as ‘I’d love to be fat and wealthy’. It is clear what the errors are here – two separate words, meaning there are two separate errors. How do errors happen? There are four main sources which errors come from: Human: A simple typing mistake can completely change the meaning of a message Hardware: For example a keyboard may be faulty so that a ‘H’ is sent instead of a ‘W’ Software: There may be some kind of bug in a piece of software which causes errors to happen Transmission: When the data is actually sent the error may be caused – this is the most common source of errors Why are errors caused in transmission? Errors may be caused by simple things such as storms, faulty connections, or corroded wiring. All of these things could contribute individually, or in severe cases, as a collective. How does error detection work? Every single piece of data which is sent is converted into binary. Binary is where data is changed into signals which can either be ‘1’ or ‘0’. To detect errors in these binary signals, extra ‘1’s or ‘0’s can be added. To convert data, a binary code called the ASCII code is used, which is where a string of 7 signals can individually represent a single European language character. The Parity method of detection The ‘Parity Bit’ method is a simple way of detecting errors. Depending on the number of ‘1’s or ‘0’s in the ASCII string of the data which has been sent, an extra ‘parity bit’ is added – this will be an extra ‘1’ or ‘0’. A rule which is set up before the data is sent governs whether the parity bit is going to be a ‘1’ or ‘0’. The rule will state whether the data should have an even or odd number of ‘1’s or ‘0’s. Cyclic Redundancy Codes This is the other main method of error detection in data transmission. The idea is to come up with a sum which will have a unique outcome depending on what numbers are in the string of binary codes. The sum which is made is called the ‘checksum’. The checksum is calculated before the data is sent, and then the sum and the result are both sent, as well as the data itself. The sum is then calculated when the data has been sent, and if the answers match, the data has remained unchanged and has no errors.