E' il metodo più semplice di connettere in rete dei computer e fu la prima ad essere utilizzata nel progetto di reti locali LAN.
Ogni singolo HOST è collegato in modo lineare a un unico cavo cenrale (chiamato DORSALE o SEGMENTO). Questa struttura ricorda quella delle fermate di un bus lungo un percorso.
Le reti a bus si basano su trasmissioni broadcast (FULL-DUPLEX), dove un unico canale di trasmissione bidirezionale è condiviso da tutti gli elaboratori. Lo standard più comune per questo tipo di topologia è IEEE 802.3 (ETHERNET), che opera tipicamente a 10 o 100 Mbit/s.
Il principio di funzionamento di una rete a bus segue regole precise:
CONDIVISIONE DEL CANALE: il ogni istante, SOLO un elaboratore può trasmettere dati sul cavo. Gli altri devono astenersi dall'invio.
GESTIONE DEI CONFLITTI: per evitare che due o più elaboratori tentino di trasmettere contemporaneamente, è necessario un algoritmo di arbitraggio (centralizzato o distribuito) per risolvere i conflitti (collisioni).
INVIO DEI PACCHETTI: i dati sono inviti sul cavo come segnali elettronici, sotto forma di pacchetti. Ogni pacchetto contiene l'indirizzo MAC (Media Access Control) del computer destinatario. L'indirizzo MAC è un indirizzo fisico composto da 48 bit (6 byte), univoco per ogni scheda di rete e assegnato dal produttore.
ASCOLTO E ACCETTAZIONE: tutti i computer collegati "ascoltano" i dati trasmessi sulla rete. Tuttavia non intervengono nel trasferimento dei dati da un computer all'altro. Solo il computer il cui indirizzo MAC corrisponde a quello del destinatario accetta e legge le informazioni; gli altri elaboratori le ignorano.
ATTESA: se una trasmissione è già in corso, gli altri computer devono attendere prima di poter inviare i propri dati.
TERMINATORI: a ciascuna estremità del cavo viene applicato un terminatore. Questo componente assorbe i segnali liberi che raggiungono la fine del cavo, evitando riflessioni del segnale che potrebbero causare interferenze , e rende il cavo disponibile per l'invio di altri dati.
Per espandere una LAN a bus è possibile utilizzare:
connettori BNC: connettori cilindrici che uniscono due capi di cavo. È preferibile utilizzare un unico cavo lungo piuttosto che più segmenti uniti, poiché ogni connessione BNC può indebolire il segnale.
ripetitori: Dispositivi che potenziano il segnale prima di ritrasmetterlo sulla rete, utili per estendere la lunghezza massima del cavo.
Semplicità: Sono relativamente facili da gestire e mantenere
Flessibilità: Permettono una connessione agevole di nuove stazioni alla rete
Bassi costi: Generalmente richiedono meno cablaggio rispetto ad altre topologie
Affidabilità (parziale): Un guasto a un singolo host (computer collegato) non compromette il funzionamento dell'intera rete
Dipendenza dal Mezzo Trasmissivo: Tutte le stazioni dipendono da un unico mezzo trasmissivo condiviso
Problemi di Prestazioni: Le prestazioni possono degradare drasticamente in presenza di traffico elevato, poiché un solo elaboratore può trasmettere alla volta. Non è garantita la consegna del messaggio entro un intervallo di tempo predefinito (non è una rete real-time)
Punti di Fallimento: Un guasto o un'interruzione nel cavo dorsale può bloccare l'intera rete, rendendo la risoluzione dei problemi complessa
Scalabilità Limitata: L'aggiunta di molti dispositivi può sovraccaricare il canale condiviso, riducendo le prestazioni
Tipo di LAN più diffuso al mondo, ampiamente impiegata sia in ambienti domestici che aziendali per la sua affidabilità e semplicità.
Il funzionamento avviene utilizzano il metodo CSMA/CD (Carrier Sense Multiple Access with Collision Detection) protocollo che "ascolta prima di parlare" che gestisce l'accesso al mezzo trasmissivo (il cavo di rete) in un ambiente condiviso (come una topologia a bus, sebbene oggi sia più comune connettersi a uno switch che gestisce la logica del bus virtuale).
Ecco i suoi principi chiave:
Carrier Sense (Ascolto del Vettore): Ogni computer, prima di inviare dati, "ascolta" il canale di comunicazione per verificare se è già occupato da altre trasmissioni. Se il canale è libero, procede con l'invio.
Multiple Access (Accesso Multiplo): Tutti i computer collegati alla rete hanno la possibilità di accedere e trasmettere dati sul medesimo canale condiviso.
Collision Detection (Rilevamento delle Collisioni): Nonostante l'ascolto, è possibile che due o più computer inizino a trasmettere contemporaneamente se rilevano il canale libero nello stesso istante. In questo caso, si verifica una collisione.
Quando una collisione viene rilevata, gli host coinvolti interrompono immediatamente la trasmissione.
Viene inviato un segnale di ingombro (jam signal), un segnale corto e specifico, che assicura che tutti gli altri computer sulla rete siano consapevoli della collisione. Questo garantisce che nessun altro host inizi a trasmettere mentre il mezzo è "contaminato".
Ciascun host coinvolto nella collisione attende un periodo di tempo casuale (backoff period) prima di tentare nuovamente l'invio dei dati. La casualità di questo ritardo è fondamentale per evitare che gli stessi host continuino a collidere ripetutamente.
La comunicazione su una rete Ethernet avviene tramite una scheda di rete (Network Interface Card - NIC) installata in ogni computer. Questa scheda è l'interfaccia hardware che permette al computer di connettersi al cavo di rete e di gestire il protocollo Ethernet.
Storicamente, le velocità di trasmissione Ethernet sono evolute:
Ethernet originale: 10 Mbit/s (Mega bit al secondo).
Fast Ethernet: 100 Mbit/s. Questo è il valore menzionato nel testo, ed è stato uno standard molto diffuso per anni.
Gigabit Ethernet: 1 Gbit/s (Giga bit al secondo).
10 Gigabit Ethernet e oltre: Oggi esistono standard che raggiungono 10 Gbit/s, 25 Gbit/s, 40 Gbit/s, 100 Gbit/s e persino 400 Gbit/s, specialmente per le dorsali di rete e i data center.
È importante notare che, sebbene il CSMA/CD sia il protocollo "storico" di Ethernet, nelle moderne reti basate su switch, il problema delle collisioni è notevolmente ridotto. Ogni porta dello switch crea di fatto un dominio di collisione separato, eliminando le collisioni dirette tra i dispositivi collegati a porte diverse e permettendo spesso una trasmissione full-duplex (invio e ricezione simultanea).
Connessione circolare punto-a-punto tra tutte le stazioni collegate senza interruzioni, secondo una geometria circolare
Le informazioni transitano in UNA SOLA direzione lungo l'anello. Ogni stazione riceve il messaggio, verifica se è il destinatario e, in caso negativo, rigenera il segnale e lo ritrasmette alla stazione successiva. L'unità di connessione utilizzata in queste reti è spesso conosciuta come MAU (Multi-Station Access Unit).
Nella MAU, i segnali dei dati passano in un anello da un host al successivo tramite la tecnica TOKEN PASSING (passaggio del gettone). Il gettone è un piccolo gruppo di byte che funge da "permesso di trasmissione" e circola costantemente nell'anello.
Il processo di trasmissione dei dati avviene come segue:
acquisizione del gettone: un PC che desidera trasmettere dati attende di ricevere il gettone libero
preparazione del pacchetto: una volta acquisito il gettone, il PC mittente lo modifica, incorporando i dati da inviare e configurandolo con l'indirizzo MAC dell'host destinatario
transito e ricezione: i dati (ora parte del gettone modificato) passano attraverso tutti i computer dell'anello. Ogni stazione esamina l'indirizzo di destinazione. Quando il pacchetto raggiunge il destinatario corretto, quest'ultimo copia i dati e modifica il gettone per indicare l'avvenuta ricezione
conferma e rilascio: il gettone modificato (con la conferma di ricezione) continua a circolare fino a tornare all'host mittente. Una volta che l'host mittente accerta l'avvenuta ricezione, il pacchetto di dati viene rimosso dalla rete
rilascio del gettone: il gettone viene rilasciato e torna a circolare liberamente nell'anello rendendosi disponibile per un altro host che desidera trasmettere dati.
In una rete ad anello, esiste un solo gettone. Se un client vuole trasmettere i dati e il gettone è già in uso, deve aspettare che quest'ultimo si liberi. Nonostante possa sembrare un sistema inefficiente, il gettone viaggia quasi alla velocità della luce. Ad esempio, in una rete con un cavo di 400 metri, un gettone può fare il giro dell'anello circa 5000 volte al secondo, garantendo una trasmissione rapida anche in condizioni di traffico elevato.
Costo Ridotto: Storicamente, l'implementazione di reti Token Ring poteva risultare più economica rispetto ad altre topologie per reti di dimensioni simili, grazie alla minore necessità di hardware complesso di gestione centrale.
Gestione del Traffico Deterministic: Il metodo del gettone garantisce che ogni stazione abbia un'opportunità di trasmettere, rendendo il traffico prevedibile. Non ci sono collisioni di dati, a differenza delle reti Ethernet basate su CSMA/CD.
Limitata Flessibilità: L'aggiunta o la rimozione di una nuova stazione comporta l'apertura dell'anello e la sospensione delle attività per il tempo necessario all'intervento. Questo rende le modifiche alla rete più complesse e disruptive.
Affidabilità della Rete: La stabilità della rete dipende criticamente dall'affidabilità di tutte le stazioni collegate. Se una singola stazione ha un malfunzionamento e interrompe il flusso del segnale o del gettone, l'intero anello si interrompe, rendendo la rete inutilizzabile.
Complessità Implementativa: Sebbene il concetto sia semplice, la gestione dei guasti (es. interruzione del cavo, gettone perso) e la necessità di dispositivi specifici (MAU) rendevano la sua implementazione più complessa rispetto ad altre topologie emergent.
Una delle configurazioni di rete più comuni, in cui tutte le connessioni dei dispositivi (nodi) fanno capo ad un unico nodo centrale. Questo nodo centrale può avere diverse funzionalità:
HUB (modalità passiva): funziona come un semplice rigeneratore di segnali. Qualsiasi dato ricevuto da una porta viene ritrasmesso a tutte le altre porte, in modalità broadcast. Questo può portare al fenomeno dello SNIFFING, ovvero l'intercettazione passiva dei dati da parte di dispositivi non destinatari
SWITCH (smistatore), COMPUTER (server che eroga servizi di rete), MAINFRAME (modalità attiva): dispositivi più "intelligenti" rispetto all'HUB. Questi dispositivi inoltrano il contenuto trasmissivo solo al nodo destinatario specifico e deve essere in grado di identificare gli indirizzi MAC dei nodi connessi e crea tabelle di mappatura per instradare i dati in modo efficiente, evitando collisioni e riducendo il traffico superfluo sulla rete.
Prestazioni Elevate: Le connessioni sono spesso dedicate (punto-a-punto) tra il nodo e il centro stella, il che consente alte velocità e minori collisioni (specialmente con l'uso di switch).
Facilità di Controllo Centralizzato: La gestione e il monitoraggio della rete sono semplificati grazie al controllo centralizzato dal server o dal dispositivo principale. Tuttavia, è fondamentale che il nodo centrale sia dimensionato adeguatamente per gestire il carico di lavoro.
Fault Tolerance: Se un'interruzione si verifica su una delle connessioni tra un nodo e il centro stella, solo il computer collegato a quel segmento viene isolato. Tutti gli altri computer della rete continuano a operare normalmente, garantendo una maggiore resilienza complessiva.
Espandibilità: Aggiungere un nuovo dispositivo alla rete è semplice: basta collegarlo a una porta disponibile del nodo centrale.
Elevata Quantità di Cablaggio: In reti di grandi dimensioni, la necessità di collegare ogni nodo direttamente al centro stella può comportare un'enorme quantità di cavi, rendendo l'installazione più complessa e costosa.
Possibilità di Sovraccarico e Blocco: Se il nodo centrale (specialmente un hub o uno switch non adeguatamente potente) subisce un sovraccarico dovuto a un traffico eccessivo, può verificarsi un rallentamento o un blocco totale delle comunicazioni per l'intera rete.
Dipendenza dall'Affidabilità del Centro: Il punto di forza della centralizzazione è anche la sua principale debolezza. Un guasto al nodo centrale (hub, switch o server) blocca l'intera rete, rendendolo un singolo punto di fallimento critico.
Tipo di architettura di rete in cui ogni nodo è interconnesso direttamente e bidirezionalmente con ogni altro nodo della rete. Questo significa che esiste un collegamento dedicato tra ogni coppia di dispositivi.
Questa configurazione è tipicamente utilizzata nelle reti geografiche (WAN) dove l'affidabilità è critica.
Il vantaggio principale di questa topologia risiede nella sua tolleranza ai guasti: la presenza di molteplici percorsi alternativi consente ai dati di raggiungere la destinazione anche in caso di congestione o malfunzionamento di una o più linee.
La robustezza di una rete a maglia è direttamente proporzionale al numero di canali implementati. Tuttavia, questo porta al suo principale svantaggio: il costo. Le reti completamente connesse sono estremamente costose da implementare, dato che il numero di canali necessari cresce con una legge quadratica rispetto al numero dei nodi (per N nodi, sono necessari N(N−1)/2 collegamenti). Per questo motivo, le reti completamente a maglia sono rare e si preferiscono spesso topologie a maglia parziale che bilanciano la ridondanza con i costi.
Rete magliata non completamente connessa, che si può modellizzare anche come un insieme di reti a stella interconnesse tra loro in modo gerarchico.
Nodi e canali sono disposti in modo ramificato; questa topologia è la preferita per le reti WAN per via dei costi inferiori rispetto ad altre architetture. Tuttavia un potenziale svantaggio risiede nella sua vulnerabilità: il guasto di un singolo canale o un nodo può compromettere la funzionalità di parte della rete o dell'intera rete.
Il traffico di dati nella topologia ad albero si muove tipicamente dai sistemi (o terminali) situati ai livelli più bassi della gerarchia verso i sistemi intermedi o il sistema del livello più alto. Quest'ultimo è generalmente il più potente dell'intera struttura, poiché deve gestire le richieste di tutta la rete. Spesso, questo sistema principale è responsabile della gestione completa della rete, ma è anche possibile che la gestione e il controllo siano cooperativi, coinvolgendo il sistema principale e alcuni o tutti i sistemi del livello immediatamente inferiore.
Scalabilità: È relativamente facile estendere la rete aggiungendo nuovi rami o segmenti senza dover riprogettare l'intera struttura.
Facilità di gestione e isolamento dei problemi: La struttura gerarchica permette di isolare più facilmente i guasti e di gestire i segmenti di rete in modo indipendente.
Riduzione del cablaggio: Rispetto a una rete completamente magliata, richiede meno cablaggio, contribuendo a ridurre i costi di implementazione.
Collo di Bottiglia (Bottleneck): Il sistema principale (o i nodi intermedi), se sovraccarico di lavoro, può diventare un collo di bottiglia per l'intera rete, rallentando i servizi per tutti gli utenti.
Punto Singolo di Fallimento: La caduta del sistema principale o di un nodo critico in un livello superiore può rendere inutilizzabile gran parte o l'intera rete. A questo inconveniente si può ovviare adottando un sistema di back-up, che permette a uno o più altri sistemi della rete di subentrare e svolgere le stesse funzioni del sistema principale in caso di guasto.