Диаграма на компютърната мрежа на ARPA за юни 1967 г. Празен кръг е компютър със споделен достъп, кръг с линия е терминал за един потребител
Други статии от поредицата:
- История на релето
- История на електронните компютри
- История на транзистора
- Интернет история
До края на 1966г
Тейлър прехвърли отговорността за изпълнението на проекта в способни ръце
проблем
Ако компютър А иска да изпрати съобщение до компютър Б, как може това съобщение да намери пътя си от единия до другия? На теория бихте могли да позволите на всеки възел в комуникационна мрежа да комуникира с всеки друг възел, като свържете всеки възел към всеки възел с физически кабели. За да комуникира с B, компютър A просто ще изпрати съобщение по изходящия кабел, свързващ го с B. Такава мрежа се нарича mesh мрежа. Въпреки това, за всеки значителен размер на мрежата, този подход бързо става непрактичен, тъй като броят на връзките се увеличава като квадрат на броя на възлите (като (n2 - n)/2, за да бъдем точни).
Следователно е необходим някакъв начин за конструиране на маршрут на съобщение, който при пристигането на съобщението в междинния възел да го изпрати по-нататък към целта. В началото на 1960-те години имаше два основни подхода за решаване на този проблем. Първият е методът съхраняване и препращане за превключване на съобщения. Този подход е използван от телеграфната система. Когато съобщение пристигне в междинен възел, то временно се съхранява там (обикновено под формата на хартиена лента), докато може да бъде предадено по-нататък към целта или до друг междинен център, разположен по-близо до целта.
Тогава се появи телефонът и се наложи нов подход. Забавяне от няколко минути след всяко изказване по телефона, което трябваше да бъде дешифрирано и предадено до местоназначението, би създало усещането за разговор със събеседник, намиращ се на Марс. Вместо това телефонът използва превключване на веригата. Повикващият започва всяко обаждане, като изпраща специално съобщение, указващо на кого иска да се обади. Първо те направиха това, като разговаряха с оператора и след това набраха номер, който беше обработен от автоматично оборудване на централата. Операторът или оборудването са установили специална електрическа връзка между повикващия и повиквания. В случай на повиквания на дълги разстояния, това може да изисква няколко итерации, свързващи повикването чрез множество комутатори. След като връзката беше установена, самият разговор можеше да започне и връзката остана, докато една от страните не я прекъсне, като затвори.
Цифрова комуникация, която беше решено да се използва в ARPANET за свързване на компютри, работещи по схемата
Една важна разлика между компютърните мрежи за данни, от една страна, и телефона и телеграфа, от друга, беше чувствителността към грешки в данните, обработвани от машините. Промяна или загуба по време на предаване на един знак в телеграма или изчезване на част от дума в телефонен разговор едва ли може да наруши сериозно комуникацията на двама души. Но ако шумът по линията превключи един бит от 0 на 1 в команда, изпратена до отдалечен компютър, това може напълно да промени значението на командата. Следователно всяко съобщение трябваше да се проверява за грешки и да се изпраща повторно, ако се открият такива. Такива повторения биха били твърде скъпи за големи съобщения и е по-вероятно да причинят грешки, тъй като предаването им отнема повече време.
Решението на този проблем дойде чрез две независими събития, случили се през 1960 г., но това, което дойде по-късно, беше забелязано първо от Лари Робъртс и ARPA.
среща
През есента на 1967 г. Робъртс пристига в Гатлинбърг, Тенеси, отвъд гористите върхове на Грейт Смоки Маунтинс, за да достави документ, описващ мрежовите планове на ARPA. Той работеше в Службата за технологии за обработка на информация (IPTO) почти година, но много от детайлите на мрежовия проект бяха все още много неясни, включително решението на проблема с маршрутизирането. Освен неясните препратки към блоковете и техните размери, единственото споменаване на това в работата на Робъртс беше кратка и уклончива забележка в самия край: „Изглежда необходимо да се поддържа периодично използвана комуникационна линия, за да се получат отговори в едно десето към едно втори път, необходим за интерактивна работа. Това е много скъпо от гледна точка на мрежовите ресурси и освен ако не можем да осъществяваме повиквания по-бързо, превключването на съобщения и концентрацията ще станат много важни за участниците в мрежата. Очевидно по това време Робъртс все още не е решил дали да се откаже от подхода, който е използвал с Том Марил през 1965 г., тоест свързването на компютри чрез комутирана телефонна мрежа с помощта на автоматично набиране.
По стечение на обстоятелствата на същия симпозиум присъства и друг човек с много по-добра идея за решаване на проблема с маршрутизирането в мрежите за данни. Роджър Скантълбъри прекоси Атлантика, пристигайки от Британската национална физическа лаборатория (NPL) с доклад. Скантълбъри отведе Робъртс настрана след доклада му и му разказа за идеята си.
Дейвис, подобно на много ранни пионери на електронните компютри, е бил физик по образование. Той завършва Imperial College London през 1943 г. на 19 години и веднага е вербуван в тайна програма за ядрени оръжия с кодово име
Дейвис прие идеята и подписа с NPL възможно най-бързо. След като допринесе за детайлния дизайн и конструкцията на компютъра ACE, той остана дълбоко ангажиран в областта на изчислителната техника като изследователски ръководител в NPL. През 1965 г. той се озовава в САЩ за професионална среща, свързана с работата му, и използва възможността да посети няколко големи компютърни сайта за споделяне на време, за да види за какво е целият този шум. В британската компютърна среда споделянето на време в американския смисъл на интерактивно споделяне на компютър от множество потребители беше непознато. Вместо това споделянето на време означаваше разпределяне на работното натоварване на компютъра между няколко програми за пакетна обработка (така че например една програма да работи, докато друга е заета да чете лента). Тогава тази опция ще се нарича мултипрограмиране.
Лутанията на Дейвис го доведоха до проекта MAC в MIT, проекта JOSS в RAND Corporation в Калифорния и системата за споделяне на времето Dartmouth в Ню Хемпшир. На път за вкъщи един от колегите му предложи да се проведе семинар за споделяне, за да се образова британската общност за новите технологии, за които са научили в САЩ. Дейвис се съгласи и беше домакин на много от водещите фигури в американската компютърна сфера, включително
По време на семинара (или може би веднага след това) Дейвис беше поразен от идеята, че философията за споделяне на времето може да се приложи към компютърните комуникационни линии, а не само към самите компютри. Компютрите за споделяне на време дават на всеки потребител малка част от процесорното време и след това превключват към друг, давайки на всеки потребител илюзията, че има свой собствен интерактивен компютър. По същия начин, чрез нарязване на всяко съобщение на части със стандартен размер, които Дейвис нарича „пакети“, един комуникационен канал може да бъде споделен между много компютри или потребители на един компютър. Освен това, това ще реши всички аспекти на предаването на данни, за които телефонните и телеграфните комутатори не са подходящи. Потребител, работещ с интерактивен терминал, изпращащ кратки команди и получаващ кратки отговори, няма да бъде блокиран от прехвърляне на големи файлове, тъй като прехвърлянето ще бъде разделено на много пакети. Всяка повреда в такива големи съобщения ще засегне единичен пакет, който лесно може да бъде препредадено, за да завърши съобщението.
Дейвис описва идеите си в непубликувана статия от 1966 г. „Предложение за цифрова комуникационна мрежа“. По това време най-напредналите телефонни мрежи бяха на ръба на компютъризирането на комутаторите и Дейвис предложи вграждането на комутация на пакети в телефонната мрежа от следващо поколение, създавайки единна широколентова комуникационна мрежа, способна да обслужва различни заявки, от прости телефонни разговори до дистанционно достъп до компютри. Дотогава Дейвис беше повишен в мениджър на NPL и сформира група за дигитални комуникации под Скантълбъри, за да реализира проекта си и да създаде работеща демонстрация.
През годината, водеща до конференцията в Гатлинбърг, екипът на Скантълбъри изработи всички подробности за създаването на мрежа с комутация на пакети. Повреда на един възел може да бъде преодоляна чрез адаптивно маршрутизиране, което може да обработва множество пътища до дестинация, а повреда на единичен пакет може да бъде решена чрез повторното му изпращане. Симулацията и анализът казаха, че оптималният размер на пакета ще бъде 1000 байта - ако го направите много по-малък, тогава потреблението на честотна лента на редовете за метаданни в заглавката ще бъде твърде много, много повече - и времето за реакция за интерактивните потребители ще се увеличи твърде често поради големи съобщения.
Работата на Scantlebury включва подробности като формата на опаковката...
...и анализ на влиянието на размерите на пакетите върху латентността на мрежата.
Междувременно търсенето на Дейвис и Скантълбъри доведе до откриването на подробни изследователски документи, направени от друг американец, който беше измислил подобна идея няколко години преди тях. Но в същото време
ARPA имаше достъп до обемните доклади на Baran за RAND, но тъй като те не бяха свързани с интерактивни компютри, значението им за ARPANET не беше очевидно. Робъртс и Тейлър очевидно никога не са ги забелязвали. Вместо това, в резултат на една случайна среща, Скантълбъри предаде всичко на Робъртс на сребърен поднос: добре проектиран механизъм за превключване, приложимост към проблема за създаване на интерактивни компютърни мрежи, справочни материали от RAND и дори името „пакет“. Работата на NPL също така убеди Робъртс, че ще са необходими по-високи скорости, за да се осигури добър капацитет, така че той надгради плановете си до 50 Kbps връзки. За да се създаде ARPANET, беше решена основна част от проблема с маршрутизирането.
Вярно е, че има друга версия за произхода на идеята за превключване на пакети. По-късно Робъртс твърди, че вече е имал подобни мисли в главата си, благодарение на работата на колегата си Лен Клайнрок, който уж е описал концепцията през 1962 г. в докторската си дисертация върху комуникационните мрежи. Въпреки това е изключително трудно да се извлече такава идея от тази работа, а освен това не можах да намеря други доказателства за тази версия.
Мрежи, които никога не са съществували
Както виждаме, два екипа изпревариха ARPA в разработването на комутация на пакети, технология, която се оказа толкова ефективна, че сега е в основата на почти всички комуникации. Защо ARPANET беше първата значима мрежа, която го използва?
Всичко опира до организационни тънкости. ARPA нямаше официално разрешение да създаде комуникационна мрежа, но имаше голям брой съществуващи изследователски центрове със собствени компютри, култура на „свободен“ морал, която беше практически без надзор, и планини от пари. Първоначалното искане на Тейлър от 1966 г. за средства за създаване на ARPANET изискваше 1 милион долара и Робъртс продължи да харчи толкова всяка година от 1969 г. нататък, за да стартира мрежата. В същото време за ARPA такива пари бяха дребни пари, така че никой от шефовете му не се притесняваше какво прави Робъртс с тях, стига по някакъв начин да могат да бъдат обвързани с нуждите на националната отбрана.
Баран от RAND нямаше нито силата, нито властта да направи каквото и да било. Неговата работа беше чисто проучвателна и аналитична и можеше да се приложи в отбраната, ако желаеше. През 1965 г. RAND всъщност препоръчва своята система на военновъздушните сили, които се съгласяват, че проектът е жизнеспособен. Но внедряването му падна върху плещите на Агенцията за комуникации на отбраната и те не разбираха особено от цифровите комуникации. Баран убеди началниците си в RAND, че би било по-добре да оттегли това предложение, отколкото да позволи то да бъде приложено така или иначе и да съсипе репутацията на разпределените цифрови комуникации.
Дейвис, като ръководител на NPL, имаше много повече власт от Баран, но по-строг бюджет от ARPA и не разполагаше с готова социална и техническа мрежа от изследователски компютри. Той успя да създаде прототип на локална мрежа с комутация на пакети (имаше само един възел, но много терминали) в NPL в края на 1960-те години, със скромен бюджет от £120 000 за три години. ARPANET изразходва около половината от тази сума годишно за операции и поддръжка на всеки от многото възли на мрежата, с изключение на първоначалните инвестиции в хардуер и софтуер. Организацията, способна да създаде широкомащабна британска мрежа за комутация на пакети, беше Британската поща, която управляваше телекомуникационните мрежи в страната, с изключение на самата пощенска услуга. Дейвис успя да заинтересува няколко влиятелни служители с идеите си за единна цифрова мрежа в национален мащаб, но не успя да промени посоката на такава огромна система.
Licklider, чрез комбинация от късмет и планиране, намери идеалната оранжерия, където неговата междугалактическа мрежа може да процъфтява. В същото време не може да се каже, че всичко с изключение на пакетната комутация се свежда до пари. Изпълнението на идеята също изигра роля. Нещо повече, няколко други важни дизайнерски решения оформиха духа на ARPANET. Следователно, по-нататък ще разгледаме как е разпределена отговорността между компютрите, които изпращат и получават съобщения, и мрежата, през която те изпращат тези съобщения.
Какво друго да чета
- Джанет Абат, Изобретяването на интернет (1999)
- Кейти Хафнър и Матю Лайън, Където магьосниците остават до късно (1996)
- Леонард Клайнрок, „Ранна история на Интернет“, списание IEEE Communications (август 2010 г.)
- Артър Норберг и Джули О'Нийл, Трансформиране на компютърните технологии: Обработка на информация за Пентагона, 1962-1986 (1996)
- M. Mitchell Waldrop, The Dream Machine: JCR Licklider and the Revolution That Made Computing Personal (2001)
Източник: www.habr.com