Historia informatyki cz.5: o czym rozmawiają komputery

Powoli docieramy do czasów współczesnych. Jednak okazuje się, że świat jaki znamy byłby zupełnie inny gdyby na przełomie lat siedemdziesiątych i osiemdziesiątych grupa inżynierów i naukowców nie opracowała pewnych protokołów. Chodzi oczywiście o możliwość komunikowania się maszyn. Sprawa wydaje się być oczywista, szczególnie dla nas żyjących w świecie internetu, mediów społecznościowych i Youtube’a. Niestety to nie takie proste, a już na pewno nie wynaleziono sieci tylko po to aby oglądać filmiki z kotami…

Zanim zaczniemy podróż przez kolejne meandry historii informatyki, zobaczmy co udało nam się już poznać. I tak, w pierwszej części pt. Historia informatyki cz.1: wspiąć się na ramiona olbrzymów przyglądaliśmy się jak człowiek próbował zastępować samego siebie maszynami. Pojawiły się wtedy pierwsze programowalne automaty. Trzeba dodać, że wszytko to miało miejsce prawie trzy wieki temu. Następnie powstały maszyny programowalne, które miały już konkretne zastosowania w przemyśle. Tutaj warto wspomnieć o jednym wynalazku z tamtych czasów, czyli jakieś dwieście lat temu, a mianowicie chodzi o karty perforowane. Szczegóły można prześledzić w Historia informatyki cz.2: bit i para. Kolejny rozdział historii informatyki zostaje otwarty w momencie wynalezienia lampy elektronowej, czyli ponad sto lat temu. Wtedy to mechanika zostaje zastąpiona elektroniką. Moment ten jest uchwycony we wpisie Historia informatyki cz.3: początki rewolucji. Na szczęście dla nas, niedługo po wynalezieniu lamp elektronowych następuje kolejne epokowe odkrycie, mające kapitalne znaczenie dla całej ludzkości. Mowa oczywiście o tranzystorze. Jaki owo odkrycie miało wpływ na informatykę można przeczytać w artykule Historia informatyki cz.4: viva la revolución czyli wolność, tranzystor i krzem

Lata siedemdziesiąte. Mamy technologię, mamy teoretyczne fundamenty informatyki (algorytmy, przetwarzanie danych, itp) ale czegoś jeszcze brakuje. No jasne, przecież oczywistą oczywistością jest połączenie komputerów, tak aby mogły wymieniać ze sobą informacje. Niestety to nie było takie proste z kilku powodów. Podstawowym problemem była niekompatybilność istniejących maszyn ze sobą. Nie można było połączyć dwóch różnych maszyn od tak. Paradoksalnie nawet tych samych maszyn nie dało się połączyć ze sobą, ponieważ nie były do tego zaprojektowane. Kolejnym problemem był brak jakiejkolwiek dedykowanej infrastruktury sieciowej. Jednak najważniejszy czynnik determinujący brak gwałtownego rozwoju w tej dziedzinie można streścić pytaniem: ale po co? Pytanie to wydaje się być niedorzeczne, czyżby ludzie w tamtym czasie nie wyobrażali sobie zalet sieci, internetu, poczty elektronicznej, www, portali społecznościowych, Youtube’a? Ano nie, z bardzo prostej przyczyny. Ta cała miodność została wynaleziona później. W owym czasie nikt sobie nie zaprzątał głowy takimi utopiami. A co bardziej zaskakujące, nawet najbardziej odważni i kontrowersyjni futurolodzy nie byli w stanie przewidzieć czym połączenie komputerów może się skończyć.

Natomiast wojskowi USA byli sobie w stanie wyobrazić czym brak połączenia komputerów w sieć może się skończyć. W latach sześćdziesiątych dwudziestego wieku wojskowi amerykańscy obawiali się wojny nuklearnej pomiędzy ich krajem a Związkiem Radzieckim. Groźba była realna i nie mniej złowroga. Departament obrony Stanów Zjednoczonych zlecił grupie roboczej ARPA (Advanced Research Projects Agency) będącej częścią tegoż departamentu opracowanie sposobu komunikacji systemów komputerowych odpornego na zmasowany atak nuklearny. Chodziło o to, aby taka sieć była odporna na powstałe awarie i nie miała centralnego punktu sterowania. Uszkodzenie jednego węzła sieci bądź połączenia między dwoma węzłami nie powinno zakłócić jej działania.

Aby spełnić wymagania inżynierowie i badacze szybko doszli do wniosku, że sieć musi działać w oparciu o przełączanie pakietów (packet switching) czy tzw. komutację pakietów. Idea jest dość prosta. Rzecz w tym, że każda informacja musi być podzielona na serię pakietów, czyli pewną liczbę „paczek” o określonym rozmiarze. W dużym uproszczeniu można powiedzieć, że paczka taka oprócz informacji zawiera też adres nadawcy i odbiorcy. Dobrą analogią jest tradycyjna poczta. Wyobraźmy sobie, że możemy wysyłać tylko pocztówki, a jak wiadomo, miejsce na tekst jest tam mocno ograniczone. Więc aby wysłać dłuższy list musimy podzielić nasz elaborat na kilka części i każdą z osobna wysłać pocztówką. Należy dodać też pewne instrukcje w jaki sposób złożyć list w całość ponieważ pocztówki mogą docierać różnymi drogami i być odbierane w różnym czasie. Może się zdarzyć tak, że jedna lub więcej pocztówek zaginie. Wtedy odbiorca poprosi nas (oczywiście wysyłając pocztówkę) aby ponownie wysłać brakujące części. Może tego nie widać na pierwszy rzut oka, ale pomysł jest kapitalny w swojej prostocie. Genialna idea, nieco ukryta, polega na tym, że z góry zakładamy niedoskonałość naszych łącz. Coś może zaginąć, przyjść w innej kolejności, w różnym czasie, itp. I podobnie jak w przypadku tradycyjnej poczty, mechanizmy pośredniczące w dostarczeniu wiadomości nie muszą studiować całej korespondencji, są zainteresowane tylko adresem docelowym i robią co ich mocy aby dostarczyć przesyłkę (Best-effort delivery) jednak nie dając żadnej gwarancji. Protokół ten nazywał się NCP (Network Control Program).

I tak powstała sieć APARTNET. Skupiała ona centra wojskowe, akademickie i korporacyjne. Jednak nie była dostępna dla ogółu.

File:Arpanet map 1973.jpg
Sieć APARTNET w 1973r.

W roku 1973 opracowano ulepszonego następcę protokołu NCP – TCP/IP. Warto zapamiętać ten skrót, ponieważ protokołu tego używamy po dzień dzisiejszy, jest on fundamentem internetu i nie widać aby to miało się zmienić w najbliższym czasie. TCP/IP został upubliczniony na początku lat osiemdziesiątych. Rozpoczęła się era gwałtownego rozwoju sieci komputerowych.

Sir Tim Berners Lee arriving at the Guildhall to receive the Honorary Freedom of the City of London
Tim Berners-Lee, wynalazca HTTP (WWW)

W tym samym czasie pewien naukowiec pracujący dla CERNu, Tim Berners-Lee pracował nad protokołem do wymiany dokumentów HTTP (Hypertext Transfer Protocol) będącym dzisiaj fundamentem WWW (World Wide Web). Tego ostatniego chyba nie trzeba dzisiaj przedstawiać ani wyjaśniać znaczenia. Warto dodać, że protokół HTTP jest otwarty od samego początku, tzn. każdy miał do niego dostęp. To miało ogromny wpływ na szybkość rozwoju Internetu, ponieważ oprogramowanie budujące świat WWW powstawało niemal codziennie. To spowodowało gwałtowny rozwój tej dziedziny informatyki i nastąpiło radykalne upowszechnienie tej technologii.

Można powiedzieć, że w połowie lat osiemdziesiątych dwudziestego wieku, czyli ponad trzydzieści lat temu mieliśmy wszystkie kawałki układanki zwanej rewolucją internetową. I tak w istocie było, rewolucja internetowa właśnie się rozpoczęła i nie było już odwrotu

W kolejnej odsłonie tego cyklu dotrzemy do czasów obecnych, ale w tym krótkim okresie czasu jaki przedstawię wydarzyło się tak dużo, że wyzwaniem będzie zaprezentowanie tego, choćby pobieżnie, w jednym wpisie. Postaram się przedstawić w jaki sposób informatyka i komputery kojarzone z biznesem, wojskiem, nauką i uczelniami stały się głównym źródłem rozrywki

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *