Lecture 12 Layer 2 – Data Link Layer Protocols

Slides:



Advertisements
Similar presentations
Cyclic Code.
Advertisements

Computer Interfacing and Protocols
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Introduction to Information Technologies
Reliability & Channel Coding
Traceroute Assignment. Base64 Encoding The SMTP protocol only allows 7 bit ASCII data, so how can you send me a picture of Avril Lavigne, which is an.
CSCI 4550/8556 Computer Networks Comer, Chapter 7: Packets, Frames, And Error Detection.
PART III DATA LINK LAYER. Position of the Data-Link Layer.
Chapter 5 Link Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 20.
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.
Unit 1 Protocols Learning Objectives: Understand the need to detect and correct errors in data transmission.
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.
Shashank Srivastava Motilal Nehru National Institute Of Technology, Allahabad Error Detection and Correction : Data Link Layer.
Introduction 1 Lecture 23 Link Layer (Error Detection/Correction) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science.
5: DataLink Layer5-1 Chapter 5 Link Layer and LANs Part 1: Overview of the Data Link layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose,
CSE331: Introduction to Networks and Security Lecture 3 Fall 2002.
COM342 Networks and Data Communications
Data Link Layer - 1 Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
CS3502: Data and Computer Networks DATA LINK LAYER - 1.
1 Data Link Layer Lecture 20 Imran Ahmed University of Management & Technology.
PART III DATA LINK LAYER. Position of the Data-Link Layer.
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.
Error Coding Transmission process may introduce errors into a message.  Single bit errors versus burst errors Detection:  Requires a convention that.
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.
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 14.
Lecture 6: Framing and Error Detection-Data Link Layer Functions
ECE453 – Introduction to Computer Networks Lecture 4 – Data Link Layer (I)
CS3505: DATA LINK LAYER. data link layer  phys. layer subject to errors; not reliable; and only moves information as bits, which alone are not meaningful.
Communication Systems 3.1) Characteristics of a Communication System.
5: DataLink Layer5-1 Chapter 5 Link Layer and LANs Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross.
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
CSCI 465 D ata Communications and Networks Lecture 9 Martin van Bommel CSCI 465 Data Communications & Networks 1.
1 © Unitec New Zealand CRC calculation and Hammings code.
Error Detection.
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)
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
ERROR DETECTION AND CORRECTION Chapter 8 Data Communications & Networking ERROR DETECTION AND CORRECTION Chapter 8 First Semester 2007/2008.
CS4470 Computer Networking Protocols
Dr. Clincy Professor of CS
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
Cyclic Redundancy Check (CRC)
Advanced Computer Networks
CIS 321 Data Communications & Networking
Part III Datalink Layer 10.
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.
Packetizing Error Detection
Packetizing Error Detection
Chapter 7 Error Detection and Correction
Introduction to Information Technologies
Error Detection Neil Tang 9/26/2008
Packetizing Error Detection
Protocols and the TCP/IP Suite
COMPUTER NETWORKS CS610 Lecture-5 Hammad Khalid Khan.
Error Detection and Correction
Error detection: Outline
Presentation transcript:

Lecture 12 Layer 2 – Data Link Layer Protocols CS 453 Computer Networks Lecture 12 Layer 2 – Data Link Layer Protocols

Error Detection There are two forms of error control Error Correction Both involve adding extra bits to the communication stream Error detection - sensing and handling errors – resend, drop, … Error correction – sensing and correcting errors with available information

Error Detection Think about this – What is the simplest way to detect errors in transmitted frames? Send each frame twice Compare, if different – probable error Is this efficient? Why? Is it fool-proof? What kind of errors could slip by?

Error Detection You’re right (I hope) It is not efficient It reduces effective data rate in half Repetitive errors to the same bit sequences would slip through Consistently dropping the first five bits

Error Detection Parity bits Simple form of error detection Even or odd parity For 7 bits add an 8th bit such that the number of 1 bits is an even number (even parity).. …or odd (odd parity) If parity is even and the receiver gets a byte with an odd number of 1s, then error 1 1 1 1 Parity bit Data bits

Error Detection Parity bits Very efficient – adds one bit per 7 bits Not very powerful – can detect 1 bit errors

Error Detection Two Dimensional Parity Imagine data stream as matrix 6 byte data stream Add parity bit per byte (simple parity) Add a parity byte where each bit is a parity bit for that bit position across the bytes in the frame From Peterson & Davie (2003) pg. 90

Error Detection Two Dimensional Parity Fairly efficient Add 14 bits of redundant information to a 42 bit data stream Fairly powerful Can detect all 1, 2 and 3 bit errors Can detect some 4 bit errors Why can it detech multibit errors Can 2D parity be used to correct errors?

Error Detection Internet Checksum Add the words in a data stream Suppose you have a stream of 16 bit integers Add them using ones complement arithmetic Sender calculates checksum …then sends data stream+checksum Receiver receives data stream+checksum Receive calculates new checksum on received data stream Compares it to the received checksum If match – probably no error If no match – probably error

Error Detection Internet Checksum Very efficient Fairly weak Only a few bits for a very long data stream Fairly weak For example, a dropped bit in one word and a spuriously added bit in another word would not be detected - would result in same ckecksum Easy to implement in hardware or software

Error Detection CRC – Cyclic Redundancy Check More generally knows an polynomial code CRC data stream… d bits r bits D: data bit from sender R: CRC bit

Error Detection CRC – Cyclic Redundancy Check Sender and Receiver must agree on a r+1 bit pattern – referred to as G Some things to consider CRC calculations are done with base 2 arithmetic addition/subtraction done with XOR multiplication/division done with left/right register shifts

Error Detection CRC – Cyclic Redundancy Check What to use for R D * 2r XOR R = nG says that D * 2r XOR R is an even multiple of G …or divisible with no remainder If we XOR R to both sides of above D * 2r = nG XOR R If we divide D * 2r by G the remainder is R R = remainder(D * 2r /G) Based on Kurose & Ross, Computer Networking: a top down structured approach using the Internet (2005) pg. 428

from: Peterson & Davie (2003) pg.95 Error Detection CRC – Cyclic Redundancy Check consider – original message D D = 10011010 left shift 3 bit positions (multiply) Divide by G Remainder = R for CRC check if R is subtracted from D… D-R is evenly divisible by G If receiver gets D,R where (D-R ) /G has remainder there is an error from: Peterson & Davie (2003) pg.95

Error Detection CRC – Cyclic Redundancy Check CRC is very powerful Can detect multibit errors Can detect burst errors < r+1 bits So where does G come from? Mathematics There are lots of codes, predetermined For example- CRC-32 10000010011000010001110110110111 IEEE