Tecnologia di Internet
 
Reti a commutazione di pacchetto
Commutazione di pacchetto

Livello OSI di riferimento: fisico

Internet è basata su tre principali idee, che la caratterizzano. Queste idee sono
  • Il modello client/server
  • L’insieme dei protocolli TCP/IP (livelli OSI trasporto e rete)
  • La commutazione di pacchetto (livello OSI fisico)

La commutazione di pacchetto (packet switching) è l’idea chiave che permette a Internet di funzionare anche in condizioni avverse, cioè di essere “robusta” (che in informatica, significa “poco vulnerabile agli errori”), garantendo, per esempio, che ogni e-mail spedita arrivi a destinazione integra, senza omissioni.

L'idea della rete a commutazione di pacchetto è di Leonard Kleinrock e risale all’inizio degli anni 60.

Il traffico da computer a computer ha caratteristiche diverse dalla conversazione telefonica. Quando due persone parlano tra loro il colloquio avviene in maniera continua, e non è normale che ci siano vuoti di comunicazione di parecchi minuti. Nel caso dei computer questi vuoti sono la regola: dopo aver spedito un insieme di dati ci può essere silenzio per i prossimi 30 minuti. Il traffico umano richiede l’uso continuo di un canale a banda stretta mentre il traffico tra computer richiede l’uso intermittente di una canale a banda larga e ad alta affidabilità.

Gli impianti telefonici, progettati per il traffico umano, sono basati sulla tecnologia a commutazione di circuito (circuit switching). Quando si fa una telefonata il circuito di commutazione cerca una connessione fisica dal telefono del chiamante a quello del ricevente. Nei primi giorni della telefonia, questa connessione veniva fatta a mano dalle centraliniste con un cavetto tra le prese di ingresso e uscita. La commutazione di circuito richiede che ci sia un collegamento tra i due estremi prima che possa essere trasmesso il segnale.

Nella commutazione di pacchetto (packet switching) non si realizza un circuito fisico tra trasmettitore e ricevitore. Invece, quando il trasmettitore ha un blocco di dati da spedire, lo divide in blocchi più piccoli (pacchetti) che vengono trasmessi indipendentemente, uno alla volta, alla destinazione.

Pacchetto

Livello OSI di riferimento: link.

Ogni pacchetto potrebbe essere di 1 Kbyte (= 1024 byte), cioè circa mille caratteri. Un messaggio viene quindi diviso in centinaia o migliaia di singoli pacchetti.

Ogni pacchetto viene completato con una testata (header) che contiene la seguenti informazioni

  • Mittente: l’indirizzo IP del computer che spedisce il pacchetto
  • Destinatario: l’indirizzo IP del computer a cui il pacchetto viene spedito.
  • Lunghezza: la lunghezza del pacchetto in byte.
  • Numero: il numero totale di pacchetti nel messaggio completo.
  • Sequenza: il numero di sequenza del pacchetto nella lista dei pacchetti del messaggio.

Queste informazioni consentono a un router di ricevere il pacchetto e di trasferirlo verso la destinazione.Non appena il pacchetto arriva a destinazione, il computer può leggere il suo header per sapere di quanti pacchetti è composto l’intero messaggio. Questo gli consente di determinare quali pacchetti sono stati persi e chiedere la ritrasmissione dei pacchetti mancanti. Alla fine tutti i pacchetti vengono recuperati.

Per aumentare l’affidabilità, ogni header di pacchetto contiene anche un codice di correzione errori (error correction code). Si tratta di un numero che rappresenta una combinazione matematica degli altri dati del pacchetto: qualcosa d simile alla prova del nove. Se anche un singolo bit viene, per errore, modificato in un router o in una connessione di rete, il codice di correzione calcolato non corrisponde a quello memorizzato nell’header del pacchetto. In tal caso il pacchetto viene scartato e ne viene chiesta la ritrasmissione.

Router

Livello OSI di riferimento: rete.

Le comunicazioni su Internet sono controllate da apparecchiature di instradamento dette router. Questa apparecchiature sono posizionate nei punti di incrocio di due reti e a loro è affidato il compito di trasmettere i dati a una rete o all’altra secondo la loro destinazione finale. Per fare questo utilizzano sofisticati protocolli di instradamento, che consentono di far avanzare i pacchetti anche in condizioni sfavorevoli.

I routers infatti decidono la strada da seguire per far avanzare il pacchetto, in modo tale da evitare connessioni cadute o inaffidabili. Questa comunicazione avviene ad alta velocità e ciò consente di trasmettere affidabilmente e velocemente messaggi anche attraverso reti parzialmente danneggiate.

La trasmissione di un messaggio (suddiviso in quattro pacchetti) da un computer (a sinistra) a un altro (a destra). Ogni cerchio è un router che, all’arrivo di un pacchetto, decide la strada lungo la quale farlo proseguire

Quando un computer comunica con un altro computer, mette l’indirizzo del destinatario dell’header di ogni pacchetto e lo spedisce al router più vicino che utilizza un algoritmo di instradamento per trasmettere il pacchetto al computer di destinazione.

In pratica tutti i pacchetti di un messaggio vengono spediti sequenzialmente lunga la strada ritenuta più affidabile.

Dorsali

Il segmento principale della rete è il backbone (dorsale). Esistono dei national/international backbone providers (BBN/GTE, Sprint, AT&T, IBM, UUNet) interconnect (peer) with each other privately, or at public Network Access Point (NAPs). regional ISPs connect into NBPs local ISP, company connect into regional ISPs.

Dorsali internazionali, nazionali, regionali, locali

Indirizzamento dei router

The subnet is part of the network identified by the network number, but only those hosts that are on the same subnet can communicate without a router. Members of different subnets will not see each other’s local broadcasts, and they will need to go through a router to communicate, even though they may be on the same network.
La commutazione di pacchetto e gli indirizzi IP determinano una infrastruttura che gli algoritmi di routing possono usare per trasmettere pacchetti da un computer all’altro.
Un router è tipicamente connesso a reti diverse. Una società avrà diversi routers che collegano le varie sottoreti locali e un router che collega la rete interna a Internet.
Ad ogni router viene assegnato un indirizzo IP e una maschera di sottorete che determina l’intervallo di indirizzi che il router controlla. Ecco un esempio.

Un esempio di suddivisione di reti mediante route

Al top c’è la dorsale (backbone) che collega tutti i computer e i router del mondo. Collegato alla dorsale c’è un router il cui indirizzo e maschera di sottorete sono

    11001101.10010100.00000011.00000001
    205.158.3.1

    11111111.11111111.11111111.00000000
    255.255.255.0

Gli indirizzi di rete e di broadcast sono

    11001101.10010100.00000011.00000000
    205.158.3.0

    11001101.10010100.00000011.11111111
    205.158.3.255

il che significa che il router controlla i 254 indirizzi della sottorete 205.158.3.0, da 205.158.3.1 (router stesso) a 205.158.3.254..

Un livello più sotto c’è un altro router con indirizzo e maschera di sottorete

    11001101.10010100.00000011.00010001
    205.158.3.17

    11111111.11111111.11111111.11110000
    255.255.255.240

L’indirizzo della sottorete a cui appartiene questo router, e l’indirizzo di broadcast sono

    11001101.10010100.00000011.00010000
    205.158.3.16

    11001101.10010100.00000011.00011111
    205.158.3.31

e quindi in questa sottorete ci possono essere le 14 macchine i cui indirizzi vanno da 205.158.3.17 (router stesso) a 205.158.3.30.

Quando il computer 205.158.3.20 vuole mettersi in contatto con

  • il computer 205.158.3.21, lo trova all’interno della propria sottorete e il contatto è immediato
  • il computer 205.158.3.36, non lo trova nella propria sottorete e allora si rivolge al router 205.158.3.17 che trasferisce la richiesta al router 205.158.3.33, il quale provvede a contattare il computer 205.158.3.36
  • il computer 205.158.15.1, non lo trova nella propria sottorete né nelle reti al suo stesso livello e quindi si rivolge al router 205.158.3.1 che lo cerca in un’altra rete
   

Home | Commenti a Mauro Boscarol | Ultimo aggiornamento 28 gennaio 2001