270 likes | 472 Views
Error Correction and Flow Control. Martin Weiss. Objectives of this Meeting. Describe different flow control techniques Describe the major error detection techniques. Review of the Last Meeting. Error detection Forward error correction. Error Correction. Automatic Response Request (ARQ)
E N D
Error Correction and Flow Control Martin Weiss
Objectives of this Meeting • Describe different flow control techniques • Describe the major error detection techniques
Review of the Last Meeting • Error detection • Forward error correction
Error Correction • Automatic Response Request (ARQ) • Forward error correction
Types of ARQ • Stop-and-Wait (Idle RQ) • Sliding Window (Continuous RQ)
Data 0 ACK 0 Data 1 NACK 1 Data 1 ACK 1 Data 0 Stop and Wait 1 2 3 4 5 6 7
Data D 0 0 A ACK 0 0 D Data 1 1 A ACK 1 1 Stop and Wait (Long Channel) 1 2 3 4 Increasing bit rate 1 2 3 4
Performance of Stop and Wait t=0 t=tp t=tt t=tt+tp t= x+tt+tp t= x+ta+tt+tp t= x+ta+tt+2tp
Performance of Stop and Wait • Error free (assume ta << tt and x=0)
Error Calculations • How many frames are transmitted for a frame to be properly received? • This is a probability distribution • Assuming independence of errors, • The mean of this is a geometric dist.
Error Calculations • P is the probability of frame error • This can be estimated using: • p is the bit error rate • k is the number of bits per frame • Using burst error rate is more accurate • You can assume that the burst error rate = 1/3 bit error rate
Stop and Wait with Errors • The error-free throughput is • Since it takes an average of NT frames to get an error free one, we can compute:
Sliding Window • Transmitter may transmit several messages before awaiting response • The number of unacknowledged messages permitted is the Window Size
Data 0 Data 1 Data 2 ACK 2 0 Sliding Window (n>3) 0 1 2 3
Data 4 Data 5 Data 6 Data 4 Data 5 Data 6 Sliding Window (Go-Back-N) 4 5 6 7 NACK 4 1 8 9 10
Performance of Sliding Window Protocols • Error-free (Go-Back-N and Selective Repeat)
Selective Repeat with Errors • If N is large enough, only the errored frames are retransmitted (occurring at a rate of (1-P) • Thus, the utilization becomes
Go-Back-N with Errors • The number of retransmitted frames is • When • Notice that when • N>(2a+1) then • N<(2a+1) then K=N
Go-Back-N with Errors • For N>2a+1 • For N<2a+1 • Substituting and simplifying, we obtain:
Performance Issues U 1.0 0.8 Sliding Window (N=7) Stop and Wait 0.6 P=10-3 0.4 0.2 a 0 0.1 1 10 100 1000
Comparing Sliding Window Approaches • Selective Reject • Go-Back-N
Types of Protocols • Byte-oriented protocols • Bit-oriented protocols
Protocol Environments • End-to-End • Local
Structure of Byte-Oriented Protocols Sample Structure SYN SYN SYN SOH Header STX Message EOT SYN = Synchronization SOH = Start of Header STX = Start of Text EOT = End of Text
Structure of Bit-Oriented Protocols Sample Frame Structure Preamble Flag Header Message Trailer Flag Preamble: Used for Bit Synchronization Flag: Identifies Start and End of Message Trailer: Error Checking
Bit Stuffing • Example Transmission Direction Original Bit Stream 0100101111010101101110000010111110010101111110 Locations for Stuff Bits Transmitted Bit Stream 010010111101010110111000001011111000101011111010
Design of Transmitter and Receiver Application Application Control Control Network Software Network Software Bit Stuffing Flag Insertion Flag Detection Bit Destuffing Transmitter Receiver