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 показывает, что разработка программного обеспечения для управления и слежения за сетью с использованием протоколов Интернета делает слежение гибким, а исправление отказов оборудования легким.