Материал предоставлен https://it.rfei.ru

История развития Internet

Несомненно, что основная причина столь высокой популярности и привлекательности технологии TCP/IP связана с ее универсальностью, а также с быстрым ростом глобальной сети Internet. В середине 1970-х годов по инициативе ARPA были начаты работы над новой перспективной технологией, которые к концу 1970-х принесли свои плоды — были сформированы структура и набор основных протоколов. В тот период организация ARPA выступала в роли основного источника финансирования в области исследования сетей с коммутацией пакетов. Оно внедрило множество новейших идей в известном проекте сети ARPANET. Хотя сеть ARPANET была построена на традиционных двухточечных проводных выделенных линиях, ARPA финансировала исследования технологии передачи пакетов данных по радиоканалу и каналам спутниковой связи. Наличие множества сетевых технологий передачи данных заставило ARPA заняться проблемой межсетевого взаимодействия, что в свою очередь подхлестнуло развитие глобальной сети.

Доступность результатов исследований, финансируемых ARPA, привлекла внимание нескольких групп разработчиков и вызвала их профессиональный интерес. Особенно это касается тех инженеров, кто уже имел определенный опыт в технологии коммутации пакетов, использовавшейся в проекте ARPANET. Поэтому ARPA стала периодически проводить неформальные конференции разработчиков, на которых они могли обменяться идеями и обсудить результаты экспериментов. Это “сборище” стали неформально называть группой исследователей Internet (Internet Research Group). Однако уже к 1979 году в исследование технологии TCP/IP было вовлечено такое количество людей, что ARPA было вынуждено создать неформальный комитет для координации их действий и руководства работами в области создания протоколов и структуры зарождающейся Internet. Эту организацию решили назвать Советом по управлению и структуре Internet (Internet Control and Configuration Board, или ICCB). Заседания Совета регулярно проходили вплоть до 1983 года, после чего он был реорганизован.

История глобальной сети Internet начинается примерно с 1980 года, когда ARPA стало переводить компьютеры, подключенные к своим исследовательским сетям, на использование нового семейства протоколов TCP/IP. Модернизацию, естественно, начали с ARPANET, поэтому она быстро стала основой зарождающейся Internet, ее магистральным каналом (backbone), который в дальнейшем стали использовать для экспериментов с создававшимся семейством протоколов TCP/IP. Повсеместный переход на новую технологию Internet был завершен в январе 1983 года, когда штаб-квартира Министерства обороны США объявила, что во всех компьютерах министерства, которые подключены к сетям, протянувшимся на большие расстояния, используется протокол TCP/IP. Тогда же управление связи Министерства обороны США (Defense Communication Agency, или DCA) разделило сеть ARPANET на две независимые сети. Одна была отведена для нужд науки, а вторая — для военных целей. За исследовательской сетью было сохранено название ARPANET, а военную сеть (которая была несколько больше) стали называть MILNET (military network).

Чтобы заинтересовать университетскую общественность в использовании новых протоколов, ARPA стало продавать их программную реализацию по низкой цене. В то же время на большинстве компьютерных кафедр университетов использовалась версия операционной системы UNIX, разработанная в Калифорнийском университете. Она называлась Berkeley Software Distribution, но чаще всего ее называли Berkeley UNIX, или просто BSD UNIX. На средства ARPA корпорация Bolt Beranek and Newman, Incorporated (BBN) выполнила программную реализацию семейства протоколов TCP/IP для системы UNIX, а разработчики из Беркли включили их в дистрибутив своей операционной системы.

В результате ARPA удалось внедрить свое детище более чем в 90% университетских компьютерных лабораторий и факультетов. Новая программная реализация протоколов TCP/IP появилась в очень подходящее время, поскольку на большинстве факультетов имелось, как правило, несколько компьютеров и велись работы по их объединению в локальную сеть. Вот где пригодились новые коммуникационные протоколы!

Версия BSD UNIX оказалась чрезвычайно популярной еще и потому, что помимо основных протоколов TCP/IP в ней было реализовано много полезных вещей. Разработчики из Беркли предложили набор утилит для реализации сетевых служб, которые напоминали службы UNIX, использовавшиеся на локальной машине. Основным отличием этих утилит было то, что они удовлетворяли принятым стандартам UNIX. Поэтому, опытному пользователю UNIX не составляло большого труда понять, как работает, например, утилита удаленного копирования файлов rep, разработанная в Беркли, поскольку она функционировала аналогично команде копирования файлов системы UNIX.

Кроме набора сетевых утилит, в версии Berkeley UNIX было впервые введено новое абстрактное понятие сокета (socket), которое позволяло прикладным программам обращаться к коммуникационным протоколам. По сути сокет являлся обобщением стандартного механизма ввода-вывода системы UNIX и, кроме протокола TCP/IP, позволял работать еще с несколькими сетевыми протоколами.

Структура системы сокетов вызвала полемику у специалистов после ее принятия, поэтому многие разработчики операционных систем придумали им замену. Но, независимо от достоинств и недостатков, введение в операционную систему абстрактного уровня сокетов было значительным достижением, поскольку они позволяли программистам легко пользоваться семейством протоколов TCP/IP. Все это подогрело интерес разработчиков к выполнению экспериментов с семейством протоколов TCP/IP.

Успешное использование технологии TCP/IP и Internet ведущими исследовательскими центрами привело к ее быстрому распространению. Понимая важность перспективы исследований в области сетевых коммуникаций, Национальный научный фонд США (National Science Foundation, или NSF) поставил задачу охватить технологией TCP/IP и Internet как можно больше научных учреждений. С этой целью в конце 1970-х годов NSF финансировал проект сети CSNET (Computer Science NETwork), которая и связала все научные компьютерные лаборатории. В 1985 году NSF начал программу по обеспечению доступа к сети, объединившую его шесть суперкомпьютерных центров. В 1986 году NSF расширяет исследования в области сетевых технологий и выделяет средства на создание проекта новой глобальной магистральной сети, которую назвали NSFNET1. В конечном итоге эта сеть связала все суперкомпьютерные центры США и объединила их с ARPANET. В том же 1986 году NSF делает начальные инвестиции во множество проектов региональных сетей, каждая из которых связала основные научно-исследовательские учреждения в своем регионе. Во всех региональных сетях, финансируемых NSF, использовалось семейство протоколов TCP/IP, и все они стали частью глобальной сети Internet.

В течение семи лет с момента появления к Internet были подключены сотни частных сетей в США и Западной Европе. Общее количество компьютеров, объединенных в глобальную сеть, составило порядка 20 тыс. В основном их пользователи работали в учебных, государственных и корпоративных научных учреждениях. При этом масштабы роста и использования Internet значительно превысили все прогнозы. Исследования, проведенные в конце 1987 года, показали, что темпы роста Internet составляют 15% в месяц. К началу 2000 года глобальная сеть Internet охватывала более 50 млн компьютеров в 209 странах мира.

Выбор семейства протоколов TCP/IP на заре развития Internet и последовавший за этим грандиозный его рост не были обусловлены только проектами, финансируемыми государством. К Internet подключались как основные компьютерные гиганты, так и много других больших корпораций — нефтяные компании, автомобильные заводы, электронные фирмы, фармацевтические и телекоммуникационные компании. Средние и мелкие предприятия стали подключаться к Internet начиная с 1990 года. Кроме того, во внутренних сетях многих организаций использовалось семейство протоколов TCP/IP, даже если они не были подключены к Internet.

Темпы расширения Internet вызвали проблемы, непредвиденные на этапе проектирования. Это заставило разработчиков выработать технологию управления больших распределенных систем. Например, на этапе проектирования имена и адреса всех компьютеров, подключенных к Internet, хранились в одном файле, который редактировался вручную и после этого рассылался всем абонентам, подключенным к сети. Однако уже к середине 1980-х годов стало очевидно, что подобный подход централизованного хранения информации неэффективен.

Во-первых, поскольку к Internet подключалось все больше и больше компьютеров, запросы на обновление этого файла стали превышать физические возможности человека, который их обрабатывал.

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

Поэтому были разработаны новые протоколы, и по всей глобальной сети Internet запущена специальная служба системы имен, которая позволяла любому пользователю автоматически преобразовывать имя удаленного компьютера в его адрес. Эту службу назвали системой доменных имен (Domain Name System, или DNS). Ее основу составляли специальные компьютеры, называвшиеся серверами имен (name servers), в задачи которых входила обработка запросов клиентов на преобразование имен. При этом ни на одном из серверов не хранилась база данных доменных имен целиком — данные были распределены между группами серверов, которые использовали семейство протоколов TCP/IP для связи между собой при выполнении запроса на преобразование имени.


1. Термин NSFNET иногда используется в более широком смысле и означает всю программу исследований в области сети, финансируемую фондом NSP. Однако в этой книге мы будем употреблять его в узком смысле, понимая при этом глобальный магистральный канал. В следующих разделах эта технология будет описана более подробно.

Службы Internet сетевого уровняАрхитектурный совет Internet