Базовые сетевые технологии

Содержание

Глава 2. Обзор базовых сетевых технологий

2.1 Введение

2.2 Два подхода к сетевому взаимодействию

2.3 Глобальные сети, городские сети, локальные сети

2.4 Технология Ethernet

2.4.1 Свойства Ethernet’а

2.4.2 Обнаружение коллизий и восстановление

2.4.3 Пропускная способность Ethernet’а

2.4.4 Вариации Ethernet’а

2.4.5 Адресация Ethernet’а

2.4.6 Формат кадра Ethernet’а

2.4.7 Мосты(bridges) и их важность

2.5 Технология
Token Ring ProNET

2.5.1 Адресация
ProNET-10

2.5.2 Формат кадра proNET-10

2.5.3 Восстановление маркера proNET-10

2.5.4 Звездообразное кольцо proNET-10

2.6 Технология ARPANET

2.6.1 Адресация ARPANET

2.7 Сети Национального Научного Фонда (NSF)

2.7.1 Старая магистральная сеть NSFNET

2.7.2 Вторая магистральная сеть NSFNET в 1988-1989 годах

2.7.3 Магистральная сеть NSFNET в 1989-1990 годах

2.7.4 Мультиплексирование и программируемые соединения

2.7.5 Сети среднего уровня NSFNET

2.7.6 Сети доступа NSFNET

2.7.7 Сети университетских городков NSFNET

2.8 Другие технологии, над которыми использовался TCP/IP

2.8.1 X25NET

2.8.2 Cypress

2.8.3 Коммутируемый
(dial-up) IP

2.8.4 Пакетное радио

2.9 Итоги и выводы

2.1 Введение

Важно понимать, что Интернет не является новым видом физической сети. На самом деле это метод взаимного соединения физических сетей и набор соглашений для использования сетей, которые позволяют компьютерам взаимодействовать друг с другом. В то время как аппаратная технология играет небольшую роль при концептуальном проектировании, важно понимать разницу между низкоуровневыми механизмами, обеспечиваемыми самим оборудованием, и высокоуровневыми средствами, которые обеспечивает программное обеспечение протоколов Интернета. Также важно понимать, как средства, обеспечиваемые технологией коммутации пакетов, влияют на наш выбор абстракций высокого уровня.
Эта глава вводит основные понятия коммутации пакетов и терминологию. а затем рассматривает базовые технологии сетевого оборудования, которые использовались в объединенной сетях TCP/IP. Следующие главы описывают, как эти сети объединяются и как протоколы TCP/IP согласованы с различиями в оборудовании. В то время как список сетей, представленный здесь, не является исчерпывающим, он хорошо демонстрирует разнообразие физических сетей, над которыми работает TCP/IP.Читатель может спокойно пропустить большую часть технических деталей, но должен попытаться понять идею пакетной коммутации и должен попытаться представить архитектуру однородной коммуникационной системы, использующей такое разнообразное оборудование. Более того, читатель должен внимательно изучить детали схем физических адресаций в различных используемых технологиях; следующие главы рассмотрят детально, как протоколы высокого уровня используют эти физические адреса.
2.2 Два подхода к сетевому взаимодействию

Независимо от того, обеспечивают ли они соединение между компьютерами или между компьютерами и терминалами, коммуникационные сети могут быть разделены на два основных типа: с коммутацией каналов и коммутацией пакетов. Сети с коммутацией каналов работают, образуя выделенное соединение(канал) между двумя точками. Телефонная сеть США использует технологию с коммутацией каналов – телефонный вызов устанавливает канал от вызывающего телефона через локальную АТС, по линиям связи, к удаленной АТС, и, наконец, к отвечающему телефону. Пока существует канал, телефонное оборудование постоянно опрашивает микрофон, кодирует полученное значение в цифровой форме, и передает его по этому каналу к получателю. Отправителю гарантируется, что опросы будут доведены и воспроизведены, так как канал обеспечивает скорость 64 Кбит/с, которой достаточно для передачи оцифрованного голоса. Преимущество коммутации каналов заключается в ее гарантированной пропускной способности: как только канал создан, ни один сетевой процесс не уменьшит пропускной способности этого канала. Недостатком при коммутации каналов является ее стоимость: платы за каналы являются фиксированными и независимыми от траффика. Например, можно заплатить за телефонный вызов, даже если две разговаривающие стороны вообще ничего не говорили.
Сети с коммутацией пакетов, тип обычно используемый при соединении компьютеров, используют совершенно другой подход. В сетях с коммутацией пакетов траффик сети делится на небольшие части, называемые пакетами, которые объединяются в высокоскоростных межмашинных соединениях. Пакет, который обычно содержит только несколько сотен байтов данных, имеет идентификатор, который позволяет компьютерам в сети узнавать, предназначен ли он им, и если нет, то помогает им определить, как послать его в указанное место назначения. Например, файл, передаваемый между двумя машинами, может быть разбит на большое число пакетов, которые посылаются по сети по одному. Оборудование сети доставляет пакеты к указанному месту назначения, а сетевое программное обеспечение собирает пакеты опять в один файл. Главным преимуществом коммутации пакетов является то, что большое число соединений между компьютерами может работать одновременно, так как межмашинные соединения разделяются между всеми парами взаимодействующих машин. Недостатком ее является то, что по мере того как возрастает активность, данная пара взаимодействующих компьютеров получает все меньше сетевой пропускной способности. То есть, всякий раз, когда сеть с коммутацией пакетов становится перегруженной, компьютеры, использующие сеть, должны ждать, пока они не смогут послать следующие пакеты.
Несмотря на потенциальный недостаток негарантируемой сетевой пропускной способности, сети с коммутацией пакетов стали очень популярными. Причинами их широкого использования являются стоимость и производительность. В связи с тем, что к сети может быть подключено большое число машин, требуется меньше соединений и стоимость остается низкой. Так как инженеры смогли создать высокоскоростное сетевое оборудование, с пропускной способностью обычно проблем не возникает. Так много компьютерных соединений использует коммутацию пакетов, что далее в книге термин СЕТЬ будет обозначать только сеть с коммутацией пакетов.
2.3 Глобальные сети, городские сети, локальные сети

Сети с коммутацией пакетов, которые разрослись до больших географических размеров(например, континентальной части США), сильно отличаются от сетей, имеющих небольшие размеры(например, одну комнату). Чтобы помочь охарактеризовать различия в пропускной способности и способах использования, технологии коммутации пакетов часто делят на три большие категории: глобальные сети(WAN), городские сети(MAN) и локальные сети(LAN). Технологии WAN, иногда называемые long haul networks(буквально – сети дальних перевозок), позволяют взаимодействующим местам быть достаточно далеко друг от друга и предназначены для использования на больших расстояниях. Обычно WAN работают на более низких скоростях, чем другие технологии, и имеют гораздо большие паузы при соединении. Обычно скорости WAN лежат в диапазоне от 9.6 Кбит/с до 45 Мбит/с.
Самый новый вид сетевого оборудования, технологии MAN позволяют взаимодействовать в географических областях средних размеров и работают на скоростях от средних до высоких. Они получили такое имя из-за способности одной MAN занимать область размером с большой город. MAN работают с меньшими паузами, чем WAN, но не могут обеспечить взаимодействие на таких же больших расстояниях. Типичные MAN работают со скоростями от 56 Кбит/с до 100 Мбит/с.
Технологии LAN обеспечивают наивысшие скорости соединений между компьютерами, но не позволяют им занимать большие области. Например, типичная LAN занимает пространство, такое же как одно здание или небольшой университетский городок, и работает со скоростями от 4 Мбит/с до 2 Гбит/с.
Мы уже говорили о компромиссе между скоростью и расстоянием: технологии, обеспечивающие более высокие скорости взаимодействия, работают на более коротких расстояниях. Существуют и другие различия среди технологий в указанных выше трех категориях. В технологиях LAN каждый компьютер обычно содержит сетевое интерфейсное устройство, которое соединяет машину напрямую с сетевой средой передачи данных(например, медным проводом или коаксиальным кабелем). Часто сеть является пассивной, полагая, что электронные устройства в присоединенных компьютерах сами будут генерировать и получать необходимые электрические сигналы. В технологиях MAN сеть содержит активные коммутирующие элементы, которые приводят к появлению коротких задержек при направлении данных к их назначению. В технологиях WAN сеть обычно состоит из групп сложных маршрутизаторов пакетов, соединенных линиями связи. Сеть может быть расширена добавлением нового маршрутизатора и еще одной линии связи. Присоединить компьютер к WAN значит соединить его с одним из маршрутизаторов пакетов. Эти маршрутизаторы вводят значительные паузы при маршрутизации траффика. Поэтому, чем больше становится WAN, тем больше времени ей надо для маршрутизации траффика.
Целью разработки сетевых протоколов является скрыть технологические различия между сетями, сделав соединение независимым от используемого оборудования. Следующие секции содержат шесть примеров сетевых технологий, используемых в Интернете, показывая при этом различия между ними. Следующие главы показывают, как программное обеспечение TCP/IP скрывает такие различия и делает коммуникационную систему независимой от базовой аппаратной технологии.
2.4 Технология Ethernet

Ethernet – это имя, данное популярной технологии локальной сети с коммутацией пакетов, разработанной в Xerox PARC в начале 1970 года. Версия, описанная здесь, была стандартизована Xerox Corporation, Intel Corporation и Digital Equipment Corporation в 1978 году. Как показано на рисунке 2.1, Ethernet состоит из коаксиального кабеля приблизительно полдюйма в диаметре и до 500 метров длиной. Между центральным проводом и защитной оболочкой на каждом конце добавляется резистор для предотвращения отражения электрических сигналов. Называемый ether(для удобства будем называть его просто Е-кабель), этот кабель является полностью пассивным; все активные электронные компоненты, выполняющие сетевую функцию, связаны с компьютерами, присоединенными к сети.
+————+<=============внешняя изолирующая оболочка
|+———-+|
|| <============полиэтиленовый заполнитель
|| ||
|| == |<===============металлическая оболочка
|| =<== ||
|| \ ||
|+———\+|
+———–============центральный провод
Рисунок 2.1 Коаксиальный кабель, иcпользуемый в Ethernet
Ethernet’ы могут быть дополнены устройствами, называемыми повторителями, которые передают электрические сигналы от одного кабеля к другому. Рисунок 2.2 показывает типичное использование повторителей в здании фирмы. Один вертикальный магистральный кабель проложен через все этажи здания, и повторитель соединяет дополнительные кабели на каждом этаже с магистральным кабелем. Компьютеры присоединяются к кабелям, проложенным на каждом этаже. Только два повторителя могут быть помещены между любыми двумя машинами, поэтому общая длина простого Ethernetа довольно маленькая(до 1500 метров).
Расширение Ethernetа, используя повторители, имеет свои преимущества и недостатки. Повторители менее избыточны, чем другие типы соединяющего оборудования, что делает их самым дешевым способом расширения Ethernetа. Тем не менее, повторители имеют два недостатка. Во-первых, так как повторители повторяют и усиливают все электрические сигналы, то они копируют шумы, возникающие в одном проводе, в другой провод. Во-вторых, так как они содержат активные электронные компоненты, требующие энергии, они могут выйти из строя. В здании авария может произойти в неудобном месте(например, между перекрытиями или в розетке), делая трудным ее нахождение и устранение.
| ___________________________
| | | | | | | Этаж 3
|–O K K K K K
|
| ___________________________
| | | | | | | Этаж 2
|–O K K K K K
|
| ___________________________
| | | | | | | Этаж 1
|–O K K K K K
| \
\________ повторитель
Рисунок 2.2 Повторители, используемые для соединения кабелей Ethernetа в здании. Самое большее два повторителя могут быть помещены между парой взаимодействующих машин.
Соединения с E-кабелем делаются с помощью ответвлений, как показывает рисунок 2.3. При каждом ответвлении маленькая дырка во внешних слоях кабеля позволяет маленьким контактам касаться центрального провода и защитной металлической оболочки(некоторые производители требуют, чтобы кабель был разрезан и вставлен Т-образный соединитель). Каждое соединение с Ethernetом имеет две основные электрические компоненты. Трансивер присоединяется к центральному проводу и металлической оплетке на Е-кабеле, принимая и передавая сигналы. Интерфейс с ЭВМ соединяется с трансивером и взаимодействует с компьютером(обычно через шину компьютера).
Трансивер – это небольшая часть оборудования, физически смежная с Е-кабелем. Помимо аналогового оборудования, которое принимает сигналы от Е-кабеля и управляет им, трансивер содержит цифровые схемы, которые позволяют ему взаимодействовать с цифровым компьютером. Трансивер может определить, когда Е-кабель используется, и может транслировать аналоговые электрические сигналы, идущие по Е-кабелю, в цифровую форму или из нее в аналоговую. По кабелю трансивера, находящемуся между трансивером и интерфейсом ЭВМ, передается питание трансивера, а также сигналы, управляющие его работой.
Рисунок 2.4 показывает соединение между компьютером и трансивером. Каждый интерфейс ЭВМ управляет работой одного трансивера согласно командам, которые он получает от программного обеспечения компьютера. Для операционной системы интерфейс представляется в виде устройства ввода-вывода, которое воспринимает основные команды передачи данных от компьютера, управляет трансивером при их выполнении, прерывается, когда задача завершается, и сообщает информацию о состоянии. В то время как трансивер – это простое аппаратное устройство, интерфейс с ЭВМ может быть сложным(например, он может содержать микропроцессор, используемый для управления передачей данных между памятью компьютера и Е-кабелем).
______________________
/-\ ___________ \
___/_ \ \ \ |
центральный провод /–\ \ \ \ \ |
\ / \ | | | | |
——-|– | | | |———-| |
__\ / | | | | | |
металлическая оплетка/ \–/_____/ / / | / |
\ / /___|______/ |
\-/________|____|_______/
| |
(a) —————
| |
| трансивер |
(b) | |
—————
|
_______________________________ | к интерфейсу
| | | | ЭВМ
| | …… | V
| | |
O O O
Рисунок 2.3 (а) Наглядное представление кабеля, показывающее детали двух электрических соединений между трансивером и кабелем при ответвлении, и (b) схематическая диаграмма Ethernetа с группой ответвлений.
2.4.1 Свойства Ethernet’а

Ethernet – это технология общей шины со скоростью 10 Мбит/с , с механизмом негарантированной(best effort) доставки и распределенным управлением доступом. Она называется технологией общей шины из-за того, что все станции разделяют один общий канал взаимодействия; она – широковещательная, так как все трансиверы принимают информацию, передаваемую всеми станциями. Метод, используемый для передачи пакетов от одной станции к другой или к группе станций, будет рассмотрен позднее. На данный момент достаточно уяснить, что трансиверы не фильтруют информацию – они передают все пакеты на интерфейс ЭВМ, который выбирает из них нужные этой ЭВМ и отбрасывает другие пакеты. Ethernet называется механизмом негарантированной доставки, так как он не информирует отправителя о том, был ли доведен пакет до получателя. Например, если случилось так, что машина получателя выключена, пакет будет потерян, но отправитель ничего не будет знать об этом. мы увидим позднее, как протоколы TCP/IP согласованы с оборудованием с негарантированным доведением.
Ethernet
_______________________________________________________
|
|
——- трансивер
| |<—— | | … | / / \ / /<——-шина компьютера \_____ / / | / / / | | / | |<—————плата интерфейса компьютера | | / | |/ |||||– |||||/ / / / / / / /… /
Рисунок 2.4 Соединение между кабелем Ethernet и компьютером
Управление доступом в Ethernetе распределенное, так как, в отличие от некоторого другого сетевого оборудования, здесь нет централизованной схемы предоставления доступа. Схема доступа Ethernetа называется множественным доступом с контролем несущей и обнаружением коллизий(CSMA/CD). Она является CSMA, так как несколько машин могут получить доступ к Ethernetу одновременно, и каждая машина определяет, занят ли Е-кабель, по наличию несущей в нем. Когда интерфейс компьютера имеет пакет, который нужно передать, он слушает Е-кабель, чтобы узнать, передается ли уже чье-то сообщение(т.е. определяет наличие несущей). Когда передачи не обнаружено, интерфейс компьютера начинает передачу. Каждая передача ограничена в своей продолжительности(так как существует максимальный размер пакета). Более того, оборудование должно делать небольшие паузы между передачами пакетов, чтобы не получилось так, что сеть используется одной парой машин, и чтобы другие машины тоже имели возможность доступа к сети.
2.4.2 Обнаружение коллизий и восстановление

Когда трансивер начинает передачу, сигнал не достигает всех частей сети одновременно. На самом деле он передается по кабелю со скоростью, составляющей примерно 80% от скорости света. Поэтому возможна ситуация, когда два трансивера могут определить, что сеть незанята, и одновременно начать передачу. Когда два электрических сигнала передаются одновременно, они перемешиваются, в результате чего оба становятся искаженными. Такие события называются коллизиями.
Ethernet обрабатывает коллизии оригинальным способом. Каждый трансивер следит за состоянием кабеля, когда он передает , чтобы узнать, когда другой сигнал помешал его передаче. На техническом языке такое слежение называется обнаружением коллизий и делает Ethernet сетью CSMA/CD. Когда коллизия обнаружена, интерфейс ЭВМ аварийно завершает передачу, ждет конца работы других станций и снова пытается повторить передачу. При этом нужно соблюдать осторожность, иначе сеть может оказаться перегруженной трансиверами, впустую пытающимися передавать, причем каждая передача будет приводить к коллизии. Чтобы избежать таких ситуаций, Ethernet использует стратегию двоичной экспоненциальной задержки, при которой отправитель ждет случайное время после первой коллизии, в два раза дольше, если вторая попытка передать, также привела к коллизии, в четыре раза дольше, если третья попытка привела к коллизии, и так далее. Идея, лежащая в основе экспоненциальной задержки, заключается в том, что при коллизии возможно, что большое число станций будет пытаться передавать одновременно и может возникнуть большие помехи для траффика. При таких помехах существует большая вероятность того, что две станции выберут похожие времена задержки. Поэтому вероятность того, что возникнет новая коллизия, велика. С помощью удвоения случайного времени задержки стратегия экспоненциальной задержки быстро распределяет попытки повторной передачи станций на достаточно большой промежуток времени, что делает вероятность дальнейших коллизий крайне маленькой.
2.4.3 Пропускная способность Ethernet’а

Стандартный Ethernet работает со скоростью 10 Мбит/с, что означает, что данные могут передаваться по кабелю со скоростью 10 миллионов бит в секунду. Хотя многие современные компьютеры могут генерировать данные со скоростью Ethernetа, реальную скорость сети не следует представлять как скорость, с которой два компьютера обмениваются данными. На самом деле скорость сети является мерой пропускной способности общего траффика сети. Представьте сеть в виде высокоскоростной магистрали(highway), соединяющей группу городов. Высокие скорости при движении по магистрали означают, что она может выдержать большую загрузку траффиком, а низкие скорости – что эта магистраль не может выдержать большой объем траффика. Ethernet со скоростью 10 Мбит/с, например, может выдержать несколько компьютеров, генерирующих высокоскоростной траффик или большое число компьютеров, генерирующих медленный траффик.
2.4.4 Вариации Ethernet’а

Последние достижения в технологии сделали возможным создание Ethernetа, который нуждается в электрической изоляции коаксиального кабеля. Называемая Ethernet – витая пара, эта технология позволяет обычному Ethernetу со скоростью 10 Мбит/c передаваться по паре медных проводов, во многом похожих на те, которые используются для соединения телефонов. Преимущество использования витой пары состоит в том, что она дешевле и позволяет многим группам использовать существующие кабеля вместо установки новых.
Когда высокая пропускная способность не нужна, сеть может использовать Ethernet-подобную технологию, но работать на несколько меньших скоростях. Преимущество здесь в основном экономическое. Меньшие скорости означают более простое оборудование и меньшую цену. Одной из причин того, что более низкие скорости сети приводят к уменьшению ее цены, является то, интерфейсы требуют меньше буферной памяти и могут быть созданы на основе простых(и дешевых) интегральных микросхем.
Уменьшения цены можно также добиться, если высокоскоростные цифровые микросхемы соединить напрямую с кабелем, не используя трансивер. В этом случае Ethernet может быть создан с помощью стандартного коаксиального кабеля, такого, который используется для кабельного телевидения. Называемый Ethernet – тонкая пара, этот тонкий кабель является недорогим, но поддерживает меньшее число соединений и может работать только на более коротких расстояниях, чем стандартный Ethernet-овский кабель.
Производители рабочих станций обнаружили, что Ethernet-тонкий кабель особенно привлекателен из-за того, что они могут интегрировать Ethernet-овское оборудование в одноплатные компьютеры и смонтировать BNC-разъемы прямо в задней стенке машины. Не требуя специальных средств, BNC-разъемы делают возможным для пользователей присоединение их рабочих станций к Ethernet-у. Конечно, предоставление пользователям возможности добавлять их машины к сетям имеет свои недостатки. Это означает, что сеть будет чувствительной к разъединениям, неправильным соединениям кабелей, и другим ошибкам. Но в большинстве случаев преимущества перевешивают недостатки.
При другом методе уменьшения цены используется один физический кабель для передачи нескольких Ethernet-ов. Известная как широкополосная, эта технология работает аналогично широковещательному радио. Передатчик объединяет несколько Ethernet-ов в одном кабеле, назначая каждому Ethernet-у уникальную частоту. Приемники должны быть настроены на правильную частоту , чтобы они принимали только нужный сигнал и игнорировали остальные. Хотя оборудование, требуемое для присоединения к широковещательному кабелю, более дорогое, чем оборудование для соединения с обычным кабелем, при широковещании не нужно платить за прокладку нескольких кабелей.
2.4.5 Адресация Ethernet’а

Интерфейс ЭВМ Ethernetа поддерживает механизм адресации , который позволяет передавать на компьютер только нужные пакеты. Напомним, что каждый интерфейс получает копию каждого пакета – даже если они адресованы другим машинам. Это оборудование фильтрует пакеты, игнорируя те, которые адресованы другим машинам, и передает в компьютер те, которые адресованы ему. Механизм адресации и фильтрации требуется, чтобы предохранить компьютер от перегрузки приходящими данными.
Чтобы позволить компьютеру определить, какие пакеты назначены ему, каждому компьютеру, соединенному с Ethernet-ом, назначено 48-битовое число, называемое Ethernet-овским адресом. Производители оборудования для Etherneta приобретают блоки адресов Ethernetа и последовательно назначают эти адреса производимым ими интерфейсам для Ethernetа(Институт Инженеров по Электротехнике и Радиотехнике(IEEE) управляет адресным пространством Ethernetа и назначает адреса по мере необходимости). Поэтому никакие два интерфейса не будут иметь одинаковый адрес Ethernetа.
Обычно Ethernet-овский адрес фиксируется в оборудовании интерфейса компьютера. Так как адреса Ethernetа принадлежат аппаратным устройствам, то они иногда называются аппаратными адресами или физическими адресами. Отметим следующее важное свойство физических адресов Ethernetа:
Физические адреса связаны с интерфейса Ethernetа; установка интерфейса на новую машину или замена неисправного интерфейса изменяет его физический адрес.
Зная, что физические адреса Ethernetа могут меняться, легко понять, почему более высокие уровни сетевого математического обеспечения согласованы с такими изменениями. 48-битовый адрес Ethernetа не только определяет отдельный аппаратный интерфейс. Он может принадлежать одному из трех типов:
физический адрес одного сетевого интерфейса;
широковещательный сетевой адрес;
групповой адрес.
По соглашению широковещательный адрес(все единицы) зарезервирован для одновременной посылки всем станциям. Групповые адреса обеспечивают ограниченную форму широковещания, при которой группа компьютеров в сети согласна отвечать на групповой адрес. Каждый компьютер в такой группе может получать сообщения одновременно с другими компьютерами этой группы, при этом остальные машины в сети ничего не получают.
Для согласования с широковещательной и групповой адресацией интерфейс Ethernetа должен распознавать не только свой физический адрес. Интерфейс обычно принимает по крайней мере два вида передач: адресованные физическому адресу интерфейса и адресованные широковещательному адресу. Некоторые интерфейсы могут быть запрограммированы на распознавание групповых адресов или даже альтернативных физических адресов. Когда операционная система начинает работать, она инициализирует интерфейс Ethernetа, задавая ему набор адресов, который он должен распознавать. В дальнейшем интерфейс сканирует каждую передачу, передавая на компьютер только передачи, предназначенные одному из указанных адресов.
2.4.6 Формат кадра Ethernet’а

Ethernet можно представлять как соединение канального уровня между машинами. Поэтому имеет смысл рассматривать передаваемые данные как кадры(фреймы)(Термин фрейм (граница) ведет свое происхождение от передачи по последовательным линиям, в которых отправитель определял границы данных, добавляя специальные символы перед и после передаваемых данных). Кадры Ethernetа имеют переменную длину в пределах от 64 октетов(октетом называется блок из 8 бит, чаще называемый байтом) до 1518 октетов (заголовок, данные, ЦКС). Как и во всех сетях с коммутацией пакетов, кадр должен идентифицироваться свое назначение. Рисунок 2.5 показывает формат кадра Ethernetа, который содержит физический адрес отправителя, а также физический адрес получателя.
Помимо идентификации отправителя и получателя, каждый кадр, передаваемый по Ethernetу, содержит преамбулу, поле типа, поле данных и циклическую контрольную сумму(CRC) или ЦКС. Преамбула состоит из 64 битовой последовательности 1 и 0 и служит для облегчения синхронизации при приеме. 32-битовая ЦКС помогает интерфейсу обнаружить ошибки передачи: отправитель вычисляет ЦКС как функцию от данных, передаваемых в кадре, а получатель заново вычисляет ЦКС для того, чтобы быть уверенным в том, что пакет принят без ошибок.
Поле типа кадра содержит 16-битовое целое число, которое идентифицирует тип данных, передаваемых в кадре. С точки зрения Интернета поле типа кадра очень важно, так как это означает, что кадры Ethernetа являются самоидентифицирующимися. Когда кадр приходит на данную машину, операционная система использует тип кадра, чтобы определить, какой программный модуль обработки протоколов должен обработать это кадр. Главные преимущества самоидентифицирующихся кадров заключаются в том, что они позволяют одновременно использовать несколько протоколов на одной машине и в том, что они позволяют нескольким протоколам смешиваться при работе в одной физической сети. Например, кто-то может иметь прикладную программу, использующую Интернетовские протоколы, а кто-то использовать локальный экспериментальный протокол. Операционная система будет определять, кому послать приходящие пакеты, основываясь на значении поля типа кадра. Мы увидим, что протоколы TCP/IP используют самоидентифицирующиеся кадры Ethernetа для выделения себя среди других протоколов.
адрес адрес тип
преамбула получателя отправителя кадра данные ЦКС
—————————————————————
| 64 бита | 48 бит | 48 бит |16 бит|368-12000 бит| 32 бита|
—————————————————————
Рисунок 2.5 Формат кадра(пакета) в том виде, в котором он передается по Ethernetу. Размеры полей не соотносятся друг с другом.
2.4.7 Мосты(bridges) и их важность

Мы уже рассматривали использование Ethernet-овских повторителей как одну из технологий расширения физического Ethernetа до нескольких физических кабельных сегментов. Хотя повторители как способ расширения были популярны много лет тому назад, многие теперь используют мосты для соединения сегментов. В отличие от повторителя, который повторяет электрические сигналы, мост повторяет пакеты. Фактически мост – это быстрый компьютер с двумя интерфейсами Ethernetа и фиксированной программой. Мост работает с обоими интерфейсами Ethernetа в режиме "без разбора", то есть интерфейсы перехватывают все корректные пакеты, появляющиеся в Ethernetах, к которым они присоединены, и предоставляют их процессору моста. Если мост соединяет два Ethernetа, Е1 и Е2, то программное обеспечение берет каждый пакет, полученный из Е1 и передает его в Е2, и наоборот.
Мосты являются более передовыми по отношению к повторителям, так как они не повторяют шум, ошибки, или испорченные кадры; должны быть получены полностью корректные кадры, чтобы они были продублированы. Более того, интерфейсы мостов следуют правилам CSMA/CD Ethernetа, поэтому коллизии и паузы при распространении в одном кабеле(сегменте) остаются изолированными от тех же явлений в других сегментах. В результате мостами может быть соединено почти любое число Ethernetов. Отметим, что мосты скрывают детали соединения: набор сегментов, связанных мостами, функционирует как один Ethernet. Компьютер может связываться с другими машинами через мосты, используя такие же аппаратные сигналы, как те, которыми он пользуется для связи в своем сегменте.
Большинство мостов не передают кадры с одного кабеля на другой: они принимают решения о том, какие кадры нужно передавать на другой сегмент, а какие нет. Такие мосты называются адаптивными, или обучающимися мостами. Адаптивный мост состоит из компьютера с двумя интерфейсами Ethernetа. Программное обеспечение адаптивного моста хранит два списка адресов, по списку для каждого интерфейса. Когда кадр приходит из Ethernetа Е1, адаптивный мост добавляет 48-битовый Ethernet-овский адрес отправителя в список, связанный с Е1. Аналогично, когда кадр приходит из Е2, мост добавляет адрес отправителя к списку, связанному с Е2. Поэтому, по прошествии некоторого времени адаптивный мост узнает, какие машины находятся в Е1, а какие в Е2.
После записи адреса отправителя кадра, адаптивный мост использует адрес получателя, чтобы определить, нужно ли передавать кадр в другой сегмент. Если список адресов показывает, что получатель находится в Ethernete, из которого прибыл кадр, то мост не передает этот кадр в другой сегмент. Если же получателя нет в списке адресов(т.е. получатель – это широковещательный или групповой адрес, или мост еще не знает местонахождение получателя), мост отправляет кадр в другой Ethernet.
Преимущества адаптивных мостов очевидны. Так как мост использует адреса, выделяемые из обычного траффика, он полностью автономен – человеку не требуется задавать мосту конкретные адреса. Так как мост изолирует траффик, когда передача не нужна, он может улучшить производительность перегруженной сети (заметим, что мосты работают исключительно хорошо при разделении загрузки по районам (сегментам) в среде рабочих станций, в которой группы рабочих станций большую часть своего траффика адресуют файл-серверу).
Обобщим вышеизложенное:
Адаптивный Ethernet-овский мост соединяет два сегмента Ethernetа, передавая кадры из одного в другой. Он использует адреса отправителей для того, чтобы узнать, в каком сегменте Ethernetа находится та или иная машина, и применяет полученную информацию к адресам получателя, чтобы не передавать пакеты в другой сегмент, когда это не нужно.
С точки зрения TCP/IP, Ethernetы, связанные мостом, просто являются другой формой физического сетевого соединения. Важным моментом является то, что:
Так как соединение с помощью физических проводов, обеспечиваемое мостами и повторителями, прозрачно для машин, использующих Ethernet, мы будем представлять Ethernetы, связанные мостами, как одну физическую сетевую систему.
Большинство коммерческих мостов являются более сложными и более надежными, чем это следует из нашего описания. При включении питания они ищут другие мосты и приобретают информацию о топологии сети. Они используют алгоритм распределенного дерева распространения(spanning-tree) при принятии решения о том, куда передавать кадры. В частности, мосты решают, как распространять широковещательные пакеты так, чтобы по каждому кабелю передавалась только одна копия широковещательного кадра. Без такого алгоритма для Ethernetов и мостов, связанные в виде кольца, такие пакеты привели бы к катастрофическим результатам, так как пришлось бы постоянно передавать широковещательные пакеты в обе стороны.
2.5 Технология Token Ring ProNET

ProNET-10 – это имя коммерческого сетевого продукта для ЛВС, который является интересной альтернативой Ethernetу. Основанный на сетевых исследованиях в университетах, и созданный Proteon Incorporated, proNET-10 состоит из пассивной кабельной системы, которая соединяет компьютеры. Как и Ethernet, низкоскоростная версия работает со скоростью 10 Мбит/с, ограничена короткими расстояниями, и требует, чтобы присоединяемые компьютеры имели активные интерфейсы с ЭВМ.
В отличие от Ethernetа или других аналогичных шинных технологий, proNET-10 требует, чтобы компьютеры были соединены кабелями в одиночное кольцо, и использует технологию доступа, известную как передача маркера. Системы с передачей маркера отличает от других то, что в них доступ осуществляется путем последовательного использования всеми машинами сети. В любой момент времени ровно одна машина имеет маркер, который дает право этой машине передать пакет. После посылки этого пакета, машина передает маркер следующей машине по порядку. Поэтому, когда ни одна из машин ничего не посылает, они непрерывно передают маркер по кольцу; когда им всем нужно послать пакеты, они ждут своей очереди, чтобы послать их.
Хотя передача маркера может быть использована для шинных топологий типа Ethernetа, именно кольцевые топологии, такие, как та, что используется proNET-10, делают передачу маркера особенно простой, так как физические соединения определяют последовательность, в которой передается маркер. Главным является то, что данная машина не знает, кому она передает маркер. Мы вскоре увидим, почему циркуляция маркера, основанная на физическом порядке, важна, и как она может быть использована, чтобы сделать кольцо более надежным.
Чтобы понимать, как работает кольцо, нам нужно рассмотреть оборудование. Физически кольцевая сеть не является непрерывным кольцом – она состоит из соединений точка-точка между интерфейсами компьютеров сети. В каждом компьютере один провод передает входящие сигналы, а другой – выходящие сигналы. Концептуально каждый интерфейс компьютера работает в одном из трех режимов: режиме копирования, режиме передачи и режиме восстановления. Как показывает рисунок 2.6, первые два случая соответствуют нормальному режиму работы и отличаются наличием маркера у машины (в одном случае он есть, а в другом нет).
___
—————-|<–|————–| | |___| | | I1 | _|_ _|_ <—|-| | I2 | A | I4 |_V_| |_|_| | | | I3 | | _____ | |—————|-| |-|————| |_|_|_| | | V A
Рисунок 2.6 Сеть с маркерным кольцом, в которой интерфейс I3 находится в режиме передачи, владеет маркером и посылает пакет интерфейсу I2. Другие интерфейсы находятся в режиме копирования. Отправитель всегда получает обратно посланные им биты; другие интерфейсы выделяют копию пакета для компьютера, к которому они присоединены только в том случае, когда совпадают адреса.
Если интерфейс не владеет маркером, он работает в режиме копирования, читая биты из входящего провода и копируя их в выходящий кабель. В режиме копирования интерфейс также просматривает поток данных, чтобы найти пакеты, адресованные его машине, и помещает копию таких пакетов в память машины. Если же интерфейс владеет маркером, он работает в режиме передачи, посылая пакет по выходящему кабелю и проверяя его корректность при чтении пакета из входящего провода(после прохождения кольца пакет вернется по входящему проводу).
Важно понимать, что ProNET-10 – это технология ЛВС, которая имеет маленькие паузы при передаче. Созданное на основе экранированного медного кабеля, это кольцо может охватывать самое большее несколько смежных зданий. При использовании оптоволоконного кабеля кольцо может охватывать большие расстояния(например, целый университетский городок). В любом случае задержки распространения являются маленькими. Как следствие, сигналы могут распространяться по всему кольцу и возвращаться отправителю так быстро, что начало пакета успевает вернуться тогда, когда отправитель еще продолжает передавать. Преимущество коротких пауз при распространении заключается в том, что станция может быстро определить, не разорвано ли кольцо. Она может также определить, не появились ли ошибки в пакете из-за электрических помех или неисправного оборудования где-либо в кольце. Мы рассмотрим обе эти особенности ниже.
2.5.1 Адресация ProNET-10

В отличие от Ethernetа, оборудование интерфейса proNET-10 не имеет фиксированных адресов, назначаемых производителем. Вместо этого каждый интерфейс поставляется с набором из 8 переключателей, которые позволяют системному администратору выбрать один из 255 возможных адресов(поэтому каждая сеть proNET-10 ограничена 255 машинами). Этот адрес должен быть выбран и установлен, используя физические переключатели на плате. Он не может быть быстро изменен, как только интерфейс установлен, а также не может быть изменен программно. Тем не менее, тот факт, что адрес является устанавливаемым, имеет два важных преимущества. Во-первых, это значит, что адреса proNET-10 могут иметь много меньший размер, чем адреса Ethernetа(8 бит вместо 48 бит). В-вторых, это значит:
Так как пользователи могут изменить адреса proNET-10 при установке плат, сетевой аппаратный адрес машины не нужно менять при замене оборудования интерфейса компьютера.
Конечно, то, что аппаратные адреса устанавливаемые, имеет и свой недостаток. В отличие от адресов Ethernetа, схема устанавливаемых адресов, используемая proNET-10, допускает конфликты адресов. Человек, устанавливающему адреса, должен быть уверен, что каждому интерфейсу в данном кольце назначен уникальный адрес от 0 до 254. Адрес из всех единиц(255) зарезервирован для широковещательного траффика. Как мы увидим позднее, при использовании proNET-10 с TCP/IP, тем, кто устанавливает адреса, следует избегать назначать компьютеру адрес ноль.
2.5.2 Формат кадра proNET-10

Рисунок 2.7 показывает формат кадра proNET-10. Длина полей указана в битах, так как сеть является биториентированной и не всегда выравнивает данные на границу байта. Оборудование сети требует, чтобы поле данных было целым числом октетов, облегчая передачу данных в память компьютера. Как и в Ethernetе, оборудование работает только с некоторыми полями в кадре; программное обеспечение работает с остальными полями и использует их. С точки зрения разработчика объединенной сети, это различие является несущественным.
начало адрес адрес тип данные конец четн. отказ
сообщ. получ. отправ. кадра кадра сообщ.
—————————————————————
|10 бит| 8 бит|8 бит |24 бита|0-16352 бита|9 бит |1 бит|1 бит|
—————————————————————
Рисунок 2.7 Формат кадра proNET-10. Поля не масштабированы.
Каждый кадр начинается с поля начала сообщения, за которым следует два октета адресов отправителя и получателя. Поле типа кадра состоит из 3 октетов, но только первый сейчас используется; остальные два должны быть равны 0. Вслед за данными идет поле Конец Сообщения, один бит четности и бит отказа. Сразу за концом кадра может следовать другой кадр или маркер. Заметим, что как и Ethernet, proNET-10 является самоидентифицирующимся. В отличие от Ethernetа, который использует сложную 32-битовую ЦКС для поиска ошибок передачи, proNET-10 использует только один бит четности. Чтобы понять, почему нужен только один бит, вспомним, что proNET-10 – это технология ЛВС с маленькими паузами при распространении. Поэтому, отправитель принимает копию кадра во время передачи и может просто сравнить биты в копии и передаваемые биты, чтобы обнаружить изменения. Фактически бит четности не нужен, за исключением проверки бита отказа.
Оборудование использует флаг, состоящий из семи единиц, чтобы не спутать такие поля, как конец сообщения, и данные пользователя. Маркер и начало кадра также начинаются с флага. Всякий раз, когда семь последовательных единиц встречаются в данных пользователя, оборудование модифицирует последовательность бит так, чтобы быт уверенным, что получатель отличит ее от флага. Получатель убирает эту модификацию, чтобы были приняты те же самые данные, которые были посланы.
2.5.3 Восстановление маркера proNET-10.

Так как передача маркера полагается на то, что все компьютеры передают маркер другой машине, когда закончат передачу, авария на одном узле может остановить все кольцо. Предположим, например, что сбой или электрические помехи разрушили маркер. Если в кольцо не встроен механизм восстановления, вся передача будет прекращена. Для восстановления маркера при его потере на каждой станции proNET-10 запущены два таймера. Один таймер, называемый таймером флага, сбрасывается всякий раз, когда станция обнаруживает какую-либо передачу в кольце(т.е. кадр или маркер), а другой, называемый таймером маркера, сбрасывается всякий раз, когда появляется маркер. Если какой-либо из таймеров обнулился, когда станции нужно послать пакет, станция переходит в режим восстановления и в результате генерирует новый маркер для кольца. Дело в том, что в неработающем кольце маркер циркулирует постоянно. Поэтому таймер флага обнуляется быстро(после 3 мс), если в кольце не работает ни одна машина. Таймер маркера должен допускать передачу больших пакетов другими станциями, может быть даже всеми 255 станциями., поэтому он имеет гораздо большее время обнуления(400 мс). Кольцевые технологии, которые допускают большее число станций или более длинные пакеты, используют большее время обнуления(например, proNET-80 использует 700 мс). Обычно, первая станция, которая входит в режим восстановления, подразумевает, что она владеет маркером и передает пакет. Вслед за передачей пакета она передает маркер, как будто ничего не произошло. При передаче станция следит за кольцом, чтобы проверить полноту циркуляции пакета в кольце. Если пакет прошел кольцо без ошибок, то кольцо восстановлено и все начинает работать в обычном режиме. Если вдруг получится так(хотя это и маловероятно), что две станции одновременно попытаются передавать после разрыва кольца, они обнаружат ошибку, так как передаваемые ими пакеты не вернутся им обратно. Эти две станции подождут случайное время, а затем повторят попытку. Для гарантии, что они не будут ждать одинаковое количество времени, каждая станция использует время задержки, пропорциональное ее аппаратному адресу. Поэтому, если две станции начнут одновременно передавать пакеты, то только одна добьется успеха. Алгоритм восстановления как эффективен, так и надежен. Он гарантирует, что за несколько проходов кольца одна из станций примет решение, что она владеет маркером, а все остальные станции согласятся с этим.
2.5.4 Звездообразное кольцо proNET-10

На практике в большей части установок сети proNET-10 конфигурируются в виде звездообразных колец для повышения надежности. Идея состоит в том, чтобы использовать пассивный кабельный центр как концентратор(hub) в физической звездообразной топологии , несмотря на то что сеть логически работает как кольцо. Рисунок 2.8 иллюстрирует такое соединение.
реле для ЭВМ 1
кабельный центр ————- /
| интерфейс | /
\ | для ЭВМ 1 |/
\ ——A—–/
\ | /
\ ===========|===/========
| –V–/ |
| —–|R1 |<—-| | | | | | | интерфейс | | V– | | интерфейс | | для ЭВМ 2 |<—>|R2 | |R4 |<—>| для ЭВМ 4 |
————- | —– —– | ————-
| | —– A |
| |—>|R3 |—–| |
| —– |
========================
Рисунок 2.8 Соединение трех ЭВМ через пассивный кабельный центр. Так как она не потребляет энергии, реле R3 просто передает через себя сигналы. Логически сеть является кольцом; физически – это звезда.
На этом рисунке реле R3 не потребляет энергии, так как оно подключено к ЭВМ. R3 замыкает кольцо и соединяет R2 с R4. Так как другие реле потребляют энергию, они соединяют соответствующие ЭВМ с кольцом. Поэтому электрический сигнал, посланный с ЭВМ 4 передается через реле R4 к реле R1, затем к интерфейсу ЭВМ 1 , обратно на реле R1, по реле R2 и так далее.
Этот кабельный центр не имеет активных компонент, но использует чувствительные реле, получающие питание по соединению с ЭВМ. ЭВМ обеспечивает небольшой постоянный ток для питания реле, а также сигналы, кодирующие данные, по одному многожильному кабелю. Электроника в кабельном центре отделяет переменный ток от постоянного. Пока машина включена, реле в кабельном центре делает ее присоединенной к кольцу. При отключении машины ток перестает течь в кабельный центр и соответствующее реле изменяет свое состояние, отсоединяя свою ЭВМ и соединяя другие машины в кольце. Поэтому сеть продолжает работать, даже если некоторые из присоединенных машин отключены(конечно, авария машины может остановить сеть на несколько миллисекунд, пока оставшиеся узлы восстанавливают маркер). Помимо надежности, данный производитель разработал интерфейс proNET-10 состоящим из двух плат, контроллера, который может работать в режиме копирования и восстановления маркера без помощи ЦП, и интерфейса с компьютером, который полагается на ЦП при чтении и записи пакетов. Использование этих двух плат изолирует остальную сеть от сбоев операционной системы на данной машине.
2.6 Технология ARPANET

Одна из самых старых глобальных сетей с коммутацией пакетов, ARPANET, была создана агентством DARPA в то время, когда это агентство еще называлось ARPA. DARPA заключило контракт на разработку программного обеспечения с фирмой Bolt, Beranek and Newman из Кембриджа, штат Массачусетс в конце 1968 года. К сентябрю 1969 года уже были готовы отдельные части ARPANET. ARPANET служила испытательным полигоном для большинства из разработок в области коммутации пакетов. Помимо использования ее для сетевых исследований, исследователи из нескольких университетов, военных баз, и правительственных лабораторий регулярно использовали ARPANET для обмена файлами и электронной почтой и для обеспечения удаленного доступа к их компьютерам. В 1975 году управление этой сетью было передано от DARPA к Оборонному Коммуникационному Агентству США(DCA). DCA сделало ARPANET частью DDN, программы, в которой группы сетей выступала как часть всемирной коммуникационной системы для МО.
В 1983 МО разделило ARPANET на две связанные сети, оставив ARPANET для экспериментальных исследований и образовав MILNET для военного пользования. Функции MILNET были ограничены передачей данных категории UNCLASSIFIED. Хотя в нормальных условиях, как ARPANET, так и MILNET могли передавать траффик друг друга, управление ими было организовано так, что позволяло разъединить одну сеть от другой(Самый известный случай разъединения произошел в ноябре 1988 года, когда вирус Морриса атаковал Интернет и стал быстро размножаться). Так как ARPANET и MILNET использовали одинаковую аппаратную технологию, наше описание технических деталей применимо к обеим сетям, хотя мы в основном ссылаемся на ARPANET. Фактически эта технология является коммерчески доступной и использовалась несколькими корпорациями для создания своих частных сетей коммутации пакетов.
Так как ARPANET уже существовала и ежедневно использовалась многими из исследователей, разрабатывавших архитектуру Интернета, она оказывала большое влияние на их работу. Они пришли к мысли использовать ARPANET как глобальную магистральную сеть, на основе которой можно было бы создать Интернет. Влияние идеологии одной, центральной глобальной магистральной сети все еще ощущается в некоторых из протоколов Интернета, которые мы рассмотрим позже, и привело к тому, что добавление к Интернету дополнительных магистральных сетей является непростой задачей.
Физически ARPANET состоит из приблизительно 50 миникомпьютеров С30 и С300 корпорации BBN, называемых узлами коммутации пакетов(PSN)(PSN раньше назывались Интерфейсными Процессорами Сообщений, или IMP), разбросанных по континентальной части США и западной Европе(MILNET имеет приблизительно 160 PSN, включая 34 в Европе и 18 в Тихом Океане и на Дальнем Востоке). В каждом из мест, участвующем в работе сети, располагается один PSN, который предназначен для коммутации пакетов; он не может быть использован для других целей. На самом деле, все PSNы считаются частью ARPANET и управляются Центром Сетевых Операций(NOC), размещенным на фирме BBN в Кембридже, штат Массачусетс.
Линии данных точка-точка, арендованные у фирм, предоставляющих глобальные линии связи, соединяют вместе PSN, образуя из них сеть. Например, арендованная линия связи соединяет PSN, находящийся в университете Пурдью, с PSN в Карнеги-Меллоне и с PSN в университете Висконсина. Вначале большинство из выделенных линий в ARPANET работало со скоростью 56 Кбит/с, скоростью, которая считалась очень большой в 1968 году, но оказалась медленной по современным меркам. Напомним, что следует представлять себе скорость как меру пропускной способности, а не время, нужное для доставки пакетов. Чем больше компьютеров использовало ARPANET, тем большей делали пропускную способность, чтобы приспособиться к этой загрузке. Например, в последний год существования ARPANET многие из линий работали со скоростью свыше мегабита.
Принцип дублирования применяется во всех военных системах, так как важна надежность системы. При создании ARPANET DARPA решило следовать военным требованиям надежности, поэтому они потребовали, чтобы каждый PSN имел по меньшей мере две выделенных линии для связи с другими PSN, и чтобы программное обеспечение автоматически адаптировалось к сбоям и выбирало другие пути. В результате ARPANET продолжает работать, даже если один из каналов вышел из строя.
Помимо соединения с выделенными линиями, каждый PSN ARPANET имеет до 22 портов, соединяющих его с компьютерами пользователей, называемых хостами(host). Первоначально все компьютеры, которым требовался доступ к ARPANETу, присоединялись напрямую к одному из портов PSN. Обычно прямые соединения осуществлялись с помощью специальной интерфейсной платы, которую соединяли с шиной ввода-вывода компьютера и присоединяли к порту хоста в PSN. При правильном программировании этот интерфейс позволял компьютеру контактировать с PSN для посылки и приема пакетов.
Старое оборудование порта PSN использовало сложный протокол для передачи данных по ARPANET. Известный как 1822, по номеру технического отчета, в котором он был описан, этот протокол выжил и все еще используется в портах PSN в MILNET. В общем, 1822 позволяет хосту послать пакет по ARPANET к указанному PSN и к указанному порту этого PSN. Процесс передачи является довольно сложным, так как 1822 предоставляет надежную доставку с управлением потоком. Чтобы предотвратить перегрузку сети каким-либо хостом, 1822 ограничивает число одновременно передаваемых пакетов. Чтобы гарантировать, что каждый пакет достигает получателя, 1822 заставляет отправителя ждать сигнала ГОТОВ К СЛЕДУЮЩЕМУ СООБЩЕНИЮ(RFNM) от PSN перед передачей каждого пакета. RFNM выступает здесь в качестве подтверждения. Он включает схему резервирования буферов, которая требует от отправителя резервирования буфера в PSN получателя перед посылкой пакета.
Хотя есть многие части 1822, которые мы здесь не рассматриваем, главным, что нужно понимать, является тот факт, что по существу ARPANET – это просто механизм передачи. Когда компьютер, присоединенный к одному порту, посылает пакет другому порту, доставляются только те данные, которые были переданы. Так как ARPANET не доставляет сетевого заголовка, пакет, передаваемый по ней, не имеет специального поля для указания типа пакета. Поэтому, в отличие от других сетевых технологий, ARPANET не доставляет самоидентифицирующиеся пакеты. В результате получается, что:
ARPANET не понимает содержимое пакетов, которые передаются по ней; согласование форматов и содержимого пакетов происходит между машинами, присоединенными к ARPANET, при их передаче или получении на конкретных портах PSN.
К сожалению, 1822 так и не стал промышленным стандартом. Так как лишь несколько производителей делали интерфейсные платы для 1822, стало трудно присоединять новые машины к ARPANET. Чтобы решить эту проблему, DARPA разработало новый интерфейс PSN, который использует международный стандарт передачи данных, известный как X.25(он был так назван по имени комитета по стандартизации, разработавшего его). Первая версия реализации PSN с X.25 использовала только часть передачи данных стандарта X.25(известную как HDLC/LAPB), но более поздние версии использовали весь X.25 при соединении с PSN(т.е. ARPANET стал выглядеть как сеть X.25). Многие порты MILNET теперь используют X.25.
Внутри, естественно, ARPANET использовала свой собственный набор протоколов, которые невидимы пользователям. Например, существовал один специальный протокол, который позволял PSN запрашивать состояние других PSN, другой протокол, который PSN использовали для посылки пакетов между собой, и еще один протокол, позволявший PSN обмениваться информацией о состоянии каналов и оптимальных маршрутах.
Так как ARPANET изначально был создан как автономная, независимая сеть, используемая для исследований, ее протоколы и структура адресов были разработаны без учета возможных расширений. В середине 1970х стало ясно, что одна сеть не в состоянии решить все коммуникационные проблемы, и DARPA начало исследовать сетевые технологии, использующие спутники и пакетные радиосети. Опыт, полученный при работе со всеми этими сетевыми технологиями, лёг в основу концепции межсетевого обмена.
На сегодняшний день ARPANET тихо исчез и был заменен новыми технологиями. MILNET продолжает оставаться магистральной сетью военной части объединенного Интернета. Центр Управления MILNET, находящийся возле Вашингтона, следит за траффиком 24 часа в сутки, обнаруживает поломки в оборудовании и линиях связи и координирует установку нового программного обеспечения на PSN. DARPA принимает участие в FNC для финансирования разработок и экспериментов, которые помогут в создании Национальной Исследовательской и Образовательной Сети. План создания NREN включает создание финансируемого DARPA Оборонного Исследовательского Интернета(DRI) и обещание предоставить часть из вновь созданной пропускной способности исследователям из Национального Центра Сетевых Экспериментов(testbed) – NNT.
2.6.1 Адресация ARPANET

Хотя детали адресации ARPANET и не важны, они иллюстрируют, как формируются адреса в глобальных сетях. В отличие от локальных сетей, таких как Ethernet или proNET-10, глобальные сети обычно вставляют в адрес информацию, помогающую сети эффективно пересылать пакеты к получателю. В ARPANET каждому коммутатору пакетов назначено уникальное число, P, а каждому порту ЭВМ на этом коммутаторе – число от 0 до N-1. Поэтому адрес назначения состоит из пары целых чисел, (P,N). На практике оборудование использует одно большое целое число, часть бит которого используется для представления N, а оставшиеся – для P.
2.7 Сети Национального Научного Фонда(NSF)

Понимая, что взаимодействие вскоре будет необходимой частью научных исследований, Национальный Научный Фонд создал Отдел Сетевых и Коммуникационных Исследований и Инфраструктуры, чтобы быть уверенным, что все необходимое для сетевого взаимодействия будет доступно ученым и инженерам США. Хотя этот отдел финансирует фундаментальные исследования в области сетей, его основной задачей является финансирование тех исследований, которые помогают расширять Интернет.
Расширения Интернета NSFом образуют трехуровневую иерархию, состоящую из новой национальной магистральной сети, группы сетей " среднего уровня" (или региональных), каждая из которых занимает определенный географический район, и группы сетей "университетских городков"(campus), или сетей доступа. В модели NSF сети среднего уровня присоединяются к магистральной сети, а сети университетских городков присоединяются к сетям среднего уровня. Исследователи соединяют свои компьютеры с сетью университетского городка. Они могут использовать это соединение для взаимодействия с компьютерами местных исследователей, подключенными к местной сети доступа, и они могут взаимодействовать с исследователями, находящимися дальше, так как их машина может отправить данные по местной локальной сети, сети среднего уровня и магистральной сети туда, куда ей нужно.
2.7.1 Старая магистральная сеть NSFNET

Из всех сетей, финансируемых NSF, магистральная сеть NSFNET имеет самую интересную историю и использует самую интересную технологию. Эта магистральная сеть в процессе своего развития прошла через три этапа; она увеличивалась в размерах и пропускной способности в то время, когда ARPANET приходила в упадок, пока наконец не стала доминирующей магистральной сетью Интернета. Первая версия ее была создана быстро, как временное решение. Одной из главных причин создания этой магистральной сети явилась необходимость обеспечения доступа ученым к суперкомпьютерам NSF. В результате первая сеть состояла из шести микрокомпьютеров LSI-11 фирмы DEC(их аналогами являются советские машины серии Электроника-60 и -85), размещенные в существующих суперкомпьютерных центрах NSF. Географически эта сеть занимала континентальную часть США от Принстона, штат Нью-Джерси, до Сан-Диего, штат Калифорния, и использовала выделенные линии со скоростью 56 Кбит/с.
В каждом месте на микрокомпьютере LSI-11 работало программное обеспечение, эффектно названное "летящий мячик" (точное происхождение этого термина выяснить не удалось). Разработанный Дейвом Миллзом, каждый "летящий мячик" взаимодействовал с компьютерами местного суперкомпьютерного центра, используя обычный интерфейс Ethernet. Он работал с выделенными линиями, связывающими его с "летящими мячиками" других суперкомпьютерных центров, используя контроллеры последовательных линий, которые применяли протоколы канального уровня производителя. "Летящие мячики" хранили таблицы адресов возможных получателей и использовали эти таблицы для направления каждого приходящего пакета к его получателю.
Основное место соединения между первоначальной магистральной сетью NSF и оставшейся частью Интернета находилось в университете Карнеги-Меллона, где имелся как узел сети NSFNET, так и PSN ARPANET. Когда пользователь, присоединенный к NSFNETу, посылал траффик в какое-либо место ARPANETа, его пакеты передавались по NSFNET в университет Карнеги-Меллона(CMU), где "летящий мячик" направлял их в ARPANET через местный Ethernet. Аналогично "летящий мячик" понимал, что пакеты, имеющие получателя в NSFNET, нужно принимать из Ethernetа и посылать по магистральной сети NSF в соответствующее место.
2.7.2 Вторая магистральная сеть NSFNET в 1988-1989 годах

Хотя пользователи были возбуждены возможностями компьютерного взаимодействия, пропускная способность первоначальной магистральной сети была слишком мала, чтобы обеспечить требуемый сервис. Спустя несколько месяцев после своего создания сеть оказалась перегруженной и ее создатель работал над быстрым решением навалившихся проблем, пока NSF не начала энергично разрабатывать вторую магистральную сеть.
В 1987 году NSF объявил, что ждет предложений от групп, которые хотели бы создать новую, более скоростную магистральную сеть. Предложения появились в августе 1987 и были оценены в конце этого года. 24 ноября 1987 года NSF заявил, что он выбрал предложение, представленное группой, в состав которой вошли MERIT Inc., компьютерная сеть штата, работающая в университете Мичигана в Ann Arbor, корпорация IBM, и MCI Incorporated. Эти партнеры предложили создать вторую магистральную сеть , разместить центр управления сетью в Ann Arbor и ввести эту сеть в строй к следующему лету. Так как NSF финансировал создание нескольких новых сетей среднего уровня, планировалось, что новая магистральная сеть будет обслуживать большее число узлов , чем старая. Каждая дополнительный узел должен был обеспечивать соединение между новой магистральной сетью и одной из сетей среднего уровня NSF.
Разделение труда между тремя партнерами складывалось приблизительно следующим образом: MERIT отвечал за планирование, установку и работу сетевого центра; IBM помогала машинами и людскими ресурсами из своих исследовательских лабораторий, чтобы помочь MERIT разработать, сконфигурировать и протестировать требуемое оборудование и программное обеспечение.; MCI, поставщик услуг по связи на дальние расстояния, обеспечивала коммуникационные ресурсы, используя уже имеющийся оптоволоконный кабель своей телефонной сети. Конечно, на самом деле существовало тесное сотрудничество между всеми компаниями, включавшее совместные исследовательские проекты и участие представителей IBM и MCI при разработке проекта.
К середине лета 1988 года оборудование было установлено и NSFNET начал использовать вторую магистральную сеть. Вскоре после этого первая магистральная сеть прекратила свою работу и была отсоединена.
Технология, выбранная для второй магистральной сети NSFNET, была довольно интересной. По существу магистральная сеть была глобальной сетью, состоящей из маршрутизаторов пакетов, соединенных между собой линиями связи. Как и в первой сети, маршрутизатор на каждом узле соединялся с локальным Ethernetом, а также с каналами связи, ведущими к другим узлам.
Вместо использования "летящих мячиков" или коммерческих маршрутизаторов новая магистральная сеть использовала специальные маршрутизаторы, созданные на основе нескольких обычных компьютеров, помещенных в одну большую комнату и соединенных между собой так, как показано на рисунке 2.11. То, что получилось, было названо узловой коммутационной системой(NSS). Функции NSS были аналогичны тому, что делал обычный маршрутизатор.
Узловая коммутационная система
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
| |
| |
| ——- |
| | RCP | |
| соединение с ——- |
| локальной сетью узла | |
| ——- ___________|_________________ ——- |
|<—-|E-PSP|—–| межпроцессорное |——-| AP | | | | взаимодействие | | | |___________________________|—— | | | | | | | | | |PSP 1| |PSP 2| |PSP n| | | | | | | | | |- | |- | | | выделенные каналы связи к другим узлам
Рисунок 2.11 Узловая Коммутационная Система(NSS), состоящая из нескольких процессоров, соединенных механизмом межпроцессорного взаимодействия.
Как показывает рисунок 2.11, NSS состоит из центрального механизма межпроцессорного взаимодействия и трех типов процессоров: Процессоров Коммутации Пакетов(PSP), Процессора Управления и Маршрутизации(RCP), и Процессора Приложений(AP). В первой реализации центральный механизм межпроцессорного взаимодействия был обычной локальной сетью(сетью IBM Token Ring), а процессорами были IBM RT-PC.
Концептуально каждый Процессор Коммутации Пакетов в NSS управляет одной из выделенных линий, ведущих от NSS к другому узлу. Физически выделенная линия соединяется с интерфейсом ввода-вывода на шине PSP. PSP выполняет две задачи: он принимает пакеты, которые приходят по сети межпроцессорного взаимодействия и передает их по своей выделенной линии, а также принимает пакеты, которые приходят по его выделенной линии и направляет их по сети межпроцессорного взаимодействия к выходящей линии(т.е. процессор управляет линией, по которой их нужно посылать). Так как Процессоры Коммутации Пакетов работают одновременно, NSS может маршрутизировать пакеты параллельно. NSS в целом можно считать мультипроцессорной системой, которая использует свои каналы межпроцессорного взаимодействия как шину.
Хотя NSS и имела возможность параллельной работы, самым важным была эффективность. Первоначальные выделенные линии работали со скоростью 448 Кбит/с, но конечной целью была работа Процессоров Коммутации Пакетов с линиями, работающими со скоростями от DS-1(1.544 Мбит/с) до DS-3(45 Мбит/с). При таких скоростях процессор имел лишь небольшой промежуток времени для выполнения вычислений над одним пакетом. Поэтому, чтобы эффективно принимать решения о маршруте пакета, PSP использовал обращение к таблице, аналогичное тому, которое описано в более поздних главах этой книги. Чтобы еще больше снизить вычислительную нагрузку, каждый NSS содержал дополнительные Процессоры Маршрутизации и Управления, которые использовались для вычисления новых таблиц маршрутизации, а также других управляющих функций NSS. Процессоры приложений выполняют другие задачи, такие как слежение за работой сети.
2.7.3 Магистральная сеть NSFNET в 1989-1990 годах

После проведения измерений траффика во второй магистральной сети NSFNET в течение года, управляющий центр переконфигурировал сеть, добавил некоторые каналы и удалив другие. Помимо этого, он увеличил скорость каналов до DS-1(1.544 Мбит/с).
2.7.4 Мультиплексирование и программируемые соединения

В то время как точная топология NSFNET несущественна, технология, используемая ею, представляет большой интерес. Как часть своего проекта, MERIT, IBM и MCI обещали исследовать новые способы как сделать сеть переконфигурируемой. Предлагаемый ими план является более интересным, чем другие сетевые планы, так как он предполагал участие в его реализации MCI, производителя, который предоставлял средства связи на большие расстояния.
Чтобы понять возможности реконфигурации, рассмотрим, что обычно происходит, когда заказчик обращается к производителю средств дальней связи, чтобы тот выделил ему цифровой канал связи. Хотя заказчик может думать, что провод соединяет напрямую нужные ему два места, производитель выбирает путь для этого канала, который использовал бы уже имеющиеся кабели. Например, производитель может соединить заказчика через локальную станцию, оттуда через ближайший большой город, где производитель имеет магистральные линии связи, по магистральным линиям до другого большого города вблизи получателя, и наконец через локальную станцию с нужным ему местом. Более того, при современной технологии производитель предоставляет отдельный физический канал. На самом деле электронное оборудование на одном конце магистрального оптоволоконного кабеля мультиплексирует (объединяет) несколько каналов в этом оптоволоконном кабеле, а оборудование на другом конце демультиплексирует (разделяет) их, делая возможным для производителя добавление или переконфигурацию каналов с помощью электронной аппаратуры. Поэтому каналы магистральной сети NSFNET мультиплексировались в уже имеющемся оптоволоконном кабеле, принадлежащем MCI.
Предложение MERIT/IBM/MCI привело к возникновению интересного вопроса: "Если бы пользователи имели возможность переконфигурировать каналы с помощью электронной аппаратуры, то как бы они улучшили при этом работу сети?" Одним из путей является следующий. Владелец сети может следить за сетевым траффиком в течение долгого времени, а затем переконфигурировать каналы, чтобы обеспечить прямой путь между парами узлов, генерирующих наибольший траффик. Помимо добавления каналов, которые нужны, динамическая реконфигурация может позволить пользователю сэкономить деньги, освободив его платы за прямые пути между парами узлов с маленьким траффиком. Конечно, нельзя переконфигурировать базовые каналы, не перевычислив путей для коммутации пакетов.
Если бы пользователи имели доступ к тем же самым средствам переконфигурации, что и производители, они могли бы не только удалять и создавать каналы, а сделать гораздо больше. Они могли бы настроить пропускные способности каналов так, как им это надо. Такая настройка может оказаться важной, так как она может сэкономить достаточно много денег на неиспользуемой пропускной способности, чтобы платить за дополнительную пропускную способность, когда она нужна. Рассмотрим, например, NSFNET. В 8 утра на восточном берегу пользователи приходят на работу и начинают генерировать траффик, поэтому требуется большая пропускная способность для каналов, соединенных с машинами, находящимися на востоке. Тем временем, на западном берегу большинство пользователей еще спит, поэтому для каналов, соединенных с машинами на западном берегу, требуется меньшая пропускная способность. По мере того, как начинается день, пропускной способности следует постепенно смещаться к каналам западного берега. Поздним вечером, когда пользователи уходят из своих офисов на востоке, каналам западного берега требуется наибольшая пропускная способность.
С точки зрения производителя, предоставление пользователям возможности менять пропускную способность канала означает, что пользователи платят за фиксированную пропускную способность базовой физической сети, но они тем не менее могут выделить себе требуемую часть этой пропускной способности. Рисунок 2.14 иллюстрирует эту идею.
Как показывает рисунок 2.14, пользователь, который платит за пропускную способность Т в базовой физической сети, может выбрать, как разделить эту пропускную способность между нескольких каналов. Конечно, при конфигурации пропускной способности отдельных каналов пользователь должен быть уверен, что в любой точке физического кабеля суммарная величина пропускной способности не превышает Т. Главным недостатком такой схемы является то, что для того чтобы сделать корректное распределение пропускной способности, пользователь должен знать как топологию физической сети, так и пути в этой сети, назначенные его каналам.
Пропускная способность Т, выделенная в физической сети
————————————————————-
—————————————
| ————— ————– |
| | | | | |
—— | | ———– | | ———- | | ———-
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
============ ============ ============
| Узел 1 | | Узел 2 | | Узел 3 |
| | | | | |
| | | | | |
============ ============ ============
| | | | | |
C A A B B C
Рисунок 2.14 Три канала(A, B и C), которые могут быть переконфигурированы, пока они используют пропускную способность, меньшую чем Т, в любой точке магистральной сети. Например, каждый канал может иметь пропускную способность Т/2 или, если A и B имеют пропускные способности Т/3, то C может иметь – 2*Т/3.
2.7.5 Сети среднего уровня NSFNET

NSF финансировал большое число сетей среднего уровня, которые были расположены почти в каждом штате. Типичная сеть среднего уровня включает от 10 до 30 университетов и корпораций, находящихся в данной географической области. Первоначальной целью NSF было покрыть издержки, а затем поддерживать самодостаточность, позволив каждой сети среднего уровня работать в условиях финансовой и административной автономии. Хотя некоторые сети среднего уровня добились финансовой независимости, другие обнаружили, что это довольно трудно сделать. Управляющие сетей среднего уровня образовали Федерацию Академических Исследовательских сетей(FARNET) для координации технических работ и лоббировать дополнительную правительственную поддержку.
Каждая сеть среднего уровня может выбрать технологию, которую она считает наилучшей; NSF обеспечивает доступ сети среднего уровня к остальному Интернету через магистральную сеть NSFNET. Большинство сетей среднего уровня используют выделенные линии точка-точка для соединения своих узлов, похожие на то, с помощью которого они соединяются с магистральной сетью NSFNET; почти все планируют со временем перейти на более скоростные линии.
2.7.6 Сети доступа NSFNET

Семейство сетей среднего уровня NSF включает пеструю коллекцию сетей доступа. Некоторые из них финансируются как экспериментальные сети, использующие новые технологии( например, спутниковый мост), в то время как другие финансируются, чтобы обеспечить доступ к суперкомпьютерам конкретной исследовательской группе. Во второй категории каждый суперкомпьютерный центр включает консорциум исследовательских групп, которые соединяются с ним по выделенным каналам. Этот консорциум иногда включает узлы, находящиеся на большом расстоянии друг от друга, что делает эти так называемые сети консорциумов достаточно широкими.
2.7.7 Сети университетских городков NSFNET

Третий ярус семейства сетей состоит из сетей университетских городков, которые присоединяются к сетям среднего уровня. NSF решило сконцентрировать выделяемые ею средства на магистральной сети и сетях среднего уровня, дав университетам и корпорациям свободу выбора в вопросе сетевой стратегии. Большинство исследовательских институтов уже имеют сеть в каждом городке; более маленькие корпорации и школы только начинают рассматривать такую возможность. Используемые технологии варьируются от простых локальных сетей до сложных сетевых связей с магистральными сетями, работающих с гигабитными скоростями.
2.8 Другие технологии, над которыми использовался TCP/IP

Одна из причин силы TCP/IP заключена в разнообразии физических сетевых технологий, над которыми он может использоваться. Мы уже рассмотрели несколько широко используемых технологий, включая локальные и глобальные сети. Эта секция кратко рассмотрит другие, которые помогут проиллюстрировать важный принцип:
Большая часть успеха протоколов TCP/IP объясняется их способностью согласования почти с любой из базовых коммуникационных технологий.
2.8.1 X25NET

CSNET(CSNET и BITNET слились; новая организация – CREN), организация образованная в 1980 для поддержки Интернета в промышленных и малых школах, использовала технологию X25NET для соединения некоторых пользователей с Интернетом. Первоначально разработанная в университете Пурдью, X25NET позволяла протоколам Интернета работать в Общественных Сетях Данных(PDN). Такой подход должен был позволить организациям, для которых было неприемлемо прямое соединение с ARPANET, заказывать сетевое соединение у фирмы-поставщика средств дальней связи(например, AT&T) и использовать его для передачи траффика Интернета.
Читатели, которые знают об общественных сетях с коммутацией пакетов, могут найти X25NET странной, так как такие сети используют только протоколы МККТТ Х.25, в то время как Интернет использует протоколы TCP/IP. Тем не менее, когда она используется для транспортировки траффика TCP/IP, сеть Х.25 просто обеспечивает путь, по которому может быть передан траффик Интернета. Мы уже установили, что многие базовые технологии могут использоваться для передачи траффика Интернета. Эта технология, иногда называемая туннельная передача(tunneling), просто означает, что сложная сеть со своими собственными протоколами рассматривается как еще одна аппаратная система доставки пакетов. Чтобы послать траффик TCP/IP по туннелю Х.25, надо установить соединение Х.25, а затем послать пакеты TCP/IP, как будто это данные. Система Х.25 передаст пакеты по соединению и доставит их в другую точку Х.25, где они должны быть собраны и отправлены к своему истинному назначению. Так как туннелирование рассматривает пакеты как данные, оно не обеспечивает самоидентифицирующиеся кадры. Поэтому, оно работает только в том случае, когда оба конца соединения Х.25 заранее договорились о том, что они будут передавать пакеты Х.25.
Что делает Х.25 особенным, так это его интерфейс. В отличие от большинства сетевого оборудования протоколы Х.25 обеспечивают надежный поток передаваемых данных, иногда называемый виртуальным каналом, между отправителем и получателем, в то время как протоколы Интернета предназначены для системы доставки пакетов, что делает их несовместимыми.
Представление о соединениях Х.25, как о путях доставки, приводит к интересному приему. Оказывается, что сети Х.25 показывают гораздо лучшую пропускную способность при нескольких одновременно открытых соединениях. Поэтому, вместо открытия одного соединения с данным местом доставки, отправитель Х25NET часто открывает несколько соединений и распределяет пакеты между ними для улучшения производительности. Получатель принимает пакеты со всех соединений Х.25 и снова объединяет их вместе.
Схема адресации, используемая сетями Х.25, определена в стандарте, известном как Х.121. Каждый из физических адресов Х.121 является числом из 14 цифр, в котором 10 цифр назначаются производителем, который обеспечивает средство сети Х.25. Напоминая телефонные номера, одна из популярных схем назначения номеров производителями включает код области, основанный на географическом положении. Такой подход не удивителен, так как он был предложен организацией, определяющей международные телефонные стандарты. К сожалению, эта схема неудобна, так как затрудняет назначение Интернетовских адресов. Пользователи, использующие X25NET, должны хранить таблицу отображения Интернетовского адреса в адрес Х.25 и обратно. Глава 6 рассматривает проблему отображения адресов более детально и дает альтернативу использованию фиксированных таблиц.
Так как общественные сети Х.25 работают независимо от Интернета, должно существовать место соединения между ними. Как DARPA, так и CSNET используют специально выделенные машины для обеспечения соединения между Х.25 и ARPANET. Основное соединение известно как VAN-шлюз. Этот шлюз поддерживает соединения Х.25 и маршрутизирует приходящий траффик Интернета к его получателям. X25NET является важной, так как она иллюстрирует гибкость и адаптируемость протоколов TCP/IP. В частности, она показывает, как туннельная передача делает возможным использование очень широкого диапазона сложных сетевых технологий в межсетевой среде.
2.8.2 Cypress

Большинство сетевых технологий, которые мы рассмотрели, достаточно дороги. Но в число тех, кому нужен доступ к Интернету, входят не только большие институты, напрямую соединенные с главными магистральными сетями, такими как NSFNET; доступ к нему нужен также маленьким школам и просто отдельным людям. Маленькие институты не могут позволить себе высокоскоростные выделенные линии, или оборудование, соединяющее с ними. Cypress предназначен для удовлетворения потребности в доступе с помощью дешевой низкоскоростной технологии TCP/IP.
Cypress состоит из миникомпьютеров, соединенных низко- или среднескоростными выделенными линиями(от 9.6 Кбит/с до 56 Кбит/с). Каждый миникомпьютер размещается в пользовательском узле, где он соединен с локальной вычислительной средой с помощью ЛВС Ethernet. С остальной частью Cypress он соединяется по выделенным последовательным линиям. Как минимум один узел в сети Cypress соединен с Интернетом и передает траффик между сетью Cypress и остальной частью Интернета.
Первоначально Cypress разрабатывался для топологии типа "виноградная кисть", в которой каждый новый узел соединялся последовательной линией с ближайшим к нему узлом. Преимуществом использования такой топологии была ее дешевизна; недостатком была большая величина паузы при передаче, становящаяся значительной для траффика, который передавался через несколько промежуточных машин. Топология Cypress была изменена по двум причинам:во-первых, NSFNET значительно увеличил число потенциальных точек соединения с Интернетом, и во-вторых, большинству пользователей показалось, что лучше платить больше, но иметь меньшие паузы при передаче. Поэтому сеть Cypress приняла вид одного концентратора, размещенного в университете Пурдью, который был соединен с NSFNET.
Cypress основывался на нескольких ключевых идеях. Во-первых, для достижения дешевизны Cypress объединяет возможности, используя один компьютер для выполнения нескольких задач. Во-вторых, как и Ethernet, протоколы Cypress используют негарантированную доставку, не делая попыток исправить ошибки или восстановить потерянные пакеты на канальном уровне. Следующие главы объяснят, почему негарантированная доставка работает хорошо в среде TCP/IP. В-третьих, Cypress работает как сеть, а не как набор выделенных линий точка-точка. В-четвертых, Cypress соединен с сетями в узлах его пользователей, а не просто с машинами. Поэтому большое количество хостов в узле пользователя могут использовать соединение Cypress, рассматривая его как путь остальной части Интернета. В-пятых, Cypress позволяет своим маршрутизаторам быть управляемыми с любого узла в Интернете, так как он использует IP для передачи информации об их состоянии. Миникомпьютеры, составляющие сеть Cypress, называются имплетами(implet), и каждый имплет обеспечивает три концептуальные функции в одной машине. На самом нижнем уровне, имплет работает как маршрутизатор пакетов, принимая пакеты из последовательных линий и направляя их к их получателю, используя при этом аппаратные адреса в кадре для выбора маршрута. На следующем уровне, имплет соединяет две сети, локальный Ethernet в узле пользователя и сеть Cypress. На самом высоком уровне имплет является компьютером общего назначения, который выполняет программы управления сетью и слежения за ней как пользовательские процессы.
Помимо своего технического вклада в сетевые технологии, Cypress демонстрирует три важных идеи. Во-первых, он иллюстрирует, почему сетевую скорость нужно рассматривать как меру пропускной способности. Узлы с небольшим траффиком воспринимают Cypress как адекватную, надежную технологию соединения между ними. В нем низкие скорости не означают ограниченных возможностей. Во-вторых, Cypress показывает, что протоколы Интернета хорошо работают в системах с негарантированной доставкой с простыми протоколами канального уровня. В-третьих, Cypress показывает, что разработка программного обеспечения для управления и слежения за сетью с использованием протоколов Интернета делает слежение гибким, а исправление отказов оборудования легким.
2.8.3 Коммутируемый(dial-up) IP

Другой интересный способ использования TCP/IP, освоенный CSNET, включает работу протоколов TCP/IP в коммутируемой телефонной сети. Узлы CSNET, использующие Интернет редко, могут быть не в состоянии платить за выделенные линии. Для этих узлов CSNET разработал систему коммутируемого IP, которая работает следующим образом: всякий раз, когда нужно соединение, программное обеспечение в узле пользователя использует модем для создания соединения с концентратором(hub) CSNET через телефонную сеть. Компьютер в концентраторе отвечает на телефонный вызов и, после получения подтверждения подлинности пользователя, передает траффик между этим узлом и другими компьютерами Интернета.
2.8.4 Пакетное радио

Один из самых интересных экспериментов DARPA в области коммутации пакетов привел к созданию технологии, которая использовала широковещание по радио для передачи пакетов. Разработанное для военных условий, в которых станции могут быть мобильными, пакетное радио включает оборудование и программное обеспечение, которое позволяет узлам находить другие узлы, устанавливать соединение точка-точка, а затем использовать это соединение для передачи пакетов. Так как узлы меняют свое географическое положение и могут выходить за границы связи, система должна постоянно контролировать связность и перевычислять пути для отражения изменений в топологии. Рабочая система пакетного радио была создана и использовалась для демонстрации соединения TCP/IP между удаленным узлом пакетного радио и другими узлами Интернета.
2.9 Итоги и выводы

Мы рассмотрели несколько технологий работы сетевого оборудования, используемых протоколами TCP/IP, которые лежат в диапазоне от высокоскоростных ЛВС, таких как Ethernet и proNET-10, до более медленных глобальных сетей, таких как ARPANET и Cypress. Мы также увидели, что протоколы TCP/IP могут работать над другими протоколами сетей общего пользования, используя технологию, названную туннельной передачей. В то время как детали конкретных сетевых технологий не важны, общая идея заключается в следующем:
Протоколы TCP/IP являются крайне гибкими в том отношении, что почти любая базовая технология может использоваться для передачи траффика TCP/IP.