CSEP 561 Error detection & correction. David Wetherall

Size: px
Start display at page:

Download "CSEP 561 Error detection & correction. David Wetherall"

Transcription

1 CSEP 561 Error detection & correction David Wetherall

2 Codes for Error Detection/Correction ti ti Error detection and correction How do we detect and correct messages that are garbled during transmission? Application The responsibility for doing this cuts across the different layers Network But we re mostly thinking about links Transport Link Physical djw // CSEP 561, Winter

3 Typical implementation ti of the layers djw // CSEP 561, Winter

4 Problem Fading and noise in the received signal can cause us to wrongly decode the symbols/bits! We must be able to recover when this occurs! Tx signal Rx signal 1? 0? djw // CSEP 561, Winter

5 Approach -- Coding Basic approach: add redundant data Error detection codes allow errors to be recognized Error correction codes allow errors to be repaired Simple, motivating error detection scheme: Just send two copies. Differences imply errors. Question: Can we do any better? Answer: Yes stronger protection with fewer bits! But we can t catch all inadvertent errors, nor malicious ones Added measure (later): retransmit messages djw // CSEP 561, Winter

6 Deep-dive on decoding di models Three different models: 1. Hard-decoding Pick a 0 or 1 as the decoded bit, e.g., a1 Simplest, and mostly what we will use 2. Soft-decoding Pick and record confidence, e.g., a 1 with p=0.6 Helps check/reconstruct message with coding 3. Erasures Declare lost data when confidence is low, e.g., lost Pulls out good portion and reconstruct message with coding 1? 0? djw // CSEP 561, Winter

7 Codes for Error Detection/Correction ti ti A scheme maps D bits of data into D+R bits i.e., it uses only 2 D distinct t bit strings of the 2 D+R possible. D message data bits R check bits (systematic) The sender computes the check bits based on the data. The receiver also computes check bits for the data it receives and compares them with the check bits it received. Mismatches detect errors. And mapping to the closest valid codeword can correct errors. Detection/correction schemes are characterized in two ways: Overhead: rate is fraction of useful information, D/(D+R) Ex: 1000 data bits code bits = rate of 10/11, 10% overhead The errors they detect/correct Ex: all single-bit errors, all bursts of fewer than 3 bits, etc. djw // CSEP 561, Winter

8 The Hamming Distance Errors must not turn one valid codeword into another valid codeword, or we fail to 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., djw // CSEP 561, Winter

9 Error Bounds Hamming distance Code turns data of n bits into codewords of n+k bits Hamming distance is the minimum bit flips to turn one valid codeword into any other valid one. Example with 4 codewords of 10 bits (n=2, k=8): , , , and Hamming distance is 5 Bounds for a code with distance: 2d+1 can correct d errors (e.g., 2 errors above) d+1 can detect d errors (e.g., 4 errors above) djw // CSEP 561, Winter 2012

10 Simplest Error Detection ti Code 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 (Unless the errors are erasures!) djw // CSEP 561, Winter

11 Error Detection Parity (1) Parity bit is added as the modulo 2 sum of data bits Equivalent to XOR; this is even parity Ex: Detection ti checks if the sum is wrong (an error) Simple way to detect an odd number of errors Ex: 1 error, ; detected, sum is wrong Ex: 3 errors, ; detected sum is wrong Ex: 2 errors, ; not detected, sum is right! Error can also be in the parity bit itself Random errors are detected with probability ½ djw // CSEP 561, Winter 2012

12 Checksums Used in Internet protocols (IP, ICMP, TCP, UDP) Basic Idea: Add up the data and send it along with sum Algorithm: Mouthful for sum : 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 e nit: flip all bits to make a number negative, so adding requires carryout to be added back. Q: What kind of errors will/won t checksums detect? djw // CSEP 561, Winter

13 Error Detection Checksums Checksum treats data as N-bit words and adds N check bits that are the modulo 2 N sum of the words Ex: Internet 16-bit 1s complement checksum Properties: Improved error detection ti over parity bits Detects bursts up to N errors Detects random errors with probability 1-2 N Vulnerable to systematic errors, e.g., added zeros djw // CSEP 561, Winter 2012

14 Example: Internet checksum Sending: 1. Arrange data in 16-bit words 2. Put zero in checksum word, add 0001 f203 f4f5 f6f7 +(0000) ddf0 3. Add any carryover back to get 16 bits 4. Negate (complement) to get final checksum now will add to zero ddf ddf2 220d djw // CSEP 561, Winter 2012

15 Example: Internet checksum Receiving: 1. Arrange data in 16-bit words 2. Checksum will be non-zero, add 0001 f203 f4f5 f6f d fffd 3. Add any carryover back to get 16 bits fffd ffff 4. Result of 0xffff (alternate form of 0) means checksum correct Success! djw // CSEP 561, Winter 2012

16 Internet t checksum properties Catches all error bursts up to 15 bits, most 16 bits Random errors detected with prob. 1 2^-16 Fails to catch transpositions, insertion/deletion of zeros These are typically hardware/software bugs not random errors djw // CSEP 561, Winter

17 Fletcher a better checksum Includes a positional component Now sensitive to order of data slightly more computation, but well worth it djw // CSEP 561, Winter

18 CRCs (Cyclic Redundancy d Check) Stronger protection than checksums Used widely in practice, e.g., Ethernet/ CRC-32 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 djw // CSEP 561, Winter

19 CRC Example Adds bits so that transmitted frame viewed as a polynomial is evenly divisible by a generator polynomial Start by adding 0s to frame and try dividing Offset by any reminder to make it evenly divisible djw // CSEP 561, Winter

20 Error Detection CRCs (2) Based on standard polynomials: Ex: Ethernet 32-bit CRC is defined by: Computed with simple shift/xor circuits Stronger detection than checksums: E.g., can detect all double bit errors Not vulnerable to systematic errors djw // CSEP 561, Winter 2012

21 Error correcting codes Errors create clusters around codewords Correct by mapping to nearest codeword Works for d errors if distance <= 2d+1 Hamming dist = 3 Single errors Valid codeword d Error correction djw // CSEP 561, Winter

22 Example (3, 1) repetition i code has codewords d 000 and 111 Decoding: (no error) (no error) Corrects up to 1 error; better not have a double error! (unless there is soft-decoding or erasures!) Other error-correcting codes are more complicated djw // CSEP 561, Winter

23 Error Correction Hamming code HW2 explores Hamming code gives a simple way to add check bits and correct up to a single bit error: Check bits are parity over subsets of the codeword Recomputing the parity sums (syndrome) gives the position of the error to flip, or 0 if there is no error (11, 7) Hamming code adds 4 check bits and can correct 1 error djw // CSEP 561, Winter 2012

24 Example: Hamming (7,4) code 7 bits per message: 4 bits of data (d), 3 check bits (p) Put check bits in positions that are powers of 2 Bit position: (check bits underlined) (i 1) Check bit i is parity of positions with 2 (i-1) term Design is arranged to make decoding easy Bit # Sent bit p 1 p 2 d 1 p 3 d 2 d 3 d 4 p 1 Yes No Yes No Yes No Yes p 2 No Yes Yes No No Yes Yes p 3 No No No Yes Yes Yes Yes djw // CSEP 561, Winter 2012

25 Example: Hamming (7,4) code Sender: compute check bits from data and send E.g., data = 0101, message= 0 _ p 1 = = 0, p 2 = = 1, p 3 = = 0 Sent message = Receiver: recompute check bits (=syndrome) Syndrome as binary number gives location of error E.g., receive = (no errors) = 0, = 0, = E.g. receive = (one error in position 6) = 0, = 1, = djw // CSEP 561, Winter 2012

26 Error Correction Convolutional codes Operates on a stream of bits, keeping internal state Output stream is a function of all preceding input bits Bits are decoded with the Viterbi algorithm Popular NASA binary convolutional l code (rate = ½) used in djw // CSEP 561, Winter 2012

27 Error Correction LDPC codes Low-Density Parity Check codes are codes for large blocks defined with a sparse generator matrix Invented by Gallagher (PhD thesis, ~1963) Promptly forgotten, revived ~10 years ago Decoding is iterative with belief propagation (ML) Best performing code, used in modern systems Use in n, DVB, WiMAX, LTE, power-line, etc. djw // CSEP 561, Winter 2012

28 Summary of Detection/Correction codes Detection (often at link/network/transport layers) Parity, simple example Checksums, but weak CRCs, widely used Correction (often at physical and application layers) Hamming codes, simple example Convolutional codes Reed-Solomon / BCH Low-density Parity Check (LDPC) codes future djw // CSEP 561, Winter

29 Patterns of Errors Matter Q: Suppose you expect a bit error rate (BER) of about 1 bit per 1000 sent. What fraction of packets would be corrupted if they were 1000 bits long (and you could detect all errors but correct none)? djw // CSEP 561, Winter

30 Patterns of Errors A: It depends on the pattern of errors Bit errors occur at random Packet error rate is about = 63% Errors occur in bursts, e.g., 100 consecutive bits every 100K bits Packet error rate 2% djw // CSEP 561, Winter

31 Real Error Models Random, e.g., thermal noise as in AWGN Occasional error, handled well by Hamming Bursty, e.g., wires, if there is an error it is likely l a burst If there is an error it is likely a burst Due to physical effects, e.g., connectors, interference Difficult to handle: some messages are a lot wrong vs. most message are only a little wrong Strategies for bursty errors: Use a code designed to handle them, e.g., CRCs, Reed-Solomon Use interleaving to convert burst to random errors djw // CSEP 561, Winter

32 Interleaving a neat tti trick HW2 explores Compute check (parity) bit across items, not per item Tolerates burst errors, at the cost of added latency djw // CSEP 561, Winter

Link Layer: Error detection and correction

Link Layer: Error detection and correction Link Layer: Error detection and correction Topic Some bits will be received in error due to noise. What can we do? Detect errors with codes Correct errors with codes Retransmit lost frames Later Reliability

More information

Where we are in the Course

Where we are in the Course Link Layer Where we are in the Course Moving on up to the Link Layer! Application Transport Network Link Physical CSE 461 University of Washington 2 Scope of the Link Layer Concerns how to transfer messages

More information

Pending Issues. Opera,ng Systems and Networks. Network Lecture 3: Link Layer (1) Where we are in the Course. Scope of the Link Layer

Pending Issues. Opera,ng Systems and Networks. Network Lecture 3: Link Layer (1) Where we are in the Course. Scope of the Link Layer Opera,ng Systems and Networks Network Lecture 3: Link Layer (1) Adrian Perrig Network Security Group ETH Zürich Pending Issues Earlier pos,ng of lecture slides Answering student ques,ons Project 1 is out

More information

CSE 461: Framing, Error Detection and Correction

CSE 461: Framing, Error Detection and Correction CSE 461: Framing, Error Detection and Correction Next Topics Framing Focus: How does a receiver know where a message begins/ends Error detection and correction Focus: How do we detect and correct messages

More information

CSMC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. Nov 1,

CSMC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. Nov 1, CSMC 417 Computer Networks Prof. Ashok K Agrawala 2018 Ashok Agrawala 1 Message, Segment, Packet, and Frame host host HTTP HTTP message HTTP TCP TCP segment TCP router router IP IP packet IP IP packet

More information

The Data Link Layer Chapter 3

The Data Link Layer Chapter 3 The Data Link Layer Chapter 3 Data Link Layer Design Issues Error Detection and Correction Elementary Data Link Protocols Sliding Window Protocols Example Data Link Protocols Revised: August 2011 & February

More information

Computer Networks. Shyam Gollakota

Computer Networks. Shyam Gollakota Computer Networks Shyam Gollakota Topic Some bits will be received in error due to noise. What can we do? Detect errors with codes» Correct errors with codes» Retransmit lost frames Later Reliability is

More information

CS321: Computer Networks Error Detection and Correction

CS321: Computer Networks Error Detection and Correction CS321: Computer Networks Error Detection and Correction Dr. Manas Khatua Assistant Professor Dept. of CSE IIT Jodhpur E-mail: manaskhatua@iitj.ac.in Error Detection and Correction Objective: System must

More information

CSCI-1680 Link Layer Reliability Rodrigo Fonseca

CSCI-1680 Link Layer Reliability Rodrigo Fonseca CSCI-1680 Link Layer Reliability Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Janno< Last time Physical layer: encoding, modulation Link layer framing Today Getting

More information

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

Chapter 10 Error Detection and Correction. Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 10 Error Detection and Correction 0. Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Note The Hamming distance between two words is the number of differences

More information

CSCI-1680 Link Layer I Rodrigo Fonseca

CSCI-1680 Link Layer I Rodrigo Fonseca CSCI-1680 Link Layer I Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Last time Physical layer: encoding, modulation Today Link layer framing Getting frames

More information

ELEC 691X/498X Broadcast Signal Transmission Winter 2018

ELEC 691X/498X Broadcast Signal Transmission Winter 2018 ELEC 691X/498X Broadcast Signal Transmission Winter 2018 Instructor: DR. Reza Soleymani, Office: EV 5.125, Telephone: 848 2424 ext.: 4103. Office Hours: Wednesday, Thursday, 14:00 15:00 Slide 1 In this

More information

CSCI-1680 Link Layer Reliability John Jannotti

CSCI-1680 Link Layer Reliability John Jannotti CSCI-1680 Link Layer Reliability John Jannotti Based partly on lecture notes by David Mazières, Phil Levis, Rodrigo Fonseca Roadmap Last time Physical layer: encoding, modulation Link layer framing Today

More information

Chapter 10 Error Detection and Correction 10.1

Chapter 10 Error Detection and Correction 10.1 Chapter 10 Error Detection and Correction 10.1 10-1 INTRODUCTION some issues related, directly or indirectly, to error detection and correction. Topics discussed in this section: Types of Errors Redundancy

More information

The Data Link Layer Chapter 3

The Data Link Layer Chapter 3 The Data Link Layer Chapter 3 Data Link Layer Design Issues Error Detection and Correction Elementary Data Link Protocols Sliding Window Protocols Example Data Link Protocols Revised: August 2011 The Data

More information

Data Link Layer. Srinidhi Varadarajan

Data Link Layer. Srinidhi Varadarajan Data Link Layer Srinidhi Varadarajan Data Link Layer: Functionality The data link layer must: Detect errors (using redundancy bits) Request retransmission if data is lost (using automatic repeat request

More information

4. Error correction and link control. Contents

4. Error correction and link control. Contents //2 4. Error correction and link control Contents a. Types of errors b. Error detection and correction c. Flow control d. Error control //2 a. Types of errors Data can be corrupted during transmission.

More information

ISO/OSI Reference Model. Data Link Layer. 7. Application. 6. Presentation. 5. Session. 4. Transport. 3. Network. 2. Data Link. 1.

ISO/OSI Reference Model. Data Link Layer. 7. Application. 6. Presentation. 5. Session. 4. Transport. 3. Network. 2. Data Link. 1. Data Link Layer 1 ISO/OSI Reference Model 7. Application E-Mail, Terminal, Remote login 6. Presentation System dependent presentation of data (EBCDIC/ASCII) 5. Session Connection establishment, termination,

More information

COMPUTER NETWORKS UNIT-3

COMPUTER NETWORKS UNIT-3 COMPUTER NETWORKS UNIT-3 Syllabus: The Data Link Layer - Data Link Layer Design Issues, Services Provided to the Network Layer Framing Error Control Flow Control, Error Detection and Correction Error-Correcting

More information

High Level View. EE 122: Error detection and reliable transmission. Overview. Error Detection

High Level View. EE 122: Error detection and reliable transmission. Overview. Error Detection High Level View EE 22: Error detection and reliable transmission Ion Stoica September 6, 22 Goal: transmit correct information Problem: bits can get corrupted - Electrical interference, thermal noise Solution

More information

Advanced Computer Networks. Rab Nawaz Jadoon DCS. Assistant Professor COMSATS University, Lahore Pakistan. Department of Computer Science

Advanced Computer Networks. Rab Nawaz Jadoon DCS. Assistant Professor COMSATS University, Lahore Pakistan. Department of Computer Science Advanced Computer Networks Department of Computer Science DCS COMSATS Institute of Information Technology Rab Nawaz Jadoon Assistant Professor COMSATS University, Lahore Pakistan Advanced Computer Networks

More information

Lecture 6: Reliable Transmission. CSE 123: Computer Networks Alex Snoeren (guest lecture) Alex Sn

Lecture 6: Reliable Transmission. CSE 123: Computer Networks Alex Snoeren (guest lecture) Alex Sn Lecture 6: Reliable Transmission CSE 123: Computer Networks Alex Snoeren (guest lecture) Alex Sn Lecture 6 Overview Finishing Error Detection Cyclic Remainder Check (CRC) Handling errors Automatic Repeat

More information

Ch. 7 Error Detection and Correction

Ch. 7 Error Detection and Correction Ch. 7 Error Detection and Correction Error Detection and Correction Data can be corrupted during transmission. Some applications require that errors be detected and corrected. 2 1. Introduction Let us

More information

EE 122: Error detection and reliable transmission. Ion Stoica September 16, 2002

EE 122: Error detection and reliable transmission. Ion Stoica September 16, 2002 EE 22: Error detection and reliable transmission Ion Stoica September 6, 2002 High Level View Goal: transmit correct information Problem: bits can get corrupted - Electrical interference, thermal noise

More information

CMSC 2833 Lecture 18. Parity Add a bit to make the number of ones (1s) transmitted odd.

CMSC 2833 Lecture 18. Parity Add a bit to make the number of ones (1s) transmitted odd. Parity Even parity: Odd parity: Add a bit to make the number of ones (1s) transmitted even. Add a bit to make the number of ones (1s) transmitted odd. Example and ASCII A is coded 100 0001 Parity ASCII

More information

Error Detection Codes. Error Detection. Two Dimensional Parity. Internet Checksum Algorithm. Cyclic Redundancy Check.

Error Detection Codes. Error Detection. Two Dimensional Parity. Internet Checksum Algorithm. Cyclic Redundancy Check. Error Detection Two types Error Detection Codes (e.g. CRC, Parity, Checksums) Error Correction Codes (e.g. Hamming, Reed Solomon) Basic Idea Add redundant information to determine if errors have been introduced

More information

Lecture 4: CRC & Reliable Transmission. Lecture 4 Overview. Checksum review. CRC toward a better EDC. Reliable Transmission

Lecture 4: CRC & Reliable Transmission. Lecture 4 Overview. Checksum review. CRC toward a better EDC. Reliable Transmission 1 Lecture 4: CRC & Reliable Transmission CSE 123: Computer Networks Chris Kanich Quiz 1: Tuesday July 5th Lecture 4: CRC & Reliable Transmission Lecture 4 Overview CRC toward a better EDC Reliable Transmission

More information

Where we are in the Course

Where we are in the Course Where we are in the Course Moving on to the Link Layer! Application Transport Network Link Physical CSE 461 University of Washington 1 Scope of the Link Layer Concerns how to transfer messages over one

More information

CSE 123: Computer Networks

CSE 123: Computer Networks Student Name: PID: UCSD email: CSE 123: Computer Networks Homework 1 Solution (Due 10/12 in class) Total Points: 30 Instructions: Turn in a physical copy at the beginning of the class on 10/10. Problems:

More information

Telecom Systems Chae Y. Lee. Contents. Flow Control Error Detection/Correction Link Control (Error Control) Link Performance (Utility)

Telecom Systems Chae Y. Lee. Contents. Flow Control Error Detection/Correction Link Control (Error Control) Link Performance (Utility) Data Link Control Contents Flow Control Error Detection/Correction Link Control (Error Control) Link Performance (Utility) 2 Flow Control Flow control is a technique for assuring that a transmitting entity

More information

Link Layer. (continued)

Link Layer. (continued) Link Layer (continued) Where we are in the Course Moving on up to the Link Layer! Application Transport Network Link Physical CSE 461 University of Washington 2 Topics 1. Framing Delimiting start/end of

More information

CSE 123A Computer Networks

CSE 123A Computer Networks CSE 123A Computer Networks Winter 2005 Lecture 4: Data-Link I: Framing and Errors Some portions courtesy Robin Kravets and Steve Lumetta Last time How protocols are organized & why Network layer Data-link

More information

Lecture / The Data Link Layer: Framing and Error Detection

Lecture / The Data Link Layer: Framing and Error Detection Lecture 2 6.263/16.37 The Data Link Layer: Framing and Error Detection MIT, LIDS Slide 1 Data Link Layer (DLC) Responsible for reliable transmission of packets over a link Framing: Determine the start

More information

PART III. Data Link Layer MGH T MGH C I 204

PART III. Data Link Layer MGH T MGH C I 204 PART III Data Link Layer Position of the data-link layer Data link layer duties LLC and MAC sublayers IEEE standards for LANs Chapters Chapter 10 Error Detection and Correction Chapter 11 Data Link Control

More information

Chapter Six. Errors, Error Detection, and Error Control. Data Communications and Computer Networks: A Business User s Approach Seventh Edition

Chapter Six. Errors, Error Detection, and Error Control. Data Communications and Computer Networks: A Business User s Approach Seventh Edition Chapter Six Errors, Error Detection, and Error Control Data Communications and Computer Networks: A Business User s Approach Seventh Edition After reading this chapter, you should be able to: Identify

More information

MYcsvtu Notes DATA REPRESENTATION. Data Types. Complements. Fixed Point Representations. Floating Point Representations. Other Binary Codes

MYcsvtu Notes DATA REPRESENTATION. Data Types. Complements. Fixed Point Representations. Floating Point Representations. Other Binary Codes DATA REPRESENTATION Data Types Complements Fixed Point Representations Floating Point Representations Other Binary Codes Error Detection Codes Hamming Codes 1. DATA REPRESENTATION Information that a Computer

More information

T325 Summary T305 T325 B BLOCK 4 T325. Session 3. Dr. Saatchi, Seyed Mohsen. Prepared by:

T325 Summary T305 T325 B BLOCK 4 T325. Session 3. Dr. Saatchi, Seyed Mohsen. Prepared by: T305 T325 B BLOCK 4 T325 Summary Prepared by: Session 3 [Type Dr. Saatchi, your address] Seyed Mohsen [Type your phone number] [Type your e-mail address] Dr. Saatchi, Seyed Mohsen T325 Error Control Coding

More information

Links. CS125 - mylinks 1 1/22/14

Links. CS125 - mylinks 1 1/22/14 Links 1 Goals of Today s Lecture Link-layer services Encoding, framing, and error detection Error correction and flow control Sharing a shared media Channel partitioning Taking turns Random access Shared

More information

Some portions courtesy Robin Kravets and Steve Lumetta

Some portions courtesy Robin Kravets and Steve Lumetta CSE 123 Computer Networks Fall 2009 Lecture 4: Data-Link I: Framing and Errors Some portions courtesy Robin Kravets and Steve Lumetta Administrative updates I m Im out all next week no lectures, but You

More information

ECE 333: Introduction to Communication Networks Fall Lecture 6: Data Link Layer II

ECE 333: Introduction to Communication Networks Fall Lecture 6: Data Link Layer II ECE 333: Introduction to Communication Networks Fall 00 Lecture 6: Data Link Layer II Error Correction/Detection 1 Notes In Lectures 3 and 4, we studied various impairments that can occur at the physical

More information

416 Distributed Systems. Errors and Failures, part 2 Feb 3, 2016

416 Distributed Systems. Errors and Failures, part 2 Feb 3, 2016 416 Distributed Systems Errors and Failures, part 2 Feb 3, 2016 Options in dealing with failure 1. Silently return the wrong answer. 2. Detect failure. 3. Correct / mask the failure 2 Block error detection/correction

More information

EE 6900: FAULT-TOLERANT COMPUTING SYSTEMS

EE 6900: FAULT-TOLERANT COMPUTING SYSTEMS EE 6900: FAULT-TOLERANT COMPUTING SYSTEMS LECTURE 6: CODING THEORY - 2 Fall 2014 Avinash Kodi kodi@ohio.edu Acknowledgement: Daniel Sorin, Behrooz Parhami, Srinivasan Ramasubramanian Agenda Hamming Codes

More information

FAULT TOLERANT SYSTEMS

FAULT TOLERANT SYSTEMS FAULT TOLERANT SYSTEMS http://www.ecs.umass.edu/ece/koren/faulttolerantsystems Part 6 Coding I Chapter 3 Information Redundancy Part.6.1 Information Redundancy - Coding A data word with d bits is encoded

More information

Chapter 3. The Data Link Layer

Chapter 3. The Data Link Layer Chapter 3 The Data Link Layer 1 Data Link Layer Algorithms for achieving reliable, efficient communication between two adjacent machines. Adjacent means two machines are physically connected by a communication

More information

Department of Computer and IT Engineering University of Kurdistan. Data Communication Netwotks (Graduate level) Data Link Layer

Department of Computer and IT Engineering University of Kurdistan. Data Communication Netwotks (Graduate level) Data Link Layer Department of Computer and IT Engineering University of Kurdistan Data Communication Netwotks (Graduate level) Data Link Layer By: Dr. Alireza Abdollahpouri Data Link Layer 2 Data Link Layer Application

More information

Hamming Code. Gives a method for construc=ng a code with a distance of 3. Plus an easy way to correct [soon]

Hamming Code. Gives a method for construc=ng a code with a distance of 3. Plus an easy way to correct [soon] Hamming Code Gives a method for construc=ng a code with a distance of 3 Uses n = 2 k k 1, e.g., n=4, k=3 Put check bits in posi=ons p that are powers of 2, star=ng with posi=on 1 Check bit in posi=on p

More information

CS 640 Introduction to Computer Networks. Role of data link layer. Today s lecture. Lecture16

CS 640 Introduction to Computer Networks. Role of data link layer. Today s lecture. Lecture16 Introduction to Computer Networks Lecture16 Role of data link layer Service offered by layer 1: a stream of bits Service to layer 3: sending & receiving frames To achieve this layer 2 does Framing Error

More information

Ad hoc and Sensor Networks Chapter 6: Link layer protocols. Holger Karl

Ad hoc and Sensor Networks Chapter 6: Link layer protocols. Holger Karl Ad hoc and Sensor Networks Chapter 6: Link layer protocols Holger Karl Goals of this chapter Link layer tasks in general Framing group bit sequence into packets/frames Important: format, size Error control

More information

Where we are in the Course

Where we are in the Course Link Layer Where we are in the Course Moving on up to the Link Layer! Application Transport Network Link Physical CSE 461 University of Washington 2 Scope of the Link Layer Concerns how to transfer messages

More information

Data Link Networks. Hardware Building Blocks. Nodes & Links. CS565 Data Link Networks 1

Data Link Networks. Hardware Building Blocks. Nodes & Links. CS565 Data Link Networks 1 Data Link Networks Hardware Building Blocks Nodes & Links CS565 Data Link Networks 1 PROBLEM: Physically connecting Hosts 5 Issues 4 Technologies Encoding - encoding for physical medium Framing - delineation

More information

UNIT-II 1. Discuss the issues in the data link layer. Answer:

UNIT-II 1. Discuss the issues in the data link layer. Answer: UNIT-II 1. Discuss the issues in the data link layer. Answer: Data Link Layer Design Issues: The data link layer has a number of specific functions it can carry out. These functions include 1. Providing

More information

Data Link Control Layer, Error Detection, Error Correction, and Framing

Data Link Control Layer, Error Detection, Error Correction, and Framing Data Link Control Layer, Error Detection, Error Correction, and Framing EEE 538, WEEK 2 Dr. Nail Akar Bilkent University Electrical and Electronics Engineering Department 1 Error Detection Techniques Used

More information

The Data Link Layer. CS158a Chris Pollett Feb 26, 2007.

The Data Link Layer. CS158a Chris Pollett Feb 26, 2007. The Data Link Layer CS158a Chris Pollett Feb 26, 2007. Outline Finish up Overview of Data Link Layer Error Detecting and Correcting Codes Finish up Overview of Data Link Layer Last day we were explaining

More information

Error Correction and Detection using Cyclic Redundancy Check

Error Correction and Detection using Cyclic Redundancy Check Error Correction and Detection using Cyclic Redundancy Check Dr. T. Logeswari Associate Professor, Dept of Computer Science, New Horizon College, Banglore, Karnataka, India ABSTRACT: In this paper Cyclic

More information

EITF25 Internet Techniques and Applications L3: Data Link layer. Stefan Höst

EITF25 Internet Techniques and Applications L3: Data Link layer. Stefan Höst EITF25 Internet Techniques and Applications L3: Data Link layer Stefan Höst Communication on physical layer To transmit on the physical medium use signals At each computer it can be seen as transmitting

More information

CSE123A discussion session

CSE123A discussion session CSE123A discussion session 2007/02/02 Ryo Sugihara Review Data Link layer (1): Overview Sublayers End-to-end argument Framing sublayer How to delimit frame» Flags and bit stuffing Topics Data Link Layer

More information

FORWARD ERROR CORRECTION CODING TECHNIQUES FOR RELIABLE COMMUNICATION SYSTEMS

FORWARD ERROR CORRECTION CODING TECHNIQUES FOR RELIABLE COMMUNICATION SYSTEMS FORWARD ERROR CORRECTION CODING TECHNIQUES FOR RELIABLE COMMUNICATION SYSTEMS Jyoti Sharma Department of ECE Sri Sai College of Engg. & Technology, Badhani, Punjab, India Priya Department of ECE Sri Sai

More information

Chapter 3. The Data Link Layer. Wesam A. Hatamleh

Chapter 3. The Data Link Layer. Wesam A. Hatamleh Chapter 3 The Data Link Layer The Data Link Layer Data Link Layer Design Issues Error Detection and Correction Elementary Data Link Protocols Sliding Window Protocols Example Data Link Protocols The Data

More information

Packet-Level Forward Error Correction in Video Transmission

Packet-Level Forward Error Correction in Video Transmission Packet-Level Forward Error Correction in Video Transmission Matteo Mazzotti, Enrico Paolini, Marco Chiani, Davide Dardari, and Andrea Giorgetti University of Bologna Wireless Communications Laboratory

More information

Data Link Layer (1) Networked Systems 3 Lecture 6

Data Link Layer (1) Networked Systems 3 Lecture 6 Data Link Layer (1) Networked Systems 3 Lecture 6 Purpose of Data Link Layer Arbitrate access to the physical layer Structure and frame the raw bits Provide flow control Detect and correct bit errors Perform

More information

(Refer Slide Time: 2:20)

(Refer Slide Time: 2:20) Data Communications Prof. A. Pal Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture-15 Error Detection and Correction Hello viewers welcome to today s lecture

More information

CSE 123: Computer Networks Alex C. Snoeren. HW 1 due Thursday!

CSE 123: Computer Networks Alex C. Snoeren. HW 1 due Thursday! CSE 123: Computer Networks Alex C. Snoeren HW 1 due Thursday! Error handling through redundancy Adding extra bits to the frame Hamming Distance When we can detect When we can correct Checksum Cyclic Remainder

More information

Point-to-Point Links. Outline Encoding Framing Error Detection Sliding Window Algorithm. Fall 2004 CS 691 1

Point-to-Point Links. Outline Encoding Framing Error Detection Sliding Window Algorithm. Fall 2004 CS 691 1 Point-to-Point Links Outline Encoding Framing Error Detection Sliding Window Algorithm Fall 2004 CS 691 1 Encoding Signals propagate over a physical medium modulate electromagnetic waves e.g., vary voltage

More information

EE 387 course information

EE 387 course information EE 387 course information EE 387, Notes 1, Handout #2 Instructor: John Gill, Packard 266 Textbook: Algebraic Codes for Data Transmission by Richard Blahut Weekly homework, including occasional programming

More information

Networking Link Layer

Networking Link Layer Networking Link Layer ECE 650 Systems Programming & Engineering Duke University, Spring 2018 (Link Layer Protocol material based on CS 356 slides) TCP/IP Model 2 Layer 1 & 2 Layer 1: Physical Layer Encoding

More information

CS254 Network Technologies. Lecture 2: Network Models & Error Detection and Correction. Dr Nikos Antonopoulos

CS254 Network Technologies. Lecture 2: Network Models & Error Detection and Correction. Dr Nikos Antonopoulos CS254 Network Technologies Lecture 2: Network Models & Error Detection and Correction Dr Nikos Antonopoulos Department of Computing University of Surrey Autumn 2006 2.1 Layered Tasks Sender, Receiver,

More information

Networked Systems and Services, Fall 2018 Chapter 2. Jussi Kangasharju Markku Kojo Lea Kutvonen

Networked Systems and Services, Fall 2018 Chapter 2. Jussi Kangasharju Markku Kojo Lea Kutvonen Networked Systems and Services, Fall 2018 Chapter 2 Jussi Kangasharju Markku Kojo Lea Kutvonen Outline Physical layer reliability Low level reliability Parities and checksums Cyclic Redundancy Check (CRC)

More information

ENEE x Digital Logic Design. Lecture 3

ENEE x Digital Logic Design. Lecture 3 ENEE244-x Digital Logic Design Lecture 3 Announcements Homework due today. Homework 2 will be posted by tonight, due Monday, 9/2. First recitation quiz will be tomorrow on the material from Lectures and

More information

2.4 Error Detection Bit errors in a frame will occur. How do we detect (and then. (or both) frames contains an error. This is inefficient (and not

2.4 Error Detection Bit errors in a frame will occur. How do we detect (and then. (or both) frames contains an error. This is inefficient (and not CS475 Networks Lecture 5 Chapter 2: Direct Link Networks Assignments Reading for Lecture 6: Sections 2.6 2.8 Homework 2: 2.1, 2.4, 2.6, 2.14, 2.18, 2.31, 2.35. Due Thursday, Sept. 15 2.4 Error Detection

More information

Fault Tolerance & Reliability CDA Chapter 2 Additional Interesting Codes

Fault Tolerance & Reliability CDA Chapter 2 Additional Interesting Codes Fault Tolerance & Reliability CDA 5140 Chapter 2 Additional Interesting Codes m-out-of-n codes - each binary code word has m ones in a length n non-systematic codeword - used for unidirectional errors

More information

Lecture 5. Homework 2 posted, due September 15. Reminder: Homework 1 due today. Questions? Thursday, September 8 CS 475 Networks - Lecture 5 1

Lecture 5. Homework 2 posted, due September 15. Reminder: Homework 1 due today. Questions? Thursday, September 8 CS 475 Networks - Lecture 5 1 Lecture 5 Homework 2 posted, due September 15. Reminder: Homework 1 due today. Questions? Thursday, September 8 CS 475 Networks - Lecture 5 1 Outline Chapter 2 - Getting Connected 2.1 Perspectives on Connecting

More information

Lecture 2 Error Detection & Correction. Types of Errors Detection Correction

Lecture 2 Error Detection & Correction. Types of Errors Detection Correction Lecture 2 Error Detection & Correction Types of Errors Detection Correction Basic concepts Networks must be able to transfer data from one device to another with complete accuracy. Data can be corrupted

More information

Chapter 3 The Data Link Layer

Chapter 3 The Data Link Layer Chapter 3 The Data Link Layer 陳瑞奇 (Rikki) 亞洲大學資訊工程學系 Adapted from Computer Networks, Andrew S. Tanenbaum, Vrije University, Netherlands & Computer Networking: A Top Down Approach, Jim Kurose, Keith Ross

More information

Error Control Coding for MLC Flash Memories

Error Control Coding for MLC Flash Memories Error Control Coding for MLC Flash Memories Ying Y. Tai, Ph.D. Cadence Design Systems, Inc. ytai@cadence.com August 19, 2010 Santa Clara, CA 1 Outline The Challenges on Error Control Coding (ECC) for MLC

More information

CSC310 Information Theory. Lecture 21: Erasure (Deletion) Channels & Digital Fountain Codes. November 22, 2006 see

CSC310 Information Theory. Lecture 21: Erasure (Deletion) Channels & Digital Fountain Codes. November 22, 2006 see CSC310 Information Theory Lecture 21: Erasure (Deletion) Channels & Digital Fountain Codes Sam Roweis Recovering From Erasures 2 How can we recover from erasures? For the BEC, we saw that low-density parity

More information

CIS 551 / TCOM 401 Computer and Network Security. Spring 2007 Lecture 7

CIS 551 / TCOM 401 Computer and Network Security. Spring 2007 Lecture 7 CIS 551 / TCOM 401 Computer and Network Security Spring 2007 Lecture 7 Announcements Reminder: Project 1 is due on Thursday. 2/1/07 CIS/TCOM 551 2 Network Architecture General blueprints that guide the

More information

CSMC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala Set 4. September 09 CMSC417 Set 4 1

CSMC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala Set 4. September 09 CMSC417 Set 4 1 CSMC 417 Computer Networks Prof. Ashok K Agrawala 2009 Ashok Agrawala Set 4 1 The Data Link Layer 2 Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control

More information

CSE123A discussion session

CSE123A discussion session CSE23A discussion session 27/2/9 Ryo Sugihara Review Data Link Layer (3): Error detection sublayer CRC Polynomial representation Implementation using LFSR Data Link Layer (4): Error recovery sublayer Protocol

More information

CSC310 Information Theory. Lecture 22: Erasure (Deletion) Channels & Digital Fountain Codes. November 30, 2005 see

CSC310 Information Theory. Lecture 22: Erasure (Deletion) Channels & Digital Fountain Codes. November 30, 2005 see CSC310 Information Theory Lecture 22: Erasure (Deletion) Channels & Digital Fountain Codes Sam Roweis Recovering From Erasures 2 How can we recover from erasures? For the BEC, we saw that low-density parity

More information

Fault-Tolerant Computing

Fault-Tolerant Computing Fault-Tolerant Computing Dealing with Mid-Level Impairments Oct. 2007 Error Detection Slide 1 About This Presentation This presentation has been prepared for the graduate course ECE 257A (Fault-Tolerant

More information

Wireless Sensornetworks Concepts, Protocols and Applications. Chapter 5b. Link Layer Control

Wireless Sensornetworks Concepts, Protocols and Applications. Chapter 5b. Link Layer Control Wireless Sensornetworks Concepts, Protocols and Applications 5b Link Layer Control 1 Goals of this cha Understand the issues involved in turning the radio communication between two neighboring nodes into

More information

CSE 123: Computer Networks

CSE 123: Computer Networks CSE 123: Computer Networks Homework 1 Solutions Total points = 44 Problems 1. Modified HDLC Framing [6 points] Assume we are following the protocol described in the textbook except our modified HDLC frames

More information

ELG3175 Introduction to Communication Systems. Introduction to Error Control Coding

ELG3175 Introduction to Communication Systems. Introduction to Error Control Coding ELG375 Introduction to Communication Systems Introduction to Error Control Coding Types of Error Control Codes Block Codes Linear Hamming, LDPC Non-Linear Cyclic BCH, RS Convolutional Codes Turbo Codes

More information

Link Layer and LANs 안상현서울시립대학교컴퓨터 통계학과.

Link Layer and LANs 안상현서울시립대학교컴퓨터 통계학과. Link Layer and LANs 안상현서울시립대학교컴퓨터 통계학과 ahn@venus.uos.ac.kr Data Link Layer Goals: understand principles behind data link layer services: error detection, correction sharing a broadcast channel: multiple

More information

Inst: Chris Davison

Inst: Chris Davison ICS 153 Introduction to Computer Networks Inst: Chris Davison cbdaviso@uci.edu ICS 153 Data Link Layer Contents Simplex and Duplex Communication Frame Creation Flow Control Error Control Performance of

More information

Data Link Layer Overview

Data Link Layer Overview Data Link Layer Overview First of four classes on the data link layer 9/9/2009 CSC 257/457 - Fall 2009 1 Internet Architecture Bottom-up: physical: electromagnetic signals on the wire link: data transfer

More information

TYPES OF ERRORS. Data can be corrupted during transmission. Some applications require that errors be detected and corrected.

TYPES OF ERRORS. Data can be corrupted during transmission. Some applications require that errors be detected and corrected. Data can be corrupted during transmission. Some applications require that errors be detected and corrected. TYPES OF ERRORS There are two types of errors, 1. Single Bit Error The term single-bit error

More information

Lecture 5: Data Link Layer Basics

Lecture 5: Data Link Layer Basics Lecture 5: Data Link Layer Basics Dr. Mohammed Hawa Electrical Engineering Department University of Jordan EE426: Communication Networks Layer 2 PDU: Frame 2 1 Bit-oriented vs. Byte-oriented Layer 2 protocols

More information

Efficient Majority Logic Fault Detector/Corrector Using Euclidean Geometry Low Density Parity Check (EG-LDPC) Codes

Efficient Majority Logic Fault Detector/Corrector Using Euclidean Geometry Low Density Parity Check (EG-LDPC) Codes Efficient Majority Logic Fault Detector/Corrector Using Euclidean Geometry Low Density Parity Check (EG-LDPC) Codes 1 U.Rahila Begum, 2 V. Padmajothi 1 PG Student, 2 Assistant Professor 1 Department Of

More information

Introduction to Computer Networks. 03 Data Link Layer Introduction

Introduction to Computer Networks. 03 Data Link Layer Introduction Introduction to Computer Networks 03 Data Link Layer Introduction Link Layer 1 Introduction and services 2 Link Layer Services 2.1 Framing 2.2 Error detection and correction 2.3 Flow Control 2.4 Multiple

More information

Computer and Network Security

Computer and Network Security CIS 551 / TCOM 401 Computer and Network Security Spring 2009 Lecture 6 Announcements First project: Due: 6 Feb. 2009 at 11:59 p.m. http://www.cis.upenn.edu/~cis551/project1.html Plan for Today: Networks:

More information

Modern Communications Chapter 5. Low-Density Parity-Check Codes

Modern Communications Chapter 5. Low-Density Parity-Check Codes 1/14 Modern Communications Chapter 5. Low-Density Parity-Check Codes Husheng Li Min Kao Department of Electrical Engineering and Computer Science University of Tennessee, Knoxville Spring, 2017 2/14 History

More information

Efficient Content Delivery and Low Complexity Codes. Amin Shokrollahi

Efficient Content Delivery and Low Complexity Codes. Amin Shokrollahi Efficient Content Delivery and Low Complexity Codes Amin Shokrollahi Content Goals and Problems TCP/IP, Unicast, and Multicast Solutions based on codes Applications Goal Want to transport data from a transmitter

More information

CS 43: Computer Networks The Link Layer. Kevin Webb Swarthmore College November 28, 2017

CS 43: Computer Networks The Link Layer. Kevin Webb Swarthmore College November 28, 2017 CS 43: Computer Networks The Link Layer Kevin Webb Swarthmore College November 28, 2017 TCP/IP Protocol Stack host host HTTP Application Layer HTTP TCP Transport Layer TCP router router IP IP Network Layer

More information

CHAPTER 2 Data Representation in Computer Systems

CHAPTER 2 Data Representation in Computer Systems CHAPTER 2 Data Representation in Computer Systems 2.1 Introduction 37 2.2 Positional Numbering Systems 38 2.3 Decimal to Binary Conversions 38 2.3.1 Converting Unsigned Whole Numbers 39 2.3.2 Converting

More information

Data Link Layer Overview

Data Link Layer Overview Data Link Layer Overview First of four classes on the data link layer Internet Architecture Bottom up: Physical: electromagnetic signals on the wire Link: data transfer between neighboring network elements

More information

Implementation of Multidirectional Parity Check Code Using Hamming Code for Error Detection and Correction

Implementation of Multidirectional Parity Check Code Using Hamming Code for Error Detection and Correction Implementation of Multidirectional Parity Check Code Using Hamming Code for Error Detection and Correction Vishal Badole 1, Amit Udawat 2 Department of Electronics and Communication Engg. 1, Acropolis

More information

CHAPTER 2 Data Representation in Computer Systems

CHAPTER 2 Data Representation in Computer Systems CHAPTER 2 Data Representation in Computer Systems 2.1 Introduction 37 2.2 Positional Numbering Systems 38 2.3 Decimal to Binary Conversions 38 2.3.1 Converting Unsigned Whole Numbers 39 2.3.2 Converting

More information

416 Distributed Systems. Errors and Failures Oct 16, 2018

416 Distributed Systems. Errors and Failures Oct 16, 2018 416 Distributed Systems Errors and Failures Oct 16, 2018 Types of Errors Hard errors: The component is dead. Soft errors: A signal or bit is wrong, but it doesn t mean the component must be faulty Note:

More information

Data Link Layer Overview

Data Link Layer Overview Data Link Layer Overview First of four classes on the data link layer Internet Architecture Bottom up: Physical: electromagnetic signals on the wire Link: data transfer between neighboring network elements

More information