CSE 461: Error Detection and Correction. Next Topic  Error detection and correction  Focus: How do we detect and correct messages that are garbled during.

Slides:



Advertisements
Similar presentations
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Advertisements

Introduction to Information Technologies
Data and Computer Communications
Reliability & Channel Coding
Error Detection and Correction
Transmission Errors Error Detection and Correction
Error Detection and Correction
Fundamentals of Computer Networks ECE 478/578 Lecture #4: Error Detection and Correction Instructor: Loukas Lazos Dept of Electrical and Computer Engineering.
PART III DATA LINK LAYER. Position of the Data-Link Layer.
1 ITC242 – Introduction to Data Communications Week 10 Topic 16 Data link control.
Practical Session 11 Codes. Hamming Distance General case: The distance between two code words is the amount of 1-bit changes required to reach from one.
Chapter 2 : Direct Link Networks (Continued). So far... Modulation and Encoding Link layer protocols Error Detection -- Parity Check.
7/2/2015Errors1 Transmission errors are a way of life. In the digital world an error means that a bit value is flipped. An error can be isolated to a single.
Error Detection and Correction
Error Detection and Reliable Transmission EECS 122: Lecture 24 Department of Electrical Engineering and Computer Sciences University of California Berkeley.
Transmission Errors Error Detection and Correction
Data link layer: services
CSE331: Introduction to Networks and Security Lecture 3 Fall 2002.
COM342 Networks and Data Communications
Lecture 10: Error Control Coding I Chapter 8 – Coding and Error Control From: Wireless Communications and Networks by William Stallings, Prentice Hall,
PART III DATA LINK LAYER. Position of the Data-Link Layer.
© 2009 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved. 1 Communication Reliability Asst. Prof. Chaiporn Jaikaeo, Ph.D.
Error Coding Transmission process may introduce errors into a message.  Single bit errors versus burst errors Detection:  Requires a convention that.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 14.
Data Link Layer: Error Detection and Correction
COSC 3213: Computer Networks I Instructor: Dr. Amir Asif Department of Computer Science York University Section M Topics: 1. Error Detection Techniques:
Error Detection and Correction
David Wetherall Professor of Computer Science & Engineering Introduction to Computer Networks Error Detection (§3.2.2)
Computer Science Division
Computer Networks Lecture 2: Data Link Based on slides from D. Choffnes Northeastern U. and P. Gill from StonyBrook University Revised Autumn 2015 by S.
Computer Communication & Networks Lecture 9 Datalink Layer: Error Detection Waleed Ejaz
Error Detection.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
1 Block Coding Messages are made up of k bits. Transmitted packets have n bits, n > k: k-data bits and r-redundant bits. n = k + r.
10.1 Chapter 10 Error Detection and Correction Data can be corrupted during transmission. Some applications require that errors be detected and.
Error Detection. Data can be corrupted during transmission. Some applications require that errors be detected and corrected. An error-detecting code can.
Error Detection and Correction
McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 PART III: DATA LINK LAYER ERROR DETECTION AND CORRECTION 7.1 Chapter 10.
David Wetherall Professor of Computer Science & Engineering Introduction to Computer Networks Error Coding Overview (§3.2)
Winter 2007CS244a Handout 141 CS244a: An Introduction to Computer Networks Handout 14: Error Detection and Correction Nick McKeown Professor of Electrical.
Transmission Errors Error Detection and Correction.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Network Layer4-1 Chapter 5: The Data Link Layer Our goals: r understand principles behind data link layer services: m error detection, correction m sharing.
Data Link Layer 1. 2 Single-bit error 3 Multiple-bit error 4.
Chi-Cheng Lin, Winona State University CS412 Introduction to Computer Networking & Telecommunication Error Correction/Detection.
Lecture 4 Error Detecting and Correcting Techniques Dr. Ghalib A. Shah
Simple Parity Check The simplest form of error detection is the parity check used with ASCII codes, originally on asynchronous modem links Each 7 bit ASCII.
Introduction to Information Technologies
Part III. Data Link Layer
Error Detection and Correction
Subject Name: COMPUTER NETWORKS-1
Communication Networks: Technology & Protocols
The Three Main Sources of Transmission Errors
Advanced Computer Networks
CIS 321 Data Communications & Networking
Error Detection Bit Error Rate(BER): It is the ratio of number Ne of errors appearing over a certain time interval t to the number Nt of 1 and 0 pulses.
Chapter 7 Error Detection and Correction
Introduction to Information Technologies
Error Detection Neil Tang 9/26/2008
COMPUTER NETWORKS CS610 Lecture-5 Hammad Khalid Khan.
Error Detection and Correction
Reliability and Channel Coding
Error Detection and Correction
CSE 461: Framing, Error Detection and Correction
Types of Errors Data transmission suffers unpredictable changes because of interference The interference can change the shape of the signal Single-bit.
Error detection: Outline
Chapter 10 Error Detection and Correction
Presentation transcript:

CSE 461: Error Detection and Correction

Next Topic  Error detection and correction  Focus: How do we detect and correct messages that are garbled during transmission?  The responsibility for doing this cuts across the different layers Physical Data Link Network Transport Session Presentation Application

Errors and Redundancy  Noise can flip some of the bits we receive  We must be able to detect when this occurs!  Who needs to detect it? (links/routers, OSs, or apps?)  Basic approach: add redundant data  Error detection codes allow errors to be recognized  Error correction codes allow errors to be repaired too

Motivating Example  A simple error detection scheme:  Just send two copies. Differences imply errors.  Question: Can we do any better?  With less overhead  Catch more kinds of errors  Answer: Yes – stronger protection with fewer bits  But we can’t catch all inadvertent errors, nor malicious ones  We will look at basic block codes  K bits in, N bits out is a (N,K) code  Simple, memoryless mapping

Detection vs. Correction  Two strategies to correct errors:  Detect and retransmit, or Automatic Repeat reQuest. (ARQ)  Error correcting codes, or Forward Error Correction (FEC)  Retransmissions typically at higher levels (Network+). Why?  Question: Which should we choose?

Retransmissions vs. FEC  The better option depends on the kind of errors and the cost of recovery  Example: Message with 1000 bits, Prob(bit error)  Case 1: random errors  Case 2: bursts of 1000 errors  Case 3: real-time application (teleconference)

The Hamming Distance  Errors must not turn one valid codeword into another valid codeword, or we cannot detect/correct them.  Hamming distance of a code is the smallest number of bit differences that turn any one codeword into another  e.g, code 000 for 0, 111 for 1, Hamming distance is 3  For code with distance d+1:  d errors can be detected, e.g, 001, 010, 110, 101, 011  For code with distance 2d+1:  d errors can be corrected, e.g., 001  000

Parity  Start with n bits and add another so that the total number of 1s is even (even parity)  e.g   Easy to compute as XOR of all input bits  Will detect an odd number of bit errors  But not an even number  Does not correct any errors

2D Parity  Add parity row/column to array of bits  How many simultaneous bit errors can it detect?  Which errors can it correct?

Checksums  Used in Internet protocols (IP, ICMP, TCP, UDP)  Basic Idea: Add up the data and send it along with sum  Algorithm:  checksum is the 1s complement of the 1s complement sum of the data interpreted 16 bits at a time (for 16-bit TCP/UDP checksum)  1s complement: flip all bits to make number negative  Consequence: adding requires carryout to be added back

CRCs (Cyclic Redundancy Check)  Stronger protection than checksums  Used widely in practice, e.g., Ethernet CRC-32  Implemented in hardware (XORs and shifts)  Algorithm: Given n bits of data, generate a k bit check sequence that gives a combined n + k bits that are divisible by a chosen divisor C(x)  Based on mathematics of finite fields  “numbers” correspond to polynomials, use modulo arithmetic  e.g, interpret as x 7 + x 4 + x 3 + x 1

How is C(x) Chosen?  Mathematical properties:  All 1-bit errors if non-zero x k and x 0 terms  All 2-bit errors if C(x) has a factor with at least three terms  Any odd number of errors if C(x) has (x + 1) as a factor  Any burst error < k bits  There are standardized polynomials of different degree that are known to catch many errors  Ethernet CRC-32:

Reed-Solomon / BCH Codes  Developed to protect data on magnetic disks  Used for CDs and cable modems too  Property: 2t redundant bits can correct <= t errors  Mathematics somewhat more involved …

Key Concepts  Redundant bits are added to messages to protect against transmission errors.  Two recovery strategies are retransmissions (ARQ) and error correcting codes (FEC)  The Hamming distance tells us how much error can safely be tolerated.