gl/ripetizioni

Modello ISO/OSI e TCP/IP: i livelli spiegati

I sette livelli ISO/OSI e i quattro del TCP/IP con un pacchetto seguito passo passo, i dispositivi di ogni livello e gli esercizi tipici della verifica.

di Gaetano Livornese

  • #informatica
  • #terza superiore
  • #tecnico
  • #iso/osi
  • #tcp/ip
  • #reti

Fine settembre 2026, articolazione Informatica e telecomunicazioni: in terza, Sistemi e reti è una materia nuova rispetto al biennio, ed è appena partita con i fondamenti (segnali, mezzi trasmissivi, protocolli). Dopo questa introduzione arriva, fra ottobre e novembre, il primo vero blocco teorico: il modello a livelli, ISO/OSI e TCP/IP. La prima verifica scritta su questo argomento cade tipicamente fra fine novembre e metà dicembre — fra sei e dieci settimane da adesso. La stessa pila di protocolli, con un taglio più applicativo, torna anche in quinta alle scienze applicate, quando si arriva a reti, IP e crittografia: capirla bene adesso, nei fondamenti, evita di doverla reimparare da zero più avanti.

Se in terza hai già affrontato la CPU e il ciclo macchina (ne parlo in Architettura di Von Neumann e CPU), qui il salto è di prospettiva: non guardi più dentro un singolo calcolatore, ma come due calcolatori diversi si mettono d’accordo per scambiarsi dati attraverso una rete che nel mezzo non sa nulla del contenuto che sta trasportando.

Perché serve un modello a livelli

Far comunicare due dispositivi è un problema enorme se lo si affronta tutto insieme: bisogna occuparsi di segnali elettrici, di indirizzamento, di errori di trasmissione, del significato dei dati applicativi, tutto contemporaneamente. Il modello a livelli spezza il problema in strati separati, ciascuno responsabile di un compito preciso, che comunica solo con lo strato immediatamente sopra e sotto di sé attraverso un’interfaccia definita. Un livello non ha bisogno di sapere come lavora quello sottostante: gli basta sapere che, se gli passa dei dati, quello glieli farà arrivare a destinazione. È lo stesso principio con cui, in Sistemi, si progetta un programma a moduli: ogni modulo fa una cosa, e agli altri non interessa come.

I sette livelli ISO/OSI

Il modello ISO/OSI (Open Systems Interconnection) è il riferimento teorico, con sette livelli. Dal più vicino all’utente al più vicino al cavo:

#LivelloFunzioneEsempio di protocollo
7ApplicazioneFornisce i servizi di rete alle applicazioni (posta, web, trasferimento file)HTTP, FTP, SMTP, DNS
6PresentazioneTraduce, cifra, comprime i dati in un formato comuneSSL/TLS, formati come JPEG
5SessioneApre, gestisce e chiude la sessione di comunicazione fra due hostNetBIOS, RPC
4TrasportoGarantisce (o no) la consegna affidabile, gestisce porte e segmentazioneTCP, UDP
3ReteInstrada i pacchetti fra reti diverse tramite indirizzi logiciIP
2Collegamento (Data Link)Organizza i bit in frame, gestisce indirizzi fisici e controllo d’errore localeEthernet, Wi-Fi
1FisicoTrasmette i singoli bit come segnali elettrici, luminosi o radiocavi, connettori, segnali

Un modo comune per ricordare l’ordine dal livello 1 al 7 è la mnemonica “Fatti Da Ridere, Tanti Sono Pazzi Ancora” (Fisico, Data link, Rete, Trasporto, Sessione, Presentazione, Applicazione): aiuta a non saltare un livello quando li devi elencare a memoria in verifica.

Il modello TCP/IP: quattro livelli, non sette

Il modello TCP/IP è quello realmente usato da internet, ed è più snello: quattro livelli invece di sette, perché accorpa alcune funzioni dell’ISO/OSI che nella pratica non hanno bisogno di essere separate.

Livello TCP/IPLivelli ISO/OSI corrispondenti
ApplicazioneApplicazione + Presentazione + Sessione (7, 6, 5)
TrasportoTrasporto (4)
InternetRete (3)
Accesso alla rete (o Host-to-network)Collegamento + Fisico (2, 1)

Il punto da fissare per la verifica: l’ISO/OSI è un modello di riferimento teorico, usato soprattutto per insegnare e per confrontare architetture diverse; il TCP/IP è il modello effettivamente implementato su cui gira internet. Non sono due pile alternative in competizione: il TCP/IP è, storicamente e praticamente, una versione più pratica dello stesso principio di separazione in livelli.

Le unità dati: come si chiama il “pacchetto” a ogni livello

Un errore comune è chiamare “pacchetto” qualunque cosa venga scambiata a qualsiasi livello. In realtà l’unità dati (PDU, Protocol Data Unit) cambia nome a seconda del livello:

  • livello Applicazione: dati (o messaggio)
  • livello Trasporto: segmento (TCP) o datagramma (UDP)
  • livello Rete: pacchetto
  • livello Collegamento: frame
  • livello Fisico: bit

“Pacchetto”, nel linguaggio rigoroso della materia, è solo l’unità del livello di Rete (3). Usarlo per un frame o per un segmento è impreciso, ed è uno dei dettagli che un compito ben corretto penalizza.

Indirizzi: MAC, IP, porta

Ogni livello che ha bisogno di identificare un interlocutore usa un tipo di indirizzo diverso, e la differenza è un altro punto centrale della verifica:

  • Indirizzo MAC (Media Access Control, livello 2): un identificativo di 48 bit, scritto in esadecimale, assegnato in fabbrica alla scheda di rete. Identifica un dispositivo su una rete locale, non ha significato al di fuori di essa.
  • Indirizzo IP (livello 3): identifica un dispositivo in modo univoco su tutta la rete, comprese reti diverse collegate fra loro. È l’indirizzo che permette l’instradamento (routing) fra reti — l’argomento che approfondisco a parte in Indirizzi IP e subnetting in quarta, quando in quarta si entra nel dettaglio delle maschere di sottorete.
  • Porta (livello 4): un numero da 0 a 65535 che identifica, all’interno di uno stesso host, quale applicazione o servizio deve ricevere i dati (per esempio la porta 80 per HTTP, la 443 per HTTPS).

Un errore tipico è confondere questi tre livelli di indirizzamento: il MAC risponde alla domanda “quale scheda di rete”, l’IP a “quale host in quale rete”, la porta a “quale applicazione su quell’host”.

Dispositivi: a quale livello lavorano

Ogni dispositivo di rete “vede” solo fino a un certo livello, e questo determina cosa può fare:

  • Hub (livello 1): ripete il segnale elettrico su tutte le porte, senza leggere nessun indirizzo. Non fa scelte: tutto il traffico va ovunque.
  • Switch (livello 2): legge l’indirizzo MAC di destinazione nel frame e inoltra il traffico solo sulla porta giusta, imparando quali dispositivi sono collegati a quali porte.
  • Router (livello 3): legge l’indirizzo IP di destinazione nel pacchetto e decide su quale rete instradarlo, collegando reti diverse fra loro.

La differenza fra switch e router è probabilmente la domanda più ricorrente su questo argomento: uno switch smista dentro la stessa rete locale guardando i MAC, un router collega reti diverse guardando gli IP.

Incapsulamento: seguire un pacchetto passo passo

Il concetto più importante di tutto il blocco è l’incapsulamento: ogni livello, scendendo, aggiunge un proprio header (un’intestazione) ai dati ricevuti dal livello superiore, senza modificarne il contenuto. Seguiamo cosa succede quando apri una pagina web, dal livello Applicazione fino al cavo:

  1. Applicazione: il browser genera una richiesta HTTP (per esempio GET /index.html). Sono i dati “puri” da trasmettere.
  2. Trasporto: il livello TCP aggiunge il proprio header davanti ai dati HTTP. L’header TCP contiene, fra le altre cose, la porta sorgente e la porta di destinazione (la 80, o la 443 per HTTPS), oltre ai numeri di sequenza che garantiscono la consegna ordinata. Il risultato si chiama segmento.
  3. Rete: il livello IP aggiunge un proprio header al segmento TCP, con l’indirizzo IP sorgente e quello di destinazione. Il risultato si chiama pacchetto.
  4. Collegamento: il livello Ethernet aggiunge un header con gli indirizzi MAC sorgente e destinazione (più un trailer di controllo d’errore in coda). Il risultato si chiama frame.
  5. Fisico: il frame viene trasmesso come sequenza di bit, segnali elettrici sul cavo di rete.

Il dato originale, quindi, arriva al cavo “avvolto” in quattro strati di header, uno per livello — un po’ come una lettera messa in una busta, poi in un pacco, poi in un contenitore. Dal lato ricevente avviene il processo inverso, il decapsulamento: ogni livello toglie il proprio header e passa il resto verso l’alto, fino a consegnare all’applicazione solo i dati HTTP originali.

Il dettaglio da non perdere: quando un router riceve un pacchetto per instradarlo verso un’altra rete, toglie e ricostruisce l’header di livello 2 (il frame, con nuovi indirizzi MAC validi per il prossimo tratto di rete), ma lascia invariati gli indirizzi IP e tutto quello che c’è sopra il livello 3 (dell’header IP aggiorna solo il TTL, che scende di 1 a ogni router, e il relativo checksum). Gli indirizzi MAC cambiano a ogni salto fra un dispositivo e l’altro; gli indirizzi IP restano gli stessi dalla sorgente alla destinazione finale.

TCP e UDP: due protocolli di trasporto molto diversi

Entrambi lavorano al livello Trasporto, ma con filosofie opposte:

  • TCP (Transmission Control Protocol): orientato alla connessione, garantisce che i dati arrivino tutti, nell’ordine giusto, e ritrasmette quelli persi. Costa in termini di header più pesante e di scambi preliminari (l’apertura della connessione), ma è affidabile — usato per web, email, trasferimento file, dove perdere un pezzo di dati non è accettabile.
  • UDP (User Datagram Protocol): senza connessione, non garantisce né l’ordine né la consegna, ma è più leggero e veloce. Usato dove la velocità conta più dell’affidabilità totale — streaming video, videochiamate, giochi online, dove un pacchetto perso ogni tanto è meno grave di un ritardo.

Un errore tipico è pensare che UDP sia “TCP fatto male”: sono scelte di progetto diverse per esigenze diverse, non una versione peggiore della stessa cosa.

Errori tipici

ErroreCome te ne accorgi
Chiamare “pacchetto” qualunque unità dati, a qualsiasi livelloIl pacchetto è solo l’unità del livello di Rete (3); sotto è frame, sopra è segmento/datagramma
Confondere switch e routerLo switch lavora al livello 2 con i MAC dentro la stessa rete; il router lavora al livello 3 con gli IP fra reti diverse
Pensare che il router cambi gli indirizzi IPIl router ricostruisce l’header di livello 2 a ogni salto; nell’header IP gli indirizzi sorgente e destinazione restano gli stessi (cambia solo il TTL)
Trattare TCP/IP e ISO/OSI come due pile alternative in competizioneTCP/IP è il modello realmente implementato; ISO/OSI è il riferimento teorico a sette livelli, usato per studiare e confrontare
Pensare che UDP sia solo “TCP senza qualcosa”Sono protocolli con obiettivi diversi: affidabilità totale (TCP) contro velocità e basso overhead (UDP)

Tre esercizi svolti

1. A quale livello lavora un dispositivo? Un tecnico deve collegare fra loro due reti locali diverse, facendo in modo che i dispositivi di una rete raggiungano quelli dell’altra. Quale dispositivo serve, e a quale livello ISO/OSI lavora?

Serve un router, che lavora al livello 3 (Rete). Uno switch non basterebbe: uno switch smista il traffico dentro una stessa rete locale guardando gli indirizzi MAC, ma non sa instradare fra reti diverse — quella è esattamente la funzione del livello di Rete, che ragiona in termini di indirizzi IP e di reti distinte.

2. Cosa succede agli header attraversando un router? Un pacchetto IP viaggia dalla sorgente A alla destinazione B, passando attraverso due router intermedi. L’header IP (con gli indirizzi IP di A e B) resta lo stesso per tutto il tragitto? E l’header di livello 2 (Ethernet, con gli indirizzi MAC)?

Gli indirizzi dell’header IP restano invariati per tutto il percorso (l’unico campo che cambia è il TTL, decrementato da ogni router): l’header contiene l’indirizzo IP sorgente (A) e destinazione (B), che non cambiano finché il pacchetto non arriva a destinazione. L’header di livello 2, invece, viene ricostruito a ogni salto: ogni router, quando riceve il frame, lo decapsula fino al livello 3, decide su quale interfaccia instradare il pacchetto, e lo reincapsula in un nuovo frame con gli indirizzi MAC del router stesso e del prossimo dispositivo lungo quel tratto di rete. Gli indirizzi MAC quindi cambiano ad ogni tratto (hop), gli indirizzi IP restano quelli degli host finali.

3. Classificare i protocolli per livello. Dati i protocolli HTTP, TCP, IP ed Ethernet, indicare a quale livello ISO/OSI appartiene ciascuno e in quale ordine vengono aggiunti i rispettivi header durante l’incapsulamento di una richiesta web.

  • HTTP: livello 7 (Applicazione) — genera i dati originali, senza header aggiuntivi propri di livello inferiore.
  • TCP: livello 4 (Trasporto) — aggiunge il proprio header per primo, subito sotto i dati HTTP, includendo le porte sorgente e destinazione.
  • IP: livello 3 (Rete) — aggiunge il proprio header attorno al segmento TCP, includendo gli indirizzi IP sorgente e destinazione.
  • Ethernet: livello 2 (Collegamento) — aggiunge l’header (e il trailer) per ultimo, includendo gli indirizzi MAC, prima che il tutto venga trasmesso come bit sul livello Fisico.

L’ordine di incapsulamento è quindi HTTP → TCP → IP → Ethernet, dall’alto verso il basso della pila: è esattamente il percorso che un pacchetto reale segue quando apri una pagina web.

Su questo argomento non c’è ancora una simulazione dedicata

Sistemi e reti, a differenza di matematica e fisica, non ha oggi un simulatore di verifica dedicato sul sito. Trovi comunque tutte le simulazioni disponibili, sulle altre materie, in /simulazioni/.

Se questo è il primo blocco teorico pesante di Sistemi e reti, il passo successivo, in quarta, è entrare nel dettaglio degli indirizzi IP e del subnetting: ne parlo in Indirizzi IP e subnetting in quarta al tecnico. Per il resto del programma di informatica, trovi tutto in /materie/informatica/.

Se vuoi una mano a fissare bene il modello a livelli prima della verifica, la prima chiamata conoscitiva è gratuita e dura mezz’ora.

Continua a leggere

Post correlati.

Vuoi applicare quello che hai letto?

Parliamone 30 minuti gratis: guardiamo insieme dove sei bloccato e ti dico onestamente come posso aiutarti.

Oppure scrivimi su WhatsApp.