1.4.2. Канальный уровень IEEE 802.11

advertisement
1.4.2. Канальный уровень IEEE 802.11
Архитектура MAC-подуровня представлена на рис. 1-4-.
Необходимо для
приоритизированных
QoS-услуг
Необходимо для
неконкурентного
доступа,
для станций без
поддержки QoS
[опционально]
Hybrid Coordination Function (HCF)
Point Coordination
Function
(PCF)
HCF
Contension Access
(EDCA)
HCF
Controlled Access
(HCCA)
Необходимо для
параметризированных
QoS-услуг
Используется для
конкурентного доступа,
служит основой PCF И
HCF
Distributed Coordination Function (DCF)
Рис. 1-4Архитектура MAC
DCF
Основной метод доступа в IEEE 802.11 MAC, известный как carrier-sense multiple access with
collision avoidance (CSMA/CA). DCF, или распределенная функция координации, должна быть
реализована во всех станциях для работы в IBSS и в инфраструктурном режимах.
Чтобы начать передачу, станция должна определить, свободна ли среда, т.е. не ведется ли
передача другой станцией. Если станция определяет, что среда незанята, начинается
процедура передачи. Если станция определяет, что среда занята, передача откладывается
до окончания текущей передачи. В случае если передается одноадресный кадр, удачной
считается передача, после которой получен кадр подтверждения ACK от станции-адресата. В
случае многоадресной передачи – если кадр полностью передан.
Для уменьшения числа коллизий может быть задействован механизм RTS/CTS: передающая
и принимающая станции обмениваются контрольными кадрами RTS (ready-to-send) и CTS
(clear-to-send), коллизия которых приведет к меньшим временным потерям, чем при
коллизии кадров данных.
Метод доступа DCF подробно рассмотрен в пункте 1.4.2.1.
PCF
Опциональный метод доступа. PCF, или точечная функция координации, может работать
только в инфраструктурном режиме. Данный метод доступа использует точечный
координатор (point coordinator, PC), реализованный в точке доступа в BSS. PC определеяет,
какая станция на текущий момент времени имеет право передавать данные.
PCF использует виртуальный механизм определения занятости среды и распространяет
информацию в управляющих маячковых кадрах (beacon frames) для получения контроля над
средой путем установления значения вектора NAV в станциях. Все кадры, передаваемые в
режиме PCF, используют межкадровые интервалы (interframe space, IFS), меньшие, чем при
DCF режиме. Таким образом PCF-трафик будет иметь приоритет над DCF-трафиком в случае
пересечения двух BSS с PCF и DCF.
Метод доступа PCF рассмотрен в пункте 1.4.2.2.
HCF
Включение в стандарт IEEE 802.11 QoS-услуг (дополнение 802.11e) привнесло в него
гибридную функцию координации, основанную на PCF и DCF и доработанную с учетом
специфических механизмов QoS и подтипов кадров. Станция с поддержкой QoS
обозначается как QoS STA (в дальнейшем - QoS-станция).
HCF использует два метода доступа: с контролем доступа к каналу (HCF controlled channel
access, HCCA) для свободного от конкуренции доступа и улучшенный распределенный
доступ к каналу (enhanced distributed channel access, EDCA) для конкурентного доступа (см.
рис. 1-4-).
Метод доступа HCF подробно рассмотрен в пункте 1.4.2.3.
DCF и централизованная функция координации (PCF или HCF) могут работать в одном BSS. При
работающем в BSS точечном координаторе PC методы доступа PCF и DCF сменяют друг друга – период
конкуренции (contention period, CP) сменяет период, свободный от конкуренции (contention-free
period, CFP).
На MAC уровне производится фрагментация кадров, т.е. разбиение MSDU или MMPDU (MAC
management protocol data unit) на кадры MAC меньшие по размеру – MPDU (рис. 1-4-). Каждый
фрагмент – кадр, не превышающий по размеру заданного значения (dot11FragmentationThreshold).
Фрагментация MSDU размером больших этого значения производится передающей станцией с целью
увеличить вероятность удачной передачи MSDU или MMPDU.
Процесс сборки фрагментов (MPDU) в первоначальный MSDU или MMPDU называется
дефрагментацией и производится на принимающей станции. Каждый фрагмент в заголовке
содержит следующую информацию, позволяющую восстановить MSDU или MMPDU из фрагментов на
принимающей станции:





Тип кадра
Адрес отправителя, полученный из поля Address2
Адрес получателя
Контрольное поле последовательности (Sequence Control Field), состоящее из номера
последовательности (sequence number) и номера фрагмента (fragment number). Данное поле
позволяет проверить принадлежность всех принимаемых фрагментов одному MSDU или
MMPDU и последовательность, в которой фрагменты должны быть собраны в MSDU. Несколько
MPDU, являющихся частями одного MSDU, должны иметь одинаковый номер
последовательности, а номера фрагментов должны инкрементироваться в соответствии с
порядком следования фрагментов. Различные MSDU с высокой вероятностью должны иметь
различный номер последовательности.
Индикатор оставшихся фрагментов (More fragments indicator), показывающий принимающей
станции, что принятый ей фрагмент является (значение 0) или не является (значение 1)
последним фрагментом в последовательности.
Каждая станция должна иметь возможность параллельного приема, по крайней мере, трех
фрагментированных MSDU или MMPDU. Важно отметить, что станция, принимающая более трех
фрагментированных MSDU одновременно, может столкнуться с возрастанием числа отклоненных
кадров. Принимающая станция должна поддерживать таймер приема (Receive Timer) минимум для
трех параллельно принимаемых фрагментированных MSDU или MMPDU и может задавать
дополнительные таймеры. Также существует атрибут aMaxReceiveLifetime – максимальное время на
прием законченного MSDU или MMPDU. Если время aMaxReceiveLifetime истекло, а прием
соответствующего кадра MSDU или MMPDU незавершен, все принятые фрагменты данного MSDU или
MMPDU отклоняются, а новопринятые фрагменты подтверждаются и отклоняются.
В процессе обмена кадрами могут возникать ситуации, когда принимающая станция получает один
кадр несколько раз. Такие дублирующие друг друга кадры должны фильтроваться на MAC подуровне
принимающей станции. Фильтрация дублирующихся кадров ведется по полю Sequence Control Field.
Принимающая станция должна поддерживать таблицу из наиболее новых значений <Address 2,
sequence number, fragment number> (<адрес передающей станции, номер последовательности, номер
фрагмента>), полученных из принятых кадров. Принимающая станция должна отправлять кадр
подтверждения передающей станции, даже если кадр был отклонен во время фильтрации как
повторяющийся.
MSDU
MAC
HDR
Frame Body
Fragment 0
C
R
C
MAC
HDR
Frame Body
C
R
C
Fragment 1
MAC
HDR
Frame Body
Fragment 2
C
R
C
MAC
HDR
Frame Body
C
R
C
Fragment 3
Рис. 1-4Фрагментация
Фрагментации могут быть подвергнуты только одноадресные кадры. Широковещательные и
многоадресные кадры фрагментации не подвергаются, даже если их размер превышает
dot11FragmentationThreshold
Полученные кадры MPDU (фрагменты) передаются как независимые кадры и каждый из них
независимо подтверждается. В случае возникновения ошибки это позволяет уменьшить время на
повторную передачу, т.к. повторно будет передан только неподтвержденный фрагмент.
1.4.2.1. DCF
Базовым методом доступа является DCF, обеспечивающий автоматическое разделение среды
между совместимыми PHY с использованием CSMA/CA.
Протокол CSMA/CA спроектирован таким образом, чтобы свести к минимуму количество
коллизий при попытке нескольких станций начать передачу одновременно при освобождении
среды, когда существует наибольшая вероятность коллизии. Решением служит использование
каждой станцией, желающей передать кадр, случайного времени задержки (random backoff
time) перед попыткой передачи.
Прослушивание среды (carrier sense, CS) осуществляется в DCF параллельно двумя
механизмами: физическим и виртуальным.
Физический механизм CS
Виртуальный механизм CS
Реализуется алгоритмом CCA (clear channel
assessment), суть которого заключается в
измерении энергии сигнала на антенне. В
результате, измеренное значение сравнивается с
заданным значением, и станция определяет,
ведется ли в данный момент передача другой
станцией.
Вектор распределения сети NAV (network
allocation vector) представляет собой таймер
обратного отсчета, отражающий ближайший
период времени, когда среда будет занята.
Каждая станция поддерживает свой NAV и,
улавливая кадры RTS/CTS или одноадресные
кадры от других станций, заполняет свой NAV
из поля Duration или Duration/ID
соответственно, содержащего информацию о
запланированном времени занятия среды,
включающем время на доставку ACK-кадра. В
случае улавливания станцией фрагмента, его
Физический механизм признает среду
свободной, если уровень энергии сигнала на
антенне не превышает заданного значения.
поле Duration/ID будет содержать время на
передачу следующего фрагмента и ACK. Если
полученное значение времени занятия
среды меньше, чем то, которое содержится в
NAV, NAV не обновляется. Установка таймера
NAV ведется из максимально доступного
числа источников.
Виртуальный механизм признает среду
свободной при достижении NAV значения 0.
Каждый из механизмов предоставляет станции информацию о состоянии среды: занята/свободна
(busy/idle). Для признания среды свободной необходимо подтверждение обоих механизмов.
13 мая 2004 года австралийское агенство AusCERT опубликовало доклад, в котором
сообщалось о выявленной уязвимости сетей стандарта IEEE 802.11, а конкретно алгоритма
CCA в DSSS PHY (802.11b). Злоумышленник, используя КПК или любое другое устройство с
адаптером беспроводной сети, может провести DoS-атаку (denial of services). При
проведении атаки все станции сети (включая точки доступа) в зоне действия устройства
злоумышленника воздерживаются от передачи, считая канал занятым. В AusCERT отметили,
что PHY, определенные в дополнениях 802.11a и 802.11g, не содержат такой уязвимости.
Обмен кадрами RTS/CTS (ready-to-send/clear-to-send) между станциями служит средством,
позволяющим избежать коллизии больших кадров. Передача кадров RTS/CTS ведется на общей
основе, не имеет приоритета. Получив доступ к среде, станция посылает станции-адресату кадр RTS,
содержащий значение времени на получение кадра CTS, передачу основного кадра данных и
получение подтверждения ACK о принятии кадра данных.
Также механизм RTS/CTS разрешает проблему скрытого узла (hidden node problem), когда точка
доступа «слышит» станцию 1 и станцию 2, однако обе станции друг друга слышать не могут и,
соответственно, не могут улавливать одноадресные кадры друг друга, устанавливать значение NAV и
физически определять, что среда занята (рис. 1-4-).
2
2.
CT
S
1.
S
RT
2.
4
STA 1
S
3
STA 2
1
Рис. 1-4Проблема скрытого узла
CT
Обозначения на рис. 1-4-:
1 – BSA
2 – область работы станции 1
3 – область работы станции 2
4 – область возможного
возникновения помех при
одновременной передаче станцией
1 и станцией 2.
Если станция 1 передает кадр, при
использовании механизма RTS/CTS
станция 2 сможет установить
значение NAV из кадра CTS,
распространяемого точкой доступа.
К преимуществам использования
RTS/CTS можно отнести то
обстоятельство, что станция, отправившая RTS и не получившая CTS, экономит время и передает
заново только короткий кадр RTS вместо большого кадра данных.
Механизм RTS/CTS не может использоваться для передачи широковещательных или многоадресных
MPDU, т.к. в этом случае существует несколько потенциальных отправителей CTS. Из-за того, что
RTS/CTS-кадры являются дополнительной нагрузкой на сеть, их использование для передачи
большого числа кадров или кадров малого размера снижает эффективность работы сети. Станция
может быть настроена использовать RTS/CTS всегда, никогда или с кадрами данных больше заданного
размера (dot11RTSThreshold).
Прием некоторых кадров требует от принимающей станции передачи в ответ станции-отправителю
кадра подтверждения ACK, если контрольная сумма (frame control sequence, FCS) верна. Если
передающая станция не получает подтверждения ACK об успешной доставке кадра данных, должна
быть запланирована повторная передача кадра данных, несмотря на то, произошла ли ошибка при
передаче кадра данных или при передаче кадра подтверждения.
Временные интервалы между кадрами носят название межкадровых интервалов (interframe space,
IFS) и служат приоритезации доступа к беспроводной среде. IFS независимы от скорости передачи и
определяются отдельно для каждого PHY. Стандартом IEEE 802.11 определено 5 типов межкадровых
интервалов (см. таблицу 1-4-). Их соотношения показаны на рис. 1-4-.
AIFS[i]
AIFS[i]
DIFS
DIFS/
AIFS
PIFS
Окно конкуренции
SIFS
Среда занята
Случайная задержка
Следующий кадр
Временной слот
Доступ откладывается
Случайный выбор количества временных
слотов и обратный отсчет пока среда свободна
Рис. 1-4Соотношение временных интервалов
Таблица 1-4-. Межкадровые интервалы
SIFS
Короткий межкадровый интервал (short interframe space).
SIFS – самый короткий из межкадровых интервалов, используемый станциями для
удержания права использования среды для передачи кадра или последовательности
кадров. SIFS между передаваемыми кадрами не дает другим станциям получить доступ к
среде, т.к. те ожидают, что среда будет свободна более длительный период времени.
Основные случаи использования SIFS:
 перед передачей ACK
 перед передачей CTS
 после второго и последующих MPDU из последовательности фрагментов
 при ответе станции на опрос точечного координатора в PCF
 для любых кадров во время CFP в режиме PCF
В соответствии с IEEE 802.11 интервал SIFS может отклоняться от заданного в PHY не более
чем на ±10%.
Таблица 1-4-. SIFS и временные слоты для различных PHY
PIFS
PHY
aSIFSTime
(SIFS)
aSlotTime
(временной слот)
FHSS
DSSS
OFRM (канал 20 МГц)
HR/DSSS
ERP
28 μs
10 μs
16 μs
10 μs
10 μs
50 μs
20 μs
9 μs
20 μs
20 μs (long)
9 μs (short)
Межкадровый интервал PCF (PCF interframe space).
PIFS должен использоваться
 только станциями, работающими в режиме PCF, для получения приоритета при
доступе к среде в начале CFP
 станцией, передающей кадр оповещения о переключении канала
PIFS = SIFS + 1×Временной слот
DIFS
Межкадровый интервал DCF (DCF interframe space).
DIFS должен использоваться станциями, работающими в DCF, для передачи кадров данных
(MPDU) и управляющих кадров (MMPDU).
DIFS = SIFS + 2×Временной слот
AIFS
Межкадровый интервал переменной длительности (arbitration interframe space).
AIFS должен быть использован QoS-станцией для передачи всех кадров данных (MPDU), всех
управляющих кадров (MMPDU) и следующих контрольных кадров: PS-Poll, RTS, CTS
(передаваемый не в ответ на RTS), BlockAckReq и BlockAck (передаваемый не в ответ на
BlockAckReq).
EIFS
Расширенный межкадровый интервал (extended interframe space).
EIFS используется станцией после неудачной передачи кадра (если принимающая станция
фиксирует, что FCS неверна или принятый кадр неполный).
EIFS = SIFS + DIFS + ACKTxTime
(ACKTxTime – время на отправку кадра подтверждения ACK, включая преамбулу, заголовок
PLCP и любую дополнительную информацию PHY, на минимальной обязательной скорости,
указанной для соответствующего PHY)
Станция, желающая передать MPDU или MMPDU должна задействовать механизм CS для
определения состояния среды (занята/свободна). Если среда занята, передача должна быть отложена,
пока среда не будет свободной на протяжении DIFS (если последний кадр данной станцией был
передан успешно) или EIFS (если при передаче последнего кадра от данной станции была
зафиксирована ошибка и станция передает кадр повторно). После того, как среда оставалась
свободной на протяжении DIFS или EIFS, станция генерирует случайный промежуток времени, в
течение которого воздерживается от передачи, – случайное время задержки (random backoff time),
состоящее из случайного количества временных слотов. Случайное время задержки генерируется
только в случае, если значение backoff таймера равно 0.
Backoff Time = Random() × aSlotTime
Random() =
Функция вычисления случайной целой величины в диапазоне [0, CW], где CW –
размер окна конкуренции, целое число между параметрами PHY aCWmin и aCWmax
(aCWmin ≤ CW ≤ aCWmax). Важным требованием при реализации функции Random()
является статистическая независимость потоков случайных чисел различных
станций.
aSlotTime =
временной слот, определенный для каждого PHY
Табилца 1-4-. Параметры размеров окна конкуренции
PHY
aCWmin
aCWmax
FHSS
DSSS
OFRM
HR/DSSS
ERP
15
31
15
31
31 (при aSlotTime = 20 µs)
15 (при aSlotTime = 9 µs)
1023
1023
1023
1023
1023
CW max
1023
1023
511
255
CW min
15
31
63
127
...
Четвертая попытка передачи
Третья попытка передачи
Вторая попытка передачи
Первая попытка передачи
Рис. 1-4Пример расширения окна конкуренции в
случае последовательных ошибок при
передаче кадра
Первоначально параметр CW должен принимать значение aCWmin. CW принимает свое следующее
значение каждый раз, когда происходит неудачная попытка станции передать MPDU. Когда CW
достигает значения aCWmax, CW сохраняет это значение до момента сброса CW. Сброс CW в свою
очередь происходит при каждой удачной попытке передачи MPDU или MMPDU. Такая процедура
повышает стабильность работы сети в условиях высокой нагрузки.
Набор значений CW – восходящая последовательность целых чисел степеней двойки минус один (2n1), начинающаяся с aCWmin и достигающая aCWmax, определенных для каждого PHY (см таблицу 1-4и рис. 1-4-).
Чтобы начать процедуру случайного времени задержки, станция должна установить в своем backoff
таймере случайное сгенерированное значение, вычисленное по вышеописанной формуле для Backoff
Time. Станция, отсчитывающая случайное время задержки, должна использовать механизм CS в
каждый из временных слотов. Если за определенный временной слот среда осталась свободной,
backoff таймер декрементируется на один временной слот (т.е. на значение aSlotTime). Если в течение
данного временного слота в среде была обнаружена активность, процедура случайного времени
задержки «замораживается», а backoff таймер не декрементируется. Для продолжения процедуры
случайного времени задержки среда должна оставаться свободной в течение DIFS или EIFS. Попытка
передачи кадра произойдет при достижении backoff таймером значения 0.
Таким образом, состязание за право передачи кадра выигрывает станция, сгенерировавшая
наименьшее значение времени задержки (учитывая, что все станции одновременно обнаружили, что
среда свободна). В упрощенном виде процедура случайного времени задержки показана на рис. 1-4-.
Полная схема доступа к среде в DCF изображена на рис. 1-4-.
DIFS
STA 1
Кадр
DIFS
DIFS
DIFS
окно конкуренции
Кадр
STA 2
STA 3
Кадр
окно конкуренции
Кадр
STA 4
окно конкуренции
Кадр
STA 5
ожидание перед состязанием за среду
прошедшее время задержки
оставшееся время задержки
Рис. 1-4Процедура случайного времени задержки
окно конкуренции
Начало
Отложить и
запрашивать CCA
каждый временной
слот
ДА
NAV>0
(виртуальный
механизм CS)
Среда занята?
(физический
механизм CS)
НЕТ
ДА
Декрементировать
NAV
Выполняется в период
времени, равный DIFS
НЕТ
Оба условия «НЕТ» =>
СРЕДА СВОБОДНА
Сгенерировать случайное время
задержки, если необходимо
Декрементировать
таймер backoff на 1
временной слот
Выполняется в каждый
временной слот
случайного времени
задержки
НЕТ
NAV > 0
или среда
занята?
Таймер
backoff > 0
ДА
ДА
НЕТ
Передать кадр
Рис. 1-4Схема доступа к среде в режиме DCF
Станция, получившая кадр, не содержащий ошибок, должна обновить значение своего таймера NAV
из поля Duration принятого кадра, если
 новое значение больше текущего значения в NAV таймере
 кадр адресован другой станции
Процедура обновления NAV показана на рис. 1-4-.
DIFS
RTS
Передающая
станция
Данные
SIFS
SIFS
SIFS
CTS
Принимающая
станция
ACK
DIFS
Окно
конкуренции
NAV (обновлен из RTS)
Остальные
станции
NAV (обновлен из CTS)
Процедура случайного
времени задержки
после ожидания
Доступ откладывается
Рис. 1-4Обновление NAV
Межкадровый интервал SIFS используется для эффективной передачи MSDU. Выиграв состязание за
доступ к среде, станция должна передавать фрагменты пока все фрагменты не будут переданы и пока
для каждого переданного фрагмента не будет получено подтверждение ACK. В случае, когда станция
ограничена во времени или по какой-либо причине полная последовательность фрагментов не может
быть передана, оставшаяся часть фрагментов должна быть передана при следующей выигранной
возможности использовать среду.
Когда передача фрагмента состоялась, передающая станция должна освободить среду и ожидать
мгновенного кадра подтверждения ACK. После того, как принимающая станция закончила передачу,
следует интервал SIFS, в течение которого передающая станция должна продолжить передачу
фрагментов, если это необходимо.
После успешного приема кадра, нуждающегося в подтверждении ACK, принимающая
станция выжидает интервал SIFS и передает подтверждение ACK, не учитывая состояние
среды.
Передача фрагментированного MSDU или MMPDU c использованием механизма RTS/CTS начинается с
того, что желающая передать MSDU станция, выиграв состязание за среду, посылает кадр RTS
принимающей станции. Кадр RTS содержит информацию о длительности последующей передачи
ответного кадра CTS, фрагмента 0 и ответного подтверждения ACK 0 (см. рис. 1-4-), которая должна
быть использована для обновления NAV таймеров не участвующих в передаче станций.
NAV (Фрагмент 2)
DIFS
NAV (Фрагмент 1)
PIFS
NAV (Фрагмент 0)
Остальные
станции
Передающая
станция
NAV (CTS)
RTS
Окно
конкуренции
NAV (ACK 0)
Фрагмент 0
SIFS
Принимающая
станция
SIFS
NAV (RTS)
SIFS
CTS
NAV (ACK 1)
Фрагмент 1
SIFS
SIFS
ACK 0
Фрагмент 2
SIFS
SIFS
ACK 1
SIFS
ACK 2
Рис. 1-4Передача фрагментированного MSDU или MMPDU c использованием механизма RTS/CTS
Фрагмент 0 и ACK 0 оба содержат информацию о длительности занятия среды до ACK 1 и так далее.
Поле Duration/ID последнего фрагмента должно содержать время для интервала SIFS и кадра ACK, а
поле Duration/ID кадра подтверждения ACK для последнего фрагмента должно содержать значение 0.
Каждый фрагмент и каждый кадр подтверждения играют роль виртуальных RTS и CTS кадров и, таким
образом, после начала передачи последовательности фрагментов нет необходимости передавать
кадры RTS/CTS, даже если некоторые фрагменты по размеру превышают dot11RTSThreshold.
В ситуации, когда фрагмент был передан, но подтверждение не было получено передающей
станцией, станции, услышавшие фрагмент или ACK, обновят свой NAV таймер на время, включающее
передачу следующего фрагмента и кадр подтверждения ACK для него. Эта худшая ситуация (см. рис.
1-4-). Если кард ACK не был передан принимающей станцией, то станции, слышащие только
принимающую станцию, не обновят свой NAV таймер и могут попытаться получить доступ к среде,
когда их NAV таймер, обновленный из предыдущего кадра, достигнет 0. Станции, слышащие
передающую станцию, смогут вступить в состязание за среду только после истечения их NAV
таймеров.
DIFS
PIFS
NAV (Фрагмент 0)
NAV (RTS)
Остальные
станции
NAV (CTS)
SIFS
Окно
конкуренции
DIFS
PIFS
SIFS
Передающая
станция
RTS
SIFS
Принимающая
станция
Окно
конкуренции
Фрагмент 0
SIFS
CTS
SIFS
ACK 0
Рис. 1-4Обновление NAV
Станция, которой адресован кадр RTS, должна после интервала SIFS передать кадр CTS, если ее таймер
NAV принимающей станции показывает, что среда свободна. Если у принимающей станции NAV > 0,
она не должна отвечать кадром CTS. Значение в поле адреса получателя (RA) в кадре CTS берется из
поля адреса отправителя (TA) кадра RTS. Поле Duration кадра CTS должно содержать значение поля
Duration из RTS минус aSIFSTime и число микросекунд на передачу CTS, зависящее от скорости
передачи.
MAC подуровень стандарта IEEE 802.11 также включает механизм защиты CTS-to-self, добавленный в
ERP PHY (дополнение 802.11g) для обеспечения обратной совместимости с устройствами 802.11b.
Механизм CTS-to-self заключается в следующем: если станция c ERP PHY имеет кадр для передачи, она
передает кадр CTS для обновления NAV таймеров у остальных станций. CTS передается на
максимальной общей скорости для станций 802.11g и 802.11b. После того, как станции, слышащие
передающую станцию, обновили свой NAV таймер, кадр данных может быть передан на скоростях
802.11g с использованием OFDM.
Механизм CTS-to-self оказывается надежнее всего при его использовании точкой доступа:
если кадр CTS от станции удаленные станции могут не слышать, то CTS от точки доступа
должны слышать все станции без исключения.
При использовании CTS-to-self пропускная способность канала падает из-за необходимости снижения
скорости при передачи кадра CTS. RTS/CTS также может быть использован в качестве защитного
механизма, однако тогда пропускная способность падает еще сильнее, т.к. увеличивается количество
передаваемых «защитных» кадров.
Большую часть энергии из всех компонентов радиочастотных систем потребляют усилители сигнала.
Станции могут сохранить запас электроэнергии путем отключения своих приемопередатчиков и
перехода в т.н.спящий режим. Во время «сна» станции точка доступа буферизует любые
одноадресные кадры для спящих станций. Информация о наличии буферизованных кадров
распространяется точкой доступа через маячковые кадры. Для затребования буферизованных кадров
проснувшиеся станции используют кадры PS-Poll. При приеме кадра PS-Poll точка доступа может
передать запрошенные кадры незамедлительно или же отложить передачу запрошенных кадров.
В некоторых случаях способ ответа на кадр PS-Poll определен производителем точки доступа.
Некоторые производители реализуют поддержку обоих способов ответа, некоторые только
одного. Стандарт IEEE 802.11 требует поддержки в оборудовании хотя бы одного из
способов.
Точка доступа может ответить на кадр PS-Poll незамедлительно и после интервала SIFS передать
буферизованный кадр. Кадр PS-Poll содержит поле Association ID внутри поля Duration/ID, значение в
котором позволяет точке доступа определить, какие буферизованные кадры были адресованы
проснувшейся станции. Несмотря на то, что кадр PS-Poll распространяет значение для NAV таймеров
других станций равное SIFS + ACK, после получения кадра данных эти станции обновят значения своих
NAV таймеров повторно (см. рис. 1-4-).
a)
NAV =
SIFS+ACK
Остальные
станции
PS-Poll
NAV (Данные)
Среда занята передачей
кадра данных
ACK
Станция
SIFS
SIFS
Данные
Точка
доступа
b)
NAV (Фрагмент 1)
NAV (ACK 0)
NAV =
SIFS+ACK
Остальные
станции
PS-Poll
NAV (Фрагмент 0)
Среда занята передачей
кадра данных
ACK 1
ACK 0
Станция
SIFS
Точка
доступа
SIFS
Фрагмент 0
SIFS
SIFS
Фрагмент 1
Рис. 1-4Незамедлительный ответ точки доступа a) без фрагментации; b) с фрагментацией.
Вместо незамедлительного ответа точка доступа может ответить на кадр PS-Poll просто
кадром подтверждения ACK – этот способ называется отложенным ответом (deferred
response), т.к. точка доступа подтверждает проснувшейся станции запрос буферизованных
кадров, но не передает из незамедлительно.
Одним из достоинств отложенного ответа состоит в относительной простоте его
программной реализации в ПО точки доступа, т.к. подтверждения отправляется
незамедлительно, а буферизованные кадры могут быть нормально поставлены в
очередь на передачу.
Станция, запрашивающая с помощью PS-Poll буферизованные кадры, должна оставаться в
неспящем состоянии до момента их доставки и не может вернуться в энергосберегающий
режим до получения маячкового кадра с нулевым для себя значением в TIM (traffic indication
map). Из маячкового кадра станция, вышедшая из спящего состояния, узнает, что для нее есть
буферизованные кадры и передает кадр PS-Poll, чтобы их получить. В предположении, что
точка доступа выбирает отложить ответ на кадр PS-Poll, точка доступа посылает станции
подтверждение ACK, т.е. обещает передать буферизованные кадры через некоторое время.
Получения буферизованных кадров станция должна ожидать в активном режиме.
После получения буферизованного карда станция должна оставаться в активном режиме как
минимум до получения следующего маячкового кадра от точки доступа, содержащего только
информацию о наличии буферизованных кадров для конкрентой станции, но не об их
количестве. Получив маячковый кадр, указывающий на отсутствие буферизованных кадров
для себя, станция может снова перейти в режим энергосбережения.
В зависимости от множества условий, в которых функционирует беспроводная сеть, скорость
передачи данных может изменяться. Стандартом IEEE 802.11 не определено, как выбирается
скорость передачи, однако обозначены основные правила:
 Каждая станция имеет список рабочих скоростей, на которых может работать станция и
точка доступа. Ни один кадр не может быть передан на скорости больше максимальной
скорости из списка рабочих скоростей.
 Каждый BSS должен поддерживать базовый список рабочих скоростей – список
скоростей, которые должна поддерживать каждая станция, желающая присоедиться к
BSS. Любой кадр, адресованный группе станций, должен быть передан на базовой
скорости, чтобы любая станция смогла его принять.
 Контрольные кадры, начинающие обмен кадрами данных (такие как RTS и CTS), должны
передаваться на одной из базовых скоростей, чтобы станция, отвечающая кадром CTS,
могла передать его на той же скорости.
 Одноадресные кадры могут передаваться на любой скорости, поддерживаемой
станцией-адресатом. Кадры, передаваемые в CFP, используются для разных целей. Если
кадр включает подтверждение ACK, оно предназначается предыдущей передающей
станции, а не адресату. Скорость передачи должна быть выбрана таким образом, чтобы
и ACK-адресат и адресат корректно приняли кадр.
 Кадры ответа, такие как подтверждения ACK или CTS, должны передаваться на одной из
базовых скоростей не выше скорости первоначального кадра. Кадры ответа должны
использовать ту же модуляцию, что и первоначальный кадр.
Эти правила не всегда выполняются. Оборудование одного производителя всегда
передает кадр подтверждения ACK на скорости 24 Мбит/с, как на самой высокой
обязательной поддерживаемой скорости.
Механизм, регулирующий повышение/понижение скорости передачи не определен
стандартом IEEE 802.11, что вынуждает производителей оборудования изобретать свои
собственные алгоритмы выбора скорости передачи и это иногда приводит к различному
поведению оборудования различных производителей. Наиболее часто используемыми
оценками качества сигнала являются соотношение сигнал/шум (прямая оценка) или
количество повторных передач (непрямая оценка). Оценка по соотношению сигнал/шум
обычно берется при приеме последнего кадра или нескольких кадров (усредняется), а затем
конвертируется в качество сигнала, при падении которого принимается решение снизить
скорость.
Непрямые измерения по количеству потерянных кадров обычно реализуются в следующем
алгоритме: если кадр потерян и счетчик повторных передач переполнен, необходимо снизить
скорость и повторить измерения потерь кадров; повторять пока кадр не будет доставлен или
пока скорость не будет снижена до минимальной. В оборудовании, где используются
непрямые измерения, зачастую присутствуют модификации для ускорения процесса
переключения скоростей, занимающего значительное время, как и повторные передачи на
низких скоростях.
Download