Storia di internet: ARPANET — pacchetto

Storia di internet: ARPANET — pacchetto
Schema della rete informatica ARPA di giugno 1967. Cerchio vuoto – computer con accesso condiviso, cerchio con linea – terminale per un utente.

Altri articoli del ciclo:

Entro la fine del 1966 Robert Taylor con i fondi ARPA ha avviato un progetto di connessione di molti computer in un'unica rete, ispirandosi all'idea di "rete intergalattica» Joseph Carl Robnett Licklider.

La responsabilità per l'esecuzione del progetto è stata trasferita a mani esperte Larry Roberts. Nell'anno successivo, Roberts ha preso diverse decisioni critiche che avrebbero avuto ripercussioni sull'architettura tecnica e sulla cultura di ARPANET e dei suoi successori, in alcuni casi – anche per diversi decenni. La prima decisione in ordine di importanza, sebbene non cronologica, riguardava la definizione del meccanismo per il routing dei messaggi da un computer all'altro.

Problema

Se il computer A vuole inviare un messaggio al computer B, come può quel messaggio trovare un percorso da uno all'altro? In teoria, si potrebbe permettere a ogni nodo della rete di comunicare con tutti gli altri, collegando fisicamente ogni nodo a ciascun altro attraverso cavi. Per comunicare con B, il computer A invierà semplicemente il messaggio attraverso il cavo in uscita che lo collega a B. Questo tipo di rete è chiamato rete completamente connessa. Tuttavia, con qualsiasi dimensione significativa della rete, tale approccio diventa rapidamente impraticabile, poiché il numero di connessioni aumenta come il quadrato del numero di nodi (per essere precisi, come (n² - n) / 2).

Pertanto, è necessario un modo per costruire il percorso del messaggio, che inoltri il messaggio a destinazione all'arrivo presso un nodo intermedio. All'inizio degli anni '60, erano noti due approcci fondamentali per risolvere questo problema. Il primo è il metodo di commutazione dei messaggi tramite 'memorizzazione e trasmissione'. Questo approccio era utilizzato dai sistemi telegrafici. Quando un messaggio arrivava a un nodo intermedio, veniva temporaneamente memorizzato lì (di solito sotto forma di nastro di carta), fino a quando non si presentava l'opportunità di inoltrarlo ulteriormente a destinazione o a un altro centro intermedio più vicino a essa.

Poi è arrivato il telefono, e ci voleva un nuovo approccio. Un ritardo di alcuni minuti dopo ogni dichiarazione fatta al telefono, che doveva essere trascritta e inviata a destinazione, avrebbe dato l'impressione di parlare con qualcuno su Marte. Invece, il telefono utilizzava la commutazione dei circuiti. Chi chiamava iniziava ogni chiamata con l'invio di un messaggio speciale che indicava a chi voleva telefonare. Inizialmente lo facevano parlando con un operatore, poi componendo un numero, elaborato da un'apparecchiatura automatica sul centralino. L'operatore o l'apparecchiatura stabilivano una connessione elettrica dedicata tra il chiamante e l'interlocutore. Nel caso di chiamate interurbane, potrebbero essere necessarie diverse iterazioni che collegavano la chiamata attraverso vari centralini. Una volta stabilita la connessione, la conversazione poteva iniziare e rimaneva attiva fino a quando una delle parti non la interrompeva riattaccando il ricevitore.

La comunicazione digitale, che si decise di utilizzare in ARPANET per connettere computer che operavano secondo uno schema di divisione del tempo, utilizzava le caratteristiche sia del telegrafo che del telefono. Da un lato, i messaggi con i dati venivano inviati in pacchetti separati, come nel telegrafo, piuttosto che come conversazioni continue al telefono. Tuttavia, questi messaggi potevano variare in dimensioni per diversi scopi, da comandi da console lunghi solo pochi caratteri, fino a grandi file di dati trasmessi da un computer all'altro. Se i file si fermavano lungo il percorso, nessuno si lamentava. Ma l'interattività remota richiederebbe una risposta rapida, come in una chiamata telefonica.

Una differenza significativa tra le reti di computer e il telefono con il telegrafo è stata la sensibilità agli errori nei dati elaborati dalle macchine. La modifica o la perdita di un singolo carattere durante la trasmissione di un telegramma, o la mancanza di una parte di una parola in una conversazione telefonica, difficilmente compromettevano seriamente la comunicazione tra due persone. Ma se un rumore sulla linea alterava un singolo bit da 0 a 1 nel comando inviato a un computer remoto, questo poteva cambiare completamente il significato del comando. Pertanto, ogni messaggio doveva essere controllato per eventuali errori e reinviato in caso di rilevamento. Questi reinvii sarebbero stati troppo costosi per i messaggi di grandi dimensioni, e la probabilità di errori in essi era maggiore, poiché richiedevano più tempo per essere trasmessi.

La soluzione a questo problema è arrivata grazie a due eventi indipendenti che si sono verificati nel 1960, tuttavia quello che si è manifestato successivamente è stato notato per primo da Larry Roberts e dall'ARPA.

Incontro

Nell'autunno del 1967, Roberts arrivò a Gatlinburg, Tennessee, dalle cime boscose dei Great Smoky Mountains per consegnare un documento riguardante i piani dell'ARPA per il dispiegamento della rete. Lavorava già da quasi un anno presso l'ufficio di tecnologia dell'elaborazione delle informazioni (Information Processing Technology Office, IPTO), ma molti dettagli del progetto di rete erano ancora piuttosto sfocati, compresa la risoluzione del problema di instradamento. Oltre a vaghe menzioni dei nodi e delle loro dimensioni, l'unico riferimento a esso nel lavoro di Roberts era un breve e nebuloso commento alla fine: "Sembra necessario mantenere una linea di comunicazione utilizzata periodicamente per ottenere risposte nel tempo compreso tra un decimo e un secondo, necessario per un'operazione interattiva. Questo è molto costoso in termini di risorse di rete e, a meno che non abbiamo la possibilità di chiamare più rapidamente, la commutazione dei messaggi e la concentrazione diventeranno molto importanti per i partecipanti alla rete." È evidente che, a quel tempo, Roberts non aveva ancora deciso se abbandonare l'approccio che aveva utilizzato insieme a Tom Marryll nel 1965, ovvero connettere i computer tramite la rete telefonica commutata tramite dial-up.

Per coincidenza, allo stesso simposio era presente un'altra persona con un'idea decisamente meglio elaborata per risolvere il problema della routizzazione nelle reti di dati. Roger Scantlebury attraversò l'Atlantico, arrivando dal British National Physical Laboratory (NPL) con una presentazione. Scantlebury prese in disparte Roberts dopo il suo intervento e gli parlò della sua idea. commutazione dei pacchetti. Questa tecnologia fu sviluppata dal suo supervisore al NPL, Donald Davis. Negli Stati Uniti, i successi e la storia di Davis sono poco conosciuti, anche se nell'autunno del 1967 il gruppo di Davis del NPL era almeno un anno avanti rispetto ad ARPA con le sue idee.

Davis, proprio come molti dei primi pionieri dei computer elettronici, era un fisico di formazione. Si laureò al Imperial College di Londra nel 1943 a 19 anni e fu subito arruolato in un programma segreto per lo sviluppo di armi nucleari chiamato Tube Alloys. Qui, guidò un gruppo di calcolatori che utilizzavano calcolatrici meccaniche ed elettriche per ottenere rapidamente soluzioni numeriche a problemi legati alla fusione nucleare (il suo supervisore era Emil Julius Klaus Fuchs, fisico tedesco esule che a quel tempo aveva già iniziato a trasferire segreti sull'arma nucleare all'URSS). Dopo la guerra, dal matematico John Womersley, venne a sapere del progetto che dirigeva al NPL: si trattava della creazione di un computer elettronico in grado di eseguire gli stessi calcoli con una velocità molto maggiore. Il computer progettato da Alan Turing fu chiamato ACE, 'macchina automatica di calcolo'.

Davis si è appassionato a quest'idea e si è unito a NPL il più velocemente possibile. Contribuendo con un progetto dettagliato e alla creazione del computer ACE, è rimasto profondamente coinvolto nel campo delle macchine per il calcolo come leader della ricerca in NPL. Nel 1965, si trovava negli Stati Uniti per un incontro professionale legato al suo lavoro e colse l'occasione per visitare alcuni dei principali centri di elaborazione dati a tempo condiviso, per comprendere di cosa si trattasse. Nell'ambiente britannico dell'informatica, il concetto di tempo condiviso nel senso americano dell'interazione tra più utenti su un computer non era noto. Invece, per loro, il tempo condiviso significava distribuire il carico del computer tra diversi programmi di elaborazione dati in batch (in modo che, ad esempio, un programma potesse funzionare mentre un altro era impegnato nella lettura da nastro). Successivamente, questa variante sarà chiamata multiprogrammazione.

I viaggi di Davis lo portarono al Project MAC presso il MIT, al JOSS Project della RAND Corporation in California e al sistema di time-sharing di Dartmouth nel New Hampshire. Sulla strada di casa, uno dei suoi colleghi suggerì di organizzare un seminario di condivisione per informare la comunità britannica delle nuove tecnologie apprese negli Stati Uniti. Davis accettò e ospitò molti dei principali protagonisti del campo dell'informatica americano, tra cui Fernando José Corbato (creatore del "time-sharing system" al MIT) e lo stesso Larry Roberts.

Durante il seminario (o forse subito dopo), l'idea che ha colpito Davis è stata quella di applicare la filosofia della suddivisione del tempo anche alle linee di comunicazione dei computer, e non solo ai computer stessi. I computer con suddivisione del tempo forniscono a ciascun utente un piccolo intervallo di tempo di CPU e poi passano all'altro, creando per ogni utente l'illusione di avere un proprio computer interattivo. Allo stesso modo, segmentando ogni messaggio in pezzi di dimensione standard, che Davis ha chiamato "pacchetti", un canale di comunicazione può essere condiviso tra più computer o tra diversi utenti di un singolo computer. Inoltre, ciò risolverebbe tutti gli aspetti della trasmissione dati per cui gli switch telefonici e telegrafici erano poco adatti. Un utente che lavora con un terminale interattivo, inviando comandi brevi e ricevendo risposte brevi, non sarà bloccato dalla trasmissione di un grande file, poiché tale trasmissione sarà suddivisa in numerosi pacchetti. Qualsiasi danno in questi messaggi lunghi riguarderà un singolo pacchetto, che può essere facilmente reinviato per completare il messaggio.

Davis ha descritto le sue idee in un lavoro non pubblicato del 1966 intitolato "Proposta per una rete di comunicazione digitale". In quel momento, le reti telefoniche più avanzate erano sul punto di computerizzare i centralini, e Davis propose di integrare la commutazione a pacchetto nella nuova rete telefonica di prossima generazione, creando una rete di comunicazione a banda larga unica, in grado di gestire varie richieste, da semplici chiamate telefoniche a accesso remoto ai computer. A quel tempo, Davis era stato promosso a direttore di NPL, e formò un gruppo di comunicazione digitale sotto la guida di Scantlebury per realizzare il suo progetto e creare una versione dimostrativa funzionante.

Nell'anno che precedette la conferenza di Gatlinburg, il team di Scantlbury ha curato ogni dettaglio per la creazione di una rete a commutazione di pacchetti. Il guasto di un nodo poteva essere tollerato grazie al routing adattivo, in grado di operare su più percorsi verso la destinazione, mentre il guasto di un singolo pacchetto poteva essere risolto con la sua ritrasmissione. Le simulazioni e le analisi indicavano che la dimensione ottimale del pacchetto sarebbe stata di 1000 byte: se fosse stata molto più piccola, i costi di capacità delle linee per i metadati nell'intestazione sarebbero stati troppo elevati; se fosse stata troppo più grande, i tempi di risposta per gli utenti interattivi sarebbero aumentati frequentemente a causa dei messaggi più lunghi.

Storia di internet: ARPANET — pacchetto
Il lavoro di Scantlbury includeva dettagli come il formato del pacchetto...

Storia di internet: ARPANET — pacchetto
...e l'analisi dell'impatto delle dimensioni del pacchetto sui ritardi nella rete.

Nel frattempo, le ricerche di Davis e Scantlbury hanno portato alla scoperta di approfonditi lavori di ricerca condotti da un altro americano, che aveva avuto un'idea simile alcuni anni prima di loro. Tuttavia, Paul Baran, ingegnere elettrico della RAND Corporation, non si era mai realmente preoccupato delle esigenze degli utenti di computer con tempo di condivisione. La RAND era un centro di analisi finanziato dal Ministero della Difesa degli Stati Uniti a Santa Monica, California, creato dopo la Seconda Guerra Mondiale per pianificazione a lungo termine e analisi di problemi strategici per scopi militari. L'obiettivo di Baran era quello di prevenire la guerra nucleare creando una rete di comunicazione militare altamente affidabile, in grado di resistere a un grande attacco nucleare. Tale rete renderebbe meno attraente un attacco preventivo da parte dell'URSS, poiché sarebbe molto difficile distruggere la capacità degli Stati Uniti di rispondere colpendo diversi punti sensibili. Per raggiungere questo scopo, Baran propose un sistema che suddivideva i messaggi in quelli che chiamava blocchi di messaggi, che potevano essere trasmessi indipendentemente attraverso una rete di nodi con ridondanza nei collegamenti e poi ricomposti nel punto finale.

ARPA aveva accesso a rapporti voluminosi di Baran per RAND, ma poiché non erano collegati a computer interattivi, la loro importanza per ARPANET non era ovvia. Roberts e Taylor sembrano non essersene accorti. Invece, grazie a un incontro casuale, Scantlebury presentò tutto a Roberts su un piatto d'argento: un meccanismo di commutazione ben progettato, l'applicabilità al compito di creare reti di computer interattivi, materiale di riferimento da RAND e persino il termine "pacchetto". Il lavoro dell'NPL convinse Roberts che per garantire una buona larghezza di banda sarebbero state necessarie velocità più elevate, quindi aggiornò i suoi piani per linee di comunicazione a 50 Kbit/s. La parte fondamentale del problema del routing per la creazione di ARPANET era stata risolta.

In realtà, esiste un'altra versione sull'origine dell'idea del switching a pacchetti. Roberts ha successivamente affermato di aver avuto tali pensieri grazie al lavoro del suo collega, Len Kleinrock, che avrebbe descritto questo concetto già nel 1962 nella sua tesi di dottorato sulle reti di comunicazione. Tuttavia, è incredibilmente difficile estrarre un'idea simile da quel lavoro e, inoltre, non sono riuscito a trovare altre conferme di questa versione.

Reti che non esistevano

Come possiamo vedere, ben due squadre hanno preceduto l'ARPA nello sviluppo del switching a pacchetti, una tecnologia così efficace che ora è la base di quasi tutte le comunicazioni. Perché l'ARPANET è diventata la prima rete significativa a utilizzarla?

Tutto riguarda le sottigliezze organizzative. L'ARPA non aveva un'autorizzazione ufficiale per creare una rete di comunicazione, ma esistevano già molti centri di ricerca con i propri computer, una cultura di comportamenti "liberi" a cui praticamente nessuno prestava attenzione, e intere montagne di denaro. La richiesta iniziale di Taylor del 1966 per i fondi destinati alla creazione di ARPANET indicava un importo di 1 milione di dollari, e Roberts continuava a spendere questa somma ogni anno dal 1969 in poi per creare e gestire questa rete. Per l'ARPA, questi soldi erano una cifra irrisoria, quindi nessuno dei suoi superiori si preoccupava di ciò che Roberts facesse, purché potesse in qualche modo collegarsi alle esigenze della difesa nazionale.

A Beran in RAND non aveva né opportunità né autorità per fare qualcosa. Il suo lavoro era puramente di ricerca e analisi, e poteva essere applicato alla difesa. Nel 1965 RAND effettivamente raccomandò il suo sistema all'Aeronautica, e questi concordarono sulla fattibilità del progetto. Ma la sua realizzazione ricadde sulle spalle dell'agenzia delle comunicazioni della difesa, che non era particolarmente esperta nella comunicazione digitale. Beran convinse i superiori di RAND che era meglio ritirare questa proposta piuttosto che permettere che fosse realizzata in modo qualsiasi, rovinando la reputazione della comunicazione digitale distribuita.

Davis, in his role as head of the NPL, wielded significantly more power than Beran, but faced a more limited budget compared to ARPA, and he did not have an established social and technical network of research computers. He managed to create a prototype of a local packet-switched network (which had only one node but many terminals) at NPL in the late 1960s, with a modest budget of £120,000 over three years. ARPANET spent approximately half that amount annually on the operation and maintenance of each of its many nodes, excluding initial investments in hardware and software. The organization capable of creating a large-scale British packet-switched network was the British Post Office, which managed telecommunications networks across the country, aside from postal services. Davis managed to attract the interest of several influential officials with his ideas for a nationwide unified digital network, but changing the trajectory of such a vast system was beyond his reach.

Il likelayer, combinando fortuna e pianificazione, ha trovato una bellissima serra dove la sua rete intergalattica potrebbe fiorire. Tuttavia, non si può affermare che tutto, al di fuori della commutazione dei pacchetti, fosse incentrato sul denaro. Anche l'implementazione dell'idea ha svolto un ruolo. Inoltre, lo spirito di ARPANET è stato definito da diverse altre decisioni importanti in fase di progettazione. Pertanto, esamineremo come la responsabilità fosse distribuita tra i computer che inviavano e ricevevano messaggi e la rete attraverso la quale questi messaggi venivano inviati.

Cosa leggere di più

  • Janet Abbate, Inventing the Internet (1999)
  • Katie Hafner e Matthew Lyon, Where Wizards Stay Up Late (1996)
  • Leonard Kleinrock, “An Early History of the Internet,” IEEE Communications Magazine (August 2010)
  • Arthur Norberg e Julie O’Neill, Transforming Computer Technology: Information Processing for the Pentagon, 1962-1986 (1996)
  • M. Mitchell Waldrop, The Dream Machine: J.C.R. Licklider and the Revolution That Made Computing Personal (2001)

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster