Here’s a comparison of Go-Back-N ARQ and Selective Repeat ARQ with formulas where applicable. We’ll also cover Stop-and-Wait ARQ for completeness.



2. Efficiency and Retransmissions:
- Go-Back-N ARQ: Efficiency is impacted by the retransmission of all frames after a lost frame. The sender keeps sending frames until the receiver confirms receipt.
- Selective Repeat ARQ: More efficient than Go-Back-N ARQ because only the lost frame is retransmitted. The receiver can accept out-of-order frames, reducing the need for redundant retransmissions.
- Stop-and-Wait ARQ: Very inefficient, as the sender must wait for an acknowledgment after each frame. The link is often idle, especially in long-distance communication.
3. Receiver Window Size:
- Go-Back-N ARQ: The receiver’s window size is 1, meaning it can only accept frames in order. If a frame is lost, all subsequent frames are discarded.
- Selective Repeat ARQ: The receiver’s window size is N, meaning it can accept multiple frames and store them in a buffer, allowing it to process frames out of order.
- Stop-and-Wait ARQ: The receiver’s window size is 1, meaning it can only process one frame at a time.

Conclusion:
- Go-Back-N ARQ is suitable for environments where the loss of frames is relatively low, but it becomes inefficient if frames are lost frequently because all subsequent frames must be retransmitted.
- Selective Repeat ARQ is more efficient than Go-Back-N ARQ because it only retransmits lost frames and allows the receiver to buffer out-of-order frames. However, it is more complex to implement.
- Stop-and-Wait ARQ is the simplest but least efficient protocol, often used in situations with very low bandwidth or low latency, where retransmission delays are not significant.
The choice of protocol depends on factors like bandwidth, round-trip time, and error rate. Selective Repeat ARQ typically provides the best efficiency for most scenarios where multiple frame transmissions occur, while Go-Back-N ARQ and Stop-and-Wait ARQ may be more appropriate for simpler or less reliable environments.