Ci sono due fatti importanti sul modello OSI da ricordare:
È un modello concettuale. Ciò significa che descrive un gruppo idealizzato, astratto, teorico di funzioni di rete. Non descrive nulla di ciò che qualcuno ha effettivamente costruito (almeno nulla che è in uso oggi).
Non è l'unico modello. Esistono altri modelli, in particolare la suite di protocolli TCP / IP (RFC-1122 e RFC-1123), che è molto più vicina a quella attualmente in uso.
Un po 'di storia: probabilmente avete sentito tutti parlare dei primi tempi della rete di pacchetti, tra cui ARPANET, il predecessore di Internet. Oltre agli sforzi del Dipartimento della Difesa degli Stati Uniti per creare protocolli di rete, sono stati coinvolti anche molti altri gruppi e società. Ogni gruppo stava sviluppando i propri protocolli nel nuovissimo campo del cambio di pacchetti. IBM e le compagnie telefoniche stavano sviluppando i propri standard. In Francia, i ricercatori stavano lavorando al proprio progetto di rete chiamato Cicladi.
Il lavoro sul modello OSI iniziò alla fine degli anni '70, principalmente come reazione alla crescente influenza di grandi aziende come IBM, NCR, Burroughs, Honeywell (e altri) e i loro protocolli e hardware proprietari. L'idea alla base era quella di creare uno standard aperto che garantisse l'interoperabilità tra diversi produttori. Ma poiché il modello ISO era di portata internazionale, aveva molti interessi politici, culturali e tecnici in competizione. Ci sono voluti ben sei anni per raggiungere il consenso e pubblicare gli standard.
Nel frattempo, è stato sviluppato anche il modello TCP / IP. Era semplice, facile da implementare e, soprattutto, era gratuito. Per creare il software è stato necessario acquistare le specifiche standard OSI. Tutti gli sforzi di attenzione e sviluppo gravitavano su TCP / IP. Di conseguenza, il modello OSI non è mai stato implementato come un insieme di protocolli e TCP / IP è diventato lo standard per Internet.
Il punto è, tutti i protocolli in uso oggi, la suite TCP / IP; protocolli di routing come RIP, OSPF e BGP; e protocolli del sistema operativo host come Windows SMB e Unix RPC, sono stati sviluppati senza pensare al modello OSI. A volte hanno qualche somiglianza con esso, ma gli standard OSI non sono mai stati seguiti durante il loro sviluppo. Quindi è una folle commissione cercare di adattare questi protocolli all'OSI. Non si adattano esattamente.
Ciò non significa che il modello non abbia valore; è comunque una buona idea studiarlo in modo da poter comprendere i concetti generali. Il concetto dei livelli OSI è così intrecciato nella terminologia della rete, che parliamo dei livelli 1, 2 e 3 nel discorso di rete quotidiano. La definizione dei livelli 1, 2 e 3 è, se strizza gli occhi un po ', abbastanza d'accordo. Solo per questo motivo, vale la pena saperlo.
Le cose più importanti da capire sul modello OSI (o qualsiasi altro) sono:
- Possiamo dividere i protocolli in livelli
- I livelli forniscono l'incapsulamento
- Gli strati forniscono astrazione
- Gli strati disaccoppiano le funzioni dagli altri
Dividere i protocolli in strati ci consente di parlare separatamente dei loro diversi aspetti. Rende i protocolli più facili da capire e da risolvere. Siamo in grado di isolare facilmente funzioni specifiche e raggrupparle con funzioni simili di altri protocolli.
Ogni "funzione" (in senso lato) incapsula i livelli sopra di essa. Il livello di rete incapsula i livelli sopra di esso. Il livello di collegamento dati incapsula il livello di rete e così via.
I livelli astraggono i livelli sottostanti. Il tuo browser web non ha bisogno di sapere se stai usando TCP / IP o qualcos'altro a livello di rete (come se ci fosse qualcos'altro). Per il tuo browser, i livelli inferiori forniscono solo un flusso di dati. La modalità di visualizzazione dello stream viene nascosta dal browser. TCP / IP non sa (o cura) se stai usando Ethernet, un modem via cavo, una linea T1 o un satellite. Elabora solo i pacchetti. Immagina quanto sarebbe difficile progettare un'applicazione che dovrebbe occuparsi di tutto ciò. Gli strati astraggono gli strati inferiori, quindi la progettazione e il funzionamento del software diventano molto più semplici.
Disaccoppiamento: in teoria, è possibile sostituire una tecnologia specifica con un'altra nello stesso livello. Finché il layer comunica con quello sopra e quello sotto allo stesso modo, non dovrebbe importare come è implementato. Ad esempio, possiamo rimuovere il noto protocollo di livello 3, IP versione 4, e sostituirlo con IP versione 6. Tutto il resto dovrebbe funzionare esattamente allo stesso modo. Per il tuo browser o il tuo modem via cavo, non dovrebbe fare alcuna differenza.
Il modello TCP / IP è quello su cui si basava la suite di protocolli TCP / IP (sorpresa!). Ha solo quattro livelli e tutto quanto sopra è solo "applicazione". È più semplice da capire e impedisce infinite domande come "È questo livello di sessione o livello di presentazione?" Ma anche questo è solo un modello e alcune cose non ' Non si adatta bene nemmeno a questo, come i protocolli di tunneling (GRE, MPLS, IPSec per citarne alcuni).
In definitiva, i modelli sono un modo per rappresentare idee astratte invisibili come indirizzi, pacchetti e bit. Se lo si tiene a mente, il modello OSI o TCP / IP può essere utile per comprendere la rete.