Il modello OSI (Open Systems Interconnection) è un modello di riferimento utilizzato per comprendere e descrivere come funziona una rete di computer. È suddiviso in sette livelli o strati, ognuno dei quali svolge una specifica funzione all’interno del processo di comunicazione. Durante questa lezione, esamineremo ciascuno dei sette strati del modello OSI, dalla parte superiore (livello 7) a quella inferiore (livello 1).
Standard
Il modello OSI (Open Systems Interconnection) è stato sviluppato dall’International Organization for Standardization (ISO) ed è il risultato di un progetto a lungo termine finalizzato a creare un framework standardizzato per le reti di computer. Il processo di sviluppo del modello OSI ha richiesto diversi anni ed è iniziato negli anni ’70 con l’obiettivo di fornire una base concettuale comune per la progettazione delle reti e per facilitare l’interoperabilità tra dispositivi e sistemi provenienti da fornitori diversi.
Negli anni ’70, il mondo stava assistendo a una crescita esplosiva delle reti di computer e all’espansione delle comunicazioni tra sistemi informatici. Le reti stavano diventando sempre più complesse, e c’era una crescente necessità di standard che potessero consentire a diverse organizzazioni di comunicare tra loro in modo coerente e affidabile.
L’ISO (International Organization for Standardization) è un’organizzazione internazionale che sviluppa standard in vari settori, comprese le tecnologie dell’informazione e delle comunicazioni. L’ISO ha avviato un progetto per sviluppare uno standard di rete globale, chiamato “ISO/OSI,” che avrebbe stabilito un modello di riferimento per le reti.
Gli sforzi per sviluppare il modello OSI hanno coinvolto esperti da tutto il mondo. Il modello è stato diviso in sette strati, ognuno dei quali svolge una funzione specifica nell’ambito della comunicazione di rete. Questi strati sono, nell’ordine dall’alto verso il basso: Applicazione, Presentazione, Sessione, Trasporto, Rete, Collegamento Dati e Fisico.
Anche se il modello OSI non è stato ampiamente implementato come tale, ha avuto un impatto significativo nell’industria delle reti. Ha fornito una base teorica che ha influenzato lo sviluppo di numerosi protocolli e standard di rete, tra cui il protocollo TCP/IP, che è diventato il pilastro di Internet
Architettura a strati
Un’architettura a strati, nota anche come architettura a livelli, è un approccio di progettazione che suddivide un sistema complesso in componenti o livelli distinti, ognuno dei quali svolge una funzione specifica e comunica con gli strati adiacenti attraverso interfacce ben definite. Questa suddivisione in strati rende il sistema più modulare, facilitando la progettazione, lo sviluppo e la manutenzione. L’architettura a strati è ampiamente utilizzata in vari settori, tra cui l’informatica, le reti, i sistemi embedded, il software e molti altri. Ecco le caratteristiche proprie di un’architettura a strati:
- Separazione delle responsabilità: Ogni strato ha un compito specifico e definito. Questa separazione delle responsabilità semplifica la progettazione, in quanto ciascun strato può concentrarsi su un aspetto particolare del sistema.
- Interfacce ben definite: Gli strati comunicano tra loro attraverso interfacce chiaramente definite. Questo consente una comunicazione standardizzata tra gli strati e facilita la sostituzione o l’aggiornamento di uno strato senza influire sugli altri.
- Modularità: Gli strati sono moduli indipendenti, il che consente una maggiore flessibilità. È possibile aggiungere, rimuovere o sostituire strati senza dover riscrivere l’intero sistema.
- Isolamento degli errori: Se si verifica un problema in uno strato, l’architettura a strati limita la propagazione degli errori agli altri strati. Ciò contribuisce a migliorare la robustezza del sistema.
- Riutilizzo del codice: Gli strati possono essere progettati in modo che siano riutilizzabili in diversi contesti. Ad esempio, una libreria di funzioni a un certo livello può essere utilizzata in più applicazioni.
- Facilità di sviluppo collaborativo: L’architettura a strati favorisce lo sviluppo collaborativo poiché diversi team possono lavorare su strati diversi del sistema senza interferire l’uno con l’altro.
- Manutenzione semplificata: Quando è necessario apportare modifiche o correzioni a un sistema basato su architettura a strati, è più semplice identificare e risolvere problemi in uno strato senza influire sugli altri.
- Scalabilità: L’architettura a strati facilita l’aggiunta di nuovi strati per migliorare o estendere le funzionalità del sistema, rendendo il sistema scalabile.
Strati del modello OSI
Livello 1: Strato Fisico
Definisce le caratteristiche dei segnali e dei dispositivi necessari per connettere due o più DTE mediante il mezzo trasmissivo visto come un canale pronto a trasportare segnali elettrici o ottici, prodotti dalla trasformazione fisica dell’informazione che i DTE devono trasmettersi.
- caratteristiche meccaniche
- caratteristiche elettriche
- regole di attivazione e disattivazione del collegamento
- caratteristiche dei cavi e dei connettori
- operazioni di multiplazione e modulazione
Livello 7: Strato Applicazione
- Questo è il livello più alto del modello OSI ed è responsabile delle applicazioni e dei servizi visibili agli utenti.
- Include protocolli come HTTP (per il web), SMTP (per la posta elettronica) e FTP (per il trasferimento di file).
Livello 6: Strato Presentazione
- Questo strato gestisce la traduzione, la cifratura e la compressione dei dati, in modo che possano essere compresi da applicazioni diverse.
- Ad esempio, può tradurre dati da un formato a un altro.
Livello 5: Strato Sessione
- Questo strato è responsabile dell’avvio, della gestione e della terminazione delle sessioni di comunicazione tra dispositivi.
- Può includere la gestione della sincronizzazione tra le applicazioni in comunicazione.
Livello 4: Strato Trasporto
- Il livello di trasporto si occupa del trasferimento dei dati tra le sorgenti e le destinazioni, assicurandosi che i dati siano consegnati in modo affidabile e nell’ordine corretto.
- I protocolli più comuni a questo livello sono TCP (Transmission Control Protocol) e UDP (User Datagram Protocol).
Livello 3: Strato Rete
- Il livello di rete gestisce il routing dei dati attraverso la rete, compresa la determinazione del percorso migliore da seguire per raggiungere la destinazione.
- I protocolli di routing, come IP (Internet Protocol), operano a questo livello.
Livello 2: Strato Collegamento Dati
- Questo strato è responsabile della suddivisione dei dati in frame (quadri) e del controllo di accesso al mezzo (MAC) su reti locali.
- I protocolli come Ethernet e Wi-Fi operano a questo livello.