Конфигурирование кадра MAC WLAN
wlanMACFrameConfig объект конфигурирует кадр управления доступом к среде (MAC) IEEE ® 802.11™.
создает объект конфигурации кадров MAC WLAN со значениями свойств по умолчанию.cfgMAC = wlanMACFrameConfig
устанавливает свойства cfgMAC = wlanMACFrameConfig(Name,Value)cfgMAC использование одного или нескольких Name,Value аргументы пары.
Во время выполнения вызывающая функция, wlanMACFrameпроверяет параметры объекта для свойств, относящихся к его работе.
FrameType - Тип кадра MAC'Beacon' (по умолчанию) | 'RTS' | 'CTS' | 'ACK' | 'Block Ack' | 'Trigger' | 'Data' | 'Null' | 'QoS Data' | 'QoS Null'Тип MAC-кадра, указанный как одно из этих значений.
'Beacon' - Кадр маяка
'RTS' - Запрос на отправку (RTS) кадра
'CTS' - Очистить для передачи кадра (CTS)
'ACK' - Кадр подтверждения (Ack)
'Block Ack' Кадр подтверждения блокировки
'Trigger' - Пусковая рама
'Data' - Кадр данных
'Null' - Пустая рамка
'QoS Data' - Кадр данных качества обслуживания (QoS)
'QoS Null' - пустой кадр QoS
Типы данных: char | string
FrameFormat - Формат кадра MAC'Non-HT' (по умолчанию) | 'HT-Mixed' | 'VHT' | 'HE-SU' | 'HE-EXT-SU'Формат кадра MAC, указанный как 'Non-HT', 'HT-Mixed', 'VHT', 'HE-SU', или 'HE-EXT-SU', в зависимости от FrameType значение свойства.
Когда FrameType является 'QoS Data', можно указать любую из доступных опций.
Когда FrameType является 'QoS Null', можно указать только 'Non-HT' или 'HT-Mixed'.
Чтобы включить это свойство, необходимо выполнить оба этих условия.
Типы данных: char | string
ToDS - Кадр направлен на О «ДС»false или 0 (по умолчанию) | true или 1Кадр направляется в распределенную систему (DS), заданную как числовая или логическая 1 (true) или 0 (false). Чтобы указать, что кадр направлен от станции, не являющейся точкой доступа (не-AP), к DS, установите для этого свойства значение 1 (true).
Типы данных: logical
FromDS - Кадр выходит из DStrue или 1 (по умолчанию) | false или 0Кадр выходит из DS, указанный как числовой или логический 1 (true) или 0 (false). Чтобы указать, что кадр направлен от DS к станции, не являющейся точкой доступа, установите для этого свойства значение 1 (true).
Типы данных: logical
Retransmission - Повторно переданный кадрfalse или 0 (по умолчанию) | true или 1Повторно переданный кадр, указанный как числовой или логический 1 (true) или 0 (false). Чтобы указать, что кадр является повторной передачей, установите для этого свойства значение 1 (true).
Типы данных: logical
PowerManagement - Режим управления питаниемfalse или 0 (по умолчанию) | true или 1Режим управления питанием, указанный как числовой или логический 1 (true) или 0 (false). Чтобы указать, что отправитель находится в режиме энергосбережения, установите для этого свойства значение 1 (true).
Типы данных: logical
MoreData - Дополнительная индикация данныхfalse или 0 (по умолчанию) | true или 1Дополнительные данные, указанные как числовые или логические 1 (true) или 0 (false). Чтобы указать, что у отправителя больше кадров для отправки, установите для этого свойства значение 1 (true).
Типы данных: logical
ProtectedFrame - Индикация защищенного кадраfalse или 0 (по умолчанию) | true или 1Указание защищенного кадра, указанное как числовое или логическое 1 (true) или 0 (false). Чтобы указать, что кадр защищен алгоритмом криптографической инкапсуляции, установите для этого свойства значение 1 (true).
Это свойство применяется только в том случае, если Decoded свойство - 1 (true).
Типы данных: logical
HTControlPresent - Кадр включает в себя поле управления ГИfalse или 0 (по умолчанию) | true или 1Кадр включает в себя поле управления высокой пропускной способностью (HT), указанное как числовое или логическое 1 (true) или 0 (false). Чтобы указать, что поле управления HT включено в заголовок MAC, установите для этого свойства значение 1 (true)
Типы данных: logical
Duration - Время, на которое зарезервирован канал0 (по умолчанию) | целое число в интервале [0, 215 - 1]Время в микросекундах, в течение которого канал резервируется после окончания передачи кадра, указанное как целое число в интервале [0, 215 - 1].
Типы данных: double
Address1 - Адрес получателя'FFFFFFFFFFFF' (по умолчанию) | 12-элементный символьный вектор | строковый скалярАдрес приемника, заданный как 12-элементный символьный вектор или строковый скаляр, представляющий шеститетовое шестнадцатеричное значение. Значение по умолчанию, 'FFFFFFFFFFFF', является адресом широковещательной передачи.
Типы данных: char | string
Address2 - Адрес датчика'00123456789B' (по умолчанию) | 12-элементный символьный вектор | строковый скалярАдрес передатчика, заданный как 12-элементный символьный вектор или строковый скаляр, представляющий шеститетовое шестнадцатеричное значение.
Типы данных: char | string
Address3 - BSSID, DA или SA'00123456789B' (по умолчанию) | 12-элементный символьный вектор | строковый скалярИдентификатор базового набора служб (BSSID), адрес назначения (DA) или адрес источника (SA), указанный как 12-элементный символьный вектор или строковый скаляр, представляющий шеститетовое шестнадцатеричное значение.
Типы данных: char | string
Address4 - SA или BSSID'00123456789B' (по умолчанию) | 12-элементный символьный вектор | строковый скалярSequenceNumber - Порядковый номер кадра0 (по умолчанию) | целое число в интервале [0, 4095]Порядковый номер кадра, указанный как целое число в интервале [0, 4095].
Когда MPDUAggregation свойство - 1 (true), это свойство представляет порядковый номер первого блока данных протокола MAC (MPDU). Порядковые номера последующих блоков MPDU увеличиваются с шагом в единицу.
Когда FrameType свойство - 'Block Ack', это свойство представляет начальный порядковый номер.
Типы данных: double
TID - Идентификатор трафика, представляющий приоритет пользователя0 (по умолчанию) | целое число в интервале [0, 7]Идентификатор трафика, представляющий приоритет пользователя, указанный как целое число в интервале [0, 7].
Типы данных: double
AckPolicy - Политика подтверждения'No Ack' (по умолчанию) | 'Normal Ack/Implicit Block Ack Request' | 'No explicit acknowledgment/PSMP Ack/HTP Ack' | 'Block Ack'Политика подтверждения, указанная как 'No Ack', 'Normal Ack/Implicit Block Ack Request', 'No explicit acknowledgment/PSMP Ack/HTP Ack', или 'Block Ack'.
Типы данных: string | char
HTControl - поле управления HT заголовка MAC'00000000' (по умолчанию) | восьмиэлементный символьный вектор | строковый скалярПоле управления HT заголовка MAC, указанное как восьмиэлементный символьный вектор или строковый скаляр, представляющий четырехоктетное шестнадцатеричное значение. Самый левый байт в HTControl должен быть самым значимым байтом.
Типы данных: string | char
MSDUAggregation - Формирование A-MSDU с использованием агрегирования MSDUfalse или 0 (по умолчанию) | true или 1Формирование агрегированных блоков данных службы MAC (A-MSDU) с использованием агрегирования MSDU, указанного как числовое или логическое 1 (true) или 0 (false).
При установке для этого свойства значения 1 (true), кадр MAC, возвращенный при вызове wlanMACFrameConfig в wlanMACFrame содержит A-MSDU вместо MSDU.
Чтобы включить это свойство, установите значение FrameType свойство для 'QoS Data'.
Типы данных: logical
MPDUAggregation - Формирование A-MPDU с использованием агрегирования MPDUfalse или 0 (по умолчанию) | true или 1Сформировать A-MPDU с использованием агрегирования MPDU, указанного как числовое или логическое 1 (true) или 0 ( false). Чтобы указать, что кадр MAC инициализирован wlanMACMFrameConfig содержит A-MPDU вместо MPDU, установите для этого свойства значение 1 (true).
При установке FrameType кому 'QoS Data' и FrameFormat кому 'VHT', кадр MAC, возвращенный при вызове wlanMACFrameConfig в wlanMACFrame содержит A-MPDU вместо MPDU.
Чтобы включить это свойство, необходимо выполнить эти условия.
FrameType свойство должно быть 'QoS Data'.
FrameFormat свойство должно быть 'HT-Mixed'.
Decoded свойство должно быть 0.
Типы данных: logical
AMSDUDestinationAddress - Адрес назначения всех подкадров A-MSDU'00123456789A' (по умолчанию) | 12-элементный символьный вектор | строковый скалярАдрес назначения всех подкадров A-MSDU, указанный как 12-элементный символьный вектор или строковый скаляр, представляющий шеститетовое шестнадцатеричное значение.
Типы данных: char | string
AMSDUSourceAddress - Адрес источника всех подкадров A-MSDU'00123456789B' (по умолчанию) | 12-элементный символьный вектор | строковый скалярАдрес источника всех подкадров A-MSDU, указанный как 12-элементный символьный вектор или строковый скаляр, представляющий шеститетовое шестнадцатеричное значение.
Типы данных: char | string
MinimumMPDUStartSpacing - Минимальный интервал между включениями MPDU0 (по умолчанию) | целое число в интервале [0, 7]BlockAckBitmap - Растровое изображение Block ackBitmap Block ack, заданный как вектор символов или строковый скаляр октетов в шестнадцатеричном формате. Чтобы указать растровое изображение ack блока из восьми октетов, укажите 16-элементный символьный вектор или строковый скаляр. Чтобы указать 32-октетную битовую карту ack блока, укажите 64-элементный символьный вектор или строковый скаляр.
Типы данных: char | string
MinTriggerProcessTime - Минимальное время, необходимое для обработки триггерного кадра0 (по умолчанию) | 8 | 16Минимальное время, необходимое для обработки кадра триггера, в микросекундах, указанное как 0, 8, или 16.
Это свойство не применяется, когда Decoded свойство - 1.
Типы данных: double
ManagementConfig - Конфигурация рамок управления и телаwlanManagementConfig объектКонфигурация фрейма-тела управления, указанная как wlanMACManagementConfig объект. Это свойство применяется только к кадрам управления. Это свойство определяет поля и информационные элементы (IE), присутствующие в теле кадра управления.
Чтобы включить это свойство, установите значение FrameType свойство для 'Beacon'.
TriggerConfig - Конфигурация триггера «рама-корпус»wlanMACTriggerConfig объектОбъект конфигурации Trigger frame-body, указанный как wlanMACTriggerConfig объект.
Чтобы включить это свойство, установите значение FrameType свойство для 'Trigger'.
TriggerType - Тип триггерного кадра'Basic' | 'MU-BAR' | 'MU-RTS'Это свойство доступно только для чтения.
Тип кадра триггера, возвращаемый как одно из этих значений.
'Basic' - Базовая триггерная рамка
'MU-BAR' - Кадр запроса подтверждения многопользовательского блока (MU-BAR)
'MU-RTS' - Многопользовательский запрос на отправку кадра (MU-RTS)
Чтобы включить это свойство, установите значение FrameType свойство для 'Trigger'.
Типы данных: char | string
Decoded - Декодированная индикация MPDU0 | 1Это свойство доступно только для чтения.
Декодированная индикация MPDU, возвращенная как логическая 1 или 0. Когда wlanMPDUDecode создает этот объект как выход процесса декодирования MPDU, это свойство 1. В противном случае это свойство имеет значение 0.
Типы данных: logical
Создать wlanMACFrameConfig объект для кадра запроса на отправку (RTS) и отображение свойств объекта.
cfgMAC = wlanMACFrameConfig;
cfgMAC.FrameType = 'RTS';
disp(cfgMAC) wlanMACFrameConfig with properties:
FrameType: 'RTS'
PowerManagement: 0
MoreData: 0
Duration: 0
Address1: 'FFFFFFFFFFFF'
Address2: '00123456789B'
Read-only properties:
Decoded: 0
Создать wlanMACFrameConfig объект для кадра данных качества обслуживания (QoS). Отключите подтверждение и включите режим энергосбережения.
cfgMAC = wlanMACFrameConfig('FrameType','QoS Data', ... 'AckPolicy','No Ack', ... 'PowerManagement',true);
Укажите порядковый номер кадра и идентификатор трафика. Отображение свойств объекта конфигурации кадров MAC.
cfgMAC.SequenceNumber = 5; cfgMAC.TID = 7; disp(cfgMAC)
wlanMACFrameConfig with properties:
FrameType: 'QoS Data'
FrameFormat: 'Non-HT'
ToDS: 0
FromDS: 1
Retransmission: 0
PowerManagement: 1
MoreData: 0
Duration: 0
Address1: 'FFFFFFFFFFFF'
Address2: '00123456789B'
Address3: '00123456789B'
SequenceNumber: 5
TID: 7
AckPolicy: 'No Ack'
MSDUAggregation: 0
Read-only properties:
Decoded: 0
Создайте базовый триггерный кадр MAC для переноса информации для двух пользователей.
Создайте объект конфигурации «кадр-тело» триггера MAC, задав пропускную способность канала 40 МГц.
cfgTrigger = wlanMACTriggerConfig('ChannelBandwidth','CBW40');
Создайте объекты конфигурации для полей User Info кадра триггера.
cfgUser1 = wlanMACTriggerUserConfig('AID12',1,'RUSize', ... 242,'RUIndex',1); cfgUser2 = wlanMACTriggerUserConfig('AID12',2,'RUSize', ... 242,'RUIndex',2);
Добавьте поля User Info в кадр триггера.
cfgTrigger = addUserInfo(cfgTrigger,cfgUser1); cfgTrigger = addUserInfo(cfgTrigger,cfgUser2);
Настройте кадр триггера, создав объект конфигурации MAC frame-body, указав тип кадра и конфигурацию триггера frame-body.
cfgMAC = wlanMACFrameConfig('FrameType','Trigger', ... 'TriggerConfig',cfgTrigger);
Укажите конфигурацию PHY, отличную от HT, путем создания объекта конфигурации, отличного от HT, по умолчанию.
cfgPHY = wlanNonHTConfig;
Создайте кадр триггера MAC и отобразите его длину.
[frame,frameLength] = wlanMACFrame(cfgMAC,cfgPHY); disp(frameLength)
40
[1] IEEE Std 802.11-2016 (версия IEEE Std 802.11-2012). «Часть 11: Спецификации управления доступом к среде беспроводной локальной сети (MAC) и физического уровня (PHY)». Стандарт IEEE для информационных технологий - телекоммуникации и обмен информацией между системами. Локальные и столичные сети - особые требования.
[2] P802.11ax™/D4.1 IEEE. "Часть 11: Спецификации управления доступом к среде беспроводной локальной сети (MAC) и физического уровня (PHY). Поправка 1: Усовершенствования для высокоэффективной WLAN. " Проект стандарта на информационные технологии - телекоммуникации и обмен информацией между системами. Локальные и столичные сети - особые требования.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.