# A-level Computing 2009/AQA/Problem Solving, Programming, Operating Systems, Databases and Networking/Communication and Networking/Communication Methods
## Data Transmission
### Serial Data Transmission

Data is created by changes in a voltage in a circuit which is then sent down one wire. For one-way communication a single signal wire is needed but additional wires may be needed for grounding. For two-way communication two signal wires are required, one for each direction. This method is usually used long distance, for example, transatlantic data transmission. The idea being that the setup would be cheaper as there would only be one wire to set up that handles the data. As the data is on one channel, and data is lost over the distance it travels, it is easier to recover the original signal.

### Parallel Data Transmission

Parallel data is preferred for short distance data transmission because the amount of data that can be sent is greater than serial data transmission. However in long range transmission, the data along a wire could get distorted by the voltages from the other wires parallel to the wire. This problem is known as skew. Another reason it is not used over long distances is that the cost of cabling is very high as many wires are required.

## Baud rate, bit rate, bandwidth, latency
### Baud Rate

Baud Rate is the rate at which signals on a wire may change. This means that in a second, a signal could change a number of times which is recorded as the baud rate. AQA define the baud rate as the number of signal changes per second. Therefore, 1 baud is defined as one signal change per second. Units for baud rate are per second (/s)

### Bit Rate

Bit rate is measured in bits per second (also written as bps or bits/second). It measures the number of bits that are sent down a channel per second. Baud and bit rate can be different but when the bit rate is equal to the baud rate, one bit is sent between consecutive signal changes. For example, if you had a dripping water tap, the bit rate and baud rate would be equal for that tap because there is a consecutive change between the tap dripping and water not dripping assuming that the tap would only drip one drop at a time.

### Bandwidth

There is a direct relationship between bit rate and bandwidth that you must know . They are directly proportional. The greater the bandwidth, the higher the bit rate. The bandwidth is usually double the bit rate so the relationship can be seen as 2:1 as a ratio.

### Latency

In the context of data communications and electronics, latency is the time that is taken for data to be transmitted from the sender to the receiver. For example, when you're surfing the internet and you make a request, the time that it takes for your request to reach the server is the latency.

## Asynchronous data transmission
### Start and stop bits
#### Start Bit

A start bit is used to signal the arrival of data and to temporarily synchronise the transmitter and receiver.

#### Stop Bit

A stop bit is a character in asynchronous data transmission that lets a receiver know that the byte being sent has ended. Stop bits are very important because this is the way most of our information is sent across the internet. Without a stop bit it is possible that a receiving computer will likely prompt an error as it may take in unintended data if the end of the intended data is not given.
Example:
data being sent - 001100
the receiving computer gets this information but does not receive any information to know when to stop reading incoming data and so it will keep reading incoming signals until the program crashes
data received - 00110010101001011001......

## Odd and even parity

| 7 bits of data (number of 1s) | 8 bits including parity | 8 bits including parity |
| 7 bits of data (number of 1s) | even | odd |
| 0000000 (0) | 00000000 | 10000000 |
| 1010001 (3) | 11010001 | 01010001 |
| 1101001 (4) | 01101001 | 11101001 |
| 1111111 (7) | 11111111 | 01111111 |
A parity bit is a bit that is added to ensure that the number of bits with the value 1 in a set of bits is odd or even. Parity bits are used in the simplest form of error detecting. For example, if a signal starts off with 3 occurrences of 1 it is in odd parity, once it arrives at its destination and only has 2 occurrences of 1 then the receiver knows there is a problem and will ask for the data to be re-sent
There are two variants of the parity bit, odd and even.
When using even parity, the parity bit is set to 1 if the number of 1s in a set of bits (not including the parity bit) is odd, making the entire set of bits (including the parity bit) even. For example 1001 0110 (4 bits = even)
When using odd parity, the parity bit is set to 1 if the number of 1s in a set of bits (not including the parity bit) is even, making the entire set of bits (including the parity bit) odd. For example 1000 0110 (3 bits = odd)
In other words, an even parity bit will be set to "1" if the number of 1s + 1 is even, and an odd parity bit will be set to "1" if the number of 1s +1 is odd.

### Error detection

If an odd number of bits (including the parity bit) are transmitted incorrectly, the parity bit will be incorrect and therefore shows an error occurred during transmission. Parity bits can only be used to detect errors, they cannot correct any errors as there is no way to determine which specific bit has been corrupted. The data must be scrapped and re-transmitted.

## Handshaking

It is usually a process that takes place when a computer is about to communicate with a foreign device to establish rules for communication. When a computer communicates with another device like a modem or a printer it needs to handshake with it to establish a connection. Much like humans greet each other by a handshake to establish a connection.
Handshaking may be used to negotiate parameters that are acceptable to equipment and systems at both ends of the communication channel, including, but not limited to, information transfer rate, coding alphabet, parity, interrupt procedure and other protocol or hardware features.
Handshaking makes it possible to connect relatively heterogeneous systems or equipment over a communication channel without the need for human intervention to set parameters. One classic example of handshaking is that of modems, which typically negotiate communication parameters for a brief period when connection is first established, and thereafter use those parameters to provide optimal information transfer over the channel as a function of its quality and capacity.
A typical handshaking process follows the following steps:
* Sending device checks if receiving device is connected and ready to receive.
* Sending device informs the receiving device it is sending.
* Receiving device confirms that it has received.
* Receiver indicates that it is ready to receive again.

## Baseband

Baseband is a transmission medium used for a network over short distances. Usually, a network is used between several computers so data is sent simultaneously. However, a baseband system only allows one station to be sent at a time. It offers high performance for low cost.

## Broadband

Broadband is also a transmission medium used for a network but it is a multichannel system which combines several data channels into one so that the bandwidth of the transmission can be shared between several channels. It is mainly used for long distance communication because long-distance wires are difficult to maintain and therefore it would be wasteful to use single channel wires.