Идея построения вычислительных сетей с коммутацией пакетов зародилась в США в конце 50-х, в самый разгар холодной войны. Министерство обороны США задалось вопросом, что произойдет с национальной системой коммуникаций в случае ядерной войны, как обеспечить ее работоспособность...
C чего все началось
Роль СССР в создании Интернета весьма своеобразна. Испытания первой атомной бомбы, запуски первого и, особенно, второго (это был действительно научный прибор) искусственных спутников Земли стали очень серьезным стимулом к тому, чтобы в начале 1958 г. по указанию Д. Эйзенхауэра в рамках министерства обороны США были созданы два правительственных органа: Национальная аэрокосмическая администрация NASA (National Aeronautics and Space Administration) и Агентство передовых исследовательских проектов (Advanced Research Projects Agency, ARPA), которому принадлежит особая роль в истории Интернета.
В 1962 г. Пол Беран (Paul Baran) из RAND Corparation представил доклад, который назывался “On Distributed Communication Networks”, в котором было выдвинуто предложение использовать децентрализованную систему коммутаций компьютеров, когда в случае разрушения большей части единиц сети, она сохраняет свою работоспособность. Например, если компьютеру в Вашингтоне потребуется связаться с Лос-Анджелесом, то в этом случае он соединяется через компьютер в Канзасе. Если же линия в Канзасе разрушена, то маршрутизатор в Вашингтоне перенаправит сообщение через другой компьютер, например, Чикаго.
Про NASA и про ее масштабные проекты знают все, а вот про ARPA, особенно у нас, слышали немногие. Это была весьма своеобразная организция, и ее аналогов в отечественной истории нет. Хотя ARPA существовало на деньги из бюджета Министерства обороны США, но весьма оригинальным способом. Представьте себе организацию, которая насчитывает не более 150 человек, причем половина из них имеет звания докторов философии, а остальные – вспомогательные служащие. Задача этих избранных заключается в том, чтобы распределить между университетами и лабораториями годовой бюджет, исчисляемый несколькими миллиардами долларов, выделенный на работы, наиболее важные с точки зрения национальной безопасности. И уже в 60-х годах основные работы ARPA были посвящены разработке метода соединения компьютеров друг с другом.
На самом деле очень трудно сказать, что все же первично – Интернет или ARPA, кто кого породил? Вне ARPA не могла родиться Глобальная Сеть такой, как мы ее знаем. Но, возможно, и ARPA не стало бы тем, чем оно стало, если бы в самом начале, в 1963 г., должность директора бюро по методам обработки информации (Information Processing Techniques Office) этого агентства не занял Джон Ликлайдер (John Licklider).
Именно ему принадлежит одна из ведущих ролей в создании
Сети. Ликлайдер первым предложил вкладывать средства в людей, а не в структуры,
отдавая предпочтение специалистам из университетов, образуя центры концентрации
интеллектуального потенциала.
В качестве таких центров он избрал близкий ему Массачусетский технологический
институт (MIT), где разрабатывались системы с разделением времени и интерактивной
графики, и университет Карнеги – Меллона (CMU) – там в основном разрабатывались
мультипроцессорные системы. Придуманная Ликлайдером схема на редкость
соответствовала природе работы ученых и позволила привлечь к деятельности
агентства лучшие академические умы.
Следует отметить, что значительное влияние на создание Глобальной Сети оказали и работы, сделанные в корпорации RAND. RAND – это аналитическая широкопрофильная компания, созданная после Второй мировой войны (кстати сказать, название RAND происходит от известной аббревиатуры R&D, т. е. “исследования и разработки”).
Галактическая сеть (Galactic Network).
Контуры начинаются вырисовываться
Дж. Ликлайдер (J.C.R. Licklider) публикует работу “Galactic Network”. В ней он предсказывает возможность существования в будущем глобальной компьютерной связи между людьми, имеющими мгновенный доступ к программам и базам данных из любой точки земного шара. Его предвидение отражает современное устройство международной Сети Интернет. Возглавляя первую исследовательскую программу, начатую ARPA 4 октября 1962 года, Ликлайдер сумел убедить своих преемников по работе в ARPA – Айвэна Сазерленда (Ivan Sutherland) и Боба Тейлора (Bob Taylor), а также исследователя из MIT Лоуренса Робертса – в важности этой сетевой концепции.
Леонард Клейнрок (Leonard Kleinrock) разработал в 1961
году и впервые опубликовал
в июле 1964 года теорию о коммутации пакетов для передачи данных. Л. Клейнрок
убедил своих коллег из APRA в возможности коммуникаций с использованием
пакетов и в преимуществах своей теории перед существующим принципом передачи
данных – коммутацией каналов. В чем различие этих концепций?
Коммутация пакетов – необходимые для передачи данные разбиваются на части. К каждой части присоединяется заголовок, содержащий полную информацию о доставке пакета по назначению.
Коммутация каналов – на время передачи информации пара компьютеров соединяются “один-с-одним”. В период соединения происходит передача всего объема информации.
Для проверки новой концепции Лоренс Робертс и Томас Мерилл (Thomas Merill) в 1965 году соединили компьютер TX-2 в шт. Массачусетс с компьютером Q-32 в Калифорнии с помощью низкоскоростных телефонных коммутируемых линий. Таким образом была создана первая в истории (хотя и маленькая) нелокальная компьютерная сеть. Результатом эксперимента стало понимание того, что компьютеры с разделением времени могут успешно работать вместе, выполняя программы и осуществляя выборку данных на удаленной машине. Стало ясно и то, что телефонная система с коммутацией соединений абсолютно непригодна для построения компьютерной сети. Убежденность Клейнрока в необходимости пакетной коммутации получила еще одно подтверждение.
Проект ARPANET. Internetting Project.
Первоначальные концепции
объединения сетей
Тем не менее, ”холодная война” продолжалась, и угроза ядерной войны была более чем реальна. Исходя из этого, был задуман проект компьютерной сети ARPANET, и для его реализации DARPA пригласило Л. Робертса.
Цели проекта:
– изучение способов поддержания связи в условиях ядерного нападения;
– разработка концепции децентрализованного (распределенного) управления военными и гражданскими объектами в период ведения войн;
– объединение исследовательских учреждений;
– проведение экспериментов в области компьютерных коммуникаций.
Работа над проектом шла полным ходом, и в октябре 1972 года была организована весьма успешная демонстрацию ARPANET на Международной конференции по компьютерным коммуникациям (International Computer Communication Conference, ICCC). Это был первый показ на публике новой сетевой технологии. Также в 1972 году появилось первое “горячее” приложение – электронная почта. В марте Рэй Томлинсон (Ray Tomlinson) из BBN, движимый необходимостью создания для разработчиков ARPANET простых средств координации, написал базовые программы пересылки и чтения электронных сообщений. В июле Робертс добавил к этим программам возможности выдачи списка сообщений, выборочного чтения, сохранения в файле, пересылки и подготовки ответа. С тех пор более чем на десять лет электронная почта стала крупнейшим сетевым приложением.
Кстати, тогда же ARPA было переименовано в DARPA (Defense Advanced Research Projects Agency).
DARPA, вдохновленное успехом ARPANET, предложило Роберсу Кэну (Robert Kahn), одному из ведущих разработчиков сети ARPANET, возглавить работу над новой программой (она была позже названа “Internetting Project” – ”Проект соединения сетей”) с целью изучения методов соединения сетей между собой. Выдвигались требования:
– универсальность концепции, не зависящей от внутреннего устройства объединяемых сетей и типов аппаратного и программного обеспечения;
– максимальная надежность связи при заведомо низком качестве коммуникаций, средств связи и оборудования;
– возможность передачи больших объемов информации.
В то время пользовались протоколом NCP (хотя он не был протоколом в стандартном понимании), но NCP не отвечал всем требованием, которые выдвигало DARPA.
Разработка TCP/IP
Сначала Р. Кэн предполагал разработать протокол, специфичный для пакетных радиосетей, поскольку это избавило бы от необходимости иметь дело с множеством различных операционных систем и позволило бы продолжать использовать протокол NCP.
Но в итоге Кэн решил разработать новую версию протокола,
т. е. набора правил, определяющих принципы обмена данными между различными
компьютерными программами и удовлетворяющих требованиям окружения с открытой
сетевой архитектурой. Этот протокол позднее будет назван Transmission
Control Protocol/Internet Protocol (TCP/IP – Протокол управления передачей/Межсетевой
протокол). В то время как NCP действовал в роли драйвера устройства, новинка
должна была в большей мере напоминать коммуникационный протокол. Кэн пригласил
Винтона Серфа (Vinton Cerf, SRI) для совместной работы над детальной спецификацией
протокола. Серф активно участвовал в проектировании и реализации NCP,
поэтому он уже
обладал информацией об интерфейсах с существующими операционными системами.
Вооружившись архитектурным подходом Кэна к коммуникациям и опытом Серфа,
полученным во
время работ над NCP, коллеги объединились для уточнения деталей того,
что впоследствии станет семейством протоколов TCP/IP. И в 1974 году Internet
Network Working Group (INWG), руководимая Винтоном Серфом, представила
универсальный протокол передачи данных и объединения сетей – TCP/IP.
Эта была очень удачная разработка. Надо ли напоминать, что в современном
Интернете используется именно этот протокол?
Тем не менее, переход ARPANET с протокола NCP на TCP/IP состоялся только 1 января 1983 года. Это был переход в стиле “Дня X”, требующий одновременных изменений на всех компьютерах. (На долю опоздавших оставались коммуникации с помощью специализированных средств.) Переход тщательно планировался всеми заинтересованными сторонами в течение нескольких предшествующих лет и прошел на удивление гладко (но привел к распространению значка “Я пережил переход на TCP/IP”).
В 1983 году перевод ARPANET с NCP на TCP/IP позволил разделить эту сеть на MILNET, собственно сеть для военных нужд, и ARPANET, использовавшуюся в исследовательских целях.
В этом же году произошло еще одно важное событие. Пол Мокапетрис (Paul Mockapetris) из Института информатики Университета Южной Калифорнии (USC/ISI) придумал доменную систему имен (Domain Name System, DNS). DNS позволила создать масштабируемый распределенный механизм для отображения иерархических имен компьютеров (например, www.acm.org) в Интернет-адресах.
В этом же 1983 году в университете Висконсии был создан сервер доменных имен (Domain Name Server, DNS). DNS автоматически и скрытно от пользователя переводит словарный эквивалент сайта в IP-адрес. Синтаксис доменного имени выглядит так: <домен уровня 3>.<домен уровня 2>.<домен уровня 1>. Первоначально существовало шесть доменов первого уровня, как-то:
com – коммерческие организации
edu – учебные и научные организации
gov – правительственные организации
mil – военные организации
net – сетевые организации разных сетей
org – другие организации
Со всеобщим распространением Сети за пределы США появились национальные домены первого уровня ru, uk, ua и т. д.
Переход к широко распространенной
инфраструктуре
За те 10 лет, пока ARPANET переходила на новый, прогрессивный протокол (наверное, сказалось военное происхождение организации), новые компьютерные сети начали расти как грибы после дождя – везде, где для этой цели удавалось найти финансирование. Министерство энергетики США сначала создало сеть MFENET в интересах исследователей термоядерного синтеза с магнитным удержанием, затем специалисты в области физики высоких энергий получили сеть HEPNet. Для астрофизиков из NASA построили сеть SPAN, а Рик Эдрион (Rick Adrion), Дэвид Фарбер (David Farber) и Лэрри Лэндвебер (Larry Landweber), получив первоначальные субсидии от Национального научного фонда США, развернули сеть CSNET, объединившую специалистов по информатике из академических и промышленных кругов. Свободное распространение компанией AT&T операционной системы UNIX породило сеть USENET, основанную на встроенном в UNIX коммуникационном протоколе UUCP. В 1981 году Айра Фачс (Ira Fuchs) и Грейдон Фримэн (Greydon Freeman) придумали BITNET – сеть, связавшую академические мэйнфреймы сервисами почтовой рассылки.
Переход от небольшого количества сетей с умеренным числом систем (первоначальная модель ARPANET) ко многим сетям привел к выработке ряда новых концепций и внесению изменений в базовые технологии.
К разработке стандартов локальных сетей одной из первых приступила фирма Xerox, учредив консорциум Ethernet, в который вошли также фирмы Intel и Dec. В 1980 году консорциум выпустил документацию на сеть Ethernet. В результате, локальные сети с успехом начали использоваться в учреждениях в основном для следующих нужд:
– совместное использование файлов (вместо обменивания флоппи-дисками и магнитными лентами);
– связь пользователей между собой (электронная почта);
– удаленное управление (сетевая печать, удаленное выполнение программ).
Для развития рынка коммерческих продуктов на основе протокола TCP/IP в 1985 году Дэн Линч (Dan Lynch) в сотрудничестве с обществом Internet Activities Board (IAB) организовал трехдневные практические курсы обучения коммерческих поставщиков принципам разработки и использования TCP/IP.
После двух лет конференций, обсуждений, совещаний и практических занятий была организована специальная встреча лучших поставщиков и разработчиков приложений для TCP/IP. В сентябре 1988 года родился Interop – коммерческая выставка-показ совместимых между собой продуктов, разработанных на основе TCP/IP.
Объединение сетей
На основе технологии ARPANET в 1986 г. была создана NSFNET (the National Science Foundation NETwork – Сеть Национального научного фонда), в создании которой приняли непосредственное участие NASA и Министерство энергетики. Было соединено шесть крупных научно-исследовательских центров, оснащенных новейшими суперкомпьютерами, расположенных в разных регионах США. Задачей этой сети было предоставление научной общественности США доступа к этим суперкомпьютерам, а также создание основной опорной межрегиональной сети (Backbone) с базовой скоростью 56 Кbit/s. Однако было очевидно, что не стоит даже и пытаться соединить все университеты и исследовательские организации непосредственно с центрами, т. к. проложить такое количество кабеля не только очень дорого, но практически невозможно. Поэтому решили создавать сети по региональному принципу. В каждой части страны заинтересованные учреждения соединялись со своими ближайшими соседями. Получившиеся цепочки подсоединялись к суперкомпьютерным центрам через один из своих узлов, таким образом, суперкомпьютерные центры были соединены вместе. При такой конструкции любой компьютер мог связаться с любым другим, передавая сообщения через соседей.
Одна из проблем, существовавшая в то время, заключалась в том, что BITNET и USENET – ранние сети (в том числе ARPANET) строились целенаправленно. Они должны были использоваться замкнутым сообществом специалистов; как правило, этим работа сетей и ограничивалась. Особой потребности в совместимости сетей не было, соответственно, не было и самой совместимости. Кроме того, в коммерческом секторе начали появляться альтернативные технологии, такие как XNS от компании Xerox, DECNet, а также SNA от IBM.
Поэтому под эгидой DARPA NSFNET, совместно со специалистами из подведомственных IAB Тематических групп по технологии и архитектуре Интернета (Internet Engineering and Architecture Task Forces) и членами Сетевой технической консультативной группы NSF, были разработаны “Требования к Интернет-шлюзам”. Эти требования формально гарантировали совместимость частей Интернета, находящихся в ведении DARPA и NSF.
Помимо выбора TCP/IP как основы NSFNet федеральные агентства США приняли и реализовали ряд дополнительных принципов и правил, сформировавших современный облик Интернета. Что очень важно, NSFNET проводило политику “всеобщего и равного доступа в Internet”. В самом деле, чтобы американский университет мог получить от NSF средства на подключение к Интернету, он, как было записано в программе NSFNet, “должен обеспечить доступность этого подключения для ВСЕХ подготовленных пользователей в университетском городке”.
NSFNET поначалу работала вполне успешно. Но настало время, когда она перестала справляться с возросшими потребностями. Сеть, созданная для пользования суперкомпьютерами, позволяла подключенным организациям пользоваться и множеством вещей, к суперкомпьютерам не относящихся. Пользователи Сети в научных центрах, университетах, школах и т. п. вдруг сообразили, что им теперь доступно море информации и что они получили непосредственный доступ к своим коллегам. Поток сообщений в Сети нарастал все быстрее и быстрее, пока, в конце концов, не перегрузил управляющие Сетью компьютеры и связывающие их телефонные линии.
В 1987 г. NSF передала компании Merit Network Inc. контракт,
по которому Merit при участии IBM и MCI должна была обеспечивать управление
опорной сетью NSFNET, осуществить переход на более скоростные каналы
Т-1 и продолжить ее развитие. Растущая опорная сеть уже объединяла более
10 узлов.
К июлю 1988 года сеть состояла из тринадцати узлов, соединенных каналами T1 со скоростью 1536 Кbit/s. Поток данных быстро заполнял и эти каналы связи. Объем передаваемой информации рос со скоростью 20% в месяц.
И в 1990 году Merit, IBM и MCI создали дочернюю компанию
ANS (Advanced Network &Servis). Теперь уже ANS должна была управлять
опорной сетью NSFNET и одновременно строить новую опорную сеть на каналах
Т-3
(45 Мb/s), которая заменит ее.
В 1990 году понятия ARPANET, NFSNET, MILNET и др. окончательно ушли со сцены, уступив понятию Интернет.
Размах сети NSFNET и размеры финансирования этой программы (200 миллионов долларов за период с 1986 по 1995 год) в сочетании с качеством протоколов привели к тому, что к 1990 году, когда окончательно разукомплектовали ARPANET, семейство TCP/IP вытеснило или значительно потеснило во всем мире большинство других протоколов глобальных компьютерных сетей, а IP уверенно становился доминирующим сервисом транспортировки данных в глобальной информационной инфраструктуре.
Хочется еще раз подчеркнуть, что именно усилия NSF и
других академических организаций и научных фондов всего мира по подключению
научных учреждений к Сети способствовали всеобщей доступности Интернета
по линии науки и образования. И если прежде Сетью пользовались только
исследователи в области информатики, государственные служащие и подрядчики,
то
теперь практически любой желающий может получить доступ к ней.
Зарождение World Wide Web
Настоящий “расцвет” Интернета произошел с появлением WWW-технологии доступа к общедоступным ресурсам.
В 1990 г. Европейская организация по ядерным исследованиям
(CERN–European Organization for Nuclear Research) организовала крупнейший
Интернет-сайт в Европе и обеспечила доступ в Интернет Старого света. С
целью помощи в продвижении и содействия концепции распределенных вычислений
через Интернет CERN (Швейцария,
Женева) Тим Бернерс-Ли (Tim Berners-Lee) разработал технологию гипертекстовых
документов – World Wide Web, позволяющую пользователям иметь доступ к
любой информации, находящейся в сети Интернет на компьютерах по всему
миру.
В основе технологии WWW лежат: определение спецификаций URL (Universal Resource Locator, всеобщий указатель ресурса), HTTP (HyperText Transfer Protocol, протокол передачи гипертекста) и собственно язык HTML (HyperText Markup Language, язык разметки гипертекста).
Текст можно разметить в HTML с помощью любого текстового редактора. Страницу, размеченную в HTML, часто называют Web-страницей. Для просмотра Web-страницы используется клиентское приложение – Web-броузер.
HTTP – это протокол уровня приложений. Протокол работает по модели клиент-сервер.
Новейшая история
В 1994 г. образовался консорциум W3C (W3 Consortium), который объединил ученых из разных университетов и компаний (в том числе Netscape и Microsoft). С этого времени комитет стал заниматься всеми стандартами в мире Интернета.
Первым шагом организации стала разработка спецификации
HTML 2.0 (ноябрь 1995 г.).
В данной версии появилась возможность передачи информации с компьютера
пользователя на сервер с помощью форм.
Следующим шагом стал проект HTML 3, работа над которым началась в 1995 г. Впервые была введена система CSS (Cascading Style Sheets, иерархические таблицы стилей). CSS позволяет осуществить форматирование текста без нарушения логической и структурной разметки. Стандарт HTML 3 так и не был утвержден, вместо него был создан и принят в январе 1997 г. HTML 3.2.
Уже в декабре 1997 г. W3C принимает стандарт HTML 4.0, в котором идет разделение на логические и визуальные теги.
1995 год. Приватизация Интернета
К 1995 году темпы роста сети Интернет показали, что регулирование вопросов подключения и финансирования не может находиться в руках одного NSF. В 1995 году произошла передача региональным сетям оплаты за подсоединение многочисленных частных сетей к национальной магистрали.
Россия в Интернете
В 1990 году была создана небольшая узкопрофессиональная сеть, объединявшая разработчиков и пользователей Unix-совместимых компьютерных систем Института атомной энергии (ныне Российский научный центр “Курчатовский институт”) и нескольких других НИИ. К концу того же года сеть интегрировала представителей уже более 30 организаций, что позволило осуществить ее подключение к Eunet – существовавшему в то время паневропейскому объединению Internet-сетей. В этом же году был зарегистрирован домен верхнего уровня SU. А в декабре 1993 г. сеть EUnet/Relcom была официально подключена к Интернету и был зарегистрирован домен RU, что и следует считать началом нашего официального существования в Интернете, поскольку своими там считаются только IP-сети, зарегистрированные в NSFNET – опорной сети США. Сеть Интернет стала доступной у нас в полном объеме.