Skip this Video
Download Presentation
Week 8 Flow Control Error Control

Loading in 2 Seconds...

play fullscreen
1 / 39

Week 8 Flow Control Error Control - PowerPoint PPT Presentation

  • Uploaded on

Week 8 Flow Control Error Control. Where are we?. Up until now: Physical Layer Now: Data Link Layer Flow Control Error Control Later… Synchronisation Multiplexing. “sending signals over a transmission link”. “sending data over a data communications link”. Flow Control.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'Week 8 Flow Control Error Control' - bryga

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Week 8
  • Flow Control
  • Error Control
where are we
Where are we?
  • Up until now: Physical Layer
  • Now: Data Link Layer
    • Flow Control
    • Error Control
  • Later…
    • Synchronisation
    • Multiplexing

“sending signals over a transmission link”

“sending data over a data communications link”

flow control
Flow Control
  • Ensuring the sending entity does not overwhelm the receiving entity
    • Preventing buffer overflow
  • Transmission time
    • Time taken to emit all bits into medium
  • Propagation time
    • Time for a bit to traverse the link
stop and wait
Stop and Wait
  • Source transmits frame
  • Destination receives frame and replies with acknowledgement (ACK)
  • Source waits for ACK before sending next frame
  • Destination can stop flow by not send ACK
  • Works well for a few large frames
  • Large block of data may be split into small frames
    • Limited buffer size
    • Errors detected sooner (when whole frame received)
    • On error, retransmission of smaller frames is needed
    • Prevents one station occupying medium for long periods
  • Stop and wait becomes inadequate
  • If the data rate is 10 Mbps and transmission is over a distance of 100 m, how long will it take to send 1 Kb in eight 128 byte chunks with stop and wait FC? [assume v = 2×108 ms-1].
sliding window flow control
Sliding Window Flow Control
  • Allow multiple frames to be in transit
  • Receiver has buffer W long
  • Transmitter can send up to W frames without ACK
  • Each frame is numbered
  • ACK includes number of next frame expected
  • Sequence number bounded by size of field (k)
    • Frames are numbered modulo 2k
    • W= 2k-1
sliding window enhancements
Sliding Window Enhancements
  • Receiver can acknowledge frames without permitting further transmission (Receive Not Ready)
  • Must send a normal acknowledge to resume
  • If duplex, use piggybacking
    • If no data to send, use acknowledgement frame
    • If data but no acknowledgement to send, send last acknowledgement number again, or have ACK valid flag (TCP)
error detection
Error Detection
  • Additional bits added by transmitter for error detection code
  • Parity
    • Value of parity bit is such that character has even (even parity) or odd (odd parity) number of ones
    • Even number of bit errors goes undetected
cyclic redundancy check
Cyclic Redundancy Check
  • For a block of k bits transmitter generates n bit sequence
  • Transmit k+n bits which is exactly divisible by some number
  • Receive divides frame by that number
    • If no remainder, assume no error
error control
Error Control
  • Detection and correction of errors
  • Lost frames
  • Damaged frames
  • Automatic repeat request
    • Error detection
    • Positive acknowledgment
    • Retransmission after timeout
    • Negative acknowledgement and retransmission
automatic repeat request arq
Automatic Repeat Request (ARQ)
  • Stop and wait
  • Go back N
  • Selective reject (selective retransmission)
stop and wait1
Stop and Wait
  • Source transmits single frame
  • Wait for ACK
  • If received frame damaged, discard it
    • Transmitter has timeout
    • If no ACK within timeout, retransmit
  • If ACK damaged,transmitter will not recognize it
    • Transmitter will retransmit
    • Receive gets two copies of frame
    • Use ACK0 and ACK1
go back n
Go Back N
  • Based on sliding window
  • If no error, ACK as usual with next frame expected
  • Use window to control number of outstanding frames
  • If error, reply with rejection
    • Discard that frame and all future frames until error frame received correctly
    • Transmitter must go back and retransmit that frame and all subsequent frames
go back n damaged frame
Go Back N - Damaged Frame
  • Receiver detects error in frame i
  • Receiver sends rejection-i (REJ-i)
  • Transmitter gets rejection-i
  • Transmitter retransmits frame i and all subsequent
go back n lost frame 1
Go Back N - Lost Frame (1)
  • Frame i lost and transmitter sends i+1
  • Receiver gets frame i+1 out of sequence
  • Receiver sends reject i
  • Transmitter goes back to frame i and retransmits
go back n lost frame 2
Go Back N - Lost Frame (2)
  • Frame i lost and no additional frame sent
  • Receiver gets nothing and returns neither acknowledgement nor rejection
  • Transmitter times out and sends acknowledgement frame with P bit set to 1
  • Receiver interprets this as command which it acknowledges with the number of the next frame it expects (frame i )
  • Transmitter then retransmits frame i
go back n damaged acknowledgement
Go Back N - Damaged Acknowledgement
  • Receiver gets frame i and send acknowledgement (i+1) which is lost
  • Acknowledgements are cumulative, so next acknowledgement (i+n) may arrive before transmitter times out on frame i
  • If transmitter times out, it sends acknowledgement with P bit set as before
  • This can be repeated a number of times before a reset procedure is initiated
go back n damaged rejection
Go Back N - Damaged Rejection
  • Receiver sends rejection which is lost
  • As for lost frame (2)
  • (Transmitter times out and sends acknowledgement frame with P bit set to 1)
selective reject
Selective Reject
  • Also called selective retransmission
  • Only rejected frames are retransmitted
  • Subsequent frames are accepted by the receiver and buffered
  • Minimises retransmission
  • Receiver must maintain large enough buffer
  • More complex log at transmitter
performance issues
Which is best ???Performance Issues
  • What is the line utilisation for various flow control methods?
    • Stop and Wait
    • Sliding Window
  • What is the line utilisation for various ARQ schemes?
    • Stop and Wait
    • Selective Reject
    • Go Back N
stop and wait flow control
Stop and Wait Flow Control
  • Assume stations A and B are communicating frames F1,F2,F3,…,Fn
  • Total transmission time T = nTF where TF is the time to transmit one frame and receive an acknowledgement
  • TF = tprop+tframe+tproc+tprop+tack+tproc
    • tprop: propagation delay
    • tframe: time spent transmitting a frame
    • tproc: processing time
    • tack:time spent transmitting an acknowledgement
stop and wait flow control1
Stop and Wait Flow Control
  • TF = tprop+tframe+tproc+tprop+tack+tproc = 2tprop+tframeT = n(2tprop+tframe)
  • T is the total time to transmit, the actual time spent transmitting is only ntframe
  • Line utilisation U = ntframe/T
line utilisation
Line utilisation
  • Define line utilisation U as the ratio of transmission time to the time taken to transmit data
  • For Stop and Wait

define a = tprop/tframe, then U = 1/(1+2a)

the parameter a
The parameter a
  • We have defined a = tprop/tframe
  • Alternatively, define
    • V: propagation speed (ms-1)
    • d: transmission distance (m)
    • R: data rate (bps)
    • L: frame size (bits)
spread spectrum
Spread Spectrum
  • Analog or digital data
  • Analog signal
  • Objective: Spread data over wide bandwidth
  • Makes jamming and interception harder
  • Frequency hoping
    • Signal broadcast over seemingly random series of frequencies
  • Direct Sequence
    • Each bit is represented by multiple bits in transmitted signal
    • Chipping code
spread spectrum1
Spread Spectrum
  • Frequency hoping
    • Signal broadcast over seemingly random series of frequencies
  • Direct Sequence
    • Each bit is represented by multiple bits in transmitted signal
    • Chipping code
  • What is the bandwidth of a digital data stream encoded with direct sequence spreading?
generating noise
Generating noise
  • Need to generate same “noise” at source and destination
  • Computers are deterministic – generating true noise is not possible (i.e. no truly random numbers)
  • May use
    • pseudo-random algorithm
    • predetermined sequences (e.g. Gold sequences)
    • chaos