Paper 1 - OL - Revision Guide - Data Transmission - 2025
Paper 1 - OL - Revision Guide - Data Transmission - 2025
Data packets
Minhas Rupsi
Data is broken up into packets before it is transmitted. Data packets are split up into:
• packet header (containing the IP address of the sending station and receiving station, the sequence
number of the packet, so it can be reassembled, and packet size, to ensure the receiving station knows
that the whole packet has been received)
• payload (the actual data)
• packet trailer (containing cyclic redundancy check (CRC) (error check) and a way of identifying the end
of the data packet).
Data packets allow data to be sent in manageable chunks that can be sent along the most efficient route
from A to B. Routers (known as nodes) are used to control the path a data packet takes from sending
station to receiving station. This is called packet switching where each data packet can take a different
route; each route taken is independent of each other. Since data packets take different routes, they could
arrive at their destination in the wrong order. A sequence number in the packet header allows all the data
packets to be reassembled in the right order at the receiving station. Hop numbers are added to packet
headers to ensure they don’t ‘bounce around’ from router to router and eventually become effectively lost.
Page 1 of 24
O Level – Paper 1 – Data Transmission
Data transmission
Minhas Rupsi
• simplex: data can be sent in one direction only (for example, sending data to a printer)
• half-duplex: data can be sent in both directions, but not at the same time (for example, using a walkie-
talkie to send and receive messages)
• full-duplex: data can be sent in both directions at the same time (for example, when using a
broadband internet connection).
• Serial data transmission: data is sent one bit at a time down a single wire/channel (for example, using
a USB connection).
• Parallel data transmission: several bits of data are sent down several wires/channels at the same time
– each wire/channel transmits each bit (for example, transmitting data using the internal circuits of a
computer).
It is important to remember that serial transmission and parallel transmission can use serial, half-duplex or
full-duplex as a method of data transmission.
• Faster rate of data transmission than serial, which makes it the preferred method where speed is
important (such as internal connections in a computer).
• Works well over shorter distances.
• Due to several wires/channels being used, data can become skewed over long distances (no longer
synchronised).
• Easier to program input/output operations when parallel used.
• Preferred method when sending large amounts of data.
• The most appropriate transmission method if data is timesensitive.
• Requires more hardware, making it more expensive to implement than serial ports.
Page 2 of 24
O Level – Paper 1 – Data Transmission
Universal serial bus
The universal serial bus (USB-A) is a form of serial data transmission. It is the industry standard. When a
Minhas Rupsi
USB is used to connect a device to a computer:
USB benefits
• Devices plugged into the computer are automatically detected and device drivers are automatically
loaded up.
• Connections can only fit one way preventing incorrect connections being made.
• Has become an industry standard.
• Can support different data transmission rates.
• No need for external power source since cable supplies +5V power.
• USB protocol notifies the transmitter to re-transmit data if any errors are detected.
• Relatively easy to add more USB ports if necessary by using USB hubs.
• Backward compatible.
USB drawbacks
• Standard USB only supports a maximum cable length of 5m; beyond that, USB hubs are needed to
extend the cable length.
• Even though USB is backward compatible, very early USB standards (V1) may not always be supported
by the latest computers.
• Even the latest version 3 (V3) and version 4 (V4) USB-C systems have a data transfer rate which is slow
compared with, for example, Ethernet connections.
USB-C is the latest type of USB connector, which uses a totally symmetrical 24-pin USB connection, so it will
fit into a USB port either way round since there is no up or down orientation. USB-C is actually USB 3.1 but
has been named USB-C to distinguish it from the old format which was known as USB-A.
The main advantages (compared to existing USB-A) of the USB-C connector are:
• it is much smaller and thinner which suits the current trend in making devices much thinner
• it offers 100 watt (20 volt) power connectivity which means full-sized devices can now be charged
• it can carry data at 10 Gigabits per second (10Gbps); this means it can now support 4K video delivery
• the USB-C connection is backward compatible (to USB 2.0 and 3.0) provided a suitable adaptor is used.
Page 3 of 24
O Level – Paper 1 – Data Transmission
Methods of error detection
Minhas Rupsi
When data is transferred there is always a risk that the data may be corrupted, lost or even gained. Errors
can occur during data transmission due to:
Parity checks
A parity check is a method used to check whether data has been changed or corrupted following data
transmission. Parity can be even (even number of 1-bits) or odd (odd number of 1-bits). The left-most bit
is reserved for a parity bit.
If two bits have been changed (for example, 11110000 changed to 00111100) the parity may stay the
same and wouldn’t be picked up by a parity check. In such cases, another error detection method, such as a
checksum, needs to be carried out.
Parity blocks can be used to determine exactly which bit has been corrupted or changed following data
transmission.
For example:
In this example, nine bytes of data have been transmitted. Another byte, known as the parity byte, has also
been sent (this byte consists entirely of the parity bits produced by the vertical parity check and also
indicates the end of the block of data). Even parity is being used. The table shows how the data arrived at
the receiving end. And each row and column needs to be checked to see if they still show even parity.
• byte 8 (row 8) now has incorrect parity (there are three 1-bits)
• bit 5 (column 5) also now has incorrect parity (there are five 1-bits).
First, the table shows that an error has occurred following data transmission (there has been a change in
parity in one of the bytes).
Second, at the intersection of row 8 and column 5, the position of the incorrect bit value (which caused the
error) can be found. The 1-bit at this intersection should be a 0-bit; this means that byte 8 should have been:
which would also correct column five, giving an even vertical parity (now has four 1-bits).
Page 4 of 24
O Level – Paper 1 – Data Transmission
Checksum
A checksum is another method used to check if data has been changed/ corrupted following data
Minhas Rupsi
transmission. The checksum is calculated by the sending computer, from the block of data using an agreed
algorithm. The data is then sent as a block along with the checksum. The checksum is re-calculated by the
receiving computer using the same algorithm used by the sending computer. Any differences in the
checksum indicates an error.
• when a block of data is about to be transmitted, the checksum is calculated from the block of data
• the calculation is done using an agreed algorithm (this algorithm has been agreed by sender and
receiver)
• the checksum is then transmitted with the block of data
• at the receiving end, the checksum is recalculated by the computer using the block of data (the agreed
algorithm is used to find the checksum)
• the re-calculated checksum is then compared to the checksum sent with the data block
• if the two checksums are the same, then no transmission errors have occurred; otherwise a request is
made to re-send the block of data.
To explain how this works, Example below explains how a checksum is generated.
Example
If the sum of all the bytes in the transmitted block of data is <= 255, then the checksum is this value.
However, if the sum of all the bytes in the data block > 255, then the checksum is found using the simple
algorithm:
Page 5 of 24
O Level – Paper 1 – Data Transmission
Echo check
An echo check requires data to be sent back to the sending computer where it is compared with the data
Minhas Rupsi
originally sent. Any errors and the data is re-sent. This is not a very reliable method; if the two sets of data
are different, it is not known whether the error occurred when sending the data originally or if the error
occurred when sending the data back for checking.
Check digits
Check digits are used to identify any errors following data entry. A check digit is a value calculated by
many methods, such as ISBN-13 or modulo-11. The generated digit is added to the end (on the right-hand
side) of the number. Barcodes are used on products in supermarkets; check digits are used to ensure the
barcode is read correctly.
Example 1: ISBN 13
The check digit in ISBN 13 is the thirteenth digit in the number. We will now consider two different
calculations. The first calculation is the generation of the check digit. The second calculation is a verification
of the check digit (that is. a recalculation).
Calculation 1 - Generation of the check digit from the other 12 digits in a number
The following algorithm generates the check digit from the 12 other digits:
• 9+8+3+0+8+8=36
• 3x17 + 0 + 4 + 9 + 3 +2) = 75
• (36 751/10 = 111/10 = 11 remainder 1
• 10 - 1 = 9 the check digit
Page 6 of 24
O Level – Paper 1 – Data Transmission
Calculation 2 - Re-calculation of the check digit from the thirteen-digit number (which now includes the
check digit)
Minhas Rupsi
To check that an ISBN 13-digit code is correct, including its check digit, a similar process is followed:
• add all the odd numbered digits together, including the check digit
• add all the even number of digits together and multiply the result by 3
• add the results from 1 and 2 together and divide by 10
• the number is correct if the remainder is zero
Using the ISBN 9780340983829 (including its check digit):
• 9+8+3+0+8+8+9=45
• 3 x (7 + 0 + 4 + 9 + 3 + 21 = 75
• (45 + 75J/10 = 120/10 = 12 remainder 0
• remainder is 0, therefore number is correct.
Example 2: Modulo-11
The modulo-11 method can have varying lengths of number which makes it suitable for many applications,
such as product codes or VINs. The first calculation is the generation of the check digit. The second
calculation is a verification of the check digit (that is, a recalculation).
Calculation 1 - Generation of the check digit from the other digits in a number
(In this example, we will assume the original number contained only 7 digits.)
The following algorithm generates the check digit from the other 7 digits:
• each digit in the number is given a weighting of 8, 7, 6. 5, 4, 3 or 2 starting from the left (weightings start
from 8 since the number will become eight-digit when the check digit is added)
• the digit is multiplied by its weighting and then each value is added to make a total
• the total is divided by 11
• the remainder is then subtracted from 11 to find the check digit (note if the remainder is 10 then the
check digit ’X’ is used).
The example to be used has the following seven-digit number:
Page 7 of 24
O Level – Paper 1 – Data Transmission
Calculation 2 - Re-calculation of the check digit from the eight-digit number (which now includes the
check digit)
Minhas Rupsi
To check that the eight-digit number is correct, including its check digit, a similar process is followed:
• each digit in the number is given a weighting of 8. 7, 6, 5, 4, 3, 2 or 1 starting from the left
• the digit is multiplied by its weighting and then each value is added to make a total
• the total is divided by 11
• the number is correct if the remainder is zero
Using the 8-digit number: 41567102
• ARQ uses positive and negative acknowledgements (messages sent to the receiver indicating that data
has/has not been received correctly) and timeout (this is the time interval allowed to elapse before an
acknowledgement is received)
• the receiving device receives an error detection code as part of the data transmission (this is typically a
Cyclic Redundancy Check); this is used to detect whether the received data contains any transmission
errors
• if no error is detected, a positive acknowledgement is sent back to the sending device
• however, if an error is detected, the receiving device now sends a negative acknowledgement to the
sending device and requests re-transmission of the data
• a time-out is used by the sending device by waiting a pre-determined amount of time ....
• ... and if no acknowledgement of any type has been received by the sending device within this time limit,
it automatically re-sends the data until a positive acknowledgement is received ....
• ... or until a pre-determined number of re-transmissions has taken place
• ARQ is often used by mobile phone networks to guarantee data integrity.
Page 8 of 24
O Level – Paper 1 – Data Transmission
Symmetric and asymmetric encryption
Minhas Rupsi
When data is transmitted over public networks, there is always the risk of it being intercepted. Using
encryption and encryption keys helps solve this problem or certainly makes it more difficult for the hacker.
Encryption alters the data into a form that is unreadable by anybody for whom the data is not intended.
When encrypted, this last sentence becomes:
‘53f0A+yO+vRytMi9MjyS+JuUsLYTVsXpJDvj7PU6K3cYkr7l9ftMV2mxMvV2Ou/
OzHPVrKtRanB/5GSzrPx+3NRYzYe9h2Dktrf0cQ22Wzrnj0DnxGvPzOGVIyYezDb
Si2DoxlUewt1NVTFTmCu1k2CXL6wRCxXmbznQGkaiN8c=‘
As you can see this is now almost unreadable without knowing the decryption key.
The original data is called plaintext and data which is encrypted is called ciphertext.
Encryption can’t stop data being intercepted, but it prevents it making any sense if intercepted. The
following section summarises symmetric and asymmetric encryption.
Symmetric encryption uses a single encryption key. The same key is used to encrypt data and to decrypt
data. Modern encryption keys use 256-bit encryption (giving about 1077 possible combinations) which
makes it hard to crack.
Asymmetric encryption uses two keys: a public key (known to everyone) and a private key (known to one
user only). Matching pairs (private and public keys) are generated by an encryption algorithm.
Both types of key are needed to encrypt and decrypt messages. When using asymmetric encryption,
matching pairs of keys are used (these two keys are mathematically linked but cannot be derived from each
other).
For example, if ‘A’ wants to send a confidential document to ‘B’, ‘B’ sends ‘A’ their public key who uses this
to encrypt the document before sending it to ‘B’. ‘B’ now uses their private key to decrypt the document.
Page 9 of 24
O Level – Paper 1 – Data Transmission
Question No. 1
Minhas Rupsi
Page 10 of 24
O Level – Paper 1 – Data Transmission
Question No. 2
Minhas Rupsi
Page 11 of 24
O Level – Paper 1 – Data Transmission
Question No. 3
Minhas Rupsi
Page 12 of 24
O Level – Paper 1 – Data Transmission
Minhas Rupsi
Page 13 of 24
O Level – Paper 1 – Data Transmission
Minhas Rupsi
Page 14 of 24
O Level – Paper 1 – Data Transmission
Minhas Rupsi
Page 15 of 24
O Level – Paper 1 – Data Transmission
Question No. 4
Minhas Rupsi
Question No. 5
Page 16 of 24
O Level – Paper 1 – Data Transmission
Question No. 6
Minhas Rupsi
Page 17 of 24
O Level – Paper 1 – Data Transmission
Question No. 7
Minhas Rupsi
Page 18 of 24
O Level – Paper 1 – Data Transmission
Question No. 8
Minhas Rupsi
Page 19 of 24
O Level – Paper 1 – Data Transmission
Question No. 9
Minhas Rupsi
Page 20 of 24
O Level – Paper 1 – Data Transmission
Question No. 10
Minhas Rupsi
Page 21 of 24
O Level – Paper 1 – Data Transmission
Question No. 11
Minhas Rupsi
Page 22 of 24
O Level – Paper 1 – Data Transmission
Question No. 12
Minhas Rupsi
Page 23 of 24
O Level – Paper 1 – Data Transmission
Question No. 13
Minhas Rupsi
Page 24 of 24