© 2009 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved. 1 Communication Reliability Asst. Prof. Chaiporn Jaikaeo, Ph.D. Computer Engineering Department Kasetsart University, Bangkok, Thailand Adapted from the notes by Lami Kaya,
Sources of Transmission Errors Attenuation Interference Distortion
Signal Attenuation Attenuation Loss of energy Signal strength falls off with distance Attenuation depends on medium Attenuation is an increasing function of frequency Transmission medium
Signal Distortion Distortion Change in signal shape Only happens in guided media Propagation velocity varies with frequency
Interference Also known as Noise Undesirable signals added between the transmitter and the receiver
6 Reducing Error Shannon's Theorem suggests Increase the signal-to-noise ratio Mechanisms like shielded wiring can help lower noise Noise/interference cannot be eliminated completely But many transmission errors can be detected In some cases, errors can be corrected automatically
Type of Transmission Errors
Single-Bit Errors
Burst Errors
Handling Errors Forward Error Correction (FEC) Automatic Repeat reQuest (ARQ)
Forward Error Correction
Error Detection Codes
Block and Convolutional Codes Block Error Codes Divides the data to be sent into a set of blocks Extra information (known as redundancy) attached to each block Memoryless Convolutional Error Codes Treats data as a series of bits, and computes a code over a continuous series The code computed for a set of bits depends on the current and previous input
Single Parity Checking A simple form of block error code
Example 1 Suppose the sender wants to send the word world. In ASCII the five characters are coded (with even parity) as The following shows the actual bits sent
Example 2 Now suppose the word world in Example 1 is received by the receiver without being corrupted in transmission The receiver counts the 1s in each character and comes up with even numbers (6, 6, 4, 4, 4). The data are accepted.
Example 3 Now suppose the word world in Example 1 is corrupted during transmission The receiver counts the 1s in each character and comes up with even and odd numbers (7, 6, 5, 4, 4). The receiver knows that the data are corrupted, discards them, and asks for retransmission.
18 (n, k) Notation Datawords Set of all possible messages Codewords Set of all possible encoded version If a dataword contains k bits and r additional bits are added to form a codeword, it is known as (n, k) encoding scheme where n = k + r The subset of 2 n possible combinations are chosen to be codewords The subset is known as a codebook
19 Example: Single Parity Check The set of datawords consists of any possible combination of 8-bits k = 8 256 possible data words n = 9 512 possibilities Only half of the 512 values form valid codewords Change to a single bit of a valid codeword produces an invalid combination Changing two bits produces another valid codeword
20 Hamming Distance No channel coding scheme is ideal! changing enough bits will always transform to a valid codeword What is the minimum number of bits of a valid codeword that must be changed to produce another valid codeword? Measured by Hamming distance Given two strings of n bits each, the Hamming distance is defined as the number of differences
Hamming Distance © 2009 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.21
Hamming Distance in a CodeBook How many errors can transform a valid codeword into another in a codebook? We compute the Hamming distance between all pairs of codewords in a given codebook Answer to the above question is the minimum Hamming distance among pairs in a codebook Denoted by d min
Minimum Hamming Distance Consider Single Parity Check d min = 2 Transmission with 2-bit error will be undetected
Internet Checksum 16-bit redundancy for any message To compute a checksum, a sender adds the numeric values of the 16-bit integers using 1's complement arithmetic and it transmits the result
Checksum
26 Cyclic Redundancy Codes (CRC) Used in many digital networks and storage devices Term cyclic is derived from a property of the codewords: A circular shift of the bits of any codeword produces another one Figure below shows a (7, 4) CRC by Hamming
27 Automatic Repeat reQuest (ARQ) Mechanisms Whenever one side sends a message to another, the other side sends a short acknowledgement (ACK) message back ARQ is especially useful in cases of dealing with detecting errors but not in cases for error correction many computer networks use a CRC to detect transmission errors
28 ARQ Mechanisms An ARQ scheme can be added to guarantee delivery if a transmission error occurs the receiver discards the message if an error occurs and the sender retransmits another copy Time SenderReceiver Time Frame ACK Frame ACK
ARQ: Lost Frame Time SenderReceiver Time Frame ACK Frame ACK Timeout Frame