Una rete (computer network) è un'insieme di calcolatori, localizzati in una certa area
geografica (in una stanza così come in una vasta regione) e collegati fra loro
attraverso opportuni canali di trasmissione, in grado di comunicare tra loro,
scambiarsi informazioni ed eventualmente condividere delle risorse in comune.
Per una definizione più rigorosa possiamo considerare quella data da IEEE (Institute
of Electrical and Electronic Engineers):
"Una rete è un insieme di nodi di elaborazione totalmente autonomi
connessi mediante un opportuno sistema di comunicazione in grado di interagire
mediante scambio di messaggi al fine di condividere le risorse messe a
disposizione della rete".
Dal vecchio modello basato sulla presenza di un solo potente elaboratore (mainframe) e terminali collegati si è oggi passati a modelli che prevedono la presenza di un gran numero di elaboratori autonomi e interconnessi.
La diffusione sempre crescente di questi sistemi ha diverse ragioni di utilità, esse, infatti, permettono di: condividere risorse fra molti utenti, comunicare fra persone in real time o in differita, assicurare l'affidabilità di sistemi di controllo strategici, accedere ad informazioni o servizi, ecc.
Le tecnologie di trasmissione dei dati sono essenzialmente di due tipi:
Un'ulteriore tipologia denominata reti punto-multipunto, oramai caduta in disuso, prevede la presenza di un utente che comunica con tutti gli altri.
In genere la tecnologia broadcast viene utilizzata per reti più piccole dal punto di vista geografico, mentre la tecnologia punto a punto è utilizzata per reti più estese.
L'insieme dei collegamenti di una rete (eventualmente anche wireless, senza fili) determina la sua disposizione topologica. Questa caratteristica è una chiave di lettura molto utile soprattutto nelle reti locali. Vediamo quali sono le tipologie principali:
| bus, con un solo canale condiviso da tutti gli utenti (ridondanza nulla); è molto usata nelle LAN perché ha il vantaggio di essere semplice ed economica. Lo svantaggio principale consiste nella bassa tolleranza ai guasti |
|
| ring (anello), con un canale ad anello unidirezionale o bidirezionale cui tutti sono collegati (ridondanza nulla); è usata nelle MAN e in alcune LAN, ha il vantaggio di usare pochi canali ma non ha un'alta tolleranza ai guasti |
|
| a stella (star), con un'unica centrale collegata a tutte le altre unità (ridondanza nulla); il nodo centrale può essere attivo o passivo (a seconda che commuti le informazioni in transito solo sul nodo di destinazione o su tutti i nodi). Anche in questo caso ci sono pochi canali di collegamento ma la rete è di fatto vulnerabile in seguito a guasti del nodo centrale; |
|
| ad albero (tree), con un'unica centrale collegata a tutte le altre unità anche se non direttamente, ovvero con passaggi attraverso altri nodi prima di arrivare al nodo centrale o "vertice" (ridondanza nulla); generalmente stessi vantaggi e svantaggi della topologia a stella. Un esempio su larga scala è la comunicazione via satellite (il satellite è il vertice); |
|
| a maglia completa (mesh), in cui ogni unità è collegata a tutte le altre, dunque per n unità occorrono n(n-1)/2 collegamenti (ridondanza massima); reti molto veloci per via dei molti collegamenti e con tolleranza perfetta ai guasti (un nodo guasto non altera il resto della rete) |
|
| a maglia parziale (partial mesh), ottenuta dalla rete a maglia con la rimozione di alcune connessioni, di solito quelle utilizzate più raramente (ridondanza media), quindi con semplificazione della rete e riduzione dei costi |
|
| schemi ibridi, configurazione che combina assieme tratti topologici diversi (realizzata per combinare assieme le parti migliori di ogni topologia). E' la topologia tipica delle reti geografiche; ha lo svantaggio di non essere regolare ma ha tolleranza ai guasti e flessibilità nella scelta dei canali (Internet ne è un esempio) |
|
Le reti con topologia bus e ring sono tipicamente reti broadcast e vengono chiamate anche shared medium (mezzo condiviso). Sono possibili più conversazioni contemporaneamente, ma nello stesso tempo si pone il problema del controllo degli accessi alla rete e della gestione dei conflitti che ne derivano, per cui è necessario un meccanismo di arbitraggio. Il meccanismo scelto in questo senso può essere:
Tutte le altre topologie (star, mesh, partial mesh) sono tipicamente reti punto a punto e vengono chiamate anche peer to peer (P2P), termine che riprenderemo in seguito come riferimento generale alle relazioni client-server e client-client.
Dal punto di vista della dimensione spaziale le reti sono classificate secondo tre differenti tipologie:
| Distanza | Ambito | Tipo |
| 10 m | stanza | locale |
| 102 m | edificio | locale |
| 103 m | campus | locale |
| 104 m | città | metropolitana |
| 105 m | nazione | geografica |
| 106 m | continente | geografica |
| 107 m | pianeta | geografica (Internet) |
La classificazione in base alle dimensioni delle reti è cruciale infatti, a seconda della distanza tra i calcolatori "in rete", si utilizzano tecniche differenti. Facciamo un riepilogo delle principali caratteristiche:
| Distanza | Tecnologia di trasmissione | Velocità | Topologia | |
| LAN | fino a qualche Km | broadcast | 10-100 Mbps | bus o ring |
| MAN | fino a qualche decina di Km | broadcast - punto a punto | 100 Mbps | |
| WAN | fino a migliaia di Km | punto a punto | < 2 Mbps |
Le reti WAN tipiche sono cablate con numerose linee di trasmissione (il più delle quali sono linee telefoniche) che congiungono coppie di router. In particolare le topologie di connessione dei router sono quelle descritte nel paragrafo precedente (a stella, ad anello, ad albero, a maglia, a maglia parziale).
A volte le reti WAN fanno ricorso a collegamenti via satellite (ogni router è collegato al satellite, per cui si tratta di una rete broadcast, con operazioni classiche di uplink - dal router al satellite - e downlink - dal satellite a terra) oppure radio al suolo (ogni router è collegato tramite onde radio ai router vicini, nel senso che i collegamenti funzionano entro una certa distanza massima). Più in generale una WAN può essere in parte cablata, in parte basata su satellite e in parte su radio.
Interconnessione di reti. Una internetwork si forma quando si congiungono più reti di vario tipo, siano esse LAN, MAN o WAN, anche non omogenee. Nel congiungere reti progettualmente diverse si possono incontrare problemi di compatibilità; in tal caso si utilizzano speciali router (gateway) che permettono il trasferimento delle informazioni fra tali sistemi.

Il trasferimento delle informazioni su una rete di comunicazione può avvenire con diverse procedure chiamate tecniche di commutazione che differiscono per l'uso delle risorse di comunicazione. Queste tecniche possono essere divise in tre categorie:
- commutazione di circuito (circuit switching), in cui ai due utenti comunicanti viene assegnato un circuito (circuito fisico effettivo o porzione di banda o intervallo di tempo) per tutta la durata del collegamento e nessun altro utente può utilizzarlo in quel periodo. Si possono distinguere tipicamente le seguenti fasi: a) creazione del circuito (connection setup), b) trasferimento dell'informazione, c) chiusura del collegamento. Questa tecnica è utilizzata nella rete telefonica ma è in generale adatta per comunicazioni in cui la trasmissione è continua nel tempo ed ha una durata temporale molto maggiore rispetto alle altre due fasi.
- commutazione di messaggio (message switching), in cui ogni messaggio è un'entità informativa autonoma e per arrivare a destinazione segue di volta in volta un percorso deciso in base allo stato della rete. un circuito viene pertanto utilizzato solo per il tempo strettamente necessario per trasferire il messaggio lasciando la possibilità di utilizzo della rete ad altri utenti. Ogni messaggio è composto dall'informazione e da una testata o header (che contiene tra l'altro l'indirizzo di destinazione) che lo rende autonomo.

Quando un messaggio inviato giunge ad un nodo di commutazione questo lo inserisce nella coda dei messaggi in attesa e, quando diventa il primo, lo instrada verso un nodo successivo. Questa tecnica è molto più adatta alla trasmissione dei dati ma è poco utilizzata perché la commutazione di pacchetto presenta vantaggi superiori.
- commutazione di pacchetto (packet switching), che rappresenta un'evoluzione della comm. di messaggio ed è utilizzata in molte reti per la trasmissione dati. Il messaggio, prima di essere spedito, viene diviso in pacchetti di dimensioni più ridotte e viene aggiunta a ciascuno di essi un header in modo da farlo diventare un 'entità autonoma (l'header contiene, tra l'altro, gli indirizzi del mittente e del destinatario e il numero progressivo che individua la posizione dentro il messaggio). La trasmissione dei pacchetti può avvenire secondo due differenti modalità:

Con la tecnica a circuiti virtuali (utilizzata nelle reti per la trasmissione dei dati ad alta velocità) la trasmissione dei dati è molto più veloce una volta indicato il percorso; con la tecnica datagram (utilizzata da Internet), invece, si hanno diversi vantaggi: non è necessaria la creazione del circuito virtuale per la trasmissione, la procedura è più robusta ai guasti potendo identificare percorsi alternativi, si può evitare la congestione di alcuni nodi o della rete instradando i pacchetti su vari percorsi.

Nella realizzazione di una rete uno dei problemi da risolvere è quello di creare i collegamenti fisici tra i vari utenti. La soluzione di connettere ogni utente ad ogni altro utente con un canale riservato, richiede l'utilizzo di grosse quantità di materiali e costi associati elevati. Per realizzare una "condivisione" delle risorse, si utilizza la tecnica della multiplazione o multiplexing che permette l'utilizzo di un canale di commutazione trasportando simultaneamente due o più messaggi, anche da più sorgenti a più destinazioni.

In pratica un multiplexor (il dispositivo che esegue tale operazione) riceve m segnali distinti s1(t), s2(t), ..., sm(t) e li invia con un segnale in uscita Y(t), che ne è un'opportuna combinazione, su un unico canale (alla cui ricezione un demultiplexor decomporrà nuovamente nei segnali originari)

Le tecniche multiplex attualmente più utilizzate sono:
multiplex a divisione di frequenza (FDM, Frequency Division Multiplexing), in cui si utilizzano canali multipli ovvero lo spettro di frequenze disponibile è suddiviso in bande più piccole, ogni utente ha l'esclusivo uso di una di esse attraverso il trasporto del suo segnale su quella banda (adatto soprattutto per la gestione di segnali analogici). Se B è la banda dei segnali s(t) allora il segnale s1(t) viene traslato in frequenza di F, s2(t) viene traslato in frequenza di F + B, ..., sm(t) viene traslato in frequenza di F + (m - 1)B. Nell'esempio in figura abbiamo m = 3, B = 4 KHz, F = 60 KHz :

multiplex a divisione di tempo (TDM, Time Division Multiplexing), in cui i segnali si differenziano per l'intervallo di tempo utilizzato per la trasmissione (adatto soprattutto per la gestione di dati digitali, su questo sistema si basa anche la telefonia digitale). Se i segnali richiedono ogni t secondi la trasmissione di b bit, il tempo viene diviso in intervalli di tempo t ed ogni intervallo viene suddiviso in m sotto intervalli: il primo viene utilizzato per trasmettere il primo segnale, il secondo per trasmettere il secondo segnale, e così via. Nell'esempio in figura abbiamo m = 2, t = 2 µsec, b = 8 bit :

Da notare che nel multiplexing a divisione di frequenza non corrono il rischio di "disturbarsi" a vicenda; vale il seguente Principio Scientifico: "Due o più segnali che usano frequenze portanti differenti possono essere trasmesse simultaneamente su un singolo mezzo senza interferenze". Tra l'altro questo principio è lo stesso che permette alla TV via cavo di funzionare, pur avendo molteplici segnali televisivi ed un solo cavo.
Se la tecnica FDM viene applicata alla luce si parla di multiplexing a divisione d'onda (WDM, Wave Division Multiplexing) ed è la multiplazione adottata nei sistemi ottici di trasmissione.
Il multiplexing è fondamentale nelle reti di calcolatori.
L'incontro di due o più pacchetti sul mezzo di trasmissione determina una collisione e la perdita degli stessi, rendendoli di fatto non più utilizzabili. E' chiaro, pertanto, che la rete abbia bisogno di tecnologie appropriate per ridurre il numero di collisioni e massimizzare (in ogni caso) il numero di messaggi trasmessi in un secondo. Le tecniche di accesso multiplo si occupano di come ripartire le risorse tra le trasmissioni simultaneamente attive.
Nelle reti punto a punto, con due unità che hanno l'esclusivo accesso al mezzo di trasmissione, è molto più semplice conservare e proteggere le informazioni rispetto ad una rete condivisa. Tuttavia, le connessioni punto a punto non sono praticabili nelle reti attuali.
Il problema dell'accesso multiplo al mezzo di trasmissione si presenta in
molte aree, ad esempio:
- reti locali con cavi, in rame o fibra ottica, in cui le unità condividono lo
stesso cavo o "ether" (ved. reti locali)
- reti con telefoni cellulari, i cellulari all'interno della stessa cella
comunicano con la stessa stazione base e condividono lo spazio delle onde radio
- reti locali wireless, le unità alla portata del ricetrasmettitore condividono
lo stesso spazio di frequenze radio o infrarosso
- satelliti, principalmente geostazionari, in cui le unità trasmettono nello
stesso "spazio" al satellite stazionario
L'impiego di un metodo per risolvere i conflitti dipende dall'ambiente di
rete. In tal senso esistono dei vincoli, peculiarità di ciascuna rete, che
vanno rispettati:
- estensione limitata dello spettro, derivante dal fatto che una buona fetta
delle frequenze disponibili è già occupata da altri sistemi, applicabile alle
reti wireless e ai telefoni cellulari
- proprietà del collegamento radio, riguardante i problemi fisici delle onde
radio e dell'ambiente in cui si propagano (la presenza di grossi elementi può
determinare una degradazione del segnale, la ricezione da più sorgenti può
generare interferenze, ecc.)
- il rapporto tra massimo ritardo di propagazione dei dati (ovvero il tempo
necessario per rilevare un messaggio inviato dall'altra unità) ed il tempo di
percorrenza che è generalmente costante per tipologia di canale trasmissivo.
Le prestazioni di uno schema di accesso multiplo si possono valutare
attraverso:
- il throughput normalizzato o goodput, porzione della capacità del
canale utilizzata per i "nuovi" pacchetti (quelli non ritrasmessi). Il
valore ideale sarebbe 1,0 ma in molte reti è di fatto leggermente inferiore,
tra 0,95 e 1. Per calcolare questo valore occorre conoscere velocità o
larghezza della banda di collegamento, dimensione media di un pacchetto,
throughput di picco del collegamento.
- il ritardo medio, è il tempo che un pacchetto deve aspettare presso l'unità
trasmittente prima di essere trasmesso (dipende dal carico di lavoro e dal
canale)
- la stabilità, che riguarda la capacità di gestire eventuali aumenti di
traffico senza diminuire il valore di throughput
- l'equità, che riguarda la possibilità di fornire alle unità trasmittenti la
stessa opportunità di accesso al canale.
Esempio. Calcolare il valore di goodput di una rete caratterizzata dai
seguenti parametri: velocità di 10 Mbps, lunghezza media dei pacchetti di 250
byte, throughput di picco di 4000 pacchetti al secondo.
Soluzione: ogni pacchetto è formato da 250 byte/pacchetto × 8 bit = 2000
bit/pacchetto;
quindi la rete ha la capacità di trasportare 10 Mb/s : 2000 bit/pacchetto =
5000 pacchetti/secondo e dunque, tenendo conto del throughput di picco, si ha
goodput = 4000 pacchetti/secondo : 5000 pacchetti/secondo = 0,80 .
L'allocazione del canale fra i vari utenti può essere di due tipi:
In quest'ultimo caso occorre fare due ulteriori classificazioni:
Con la tecnica TDMA (Time Division Multiple Access) ad ogni utente viene assegnato periodicamente un intervallo (slot) in cui trasmette un pacchetto. Questa tecnica è utilizzata, tra l'altro, anche dal sistema cellulare di seconda generazione GSM (Global System for Mobile Communications), in cui ognuna delle sottobande da 200 KHz ha una portante con accesso TDMA.
Ulteriori tecniche sono le CDMA (Code Division Multiple Access) in cui le tecnologie a tempo ed a frequenza vengono combinate producendo un allargamento di spettro. Inizialmente utilizzate in ambito militare ma oggi utilizzate anche in applicazioni civili, soprattutto dove è richiesta una certa protezione.
Nei protocolli CSMA (Carrier Sense Multiple Access) le stazioni possono seguire strategie diverse per evitare collisioni, e comunque sono dotate di un meccanismo per controllare se il mezzo di trasmissione è correntemente occupato. Le modalità sono sostanzialmente le seguenti: aspettare il momento in cui il canale sia di fatto liberato e quindi trasmettere (in tal caso si dicono 1-persistenti), oppure aspettare un tempo random per verificare l'eventuale liberazione del canale con l'invio in caso di esito positivo (in tal caso si dicono Non-persistenti), o, infine, aspettare il prossimo slot (quindi nel caso di canali slotted) ed inviare con probabilità p in caso di liberazione del canale (in tal caso si dicono P-persistenti).
Il controllo della congestione è un problema globale di tutta la rete (il controllo di flusso, di cui si è parlato nel capitolo precedente riguarda una singola connessione). Quando c'è troppo traffico in un mezzo di trasmissione di una rete (causato da dispositivi/canali troppo lenti o capacità "mnemoniche" insufficienti del router - è il dispositivo che dirige il traffico) i pacchetti che tentano di immettersi nel mezzo subiscono dei ritardi, perché vengono a trovarsi in coda lungo una linea di collegamento (memoria buffer). Quando la capacità corrente di una rete comincia a raggiungere la capacità massima consentita dal mezzo si verifica la congestione della rete e la quantità di dati scambiata si riduce.
La capacità della rete che viene correntemente utilizzata è detta utilizzazione e viene di solito espressa come valore percentuale. Il ritardo effettivo di una rete può essere determinato attraverso la relazione
D = I / (1 - U)
dove I è il ritardo quando il mezzo di trasmissione è inattivo (idle), U è l'utilizzazione della rete espressa in percentuale e D è il ritardo effettivo.
Esempi. Se non c'è traffico in rete: U = 0 quindi D = I.
All'aumentare del traffico l'utilizzazione corrente U cresce e
quindi il ritardo effettivo D aumenta.
In generale una rete non dovrebbe mai operare a livelli superiori al 90%, ma se il numero di richieste è alto ed è quindi necessario avere ritardi più piccoli, il livello massimo di utilizzazione scende al 50%.
Nelle reti a commutazione di pacchetto la congestione è un problema perché i pacchetti possono accumularsi nel buffer.
|
Comportamenti di una
rete |
|
Gli approcci per la risoluzione del problema sono di due tipi:
Il local loop. E' il collegamento dal telefono alla più vicina centrale di commutazione (le altre connessioni, dalla centrale di commutazione al resto della rete, con cavi coassiali, fibre ottiche ecc. sono dette trunk); ancora oggi basato su doppino telefonico, di lunghezza 1-10 Km, che trasporta un segnale analogico di banda modesta (3 KH). Attraverso il modem i dati digitali sono trasformati in analogici, quindi ritrasformati in digitali nella centralina di commutazione dal codec (COder/DECoder, dispositivo per la codifica analogico/digitale e viceversa) e quindi subiscono le conversioni inverse sul local loop di destinazione.

La trasmissione digitale avviene utilizzando un ampio spettro di frequenze e, per poterla utilizzare sul local loop, a causa della banda ridotta, deve avere una velocità di trasmissione molto bassa (banda di 3 KH, 2 valori trasmessi => [per Nyquist] velocità massima di 6 Kbps) . Per evitare questo inconveniente si usa un'onda carrier modulata a più livelli: ad esempio modulando in ampiezza e fase in modo da rappresentare 16 = 24 valori diversi (la velocità viene quadruplicata).
Vi sono molte attività di sperimentazione e/o standard già disponibili per superare i limiti imposti dal local loop. I più importanti sono:
N.B.: La tecnologia ADSL rivoluziona il concetto di connessione cui siamo abituati: non è più necessaria una connessione dial-up in quanto con essa si stabilisce una connessione permanente.
| In figura: andamento e previsioni di crescita della tecnologia ADSL in Italia (in milioni). | ![]() |
Altre possibilità per superare i limiti imposti dal local loop riguardano la fruizione di servizi per la trasmissione dati, soluzione economicamente più vantaggiosa, il cui standard tecnologico più conosciuto è:
ISDN (Integrated Services Digital Network), tecnicamente è un insieme di standard per la trasmissione dei dati digitali. I servizi digitali sono forniti con possibilità di usufruirne in parallelo (telefono classico, computer, fax, ecc.) attraverso la disponibilità di canali in ingresso ed uscita a 64 Kbps, numero che può anche essere variabile per adattarsi alla rete telefonica esistente, ed un canale di servizio adibito al traffico di controllo. In Italia, secondo lo standard EURO-ISDN, esistono due modalità: accesso base (BRI o Basic Rate Interface) costituito da 2 canali a 64 Kbps che operano separatamente o insieme (uno per telefonare e laltro per i dati, oppure tutti e due per la trasmissione dati), accesso primario (PRI o Primary Rate Interface) costituito da 30 canali a 64 Kbps, ovvero una trasmissione dati complessiva di circa 2 Mbps (usato nelle dorsali telefoniche, non dai privati)
In questo discorso un ruolo fondamentale è anche rivestito dalla centrale di commutazione, ovvero l'ente che fornisce l'accesso alla rete. In Internet questo ente è genericamente indicato con ISP (Internet Service Provider) e si occupa da un lato di garantire l'accesso a tutti gli utenti, dall'altro di continuare a mantenere in funzione quella parte di rete che possiede.