Беспроводные сети - как это работает

Василий Леонов, 

Обзор протоколов и технологий беспроводной передачи данных.

Повсеместное распространение беспроводных сетей, развитие инфраструктуры хот-спотов, появление мобильных технологий со встроенным беспроводным решением (Intel Centrino) привело к тому, что конечные пользователи (не говоря уже о корпоративных клиентах) стали обращать все большее внимание на беспроводные решения. Такие решения рассматриваются, прежде всего, как средство развертывания мобильных и стационарных беспроводных локальных сетей и средство оперативного доступа в Интернет. Однако конечный пользователь, не являющийся сетевым администратором, как правило, не слишком хорошо разбирается в сетевых технологиях, поэтому ему трудно сделать выбор при покупке беспроводного решения, особенно учитывая многообразие предлагаемых сегодня продуктов. Бурное развитие технологии беспроводной связи привело к тому, что пользователи, не успев привыкнуть к одному стандарту, вынуждены переходить на другой, предлагающий еще более высокие скорости передачи. Речь, конечно же, идет о семействе протоколов беспроводной связи, известном как IEEE 802.11, куда входят следующие протоколы: 802.11, 802.11b, 802.11b+, 802.11a, 802.11g. В последнее время стали говорить и о расширении протокола 802.11g.

Различные типы беспроводных сетей отличаются друг от друга и радиусом действия, и поддерживаемыми скоростями соединения, и технологией кодирования данных. Так, стандарт IEEE 802.11b предусматривает максимальную скорость соединения 11 Мбит/с, стандарт IEEE 802.11b+ - 22 Мбит/с, стандарты IEEE 802.11g и 802.11a - 54 Мбит/с.

Будущее стандарта 802.11a довольно туманно. Наверняка в России и в Европе этот стандарт не получит широкого распространения, да и в США, где он сейчас используется, скорее всего, в ближайшее время произойдет переход на альтернативные стандарты. А вот новый стандарт 802.11g имеет значительные шансы завоевать признание во всем мире. Другое преимущество нового стандарта 802.11g заключается в том, что он полностью совместим со стандартами 802.11b и 802.11b+, то есть любое устройство, поддерживающее стандарт 802.11g, будет работать (правда, на меньших скоростях соединения) и в сетях стандарта 802.11b/b+, а устройство, поддерживающее стандарт 802.11b/b+ — в сетях стандарта 802.11g, хотя и с меньшей скоростью соединения.

Совместимость стандартов 802.11g и 802.11b/b+ обусловлена, во-первых, тем, что они предполагают использование одного и того же частотного диапазона, а во-вторых, что все режимы, предусмотренные в протоколах 802.11b/b+, реализованы и в стандарте 802.11g. Поэтому стандарт 802.11b/b+ можно рассматривать как подмножество стандарта 802.11g.

Физический уровень протокола 802.11

Обзор протоколов семейства 802.11b/g целесообразно начат именно с протокола 802.11, который, хотя уже и не встречается в чистом виде, в то же время является прародителем всех остальных протоколов. В стандарте 802.11, как и во всех остальных стандартах данного семейства, предусмотрено использование частотного диапазона от 2400 до 2483,5 МГц, то есть частотный диапазон шириной 83,5 МГц, который, как будет показано далее, разбит на несколько частотных подканалов.

Технология уширения спектра

В основе всех беспроводных протоколов семейства 802.11 лежит технология уширения спектра (Spread Spectrum, SS). Данная технология подразумевает, что первоначально узкополосный (в смысле ширины спектра) полезный информационный сигнал при передаче преобразуется таким образом, что его спектр оказывается значительно шире спектра первоначального сигнала. То есть спектр сигнала как бы «размазывается» по частотному диапазону. Одновременно с уширением спектра сигнала происходит и перераспределение спектральной энергетической плотности сигнала — энергия сигнала также «размазывается» по спектру. В результате максимальная мощность преобразованного сигнала оказывается значительно ниже мощности исходного сигнала. При этом уровень полезного информационного сигнала может в буквальном смысле сравниваться с уровнем естественного шума. В результате сигнал становится в каком то смысле «невидимым» — он просто теряется на уровне естественного шума.

Собственно, именно в изменении спектральной энергетической плотности сигнала и заключается идея уширения спектра. Дело в том, что если подходить к проблеме передачи данных традиционным способом, то есть так, как это делается в радиоэфире, где каждой радиостанции отводится свой диапазон вещания, то мы неизбежно столкнемся с проблемой, что в ограниченном радиодиапазоне, предназначенном для совместного использования, невозможно «уместить» всех желающих. Поэтому необходимо найти такой способ передачи информации, при котором пользователи могли бы сосуществовать в одном частотном диапазоне и при этом не мешать друг другу. Именно эту задачу и решает технология уширения спектра.

Существует несколько различных технологий уширения спектра, однако для дальнейшего понимания протокола 802.11 нам необходимо детально познакомиться лишь с технологией уширения спектра методом прямой последовательности (Direct Sequence Spread Spectrum, DSSS).

Технология DSSS

При потенциальном кодировании информационные биты — логические нули и единицы — передаются прямоугольными импульсами напряжений. Прямоугольный импульс длительности T имеет спектр, ширина которого обратно пропорциональна длительности импульса. Поэтому чем меньше длительность информационного бита, тем больший спектр занимает такой сигнал.

Для преднамеренного уширения спектра первоначально узкополосного сигнала в технологии DSSS в каждый передаваемый информационный бит (логический 0 или 1) в буквальном смысле встраивается последовательность так называемых чипов. Если информационные биты — логические нули или единицы — при потенциальном кодировании информации можно представить в виде последовательности прямоугольных импульсов, то каждый отдельный чип — это тоже прямоугольный импульс, но его длительность в несколько раз меньше длительности информационного бита. Последовательность чипов представляет собой последовательность прямоугольных импульсов, то есть нулей и единиц, однако эти нули и единицы не являются информационными. Поскольку длительность одного чипа в n раз меньше длительности информационного бита, то и ширина спектра преобразованного сигнала будет в n-раз больше ширины спектра первоначального сигнала. При этом и амплитуда передаваемого сигнала уменьшится в n раз.

Чиповые последовательности, встраиваемые в информационные биты, называют шумоподобными кодами (PN-последовательности), что подчеркивает то обстоятельство, что результирующий сигнал становится шумоподобным и его трудно отличить от естественного шума.

Как уширить спектр сигнала и сделать его неотличимым от естественного шума, понятно. Для этого, в принципе, можно воспользоваться произвольной (случайной) чиповой последовательностью. Однако, возникает вопрос: а как такой сигнал принимать? Ведь если он становится шумоподобным, то выделить из него полезный информационный сигнал не так то просто, если вообще возможно. Оказывается, возможно, но для этого нужно соответствующим образом подобрать чиповую последовательность. Используемые для уширения спектра сигнала чиповые последовательности должны удовлетворять определенным требованиям автокорреляции. Под термином автокорреляции в математике подразумевают степень подобия функции самой себе в различные моменты времени. Если подобрать такую чиповую последовательность, для которой функция автокорреляции будет иметь резко выраженный пик лишь для одного момента времени, то такой информационный сигнал возможно будет выделить на уровне шума. Для этого в приемнике полученный сигнал умножается на ту же чиповую последовательность, то есть вычисляется автокорреляционная функция сигнала. В результате сигнал становится опять узкополосным, поэтому его фильтруют в узкой полосе частот и любая помеха, попадающая в полосу исходного широкополосного сигнала, после умножения на чиповую последовательность, наоборот, становится широкополосной и обрезается фильтрами, а в узкую информационную полосу попадает лишь часть помехи, по мощности значительно меньшая, чем помеха, действующая на входе приемника (рис. 1).

Pic_01.gif

Рис. 1. Использование технологии уширения спектра позволяет предавать данные на уровне естественного шума.

Коды Баркера

Чиповых последовательностей, отвечающих указанным требованиям автокорреляции, существует достаточно много, но для нас особый интерес представляют так называемые коды Баркера, поскольку именно они используются в протоколе 802.11.

Коды Баркера обладают наилучшими среди известных псевдослучайных последовательностей свойствами шумоподобности, что и обусловило их широкое применение.

В протоколах семейства 802.11 используется код Баркера длиной в 11 чипов (11100010010).

Для того чтобы передать сигнал логическая единица передается прямой последовательностью Баркера, а логический нуль – инверсной последовательностью.

Скорость 1 Мбит/с

В стандарте 802.11 предусмотрено два скоростных режима: 1 и 2 Мбит/с. Для кодирования данных на физическом уровне используется метод DSSS с 11-чиповыми кодами Баркера. При информационной скорости 1 Мбит/с скорость следования отдельных чипов последовательности Баркера составляет 11×106 чип/с, а ширина спектра такого сигнала составляет 22 МГц. Учитывая, что ширина частотного диапазона составляет 83,5 МГц, получаем, что всего в данном частотном дипазоне можно уместить 3 неперекрывающихся частотных канала. Весь частотный диапазон, однако, принято делить на 11 частотных перекрывающихся каналов по 22 МГц, отстоящих друг от друга на 5 МГц. К примеру, первый канал занимает частотный диапазон от 2400 до 2423 МГц и центрирован относительно частоты 2412 МГц. Второй канал центрирован относительно частоты 2417 МГц, а последний, 11 канал, центрирован относительно частоты 2462 МГц. При таком рассмотрении первый, шестой и 11 каналы не перекрываются друг с другом и имеют 3 мегагерцовый зазор друг относительно друга. Именно эти три канала могут использоваться независимо друг от друга.

Для модуляции синусоидального несущего сигнала (процесс, необходимый для информационного наполнения несущего сигнала) используется относительная двоичная фазовая модуляция (Differential Binary Phase Shift Key, DBPSK). При этом кодирование информации происходит за счет сдвига фазы синусоидального сигнала по отношению к предыдущему состоянию сигнала. Двоичная фазовая модуляция предусматривает два возможных значения сдвига фазы — 0 и π. Тогда логический нуль может передаваться синфазным сигналом (сдвиг по фазе равен 0), а единица — сигналом, который сдвинут по фазе на π.

Скорость 2 Мбит/с

Информационная скорость 1 Мбит/с является обязательной в стандарте IEEE 802.11 (Basic Access Rate), но опционально возможна и скорость в 2 Мбит/с (Enhanced Access Rate). Для передачи данных на такой скорости используется та же технология DSSS с 11-чиповыми кодами Баркера, но для модуляции несущего колебания применяется относительная квадратурная фазовая модуляция (Differential Quadrature Phase Shiftey). При относительной квадратурной фазовой модуляции сдвиг фаз может принимать четыре различных значения: 0, π/2, π и 3π/2. Используя четыре различных состояния сигнала, можно в одном дискретном состоянии закодировать последовательность двух информационных бит (дибит) и тем самым в два раза повысить информационную скорость передачи. К примеру, дибиту 00 может соответствовать сдвиг фазы, равный 0; дибиту 01 — сдвиг фазы, равный π/2; дибиту 11 — сдвиг фазы, равный π; дибиту 10 — сдвиг фазы, равный 3π/2.

В заключение рассмотрения физического уровня протокола 802.11 отметим, что при информационной скорости 2 Мбит/с скорость следования отдельных чипов последовательности Баркера остается прежней, то есть 11×106 чип/с, а следовательно, не меняется и ширина спектра передаваемого сигнала.

Физический уровень протокола 802.11b/b+

Протокол IEEE 802.11b, принятый в июле 1999 года, является своего рода расширением базового протокола 802.11 и кроме скоростей 1 и 2 Мбит/с предусматривает скорости 5,5 и 11 Мбит/с. Для работы на скоростях 1 и 2 Мбит/с используются технология уширения спектра с использованием кодов Баркера, а для скоростей 5,5 и 11 Мбит/с используются так называемые комплементарные коды (Complementary Code Keying, CCK).

CCK-последовательности

Комплементарные коды или CCK-последовательности обладают тем свойством, что сумма их автокорреляционных функций для любого циклического сдвига, отличного от нуля, всегда равна нулю.

В стандарте IEEE 802.11b речь идет о комплексных комплементарных 8-чиповых последовательностях, определенных на множестве комплексных элементов.

Тут стоит сделать небольшое лирическое отступление, дабы не оттолкнуть читателя сложностью используемого математического аппарата. Математика комплексных чисел может вызывать массу негативных воспоминаний, ассоциируясь с чем-то уж совсем абстрактным. Но в данном случае все достаточно просто. Комплексное представление сигнала — это лишь удобный математический аппарат для представления модулированного по фазе сигнала.

Используя множество комплексных элементов {1, –1, j, –j} можно сформировать восемь одинаковых по модулю, но отличающихся по фазе комплексных чисел. То есть, элементы 8-чиповой CCK-последовательности могут принимать одно из следующих восьми значений: 1, –1, j, –j, 1+j, 1–j, –1+j, –1–j. Основное отличие CCK-последовательностей от рассмотренных ранее кодов Баркера заключается в том, что существует не строго заданная последовательность, посредством которой можно было кодировать либо логический нуль, либо единицу, а целый набор последовательностей. Учитывая, что каждый элемент 8-сиповой последовательности может принимать одно из восьми значений в зависимости от значения фазы, ясно, что можно скомбинировать 88=16777216 вариантов последовательностей, однако, не все они будут комплементарными. Но даже с учетом требования комплементарности можно сформировать достаточно большое число разных CCK-последовательностей. Это обстоятельство позволяет кодировать в одном передаваемом символе несколько информационных бит и тем самым повысить информационную скорость передачи.

Вообще говоря, использование CCK-кодов позволяет кодировать 8 бит на один символ при скорости 11 Мбит/с и 4 бит на символ при скорости 5,5 Мбит/с. При этом в обоих случаях символьная скорость передачи составляет 1,385×106 символов в секунду (11/8 = 5,5/4 = 1,385), а учитывая, что каждый символ задается 8-чиповой последовательностью, получаем, что в обоих случаях скорость следования отдельных чипов составляет 11×106 чипов в секунду. Соответственно, и ширина спектра сигнала как при скорости 11 Мбит/с и 5,5 Мбит/с составляет 22 МГц.

Рассматривая возможные скорости передачи 5,5 и 11 Мбит/с в протоколе 802.11b, мы до сих пор оставляли без внимания вопрос, зачем нужна скорость 5,5 Мбит/с, если использование CCK-последовательностей позволяет передавать данные на скорости 11 Мбит/с. Теоретически это действительно так, но только если не учитывать при этом помеховой обстановки. В реальных условиях зашумленность каналов передачи и соответственно соотношение уровней шума и сигнала может оказаться таковым, что передача на высокой информационной скорости, то есть когда в одном символе кодируется множество информационных бит, может оказаться невозможной по причине их ошибочного распознавания. Не вдаваясь в математические детали, отметим лишь, что чем выше зашумленность каналов связи, тем меньше информационная скорость передачи. При этом важно, что приемник и передатчик правильно анализировали помеховую обстановку и выбирали приемлемую скорость передачи.

Двоичное пакетное сверточное кодирование PBCC

Для дальнейшего рассмотрения протокола 802.11b/b+ нам предстоит ознакомиться с еще одним типом кодирования — так называемым двоичным пакетным сверточным кодированием (Packet Binary Convolutional Coding, PBCC).

Идея сверточного кодирования заключается в следующем. Входящая последовательность информационных бит преобразуется в специальном сверточном кодере таким образом, чтобы каждому входному биту соответствовало более одного выходного. То есть сверточный кодер добавляет определенную избыточную информацию к исходной последовательности. Если, к примеру, каждому входному биту соответствует два выходных, то говорят о сверточном кодировании со скоростью r = 1/2. Если же каждым двум входным битам соответствует три выходных, то скорость сверточного кодирования будет составлять уже 2/3.

Любой сверточный кодер строится на основе нескольких последовательно связанных запоминающих ячеек и логических элементов, связывающих эти ячейки между собой. Количество запоминающих ячеек определяет количество возможных состояний кодера. Если, к примеру, в сверточном кодере используется шесть запоминающих ячеек, то в кодере хранится информация о шести предыдущих состояниях сигнала, а с учетом значения входящего бита получим, что в таком кодере используется семь бит входной последовательности. Такой сверточный кодер называется кодером на семь состояний (K = 7).

Выходные биты, формируемые в сверточном кодере, определяются значениями входного бита и битами, хранимыми в запоминающих ячейках, то есть значение каждого формируемого выходного бита зависит не только от входящего информационного бита, но и от нескольких предыдущих битов.

В технологии PBCC используются сверточные кодеры на семь состояний (K = 7) со скоростью r=1/2. Главным достоинством сверточных кодеров является помехоустойчивость формируемой ими последовательности. Дело в том, что при избыточности кодирования даже в случае возникновения ошибок приема исходная последовательность бит может быть безошибочно восстановлена. Для восстановления исходной последовательности битов на стороне приемника применяется декодер Витерби.

Дибит, формируемый в сверточном кодере, используется в дальнейшем в качестве передаваемого символа, но предварительно этот дибит подвергается фазовой модуляции. Причем в зависимости от скорости передачи возможна двоичная, квадратурная или даже восьмипозиционная фазовая модуляция.

Метод пакетного сверточного кодирования опционально предусмотрен как альтернативный метод кодирования в протоколе 802.11b на скоростях передачи 5,5 и 11 Мбит/с. Кроме того, именно данный режим кодирования лег в основу протокола 802.11b+ — расширения протокола 802.11b. Собственно, протокола 802.11b+ как такового официально не существует, однако данное расширение поддержано многими производителями беспроводных устройств. В протоколе 802.11b+ предусматривается еще одна скорость передачи данных — 22 Мбит/с с использованием технологии PBCC.

При скорости передачи 5,5 Мбит/с для модуляции дибита, формируемого сверточным кодером, используется двоичная фазовая модуляция, а при скорости 11 Мбит/с — квадратурная фазовая модуляция. При этом для скорости 11 Мбит/с в каждом символе кодируется по одному входному биту и скорость передачи бит соответствует скорости передачи символов, а при скорости 5,5 Мбит/с скорость передачи битов равна половине скорости передачи символов (поскольку каждому входному биту в данном случае соответствует два выходных символа). Поэтому и для скорости 5,5 Мбит/с, и для скорости 11 Мбит/с символьная скорость составляет 11×106 символов в секунду.

Для скорости 22 Мбит/с по сравнению с уже рассмотренной нами схемой PBCC передача данных имеет две особенности. Прежде всего, используется фазовая 8-позиционная фазовая модуляция (8-PSK), то есть фаза сигнала может принимать восемь различных значений, что позволяет в одном символе кодировать уже 3 бита. Кроме того, в схему кроме сверточного кодера добавлен пунктурный кодер (Puncture). Смысл такого решения довольно прост: избыточность сверточного кодера, равная 2 (на каждый входной бит приходится два выходных), достаточно высока и при определенных условиях помеховой обстановки является излишней, поэтому можно уменьшить избыточность, чтобы, к примеру, каждым двум входным битам соответствовало три выходных.

Для этого можно, конечно, разработать соответствующий сверточный кодер, но лучше добавить в схему специальный пунктурный кодер, который будет просто уничтожать лишние биты.

Допустим, что пунктурный кодер удаляет один бит из каждых четырех входных битов. Тогда каждым четырем входящим битам будет соответствовать три выходящих. Скорость такого кодера составляет 4/3.

Если же такой кодер используется в паре со сверточным кодером со скоростью 1/2, то общая скорость кодирования составит уже 2/3, то есть каждым двум входным битам будет соответствовать три выходных.

Разобравшись с принципом работы пунктурного кодера, вернемся к рассмотрению кодирования PBCC на скорости 22 Мбит/с в протоколе 802.11b+.

В сверточный кодер (K = 7, R = 1/2) данные поступают со скоростью 22 Мбит/с. После добавления избыточности в сверточном кодере биты со скоростью потока 44 Мбит/с поступают в пунктурный кодер 4:3, в котором избыточность уменьшается так, чтобы на каждые четыре входных бита приходилось три выходных. Следовательно, после пунктурного кодера скорость потока составит уже 33 Мбит/с (не информационная, а общая скорость с учетом добавленных избыточных битов). Полученная в результате последовательность направляется в фазовый модулятор 8-PSK, где каждые три бита упаковываются в один символ. При этом скорость передачи составит 11×106 символов в секунду, а информационная скорость — 22 Мбит/с (рис. 2).

Pic_02.gif

Рис. 2. Реализация скорости 22 Мбит/с в протоколе 802.11g.

В заключение обсуждения протокола 802.11b/b+ приведем таблицу соответствия между скоростями передачи и типом кодирования (табл. 1).

Таблица 1. Соотношение между скоростями передачи и типом кодирования в стандарте 802.11b/b+

Скорость передачи, Мбит/с

Метод кодирования

Модуляция

Скорость сверточного кодирования

Символьная скорость, 106 символ/с

Количество бит в одном символе

1

(обязательно)

Код Баркера

DBPSK

-

1

1

2

(обязательно)

Код Баркера

DQPSK

-

1

2

5,5

(обязательно)

ССK

DQPSK

-

1,375

2

(опционально)

PBCC

DBPSK

1/2

11

0,5

11

(обязательно)

ССK

DQPSK

-

1,375

8

(опционально)

PBCC

DQPSK

1/2

11

1

22*

(обязательно)

PBCC

DQPSK

3/4

11

2

* Примечание. Скорость 22 Мбит/с относится только к протоколу 802.11b+.


Автор
Василий Леонов

Комментарии