1 Wireless Networks Lecture 5 Error Detecting and Correcting Techniques (Part II) Dr. Ghalib A. Shah.

Slides:



Advertisements
Similar presentations
EE 4272Spring, 2003 Chapter 7 Data Link Control Objectives: Effective & reliable data communication between two directly connected transmitting-receiving.
Advertisements

EIE325: Telecommunication TechnologiesMaciej J. Ogorza ł ek, PolyU, EIE Telecommunication Technologies Week 8 Flow Control Error Control.
William Stallings Data and Computer Communications 7th Edition
Go-Back-N Improve Stop-and-Wait by not waiting!
Data link control. Data Link Control –Flow Control how much data may sent –Error Control How can error be detected and corrected.
Flow and Error Control. Flow Control Flow control coordinates the amount of data that can be sent before receiving acknowledgement It is one of the most.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Chapter 11 Data Link Control and Protocols.
ELEN 602 Lecture 5 Review of last lecture –Error Detection -- parity/CRC etc. Automatic Retransmission Request (ARQ) Reading: Chap
Coding and Error Control
Lecture 9-10: Error Detection and Correction Anders Västberg Slides are a selection from the slides from chapter 8 from:
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 13 Introduction to Computer Networks.
Chapter 9: Data Link Control Business Data Communications, 4e.
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Error Control.
20101 The Data Link Layer Chapter Design Issues Controls communication between 2 machines directly connected by “wire”-like link Services Provided.
Wireless Networks Spring 2005 Coding and Error Control.
Lect11.ppt - 03/15/05 CDA 6505 Network Architecture and Client/Server Computing Lecture 11 Link-Level Flow and Error Control by Zornitza Genova Prodanoff.
Link-Level Flow and Error Control
Coding and Error Control
Data Link Control Protocols
Data Communications and Networking
Data Link Control Protocols Dr. Muazzam A. Khan. Flow Control Ensuring the sending entity does not overwhelm the receiving entity —Preventing buffer overflow.
Aegis School of Telecommunication Chapter 7 Data Link Control Protocols Telecom Systems I by Dr. M. G. Sharma, Phd.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Chapter 11 Data Link Control Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction.
Coding and Error Control
Data and Computer Communications Tenth Edition by William Stallings Data and Computer Communications, Tenth Edition by William Stallings, (c) Pearson Education.
Chapter 3 THE DATA LINK LAYER
Chapter 5 Peer-to-Peer Protocols and Data Link Layer PART I: Peer-to-Peer Protocols ARQ Protocols and Reliable Data Transfer Flow Control.
1 Transport Layer Lecture 10 Imran Ahmed University of Management & Technology.
THE DATA LINK LAYER Chapter 3 1. H YBRID M ODEL The hybrid reference model to be used in this book. 2.
Lecture 3-2: Coding and Error Control (Cont.) ECE
1 Chapter 8. Coding and Error Control Wen-Shyang Hwang KUAS EE.
Data Link and Flow Control Networks and Protocols Prepared by: TGK First Prepared on: Last Modified on: Quality checked by: Copyright 2009 Asia Pacific.
Eighth Edition by William Stallings Chapter 7 – Data Link Control Protocols Data Link Control Protocols need layer of logic above Physical to manage exchange.
Chapter 3: Channel Coding (part 3). Automatic repeat request (ARQ) protocols ▫Used in combination with error detection/correction ▫Block of data with.
CIS : Data Link Control. Flow Control Ensuring the sending entity does not overwhelm the receiving entity —Preventing buffer overflow Transmission.
Lecture Focus: Data Communications and Networking  Data Link Layer  Data Link Control Lecture 22 CSCS 311.
1 FIT1005 Topic 6 - Data Link Layer Reference: Chapter 7 -Stallings.
Data Link Layer Flow and Error Control. Flow Control Flow Control Flow Control Specifies the amount of data can be transmitted by sender before receiving.
Coding and Error Control
Transmission Errors Error Detection and Correction.
COSC 3213: Computer Networks I Instructor: Dr. Amir Asif Department of Computer Science York University Section M Topics: 1.Flow Control and ARQ Protocols.
1 Flow&Error Control R. Supakorn. 2 Flow Control Flow control refers to a set of procedure used to restrict the amount of data that the sender can send.
Telecommunications & Networking Lesson 3. ISO Open System Interconnect (OSI) Application Presentation Session Transport Network Data Link Physical Application.
CSCI 465 D ata Communications and Networks Lecture 11 Martin van Bommel CSCI 465 Data Communications & Networks 1.
Data and Computer Communications Data Link Control Protocols.
1 The Data Link Layer A. S. Tanenbaum Computer Networks W. Stallings Data and Computer Communications Chapter 3.
Chapter 9: Data Link Control Business Data Communications, 4e.
NET 222: COMMUNICATIONS AND NETWORKS FUNDAMENTALS ( NET 222: COMMUNICATIONS AND NETWORKS FUNDAMENTALS (PRACTICAL PART) Tutorial 4 : Chapter 7 Data & computer.
Powerpoint Templates Computer Communication & Network Week # 10.
Powerpoint Templates Data Communication Muhammad Waseem Iqbal Lec # 15.
Coding and Error Control
Lecture 4 Error Detecting and Correcting Techniques Dr. Ghalib A. Shah
Computer Communication & Networks
MODULE I NETWORKING CONCEPTS.
Chapter 9: Data Link Control
Data Link Layer Flow Control.
Part III Datalink Layer 10.
Lecture Slides 03-October-2017
Chap. 4 Data link layer 2.
Instructor Mazhar Hussain
Data Link Layer What does it do?
Flow Control.
Rivier College CS575: Advanced LANs Chapter 6: Logical Link Control
Flow and Error Control.
Overview Jaringan Komputer (2)
Chapter 5 Peer-to-Peer Protocols and Data Link Layer
Coding and Error Control
Chapter 5 Peer-to-Peer Protocols and Data Link Layer
Lecture 4 Peer-to-Peer Protocols and Data Link Layer
Chapter 9: Data Link Control
Presentation transcript:

1 Wireless Networks Lecture 5 Error Detecting and Correcting Techniques (Part II) Dr. Ghalib A. Shah

2 Outlines  Review of previous lecture #3  Block Codes ►Hamming ►BCH ►Reed Solmon  ARQ ►Sliding window ►Go-back-N  Summary of today’s lecture

3 Last Lecture Review  Transmission Errors  Parity Check ►Single-bit parity ►2D parity  Cyclic Redundancy Check  Block Error Code

4 Hamming Code  Designed to correct single bit errors  Family of (n, k) block error-correcting codes with parameters: ► Block length:n = 2 m – 1 ► Number of data bits: k = 2 m – m – 1 ► Number of check bits: n – k = m ► Minimum distance: d min = 3  Single-error-correcting (SEC) code ► SEC double-error-detecting (SEC-DED) code

5 Example of Error Detection/Correction C1 C2 XOR Hamming distance = 3 Received Codeword (Cr) = C1 Cr XOR C2 Cr XOR

6 Hamming Code Process  Encoding: k data bits + (n -k) check bits  Decoding: compares received (n -k) bits with calculated (n -k) bits using XOR ► Resulting (n -k) bits called syndrome word ► Syndrome range is between 0 and 2 (n-k) -1 ► Each bit of syndrome indicates a match (0) or conflict (1) in that bit position

7 Example of Hamming Encode  Data = Bit Position Pos. Number Trans. Block Bit Position Pos. Number Trans. Block xxxX Bit Position Pos. Number Trans. Block 0011 x 100 x 1 xX Bit Position Pos. Number Trans. Block 0011 x 100 x 1 xX Bit Position Pos. Number Trans. Block 0011x100x1XX Check bits 0111 Bit Position Pos. Number Trans. Block PositionCode XOR 0111

8 Decoding Hamming Bit Position Pos. Number Trans. Block PositionCode XOR 0110 Bit Position Pos. Number Trans. Block

9 BCH Codes  BCH  Discoverer: Bose, Chaudhuri and Hocquenghem.  Multiple error correcting codes  Generalization of Hamming Code.  Flexibility in choice of parameters ► Block length, code rate

10 BCH Codes  For positive pair of integers m and t, a (n, k) BCH code has parameters: ►Block length: n = 2 m – 1 ►Number of check bits: n – k <= mt ►Minimum distance:d min >= 2t + 1  Correct combinations of t or fewer errors  The generator polynomial can be constructed from the factors of (X 2m-1 +1)

11 Reed-Solomon Codes  Subclass of nonbinary BCH codes  Data processed in chunks of m bits, called symbols  An (n, k) RS code has parameters: ► Symbol length: m bits per symbol ► Block length: n = 2 m – 1 symbols = m(2 m – 1) bits ► Data length: k symbols ► Size of check code: n – k = 2t symbols = m(2t) bits ► Minimum distance: d min = 2t + 1 symbols

12 Automatic Repeat Request  Mechanism used in data link control and transport protocols  Relies on use of an error detection code (such as CRC)  Flow Control  Error Control

13 Flow Control  Assures that transmitting entity does not overwhelm a receiving entity with data  Protocols with flow control mechanism allow multiple PDUs in transit at the same time  PDUs arrive in same order they’re sent  Sliding-window flow control ► Transmitter maintains list (window) of sequence numbers allowed to send ► Receiver maintains list allowed to receive

14 Flow Control  Reasons for breaking up a block of data before transmitting: ► Limited buffer size of receiver ► Retransmission of PDU due to error requires smaller amounts of data to be retransmitted ► On shared medium, larger PDUs occupy medium for extended period, causing delays at other sending stations

15 Flow Control

16 Error Control  Mechanisms to detect and correct transmission errors  Types of errors: ► Lost PDU : a PDU fails to arrive ► Damaged PDU : PDU arrives with errors

17 Error Control Requirements  Error detection ► Receiver detects errors and discards PDUs  Positive acknowledgement ► Destination returns acknowledgment of received, error-free PDUs  Retransmission after timeout ► Source retransmits unacknowledged PDU  Negative acknowledgement and retransmission ► Destination returns negative acknowledgment to PDUs in error

18 Go-Back-N  Improve Stop-and-Wait by not waiting!  Keep channel busy by continuing to send frames  Allow a window of up to W s outstanding frames  Use m-bit sequence numbering  If ACK for oldest frame arrives before window is exhausted, we can continue transmitting  If window is exhausted, pull back and retransmit all outstanding frames  Alternative: Use timeout

19 ►Frame transmission are pipelined to keep the channel busy ►Frame with errors and subsequent out-of-sequence frames are ignored ►Transmitter is forced to go back when window of 4 is exhausted Go-Back-N ARQ A B fr 0 Time fr 1 fr 2 fr 3 fr 4 fr 5 fr 6 fr 3 ACK1ACK1 out of sequence frames Go-Back-4: 4 frames are outstanding; so go back 4 fr 5 fr 6 fr 4 fr 7 fr 8 fr 9 ACK2ACK2 ACK3ACK3 ACK4ACK4 ACK5ACK5 ACK6ACK6 ACK7ACK7 ACK8ACK8 ACK9ACK9 R next

20 A B fr0 Time f1f2 f3 f0 Receiver is looking for R next =0 Out-of- sequence frames Four frames are outstanding; so go back 4 f2 f3 f1 f4f5f6 Go-Back-N ARQ ACK1ACK1 ACK2ACK2 ACK3ACK3 ACK4ACK4 ACK5ACK5 ACK6ACK6 Window size long enough to cover round trip time A B Time f0 Time-out expires f1 ACK1ACK1 Stop-and-Wait ARQ Receiver is looking for R next =0

21 Go-Back-N with Timeout  Problem with Go-Back-N as presented: ►If frame is lost and source does not have frame to send, then window will not be exhausted and recovery will not commence  Use a timeout with each frame ►When timeout expires, resend all outstanding frames

22 Receiver Receive Window R next Frames received Receiver will only accept a frame that is error-free and that has sequence number R next When such frame arrives R next is incremented by one, so the receive window slides forward by one Timer S last S last +1 S recent S last +W s -1 Timer Transmitter... Buffers S last S last +W s Send Window S recent Frames transmitted and ACKed... most recent transmission oldest un- ACKed frame max Seq # allowed Go-Back-N Transmitter & Receiver

23 Go-back-N ARQ  Acknowledgments ► RR = receive ready (no errors occur) ► REJ = reject (error detected)  Contingencies ► Damaged PDU ► Damaged RR ► Damaged REJ