overview all data can be corrupted, for reliable communications we must be able to detect and...

10
Overview • All data can be corrupted, for reliable communications we must be able to detect and correct errors • implemented at the data link and transport layers of the OSI model

Upload: louisa-johnston

Post on 20-Jan-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Overview All data can be corrupted, for reliable communications we must be able to detect and correct errors implemented at the data link and transport

Overview

• All data can be corrupted, for reliable communications we must be able to detect and correct errors

• implemented at the data link and transport layers of the OSI model

Page 2: Overview All data can be corrupted, for reliable communications we must be able to detect and correct errors implemented at the data link and transport

Detection

• Redundancy - adding extra bits that indicate information about the data without repeating it

• types– vertical– longitudinal– cyclical– checksum

Page 3: Overview All data can be corrupted, for reliable communications we must be able to detect and correct errors implemented at the data link and transport

Error Detection

• Vertical Redundancy Check(VRC, or simply, Parity Check)

• Longitudinal Redundancy Check (LRC)

• Cyclic Redundancy Check (CRC)

Page 4: Overview All data can be corrupted, for reliable communications we must be able to detect and correct errors implemented at the data link and transport

Parity Check (Vertical Redundancy Check)

• Redundant bit is appended to each data unit

• Even parity: the bit is set to 1 if number of 1s in the data is an odd number, thus making total number of 1s transmitted an even number

• Odd parity: the bit is set to 1 if number of 1s in the data is an even number, thus making total number of 1s transmitted an odd number

Page 5: Overview All data can be corrupted, for reliable communications we must be able to detect and correct errors implemented at the data link and transport

Longitudinal

• Checks parity the same way as the vertical method but checks the data “horizontally” as well

• data is organized into columns and rows, each column is checked and given a parity bit, LRC is attached to the end of the data

• greatly increases the possibility of catching burst errors

Page 6: Overview All data can be corrupted, for reliable communications we must be able to detect and correct errors implemented at the data link and transport

Cyclical Redundancy Check(CRC)

• Common in data link protocols (CRC)

• data is binary divided (divisor is predetermined) remainder is appended to the data

• remainder is appended so that the data can be evenly divided by a second binary number

• remainder is 1 bit less than the divisor

Page 7: Overview All data can be corrupted, for reliable communications we must be able to detect and correct errors implemented at the data link and transport

Checksum

• Used in hardware and files

• at the sender, the data is divided into equal chunks of the same length

• the chunks are added together using one’s compliments so that the total is the same length as a chunk

• the total is then complimented and the result is added to the data

Page 8: Overview All data can be corrupted, for reliable communications we must be able to detect and correct errors implemented at the data link and transport

Checksum con’t

• The receiver chops the data up into the same size chunks and adds them using the one’s compliment

• the total is summed with the checksum and if the result has a compliment that is all 0’s then the data is assumed to be O.K.

• detects all odd and most even bit errors – can still have errors

Page 9: Overview All data can be corrupted, for reliable communications we must be able to detect and correct errors implemented at the data link and transport

Hamming Code• Redundancy bits do not have to come at the

end of the data: • d d d r8 d d d r4 d r2 r1

• places a series of redundancy bits within the data, each r bit checks the parity on a different group of bits

• r1: 1,3,5,7,9,11

• r2: 2,3,6,7,10, 11

• r4: 4,5,6,7

• r8: 8,9,10,11

Page 10: Overview All data can be corrupted, for reliable communications we must be able to detect and correct errors implemented at the data link and transport

Hamming Code• Receiver recalculates the VRC using the

same bit sets and the parity (r) bits

• it assembles the parity values into a binary number in order of position– r8, r4, r2, r1

• this binary number gives the position of the bit in error

• multiple bit errors require much more overhead