História internetu: ARPANET - balík

História internetu: ARPANET - balík
Schéma počítačovej siete ARPA za jún 1967. Prázdny kruh je počítač so zdieľaným prístupom, kruh s čiarou je terminál pre jedného používateľa

Ďalšie články zo série:

Do konca roka 1966 Robert Taylor s peniazmi ARPA spustil projekt pripojenia mnohých počítačov do jedného systému, inšpirovaný myšlienkou „medzigalaktickej siete» Joseph Carl Robnett Licklider.

Taylor preniesol zodpovednosť za realizáciu projektu do schopných rúk Larry Roberts. V nasledujúcom roku urobil Roberts niekoľko kritických rozhodnutí, ktoré sa odrazili v celej technickej architektúre a kultúre siete ARPANET a jej nástupcov, v niektorých prípadoch aj na ďalšie desaťročia. Prvým dôležitým rozhodnutím, aj keď nie v chronológii, bolo určenie mechanizmu na smerovanie správ z jedného počítača do druhého.

problém

Ak chce počítač A poslať správu do počítača B, ako môže táto správa nájsť cestu z jedného do druhého? Teoreticky by ste mohli umožniť každému uzlu v komunikačnej sieti komunikovať s každým ďalším uzlom pripojením každého uzla ku každému druhému uzlu fyzickými káblami. Aby mohol počítač A komunikovať s B, jednoducho odošle správu cez odchádzajúci kábel, ktorý ho spája s B. Takáto sieť sa nazýva mesh sieť. Avšak pre akúkoľvek významnú veľkosť siete sa tento prístup rýchlo stáva nepraktickým, pretože počet pripojení sa zvyšuje s druhou mocninou počtu uzlov (presnejšie ako (n2 - n)/2).

Preto je potrebný nejaký spôsob konštrukcie trasy správy, ktorá by ju po príchode správy do medziľahlého uzla poslala ďalej k cieľu. Začiatkom 1960. rokov XNUMX. storočia existovali dva základné prístupy k riešeniu tohto problému. Prvým je metóda prepínania správ typu store-and-forward. Tento prístup využíval telegrafný systém. Keď správa dorazila do medziľahlého uzla, bola tam dočasne uložená (zvyčajne vo forme papierovej pásky), kým sa nedala preniesť ďalej k cieľu alebo do iného medziľahlého centra umiestneného bližšie k cieľu.

Potom prišiel telefón a bol potrebný nový prístup. Niekoľkominútové oneskorenie po každom telefonickom prejave, ktorý bolo potrebné dešifrovať a preniesť na miesto určenia, by vyvolalo pocit rozhovoru s partnerom nachádzajúcim sa na Marse. Namiesto toho telefón používal prepínanie okruhov. Volajúci začal každý hovor odoslaním špeciálnej správy s uvedením, komu chce zavolať. Najprv to urobili tak, že sa porozprávali s operátorom a potom vytočili číslo, ktoré bolo spracované automatickým zariadením na ústredni. Operátor alebo zariadenie vytvorilo vyhradené elektrické spojenie medzi volajúcim a volanou stranou. V prípade diaľkových hovorov to môže vyžadovať niekoľko iterácií spojenia hovoru cez viacero prepínačov. Po nadviazaní spojenia sa mohol začať samotný rozhovor a spojenie trvalo, kým ho jedna zo strán neprerušila zložením.

Digitálna komunikácia, ktorú bolo rozhodnuté použiť v ARPANETe na prepojenie počítačov pracujúcich podľa schémy zdieľanie času, využíval funkcie telegrafu aj telefónu. Na jednej strane sa dátové správy prenášali v samostatných paketoch, ako napríklad v telegrafe, a nie ako nepretržité telefonické rozhovory. Tieto správy však môžu mať rôznu veľkosť na rôzne účely, od príkazov konzoly s dĺžkou niekoľkých znakov až po veľké dátové súbory prenášané z jedného počítača do druhého. Ak sa súbory oneskorili pri preprave, nikto sa na to nesťažoval. Vzdialená interaktivita však vyžadovala rýchlu reakciu, napríklad telefonický hovor.

Jedným z dôležitých rozdielov medzi počítačovými dátovými sieťami na jednej strane a telefónom a telegrafom na strane druhej bola citlivosť na chyby v údajoch spracovávaných strojmi. Zmena alebo strata pri prenose jedného znaku v telegrame alebo zmiznutie časti slova v telefonickom rozhovore by sotva mohli vážne narušiť komunikáciu dvoch ľudí. Ak by však šum na linke zmenil jeden bit z 0 na 1 v príkaze odoslanom vzdialenému počítaču, mohlo by to úplne zmeniť význam príkazu. Každá správa preto musela byť skontrolovaná, či neobsahuje chyby, a ak sa nejaké našli, bolo potrebné ich znova odoslať. Takéto opakovania by boli príliš drahé pre veľké správy a bolo by pravdepodobnejšie, že spôsobia chyby, pretože ich prenos trvá dlhšie.

Riešenie tohto problému prinieslo dve nezávislé udalosti, ktoré sa stali v roku 1960, ale tú, ktorá prišla neskôr, si všimli ako prvé Larry Roberts a ARPA.

stretnutie

Na jeseň roku 1967 prišiel Roberts do Gatlinburgu v štáte Tennessee spoza zalesnených vrcholkov Great Smoky Mountains, aby doručil dokument popisujúci plány siete ARPA. V oddelení informačných technológií (IPTO) pracoval takmer rok, no mnohé detaily projektu siete boli stále veľmi nejasné, vrátane riešenia problému so smerovaním. Okrem vágnych zmienok o blokoch a ich veľkostiach bola jediným odkazom na to v Robertsovej práci stručná a vyhýbavá poznámka na samom konci: „Zdá sa, že je potrebné udržiavať prerušovane používanú komunikačnú linku na získanie odpovedí v pomere jedna desatina k jednej. druhýkrát potrebný na interaktívnu prevádzku. Je to veľmi drahé z hľadiska sieťových zdrojov a pokiaľ nebudeme môcť telefonovať rýchlejšie, prepínanie správ a koncentrácia sa stanú pre účastníkov siete veľmi dôležitými.“ Je zrejmé, že v tom čase sa Roberts ešte nerozhodol, či opustiť prístup, ktorý použil s Tomom Marrillom v roku 1965, teda pripojenie počítačov cez komutovanú telefónnu sieť pomocou automatického vytáčania.

Zhodou okolností bol na tom istom sympóziu prítomný iný človek s oveľa lepším nápadom na riešenie problému smerovania v dátových sieťach. Roger Scantlebury prekročil Atlantik a prišiel z Britského národného fyzikálneho laboratória (NPL) so správou. Scantlebury vzal Robertsa bokom po jeho správe a povedal mu o svojom nápade. prepínanie paketov. Túto technológiu vyvinul jeho šéf v NPL Donald Davis. V Spojených štátoch sú Davisove úspechy a história málo známe, hoci na jeseň roku 1967 bola Davisova skupina v NPL so svojimi nápadmi minimálne o rok pred ARPA.

Davis, rovnako ako mnohí prví priekopníci elektronických počítačov, bol vzdelaním fyzik. Vyštudoval Imperial College London v roku 1943 vo veku 19 rokov a okamžite bol prijatý do tajného programu jadrových zbraní s kódovým označením Rúrkové zliatiny. Tam dohliadal na tím ľudských kalkulačiek, ktorí používali mechanické a elektrické kalkulačky na rýchle vytváranie numerických riešení problémov súvisiacich s jadrovou fúziou (jeho nadriadený bol Emil Július Klaus Fuchs, nemecký krajanský fyzik, ktorý už v tom čase začal prenášať tajomstvá jadrových zbraní do ZSSR). Po vojne sa od matematika Johna Womersleyho dopočul o projekte, ktorý viedol v NPL – išlo o vytvorenie elektronického počítača, ktorý mal vykonávať rovnaké výpočty oveľa vyššou rýchlosťou. Počítač navrhol Alan Turing nazývaný ACE, „automatický počítačový motor“.

Davis skočil do myšlienky a podpísal zmluvu s NPL tak rýchlo, ako len mohol. Po tom, čo prispel k podrobnému návrhu a konštrukcii počítača ACE, zostal hlboko zapojený do oblasti výpočtovej techniky ako vedúci výskumu v NPL. V roku 1965 sa náhodou ocitol v USA na odbornom stretnutí, ktoré sa týkalo jeho práce, a využil príležitosť navštíviť niekoľko veľkých serverov s počítačmi na zdieľanie času, aby zistil, o čom je ten rozruch. V britskom výpočtovom prostredí bolo zdieľanie času v americkom zmysle interaktívneho zdieľania počítača viacerými používateľmi neznáme. Namiesto toho zdieľanie času znamenalo rozdelenie pracovnej záťaže počítača medzi niekoľko programov dávkového spracovania (takže napríklad jeden program fungoval, zatiaľ čo iný bol zaneprázdnený čítaním pásky). Potom sa táto možnosť bude nazývať multiprogramovanie.

Davisove putovanie ho priviedlo k projektu MAC na MIT, projektu JOSS v RAND Corporation v Kalifornii a Dartmouth Time Sharing System v New Hampshire. Na ceste domov jeden z jeho kolegov navrhol usporiadať workshop o zdieľaní, aby vzdelával britskú komunitu o nových technológiách, o ktorých sa naučili v USA. Davis súhlasil a hostil mnoho popredných osobností v americkej výpočtovej oblasti, vrátane Fernando José Corbato (tvorca „Interoperabilného systému zdieľania času“ na MIT) a Larry Roberts sám.

Počas seminára (alebo možno hneď po ňom) Davisa zasiahla myšlienka, že filozofia zdieľania času by sa dala aplikovať aj na počítačové komunikačné linky, nielen na samotné počítače. Počítače s časovým zdieľaním poskytujú každému používateľovi malú časť procesorového času a potom prepnú na iný, čím každému používateľovi dávajú ilúziu, že má vlastný interaktívny počítač. Podobne, rozrezaním každej správy na kusy štandardnej veľkosti, ktoré Davis nazval „pakety“, môže byť jeden komunikačný kanál zdieľaný medzi mnohými počítačmi alebo používateľmi jedného počítača. Navyše by to vyriešilo všetky aspekty prenosu dát, na ktoré sa nehodili telefónne a telegrafné spínače. Používateľ obsluhujúci interaktívny terminál odosielajúci krátke príkazy a prijímajúci krátke odpovede nebude blokovaný prenosom veľkého súboru, pretože prenos bude rozdelený do mnohých paketov. Akékoľvek poškodenie v takýchto veľkých správach ovplyvní jeden paket, ktorý sa dá jednoducho znova preniesť na dokončenie správy.

Davis opísal svoje myšlienky v nepublikovanom dokumente z roku 1966 „Návrh digitálnej komunikačnej siete“. V tom čase boli najpokročilejšie telefónne siete na pokraji počítačovej automatizácie a Davis navrhol vložiť prepínanie paketov do telefónnej siete novej generácie, čím sa vytvorila jediná širokopásmová komunikačná sieť schopná obsluhovať rôzne požiadavky, od jednoduchých telefónnych hovorov až po vzdialené hovory. prístup k počítačom. Dovtedy bol Davis povýšený na manažéra NPL a vytvoril skupinu pre digitálnu komunikáciu pod Scantlebury s cieľom implementovať jeho projekt a vytvoriť pracovné demo.

V roku, ktorý predchádzal konferencii v Gatlinburgu, tím Scantlebury vypracoval všetky detaily vytvorenia siete s prepínaním paketov. Zlyhanie jedného uzla by sa dalo prežiť adaptívnym smerovaním, ktoré by zvládlo viacero ciest k cieľu, a zlyhanie jedného paketu by sa dalo vyriešiť jeho opätovným odoslaním. Simulácia a analýza uviedli, že optimálna veľkosť paketu by bola 1000 XNUMX bajtov – ak ju urobíte oveľa menšou, spotreba šírky pásma riadkov pre metadáta v hlavičke bude príliš veľká, oveľa viac – a čas odozvy pre interaktívnych používateľov sa zvýši. príliš často kvôli veľkým správam.

História internetu: ARPANET - balík
Scantleburyho práca zahŕňala detaily, ako napríklad formát balíka...

História internetu: ARPANET - balík
...a analýza vplyvu veľkostí paketov na latenciu siete.

Medzitým hľadanie Davisa a Scantleburyho viedlo k objavu podrobných výskumných prác vykonaných iným Američanom, ktorý prišiel s podobným nápadom niekoľko rokov pred nimi. Ale v rovnakom čase Pavol Baran, elektroinžinier v RAND Corporation, vôbec nepremýšľal o potrebách používateľov počítačov zdieľajúcich čas. RAND bol think-tank financovaný ministerstvom obrany v Santa Monice v Kalifornii, ktorý bol vytvorený po druhej svetovej vojne s cieľom poskytovať armáde dlhodobé plánovanie a analýzu strategických problémov. Baranovým cieľom bolo oddialiť jadrovú vojnu vytvorením vysoko spoľahlivej vojenskej komunikačnej siete schopnej prežiť aj rozsiahly jadrový útok. Takáto sieť by znížila príťažlivosť preventívneho útoku ZSSR, pretože by bolo veľmi ťažké zničiť schopnosť USA zasiahnuť v reakcii na viaceré citlivé body. Na tento účel Baran navrhol systém, ktorý rozdelil správy na to, čo nazval bloky správ, ktoré by mohli byť nezávisle prenášané cez sieť redundantných uzlov a potom zostavené v koncovom bode.

ARPA mala prístup k Baranovým rozsiahlym správam pre RAND, ale keďže nesúviseli s interaktívnymi počítačmi, ich dôležitosť pre ARPANET nebola zrejmá. Roberts a Taylor si ich zjavne nikdy nevšimli. Namiesto toho, ako výsledok jedného náhodného stretnutia, Scantlebury odovzdal Robertsovi všetko na striebornom podnose: dobre navrhnutý prepínací mechanizmus, použiteľnosť na problém vytvárania interaktívnych počítačových sietí, referenčné materiály od RAND a dokonca aj názov „balík“. Práca NPL tiež presvedčila Robertsa, že na zabezpečenie dobrej kapacity budú potrebné vyššie rýchlosti, a tak svoje plány upgradoval na linky s rýchlosťou 50 Kbps. Na vytvorenie siete ARPANET bola vyriešená základná časť problému smerovania.

Je pravda, že existuje iná verzia pôvodu myšlienky prepínania paketov. Roberts neskôr tvrdil, že podobné myšlienky už mal v hlave vďaka práci svojho kolegu Lena Kleinrocka, ktorý tento koncept údajne opísal už v roku 1962 vo svojej doktorandskej práci o komunikačných sieťach. Je však neuveriteľne ťažké vytiahnuť takúto myšlienku z tohto diela a okrem toho sa mi nepodarilo nájsť žiadne ďalšie dôkazy pre túto verziu.

Siete, ktoré nikdy neexistovali

Ako môžeme vidieť, dva tímy predbehli ARPA vo vývoji prepínania paketov, technológie, ktorá sa ukázala byť natoľko efektívna, že teraz je základom takmer všetkej komunikácie. Prečo bol ARPANET prvou významnou sieťou, ktorá ho používala?

Všetko je to o organizačných jemnostiach. ARPA nemala žiadne oficiálne povolenie na vytvorenie komunikačnej siete, ale existovalo veľké množstvo existujúcich výskumných centier s vlastnými počítačmi, kultúrou „slobodnej“ morálky, ktorá bola prakticky bez dozoru, a kopec peňazí. Taylorova pôvodná žiadosť z roku 1966 o finančné prostriedky na vytvorenie siete ARPANET požadovala 1 milión dolárov a Roberts od roku 1969 naďalej utrácal toľko peňazí ročne na uvedenie siete do prevádzky. Zároveň pre ARPA boli takéto peniaze malou zmenou, takže sa nikto z jeho šéfov netrápil tým, čo s nimi Roberts robí, pokiaľ sa to dá nejako spojiť s potrebami národnej obrany.

Baran v RAND nemal silu ani oprávnenie čokoľvek robiť. Jeho práca bola čisto prieskumná a analytická a v prípade potreby sa dala použiť na obranu. V roku 1965 RAND skutočne odporučil svoj systém letectvu, ktoré súhlasilo s tým, že projekt je životaschopný. Jeho implementácia však padla na plecia obrannej komunikačnej agentúry a digitálnej komunikácii zvlášť nerozumeli. Baran presvedčil svojich nadriadených v RAND, že by bolo lepšie tento návrh stiahnuť, ako nechať ho akokoľvek implementovať a pokaziť reputáciu distribuovanej digitálnej komunikácie.

Davis ako šéf NPL mal oveľa väčšiu moc ako Baran, no obmedzený rozpočet ako ARPA a nemal hotovú sociálnu a technickú sieť výskumných počítačov. Podarilo sa mu vytvoriť prototyp lokálnej siete s prepínaním paketov (bol tam len jeden uzol, ale veľa terminálov) v NPL koncom 1960. rokov so skromným rozpočtom 120 000 libier na tri roky. ARPANET minul približne polovicu tejto sumy ročne na prevádzku a údržbu na každom z mnohých uzlov siete, s výnimkou počiatočných investícií do hardvéru a softvéru. Organizáciou schopnou vytvoriť rozsiahlu britskú sieť na prepínanie paketov bola Britská pošta, ktorá spravovala telekomunikačné siete v krajine, okrem samotnej poštovej služby. Davisovi sa podarilo zaujať svojimi nápadmi na jednotnú digitálnu sieť v celoštátnom meradle viacerých vplyvných funkcionárov, no nedokázal zmeniť smerovanie takého obrovského systému.

Licklider vďaka kombinácii šťastia a plánovania našiel dokonalý skleník, v ktorom mohla prekvitať jeho medzigalaktická sieť. Zároveň sa nedá povedať, že všetko okrem prepínania paketov išlo len o peniaze. Svoju úlohu zohralo aj prevedenie nápadu. Okrem toho niekoľko ďalších dôležitých rozhodnutí o dizajne formovalo ducha ARPANET. Preto sa ďalej pozrieme na to, ako bola zodpovednosť rozdelená medzi počítače, ktoré odosielali a prijímali správy, a sieť, cez ktorú tieto správy odosielali.

Čo ešte čítať

  • Janet Abbate, Vynájdenie internetu (1999)
  • Katie Hafner a Matthew Lyon, Where Wizards Stay Up Late (1996)
  • Leonard Kleinrock, „Stará história internetu“, IEEE Communications Magazine (august 2010)
  • Arthur Norberg a Julie O'Neill, Transforming Computer Technology: Information Processing pre Pentagon, 1962-1986 (1996)
  • M. Mitchell Waldrop, The Dream Machine: JCR Licklider a revolúcia, ktorá urobila počítač osobnou (2001)

Zdroj: hab.com

Pridať komentár