Интернет - это глобальная информационная инфраструктура.
Интернет является и механизмом распространения данных, и средой взаимодействия
между пользователями и компьютерами вне зависимости от их географического
положения.
Интернет представляет собой один из наиболее удачных примеров
долгосрочных инвестиций в исследование и развитие информационных технологий.
Первоначально целью создания Интернета являлось объединение компьютерных сетей
различных типов. В настоящее время влияние Интернета распространяется не только
на области, связанные с использованием компьютеров и телекоммуникаций, но и на
общество в целом.
Строго говоря, определение "охватывающей значительные по
расстоянию территории" с учетом современного состояния глобальных сетей
нуждается и уточнении, что и будет сделано в ходе последующего изложения. В
процессе создания сети Интернет были разработаны технические принципы
функционирования и объединения компьютерных сетей, решена проблема управления
глобальными информационными структурами, использованы новые принципы совместной
работы над проектами и управления информационными потоками. И совсем недавно все
это было очень успешно применено для ведения бизнеса.
11.1.1. История создания сети
Интернет
Первые исследования в области соединения удаленных
компьютеров были проведены в начале
60-х годов. В 1965 году компьютер,
находящийся в Массачусетском технологическом институте, был подключен к
компьютеру в Калифорнии по телефонной линии. Для соединения использовалась
технология коммутации каналов, характерная для телефонных линий.
Технология
коммутации каналов подразумевает создание непрерывной физической линии связи
между двумя абонентами - канала. Соединить всех желающих абонентов друг с другом
невозможно, поэтому используется коммутация, то есть возможность предоставления
линии связи нескольким абонентам одновременно. Канал состоит из отдельных
участков, которые соединяются между собой специальной аппаратурой -
коммутаторами. Если абонент хочет установить соединение, то он обращается к
ближайшему коммутатору, который, в свою очередь, по свободному каналу обращается
к следующему и т. д. В конечном итоге устанавливается прямое соединение двух
абонентов, и они могут обмениваться данными.
В результате эксперимента
выяснилось, что коммутация каналов не подходит для создания компьютерных сетей.
При использовании технологии коммутации каналов аппаратура абонентов должна
работать с одинаковой скоростью, в то время как компьютеры обрабатывали данные с
различной скоростью. Кроме того, неэффективно используется канал связи. Когда
данные передаются, канал загружен, а когда обрабатываются - свободен. Однако
физическое соединение и в том, и в другом случае сохраняется. Все это
потребовало применения новой технологии передачи данных - коммутации
пакетов.
При использовании этой технологии все передаваемые в сети сообщения
разбиваются на небольшие части, которые называются пакетами. Каждый пакет
снабжается заголовком, в котором указывается адрес назначения пакета.
Коммутаторы, используя адрес, передают пакеты друг другу до тех пор, пока он не
достигнет места назначения. Если какой-либо коммутатор слишком загружен и не
может передать пакет в течение некоторого времени, он помещает его в очередь
пакетов и передает позже.
Проект сети компьютеров на основе коммутации
пакетов был разработан в Агентстве перспективных разработок Министерства обороны
США (DARPA). Создаваемая сеть получила название ARPANET. В 1969 году началась
реализация проекта, в сеть ARPANET были включены четыре удаленных
компьютера.
Для включения в сеть большего числа компьютеров необходимо было
выработать некоторый единый набор правил, определяющих способ взаимодействия
узлов сети ARPANET (последовательность передачи, формат сообщений) - протокол. В
1971-72 годах работа над единым протоколом для сети ARPANET была завершена. Этот
протокол получил название Network Control Program (NCP). Создание протокола
позволило начать разработку прикладных программ для использования в сети. Одной
из первых таких программ стала программа электронной почты, которая позволила
участникам проекта эффективнее обмениваться информацией между
собой.
Возникновение Интернета базировалось на идее, предполагавшей
возможность объединения нескольких независимых компьютерных сетей с различной
архитектурой на основе ARPANET.
В протоколе NCP не предполагалось наличие
какого-либо механизма взаимодействия с сетями другой, нежели ARPANET,
архитектуры. Кроме того, объединяя сети, необходимо было учесть возможность
временного нарушения связи или даже выхода части объединенной сети из строя. При
этом оставшаяся часть сети должна продолжать нормально работать. Таким образом,
были сформулированы основные принципы построения новой сети:
для включения в
Интернет отдельной сети не должно производиться никаких дополнительных
изменений;
пакеты в Интернете передаются на основе принципа негарантированной
доставки, если пакет не смог достигнуть пункта назначения, то через короткое
время он должен быть передан снова;
для соединения сетей используются
специальные устройства - маршрутизаторы, которые должны максимально упростить
прохождение потока пакетов;
не должно существовать единого, централизованного
управления объединенной сетью.
Ключом к объединению сетей стал новый
протокол, поддерживающий межсетевое взаимодействие. Первая версия нового
протокола появилась в 1973 году. Протокол был назван TCP (Transmission Control
Protocol) и обеспечивал доставку сообщений в Интернете. Протокол TCP
предоставляет достаточно широкий диапазон транспортных услуг.
TCP прекрасно
работает при решении таких задач, как передача файлов или удаленная регистрация,
но в некоторых случаях (например, при передаче речи) потери пакетов не могут
быть исправлены только средствами TCP, а эти функции должны быть возложены на
приложение. Этот факт привел к разделению TCP на два протокола: IP для адресации
и передачи отдельных пакетов и TCP для разделения сообщений на пакеты,
обеспечения целостности и восстановления потерянных пакетов. Для приложений,
которые не хотели использовать TCP, был добавлен альтернативный протокол,
названный UDP, который обеспечивал прямой доступ к IP. Объединенный протокол
принято называть TCP/IP.
Основной движущей силой при создании ARPANET и
Интернета была необходимость обеспечить разделение ресурсов. Соединить два
компьютера вместе оказалось гораздо экономичнее, чем копировать их функции.
Однако передача файлов, удаленная регистрация и электронная почта произвели
гораздо больший эффект, чем предполагалось в то время. Электронная почта,
например, предоставила совершенно иной способ взаимодействия людей и изменила
природу совместной работы над проектами.
Важно отметить, что одной из
ключевых концепций Интернета было не создание одного или нескольких приложений
для работы с сетевыми устройствами, а создание общей инфраструктуры, в которой
могли бы существовать новые приложения.
Следующим сильным толчком к развитию
Интернета было увеличение размеров сети и связанные с этим проблемы управления.
Все большее количество людей использовало сеть Интернет, и все большее
количество узлов подключалось к Интернету. В протоколе IP адрес узла представлен
в виде набора цифр, разделенных точками. Более подробно его формат будет
рассмотрен в 11.2.1.
Запомнить огромное множество комбинаций IP-адресов
практически невозможно. Для того чтобы упростить использование сети людьми, с
каждым узлом ассоциировались имена и, таким образом, не было необходимости
запоминать числовые адреса. Первоначально существовало ограниченное число узлов,
и соответствия адресов и имен можно было хранить в одной таблице. Появление
большого количества независимо управляемых сетей привело к тому, что хранить
адреса в одной таблице было невозможно, тогда появилась система доменных имен
(DNS). DNS представляет собой масштабируемый, распределенный, иерархический
механизм разрешения имен узлов и их адресов. К рассмотрению вопросов ее
организации мы вернемся в 11.2.5.
Увеличение размеров Интернета потребовало
изменения возможностей маршрутизаторов. Первоначально существовал единый
алгоритм маршрутизации, который исполнялся всеми маршрутизаторами в Интернете. В
то время как число хостов росло, возможности исходного алгоритма не могли быть
адекватным образом расширены, и он был заменен иерархической моделью
маршрутизации, включавшей протокол IGP, который использовался внутри регионов, и
протокол EGP, который использовался для связи регионов вместе. Дизайн протоколов
позволял использовать различные версии IGP в зависимости от требований к системе
(стоимость, скорость конфигурации, чувствительность к сбоям, масштабируемость).
Требования к маршрутизаторам определялись не только алгоритмами маршрутизации,
но и размерами таблиц маршрутизации. Создание иерархической модели маршрутизации
определило современную структуру сети Интернет. В 1980 году протокол TCP/IP был
принят в качестве стандарта для сети ARPANET. Переход на использование TCP/IP
позволил разделить сеть ARPANET на две различные сети: MILNET, предназначенную
для военных целей, и ARPANET - для использования исследовательскими и научными
организациями. В 1986 году Национальный научный фонд США (NSF) начал создание
собственной сети, объединяющей крупные научные суперкомпьютерные центры США. В
качестве основы для новой сети был выбран протокол TCP/IP и другие технологии,
опробованные в ARPANET. В дальнейшем эта сеть, получившая название NSFNET, стала
основной магистралью сети Интернет. В 1988 году было принято решение
предоставлять доступ к сети NSFNET не только научным и образовательным
организациям, но и коммерческим фирмам. В 1994 году финансирование основной
магистрали сети Интернет было полностью передано от NSF различным
государственным и коммерческим организациям.
11.1.2. Роль документации в развитии
Интернета
Важным фактором в быстром росте сети Интернет стал
открытый и свободный доступ к документации, в особенности к спецификациям
протоколов. Обычный, традиционный способ публикации результатов исследований был
слишком медленным для динамичного обмена идеями в сообществе разработчиков
Интернета. Поэтому в 1969 году была создана система документов, названная RFC
(Request For Comment). Задачей RFC было быстрое распространение идей и
результатов в Интернете. Первоначально RFC распространялись с помощью
электронной почты.
Целью RFC было создание цикла обратной связи между
разработчиками, чтобы идеи и предложения, представленные в одном из RFC, давали
начало другим идеям в следующих документах и т. д. Когда будет найден некоторый
последовательный ряд идей, они объединяются для создания спецификации. Подобная
спецификация может быть использована другими разработчиками.
Впоследствии в
RFC авторы стали уделять больше внимания стандартам протоколов ("официальным"
спецификациям), хотя существуют документы, в которых рассматриваются различные
(дублирующие) подходы или особенности того или иного протокола, а также другие
вопросы. Сейчас RFC рассматриваются скорее как "зарегистрированные" в сообществе
Интернет документы.
Открытый и бесплатный доступ к документам RFC
способствует росту Интернета, так как позволяет использовать действующие
спецификации в качестве примера для обучения и разработки новых систем. Ранние
версии RFC представляли собой обращение одного автора ко всему сообществу
Интернета. Сейчас документы RFC являются совместным творчеством нескольких
разработчиков.
11.1.3. Организационная структура
Интернета
В конце 70-х годов стало понятно, что рост размеров
Интернета сопровождается ростом числа заинтересованных групп и, таким образом,
необходима координация. Было сформировано несколько координирующих органов. IAB
(Internet Architecture Board) занимается координацией деятельности в области
развития структуры сети Интернет. IETF (Internet Engineering Task Force) состоит
из нескольких рабочих групп, разрабатывающих и утверждающих стандарты для сети
Интернет. В настоящее время в IETF существует 75 рабочих групп, изучающих
различные аспекты развития Интернета. Впоследствии основным органом,
осуществляющим информационную поддержку и регулирование в Интернете, стал
Internet Society (ISOC). ISOC является общественной организацией, базирующейся
на взносах и пожертвованиях спонсоров. ISOC проводит ежегодные конференции,
выпускает информационные материалы, поддерживает информационные серверы.
11.1.4. Современная структура сети
Интернет
В настоящее время основу сети Интернет составляют
высокоскоростные магистральные сети. Независимые сети подключаются к
магистральной сети через точки сетевого доступа NAP (Network Access Point).
Независимые сети рассматриваются как автономные системы, то есть каждая из них
имеет собственное административное управление и собственные протоколы
маршрутизации. Изменение протоколов маршрутизации внутри автономной системы не
влияет на работу остальных систем. Деление сети Интернет на автономные системы
позволяет распределить информацию о топологии всей сети и существенно упростить
маршрутизацию.
Автономная система должна состоять не менее чем из 32 меньших
по размеру сетей. Обычно в качестве автономных систем выступают крупные,
независимые, национальные сети. Примерами подобных сетей являются сеть EUNet,
охватывающая страны центральной Европы, сеть RUNet, объединяющая университеты
России. Автономные сети могут образовывать компании, специализирующиеся на
предоставлении услуг доступа в сеть Интернет, - провайдеры. Такими провайдерами,
например, являются компания UUNET в США и компания Relcom в России.
Внутри
автономной системы данные предаются от одной сети к другой, пока не достигнут
точки сопряжения с другой автономной системой. Обмен данными возможен только в
том случае, если между автономными системами существуют соглашения о
предоставлении транзита. По этой причине для пользователей разных автономных
систем время доступа к одному и тому же ресурсу может существенно
различаться.
Сети, включенные в автономные системы, представляют собой
региональные сети, сети университетов, исследовательских центров и коммерческих
фирм, а также сети более мелких региональных провайдеров.
Важным параметром,
определяющим качество работы в сети Интернет, является скорость доступа к
ресурсам сети. Скорость доступа определяется пропускной способностью канала
связи внутри автономной системы и между автономными системами. Для модемного
соединения, которое используют большинство домашних пользователей персональных
компьютеров, пропускная способность канала невелика - от 19,2 до 57,6 Кбит/с;
для выделенных телефонных линий, часто используемых для подключения к сети
Интернет небольших локальных компьютерных сетей, - от 64 Кбит/с до 2 Мбит/с; для
спутниковых и оптоволоконных каналов связи, которые в основном используются для
создания автономных сетей, - от 2 Мбит/с и выше.