Вы отправляете электронное письмо. Вы транслируете видео. Вы загружаете эту страницу. Ничто из этого не происходит через единый выделенный провод, открытый только для вас. Это миф. Интернет работает на хаосе. Он работает на сетях с пакетной коммутацией.
Это цифровые системы, которые разбивают ваши файлы данных на крошечные единицы, называемые пакетами. Они отправляют эти пакеты через лабиринт узлов, или коммутаторов, по всему миру. Коммутаторы используют метод «забрать и передать» (store-and-forward). Они захватывают пакет, смотрят на адрес и отправляют его дальше. В пункте назначения компьютер собирает фрагменты обратно в исходный файл. Без этого процесса современного интернета, каким мы его знаем, не существовало бы.
Большинство локальных сетей (LAN) используют ту же логику. Если вы подключены к Wi-Fi или Ethernet, вы используете волны пакетной коммутации.
Разница между коммутацией каналов и пакетной коммутацией
Традиционные сети были другими. Вспомните старые телефонные линии. Сети с коммутацией каналов создают физический путь с фиксированной пропускной способностью. Они держат этот путь открытым от начала до конца. Все данные передаются последовательно по этому единственному пути. Это упорядоченно. Это жестко.
Сети с пакетной коммутацией не заботятся о порядке. Они направляют пакеты по нескольким путям одновременно. Каждый коммутатор принимает решение на основе эффективности. Если один путь выходит из строя из-за сбоя, коммутаторы перенаправляют пакеты по другим доступным маршрутам.
Это создает проблему. Пакеты приходят не по порядку. Они приходят в разное время. Принимающая сторона должна собрать головоломку.
Этот подход предлагает значительные преимущества перед коммутацией каналов. Он оптимизирует пропускную способность канала. Он повышает отказоустойчивость. Если одна дорога закрыта, трафик течет в обход. Но есть и цена. Пакетная коммутация сложна. Она требует значительных вычислительных мощностей. Она требует больших объемов оперативной памяти (ОЗУ) в коммутаторах.
Также есть задержки. Перенаправление занимает время. Иногда пакеты теряются в процессе. Из-за этих накладных расходов пакетная коммутация предпочтительна для относительно небольших файлов. Коммутация каналов все еще используется для крупных передач, где критично время, например, для видеозвонков в реальном времени.
Анатомия сети с пакетной коммутацией
Каждая сеть с пакетной коммутацией имеет два основных компонента. Ядро и периферия.
Ядро состоит из маршрутизаторов и систем управления. Они соединены каналами связи с высокой пропускной способностью. Это магистраль. Периферия — это место, где живут конечные пользовательские системы. Ваш ноутбук. Ваш телефон. Эти хосты способны отправлять и получать пакеты данных.
Связь через ядро опирается на протоколы. Это процедуры, которые отправители и получатели используют для эффективного общения друг с другом. Протоколы, используемые для передачи ваших данных, образуют стек протоколов.
Каждый передаваемый пакет, часто называемый дейтаграммой, имеет две части. Заголовок и полезная нагрузка.
Заголовок содержит управляющую информацию. Он содержит адрес отправителя. Он содержит адрес получателя. Он указывает коммутаторам, куда направляться. Полезная нагрузка — это фактическая информация, которую вы хотите доставить. Иногда пакеты разбиваются на еще более мелкие единицы. Это называется фрагментацией пакетов.
Безсетевые и сетевые сети
Сети с пакетной коммутацией бывают двух видов. Безсетевые и сетевые.
Безсетевые сети, также известные как дейтаграммные сети, работают так, как описано выше. Данные разбиваются на более мелкие части. К ним прикрепляются заголовки. Дейтаграммы выбирают наилучший возможный маршрут от источника к месту назначения. Никакого предварительного соглашения нет.
Сетевые сети имитируют сети с коммутацией каналов. Они устанавливают выделенный маршрут между отправляющим хостом и принимающим хостом до начала передачи каких-либо пакетов. Эта фаза настройки дает преимущества коммутации каналов, оставаясь в цифровой сети.
Кто это изобрел?
Идея разбить крупные единицы данных на более мелкие пакеты не появилась в готовом виде. Она эволюционировала.
Пол Баран, инженер корпорации RAND, впервые представил эту концепцию. Он отвечал на вопрос ВВС США. Как компьютерная сеть связи может пережить ядерную атаку? Его решением была «маршрутизация по принципу горячего картофеля» (hot-potato routing). Он опубликовал свою теорию в исследованиях RAND в период с 1960 по 1962 год. Он расширил ее в 11-томном анализе под названием On Distributed Communications в августе 1964 года.
Правительство и частные корпорации проигнорировали его. Идея вызвала небольшой интерес в то время.
Независимо от него Дональд Дэвис, ученый-компьютерщик из Национальной физической лаборатории (NPL) Великобритании, разработал ту же концепцию. Он начал работать над сетью для ее тестирования. Баран называл свои единицы «блоками сообщений». Дэвис назвал их «пакетами».
Термин прижился. Лоуренс (Ларри) Робертс, менеджер в ARPA (теперь DARPA), узнал о работе Дэвиса в октябре 1967 года. Он посетил симпозиум в Гатлинбурге, штат Теннесси. Робертс принял термин Дэвиса пакетная коммутация для ARPANET. Этот проект стал предшественником интернета.
Это было не гладко. Это не было мгновенно. Но это сработало. И теперь, каждый раз, когда вы обновляете страницу, вы являетесь свидетелем результата решения, принятого для выживания в ядерной войне. Или, возможно, просто для более быстрой отправки электронного письма. Разница больше не имеет значения. Пакеты летят.
Фундамент современного интернета был заложен задолго до того, как вы когда-либо нажали на ссылку. Всё началось с ARPANET — первой публичной сети с пакетной коммутацией, которая провела свой первый успешный тест в октябре 1969 года. Архитектура была продуманной: сеть была разработана всего за один год компанией Bolt Beranek and Newman (BBN). Они взяли концепции Барана и Дэвиса и воплотили их в жизнь. Изначально сеть была небольшой. Четыре узла: Калифорнийский университет в Лос-Анджелесе (UCLA), Институт исследований в Стэнфорде (SRI), Калифорнийский университет в Санта-Барбаре и Юта. К 1975 году количество узлов выросло до 57.
Но настоящая история — это не только код. Это трение. Когда ARPANET была продемонстрирована в октябре 1972 года на первой Международной конференции по компьютерным коммуникациям (ICCC), реакция индустрии была неоднозначной. Да, она доказала работоспособность пакетной коммутации. Однако большая часть коммуникационного сектора США осталась равнодушной. Некоторые отнеслись к этому открыто враждебно.
BBN и Робертс увидели этот пробел. В том же году они основали Telenet. Коммерческую сеть. Поскольку государственный сектор двигался слишком медленно.
Глобальный скептицизм и параллельное развитие
Пока США колебались, другие страны двигались вперед. Или так казалось.
В ноябре 1973 года Франция анонсировала TRANSPAC. Внутреннюю пакетную сеть, управляемую подразделением почты и телекоммуникаций. Затем, в октябре 1974 года, появилась DATAPAC. Её развернула Trans-Canada Telephone System. Японская корпорация Nippon Telegraph and Telephone (NTT) планировала создать свою собственную публичную сеть передачи данных с пакетной коммутацией.
Большинство провайдеров оставались в стороне. Они предпочитали подождать. Наблюдать за работой ранних публичных сетей. Видеть, действительно ли они работают в реальных условиях.
«Большинство провайдеров оставались скептиками, предпочитая подождать и посмотреть, как поведут себя ранние публичные сети».
Экспериментальные сети, формирующие Европу
В период ожидания исследователи не прекращали работу. Они строили новые сети. Экспериментировали. Усовершенствовали базовую концепцию.
Дональд Дэвис завершил свою сеть Mark I в Национальной физической лаборатории (NPL) в 1970 году. Затем он построил Mark II. Завершённую в 1973 году. Она постепенно оказала влияние на Великобританию и большую часть Европы.
Луи Пузен, французский ученый в области компьютерных наук, завершил работу над CYCLADES в том же 1973 году. Она была иной. Она основывалась на дейтаграммах. Она сместила ответственность. Вместо того чтобы ядро сети обрабатывало ошибки, это делали хосты. Это навсегда изменило компьютерные коммуникации.
Европейская сеть информатики (EIN) была запущена в 1976 году. Финансировалась на международной основе. Ещё один элемент головоломки.
Стремление к стандартизации
Почему государствам нужно было общаться? Пять стран строили публичные сети с пакетной коммутацией. Канада. Франция. Япония. Великобритания. США.
Им нужен был стандарт интерфейса «хост-сеть». Сильная мотивация. Без него их сети оставались изолированными островами. Переговоры начались в 1975 году. Результатом стала рекомендация CCITT X.25. Принятая всеми вовлеченными странами в марте 1976 года.
X.25 открыла следующую фазу. Взаимосвязанные публичные сервисные сети. Это не был конец истории. Последовали дополнительные соглашения. X.75 стал стандартным протоколом для подключения международных сетей. Он позволял инфраструктуре разных стран общаться друг с другом.
Раскол в DoD и TCP/IP
К 1979 году Роберт Кан стал директором Управления по обработке информации (IPTO) в DARPA. Министерство обороны США имело несколько сетей с пакетной коммутацией. Но ни одна из них не была совместимой. Они «говорили» на разных языках.
Кан решил эту проблему. Он добился принятия DoD стандарта TCP/IP. Протокола, концепцию которого он впервые изложил в статье 1974 года, написанной совместно с Винсентом Серфом. Выдающимся разработчиком программного обеспечения. Соавтором.
TCP/IP распространился. Он перешел в другие исследовательские лаборатории. Затем — в широкую общественность. Он стал основой для окончательной сети с пакетной коммутацией. Интернета.
Переход не был мгновенным. Но архитектура выдержала. Стандарты устоялись. И скептицизм 70-х годов растворился в инфраструктуре сегодняшнего дня. Мы по-прежнему используем ту же фундаментальную логику. Пакеты перемещаются. Хосты исправляют ошибки. Интерфейсы определены.


















