Data Transmission Chapter 2
Data Transmission Chapter 2
Data packets
Data sent over long distances is broken up into smaller packets to make it easier
to control and transfer. Each packet can be sent along a different route, allowing
for flexibility in case of network congestion or failure. However, the packets need
to be reassembled at the destination to retrieve the original data. This method of
data transmission allows for efficient and reliable transfer of information over
long distances.
Packet structure
» a packet header
» the payload
» a trailer.
The packet header for each packet contains the sender's and receiver's IP
addresses, the sequence number, and the packet size. The payload of each packet
contains the actual data being sent. The packet trailer includes an identifier for
the end of the packet and an error checking method using cyclic redundancy
checks (CRCs). The CRC involves counting the 1-bits in the payload and comparing
it to the value stored in the trailer to check for transmission errors.
Packet switching
The transmission of data packets over the internet can lead to packet loss and
errors, particularly with real-time streaming. This can be problematic for live
events as there is a delay while the missing packets are re-sent and re-ordered. To
avoid the network becoming overwhelmed with lost packets, a method called
hopping is used. Each packet is assigned a hop number, which decreases as the
packet passes through routers. Once the hop number reaches zero and the packet
hasn't reached its destination, it is deleted, and the receiving computer requests
for the missing packets to be re-sent.
DATA TRANSMISSION
Data transmission can occur over short or long distances and involves three
factors: the direction of data transmission, the method of transmission, and data
synchronization. The direction of data transmission can be unidirectional or
bidirectional. The method of transmission refers to how many bits can be sent
simultaneously. Data synchronization ensures that the received data is in the
correct order. These factors are typically addressed by a communication protocol.
In half-duplex mode, data can be sent in both directions, but not simultaneously.
This means that data can be sent from one point to another and vice versa, but
not at the same time. An example of half-duplex mode is a walkie-talkie, where
only one person can talk at a time. While one person is speaking, the other person
can listen, and then they can switch roles. This mode allows for communication in
both directions, but with a limitation on simultaneous transmission.
Serial data transmission involves sending data one bit at a time over a single wire
or channel. This method is commonly used for long-distance communication.
Despite its slower transmission rate compared to parallel data transmission, serial
data transmission ensures that data arrives at its destination in the correct order
since only one channel is used. An example of serial data transmission is
connecting a computer to a printer via a USB connection.
Parallel data transmission involves sending several bits of data down several
channels or wires simultaneously. Each channel or wire transmits one bit. This
method is faster than serial data transmission and is used for internal circuits in
computers where high-speed transmission is necessary. However, over longer
distances, data can become skewed and bits can arrive out of order. Therefore,
parallel data transmission is more suitable for short distances.
The text discusses the problem of data corruption and the importance of error
checking in computer technology. The example of Figure 2.13 shows how data
corruption can make text unintelligible to a computer. The text then introduces
three methods of error checking: parity checks, checksum, and echo check. These
methods are used to detect errors in transmitted data to prevent data corruption.
Parity checks
Parity checking is a method to ensure that transmitted data has not been
corrupted. It is based on counting the number of 1-bits in a byte of data. The
parity can be either even or odd. A parity bit is reserved to indicate whether the
number of 1-bits in the byte is even or odd. For example:
In this example, if the byte is using even parity, then the parity bit needs to be set
to 0, since there is already an even number of 1-bits in the byte (four 1-bits). We
thus get:
In this example, if the byte is using odd parity, then the parity bit needs to be set
to 1, since we need to have an odd number of 1-bits in the byte. We thus get:
The text explains that parity is a method used to detect errors in data
transmission. It mentions that parity can be either even or odd, and it depends on
the number of 1-bits in a byte. If the number of 1-bits is odd, the parity is odd,
and if it is even, the parity is even. The text also states that the recipient’s
computer re-calculates the parity of the byte received to detect errors. If there is
a change in parity, it indicates that a transmission error has occurred.
When two bits change value during data transmission using even parity, it
becomes difficult to identify the error through parity checking. Parity checking is a
technique where an additional bit is added to the transmitted data to detect
errors. In the case of even parity, the added bit ensures that the total number of
1s in the transmitted sequence is always even. However, if there are two or more
bit errors, the parity bit will remain correct, making it impossible to pinpoint the
errors.
The text explains that even parity checks may not catch errors if the corrupted
data still results in an even number of bits. Therefore, another method, called
checksum, is needed to identify errors in transmission. The text also mentions
that even though an error may be flagged, it is not possible to determine exactly
which bit is in error. To address this issue, parity blocks are used, where a block of
data is checked for parity horizontally and vertically. This method not only
indicates that an error has occurred, but also points to the location of the error.
Checksum
Echo check
Echo check is a method used to check for errors during data transmission. The
data is sent to another device which then sends it back to the sender. The
sender's computer compares the original data with the returned data to check for
any differences. If there are no differences, it means the data was transmitted
correctly. However, if the two sets of data are different, it indicates that an error
occurred during the transmission process.
CHECK DIGITS
There are a number of different methods used to generate a check digit. Two
common methods will be considered here: » ISBN 13 » Modulo -11
The original data being sent is known as plaintext. Once it has gone through an
encryption algorithm, it produces cipher text:
Symmetric encryption
Asymmetric encryption
1 Jane uses an algorithm to generate a matching pair of keys (private and public)
that they must keep stored on their computers; the matching pairs of keys are
mathematically linked but can’t be derived from each other. 2 Jane now sends her
public key to Tom.
3 Tom now uses Jane’s public key to encrypt the document he wishes to send to
her. He then sends his encrypted document (cipher text) back to Jane.
4 Jane uses her matching private key to unlock Tom’s document and decrypt it;
this works because the public key used to encrypt the document and the private
key used to decrypt it are a matching pair generated on Jane’s computer. (Jane
can’t use the public key to decrypt the message.)