• ↑↓ pour naviguer
  • pour ouvrir
  • pour sélectionner
  • ⌘ ⌥ ↵ pour ouvrir dans un panneau
  • ←→ pour naviguer
  • esc pour rejeter
⌘ '
raccourcis clavier

The Problem

Go-Back-N wastes bandwidth by retransmitting packets that arrived correctly. A more efficient approach is needed to only retransmit truly lost packets.

Core Idea

A sliding window protocol where only lost or corrupted packets are retransmitted, while correctly received out-of-order packets are buffered at the receiver.

How It Works

  1. Sender maintains a window of unacknowledged packets
  2. Receiver accepts and buffers out-of-order packets
  3. Receiver sends individual ACK for each correctly received packet
  4. If a packet is lost, sender retransmits only that packet (not all subsequent ones)
  5. Receiver reorders buffered packets once missing packets arrive

Visual Explanation

G Sender Sender Loss Packet 1 LOST Sender->Loss Send 0,1,2,3 Retrans Retransmit ONLY 1 Sender->Retrans Timeout/NAK on 1 Rcvr Receiver ACK: 0,2,3 (buffered) NAK: 1? Loss->Rcvr Rcvr->Sender ACK 0,2,3

Key Properties

  • More efficient: only retransmits lost packets
  • More complex receiver: must buffer out-of-order packets
  • Individual ACKs (not cumulative)
  • Higher memory requirement at receiver for buffering

Connections

Edge Cases & Gotchas

  • Window size must be sequence number space/2 to avoid ambiguity
  • More complex state management at receiver
  • NAK generation and handling adds complexity