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

The Problem

CSMA reduces collisions but doesn’t handle them when they occur. Once a collision happens, devices keep transmitting garbage, wasting bandwidth until the packet finishes.

Core Idea

An extension of CSMA that detects collisions during transmission and immediately stops, then uses a backoff algorithm before retrying, minimizing wasted bandwidth.

How It Works

  1. Device listens before transmitting (carrier sense)
  2. If idle, start transmitting AND continuously monitor for collision
  3. If collision detected (signal strength changes): stop transmitting immediately
  4. Send a jam signal to notify all devices of the collision
  5. Wait a random time (binary exponential backoff) before retrying

Visual Explanation

G Listen Listen (Idle?) Transmit Transmit + Monitor Collision Listen->Transmit Idle Collision Collision Detected! Transmit->Collision Collision? Jam Send Jam Signal Collision->Jam Backoff Binary Exponential Backoff (random wait) Jam->Backoff Backoff->Listen

Key Properties

  • Listens before AND during transmission
  • Detects collisions quickly and stops transmission
  • Uses binary exponential backoff to reduce retry collisions
  • Standard for traditional wired Ethernet (10/100 Mbps)

Connections

Edge Cases & Gotchas

  • Only works on wired networks (can’t detect collision in wireless due to hidden terminal)
  • Not used in modern full-duplex Ethernet (switches eliminate collisions)
  • Maximum network diameter limited by collision detection time (slot time)