Flow Control & Error Control Flow control in the transport layer refers to a set of procedures used to restrict the amount of data that the sender can send before waiting for acknowledgment. Error control in the data link layer is based on automatic repeat request, which is the retransmission of data.
Automatic Repeat reQuest (ARQ) Protocols Purpose:   to ensure a sequence of information packets is delivered in order and without errors or duplications despite transmission errors & losses  We will look at : Stop-and-Wait ARQ Go-Back N ARQ Selective Repeat ARQ
Stop-and-Wait ARQ Stop  after Transmitting a Frame Wait  for an Acknowledgement H : Header CRC : Cyclic Redundancy Check  (Error Detection)
Importance of Sequence Numbers In Scenario B, the receiver accepts Frame 1 Twice How could the Receiver Know whether or Not it has Received Frame 1 Correctly?   BY INCLUDING THE FRAME SEQUENCE NUMBER IN THE HEADER Sender Receiver ACK Timeout Frame 0 Frame 1 Frame 1 ACK Frame 2 Sender Receiver ACK Timeout Frame 0 Frame 1 Frame 1 ACK Frame 2 ACK A B
Sequence Numbers in ACK Frames The sender may mistakenly interpret ACK as it assumes that the second ACK was for Frame 1 How Could the Sender Know which Frame does an ACK correspond to? BY INCLUDING THE SEQUENCE NUMBER IN  THE ACK Sender Receiver ACK Frame 0 Frame 0 Frame 1 ACK Frame 2 ACK C Timeout
Stop-and-Wait ARQ Performance The Channel Idle Time (Wait for ACK) is an Inefficiency because the channel is not used Machine A Machine B Physical Channel First Frame-Bit enters Channels Last Frame-Bit enters Channels First Frame-Bit arrives at B Last Frame-Bit arrives at B Last ACK-Bit Arrives at A Processing Time Channel is Idle
Stop-and-Wait ARQ Efficiency Machine A Machine B Physical Channel t 0 =Total Time to Transmit 1 Frame t prop t f =L f /R t proc t a =L a /R t prop t proc t 0 = 2 t prop +2 t proc + t f + t a t 0 = 2 t prop +2 t proc + L f /R+ L a /R t prop   Propagation Time t proc   Processing Time t f   Frame Transmission Time t a   ACK Transmission Time L f   No. of Bits/Frame L a   No. of Bits/ACK
Error-Free Channel Effective Transmission Rate Headers and CRC Transmission Efficiency Effect of Header Effect of ACK Effect of Delay Bandwidth Product
Go-Back-N Basics Transmit without waiting for ACK Each frame received correctly is acknowledged with a sequence number corresponding to the  NEXT  frame expected The receiver discards all out of sequence packets  If number of outstanding frames is W S : Go-Back-N
What does W S  Represent? W S  is called the  sending window size Each frame must be buffered (stored) until a valid ACK arrives (in case retransmission is needed) W S  represents the maximum number of frames that may be outstanding (i.e., stored) simultaneously
Go-Back-N ARQ Protocol An outstanding frame: It is a frame that has been transmitted and is yet to be acknowledged Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 At this Point there are  W S =4  Outstanding Frames.  So, GO-BACK-4 Out of Sequence Frames.  So , do not accept them Fr_3 Fr_4 Fr_5 Fr_6 Fr_7 Fr_8 ACK_4 ACK_5 ACK_6 ACK_7 ACK_8
Time-out Driven Go-Back-N For Go-Back-N with W s  = 4 What happens if the sender  only has 2  frames to send No retransmission  is triggered because the window is not full Time-out Driven Go-Back N Timer  per outstanding frame If the window is full no further transmissions are allowed Sender Receiver Fr_0 Fr_1 Out of sequence, ignored ACK_1 Fr_0 Fr_1 ACK_2 Timeout
Sliding Window Concept Go Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_2 Fr_3
Sliding Window Concept Go Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_2 Fr_3
Sliding Window Concept Go Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_2 Fr_3
Sliding Window Concept Go Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_2 Fr_3
Sliding Window Concept Go Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_1 Fr_2 Fr_3 Fr_4
Sliding Window Concept Go Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_2 Fr_3 Fr_4 Fr_5
Sliding Window Concept Go Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_3 Fr_4 Fr_5 Fr_6
Sliding Window Concept Go Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_4 Fr_5 Fr_6 Fr_7 ACK_4 Transmitter has nothing to send
Header Bits for Sequencing The frame sequence numbers cannot be allowed to keep on increasing to infinity.  WHY? Headers must be limited in size An increase in header size means inefficiency If  m bits  are devoted for carrying the sequence numbers Frame sequence numbers may go from  0 up to 2 m -1 IMPORTANT REQUIREMENT:  The receiver must have the ability to unambiguously identify the received frame Window Size  MUST BE  smaller than 2 m
Go-Back-N ARQ: sender window size
Selective Repeat ARQ Protocol What is the problem of Go-Back N? Go Back-N retransmits the erroneous frame and all subsequent frames This reduces efficiency  especially  for High Error Channels Selective Repeat ARQ Introduce a receive window to store  CORRECT  out of sequence frames Retransmit  individual  frames TCP uses a form of selective repeat
Error Recovery in Selective Repeat ARQ Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 ACK_1 ACK_2 NAK_2 Fr_2 ACK_2 ACK_2 Fr_6 ACK_6 ACK_7
Operation of Selective Repeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_0 Fr_1 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 W S =W R =2 , m=2 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0
Operation of Selective Repeat W S =W R =2 , m=2 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_0 Fr_1 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0
Operation of Selective Repeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_0 Fr_1 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
Operation of Selective Repeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_0 Fr_1 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
Operation of Selective Repeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_0 Fr_1 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
Operation of Selective Repeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_2 Fr_3 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
Operation of Selective Repeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_2 Fr_3 Fr_2 Fr_3 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
Operation of Selective Repeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_2 Fr_3 Fr_2 Fr_3 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
Operation of Selective Repeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_2 Fr_3 Fr_3 Fr_0 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
Operation of Selective Repeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_2 Fr_3 Fr_3 Fr_0 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
Selective Repeat ARQ, sender window size

Arq protocol part 2

  • 1.
    Flow Control &Error Control Flow control in the transport layer refers to a set of procedures used to restrict the amount of data that the sender can send before waiting for acknowledgment. Error control in the data link layer is based on automatic repeat request, which is the retransmission of data.
  • 2.
    Automatic Repeat reQuest(ARQ) Protocols Purpose: to ensure a sequence of information packets is delivered in order and without errors or duplications despite transmission errors & losses We will look at : Stop-and-Wait ARQ Go-Back N ARQ Selective Repeat ARQ
  • 3.
    Stop-and-Wait ARQ Stop after Transmitting a Frame Wait for an Acknowledgement H : Header CRC : Cyclic Redundancy Check (Error Detection)
  • 4.
    Importance of SequenceNumbers In Scenario B, the receiver accepts Frame 1 Twice How could the Receiver Know whether or Not it has Received Frame 1 Correctly? BY INCLUDING THE FRAME SEQUENCE NUMBER IN THE HEADER Sender Receiver ACK Timeout Frame 0 Frame 1 Frame 1 ACK Frame 2 Sender Receiver ACK Timeout Frame 0 Frame 1 Frame 1 ACK Frame 2 ACK A B
  • 5.
    Sequence Numbers inACK Frames The sender may mistakenly interpret ACK as it assumes that the second ACK was for Frame 1 How Could the Sender Know which Frame does an ACK correspond to? BY INCLUDING THE SEQUENCE NUMBER IN THE ACK Sender Receiver ACK Frame 0 Frame 0 Frame 1 ACK Frame 2 ACK C Timeout
  • 6.
    Stop-and-Wait ARQ PerformanceThe Channel Idle Time (Wait for ACK) is an Inefficiency because the channel is not used Machine A Machine B Physical Channel First Frame-Bit enters Channels Last Frame-Bit enters Channels First Frame-Bit arrives at B Last Frame-Bit arrives at B Last ACK-Bit Arrives at A Processing Time Channel is Idle
  • 7.
    Stop-and-Wait ARQ EfficiencyMachine A Machine B Physical Channel t 0 =Total Time to Transmit 1 Frame t prop t f =L f /R t proc t a =L a /R t prop t proc t 0 = 2 t prop +2 t proc + t f + t a t 0 = 2 t prop +2 t proc + L f /R+ L a /R t prop Propagation Time t proc Processing Time t f Frame Transmission Time t a ACK Transmission Time L f No. of Bits/Frame L a No. of Bits/ACK
  • 8.
    Error-Free Channel EffectiveTransmission Rate Headers and CRC Transmission Efficiency Effect of Header Effect of ACK Effect of Delay Bandwidth Product
  • 9.
    Go-Back-N Basics Transmitwithout waiting for ACK Each frame received correctly is acknowledged with a sequence number corresponding to the NEXT frame expected The receiver discards all out of sequence packets If number of outstanding frames is W S : Go-Back-N
  • 10.
    What does WS Represent? W S is called the sending window size Each frame must be buffered (stored) until a valid ACK arrives (in case retransmission is needed) W S represents the maximum number of frames that may be outstanding (i.e., stored) simultaneously
  • 11.
    Go-Back-N ARQ ProtocolAn outstanding frame: It is a frame that has been transmitted and is yet to be acknowledged Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 At this Point there are W S =4 Outstanding Frames. So, GO-BACK-4 Out of Sequence Frames. So , do not accept them Fr_3 Fr_4 Fr_5 Fr_6 Fr_7 Fr_8 ACK_4 ACK_5 ACK_6 ACK_7 ACK_8
  • 12.
    Time-out Driven Go-Back-NFor Go-Back-N with W s = 4 What happens if the sender only has 2 frames to send No retransmission is triggered because the window is not full Time-out Driven Go-Back N Timer per outstanding frame If the window is full no further transmissions are allowed Sender Receiver Fr_0 Fr_1 Out of sequence, ignored ACK_1 Fr_0 Fr_1 ACK_2 Timeout
  • 13.
    Sliding Window ConceptGo Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_2 Fr_3
  • 14.
    Sliding Window ConceptGo Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_2 Fr_3
  • 15.
    Sliding Window ConceptGo Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_2 Fr_3
  • 16.
    Sliding Window ConceptGo Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_2 Fr_3
  • 17.
    Sliding Window ConceptGo Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_1 Fr_2 Fr_3 Fr_4
  • 18.
    Sliding Window ConceptGo Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_2 Fr_3 Fr_4 Fr_5
  • 19.
    Sliding Window ConceptGo Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_3 Fr_4 Fr_5 Fr_6
  • 20.
    Sliding Window ConceptGo Back N is an example of what is called a sliding window protocol An ACK received means that all previous frames have been received correctly (previous ACKs were lost or receiver chose not to send them) Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 Fr_6 ACK_1 ACK_2 ACK_3 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_4 Fr_5 Fr_6 Fr_7 ACK_4 Transmitter has nothing to send
  • 21.
    Header Bits forSequencing The frame sequence numbers cannot be allowed to keep on increasing to infinity. WHY? Headers must be limited in size An increase in header size means inefficiency If m bits are devoted for carrying the sequence numbers Frame sequence numbers may go from 0 up to 2 m -1 IMPORTANT REQUIREMENT: The receiver must have the ability to unambiguously identify the received frame Window Size MUST BE smaller than 2 m
  • 22.
  • 23.
    Selective Repeat ARQProtocol What is the problem of Go-Back N? Go Back-N retransmits the erroneous frame and all subsequent frames This reduces efficiency especially for High Error Channels Selective Repeat ARQ Introduce a receive window to store CORRECT out of sequence frames Retransmit individual frames TCP uses a form of selective repeat
  • 24.
    Error Recovery inSelective Repeat ARQ Sender Receiver Fr_0 Fr_1 Fr_2 Fr_3 Fr_4 Fr_5 ACK_1 ACK_2 NAK_2 Fr_2 ACK_2 ACK_2 Fr_6 ACK_6 ACK_7
  • 25.
    Operation of SelectiveRepeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_0 Fr_1 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 W S =W R =2 , m=2 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0
  • 26.
    Operation of SelectiveRepeat W S =W R =2 , m=2 Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_0 Fr_1 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0
  • 27.
    Operation of SelectiveRepeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_0 Fr_1 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
  • 28.
    Operation of SelectiveRepeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_0 Fr_1 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
  • 29.
    Operation of SelectiveRepeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_0 Fr_1 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
  • 30.
    Operation of SelectiveRepeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_0 Fr_1 Fr_2 Fr_3 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
  • 31.
    Operation of SelectiveRepeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_2 Fr_3 Fr_2 Fr_3 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
  • 32.
    Operation of SelectiveRepeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_2 Fr_3 Fr_2 Fr_3 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
  • 33.
    Operation of SelectiveRepeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_2 Fr_3 Fr_3 Fr_0 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
  • 34.
    Operation of SelectiveRepeat Sending Window Frame Sequences that are allowed to be sent Outstanding Frame Sequences Fr_2 Fr_3 Fr_3 Fr_0 Frame Sequences that are allowed to be received Frame Sequences that are received correctly and buffered Receiving Window Sender Receiver Fr_0 Fr_1 Fr_0 NAK_0 ACK_2 Fr_2 ACK_3 Fr_3 ACK_0 W S =W R =2 , m=2
  • 35.
    Selective Repeat ARQ,sender window size