[Перевод] История интернета: ARPANET — зарождение

58e90b032a7338e6ce948fe2cdc5da74.jpg

Другие статьи цикла:
  • История реле
  • История электронных компьютеров
  • История транзистора
  • История интернета


К середине 1960-х первые вычислительные системы с разделением времени в целом повторили раннюю историю первых телефонных коммутаторов. Предприниматели создавали эти коммутаторы, чтобы позволить подписчикам пользоваться услугами такси, врача или пожарной бригады. Однако подписчики вскоре обнаружили, что местные коммутаторы точно так же подходят для общения и социализации друг с другом. Точно так же и системы с разделением времени, сначала созданные для того, чтобы пользователи могли «вызывать» себе вычислительные мощности, вскоре превратились в коммунальные коммутаторы со встроенной системой обмена сообщениями. В следующем десятилетии компьютеры пройдут очередной этап истории телефона — появление взаимосвязи коммутаторов, образующей региональные и междугородние сети.

Протосеть


Первой попыткой объединить несколько компьютеров в более крупное единое целое был проект сети интерактивных компьютеров SAGE, система американской ПВО. Поскольку каждый из 23 управляющих центров SAGE покрывал определённую географическую область, требовался механизм для передачи радарных следов из одного центра в другой, в случаях, когда чужое воздушное судно пересекало границу между этими областями. Разработчики SAGE прозвали эту задачу «междуговорной» [cross-telling], и решили её, создав линии для передачи данных на основе выделенных телефонных линий AT&T, протянутых между всеми соседними центрами управления. Рональд Энтикнап, входивший в состав небольшой делегации Королевских вооружённых сил, отправленных в SAGE, руководил разработкой и внедрением этой подсистемы. К сожалению, я не нашёл подробного описания «междуговорной» системы, но, очевидно, компьютер в каждом из центров управления определял момент, когда след на радаре переходил в другой сектор, и отправлял свои записи по телефонной линии компьютеру того сектора, где её мог принять оператор, отслеживающий тамошний терминал.

Системе SAGE нужно было переводить цифровые данные в аналоговый сигнал телефонной линии (а потом обратно на принимавшей его станции), в связи с чем AT&T выдалась возможность разработать модем «Bell 101» (или dataset, как его сначала называли), способный передавать скромные 110 бит в секунду. Позднее это устройство назвали модемом, за его способность модулировать аналоговый телефонный сигнал при помощи набора исходящих цифровых данных, и демодулировать биты из входящей волны.

3f9d7dc6776cb1a643571b778e3b495f.jpg
Bell 101 dataset

Тем самым SAGE заложил важную техническую основу для более поздних компьютерных сетей. Однако первой компьютерной сетью, чьё наследие было достаточно долгим и влиятельным, стала сеть с названием, известным и сегодня: ARPANET. В отличие от SAGE, она объединяла разношёрстный набор компьютеров, как с разделением времени пользователей, так и с пакетной обработкой данных, у каждого из которых был свой особенный набором программ. Сеть задумывалась как универсальная по масштабу и функционированию, и должна была удовлетворять любые потребности пользователей. Проект финансировал отдел технологий обработки информации (Information Processing Techniques Office, IPTO), во главе с директором Робертом Тэйлором, являвшийся отделом компьютерных исследований в ARPA. Но саму идею подобной сети придумал первый директор этого отдела, Джозеф Карл Робнетт Ликлайдер.

Идея


Как мы узнали ранее, Ликлайдер, или «Лик» для своих коллег, по образованию был психологом. Однако когда он работал с радарными системами в лаборатории Линкольна в конце 1950-х, его очаровали интерактивные компьютеры. Эта страсть привела к тому, что он финансировал некоторые из первых экспериментов по компьютерам с разделённым по времени доступам, когда в 1962-м он стал директором только что сформированного IPTO.

К тому времени он уже мечтал о возможности связать изолированные интерактивные компьютеры в более крупную сверхструктуру. В своей работе 1960 года по «симбиозу человека и компьютера» он писал:

Кажется разумным представить себе «мыслительный центр», который сможет вобрать в себя функции современных библиотек и предполагаемые прорывы в области хранения и извлечения информации, а также симбиотические функции, описанные выше в данной работе. Эта картина с лёгкостью масштабируется в сеть из таких центров, объединённых линиями широкополосных коммуникаций, и доступную индивидуальным пользователям посредством арендуемых телефонных линий.


Как TX-2 зажёг пламенную страсть Лика к интерактивным компьютерам, так и SAGE, возможно, побудила его представить, как можно связать между собой различные интерактивные вычислительные центры, и обеспечить что-то вроде телефонной сети для интеллектуальных услуг. Откуда бы ни возникла эта идея, Лик начал распространять её по сообществу исследователей, созданному им в IPTO, и наиболее известным из таких сообщений стала докладная записка от 23 апреля 1963 года, адресованная «Членам и отделениям межгалактической компьютерной сети», то есть, различным исследователям, получавшим финансирование от IPTO на компьютерный доступ с разделением времени и другие вычислительные проекты.

Записка выглядит беспорядочной и хаотичной, явно надиктована на лету и не редактировалась. Поэтому, чтобы понять, что именно хотел сказать Лик по поводу компьютерных сетей, приходится немного порассуждать. Однако некоторые моменты сразу выделяются. Во-первых, Лик рассказал, что «различные проекты», финансируемые IPTO, на самом деле принадлежат к «одной области». После этого он обсуждает необходимость размещения денег и проектов для максимизации преимуществ данного предприятия, поскольку среди сети исследователей «для достижения прогресса каждому активному исследователю требуется программная база и оборудование более сложное и всестороннее, чем он сам может создать за разумное время». Лик заключает, что для достижения этой глобальной эффективности требуются некоторые личные уступки и жертвы.

Затем он начинает подробно обсуждать компьютерные (а не социальные) сети. Он пишет о необходимости в некоем языке управления сетью (то, что позднее назовут протоколом) и его желанием когда-нибудь увидеть компьютерную сеть IPTO, состоящую из «по меньшей мере, четырёх крупных компьютеров, возможно, шести-восьми малых компьютеров, и большого ассортимента накопителей на дисках и магнитной плёнке — не говоря уже об удалённых консолях и телетайпных станциях». Наконец, он на нескольких страницах расписывает конкретный пример того, как в будущем может развиваться взаимодействие с такой компьютерной сетью. Лик представляет себе ситуацию, в которой он проводит анализ некоторых экспериментальных данных. «Проблема в том, — пишет он, — что у меня нет приличной программы для построения графиков. Есть ли подходящая программа где-то в системе? Используя доктрину преобладания сети, я сначала опрашиваю местный компьютер, а затем другие центры. Допустим, я работаю в SDC, и что я нахожу вроде бы подходящую программу на диске в Беркли». Он запрашивает у сети исполнение этой программы, предполагая, что «со сложной системой управления сетью мне не придётся решать, передавать ли данные, чтобы программы обрабатывали их где-то ещё, или скачивать программы себе и запускать их для работы над моими данными».

Все вместе эти фрагменты идей открывают более крупную схему, задуманную Ликлайдером: во-первых, разделить определённые специальности и области знаний между исследователями, получающими финансирование от IPTO, а потом построить на основе этого социального сообщества физическую сеть из компьютеров IPTO. Это физическое проявление «общего дела» IPTO позволит исследователям делиться знаниями и получать преимущества специализированного оборудования и ПО на каждом из рабочих мест. Таким образом IPTO сможет избежать расточительного дублирования, при этом усиливая возможности каждого доллара финансирования, давая каждому исследователю из всех проектов IPTO доступ к полному спектру вычислительных возможностей.

Эта идея разделения ресурсов между членами исследовательского сообщества посредством сети связи заронила в IPTO семена, взошедшие через несколько лет в виде создания ARPANET.

Несмотря на своё военное происхождение, ARPANET, появившаяся в Пентагоне, не имела военного оправдания. Иногда говорят, что эту сеть разрабатывали как сеть связи военного толка, способную пережить ядерную атаку. Как мы увидим позднее, между ARPANET и более ранним проектом с таким предназначением существует непрямая связь, и руководители ARPA периодически рассказывали об «укреплённых системах», чтобы оправдать существование своей сети перед Конгрессом или министром обороны. Но на самом деле IPTO создала ARPANET чисто для своих внутренних нужд, для поддержки сообщества исследователей — большая часть которых не могла оправдать свою активность работой на оборонные цели.

Тем временем, в момент выхода своей знаменитой должностной записки, Ликлайдер уже начал планировать зародыш своей межгалактической сети, директором которой станет Леонард Клейнрок из Калифорнийского университета в Лос-Анджелесе (UCLA).

image
Консоль для SAGE модели OA-1008, в комплекте со световым пистолетом (на конце провода, под прозрачной пластиковой крышкой), зажигалкой и пепельницей.

Предпосылки


Клейнрок был сыном восточноевропейских эмигрантов из рабочего класса, и вырос на Манхэттене в тени моста им. Джорджа Вашингтона [соединяет северную часть острова Манхэттен в городе Нью-Йорк и Форт Ли в округе Берген в штате Нью-Джерси / прим.перев.]. Учась в школе, по вечерам он брал дополнительные уроки по электротехнике в городском колледже Нью-Йорка. Услышав о возможности пройти обучение в MIT с последующим семестром работы в лаборатории Линкольна на полный день, он с радостью ухватился за неё.

Лаборатория была создана для обслуживания нужд SAGE, но с тех пор распространилась на множество других исследовательских проектов, часто лишь косвенно связанных с ПВО, если вообще имевших отношение к обороне. Среди них был проект «исследование Барнстейбл», предложенная ВВС концепция по созданию орбитального пояса металлических полосок (вроде дипольных отражателей), которые можно было бы использовать в качестве глобальной системы связи. Клейнрока покорил авторитет Клода Шеннона из MIT, поэтому он решил сконцентрироваться на теории сетей связи. Исследование Барнстейбл дало Клейнроку первую возможность применить теорию информации и теорию очередей к сети передачи данных, и он расширил этот анализ до целой диссертации по сетям для обмена сообщениями, сочетая математический анализ с опытными данными, собранными на симуляциях, работавших на компьютерах TX-2 в лабораториях Линкольна. Среди близких коллег Клейнрока в лаборатории, вместе с ним пользовавшимися компьютерами по системе разделения времени, были Лоуренс Робертс и Айвен Сазерленд, с которыми мы познакомимся чуть позже.

К 1963 году Клейнрок принял предложение о работе в UCLA, и Ликлайдер увидел в нём возможность. Перед ним был эксперт по сетям передачи данных, работавший рядом с тремя локальными компьютерными центрами: главным вычислительным центром, вычислительным центром здравоохранения, Западным центром обработки данных (кооперативом из тридцати институтов, имевших общий доступ к компьютеру IBM). Более того, у шести институтов из Западного центра обработки данных была удалённая связь с компьютером по модему, а компьютер System Development Corporation (SDC), спонсируемой IPTO, находился всего в нескольких километрах от Санта-Моники. IPTO заказала UCLA объединение этих четырёх центров в качестве первого эксперимента по созданию компьютерной сети. Позднее, согласно плану, связь с Беркли смогла бы изучить проблемы, присущие передаче данных на большие расстояния.

Несмотря на многообещающую ситуацию, проект провалился, и сеть так и не была построена. Директора различных центров UCLA не доверяли друг другу, и не верили в этот проект, из-за чего и отказались уступить контроль над вычислительными ресурсами пользователям друг друга. У IPTO практически не было рычагов влияния на эту ситуацию, поскольку ни один из вычислительных центров не получал денег от ARPA. Эта политическая проблема указывает на один из главных вопросов в истории интернета. Если убедить разных участников в том, что организация связи между ними и кооперация играет на руку всем сторонам, очень сложно, как вообще появился интернет? В следующих статьях мы не раз будем возвращаться к этим вопросам.

Вторая попытка IPTO построить сеть оказалась более успешной, возможно, потому, что она была гораздо менее масштабной — это была простая экспериментальная проверка. А 1965 году психолог и ученик Ликлайдера по имени Том Мэрилл покинул лабораторию Линкольна, чтобы попытаться заработать на всеобщей шумихе по поводу интерактивных компьютеров, начав собственный бизнес по предоставлению разделяемого доступа. Однако, не набрав достаточного количества платных клиентов, он начал искать другие источники дохода, и в итоге предложил IPTO нанять его для проведения исследования компьютерных сетей. Новый директор IPTO, Айвен Сазерленд, решил взять в партнёры крупную и уважаемую фирму в качестве балласта, и передал субподряд на работу компании Мэрилла через лабораторию Линкольна. Со стороны лаборатории возглавлять проект поручили ещё одному старому коллеге Клейнрока, Лоуренсу (Ларри) Робертсу.

Робертс, будучи студентом MIT, поднаторел в работе с компьютером TX-0, построенном лабораторией Линкольна. Он часами заворожённо сидел перед светящимся экраном консоли, и в итоге написал программу, которая (скверно) распознавала рукописные символы при помощи нейросетей. Как и Клейнрок, он в итоге стал работать на лабораторию за аспирантские заслуги, решая задачи, связанные с компьютерной графикой и компьютерным зрением, к примеру, распознавание граней и генерация трёхмерных изображений, на более крупном и мощном TX-2.

Большую часть 1964 года Робертс в основном концентрировался на работе с изображениями. А потом он встретился с Ликом. В ноябре того года он посетил конференцию по будущему компьютеров, спонсируемую ВВС, и проводившуюся в санатории с горячими источниками в Хомстеде, в Западной Виргинии. Там он до глубокой ночи проговорил с другими участниками конференции, и впервые услышал, как Лик излагал свою идею межгалактической сети. У Робертса что-то зашевелилось в голове — он прекрасно справлялся с обработкой компьютерной графики, но, по сути, был ограничен одним уникальным компьютером TX-2. Даже если бы он мог поделиться своим софтом, никто другой не смог бы его использовать, поскольку ни у кого не было эквивалентного оборудования для его запуска. Единственным способом расширять влияние своих работ для него было рассказывать о них в научных работах, в надежде, что кто-то сможет воспроизвести их где-то ещё. Он решил, что Лик прав — сеть была именно тем следующим шагом, который необходимо было сделать для ускорения исследований в области вычислительной техники.

И Робертс в итоге стал работать вместе с Мэриллом, пытаясь связать TX-2 из лаборатории Линкольна по проходящей через всю страну телефонной линии с компьютером SDC в Санта-Монике, Калифорния. В экспериментальном проекте, будто бы скопированном из докладной записки Лика о «межгалактической сети», они планировали заставить TX-2 приостановить работу в середине вычислений, использовать автоматический набиратель номера для звонка SDC Q-32, запустить на том компьютере программу перемножения матриц, а потом продолжить изначальные вычисления, использовав его ответ.

Кроме осмысленности использования дорогой и передовой технологии для того, чтобы передавать через весь континент результаты работы простейшей математической операции, стоит отметить ещё и ужасно малую скорость работы этого процесса из-за использования телефонной сети. Для совершения звонка требовалось настроить выделенную связь между звонившим и вызываемым, которая обычно проходила через несколько различных телефонных станций. В 1965 году практически все они были электромеханическими (именно в этом году AT&T запустила первую полностью электрическую станцию в г. Сакасуна, Нью-Джерси). Магниты передвигали металлические бруски с одного места на другое, чтобы обеспечивать контакт в каждом из узлов. Весь процесс занимал несколько секунд, во время которых TX-2 приходилось просто сидеть и ждать. Кроме того, линии, прекрасно приспособленные для разговоров, были слишком шумными для передачи отдельных битов, и обеспечивали очень малую пропускную способность (пару сотен битов в секунду). Для воистину эффективной межгалактической интерактивной сети требовался иной подход.

Эксперимент Мэрилла-Робертса не продемонстрировал практичность или полезность междугородней сети, показав лишь её теоретическую работоспособность. Но и этого оказалось достаточно.

Решение


В середине 1966 Роберт Тэйлор стал новым, третьим директором IPTO, вслед за Айвэном Сазерлендом. Он был учеником Ликлайдера, тоже психологом, и пришёл в IPTO благодаря тому, что ранее администрировал исследования вычислительной техники в НАСА. Видимо, почти сразу по прибытию, Тэйлор решил, что пришло время воплотить мечту о межгалактической сети; именно он запустил проект, породивший ARPANET.

Деньги от ARPA всё ещё тёкли рекой, поэтому у Тэйлора не было проблем в получении дополнительного финансирования у своего босса, Чарльза Херцфелда. Тем не менее, у этого решения был значительный риск провала. Кроме того, что в 1965 году линий, соединявших противоположные концы страны, было довольно мало, никто ранее не пытался сделать ничего, похожего на ARPANET. Можно вспомнить другие ранние эксперименты в создании компьютерных сетей. К примеру, Принстон и Карнеги-Мэллон подняли сетку из компьютеров с разделяемым доступом в конце 1960-х совместно с IBM. Главным отличием этого проекта была его однородность — в нём использовались абсолютно одинаковые по оборудованию и ПО компьютеры.

С другой стороны, ARPANET пришлось бы иметь дело с разнообразием. К середине 1960-х IPTO финансировал более десяти организаций, у каждой из которых был компьютер, причем все они работали на разном оборудовании и с разным ПО. Возможность делиться ПО редко была даже у разных моделей одного производителя — такое решились проделать только с новейшей линейкой IBM System/360.

Разнообразие систем было риском, добавлявшим как значительную техническую сложность разработке сети, так и возможность разделения ресурсов в стиле Ликлайдера. К примеру, в Иллинойском университете в то время на деньги ARPA строили массивный суперкомпьютер ILLIAC IV. Тэйлору казалось маловероятным, что местные пользователи из Урбана-Кампейн могли бы полностью задействовать ресурсы этой огромной машины. Даже системы куда как более скромного масштаба — TX-2 в лаборатории Линкольна и Sigma-7 в UCLA — обычно не могли делиться друг с другом ПО из-за фундаментальной несовместимости. Возможность преодолеть эти ограничения, получая прямой доступ к ПО одного узла, находясь в другом, была привлекательной.

В работе, описывающей этот сетевой эксперимент, Мэрилл и Робертс предположили, что такой обмен ресурсами приведёт к чему-то вроде рикардовского сравнительного преимущества для вычислительных узлов:

Обустройство сети может привести к определённой специализации сотрудничающих узлов. Если некий узел Х, по причине наличия особого ПО или оборудования, к примеру, особенно преуспеет в инвертировании матриц, можно ожидать, что пользователи других узлов сети будут использовать эту возможность, инвертируя свои матрицы на узле Х, вместо того, чтобы заниматься этим на своих домашних компьютерах.


У Тэйлора была ещё одна мотивация для реализации сети с разделением ресурсов. Покупка для каждого нового узла IPTO нового компьютера, имевшего все возможности, которые когда-либо могли понадобиться исследователям на этом узле, была делом дорогим, и по мере того, как в портфолио IPTO добавлялись всё новые узлы, бюджет опасно расширялся. Связав все финансируемые IPTO системы в одну сеть, будет возможно предоставлять новым получателям грантов более скромные компьютеры, или даже вообще не покупать их. Они могли бы пользоваться необходимыми им компьютерными мощностями на удалённых узлах с избытком ресурсов, а вся сеть работала бы, как общественный резервуар ПО и оборудования.

После запуска проекта и обеспечения его финансирования, последним значимым вкладом Тэйлора в ARPANET был выбор человека, который непосредственно займётся разработкой системы и проследит, чтобы она была реализована. Очевидным выбором стал Робертс. Его инженерные навыки не вызывали сомнений, он уже был уважаемым членом исследовательского сообщества IPTO, и он был одним из немногих людей, имевших реальный опыт разработки и создания компьютерных сетей, работающих на больших расстояниях. Поэтому осенью 1966 года Тэйлор позвонил Робертсу и попросил его приехать из Массачусетса, чтобы работать над ARPA в Вашингтоне.

Но соблазнить его оказалось сложно. Многие научные руководители IPTO скептически относились к правлению Роберта Тэйлора, считая его легковесным. Да, Ликлайдер тоже был психологом, не имел инженерного образования, но, по крайней мере, у него была докторская степень, и определённые заслуги как одного из отцов-основателей интерактивных компьютеров. Тэйлор был неизвестным человеком с дипломом магистра. Как он сможет руководить сложной технической работой в сообществе IPTO? Робертс тоже был среди этих скептиков.

Но комбинация кнута и пряника сделала своё дело (большинство источников указывают на преобладание кнутов при практическом отсутствии пряников). С одной стороны, Тэйлор оказал определённое давление на начальника Робертса в лаборатории Линкольна, напомнив ему, что большая часть финансирования лаборатории теперь исходит от ARPA, и что поэтому ему следует убедить Робертса в преимуществах этого предложения. С другой стороны, Тэйлор предложил Робертсу недавно учреждённый титул «старшего учёного», который будет докладывать через голову Тэйлора непосредственно замдиректора ARPA, а также станет наследником Тэйлора на посту директора. На этих условиях Робертс согласился заняться проектом ARPANET. Пришло время превратить идею разделения ресурсов в реальность.

Что ещё почитать


  • Janet Abbate, Inventing the Internet (1999)
  • Katie Hafner and Matthew Lyon, Where Wizards Stay Up Late (1996)
  • Arthur Norberg and Julie O«Neill, Transforming Computer Technology: Information Processing for the Pentagon, 1962–1986 (1996)
  • M. Mitchell Waldrop, The Dream Machine: J.C. R. Licklider and the Revolution That Made Computing Personal (2001)

© Habrahabr.ru