Schemat sieci komputerowej ARPA z czerwca 1967. Puste kółko to komputer ze współdzielonym dostępem, kółko z linią to terminal dla jednego użytkownika
Inne artykuły z serii:
- Historia przekaźnika
- Historia komputerów elektronicznych
- Historia tranzystora
- Historia internetu
Do końca 1966 r
Taylor przekazał odpowiedzialność za realizację projektu w sprawne ręce
problem
Jeśli komputer A chce wysłać wiadomość do komputera B, w jaki sposób wiadomość może przedostać się z jednego do drugiego? Teoretycznie można pozwolić każdemu węzłowi w sieci komunikacyjnej na komunikację z każdym innym węzłem, łącząc każdy węzeł z każdym węzłem za pomocą kabli fizycznych. Aby komunikować się z komputerem B, komputer A po prostu wyśle wiadomość za pośrednictwem kabla wychodzącego łączącego go z komputerem B. Taka sieć nazywana jest siecią kratową. Jednakże w przypadku dowolnej znacznej wielkości sieci podejście to szybko staje się niepraktyczne, ponieważ liczba połączeń rośnie wraz z kwadratem liczby węzłów (dokładniej jako (n2 - n)/2).
Dlatego potrzebny jest jakiś sposób skonstruowania trasy komunikatu, która po dotarciu komunikatu do węzła pośredniego przesyłałaby go dalej do celu. Na początku lat sześćdziesiątych istniały dwa podstawowe podejścia do rozwiązania tego problemu. Pierwsza to metoda przełączania komunikatów typu „zapisz i przekaż”. Podejście to zostało zastosowane w systemie telegraficznym. Kiedy wiadomość docierała do węzła pośredniego, była tam tymczasowo przechowywana (zwykle w formie taśmy papierowej) do czasu, aż mogła zostać przesłana dalej do celu lub do innego ośrodka pośredniego, położonego bliżej celu.
Potem pojawił się telefon i potrzebne było nowe podejście. Kilkuminutowe opóźnienie po każdej wypowiedzi telefonicznej, którą trzeba było rozszyfrować i przekazać do miejsca przeznaczenia, dawało poczucie rozmowy z rozmówcą znajdującym się na Marsie. Zamiast tego w telefonie zastosowano przełączanie obwodów. Rozmówca rozpoczynał każdą rozmowę od wysłania specjalnej wiadomości wskazującej, do kogo chce zadzwonić. Najpierw robili to rozmawiając z operatorem, a następnie wybierając numer, który był przetwarzany przez automatykę na centrali. Operator lub sprzęt ustanowił dedykowane połączenie elektryczne pomiędzy osobą dzwoniącą a stroną wywoływaną. W przypadku połączeń międzymiastowych może to wymagać kilku powtórzeń połączenia poprzez wiele przełączników. Po nawiązaniu połączenia można było rozpocząć samą rozmowę i połączenie trwało do czasu, aż jedna ze stron je przerwała rozłączając się.
Komunikacja cyfrowa, którą postanowiono wykorzystać w ARPANET do łączenia komputerów pracujących według schematu
Istotną różnicą pomiędzy komputerowymi sieciami danych z jednej strony a telefonem i telegrafem z drugiej była wrażliwość na błędy w danych przetwarzanych przez maszyny. Zmiana lub utrata podczas przesyłania jednego znaku w telegramie lub zniknięcie części słowa w rozmowie telefonicznej nie mogą poważnie zakłócić komunikacji dwojga ludzi. Ale jeśli szum na linii zmieni pojedynczy bit z 0 na 1 w poleceniu wysłanym do zdalnego komputera, może to całkowicie zmienić znaczenie polecenia. Dlatego też każdą wiadomość należało sprawdzić pod kątem błędów i wysłać ponownie, jeśli jakieś zostały znalezione. Takie powtórki byłyby zbyt kosztowne w przypadku dużych wiadomości i powodowałyby większe ryzyko błędów, ponieważ ich transmisja trwała dłużej.
Rozwiązanie tego problemu przyniosły dwa niezależne wydarzenia, które miały miejsce w 1960 r., ale to, które nastąpiło później, zostało dostrzeżone jako pierwsze przez Larry'ego Robertsa i ARPA.
Spotkanie
Jesienią 1967 roku Roberts przybył do Gatlinburga w stanie Tennessee spoza zalesionych szczytów Great Smoky Mountains, aby dostarczyć dokument opisujący plany sieci ARPA. Pracował w Biurze Technologii Przetwarzania Informacji (IPTO) przez prawie rok, ale wiele szczegółów projektu sieci było nadal bardzo niejasnych, w tym rozwiązanie problemu routingu. Oprócz niejasnych wzmianek o blokach i ich rozmiarach, jedyną wzmianką o tym w pracy Robertsa była krótka i wymijająca uwaga na samym końcu: „Wydaje się konieczne utrzymywanie sporadycznie używanej linii komunikacyjnej, aby uzyskać odpowiedzi w proporcji jednej dziesiątej do jednego drugi raz wymagany do obsługi interaktywnej. Jest to bardzo kosztowne pod względem zasobów sieciowych i jeśli nie uda nam się wykonywać połączeń szybciej, przełączanie wiadomości i koncentracja staną się bardzo ważne dla uczestników sieci”. Oczywiście Roberts nie zdecydował jeszcze wtedy, czy porzucić podejście, które zastosował w 1965 r. w rozmowie z Tomem Marrillem, czyli łączenie komputerów za pośrednictwem komutowanej sieci telefonicznej za pomocą automatycznego wybierania numeru.
Przypadkowo na tym samym sympozjum pojawiła się inna osoba, która miała znacznie lepszy pomysł na rozwiązanie problemu routingu w sieciach danych. Roger Scantlebury przepłynął Atlantyk, przybywając z Brytyjskiego Narodowego Laboratorium Fizycznego (NPL) z raportem. Po jego raporcie Scantlebury wziął Robertsa na stronę i opowiedział mu o swoim pomyśle.
Davis, podobnie jak wielu wczesnych pionierów informatyki elektronicznej, był z wykształcenia fizykiem. Ukończył Imperial College w Londynie w 1943 roku w wieku 19 lat i natychmiast został przyjęty do tajnego programu broni nuklearnej o kryptonimie
Davis chwycił ten pomysł i podpisał kontrakt z NPL tak szybko, jak tylko mógł. Przyczyniwszy się do szczegółowego projektu i budowy komputera ACE, pozostał głęboko zaangażowany w dziedzinę informatyki jako lider badań w NPL. W 1965 roku znalazł się w USA na profesjonalnym spotkaniu związanym z jego pracą i skorzystał z okazji, aby odwiedzić kilka dużych witryn poświęconych komputerom z podziałem czasu, aby zobaczyć, o co to całe zamieszanie. W brytyjskim środowisku komputerowym nieznane było dzielenie czasu w amerykańskim sensie interaktywnego udostępniania komputera przez wielu użytkowników. Zamiast tego dzielenie czasu oznaczało rozdzielenie obciążenia komputera pomiędzy kilka programów do przetwarzania wsadowego (tak, że na przykład jeden program działał, podczas gdy inny był zajęty odczytywaniem taśmy). Wtedy ta opcja będzie nazywana wieloprogramowaniem.
Wędrówki Davisa zaprowadziły go do Projektu MAC na MIT, Projektu JOSS w RAND Corporation w Kalifornii i Dartmouth Time Sharing System w New Hampshire. W drodze do domu jeden z jego kolegów zaproponował zorganizowanie warsztatów na temat dzielenia się, aby poinformować społeczność brytyjską o nowych technologiach, o których dowiedziała się w USA. Davis zgodził się i gościł wiele czołowych osobistości amerykańskiej branży komputerowej, w tym m.in
Podczas seminarium (a być może bezpośrednio po nim) Davisa uderzył pomysł, że filozofię podziału czasu można zastosować do komputerowych linii komunikacyjnych, a nie tylko do samych komputerów. Komputery z podziałem czasu dają każdemu użytkownikowi niewielką część czasu procesora, a następnie przełączają się na inny, dając każdemu użytkownikowi złudzenie posiadania własnego, interaktywnego komputera. Podobnie, dzieląc każdą wiadomość na kawałki o standardowym rozmiarze, które Davis nazwał „pakietami”, pojedynczy kanał komunikacyjny może być współdzielony przez wiele komputerów lub użytkowników jednego komputera. Co więcej, rozwiązałoby to wszystkie aspekty transmisji danych, do których nie nadawały się centrale telefoniczne i telegraficzne. Użytkownik obsługujący terminal interaktywny wysyłający krótkie polecenia i otrzymujący krótkie odpowiedzi nie zostanie zablokowany przez przesyłanie dużego pliku, ponieważ transfer zostanie podzielony na wiele pakietów. Wszelkie uszkodzenia w tak dużych wiadomościach będą miały wpływ na pojedynczy pakiet, który można łatwo przesłać ponownie w celu uzupełnienia wiadomości.
Davis opisał swoje pomysły w niepublikowanym artykule z 1966 roku „Proposal for a Digital Communications Network”. W tamtym czasie najbardziej zaawansowane sieci telefoniczne znajdowały się u progu komputeryzacji przełączników, a Davis zaproponował wbudowanie przełączania pakietów w sieć telefoniczną nowej generacji, tworząc pojedynczą szerokopasmową sieć komunikacyjną zdolną do obsługi różnorodnych żądań, od prostych rozmów telefonicznych po zdalne dostęp do komputerów. Do tego czasu Davis awansował na menadżera NPL i utworzył pod kierownictwem Scantlebury grupę ds. komunikacji cyfrowej, aby wdrożyć swój projekt i stworzyć działające demo.
W roku poprzedzającym konferencję w Gatlinburgu zespół Scantlebury'ego opracował wszystkie szczegóły dotyczące tworzenia sieci z komutacją pakietów. Awarię pojedynczego węzła można przetrwać dzięki routingowi adaptacyjnemu, który może obsługiwać wiele ścieżek do miejsca docelowego, a awarię pojedynczego pakietu można rozwiązać poprzez ponowne wysłanie go. Symulacja i analiza wykazały, że optymalny rozmiar pakietu wynosiłby 1000 bajtów - jeśli zmniejszysz go znacznie, to zużycie przepustowości linii dla metadanych w nagłówku będzie za duże, znacznie większe - a czas odpowiedzi dla interaktywnych użytkowników wzrośnie zbyt często z powodu dużych wiadomości.
Praca Scantlebury'ego obejmowała takie szczegóły, jak format opakowania...
...oraz analiza wpływu rozmiarów pakietów na opóźnienia sieci.
Tymczasem poszukiwania Davisa i Scantlebury'ego doprowadziły do odkrycia szczegółowych artykułów naukowych sporządzonych przez innego Amerykanina, który kilka lat wcześniej wpadł na podobny pomysł. Ale w tym samym czasie
ARPA miała dostęp do obszernych raportów Barana dla RAND, ale ponieważ nie były one powiązane z komputerami interaktywnymi, ich znaczenie dla ARPANET nie było oczywiste. Najwyraźniej Roberts i Taylor nigdy ich nie zauważyli. Zamiast tego w wyniku jednego przypadkowego spotkania Scantlebury podał Robertsowi wszystko na srebrnej tacy: dobrze zaprojektowany mechanizm przełączający, możliwość zastosowania do problemu tworzenia interaktywnych sieci komputerowych, materiały referencyjne RAND, a nawet nazwę „pakiet”. Praca NPL przekonała również Robertsa, że do zapewnienia dobrej przepustowości potrzebne będą wyższe prędkości, dlatego zaktualizował swoje plany do łączy o przepustowości 50 Kb/s. Aby stworzyć ARPANET, rozwiązano zasadniczą część problemu routingu.
To prawda, że istnieje inna wersja pochodzenia idei przełączania pakietów. Roberts twierdził później, że podobne myśli chodził mu już do głowy dzięki pracom swojego kolegi Lena Kleinrocka, który rzekomo opisał tę koncepcję już w 1962 roku w swojej rozprawie doktorskiej na temat sieci komunikacyjnych. Jednak niezwykle trudno jest wydobyć taki pomysł z tej pracy, a poza tym nie udało mi się znaleźć żadnych innych dowodów na tę wersję.
Sieci, które nigdy nie istniały
Jak widzimy, dwa zespoły wyprzedziły ARPA w opracowywaniu przełączania pakietów – technologii, która okazała się tak skuteczna, że obecnie stanowi podstawę prawie całej komunikacji. Dlaczego ARPANET była pierwszą znaczącą siecią, która z niej skorzystała?
Wszystko zależy od subtelności organizacyjnych. ARPA nie miała oficjalnego pozwolenia na utworzenie sieci komunikacyjnej, ale istniała duża liczba ośrodków badawczych z własnymi komputerami, kulturą „wolnej” moralności, praktycznie pozbawionej nadzoru, i górami pieniędzy. Pierwotna prośba Taylora o fundusze na utworzenie ARPANET z 1966 r. opiewała na kwotę 1 miliona dolarów, a Roberts począwszy od 1969 r. co roku wydawał tę kwotę na uruchomienie sieci. Jednocześnie dla ARPA takie pieniądze były drobną drobnostką, więc nikt z jego szefów nie martwił się, co Roberts z nimi zrobi, o ile można je w jakiś sposób powiązać z potrzebami obronności kraju.
Baran w RAND nie miał ani mocy, ani władzy, aby cokolwiek zrobić. Jego praca miała charakter wyłącznie eksploracyjny i analityczny i w razie potrzeby można ją było zastosować w obronie. W 1965 roku RAND faktycznie polecił swój system Siłom Powietrznym, które zgodziły się, że projekt jest wykonalny. Ale jego wdrożenie spadło na barki Agencji Łączności Obronnej, która nie rozumiała szczególnie komunikacji cyfrowej. Baran przekonał swoich przełożonych w RAND, że lepiej będzie wycofać tę propozycję, niż pozwolić na jej wdrożenie i zrujnowanie reputacji rozproszonej komunikacji cyfrowej.
Davis jako szef NPL miał znacznie większą władzę niż Baran, ale mniejszy budżet niż ARPA i nie miał gotowej sieci społeczno-technicznej komputerów badawczych. Udało mu się stworzyć prototyp lokalnej sieci z komutacją pakietów (był tylko jeden węzeł, ale wiele terminali) w NPL pod koniec lat 1960. przy skromnym budżecie wynoszącym 120 000 funtów na trzy lata. ARPANET wydawała rocznie około połowę tej kwoty na eksploatację i konserwację każdego z wielu węzłów sieci, nie licząc początkowych inwestycji w sprzęt i oprogramowanie. Organizacją zdolną do stworzenia brytyjskiej sieci komutacji pakietów na dużą skalę była Poczta Brytyjska, która zarządzała sieciami telekomunikacyjnymi w kraju, z wyjątkiem samej usługi pocztowej. Davisowi udało się zainteresować swoimi pomysłami na ujednoliconą sieć cyfrową w skali kraju kilku wpływowych urzędników, nie był jednak w stanie zmienić kierunku rozwoju tak ogromnego systemu.
Licklider, dzięki połączeniu szczęścia i planowania, znalazł idealną szklarnię, w której mogła rozkwitnąć jego sieć międzygalaktyczna. Jednocześnie nie można powiedzieć, że wszystko oprócz przełączania pakietów sprowadzało się do pieniędzy. Istotną rolę odegrała także realizacja pomysłu. Co więcej, kilka innych ważnych decyzji projektowych ukształtowało ducha ARPANET. Dlatego w następnej kolejności przyjrzymy się rozkładowi odpowiedzialności pomiędzy komputerami, które wysyłały i odbierały wiadomości, a siecią, przez którą te wiadomości wysyłały.
Co jeszcze przeczytać
- Janet Abbate, Wynalazek Internetu (1999)
- Katie Hafner i Matthew Lyon, Gdzie czarodzieje śpią do późna (1996)
- Leonard Kleinrock, „Wczesna historia Internetu”, Magazyn IEEE Communications (sierpień 2010)
- Arthur Norberg i Julie O'Neill, Transformacja technologii komputerowej: przetwarzanie informacji dla Pentagonu, 1962-1986 (1996)
- M. Mitchell Waldrop, Maszyna marzeń: JCR Licklider i rewolucja, która uczyniła informatykę osobistą (2001)
Źródło: www.habr.com