Introduzione alle reti telematiche/Reti locali
Una rete si dice locale se è diffusa su una piccola estensione geografica. Le prime reti locali sono nate con una topologia a bus, ma oggi si preferisce la topologia a stella.
Protocolli per reti locali
modificaIn una rete locale ad accesso multiplo, il mezzo trasmissivo è condiviso → può trasmettere solo un nodo alla volta:
- vantaggio: un nodo quando trasmette ha a disposizione tutta la rete → massima velocità;
- vantaggio: comodo per il traffico broadcast e multicast, dove un nodo comunica con tutti gli altri;
- svantaggio: se un nodo vuole comunicare con un altro nodo specifico, deve inserire l'indirizzo del destinatario.
- Parametri
- capacità e traffico smaltito (throughput);
- equità tra gli interlocutori;
- ritardi di accesso, propagazione, consegna;
- numero di stazioni, lunghezza della rete, ecc.
- Classificazione
- ad accesso casuale;
- ad accesso ordinato: si basa sul passaggio di "testimoni" detti token → non ha avuto successo;
- a slot con prenotazione: chi vuole parlare deve aspettare che gli si venga data la risorsa.
Protocolli ad accesso casuale
modificaIn un protocollo ad accesso casuale, ogni nodo che vuole trasmettere trasmette quando è necessario, e non c'è un determinismo:
- usa la massima velocità permessa dal canale;
- non si coordina con gli altri nodi.
Si ha una collisione quando due o più nodi trasmettono contemporaneamente.
Un dominio di collisione è un insieme di nodi (schede di rete) che concorrono per accedere allo stesso mezzo trasmissivo → la trasmissione contemporanea provocherebbe collisione.
I protocolli ad accesso casuale specificano:
- come riconoscere una collisione;
- come recuperare una collisione (ritrasmissione).
Slotted ALOHA
modificaIl tempo è suddiviso in slot, e ogni nodo spezza la conversazione in slot. Quando un nodo si accorge che c'è stata una collisione in un certo slot (per esempio a causa della mancanza di un ACK), ritenta la trasmissione in uno slot scelto a caso, finché a forza di tentare la trasmissione non va a buon fine:
È fondamentale che lo slot sia scelto a caso, perché se tutti i collidenti ritrasmettessero aspettando tutti lo stesso numero di slot le collisioni sarebbero senza fine. Il costo di questo coordinamento distribuito è l'inefficienza: ci possono essere degli slot in cui nessuno trasmette.
Pure ALOHA
modificaNon c'è la sincronizzazione tra gli interlocutori, ovvero non esistono degli slot di tempo ma ognuno può iniziare a comunicare in qualunque istante. Il problema è che aumentano le collisioni: se l'interlocutore A inizia a trasmettere quando l'interlocutore B deve ancora finire, tutto il pacchetto trasmesso da B dovrà essere buttato via.
- Svantaggio
- le prestazioni non sono molto alte: sotto ipotesi di traffico uniforme, il throughput massimo è pari al 37% nello Slotted ALOHA, e al 18% nel Pure ALOHA;
- il canale si intasa prima nel Pure ALOHA, perché aumentano molto le collisioni con il carico;
- i ritardi di accesso non sono controllabili a priori in modo deterministico.
- Vantaggi
- protocolli semplici;
- a basso carico, il ritardo di accesso è nullo o contenuto.
CSMA
modificaIl CSMA prevede l'ascolto del canale (CS) prima della trasmissione:
- se sente che il canale è libero: il nodo trasmette il pacchetto;
- se sente che il canale è occupato:
- CSMA 1-persistente: il nodo continua a verificare se il canale è libero e trasmette appena si libera:
- CSMA 0-persistente: il nodo riprova dopo un tempo casuale:
- CSMA p-persistente: il nodo con probabilità 1 − p aspetta un tempo casuale (0-persistente), con probabilità p riverifica subito (1-persistente).
Questo protocollo è più efficiente in termini di thoughput. Si possono però verificare ugualmente delle collisioni:
- due interlocutori possono decidere nello stesso istante di iniziare a trasmettere → si ha una sincronizzazione delle collisioni:
- se si tiene conto dei tempi di propagazione, un nodo lontano può sentire il canale libero, anche se in realtà è occupato ma la trasmissione non ha ancora raggiunto il nodo lontano → si dice intervallo di vulnerabilità l'intervallo di tempo in cui l'avvio di una trasmissione da parte del nodo lontano creerebbe una collisione (è pari al ritardo di propagazione sul canale), e questo intervallo è tanto grande quando la distanza è maggiore → questo protocollo funziona bene su reti piccole:
Pertanto il CS non risolve del tutto il problema delle collisioni.
CSMA/CD
modificaNel CSMA/CD, anziché trasmettere l'intero pacchetto e soltanto alla fine verificare la collisione, il nodo durante la trasmissione ogni tanto cerca di capire se si è verificata una collisione, e in caso affermativo interrompe subito la trasmissione, evitando di sprecare il canale per una trasmissione inutile.
Nella comunicazione via radio non è possibile implementare la collision detection, perché è difficile per un interlocutore capire se altri stanno parlando in quel momento: in trasmissione non conviene ascoltare il canale, e in ricezione non conviene trasmettere, perché la ricezione sarebbe disturbata dalla trasmissione.
Siccome l'accesso alla rete è conteso, quando si riesce a ottenere l'accesso alla rete conviene trasmettere pacchetti grandi. Esiste un vincolo tra la dimensione minima del pacchetto e la dimensione della rete per riconoscere le collisioni: 7. Standard LAN#Dimensione minima delle PDU
Ethernet implementa il CSMA/CD 1-persistente perché è pensato per reti scariche.
Il backoff è esponenziale nelle ritrasmissioni:
- 1ª ritrasmissione: se c'è una collisione il nodo aspetta un tempo scelto a caso tra 0 e 1;
- 2ª ritrasmissione: se c'è una collisione il nodo aspetta un tempo scelto a caso da 0 a 3;
- 3ª ritrasmissione: se c'è una collisione il nodo aspetta un tempo scelto a caso da 0 a 7;
- e così via.