Storia dei computer, parte 1 – Il sistema di bacheca
Una strana stranezza dell’essere umano è che noi (come gruppo) tendiamo a pensare che le cose siano state nel modo in cui sono attualmente per molto più tempo di quanto siano state in realtà – e che non è probabile che cambino.
Anche la scienza più dura e ben sostenuta tende a cambiare con il proverbiale vento. Esempio: Colesterolo … buono o cattivo? Vedi? Le cose (e le idee) cambiano. Velocemente. E spesso non pensiamo che siano cambiate affatto.
A volte è bene sedersi e guardare come le cose sono già cambiate – per vedere come potrebbero cambiare in futuro.
Applichiamo questo ai server. Computer che servono bit di dati ad altri computer. Che aspetto avevano 10 anni fa? 20? 50? In questa serie di articoli, diamo un’occhiata ad ogni epoca principale e tipo di server, senza un ordine particolare – rimbalzerò un po’ da una parte all’altra mentre racconto la storia di “Computer Servers”.
Server per sistemi di bacheca elettronica
Iniziamo con qualcosa che per molti potrebbe sembrare un po’… insolito. Il dial-up bulletin board system (BBS).
Vedete, non abbiamo sempre avuto la possibilità di ottenere connessioni fisiche sempre disponibili ad un server.
Durante gli anni ’80 e ’90, uno dei modi più comuni in cui la gente media si collegava “online” era quello di usare una BBS dial-up. Un modem sul vostro computer componeva letteralmente su una linea telefonica analogica vecchio stile (alias “una linea terrestre”), e un altro modem si collegava a un altro computer.
Fatto divertente: Modem sta per Modulator – Demodulator – Mo… Dem. Prende i dati binari e li modula (facendo il suono più rilassante del pianeta per i nerd degli anni ’80), li invia sulla linea telefonica (analogica), e li demodula dall’altra parte.
Queste BBS erano, in modo molto reale, dei server. La più grande differenza tra quelle bacheche dial-up e i server di oggi è nel modo in cui le persone si connettono e (per questo) quante persone possono connettersi contemporaneamente. Si potrebbe quasi pensare ad ogni modem (e linea telefonica) connesso ad una data BBS come ad una singola presa che potrebbe supportare una connessione alla volta – 3 modem = 3 persone connesse contemporaneamente.
L’idea di avere solo una manciata di persone (o anche solo una persona) in grado di connettersi al tuo server alla volta è in qualche modo assurda al giorno d’oggi (almeno nella maggior parte degli ambienti). Eppure questo è il modo in cui era allora. E quando non c’erano più modem disponibili? Si riceveva un segnale di occupato onesto – un rumore che i ragazzi di oggi probabilmente non hanno mai sentito.
Inoltre, le velocità erano fortemente limitate su una base di connessione. Se hai un modem a 14.4k, quella è la velocità massima che i dati potevano essere trasmessi su quella connessione. Non si poteva semplicemente portare una connessione più veloce per aumentare la velocità per tutti gli utenti; era necessario aggiornare ogni modem per farlo. E anche allora, la qualità delle linee analogiche tra il tuo server BBS e il tuo client connesso giocava un ruolo enorme nella velocità effettiva. Suppongo che quest’ultima parte sia ancora vera oggi, anche se la maggior parte delle persone non lo nota così tanto.
Server BBS vs. server moderni
Questo non era l’unico modo in cui (la maggior parte) delle BBS differiva dai server moderni (server web, ecc.).
La maggior parte delle BBS esistenti girava su sistemi operativi come DOS, CP/M, Apple ProDOS e altri sistemi non-multitasking. Questo significava che solo un’istanza del server BBS poteva essere in esecuzione su un singolo computer alla volta.
Un utente. Un computer.
Vuoi avere una BBS che funzioni su, diciamo, MS-DOS che possa permettere a due persone di connettersi allo stesso tempo? Avreste bisogno di un secondo computer, e questi due computer dovrebbero essere collegati in rete insieme, ad esempio attraverso una vecchia rete Token Ring, per condividere i file critici tra loro. (Wow – non ho scritto le parole Token Ring da molto, molto tempo.) In questo modo, per quei due utenti “collegati”, si sentirebbero come se fossero sullo stesso sistema e sarebbero in grado di interagire (chat, ecc.) di conseguenza.
Immaginate se questo fosse il caso dei server web. Per ogni teorica connessione concorrente, bisognerebbe aggiungere un altro intero computer. Assolutamente pazzesco da considerare.
ServerBBS e programmi ‘Door’
I serverBBS erano interessanti anche per il modo in cui la loro funzionalità poteva essere estesa.
Il metodo più comune è attraverso quelli che erano conosciuti come programmi “Door”. Quando l’utente richiedeva uno specifico programma “Door” (che fosse un gioco online o qualche strumento di comunicazione), l’intera BBS si riduceva a zero memoria. Semplicemente si spegneva e lanciava l’applicazione richiesta. (Ricordate, queste erano spesso in esecuzione su sistemi operativi che non potevano fare multitasking).
La BBS scriveva prima i dettagli dell’utente connesso (quale modem fisico era in uso, il nome dell’utente, ecc.) in un semplice file di testo. Poi la BBS si chiudeva ed eseguiva l’applicazione “Door” richiesta, che avrebbe saputo caricare quel file di testo per continuare ad usare il modem – che era rimasto connesso e in attesa per tutto il tempo.
Server BBS e posta elettronica: Più lento della posta
Questi server BBS gestivano la posta elettronica che non era diversa da quella di oggi. La differenza principale è che la consegna istantanea delle email avveniva solo sul sistema BBS locale. Se inviavi un’email a un utente su un’altra BBS, quell’utente non sarebbe stato in grado di leggere quell’email fino a quando i due sistemi BBS non si fossero collegati regolarmente (spesso una volta a notte) per scambiare le email tra loro.
Ogni connessione tra due server BBS era considerata un singolo “hop”. Spesso, al fine di ottenere la consegna delle email in un luogo fisico che era molto lontano, erano necessari più salti di questo tipo. L’email sarebbe stata consegnata ad un BBS la prima notte e poi al BBS successivo nella linea ogni notte.
Con questo sistema (che era incredibilmente popolare negli anni ’80 e in parte degli anni ’90), l’email non era una cosa istantanea. Non era inaudito che la consegna della posta elettronica richiedesse più tempo della posta ordinaria. Non è uno scherzo.
Ancora, milioni di persone usavano questi servizi per la posta elettronica. Al suo picco, la più popolare rete di BBS (conosciuta come FidoNet) consisteva di oltre 39.000 sistemi di bacheche elettroniche dial-up in tutto il mondo.
Il funzionamento interno di questi sistemi era, allo stesso modo, piuttosto unico. La maggior parte era eseguita (specialmente negli anni ’80) su sistemi non multi-tasking. Questo significa che il concetto di “carico utente concorrente” non era qualcosa di cui la maggior parte degli operatori di sistema (Sysops) – come venivano chiamati i Sys Admin di questi sistemi – doveva preoccuparsi. Un utente alla volta significava che la gestione del carico di prestazioni non era tipicamente una grande preoccupazione.
In effetti, la maggior parte delle BBS aveva “database” molto poco tecnologici per memorizzare le informazioni degli utenti – spesso o semplici file di testo strutturati o semplici soluzioni di file binari fatte in casa. Sicuramente non hai mai sentito parlare di un database sql sharded.
Svantaggi di un server BBS
In quasi tutti i modi che puoi immaginare, il concetto e la struttura del server BBS sono di gran lunga inferiori a qualsiasi cosa abbiamo oggi. Eppure ci sono alcuni vantaggi unici in un server BBS.
Forse il più notevole: La barriera d’ingresso era incredibilmente bassa per gli hobbisti e gli utenti amatoriali di computer per creare e gestire la propria BBS. Con un computer (con quasi tutti i sistemi operativi), un modem (di quasi tutte le velocità) e una linea telefonica (preferibilmente senza troppo rumore di linea), eri pronto a partire. Molte BBS non giravano nemmeno su dischi rigidi; molte delle prime BBS giravano su floppy disk.
Sistemi di bacheche elettroniche funzionano ancora oggi
Abbastanza sorprendentemente, molte BBS funzionano ancora oggi. Io ne gestisco persino una (a cui la gente si connette tramite il protocollo Telnet). Perché? Principalmente perché mi piace lavorare con questi vecchi sistemi. Mi tiene con i piedi per terra e più vicino alle radici dell’informatica.
La mia BBS mi ricorda – quando mi connetto tramite la mia connessione in fibra ultraveloce ai miei server multipli (ospitati in tutto il mondo), capaci di ospitare enormi carichi di utenti concorrenti – che non è sempre stato così.
I protocolli cambiano. Il tipo di connessione e la velocità (e la frequenza) cambiano. Cambiano le capacità del server e lo storage. Il modo in cui lo amministro e il modo in cui lo uso – cambia tutto. Niente di tutto questo rimane uguale.
Oh, accidenti. Quando lo dico così, mi rende un po’ triste. Rimpiango i giorni in cui i modem stridono e le velocità di trasferimento lente. Ma poi di nuovo, è piuttosto bello essere in grado di servire una pagina web a più di una persona alla volta.
So, you know — trade-offs.
>> Read next: History of computers, part 2 — TCP/IP owes a lot to Xerox PUP