Introduction to Information Technologies

Slides:



Advertisements
Similar presentations
Computer Interfacing and Protocols
Advertisements

10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Data and Computer Communications
Chapter 10 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.
The Data Link Layer Chapter 3. Position of the data-link layer.
EE 122: Error detection and reliable transmission Ion Stoica September 16, 2002.
Data Communications Chapter 7 Error Detection. Despite the best prevention techniques, errors may still happen. To detect an error, something extra has.
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
Chapter 10 Error Detection and Correction
Rutvi Shah1 ERROR CORRECTION & ERROR DETECTION Rutvi Shah2 Data can be corrupted during transmission. For reliable communication, errors must be detected.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 PART III: DATA LINK LAYER ERROR DETECTION AND CORRECTION 7.1 Chapter 10.
Shashank Srivastava Motilal Nehru National Institute Of Technology, Allahabad Error Detection and Correction : Data Link Layer.
1 Kyung Hee University Data Link Layer PART III. 2 Kyung Hee University Position of the data-link layer.
1 Data Link Layer Lecture 20 Imran Ahmed University of Management & Technology.
PART III DATA LINK LAYER. Position of the Data-Link Layer.
Datornätverk A – lektion 7 Forts. Kapitel 9: SDH och SONET. Kapitel 10: Felhantering.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Data Link Layer PART III.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Data Link Layer PART III.
CIT 307 Online Data Communications Error Detection Module 11 Kevin Siminski, Instructor.
Part 2: Packet Transmission Packets, frames Local area networks (LANs) Wide area networks (LANs) Hardware addresses Bridges and switches Routing and protocols.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Data Link Layer: Error Detection and Correction
Lecture 6: Framing and Error Detection-Data Link Layer Functions
Data and Computer Communications by William Stallings Eighth Edition Digital Data Communications Techniques Digital Data Communications Techniques Click.
Cyclic Redundancy Check CRC Chapter CYCLIC CODES Cyclic codes are special linear block codes with one extra property. In a cyclic code, if a codeword.
Unit 5 Lecture 2 Error Control Error Detection & Error Correction.
COSC 3213: Computer Networks I Instructor: Dr. Amir Asif Department of Computer Science York University Section M Topics: 1. Error Detection Techniques:
EEC4113 Data Communication & Multimedia System Chapter 5: Error Control by Muhazam Mustapha, October 2011.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Data Link Layer PART III.
Error Detection and Correction
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.
Computer Communication & Networks Lecture 9 Datalink Layer: Error Detection Waleed Ejaz
Lecture Focus: Data Communications and Networking  Data Link Layer  Error Control Lecture 19 CSCS 311.
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.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 PART III: DATA LINK LAYER ERROR DETECTION AND CORRECTION 7.1 Chapter 10.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Data Link Layer PART III.
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.
Part III: Data Link Layer Error Detection and Correction
Data Link Layer 1. 2 Single-bit error 3 Multiple-bit error 4.
ERROR DETECTION AND CORRECTION Chapter 8 Data Communications & Networking ERROR DETECTION AND CORRECTION Chapter 8 First Semester 2007/2008.
Dr. Clincy Professor of CS
Error Detection and Correction
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
ERROR DETECTION AND CORRECTION
Part III. Data Link Layer
Error Detection and Correction
Subject Name: COMPUTER NETWORKS-1
CIS 321 Data Communications & Networking
Part III Datalink Layer 10.
Data Link Layer.
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.
Basic concepts Networks must be able to transfer data from one device to another with complete accuracy. Data can be corrupted during transmission. For.
Chapter 7 Error Detection and Correction
Introduction to Information Technologies
Error Detection Neil Tang 9/26/2008
Protocols and the TCP/IP Suite
Error Detection and Correction
Error Detection and Correction
Presentation transcript:

Introduction to Information Technologies Fall 2004 Computer Networks Chapter 10 – Error Detection and Correction History of Internet

Errors The physical link is always subject to imperfections Noise/interference Limited bandwidth Distortion Errors – a consequence of imperfecton Some bits send at the sender are received with different value at the receiver Sender Receiver 0 ---------- 1 1 ----------0 Value sent Value received Spring 2006 Computer Networks

Types of Errors Single-bit error Burst error The value of a single bit in a data unit is changed Does not occur very often in serial data transmission Burst error The value of two or more bits in the data unit is changed Usual type of error in serial data transmission Spring 2006 Computer Networks

Errors and Error Effect Original Waterfall Image: Spring 2006 Computer Networks

Errors and Error Effect (Cont.) Waterfall Image: every tenth bit in error Spring 2006 Computer Networks

Errors and Error Effect (Cont.) Waterfall Image: every other bit in error Spring 2006 Computer Networks

Two Strategies for Error Control Error detection and correction Enough redundancy (extra bits) is incorporated, so that at the reciever the errors can be not only detected, but also corrected Not applicable to data communication, because too much redundancy is needed Error detection and retransmission There is enough redundancy only to detect the error in a data unit. If an error is descovered the sender is automaticly required to retransmit the data unit Applicabbble to data communication Spring 2006 Computer Networks

Error Detection Methods Each method involves adding extra bits (redundant bits) to the data unit Three most common methods are Parity checking Cyclic Redundancy Check (CRC) Checksum Spring 2006 Computer Networks

Parity Checking The sender and the receiver agree in advance whether the data units will have even or odd number of 1s. The sender adds extra bits to create the data units according to the agreement The receiver checks the parity of the 1s according to the agreement. If the data unit received has a number of 1s according to the agreement, it is accepted as correct; otherwise it is rejected as “in error”. Spring 2006 Computer Networks

Simple Parity Checking The sender adds an additional bit, called parity bit to each data unit Even parity – the parity bit is 0 or 1 depending on which bit will make the total number of 1’s even Odd parity – the parity bit is 0 or 1 depending on which bit will make the total number of 1’s odd The sender and receiver know which scheme they are using The receiver performs parity checking Only a single error or odd number of errors can be detected It is not convenient for use with data transmission Spring 2006 Computer Networks

Even Parity Concept Spring 2006 Computer Networks

Example Assuming even parity, add a single bit to each data unit. 0110100 1011010 Solution: 0110100 1 1011010 Spring 2006 Computer Networks

Two-dimensional Parity Check Data units are arranged in two-dimensional array Parity bit is added to the rows (each data unit) and to the columns (an extra data unit is created) The receiver checks the parity in the rows and in the columns Improved performance compared to single-parity checking Still not very often used with data transmission Spring 2006 Computer Networks

Two-dimensional Parity Concept Spring 2006 Computer Networks

Example Perform a two dimensional parity check on the following data unit by having blocks of 7 bits each. 01101001011010001011011101011001011 Solution 0110100 1 1011010 0010110 1 1110101 1 1001011 1000110 1 01101001101101000010110111101011100101101000110 Spring 2006 Computer Networks

Cyclic Redundancy Check A method for error detection that is often used with data transmission. Based upon treating bit strings as polynomials with coefficients 0 and 1. k bit message is represented as (k-1) degree polynomial Example: 1010110 has 7 bits It can be represented as a polynomial of 6th degree 1·x6 + 0·x5 + 1·x4 +0·x3 + 1·x2 + 1·x1 + 0·x0 Spring 2006 Computer Networks

How CRC Operates? The sender wants to send k bits message The sender and the receiver must agree in advance on n+1 bit string called generator polynomial (divisor), G. G can be represented as n-degree polynomial n redundant bits are added to the k bits message. They are called CRC bits. Data bits to be sent CRC bits k bits n bits Spring 2006 Computer Networks

How CRC Operates? (Cont.) The redundant bits are chosen in such a way that the resulting k+n bit string is exactly divisible (with a reminder=0) by G using modulo 2 arithmetic. The receiver divides the received data together with the CRC bits by G using modulo 2 arithmetic. If the reminder is 0, then the string is considered to be without errors If the reminder is not 0, the data unit is with errors and it is rejected Spring 2006 Computer Networks

Generator Polynomial, G For the purposes of calculating a CRC, the sender and the reciever need to agree upon a generator polynomial G in advance. The choice of G has impact on what types of errors can be reliably detected. There are a handful generator polynomials that are very good choices for various environments and the exact choice is made as a part of protocol design Spring 2006 Computer Networks

Modulo 2 Arithmetic Examples: 1011 XOR 0101 = 1110 In modulo 2 arithmetic addition and substruction are identical to EXCLUSUVE OR (XOR) operation. Multiplication and division are the same as in base-2 arithmetic without carries in addition or borrows in substraction. 0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0 Examples: 1011 XOR 0101 = 1110 1001 XOR 1101 = 0100 Spring 2006 Computer Networks

Calculating the CRC Bits Let n be the degree of G (G consists of n+1 bits). Append n 0s to the data unit to obtain the extended data unit. Perform the modulo 2 division. The extended data unit is a dividend and G is a divisor. The quotient is not used The reminder is the CRC bits Add the CRC bits to the data unit Spring 2006 Computer Networks

Example The first bit in the quotient is 1 and one times the divisor results in this The first bit in the quotient is 1 and one times the divisor results in this The number of 0s is one less than the number of bits in G (divisor) Obtained by XOR-ing 1001 and 1101 Obtained by XOR-ing 1000 and 1101 Spring 2006 Computer Networks

Another Example The transmitted unit is 11010110111110 Spring 2006 Computer Networks

CRC Performance Assuming a good choice of the generator polynomial, G, is made, CRC method shows very good performance Can detect all burst errors that affect odd number of bits Can detect all burst errors of length less than or equal to G Very high probability on detecting errors with length higher than the length of G Spring 2006 Computer Networks

Checksum To compute the check sum, the sender treats the data unit as a sequence of a certain number of blocks, all with the same number of bits. The sender and receiver agree on how long are the blocks (usually 16 bits) The sender adds the blocks using one’s complement arithmetic and creates an additional block with the same size The additional block is complemented and appended to the data unit as redundancy bits Spring 2006 Computer Networks

Checksum (Cont.) The receiver divides the received block into blocks with the agreed number of bits. The blocks are added using one’s complement arithmetic The sum is complemented If the result is 0, the data are considered without an error, otherwise the data unit is rejected Spring 2006 Computer Networks

Modulo One’s Arithmetic The addition starts at the last column from left to right The bits are carried in the respective column before This is repeated for each column If the number of bits in the sum is larger then those in the blocks, they are added to the sum obtained Spring 2006 Computer Networks

Example The addition starts in the last column Carry from column 5 1 Example Carry from column 4 Carry from column 3 Carry from column 2 The addition starts in the last column The bits are carried in the columns before The 6th and 7th bit are added Carry from column 1 sum checksum Spring 2006 Computer Networks

Complement of a Bit String A complement of a bit string is obtained when all 0s become 1s and all 1s become 0s Example: Given the bit string 10111001, its complement is 01000110 Spring 2006 Computer Networks