В этом примере показано, как смоделировать сеть WLAN, состоящую из точки доступа (AP) IEEE® 802.11ax™ [1] и станции (STA) при помощи WLAN Toolbox™.
Используя этот пример, вы можете:
Симулируйте мультиузел система WLAN путем конфигурирования прикладного уровня (APP), среднее управление доступом (MAC) и физический уровень (PHY) параметры в каждом узле.
Восходящая и нисходящая связь модели между AP и STA.
Переключитесь между абстрактной и полной моделью MAC и PHY.
Визуализируйте время, проведенное каждым узлом в неактивном, конкуренции, передаче и состояниях приема.
Просмотрите показатели производительности, такие как пропускная способность, задержка, пакетная потеря и другие связанные с сетью метрики при помощи statistics.mat
файл.
Этот пример показывает вам, как смоделировать сеть WLAN с восходящей и нисходящей связью между AP (Узел 1) и STA (Узел 2). Этот пример принимает, что AP и STA предварительно сопоставлены. Предварительная ассоциация подразумевает, что AP и STA соединяются перед запуском симуляции.
Этот рисунок показывает связь между AP и STA.
Этот рисунок показывает рабочий процесс в качестве примера.
Этот пример проверяет эффективность симуляции по результатам сценариев Поля 3 и Поля 5, заданных в методологии [2] оценки TGax. Чтобы подтвердить податливость со стандартом IEEE 802.11, этот пример подтверждает сетевую пропускную способность, которая вычисляется для сценариев симуляции TGax [3] против опубликованной калибровки, следует из Исследовательской группы TGax.
Задайте время симуляции (в миллисекундах) при помощи simulationTime
переменная. Чтобы визуализировать живой график изменения состояния для всех узлов, установите showLiveStateTransitionPlot
переменная к true
. Чтобы визуализировать таблицу, содержащую сетевую статистику в конце симуляции, установите displayStatistics
переменная к true
.
Установите seed для генератора случайных чисел к 1. Начальное значение управляет шаблоном генерации случайных чисел. Случайное число, сгенерированное начальным значением, влияет на выбор счетчика возврата в MAC и моделирование потери на пути в PHY. Для высококачественных результатов симуляции измените начальное значение и насчитайте результаты по нескольким симуляциям.
rng(1,'combRecursive'); % Seed for random number generator simulationTime = 1000; % Simulation time in milliseconds showLiveStateTransitionPlot = true; % Enable live state transition plot for all nodes displayStatistics = true; % Display statistics at the end of the simulation % To access all of the helper files in this example, add the % mlWLANSystemSimulation folder to the MATLAB path addpath(genpath(fullfile(pwd,'mlWLANSystemSimulation')));
Сконфигурируйте узлы WLAN при помощи этих параметров.
numNodes
- Задает желаемое количество узлов в сети
nodePositions
- Задает положение узлов в x
Y
-, и z
- Декартова система координат
nodeConfig
- Задает MAC и настройку PHY каждого узла
Задайте количество узлов в сети путем изменения значений numNodes
, nodePositions
, nodeConfig
, и trafficConfig
параметры.
numNodes = 2;
Задайте положения узлов WLAN как numNodes
- 3 матрицы, где numNodes
количество узлов в сети. Каждая строка задает Декартовы координаты узла, начинающего с первого узла.
nodePositions = [10 0 0; 20 0 0]; % In meters
Задайте настройку для каждого узла WLAN как numNodes
- 1 вектор. Настройкой для узла является wlanNodeConfig
структура.
wlanNodeConfig.mat
файл задает MAC, PHY и конфигурационную структуру канала узла. Конфигурирование узлов включает подготовку настройки узла по умолчанию и затем конфигурирование параметров в PHY и MAC каждого узла. В каждом узле можно сконфигурировать TxFormat
пропускная способность
, BandAndChannel
, MPDUAggregation
, и другие такие параметры в nodeConfig
структура. Для получения дополнительной информации о параметрах конфигурации в MAC, PHY и канал, видят Состав Узла WLAN и Настройку.
% Default configuration for all of the nodes load('wlanNodeConfig.mat'); nodeConfig = repmat(wlanNodeConfig,1,numNodes); % Configure the AP nodeConfig(1).NodePosition = nodePositions(1,:); nodeConfig(1).TxFormat = 'HE_SU'; nodeConfig(1).BandAndChannel = {[5 36]}; nodeConfig(1).Bandwidth = 20; % MHz nodeConfig(1).MPDUAggregation = true; nodeConfig(1).TxMCS = 2; nodeConfig(1).NumTxChains = 1; nodeConfig(1).DisableRTS = false; nodeConfig(1).DisableAck = false; % Configure the STA nodeConfig(2).NodePosition = nodePositions(2,:); nodeConfig(2).TxFormat = 'HE_SU'; nodeConfig(2).BandAndChannel = {[5 36]}; nodeConfig(2).Bandwidth = 20; % MHz nodeConfig(2).MPDUAggregation = true; nodeConfig(2).TxMCS = 2; nodeConfig(2).NumTxChains = 1; nodeConfig(2).DisableRTS = false; nodeConfig(2).DisableAck = false;
wlanTrafficConfig.mat
файл задает структуру, чтобы сконфигурировать приложение в узле. К нисходящему трафику модели в AP к STA, набор SourceNode
и DestinationNode
значения в trafficConfig
структура с AP и числами узла STA, соответственно. К восходящему трафику модели в AP от STA, набор SourceNode
и DestinationNode
значения в trafficConfig
структура с STA и числами узла AP, соответственно.
Чтобы сконфигурировать несколько приложений, выполните эти шаги.
Скопируйте настройку по умолчанию в каждый элемент trafficConfig
вектор структуры.
Обновите настройку трафика для новых элементов.
Для получения дополнительной информации о параметрах конфигурации, см. Состав Узла WLAN и Настройку.
% Load the application traffic configuration for WLAN nodes load('wlanTrafficConfig.mat'); % Copy the default configuration for all of the nodes trafficConfig = repmat(wlanTrafficConfig,1,numNodes); % Configure downlink application traffic trafficConfig(1).SourceNode = 1; % AP node ID trafficConfig(1).DestinationNode = 2; % STA node ID trafficConfig(1).DataRateKbps = 100000; trafficConfig(1).PacketSize = 1500; % In bytes trafficConfig(1).AccessCategory = 0; % Best Effort (0), Background (1), Video (2), and Voice (3) % Configure uplink application traffic trafficConfig(2).SourceNode = 2; % STA node ID trafficConfig(2).DestinationNode = 1; % AP node ID trafficConfig(2).DataRateKbps = 100000; trafficConfig(2).PacketSize = 1500; % In bytes trafficConfig(2).AccessCategory = 0; % Best Effort (0), Background (1), Video (2), and Voice (3)
hCreateWLANNodes
функция помощника позволяет:
Создайте узлы WLAN с APP, MAC и слоями PHY, сконфигурированными предыдущими параметрами.
Добавьте пользовательские алгоритмы в APP, MAC и слоях PHY путем изменения кода настройки алгоритма в hCreateWLANNodes
функция помощника.
По умолчанию, hCreateWLANNodes
функция помощника конфигурирует абстрагированный MAC и PHY в каждом узле WLAN.
В передатчике и приемнике, моделируя полную обработку MAC включает полную генерацию системы координат MAC на слое MAC. Точно так же моделирующая полная обработка PHY включает полные операции, связанные с передачей формы волны и приемом через исчезающий канал. Когда симуляция больших сетей, полного MAC и обработки PHY является в вычислительном отношении дорогой.
В абстрактном MAC узел не генерирует или декодирует любые системы координат на слое MAC. Точно так же в абстрактном PHY, узел не генерирует или декодирует любые формы волны в PHY. MAC и абстракция PHY позволяют вам минимизировать сложность и длительность симуляций уровня системы. Для получения дополнительной информации об абстракции PHY смотрите Абстракцию Физического уровня для примера Симуляции Уровня системы.
hCreateWLANNodes
функция помощника позволяет вам переключиться между абстрактной и полной моделью MAC или PHY путем конфигурирования MACFrameAbstraction
и PHYAbstractionType
введите параметры. Допустимые значения для этих параметров:
MACFrameAbstraction
-
TRUE или FALSE
PHYAbstractionType
- ‘Приложение 1 методологии оценки TGax’ (значение по умолчанию), ‘калибровка MAC сценариев симуляции TGax’ или 'ни один'
Если вы устанавливаете PHYAbstractionType
к 'TGax Evaluation Methodology Appendix 1'
, PHY оценивает эффективность ссылки с моделью канала TGax при помощи эффективного сигнала к интерференции плюс шумовое отношение (SINR) отображение. В качестве альтернативы, если вы устанавливаете PHYAbstractionType
к 'TGax Simulation Scenarios MAC Calibration'
PHY принимает пакетный отказ на интерференции, на самом деле не вычисляя эффективность ссылки. Чтобы использовать полный PHY, установите значение PHYAbstractionType
к 'None'
.
MACFrameAbstraction = true; PHYAbstractionType = "TGax Evaluation Methodology Appendix 1"; wlanNodes = hCreateWLANNodes (nodeConfig, trafficConfig,... 'MACFrameAbstraction', MACFrameAbstraction,... 'PHYAbstractionType', PHYAbstractionType);
Эта таблица показывает, как переключиться между абстрактным и полным MAC или PHY путем конфигурирования значений MACFrameAbstraction
и PHYAbstractionType
введите параметры.
Чтобы инициализировать параметры визуализации и симулировать сценарий WLAN, используйте hStatsLogger
и hWirelessNetworkSimulator
помощник функционирует, соответственно.
% Initialize the visualization parameters visualizationInfo = struct; visualizationInfo.Nodes = wlanNodes; visualizationInfo.NodeNames = {'AP','STA'}; statsLogger = hStatsLogger(visualizationInfo); % Configure state transition visualization if showLiveStateTransitionPlot hPlotStateTransition(visualizationInfo); end % Initialize the wireless network simulator networkSimulator = hWirelessNetworkSimulator(wlanNodes);
Сетевое средство моделирования обеспечивает гибкость, чтобы запланировать пользовательские события в симуляции при помощи scheduleEvent
объектная функция.
Например, каждый раз, когда вы вызываете средство моделирования, можно запланировать событие, чтобы обновить визуализацию изменения состояния. Когда вы запускаете пример из командной строки MATLAB, это событие приостанавливают выполнение, чтобы обновить визуализацию после каждых 5 миллисекунд.
Чтобы запланировать событие, задайте указатель на функцию, входные параметры, время, чтобы вызвать событие и периодичность события.
scheduleEvent(networkSimulator,@() pause(0.001),[],0,5);
Для получения дополнительной информации о планировании событий введите эту команду в командной строке MATLAB.
help hWirelessNetworkSimulator.scheduleEvent
Запустите все узлы в сети для заданного времени симуляции и визуализируйте периоды изменения состояния узлов.
run(networkSimulator,simulationTime);
Очистите персистентные переменные, используемые в функциях.
clear hPlotStateTransition;
В каждом узле симуляция получает эти сетевые статистические данные.
Пропускная способность MAC
Время проведено в спорить состоянии, состоянии ожидания и передающем состоянии данных
Tx и статистика Rx в APP, MAC и PHY
Получите статистику и сохраните их в MAT-файле.
statistics = getStatistics(statsLogger,displayStatistics);
Statistics table for band 5 and channel number 36
statisticsTable=113×2 table
AP STA
__________ __________
ActiveOperationInFreq 1 1
AppTxAC_BE 8334 8334
AppTxAC_BK 0 0
AppTxAC_VI 0 0
AppTxAC_VO 0 0
AppTxBytes 1.2501e+07 1.2501e+07
AppRxAC_BE 863 766
AppRxAC_BK 0 0
AppRxAC_VI 0 0
AppRxAC_VO 0 0
AppRxBytes 1.2945e+06 1.149e+06
AppTxOverflow 7312 7215
AppAvgPacketLatency 2.4389e+05 2.7887e+05
AppAvgPacketLatencyAC_BE 2.4389e+05 2.7887e+05
AppAvgPacketLatencyAC_BK 0 0
AppAvgPacketLatencyAC_VI 0 0
⋮
save('statistics.mat','statistics');
Можно получить доступ ко всем статистическим данным из предыдущей таблицы при помощи statistics.mat
файл. Для получения дополнительной информации о статистике, полученной в каждом узле, смотрите Статистику, Полученную в Симуляции Уровня системы WLAN.
hPlotNetworkStats
функция помощника анализирует собранные статистические данные и строит пропускную способность, отношение пакетной потери и среднюю пакетную задержку в каждом узле. Этот график показывает пропускную способность (в Мбит/с) и отношение пакетной потери (отношение неудачных передач данных к общим передачам данных) в AP и STA. График также показывает среднюю пакетную задержку, испытанную в STA. Средняя пакетная задержка показывает среднюю задержку, что STA подвергается, чтобы получить нисходящий трафик от AP.
hPlotNetworkStats(statistics,wlanNodes);
В конце симуляции удалите mlWLANSystemSimulation папку из пути.
rmpath(genpath(fullfile(pwd,'mlWLANSystemSimulation')));
IEEE P802.11ax™/D4.1. "Поправка 6: Улучшения для Высокой эффективности WLAN". Спроектируйте Стандарт для Информационных технологий - Телекоммуникаций и обмена информацией между системными Локальными сетями и городскими компьютерными сетями - Конкретными требованиями - Часть 11: Беспроводное Среднее управление доступом (MAC) LAN и Физический уровень (PHY) Технические требования.
“Сценарии симуляции TGax”, документ. IEEE 802.11-14/0980r16.
“11ax методология оценки”, документ. IEEE 802.11-14/0571r12.