Data sent over long distances is usually broken up into data packets (sometimes called datagrams).
Upto 64KB in size
Effective for long continuous stream of data
Drawback: reassembling the data when it reaches its destination.
A typical packet is split up into:
a packet header
the payload
a trailer
Method of data transmission
In this message is broken up into a number of packets
Each packet is sent individually/independently (from start to end)
each packet follows its own path (route)
router determines the route
shortest possible path is selected
In the end, the packets are reassembled in the correct order
Short distance (Eg. Computer to printer)
Longer distances (over a telephone network)
Factors
Direction (one way or both way)
Method (Number of bits to be sent)
Synchronization
Direction of Communication : Unidirectional (One direction only)
Send / Receive: Sender can only send data
Performance : Worst performing mode of transmission
Examples
computer to printer
remote control to the TV
radio broadcasting
keyboard to computer
Direction of Communication : Two-directional, one at a time
Send / Receive: Sender can send and receive data, but one a time
Performance : Better than Simplex
Example
Walkie-talkie
Direction of Communication : Two-directional, simultaneously
Send / Receive: Sender can send and receive data simultaneously
Performance : Best performing mode of transmission
Examples
phone call
WiFi
Social networking
Multiplayer games
In serial data transmission, bits are sent sequentially (one after the other) down the same wire (channel).
Using a single wire reduces costs but slows down the speed of transmission.
Sending data sequentially is perfect for transmitting over longer distances as there are no synchronization issues.
Uses of serial transmission
Transmission to another computer or to external devices
Medium to long distances
Universal Serial Bus (USB)
In parallel data transmission, multiple bits are sent simultaneously down different wires (channels) within the same cable.
Data is synchronized by a clock, however this becomes problematic over longer distances where synchronization errors may start to occur.
Using parallel wires is more expensive but transmission is faster.
Uses of parallel transmission
Fast transmission within a computer system
Short distances
Integrated Circuits (IC), Busses
DEFINITION
Data flows in 2 directions (bi-directional), bit by bit
COST
Economical
SPEED
Slow
DISTANCE
Used for long distance communication
DEFINITION
Data flows in multiple directions, 8 bits at a time
COST
Expensive
SPEED
Fast
DISTANCE
Used for shorter distance communication
USB uses asynchronous serial data transmission method.
It has:
A four-wire shielded cable
Two of the wires used for power and the earth
Two of the wires are used in the data transmission
Advantages of USB connection: [2019, 2020]
devices are automatically detected and configured when initially attached
impossible to connect device incorrectly/connector only fits one way
has become the industry standard
supports multiple data transmission speeds
lots of support base for USB software developers
supported by many operating systems
backward compatible (meaning it's designed to work with older USB versions including USB 2.0 and USB 1.1 )
faster transmission compared to wireless
Checks a byte of data
Check is performed when data is received
A parity bit is added (to the parity byte)
Counts / checks number of 1’s // counts / checks to see if 1’s are even // counts / checks to see if 1’s are odd
Can be even or odd. If parity is incorrect, error is detected
The situations which parity check may not identify that a bit has been transmitted incorrectly
2 bits interchanged (e.g. 1 –> 0 and 0 –> 1) that won’t change parity value
even number of bits/digits are transposed
If there are multiple errors in the same byte/column, that still produce the same parity bit, the error will not be detected
Error control protocol
when an error is detected in a packet of data a request is automatically sent for the data to be resent
Uses acknowledgement / request and time-out
Check performed on receiving data // error is detected by e.g. parity check, check sum
If error detected, request is sent to resend data // negative acknowledgement is used
Resend request is repeated till data is sent correctly / requests time out / limit is reached
Send acknowledgement that data is received // positive acknowledgement is used
If acknowledgement not received in set time data is resent
The Sum of bits is transmitted and checked against the sum of the received bit
Calculating checksum
A value is calculated from the data
The value is calculated using an algorithm // by example
The value is appended to the data to be transmitted
Value is recalculated after transmission
Values are compared
If the values match the data is correct // if the values do not match the data is incorrect
Data is sent to another device, this data is sent back to the sender.
The sender compares the two sets of data to check if any errors occurred during the transmission process.
Data is input with check digit (calculated from all the other digits)
Used in Barcodes//ISBN (International standard book numbers)//VIN (Vehicle identification number)
A calculation is performed on the (inputted) data // by example
The calculated digit is compared to a stored value
If it matches, the data entered is correct
If it does not match, the data entered is incorrect
Two common methods used:
ISBN 13
Modulo-11
Protects data
Scrambles data, making it meaningless or unintelligible
Uses an algorithm/key
Data/plain text is changed to cipher text
Plain text-- text or normal representation of data (before Encryption)
Cypher/cipher text-- Output from an encryption algorithm
SYMMETRIC ENCRYPTION
Only one key is needed to decrypt the message. While transmitting the key to the receiver by the sender, there is a risk that a hacker might interpret the message and then use the key for malicious intents
With symmetric encryption algorithms a single secret key is needed to both encrypt and decrypt a message.
The secret key is possessed by both parties involved in the communication, the sender and the receiver.
Symmetric keys are usually 128 or 256 bits long.
The larger the key size, the harder the key is to crack
Describe how the data is encrypted using Symmetric Encryption? [2020]
− Encryption key is used
− Encryption algorithm is used
− Encryption key / algorithm is applied to plain text to convert it into cypher text
− Same key is used to encrypt and decrypt the text
ASYMMETRIC ENCRYPTION
There is a public key and a private key. The public key is made available to everyone, whereas only the computer user knows the private key. The data is then encrypted using a ’hashing algorithm’.
Asymmetric encryption is a form of encryption where a pair of keys are responsible for encrypting and decrypting data.
This is different from symmetric encryption where the same key is used to encrypt and decrypt.
Public Key
Provided by the recipient
It can be given to anyone who wishes to send encrypted data to the recipient
Safe to share as all it can do is encrypt data
Private Key
Remains private on the computer, never sent or shared
Only this key can decrypt the data encrypted using the public key
Here’s a brief summary of how this method works:
User A applies a symmetric key to encrypt the message
The symmetric key is then encrypted using the public key known to both A and B
User A sends the message over the internet
User B decrypts the symmetric key by applying their own private key
Any two from:
Data is normally encrypted using 128-bit symmetric encryption before it is transmitted giving 3*1038 possible combinations making them very secure.
The strength of the encryption can be improved using 256-bit strings which have 1*1077 possible combinations.
Any four from:
− The number of 1 s/0 s are counted
− A parity bit is added to each byte/7 bits before transmission
− ... to make the sum of the bits/1 or 0 s in each byte odd
− After transmission, if the number is odd no error is detected
− After transmission, if the number is even an error is detected
Any five from:
− Timer is started when sending device transmits a data packet to receiver
− Receiving device checks the data packet for errors
− Once the receiving device knows the packet is error free it sends an acknowledgement back to the sending device ...
− ... and the next packet is sent
− If the sending device does not receive an acknowledgement before the timer ends ...
− ... a timeout occurs
− ... the data packet is resent ...
− ... until acknowledgement received // until max number of attempts reached
One mark each:
• Data goes in both directions...
• ...at the same time
Data could be lost
Data could be gained/added
Data could be changed
Bits could be reassembled in the wrong order
Interference could occur
Crosstalk could occur
Data collisions could occur
Data packets could time out/reach their hop count
Network could be infected with malware
Data is encrypted and decrypted using the same key (1 mark)
Any three from:
Plain text is encrypted into cipher text // cipher text is decrypted into plain text
Data is encrypted using an algorithm ...
... that uses a key
The key can be generated using an algorithm
The key is transmitted to the receiver
Any eight from:
The 1s are counted (in each byte)
Each byte has a parity bit
If the number of 1s are odd the parity bit is 0 (otherwise it is 1)
(The first packet of) data is sent and a timer is started
The receiving device counts the number of 1s (in each byte)
If the number of 1s are odd/data meets odd parity an acknowledgement is sent to say the data is error free ...
... the sender then sends the next packet of data ...
... and the timer is restarted
If the number of 1s is even an acknowledgement is not sent
If no acknowledgement is received within a set timeframe/before timeout ...
... the data packet is resent