IEEE 802.3

Lo standard IEEE 802.3, noto anche con il nome commerciale Ethernet, definisce una rete LAN con topologia logica a bus. Il bus è un mezzo condiviso da più stazioni: l’informazione trasmessa da una stazione è ascoltata da tutte le altre.

CSMA/CD

Per la gestione dell’accesso multiplo al mezzo, lo standard 802.3 adotta il protocollo CSMA/CD, Carrier Sense Multple Access with Collision Detection, che è di tipo ad accesso casuale con rivelazione del canale e delle collisioni:

Quando una stazione ha un frame da trasmettere, essa esegue i seguenti passi:

  1. Ascolta il canale (carrier sense) per determinare se è libero. Se è occupato, attende finchè non si libera.
  2. Quando il canale risulta libero, inizia a trasmettere il frame.
  3. Durante la trasmissione, continua ad ascoltare il canale (listen while talking): se riceve un segnale generato da un’altra stazione, significa che si è verificata una collisione (collision detection). In questo caso, interrompe la trasmissione del frame, trasmette una sequenza di jam per segnalare la collisisone anche alle altre stazioni, attende per un tempo calcolato in base a un algoritmo di exponential backoff, e infine riprende il procedimento di trasmissione dal passo 1.
  4. Se inece trasmette l’intero frame senza riceve segnali da altre stazioni, allora non ci sono state collisioni: il procedimendo di trasmissione è concluso.

Exponential backoff

Quando si verifica una collisione, se le stazioni coinvolte provassero a ritrasmettere immediatamente (o comunque dopo un tempo prefissato), si riavrebbe subito la stessa collisione. Per risolvere questo problema, è necessario che il tempo di attesa:

Lo standard 802.3 prevede che il tempo di attesa sia calcolato secondo un algoritmo chiamato binary exponential backoff, che soddisfa entrambi questi criteri. Tale algoritmo consiste nell’estrazione casuale di un tempo di attesa dall’intervallo $T_{slot} * [0, \ \ 2^m-1]$, dove:

Frame 802.3