Шрифт:
Закладка:
Илл. 1.24. Дальность действия одного радиопередатчика может не охватывать всей системы
Еще одна проблема связана с перемещением устройства в пространстве. Когда мобильный клиент удаляется от используемой точки доступа и попадает в зону приема другой точки доступа, нужен какой-то способ при необходимости подключить его к новой точке. Сеть 802.11 может состоять из нескольких ячеек (каждая — со своей собственной точкой доступа) и системы распределения, соединяющей эти ячейки. Система распределения часто представляет собой коммутируемый Ethernet, но в ее основе может лежать и любая другая технология. Клиенты, перемещаясь, ищут точку доступа с лучшим качеством сигнала, чем у текущей, и если находят, могут переключиться на нее. Извне вся эта система напоминает единую проводную LAN.
Тем не менее для стандарта 802.11 мобильность пока что не имеет столь важного значения, как для мобильных телефонных сетей. 802.11 обычно применяется «кочующими» клиентами, меняющими место постоянного расположения, и не используется во время движения. При подобном стиле использования мобильность не так уж необходима. Даже если 802.11 и используется в движении, то только в пределах одной сети, которая охватывает максимум одно большое здание. Чтобы добиться возможности перемещения между различными сетями и технологиями, нужны новые схемы работы. Например, стандарт 802.21, обеспечивающий возможность передачи обслуживания между проводными и беспроводными сетями.
Наконец, остается проблема безопасности. В силу широковещательного характера беспроводной передачи данных ближайшие компьютеры могут с легкостью получать не предназначенные для них пакеты. Чтобы этого избежать, стандарт 802.11 содержит схему шифрования, известную под названием WEP (Wired Equivalent Privacy). Ее цель — добиться безопасности беспроводной сети на уровне проводной. Идея неплохая, но, к сожалению, схема оказалась несовершенной и вскоре была взломана (Борисов и др.; Borisov et al., 2001). Позднее появились новые схемы шифрования с другими криптографическими особенностями, зафиксированные в стандарте 802.11i. Изначально он носил название WPA (Wi-Fi Protected Access — защищенный доступ к Wi-Fi), сейчас используется версия WPA2 и еще более хитроумные протоколы, например 802.1X. Он обеспечивает аутентификацию точек доступа клиентами, а также множество различных способов аутентификации самого клиента точкой доступа.
Стандарт 802.11 произвел революцию в беспроводных сетях, и она продолжается до сих пор. Он широко применяется не только в зданиях, но и в поездах, самолетах, кораблях и автомобилях. Теперь люди могут пользоваться интернетом в дороге, куда и на чем бы они ни ехали. С помощью 802.11 информацией обмениваются и мобильные телефоны, и самые различные виды бытовых электроприборов, начиная от игровых консолей до цифровых видеокамер. К тому же 802.11 постепенно сливается с другими типами мобильных технологий; яркий тому пример — LTE-Unlicensed (LTE-U — LTE на нелицензируемых частотах). Он представляет собой адаптацию сетевой сотовой технологии 4G LTE для работы с нелицензируемым диапазоном частот, в качестве альтернативы принадлежащим ISP точкам доступа Wi-Fi. Мы вернемся ко всем этим мобильным и сотовым сетевым технологиям в главе 4.
6 Калифорния находится на Западном побережье. — Примеч. пер.
7 На момент выхода книги. — Примеч. ред.
8 Или «операторами верхнего уровня». — Примеч. пер.
1.5. Сетевые протоколы
Мы начнем этот раздел с обсуждения целей разработки сетевых протоколов, затем изучим основную концепцию, применяемую при их создании, — разделение на уровни. Далее мы сравним службы, ориентированные на установление соединения, и службы без установления соединений, а также поговорим о примитивах служб, необходимых для их работы.
1.5.1. Цели проектирования
У разных сетевых протоколов зачастую схожие цели проектирования: надежность (способность восстанавливаться после ошибок, сбоев или отказов); распределение ресурсов (совместное использование общего ограниченного ресурса); способность к развитию (поэтапное развертывание усовершенствованных версий протокола с течением времени); безопасность (защита сети от различных типов атак). Рассмотрим в общих чертах все эти цели.
Надежность
Некоторые ключевые задачи проектирования компьютерных сетей повторяются на разных уровнях. Ниже вкратце представлены наиболее важные.
Надежность — это свойство сети, работающей должным образом, даже если составляющие ее компоненты ненадежны. Представьте себе биты передаваемого по сети пакета. Вполне вероятно, что часть этих битов будет получена приемником в искаженном (инвертированном) виде вследствие скачка электричества, случайных беспроводных сигналов, изъянов в аппаратном обеспечении, ошибок программного обеспечения и т.д. Как же найти и исправить эти ошибки?
Один из механизмов поиска ошибок в полученной информации — использование кодов обнаружения ошибок (error detection). Полученная в искаженном виде информация отправляется заново до тех пор, пока не будет принята в правильном виде. Существуют также более мощные коды исправления ошибок (error correction). С их помощью правильное сообщение восстанавливается на основе полученных (возможно, неправильных) битов информации. Оба этих механизма основаны на добавлении избыточной информации в сообщение. Они применяются на низших уровнях (для защиты отправляемых по отдельным каналам пакетов) и на высших уровнях (для проверки корректности полученного содержимого).
Еще одна задача в обеспечении надежности — поиск работоспособного пути передачи данных по сети. Зачастую между источником и приемником существует несколько путей, а в большой сети некоторые каналы или маршрутизаторы могут не работать. К примеру, сеть в Берлине вышла из строя. Пакеты, отправленные из Лондона в Рим через Берлин, не пройдут, но вместо этого можно отправить пакеты из Лондона в Рим через Париж. Сеть должна принимать подобные решения автоматически. Это называется маршрутизацией (routing).
Распределение ресурсов
Вторая задача проектирования сетей — распределение ресурсов. С увеличением размеров сетей возникают новые проблемы. В крупных городах нередки транспортные пробки, нехватка телефонных номеров, а еще в них можно легко потеряться. Мало кто сталкивается с этими проблемами в родном дворе, но в масштабах всего города они могут оказаться очень серьезными. Архитектуры, сохраняющие должную работоспособность сети при ее росте, называются масштабируемыми (scalable). Сети предоставляют хостам услуги на основе имеющихся ресурсов, например пропускной способности линий передачи. Чтобы один хост не слишком мешал другому, необходимы механизмы разделения ресурсов.
Часто пропускная полоса сети делится между хостами динамически, в соответствии с их потребностями. Это делается вместо того, чтобы выделять каждому хосту фиксированную часть полосы, которую он может и не использовать. Подобная архитектура называется статистическим мультиплексированием (statistical multiplexing) — ресурсы распределяются в соответствии со статистикой запросов на них. Она может применяться на низших уровнях для отдельных соединений, на высших уровнях для сети или даже для использующих