802,11 MAC и измерение пропускной способности приложения

В этом примере показано, как измерить MAC и пропускную способность прикладного уровня в мультиузле 802.11a/n/ac/ax сеть с помощью SimEvents®, Stateflow® и WLAN Toolbox™. Системная модель, представленная в этом примере, включает функциональности, такие как конфигурирование приоритета трафика на прикладном уровне, возможность сгенерировать и декодировать формы волны Non-HT, HT-MF, VHT, HE-SU и форматов HE-EXT-SU, агрегации MPDU и подтверждения блока включения MPDUs. Пропускная способность прикладного уровня вычислила, использование этой модели подтверждено против опубликованной калибровки, следует из Исследовательской группы TGax [4] для сценариев Поля 3 (Тесты 1a, 1b, и 2a) заданный в методологии [3] оценки TGax. Полученная пропускная способность прикладного уровня в области значений минимальной и максимальной пропускной способности, заданной в опубликованных калибровочных результатах [4].

Пропускная способность в 802.11 сетях

Рабочая группа IEEE® 802.11™ постоянно добавляет опции к 802,11 спецификациям [1], чтобы улучшить пропускную способность и надежность в сетях WLAN. Пропускная способность является объемом данных, переданным в течение времени. Пропускная способность слоя Medium Access Control (MAC) относится на сумму данных, успешно переданных слоем MAC в течение времени. Модуль данных о протоколе MAC (MPDU) является модулем передачи на слое MAC. В 802.11n, агрегация MPDU была введена, чтобы увеличить пропускную способность. Когда агрегация MPDU поддерживается, слой MAC агрегировал несколько MPDUs в агрегированный MPDU (A-MPDU) для передачи. Это уменьшает издержки конкуренции канала для передачи нескольких кадров, приводящих к расширенной пропускной способности. В 802.11ac [1] и 802.11ax [2], максимальные пределы для длины A-MPDU были увеличены, приведя к еще лучшей пропускной способности в сетях WLAN.

Модель 802.11 Сеть

Этот пример моделирует сеть WLAN с пятью узлами как показано в этом рисунке. Эти узлы реализуют обнаружение несущей, к которому несколько получают доступ с предотвращением столкновения (CSMA/CA) с физическим и виртуальным обнаружением несущей с обнаружением несущей. Физический поставщик услуг, распознающийся, использует механизм ясной оценки канала (CCA), чтобы определить, занят ли носитель перед передачей. Принимая во внимание, что, виртуальный поставщик услуг, распознающийся, использует квитирование RTS/CTS, чтобы предотвратить скрытую проблему узла.

Модель в примере отображает различную статистику, такую как количество переданных, полученных, и пропущенных пакетов на слоях PHY и MAC. Кроме того, время выполнения полагает, что справка в анализе/оценке производительности уровня узла и сетевого уровня также отображена в этой модели. Эта модель подтверждена против опубликованной калибровки, следует из Исследовательской группы TGax [4] для сценариев Поля 3 (Тесты 1a, 1b, и 2a) заданный в методологии [3] оценки TGax.

Сеть WLAN

Компоненты узла WLAN

Компоненты узла WLAN показывают в этом рисунке. Информация получена путем стремления кнопки стрелки каждого узла в вышеупомянутой фигуре.

Приложение, ЭДКА МАК и PHY блокируют улучшения

Этим примером является улучшение по Мультиузлу 802.11a Моделирование Сети с примером МАКа и PHY. Обратитесь к странице документации в качестве примера для получения дополнительной информации о каждом слое в узле WLAN. У приложения, ЭДКИ МАКА и блоков PHY, используемых в этом примере, есть эти улучшения по Мультиузлу 802.11a Моделирование Сети с PHY и МАКом.

Приложение:

Прикладной уровень имеет возможность сгенерировать данные с различными приоритетными уровнями как показано в этом рисунке. Эти приоритетные уровни сконфигурированы с помощью Access Category свойство в параметрах маски блока Application Traffic Generator в узле WLAN.

ЭДКА МАК:

Блок EDCA MAC, используемый в этом примере, имеет эти улучшения по блоку MAC, используемому в Мультиузле 802.11a Моделирование Сети с примером MAC и PHY

  • Сгенерируйте и декодируйте системы координат MAC высокоэффективного отдельного пользователя (HE-SU), высокая эффективность расширенный отдельный пользователь области значений (HE-EXT-SU), очень высокая пропускная способность (VHT), высокая пропускная способность смешала формат (HT-MF) и форматы Non-HT. Эти форматы сконфигурированы с помощью PHY Tx Format свойство в параметрах маски блока MAC EDCA в узле WLAN как показано в этом рисунке.

  • Совокупный MPDUs, чтобы сформировать A-MPDU. Это может быть сконфигурировано установкой PHY Tx Format к одному из HT-MF, VHT, HE-SU, или HE-EXT-SU. В случае HT-MF, MPDU Aggregation свойство должно также быть включено для генерации A-MPDU.

  • Подтвердите несколько MPDUs в A-MPDU с одной системой координат подтверждения блока (BA). MAC принимает предварительно сконфигурированный сеанс BA между передатчиком и получателем A-MPDU.

  • Позвольте/запретите подтверждения. Это может быть сконфигурировано с помощью Ack Policy свойство.

  • Обеспечьте отдельные пределы повторной попытки для более коротких систем координат (меньше, чем порог RTS) и более длинных систем координат (больше, чем или равный порогу RTS). Эти пределы могут быть сконфигурированы с помощью Max Short Retries и Max Long Retries свойства.

  • Передайте несколько потоков данных с помощью нескольких - вводит, несколько - выводят (MIMO) возможность. Можно сконфигурировать эту возможность с помощью Number of Transmit Chains свойство. Это свойство применимо только когда значение PHY Tx Format свойство установлено в VHT, HE-SU, или HE-EXT-SU. Возможность MIMO может также использоваться в HT формат через MCS свойство. Область значений значений [0, 7], [8, 15], [16, 23], и [24, 31] соответствует один, два, три, и четыре потока данных соответственно.

  • Адаптируйте скорость передачи данных согласно условиям канала через Rate Adaptation Algorithm свойство. Это применимо только когда значение PHY Tx Format свойство установлено в Non-HT. Можно выбрать между Auto Rate Fallback (ARF) и Minstrel алгоритмы. Обеспечить постоянную скорость передачи данных в течение симуляции, Fixed-Rate опция доступна.

PHY:

Возможность сгенерировать и декодировать формы волны Non-HT, HT-MF, VHT, HE-SU и форматов HE-EXT-SU

Измерение пропускной способности

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

  • MCS: Скорость передачи данных PHY

  • PHY Tx Format: Формат передачи PHY

  • Packet Size: Пакетный размер приложения

  • Max A-MPDU Subframes: Максимальное количество подкадров в A-MPDU

  • Max Tx Queue Size: Размер очереди передачи MAC

Наряду с вышеупомянутыми параметрами, можно также варьироваться положения узла, усиления Tx & Rx, потеря канала, количество узлов в сети, параметрах конкуренции MAC, количестве цепей передачи и алгоритмов адаптации уровня, чтобы анализировать пропускную способность MAC. Этот пример демонстрирует измерение и анализ пропускной способности MAC различным пакетным размером в Application Traffic Generator блок.

Пакетный размер приложения

Пропускная способность прямо пропорциональна пакетному размеру приложения. Меньший пакетный размер приводит к большему количеству пакетов, которые будут переданы. На слое MAC существуют издержки состязательного времени для каждого переданного пакета. Это вызвано тем, что слой MAC убеждается, что канал неактивен для определенного количества времени (Раздел Refer 10.3.2.3 из [1]) прежде, чем передать любой пакет. Поэтому когда пакетный размер уменьшается, конкуренция наверху увеличивается получившийся в более низкой пропускной способности.

Настройка модели

Можно сконфигурировать пакетный размер приложения с помощью этих шагов:

  1. Открытая модель WLANMACThroughputMeasurementModel.slx

  2. Чтобы войти в подсистему узла, нажмите на направленную вниз стрелку в левой нижней части узла

  3. Чтобы открыть параметры маски приложения, дважды щелкают по Application Traffic Generator

  4. Чтобы включить приложение, установите App State к 'On'

  5. Сконфигурируйте значение Packet Size

Запустите симуляцию и наблюдайте пропускную способность. Калибровочные результаты TGax для теста-1a в [4] показывают ниже:

Вышеупомянутый график сравнивает калибровочные результаты для WLAN Toolbox против опубликованных результатов других компаний, перечисленных в [4]. Синяя кривая представляет результаты WLAN Toolbox, в то время как серые кривые представляют результаты других компаний.

Результаты симуляции

Симуляция модели генерирует:

  1. Визуализация во время выполнения, показывающая время, проведенное на конкуренции канала, передаче и приеме для каждого узла

  2. Дополнительная визуализация во время выполнения (во время симуляции) показ количества систем координат поставлена в очередь в очередях передачи MAC для выбранного узла.

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

  4. Файл MAT statistics.mat с подробной статистикой, полученной на каждом слое для каждого узла

Этот рисунок показывает изменения состояния MAC относительно времени симуляции.

Можно также наблюдать живое состояние буферов передачи слоя MAC с помощью кнопки 'Observe MAC queue lengths' в вышеупомянутой визуализации.

Этот рисунок показывает сетевую статистику в конце симуляции.

Проверка пропускной способности прикладного уровня калибровочными результатами TGax

Исследовательская группа TGax [4] опубликованная пропускная способность приложения заканчивается для различных сценариев. Можно наблюдать Слой 3 (выше слоя MAC) пропускная способность каждого узла в сети в столбце 'Пропускной способности' в 'statisticsTable', сохраненном в 'statistics.mat'. Калибровочные сценарии TGax для средства моделирования MAC опубликовали результаты пропускной способности приложения для Пользовательского дейтаграммного протокола (UDP) со слоями Logical Link Control (LLC) наверху.

Чтобы вычислить пропускную способность приложения от результатов симуляции используют код ниже:

% Load statistics.mat (Output of the simulation) file
simulationResults = load('statistics', 'statisticsTable');
% Statistics
stats = simulationResults.statisticsTable;

% Successfully transmitted MAC layer bytes in the network
totalMACTxBytes = sum(stats.MACTxBytes);

% UDP & LLC overheads (bytes)
udpOverhead = 36;
llcOverhead = 8;

% UDP & LLC overhead (bytes) in the network
udpAndLLCOverhead = sum(stats.MACTxSuccess)*(udpOverhead + llcOverhead);

% Successfully transmitted application bytes
totalAppTxBytes = totalMACTxBytes - udpAndLLCOverhead;

% Time at which last transmission is completed in the network (Microseconds)
simulationTime = max(stats.MACRecentFrameStatusTimestamp);

% Application throughput (Mbps)
applicationThroughput = (totalAppTxBytes*8)/simulationTime;
disp(['Application Throughput = ' num2str(applicationThroughput) ' Mbps']);
Application Throughput = 4.7276 Mbps

Пропускная способность приложения для различных калибровочных сценариев TGax построена против различных размеров Модуля эксплуатационных данных MAC (MSDU) для времени симуляции 30 секунд как показано ниже:

Дальнейшее исследование

Параметры конфигурации

Можно изменить эти параметры конфигурации, чтобы далее исследовать этот пример:

  • Прикладной уровень: Доступ к категории и пакетному интервалу

  • Слой MAC: порог RTS, размер очереди Tx, скорость передачи данных, короткий предел повторной попытки, долго повторяет предел, передавая формат системы координат, агрегацию MPDU, ack политика, количество цепей передачи и алгоритмов адаптации уровня

  • PHY: PHY Tx усиление, PHY Rx усиление и фигура шума Rx

  • Моделирование канала: Релеевское замирание, свободное пространство pathloss, потеря распространения области значений и пакет получает область значений

  • Положения узла с помощью средства выделения положения узла

  • Состояние каждого узла может визуализироваться во время времени выполнения через настройку, доступную в блоке Visualizer

  • По умолчанию, передатчик PHY и блоки получателя, запущенные в Interpreted execution режим. Для более длинного времени симуляции сконфигурируйте все блоки к Code generation режим для лучшей производительности.

Связанные примеры

Отошлите эти примеры для дальнейшего исследования:

Этот пример позволяет вам создать и сконфигурировать мультиузел 802,11 сети с помощью модели Simulink в анализе пропускная способность прикладного уровня и MAC. В этой модели пропускная способность MAC, полученная через результаты симуляции, используется, чтобы вычислить пропускную способность прикладного уровня. Эта модель подтверждена с помощью сценариев Поля 3 (Тесты 1a, 1b, и 2a) заданный в методологии [3] оценки TGax, чтобы подтвердить, что это выполняет IEEE 802.11 [1]. Этот пример приходит к заключению, что расчетная пропускная способность прикладного уровня в области значений минимальной и максимальной пропускной способности, заданной в опубликованных калибровочных результатах [4].

Приложение

Помощник функционирует, и объекты, используемые в этом примере:

  1. edcaFrameFormats.m: Создайте перечисление для форматов системы координат PHY.

  2. edcaNodeInfo.m: Возвратите Мак адрес узла.

  3. edcaPlotQueueLengths.m: Постройте длины очереди MAC в симуляции.

  4. edcaPlotStats.m: Постройте изменения состояния MAC относительно времен симуляции.

  5. edcaStats.m: Создайте перечисление для статистики симуляции.

  6. edcaUpdateStats.m: Обновите статистику симуляции.

  7. helperAggregateMPDUs.m: Сгенерируйте A-MPDU путем создания и добавления MPDUs, содержащего MSDUs в MSDULIST.

  8. helperSubframeBoundaries.m: Возвратите информацию о подкадрах A-MPDU.

  9. phyRx.m: операции PHY Модели связаны с пакетным приемом.

  10. phyTx.m: операции PHY Модели связаны с пакетной передачей.

  11. edcaApplyFading.m: Примените эффект Релеевского замирания на форме волны.

  12. heSIGBUserFieldDecode.m: Декодируйте пользовательское поле HE-SIG-B.

  13. heCPECorrection.m: Оцените и откорректируйте общую ошибку фазы.

  14. heSIGBCommonFieldDecode.m: Декодируйте общее поле HE-SIG-B.

  15. heSIGBMergeSubchannels.m: Объедините подканалы HE-SIG-B на 20 МГц.

  16. addMUPadding.m: Добавьте многопользовательское дополнение PSDU.

  17. macQueueManagement.m: Создайте объект управления очереди ВЛАНА МАКА.

  18. roundRobinScheduler.m: Создайте циклический объект планировщика.

  19. calculateSubframesCount.m: Возвратите количество подкадров, которые будут агрегированы.

  20. interpretHESIGABitsFailCheck.m: Интерпретируйте биты "SIG HE" с проверкой отказа.

  21. interpretVHTSIGABitsFailCheck.m: Интерпретирует биты в поле VHT-SIG-A

  22. rateAdaptationARF.m: Создайте объект алгоритма автоматической нейтрализации уровня (ARF).

  23. rateAdaptationMinstrelNonHT.m: Создайте объект алгоритма менестреля.

Ссылки

  1. Станд. IEEE 802.11™. "Беспроводное Среднее управление доступом (MAC) LAN и Физический уровень (PHY) Технические требования". Стандарт IEEE для Телекоммуникаций информационных технологий и обмена информацией между системами, Локальными и специфичными для городских компьютерных сетей требованиями.

  2. IEEE P802.11ax™/D4.1. "Поправка 6: Улучшения для Высокой эффективности WLAN.." Спроектируйте Стандарт для Информационных технологий - Телекоммуникаций и обмена информацией между системными Локальными сетями и городскими компьютерными сетями - Конкретными требованиями - Часть 11: Беспроводное Среднее управление доступом (MAC) LAN и Физический уровень (PHY) Технические требования.

  3. IEEE 802.11-14/0571r12. "11ax Методология Оценки". IEEE P802.11P: Беспроводная LAN.

  4. Барон, Стефан., Nezou, Патрис., Guignard, Ромен., и Viger, Паскаль. "Калибровочные результаты MAC". Представление в IEEE P802.11 - AX исследовательской группы, сентябрь 2015.