ARPANET: Internet agli esordi
Quasi tutti sanno cos’è Internet e persino chi non vi ha accesso personalmente ha un’idea di cosa sia questo network globale. Ma chi ha sentito parlare di Arpanet? Prima di Internet, infatti, c’era Arpanet, che ha cessato di esistere già dal 1990 e da allora è finito sempre più nel dimenticatoio, anche se la conoscenza delle sue funzionalità e la storia del suo sviluppo ci permettono una comprensione più profonda dell’Internet odierno.
Arpanet: storia del network
Negli anni 60 è iniziata la marcia trionfale dei computer. Se i costi elevati non permettevano alla maggior parte delle persone di avere un computer a casa, nell’ambito delle scienze e in campo militare era già difficile immaginare di poter prescindere da questi dispositivi, che rivestivano sempre maggiore importanza anche per le piccole e medie imprese. Per consentire uno scambio più rapido di informazioni, si ambiva già allora a trovare il modo di collegare i computer.
Per intenderci, negli anni 60 l’unico modo per condividere dati scientifici era quello di stamparli, un mezzo alquanto scomodo e dispendioso anche in termini di tempo. Per avere un quadro storico e poter inserire lo sviluppo di Arpanet nel proprio contesto, bisogna ricordare che in quel momento gli USA si trovavano in piena guerra fredda con l’Unione Sovietica.
Le due grandi potenze a quel tempo non soltanto conducevano una turbinosa corsa agli armamenti per interposta persona in una guerra senza speranza in Vietnam, ma cercavano di dimostrare la propria superiorità rispetto all’avversario anche in ambito scientifico: basti pensare alla corsa allo spazio. Considerando il contesto politico dell’epoca, non stupisce che la missione di fondare una rete informatica negli Stati Uniti sia scaturita dagli ambienti militari, più specificatamente dall’Advanced Research Projects Agency (ARPA). L’allora presidente Dwight D. Eisenhower aveva fondato DARPA (Defense Advanced Research Projects Agency) già nel 1958 come agenzia governativa del Dipartimento della Difesa degli Stati Uniti come risposta al lancio della sonda sovietica Sputnik.
Per poter meglio coordinare i progetti scientifici e quindi guadagnare vantaggio sull’Unione Sovietica per quanto riguarda la ricerca, l’agenzia aveva il compito preciso di organizzare in modo centralizzato i progetti di ricerca militare (si noti che DARPA è ancora attiva oggi). A questo scopo era di cruciale importanza riuscire a collegare in rete computer di varie istituzioni di ricerca universitarie.
Nel 1962 l’informatico e psicologo J. C. R. Licklider assunse la posizione di direttore presso l’ARPA. Egli aveva già un’idea concreta per un network, un progetto visionario che entusiasmò i pionieri dell’informatica Robert Taylor e Ivan Sutherland. Entrambi gli informatici si impegnarono da allora sullo studio di una rete decentralizzata (Licklider lasciò l’ARPA e quindi il progetto già nel 1964).
In realtà inizialmente non vi era alcun sostegno da parte del Ministero della Difesa, ma nel 1965 il lavoro di ricerca raggiunse traguardi ragguardevoli giungendo al termine nel 1969. Per la realizzazione tecnica fu incaricata la BBN Technologies, un’azienda IT per la quale curiosamente Licklider aveva lavorato per lungo tempo come Vicepresidente.
Il 29 ottobre 1969, circa tre mesi dopo che Buzz Aldrin e Neil Armstrong misero piede per la prima volta sulla Luna, il programmatore Charley Kline poté mandare il primo messaggio interamente leggibile attraverso ARPANET: “login”. All’epoca il neonato network constava di quattro calcolatori situati in quattro luoghi diversi: l’University of California, Los Angeles (UCLA), l’University of California, Santa Barbara (UCSB), lo Stanford Research Institute (SRI International) e l’University of Utah (UU).
Per la precisione la prima comunicazione avvenne già un’ora prima. Anche in quel caso Kline aveva provato a mandare la parola “login”, ma la connessione si interruppe dopo la lettera “O”. Dopo aver risolto l’errore, ebbe luogo il secondo, e questa volta completo, invio di dati.
Il network da questo momento iniziò a diffondersi, collegando sempre più università americane ed enti pubblici. Nel 1973 la rete si spinse oltre l’Atlantico e fu impiegata anche in Europa. Nel 1983 il protocollo network TCP/IP veniva utilizzato anche per Arpanet, relegando di fatto il vecchio network a una parte di Internet. Nel 1990 Arpanet venne chiuso e sostituito da NFSNet, esistente dal 1985, che fu a sua volta sorpassato già nel 1995 NFSNet.
La tecnologia dietro Arpanet
Alla messa a punto di Arpanet hanno contribuito diversi sviluppi tecnici e idee provenienti dalle scienze dell’informazione. Alcuni dei fondamenti di base vennero scoperti non dagli scienziati commissionati, ma, nello spirito di una cultura della conoscenza aperta e globale, vennero apportate da altri ricercatori.
Reti decentralizzate
L’idea fondamentale venne da J. C. R. Licklider e si manifestò inizialmente nella sua visione di un Intergalactic Computer Network: voleva sviluppare una rete che potesse funzionare indipendentemente dal luogo in cui fosse situato il computer, dal sistema utilizzato, e, idealmente, persino dalle conoscenze informatiche dell’utente. All’interno di un tale network, ogni partecipante (e ciò valeva sia per gli utenti umani che per le macchine utilizzate) doveva poter comunicare con tutti gli altri. A tal fine si rendevano naturalmente necessari dei nodi, ma non esisteva alcun punto centrale dal quale i dati venissero distribuiti.
Ciò significava abbandonare l’idea di una connessione “end-to-end”, così come la si conosceva per le telefonate: le chiamate telefoniche venivano accettate da un centro di smistamento e poi inoltrate dagli operatori telefonici; venne invece stabilita una linea diretta verso il destinatario.
Packet switching
All’interno della rete decentralizzata si mandano pacchetti di dati, i quali però non consistono di un pacchetto unico contenente tutte le informazioni da comunicare, ma in tanti pacchetti: la parola chiave è la divisione in pacchetti o “packet switching”. Ogni pacchetto funziona indipendentemente dai propri fratelli (cioè dagli altri pacchetti che portano altri pezzi della stessa informazione). Ciò significa anche che i pacchetti possono prendere vie diverse, poiché non c’è alcuna connessione “end-to-end”. I pacchetti verranno riuniti soltanto quando raggiungeranno il destinatario. La suddivisione in pacchetti funziona perciò in modo completamente diverso rispetto ai centralini, per come li si conosceva dalle reti telefoniche.
Il vantaggio del packet switching è che la rete è sfruttata in modo davvero efficiente: più partecipanti si suddividono lo smistamento e mandano i pacchetti per queste vie con le stesse possibilità. Arpanet ha posato la pietra miliare di ciò che la nostra società oggi conosce e discute sotto il concetto di neutralità di rete. Inoltre grazie alla presenza di molte vie possibili è davvero difficile che si possa verificare una completa caduta della rete.
Interface Message Processor (IMP)
Affinché i diversi computer (basati a propria volta su sistemi diversi) possano comunicare l’uno con l’altro, occorre creare delle interfacce che regolino la comunicazione dei partecipanti. A tal fine si è cercata inizialmente una soluzione software, ma si è poi deciso di interporre minicalcolatori tra i computer e la rete. Questi Interface Message Processors (IMP) erano piccole (rispetto ai computer, che occupavano una stanza intera) macchine, che si occupavano dell’interoperabilità di rete.
Costruiti da BBN Technologies, i fondamenti degli IMP si basavano su minicomputer di Honeywell. Al giorno d’oggi si potrebbero comparare le sue funzioni a quelle di un router: i pacchetti di dati vengono mandati attraverso di essi al destinatario corretto. Il destinatario IMP a propria volta manda una conferma, ma soltanto nel caso in cui il pacchetto sia giunto senza errori, altrimenti il mittente ritorna automaticamente attivo e fa ripartire da capo la comunicazione. Per la cronaca, agli esordi di Arpanet la comunicazione si svolgeva ad una velocità di 50kbit al secondo e veniva realizzata attraverso le reti telefoniche.
Il protocollo 1822
Per fare in modo che gli IMP potessero comunicare tra di loro, BBN Technologies approntò un nuovo standard: il protocollo 1822, così nominato dopo il BBN Report 1822, nel quale l’azienda lo ha descritto. In questo protocollo si stabilì quali formalità dovessero essere soddisfatte da Arpanet nella comunicazione. Poiché erano soltanto i minicomputer interposti a dover rispettare questi regolamenti (la connessione host-to-IMP doveva essere gestita da ciascun sito), grazie a questo protocollo fu garantita l’interoperabilità.
Il protocollo richiedeva che i pacchetti contenessero due aree: da una parte le informazioni (o parte delle informazioni) da comunicare, dall’altra l’header. In quest’area di intestazioni c’è anche un indirizzo numerico del destinatario (paragonabile all’indirizzo IP), con il quale l’IMP del mittente può determinare l’IMP del destinatario, assicurando che i pacchetti arrivino nel posto giusto. I pacchetti avevano una grandezza massima di 8159 Bits, 96 dei quali erano riservati all’intestazione.
Network Control Program (NCP)
Il Network Control Program (NCP) è anch’esso un protocollo che si situa in uno strato intermedio (transport layer) della comunicazione. Questo protocollo è collocato ad un livello superiore rispetto al protocollo 1822, che si trova tre livelli più in basso nell’architettura della rete: physical layer, data link layer e network layer. I compiti principali dell’NCP consistono nello stabilire una connessione tra due host, interromperla o deviarla. Per poter stabilire una connessione in qualsiasi momento, nel protocollo era integrato un cosiddetto “logger”, che si occupava di cercare i tentativi di login da altri calcolatori host.
Il modello OSI utilizzato oggigiorno per l’architettura a strati dei protocolli della rete non esisteva ai tempi dell’inizio di Arpanet. Il modello di riferimento a sette strati venne introdotto obbligatoriamente soltanto nel 1983. Tuttavia in questo modello si possono ritrovare a grandi linee i protocolli di Arpanet.
Il Network Control Program fu sostituito a partire dal primo gennaio 1983 dal successore TCP/IP (appartenente alla famiglia di protocolli di rete sulla quale si basa ancora oggi Internet). Il giorno in cui è avvenuto il cambiamento, conosciuto come Flag Day, è stato particolarmente dispendioso, perché i diversi protocolli non possono essere utilizzati l’uno accanto all’altro: non è possibile che gli host che utilizzano NCP possano comunicare con gli host che si servono di TCP/IP. Per questo è stato strettamente necessario riavviare l’intera rete nel giorno stabilito.
Unix
Il sistema operativo Unix in realtà non è collegato direttamente a Arpanet, ma entrambe le tecnologie si sono sviluppate parallelamente. Sia Unix che il linguaggio di programmazione C, sul quale si basa il sistema operativo, hanno influenzato lo sviluppo di Arpanet. Il software poteva essere utilizzato già allora per molte piattaforme diverse e in questo modo Unix divenne una sorta di standard nel neonato network. La coerenza che ne risulta ha semplificato l’adozione di applicazioni e protocolli obbligatori.
Unix appartiene ai primi sistemi operativi della storia dei computer. Ancora oggi questo sistema operativo e i suoi ulteriori sviluppi, specialmente sui server in Internet, sono molto amati. Per sapere di più su Unix e la sua storia potete leggere il nostro esauriente articolo su Unix.
L’utilità di Arpanet
Guardando retrospettivamente, molti riconoscono ad Arpanet il fatto di aver spianato la strada a Internet. Già nei primi decenni dalla nascita, Arpanet ha portato enormi vantaggi alle università affiliate: grazie ad esso era possibile eseguire programmi su computer situati anche molto lontano. Il servizio relativo era ed è conosciuto come “Remote job entry”, ovvero NETRJS. Per poterne comprendere appieno il significato, bisogna sapere che la potenza di calcolo dei computer di allora era di gran lunga inferiore rispetto a quella a cui siamo abituati oggi. La possibilità da parte degli scienziati di utilizzare le risorse dei calcolatori collegati permetteva di lavorare in modo molto più efficiente.
Anche due applicazioni tuttora usate dalla rete globale sono state implementate già nelle fasi iniziali di Arpanet: le connessioni FTP e le e-mail, entrambe implementate nel 1972. Il File Transfer Protocol consentiva di scambiare file tra due host; per quanto riguarda le e-mail qualsiasi utente di Internet ne conosce l’utilità. A quei tempi sono stati sviluppati sia READMAIL (read mail) che SNDMG (send message), che permettevano agli utenti di Arpanet di inviare e ricevere messaggi di testo. Entrambi furono programmati da Ray Tomlinson, che lavorava ai tempi presso BBN Technologies. Gli siamo ancora oggi riconoscenti per l’utilizzo del simbolo “@” per separare il nome dell’utente da quello del server.
Un ulteriore servizio, che è ancora parte di Internet, ma che ha perso significativamente di importanza nel frattempo, è Telnet. Il protocollo Client Server rende possibile accedere ad un altro computer attraverso una connessione remota. Nella finestra di comando gli utenti possono eseguire comandi su altri calcolatori, per esempio per cercare all’interno dei database o per avviare programmi. Al giorno d’oggi questi servizi non vengono praticamente più utilizzati, tuttavia Telnet offre dei vantaggi (per esempio il protocollo è multipiattaforma), ai quali però si affianca uno svantaggio eclatante: dato che lo scambio di dati non è crittografato, i criminali informatici vi possono accedere senza problemi. Al posto di Telnet, oggi si usa solitamente il crittografato SSH.
Potete trovare ulteriori informazioni su Telnet e su come utilizzare questo servizio sul vostro computer nel nostro articolo su Telnet.
Qual è il significato di Arpanet per Internet
Difficilmente qualcuno potrebbe argomentare che Internet per come oggi lo conosciamo non si sia sviluppato grazie ad Arpanet. Ma che cosa significa esattamente? Alla fine Arpanet non era semplicemente Internet chiamato con un altro nome. Alcune delle innovazioni dell’epoca, sviluppate da ARPA e BBN Technologies negli anni 60 e 70, sono utilizzate a tutt’oggi, come ad esempio le e-mail e il File Transfer Protocol. In realtà è stato più che altro il concetto di una rete decentralizzata e indipendente dall’ubicazione che ha spianato la strada per l’avvento di Internet.
Anche il Domain Name System affonda le proprie radici in Arpanet, anche se i computer di questo network non erano ancora organizzati con numeri, bensì manualmente: per la gestione c’era un file (host.txt) nel quale si potevano inserire tutti gli utenti della rete. Per essere aggiunti alla lista occorreva chiamare il Network Information Center (NIC)
Le altre conquiste hanno subito nel tempo cambiamenti così profondi da rendere oggi problematico rintracciarne le origini. Il fatto che ciò che ora è eseguito da un router fosse compito di IMP della grandezza di un frigorifero è per noi davvero difficile da immaginare. Decisivo è stato anche lo sviluppo di TCP/IP, una tecnica ispirata sicuramente dagli informatici dell’ARPA. Anche Ethernet, una tecnologia di rete, è nata nell’ambiente di Arpanet ed è ancora oggi uno standard per il networking dei computer.
Ciò che ai tempi ancora non c’era, e che probabilmente è una delle differenze più importanti tra Arpanet e Internet, è il World Wide Web, il sistema di ipertesti sviluppato da Tim Berners-Lee nel 1989, cioè poco prima della chiusura del progetto Arpanet. Prima di allora le informazioni non erano in una rete di server raggiungibile in qualsiasi momento, ma occorreva richiederle singolarmente agli host. Anche i primi browser nel 1969 erano molto lontani da questa concezione.