Passa ai contenuti principali

Qualcuno si ricorda del modello OSI ?

Fino a qualche anno fa ogni testo o corso di Reti di Calcolatori iniziava immancabilmente con la descrizione del cosiddetto "modello ISO/OSI". Per molti, molti anni chiunque avesse a che fare con il networking si trovava a che fare con la cosiddetta "pila dei 7 livelli ISO/OSI":


Oggi del modello OSI non se ne parla più, giustamente. Quando ho iniziato a tenere il corso di Reti ne ho parlato anch'io molto brevemente, se non ricordo male solo per le prime due edizioni. Poi ho smesso completamente di farlo---e devo dire di sentirmi orgoglioso per avere smesso di trattarlo così presto. Un recente articolo su IEEE Spectrum racconta la storia del modello OSI in modo molto ameno e leggibile ("The Internet that wasn't", accessibile solo dalla rete di ateneo).

Io sono, diciamo così, passato attraverso tutte le fasi del modello. Quando ero uno studente dell'ultimo anno di Ingegneria Elettronica (1988/89) il modello OSI ci veniva presentato come un mondo fantastico ed inevitabileappena dietro l'angolo---non esisteva ancora ma sarebbe esistito molto presto ed ovunque.

Per capire perché OSI avrebbe creato un mondo fantastico, occorre tenere presente che a quei tempi Internet era praticamente inesistente:
  1. Pochissime organizzazioni avevano una network. C'erano solo i minicomputer (macchine con una decina di terminali a caratteri) ed i primissimi PC o Mac. Quasi mai erano collegati ad una network.
  2. Inoltre, network diverse erano quasi sempre isolate tra loro.
L'invio di messaggi da una network ad un'altra era complicatissimo perché era difficile trovare un protocollo adatto ad entrambe le network e del quale esistessero due implementazioni (una per ogni network) in grado di essere eseguite sul nodo gateway (oggi lo chiamiamo router).

Inoltre, perché mai uno doveva fare una cosa così complicata e costosa ? La comunicazione tra nodi è utile solo se i nodi eseguono applicazioni in grado di cooperare tra di loro, il che richiede altri protocolli ed altre implementazioni. A quei tempi non c'era nulla di tutto questo. In pratica, il massimo che si riusciva a fare era trasferire un file da un nodo all'altro. Qualcosa che si riusciva a fare anche con i floppy disk.

OSI era la promessa di un mondo fantastico, in cui magicamente tutte le network avrebbero potuto essere collegate tra di loro ed i relativi software avrebbero potuto cooperare a tutti i livelli di astrazione. Qualcosa che oggi è normalissimo ma a quei tempi era, appunto, una sorta di sogno.

Una precisazione: Internet esisteva, ma collegava solo alcune network di alcuni enti di ricerca. In questi enti, erano pochissimi i calcolatori collegati ad Internet, tipicamente solo alcuni minicomputer. L'uso pratico di Internet non era neanche paragonabile a quello odierno, serviva solo per trasferire file, leggere le news USENET ed inviare mail. La mail non era neanche paragonabile a quella odierna: pochissimi avevano un account mail e trovare l'indirizzo mail di qualcuno che non si conosceva personalmente era un'impresa---il web non esisteva.

Il sogno di OSI, questo mondo fantastico appena dietro l'angolo, è rimasto tale per anni. Ormai ci siamo, ormai ci siamo...ma non accadeva mai. Nel frattempo, Internet ed i protocolli TCP/IP prosperavano e si diffondevano. I libri di testo ed i corsi continuavano a parlare di OSI. Ma nessuno lo vedeva in pratica. Nessuno capiva quasi nulla di OSI, anche perché chi aveva una qualche esperienza pratica aveva usato ftp o la email su Internet; chi aveva più esperienza conosceva gli indirizzi IP, Ethernet ed un pò di routing IP. Mettere in corrispondenza queste entità con il modello OSI era un'impresa.

In estrema sintesi, ed in modo impreciso: il modello OSI era un elenco di funzionalità da implementare ad ognuno dei 7 livelli di astrazione definiti dal modello; ed un elenco di protocolli che implementavano quelle funzionalità. Internet invece era un piccolo insieme di protocolli molto semplici, senza alcun "modello". Il modello OSI non si diffondeva perché, molto banalmente, le implementazioni dei protocolli erano poche, complicate, inefficienti e costose. Le implementazioni dei protocolli Internet invece erano molte, semplici, rapide e gratuite.

Quando, nel 2000/2001, ho tenuto per la prima volta il corso di Reti di Calcolatori era ormai chiaro che Internet aveva sconfitto definitivamente OSI. Non ho avuto il coraggio di omettere completamente OSI perché se ne parlava ancora molto nei libri di testo. Mi sembra di averlo cassato completamente nella terza edizione.

Concludo con un aneddoto (divertente solo per chi conosce i docenti coinvolti, penso nessuno tra quelli che leggeranno questo blog). Quando ero studente del quinto anno, il docente del corso di "Macchine per l'elaborazione dell'informazione" (corso che verteva sull'hardware dei sistemi multiprocessore...le reti non erano parte dei programmi) organizzò dei seminari tenuti da una persona coinvolta nella definizione del modello OSI. I seminari erano quasi incomprensibili perché il modello OSI era, appunto, un "modello" e nessuno di noi sapeva nulla di reti. L'unica cosa che capivamo era l'enfasi sulla interoperabilità tra i sistemi. La cosa era divertente (e, ripeto, lo possono capire solo quelli che conoscono i due docenti) perché il docente del seminario pomeridiano ci esaltava il fantastico modello OSI, poi la mattina successiva il docente a lezione ci diceva "tanto di OSI non è vero nulla...se avete un computer Digital vi servono i protocolli Digital e se avete un IBM vi servono i protocolli IBM...fra loro non si parlano..non c'è niente da fare, OSI non funziona..."

Commenti

Popular Posts

"Ingegneria deve essere difficile"

Il ritaglio di giornale qui sotto ricorda uno degli eventi più non-trovo-un-aggettivo-appropriato del mio periodo di studente di Ingegneria a Pisa. Ricordo che una mattina iniziò a spargersi la voce "hanno murato la porta del dipartimento!".  Andammo subito a vedere ed arrivammo un pò prima dei giornalisti che scattarono questa foto. La porta era murata, intonacata, pitturata di bianco e sovrastata da una scritta "INGEGNERIA DEVE ESSERE DIFFICILE". Le "E" di "INGEGNERIA" erano scritte al contrario perché era una sorta di "marchio di fabbrica" della facoltà di Ingegneria di Pisa. L'aula più grande, quella in cui pressoché tutti gli studenti seguivano i corsi dei primi anni, aveva infatti alcuni bellissimi "affreschi scherzosi" che furono fatti nel corso delle proteste studentesche di qualche anno prima ed in cui la parola "Ingegneria" era appuntoi scritta in quel modo. Si era anche già sparsa la voce di cosa era

Il patch che non era un patch

Quanto segue è un patetico quanto inutile tentativo di distrarmi e non pensare alla pessima prestazione calcistica di ieri sera, decisamente non all'altezza dell'evento e dei nostri gloriosi colori. Nella lezione di "Computer Networks and Principles of Cybersecurity" di ieri, mi è stata posta la domanda " E' possibile che un patch introduca nuove vulnerabilità? ". La mia risposta è stata affermativa, ho evidenziato che un patch è un software, quindi può introdurre errori, vulnerabilità, può fare riemergere errori o vulnerabilità presenti e risolti in versioni precedenti, può correggere la specifica vulnerabilità presumibilmente risolta da quel patch solo in parte. Non è frequente, ma può accadere ed è quindi una possibilità da tenere presente. Uno dei numerosi motivi che rendono così complessa la gestione delle vulnerabilità è anche questo. Stamattina ho letto un esempio molto interessante di quanto abbiamo detto. Pochissime settimane fa Microsoft ha ril

Perché studiare Analisi Matematica???

Un mio caro amico mi ha scritto: ...sono con mia figlia che studia Analisi 1...A cosa serve, al giorno d'oggi, studiare Analisi (a parte sfoltire i ranghi degli aspiranti ingegneri)? Riporto la mia risposta di seguito, forse può "motivare" qualche altro studente. ... Per un ingegnere la matematica è fondamentale perché è un linguaggio ; ed è il linguaggio essenziale per trattare gli argomenti che dovrà affrontare come ingegnere; non sono importanti i contenuti specifici; è importante, anzi fondamentale, che riesca a capirli, ricostruirli etc. ad esempio, chi deve usare l'inglese, lo usa perché in un modo o nell'altro lo conosce; nessuno di noi ha usato esattamente le frasi o i dialoghi o le regole che ha incontrato negli esercizi di inglese o di tedesco; nella matematica è lo stesso; non sono importanti i limiti, le serie, i teoremi di cauchy o che so io; ma se uno non è in grado di capire quel linguaggio allora non sarà in grado di capire davvero quas

40 anni di Internet: Cosa non ha funzionato e perché

Leggo molti documenti tecnico-scientifici per lavoro e, in parte, per "piacere". Molti sono interessanti, alcuni molto interessanti. E' raro che trovi un documento che mi appare illuminante. Questo indicato sotto è uno dei pochi documenti in questa categoria. Sembra banale, in quanto è molto discorsivo e parla di molte cose note: IP, DNS, NAT.... In realtà è profondissimo. Una miniera di riflessioni profonde, sintetiche, focalizzate ed, appunto, illuminanti. A mio parere imperdibile per chiunque abbia un qualche interesse negli aspetti tecnici di Internet. Chi non ha la pazienza di leggerlo per intero, legga almeno gli ultimi due paragrafi. Failed Expectations (l'autore, Geoff Houston , fa parte della Internet Hall of Fame )

ChatGPT: supererebbe il mio esame di Reti di Calcolatori?

Molto probabilmente chi ha a che fare con i corsi di laurea scientifici e tecnologici, come me, ha preso atto della notizia che ChatGPT ha superato esami universitari in giurisprudenza ed economia con un pò, diciamo così, di sufficienza. Pensando "da noi non potrebbe mai succedere; figuriamoci". E' quello che ho pensato io. Poi però ho fatto a ChatGPT qualche domanda di Reti di Calcolatori. Ho quasi cambiato idea. "Quasi" perché nello scritto di Reti di Calcolatori faccio sempre esercizi. Pur non avendoli sottoposti a ChatGPT sono certo che questi esercizi non li sa risolvere. Ma alle "domande tipiche da orale" ha fornito risposte che mi hanno davvero stupefatto. Riporto qui sotto solo un esempio di "dialogo", relativo a validazione di firma digitale e certificati auto-firmati. Risposte sostanzialmente corrette e pertinenti, molto più sintetiche e focalizzate di quelle che ricevo normalmente. E più rapide. Alla fine ha riconosciuto di esser