1 / 42

CIS 321 Data Communications & Networking

CIS 321 Data Communications & Networking. Chapter 10 – Error Detection and Correction. Part 3 - Data Link Layer. Receives services from physical layer and provides services to network layer. Data L ink Layer (cont.). Node-to-node delivery Local responsibility Ensures reliable delivery

rstacy
Download Presentation

CIS 321 Data Communications & Networking

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CIS 321Data Communications & Networking Chapter 10 – Error Detection and Correction

  2. Part 3 - Data Link Layer • Receives services from physical layer and provides services to network layer University of South Alabama Computer and Information Sciences

  3. Data Link Layer (cont.) • Node-to-node delivery • Local responsibility • Ensures reliable delivery • Defines frames • Physical addressing • Error control • Flow control • Medium access control University of South Alabama Computer and Information Sciences

  4. Chapter 10 Error Detection and Correction • Errors are inevitable • Interference • Corruption as a result of transmission • Reliable communication is dependent on being able to detect and correct errors • How will we know an error occurred? • Do we retransmit or correct? University of South Alabama Computer and Information Sciences

  5. Types of Errors • Single-bit error • Burst error University of South Alabama Computer and Information Sciences

  6. Single-bit Errors • Only one bit is changed: 0 changed to 1, or a 1 to a 0 • Least likely type of error since noise usually lasts longer than the time to send one bit • More likely in parallel transmission University of South Alabama Computer and Information Sciences

  7. Burst Errors • Two or more bits in data unit are in error, not necessarily consecutive in order • Most likely in serial transmission • Number of bits affected depend on data rate and noise duration University of South Alabama Computer and Information Sciences

  8. 10.2 Detection • Need to detect before message is processed • Redundancy may be used to add additional bits to a message for error control • Process must be handled by destination University of South Alabama Computer and Information Sciences

  9. Redundancy University of South Alabama Computer and Information Sciences

  10. Detection Methods • Parity Check • Cyclical Redundancy Check (CRC) • Checksum • Parity and CRC are performed by data link layer; checksum performed by higher-layer protocols University of South Alabama Computer and Information Sciences

  11. Parity Check • Most common and least expensive • In even-parity, a redundant bit (parity bit) is appended to every data unit so total number of 1 bits is even; odd-parity – total should be odd University of South Alabama Computer and Information Sciences

  12. Even-parity Check University of South Alabama Computer and Information Sciences

  13. Example 1 Suppose the sender wants to send the word world. In ASCII the five characters are coded as 1110111 1101111 1110010 1101100 1100100 The following shows the actual bits sent 11101110 11011110 11100100 11011000 11001001 University of South Alabama Computer and Information Sciences

  14. Example2 Now suppose the word world in Example 1 is received by the receiver without being corrupted in transmission. 11101110 11011110 11100100 11011000 11001001 The receiver counts the 1s in each character and comes up with even numbers (6, 6, 4, 4, 4). The data are accepted. University of South Alabama Computer and Information Sciences

  15. Example 3 Now suppose the word world in Example 1 is corrupted during transmission. 11111110 11011110 11101100 11011000 11001001 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. University of South Alabama Computer and Information Sciences

  16. Simple Parity Performance • Can detect all single-bit errors • May detect all burst errors as long as total number of bits changed is odd • Cannot detect errors when total number of bits changed is even since parity check will pass even though errors had occurred University of South Alabama Computer and Information Sciences

  17. Two-Dimensional Parity Check • Data unit is divided into rows and columns; parity checks are performed on corresponding bits of each column University of South Alabama Computer and Information Sciences

  18. Two-Dimensional Parity University of South Alabama Computer and Information Sciences

  19. Two-Dimensional Parity Performance • Increases likelihood of detecting burst errors • LRC of n bits can easily detect a burst error of n bits • May also detect many burst errors of more than in n bits • Cannot detect errors when two bits in one data unit are damaged and two bits in exactly the same positions in another data unit are damaged University of South Alabama Computer and Information Sciences

  20. Cyclic Redundancy Check (CRC) • Parity checks based on addition; CRC based on binary division • A sequence of redundant bits (a CRC or CRC remainder) is appended to the end of the data unit • These bits are later used in calculations to detect whether or not an error had occurred University of South Alabama Computer and Information Sciences

  21. CRC Steps • On sender’s end, data unit is divided by a predetermined divisor; remainder is the CRC • When appended to the data unit, it should be exactly divisible by a second predetermined binary number • At receiver’s end, data stream is divided by same number • If no remainder, data unit is assumed to be error-free University of South Alabama Computer and Information Sciences

  22. Deriving the CRC • A string of 0s is appended to the data unit; n is one less than number of bits in predetermined divisor • New data unit is divided by the divisor using binary division; remainder is CRC • CRC of n bits replaces appended 0s at end of data unit University of South Alabama Computer and Information Sciences

  23. CRC Generator and Checker University of South Alabama Computer and Information Sciences

  24. CRC Generator • Uses modulo-2 division • Resulting remainder is the CRC University of South Alabama Computer and Information Sciences

  25. CRC Checker • Performed by receiver • Data is appended with CRC • Same modulo-2 division • If remainder is 0, data are accepted • Otherwise, an error has occurred University of South Alabama Computer and Information Sciences

  26. Polynomials • Used to represent CRC generator • Cost effective method for performing calculations quickly University of South Alabama Computer and Information Sciences

  27. Standard Polynomials University of South Alabama Computer and Information Sciences

  28. CRC Performance • Can detect all burst errors affecting an odd number of bits • Can detect all burst errors of length less than or equal to degree of polynomial • Can detect with high probability burst errors of length greater than degree of the polynomial University of South Alabama Computer and Information Sciences

  29. Checksum • Performed by higher-layer protocols • Also based on concept of redundancy University of South Alabama Computer and Information Sciences

  30. Checksum Generator • At sender, checksum generator subdivides data unit into k equal segments of n bits • Segments are added together using one’s complement arithmetic to get the sum • Sum is complemented and becomes the checksum, appended to the end of the data University of South Alabama Computer and Information Sciences

  31. Checksum University of South Alabama Computer and Information Sciences

  32. Checksum Checker • Receiver subdivides data unit in k sections of n bits • Sections are added together using one’s complement to get the sum • Sum is complemented • If result is zero, data are accepted; otherwise, rejected University of South Alabama Computer and Information Sciences

  33. Performance • Detects all errors involving odd number of bits, most errors involving even number of bits • Since checksum retains all carries, errors affecting an even number of bits would still change the value of the next higher column and the error would be detected • If a bit inversion is balanced by an opposite bit inversion, the error is invisible University of South Alabama Computer and Information Sciences

  34. 10.3 Error Correction • Requires more redundancy bits; must know not only that an error had occurred, but where the error occurred in order to correct it • Correction simply involves flipping the bit • Hamming code may be applied to identify location where error occurred by strategically placed redundancy bits University of South Alabama Computer and Information Sciences

  35. Redundancy Bits University of South Alabama Computer and Information Sciences

  36. Example Hamming Code • For a seven-bit data sequence r1:bits 1, 3, 5, 7, 9, 11 r2:bits 2, 3, 6, 7, 10, 11 r3:bits 4, 5, 6, 7 r4:bits 8, 9, 10, 11 University of South Alabama Computer and Information Sciences

  37. Example Hamming Code University of South Alabama Computer and Information Sciences

  38. Error Detection using Hamming Code University of South Alabama Computer and Information Sciences

  39. Burst Error Correction • By rearranging the order of bit transmission of the data units, the Hamming code can correct burst errors • Organize N units in a column and send first bit of each, followed by second bit of each, and so on • Hamming scheme then allows us to correct corrupted bit in each unit University of South Alabama Computer and Information Sciences

  40. Burst Error Correction Example University of South Alabama Computer and Information Sciences

  41. Coming Up… Chapter 11 • Data Link Control and Protocols • Flow Control • Error Control • Protocols University of South Alabama Computer and Information Sciences

  42. Credits • All figures obtained from publisher-provided instructor downloads Data Communications and Networking, 3rd edition by Behrouz A. Forouzan.  McGraw Hill Publishing, 2004 University of South Alabama Computer and Information Sciences

More Related