Datorernas historia, del 1 – Bulletin Board System

En konstig liten egenhet med att vara människa är att vi (som grupp) tenderar att tro att saker och ting har varit som de är i mycket längre tid än vad de faktiskt har varit – och att det inte är troligt att de kommer att förändras.

Även den mest hårda och väl underbyggda vetenskapen tenderar att förändras i takt med den ordspråksmässiga vinden. Exempel: Kolesterol … bra eller dåligt? Ser du? Saker (och idéer) förändras. Snabbt. Och ofta tror vi inte att de har förändrats alls.

Ibland är det bra att luta sig tillbaka och titta på hur saker och ting redan har förändrats – för att se hur saker och ting kan förändras i framtiden.

Låt oss tillämpa detta på servrar. Datorer som serverar databitar till andra datorer. Hur såg de ut för tio år sedan? 20? 50? I den här artikelserien ska vi titta på varje större era och typ av servrar, utan särskild ordning – jag kommer att hoppa runt lite när jag berättar historien om ”Datorservrar”.

Servrar för bulletinsystem

Låt oss börja med något som för många kan tyckas vara lite … ovanligt. Bulletin Board System (BBS).

Du förstår, vi hade inte alltid möjlighet att få alltid tillgängliga fysiska anslutningar till en server.

Under 1980- och 1990-talen var ett av de vanligaste sätten för vanliga människor att koppla upp sig ”på nätet” att använda en uppringd BBS. Ett modem på din dator skulle bokstavligen ringa över en gammal analog telefonlinje (även kallad ”fast telefonlinje”), och ett annat modem kopplades till en annan dator.

Skoleffekter: Modem står för Modulator – Demodulator – Mo… Dem. Den tar binära data och modulerar dem (vilket ger det mest lugnande ljudet på planeten för nördar på 1980-talet), skickar dem över telefonlinjen (analogt) och demodulerar dem på andra sidan.

Dessa BBS-er var på ett mycket verkligt sätt servrar. Den största skillnaden mellan dessa uppringda anslagstavlor och dagens servrar ligger i det sätt på vilket människor ansluter sig och (på grund av detta) hur många människor som kan ansluta sig samtidigt. Man kan nästan tänka sig att varje modem (och telefonlinje) som är ansluten till en viss BBS är ett enda uttag som kan stödja en anslutning åt gången – 3 modem = 3 personer anslutna samtidigt.

Tanken på att endast en handfull personer (eller till och med bara en person) ska kunna ansluta till din server åt gången är något absurd i dag (åtminstone i de flesta miljöer). Ändå var det så det var på den tiden. Och när det inte fanns fler modem tillgängliga? Då fick du en ärligt talat upptagen signal – ett ljud som dagens barn förmodligen aldrig ens har hört.

Vad mer är, hastigheterna var hårt begränsade per anslutning. Om du har ett 14,4k-modem är det den maximala hastighet som data kan överföras via den anslutningen. Du kunde inte helt enkelt ta in en snabbare anslutning för att öka hastigheten för alla användare; du var tvungen att uppgradera varje modem för att åstadkomma detta. Och även då spelade kvaliteten på de analoga linjerna mellan din BBS-server och din anslutna klient en stor roll för den faktiska hastigheten. Jag antar att den sista delen fortfarande gäller idag, även om de flesta människor inte märker det så mycket.

BBS-servrar vs. moderna servrar

Det var inte det enda sättet som (de flesta) BBS-servrar skiljde sig från moderna servrar (webbservrar etc.).

De flesta BBS-servrar som fanns körde på operativsystem som DOS, CP/M, Apple ProDOS och andra icke-multitasking-system. Det innebar att endast en instans av BBS-servern kunde köras på en enda dator åt gången.

En användare. En dator.

Vill du ha en BBS som kördes på till exempel MS-DOS och som kunde tillåta två personer att ansluta samtidigt? Du skulle behöva en andra dator, och dessa två datorer skulle behöva vara sammankopplade i ett nätverk, t.ex. genom ett gammalt Token Ring-nätverk, för att dela viktiga filer med varandra. (Oj – jag har inte skrivit ordet Token Ring på mycket, mycket länge.) På så sätt skulle de två ”uppringda” användarna känna sig som om de var på samma system och kunna interagera (chatta osv.) i enlighet med detta.

Föreställ dig om detta vore fallet med webbservrar. För varje teoretisk samtidig anslutning skulle man behöva lägga till ytterligare en hel dator. Helt galet att tänka på.

BBS-servrar och ”Door”-program

BBS-servrar var också intressanta på det sätt som deras funktionalitet kunde utökas.

Den vanligaste metoden är via så kallade ”Door”-program. När användaren begärde ett specifikt ”Door”-program (oavsett om det var ett onlinespel eller något kommunikationsverktyg) krympte hela BBS:en ur minnet. Den stängde bara av sig själv och startade det begärda programmet. (Kom ihåg att dessa ofta kördes på operativsystem som inte kunde multitaska).

BBS:en skrev först in uppgifterna om den anslutna användaren (vilket fysiskt modem som användes, användarens namn osv.) i en enkel textfil. Sedan stängde BBS:en och körde det begärda programmet ”Door”, som visste att det skulle ladda upp textfilen för att kunna fortsätta att använda modemet – som var anslutet och väntade hela tiden.

BBS-servrar och e-post: Långsammare än post

Dessa BBS-servrar hanterade e-post som inte var olik dagens e-post. Den främsta skillnaden var att omedelbar leverans av e-post endast skedde på det lokala BBS-systemet. Om du skickade ett e-postmeddelande till en användare på en annan BBS-server kunde den användaren inte läsa e-postmeddelandet förrän de två BBS-systemen utförde en regelbunden (ofta en gång per natt) anslutning för att utbyta e-postmeddelanden med varandra.

Varje sådan anslutning mellan två BBS-servrar betraktades som ett enda ”hopp”. För att få e-post levererad till en fysisk plats som låg mycket långt bort krävdes ofta flera sådana hopp. E-postmeddelandet skulle levereras till en BBS den första natten och sedan till nästa BBS i raden varje natt.

Med detta system (som var otroligt populärt under 1980-talet och en del av 1990-talet) var e-post inte en omedelbar sak. Det var inte ovanligt att det faktiskt tog längre tid att leverera e-post än post. Det är inget skämt.

Tillbaka till det använde miljontals människor sådana tjänster för e-post. På sin höjdpunkt bestod det mest populära nätverket av BBS-er (känt som FidoNet) av över 39 000 uppringda anslagstavlarsystem över hela världen.

Det inre arbetet i dessa system var också ganska unikt. De flesta kördes (särskilt på 1980-talet) på icke-multitaskiga system. Det betyder att begreppet ”samtidig användarbelastning” inte var något som de flesta systemoperatörer (Sysops) – som systemadministratörerna för dessa system kallades – behövde oroa sig för. En användare i taget innebar att hanteringen av belastning på prestanda vanligtvis inte var ett stort problem.

I själva verket hade de flesta BBS-es mycket lågteknologiska ”databaser” för att lagra användarinformation – ofta antingen enkla, strukturerade textfiler eller enkla, egenutvecklade binära fillösningar. Du har definitivt aldrig hört talas om en sharded sql-databas.

Fördelar med en BBS-server

På nästan alla sätt man kan tänka sig är BBS-serverns koncept och struktur mycket sämre än något vi har idag. Ändå finns det några unika fördelar med en sådan BBS-server.

Det kanske mest anmärkningsvärda är: Hindret för inträde var häpnadsväckande lågt för hobbyister och amatördatoranvändare att sätta upp och driva sin egen BBS. Med en dator (med nästan vilket operativsystem som helst), ett modem (med nästan vilken hastighet som helst) och en telefonlinje (helst utan alltför mycket brus) kunde man börja. Många BBS-er körde inte ens på hårddiskar; många av de tidigare körde på disketter.

Bulletin board-system som fortfarande fungerar idag

Förvånansvärt nog fungerar många BBS-er fortfarande idag. Jag driver till och med en (som folk ansluter till via Telnet-protokollet). Varför? Mest för att jag tycker om att arbeta med dessa äldre system. Det håller mig på jorden och närmare datorernas rötter.

Min BBS påminner mig – när jag ansluter mig via min ultrasnabba fiberanslutning till mina flera servrar (som finns runt om i världen), som kan servera enorma mängder samtidiga användare – om att det inte alltid har varit så här.

Protokollen ändras. Anslutningstypen och hastigheten (och frekvensen) ändras. Serverns kapacitet och lagringsutrymme förändras. Det sätt på vilket jag administrerar den och det sätt på vilket jag använder den – allt förändras. Inget av det förblir detsamma.

Oh, jösses. När jag säger det på det sättet blir jag lite ledsen. Önskar tillbaka till dagar med skrikande modem och långsamma överföringshastigheter. Men å andra sidan är det ganska trevligt att kunna servera en webbsida till fler än en person samtidigt.

So, you know — trade-offs.

>> Read next: History of computers, part 2 — TCP/IP owes a lot to Xerox PUP