Data transmission
From Wikipedia, the free encyclopedia
Data transmission is the conveyance of any kind of information from one space to another. Historically this could be done by courier, a chain of bonfires or semaphores, and later by Morse code over copper wires.
In recent computer terms, it means sending a stream of bits or bytes from one location to another using any number of technologies, such as copper wire, optical fiber, laser, radio, or infra-red light. Practical examples include moving data from one storage device to another and accessing a website, which involves data transfer from web servers to a user's browser.
A related concept to data transmission is the data transmission protocol used to make the data transfer legible. Current protocols favour packet based communication.
[edit] Types of data transmission
Serial transmission bits are sent over a single wire individually. Whilst only one bit is sent at a time, high transfer rates are possible. This can be used over longer distances as a check digit or Parity bit can be sent along it easily.
Parallel transmission Multiple wires are used and transmit bits simultaneously and is much faster than Serial transmission as one byte can be sent rather than one bit. This method is used internally within the computer, for example the internal buses, and sometimes externally for such things as printers, however this method ohg, as there is more interference between many wires than between one.
[edit] Asynchronous and synchronous data transmission
Asynchronous transmission uses start and stop bits to signify the beginning and end of a transmission. This means that an 8 bit ASCII character would actually be transmitted using 10 bits e.g.: A would become 1 0100 0001 0. The extra one (or zero depending on parity bit) at the start and end of the transmission tells the receiver first that a character is coming and secondly that the character has ended. This method of transmission is used when data is sent intermittently as opposed to in a solid stream. In the following example the start and stop bits are in bold. The start and stop bits must be of opposite polarity. This allows the receiver to recognise when the second packet of information is being sent.
Synchronous transmission uses no start and stop bits but instead synchronises transmission speeds at both the receiving and sending end of the transmission using clock signals built into each component. A continual stream of data is then sent between the two nodes. Due to there being no start and stop bits the data transfer rate is quicker although more errors will occur, as the clocks will eventually get out of sync, and the receiving device would have the wrong time that had been agreed in protocol (computing) for sending/receiving data, so some bytes could become corrupted (by losing bits). Ways to get around this problem include re-synchronisation of the clocks and use of check digits to ensure the byte is correctly interpreted and received.
[edit] Protocols and handshaking
Protocol A protocol is an agreed-upon format for transmitting data between two devices e.g.: computer and printer. All communications between devices require that the devices agree on the format of the data. The set of rules defining a format is called a protocol.
The protocol determines the following:
- the type of error checking to be used if any e.g.: Check digit (and what type/ what formula to be used)
- data compression method, if any e.g.: Zipped files if the file is large, like transfer across the Internet, LANs and WANs.
- how the sending device will indicate that it has finished sending a message, e.g.: in a Communications port a spare wire would be used, for serial (USB) transfer start and stop digits maybe used.
- how the receiving device will indicate that it has received a message
- rate of transmission (in baud or bit rate)
- whether transmission is to be synchronous or asynchronous
In addition, protocols can include sophisticated techniques for detecting and recovering from transmission errors and for encoding and decoding data.
Handshaking The process by which two devices initiate communications e.g.: a certain ASCII character or an interrupt signal/ request bus signal to the processor along the Control Bus. Handshaking begins when one device sends a message to another device indicating that it wants to establish a communications channel. The two devices then send several messages back and forth that enable them to agree on a communications protocol. Handshaking must occur before data transmission as it allows the protocol to be agreed.