802.11 ax下行OFDMA多节点系统级模拟
这个例子展示了如何建模WLAN多节点下行(DL)正交频分多址接入(OFDMA)网络组成的IEEE®802.11 ax™(1接入点(AP)和四个站(斯塔斯)。
使用这个示例中,您可以:
从AP模型DL OFDMA交流斯塔斯和两个DL帧交换序列之间切换。
添加一个自定义调度程序。
比较正交频分多路(OFDM)和OFDMA吞吐量。
查看吞吐量等性能指标,包延迟、丢包和其他网络相关指标的DL OFDMA沟通使用statistics.mat
文件。
OFDM和OFDMA
IEEE 802.11 ax标准介绍显著增强了现有802.11交流标准(2]。的一个重要改进是OFDMA,这是OFDM数字调制技术的扩展到多用户的环境中。OFDMA的根本目标是有效地使用可用的频率空间。OFDMA分区在信道带宽为多个互斥的部分波段,称为资源单位(俄文)。通过划分信道带宽,多个用户可以同时访问通道。因此,802.11 ax支持并发传输的数据包金宝app到多个用户。
例如,传统20 MHz通道可以分割成一个最大的九子信道。802.11 ax美联社可以同时传输数据包到九802.11使用OFDMA ax斯塔斯。帧减少了竞争过度开销的同时传输媒介访问控制层(MAC)和物理(体育)序言开销最小化。在OFDMA,美联社控制俄文的分配。
802.11 ax标准指定了两种类型的OFDMA:
DL OFDMA -美联社传送数据包到多个斯塔斯同时使用不同的每个STA俄文。
上行(UL) OFDMA -多个斯塔斯同时AP发送数据包,每个STA使用不同的俄文。
在这个图中,802.11 n / ac / ax美联社传送DL帧独立四个OFDM斯塔斯。美联社使用整个通道带宽与一个OFDM STA沟通。同样,一个OFDM STA使用整个信道带宽与802.11 n /交流/沟通ax美联社UL OFDM传输。
这个图显示了OFDMA传播。802.11 ax美联社分区通道带宽成俄文四OFDMA斯塔斯在连续的基础上同时DL传输。
WLAN系统级仿真场景
假设美联社和斯塔斯preassociated这意味着美联社和斯塔斯开始之前连接的模拟。这个图显示了一个WLAN系统级场景模型DL AP和四个斯塔斯之间的通信。
在前面的图:
美联社同时DL数据传送所有斯塔斯。
斯塔斯回应UL认可框架在接收来自美联社的DL数据帧。
配置仿真参数
通过使用指定仿真时间以毫秒为单位simulationTime
变量。想象生活状态转换图的所有节点,设置showLiveStateTransitionPlot
变量来真正的
。包含网络可视化表统计数据的仿真,设置displayStatistics
变量来真正的
。
simulationTime = 100;showLiveStateTransitionPlot = true;displayStatistics = true;
设置随机数生成器的种子1
。随机数生成的种子值控制模式。生成的随机数种子值影响倒扣柜台选择在MAC层PHY和路径损耗模型。为高保真效果,改变种子值和平均结果多个模拟。
rng (1,“combRecursive”);
访问所有辅助文件在这个例子中,添加了mlWLANSystemSimulation
文件夹到MATLAB路径
目录(genpath (fullfile (pwd,“mlWLANSystemSimulation”)));
节点
通过使用这些参数配置WLAN节点。
numNodes
——指定所需的网络中的节点数量。nodePositions
——在一个指定节点的位置 - - - - - -, - - - - - -, ——笛卡儿坐标系统。nodeConfig
——指定每个节点的MAC层和物理层配置。
指定网络中节点的数量。
numNodes = 5;
WLAN节点的位置指定为一个numNodes-by-3矩阵。单位是米。的每一行向量指定节点的笛卡尔坐标,从第一个节点开始。
nodePositions = [0 0 0;30 0 0;30 0 0;-30年0 0;-30 0 0];
为每个WLAN节点作为指定的配置numNodes
1的向量。配置为一个节点wlanNodeConfig
结构。的wlanNodeConfig.mat
文件指定了MAC、PHY和通道配置节点的结构。初始化默认节点配置节点的配置,然后配置参数在每个节点的PHY和MAC。关于配置参数的更多信息在MAC,体育频道,看到WLAN节点组成和配置。
这个例子实现了这些AP节点的配置参数。
MaxDLStations
斯塔斯的最大数量,可以安排在DL多用户(μ)传播。DLOFDMAFrameSequence
-类型的帧交换序列使用DL OFDMAμ传输。
如果你想使用DLμ与触发响应帧调度(TRS)控制和UL块ack (BA)序列,集DLOFDMAFrameSequence
为1。在这种交换帧序列,所有的斯塔斯美联社时间表发送立即响应。DL的TRS控制领域框架进行调度信息。
如果你想使用DL和μμ帧块ack请求(BAR)触发和UL英航序列,集DLOFDMAFrameSequence
2。在这个框架交换序列,美联社还征求确认帧从多个预定斯塔斯使用MU-BAR触发帧。
加载默认节点配置文件和设置默认节点配置参数的所有节点。
负载(“wlanNodeConfig.mat”);nodeConfig = repmat (wlanNodeConfig 1 numNodes);
配置美联社。
nodeConfig (1)。节点名=“美联社”;nodeConfig (1)。:NodePosition = nodePositions (1);nodeConfig (1)。TxFormat =“HE_MU”;nodeConfig (1)。BandAndChannel = {36 [5]};nodeConfig (1)。带宽= 20;%在兆赫nodeConfig (1)。TxPower = 5;%的dBmnodeConfig (1)。TxMCS = 8;nodeConfig (1)。DisableRTS = true;%的旗帜来启用或禁用MU-RTS / CTS交换nodeConfig (1)。DisableAck = false;%的旗帜来启用或禁用UL确认nodeConfig (1)。MaxSubframes = 5;nodeConfig (1)。MaxDLStations= 4;%设置最大数量的DL斯塔斯nodeConfig (1)。DLOFDMAFrameSequence = 1;%设置DL帧交换序列
配置STA1。
nodeConfig (2)。节点名=“STA1”;nodeConfig (2)。NodePosition = nodePositions (2);nodeConfig (2)。BandAndChannel = {36 [5]};nodeConfig (2)。带宽= 20;%在兆赫
配置STA2。
nodeConfig (3)。节点名=“STA2”;nodeConfig (3)。NodePosition = nodePositions (3);nodeConfig (3)。BandAndChannel = {36 [5]};nodeConfig (3)。带宽= 20;%在兆赫
配置STA3。
nodeConfig (4)。节点名=“STA3”;nodeConfig (4)。:NodePosition = nodePositions(4日);nodeConfig (4)。BandAndChannel = {36 [5]};nodeConfig (4)。带宽= 20;%在兆赫
配置STA4。
nodeConfig (5)。节点名=“STA4”;nodeConfig (5)。:NodePosition = nodePositions(5日);nodeConfig (5)。BandAndChannel = {36 [5]};nodeConfig (5)。带宽= 20;%在兆赫
应用程序流量
的wlanTrafficConfig.mat
文件包含在每个节点配置应用程序结构。设置在AP DL交通,设置SourceNode
和DestinationNode
中的值trafficConfig
结构与相应的AP和STA节点名称,分别。
配置多个应用程序,执行这些步骤。
缺省配置复制到的每个元素
trafficConfig
结构向量。更新交通配置新节点。
关于配置参数的更多信息,请参阅WLAN节点组成和配置。
加载应用程序流量配置WLAN节点。
负载(“wlanTrafficConfig.mat”);trafficConfig = repmat (wlanTrafficConfig 1 4);
为STA1配置DL应用程序流量。
trafficConfig (1)。SourceNode =“美联社”;trafficConfig (1)。DestinationNode =“STA1”;trafficConfig (1)。DataRateKbps = 100000;trafficConfig (1)。PacketSize = 100;%的字节trafficConfig (1)。AccessCategory = 0;%最大的努力(0)背景(1)、视频(2)和声音(3)
为STA2配置DL应用程序流量。
trafficConfig (2)。SourceNode =“美联社”;trafficConfig (2)。DestinationNode =“STA2”;trafficConfig (2)。DataRateKbps = 100000;trafficConfig (2)。PacketSize = 100;%的字节trafficConfig (2)。AccessCategory = 0;%最大的努力(0)背景(1)、视频(2)和声音(3)
为STA3配置DL应用程序流量。
trafficConfig (3)。SourceNode =“美联社”;trafficConfig (3)。DestinationNode =“STA3”;trafficConfig (3)。DataRateKbps = 100000;trafficConfig (3)。PacketSize = 100;%的字节trafficConfig (3)。AccessCategory = 0;%最大的努力(0)背景(1)、视频(2)和声音(3)
为STA4配置DL应用程序流量。
trafficConfig (4)。SourceNode =“美联社”;trafficConfig (4)。DestinationNode =“STA4”;trafficConfig (4)。DataRateKbps = 100000;trafficConfig (4)。PacketSize = 100;%的字节trafficConfig (4)。AccessCategory = 0;%最大的努力(0)背景(1)、视频(2)和声音(3)
创建WLAN场景
使用hCreateWLANNodes
辅助函数来执行这些任务:
创建WLAN节点与应用程序(应用程序),MAC层和物理层层配置指定的参数。
添加一个自定义调度算法。
这个示例使用抽象在每个WLAN节点,MAC层和物理层和支持OFDMA只抽象MAC层和物理层。金宝app关于抽象MAC层和物理层的更多信息,请参阅开始使用MATLAB的WLAN系统级仿真的例子。
选择为每个传输通过斯塔斯hSchedulerRoundRobin
函数。你可以修改这个函数将自己的算法通过继承或实现一个新的对象hScheduler
helper函数。
每个节点之间随机TGax衰落信道模型,这个示例使用”TGax评价方法附录1
“PHY抽象。衰落信道建模时,包传输成功的概率依赖于这些因素。
信道质量STA和AP之间选择的俄文。
调制和编码方案(MCS)
在这个例子中,调度程序没有考虑信道的质量每个STA和美联社之间。因此,如果一个美联社和STA之间的信道质量差和选定的MCS高,包丢失很可能发生。如果你不想模型频率选择衰落信道之间的节点,集PHYAbstractionType
“TGax仿真场景MAC校准
”。
在MAC配置调度算法。
schedulerAlgorithm = hSchedulerRoundRobin (numNodes);wlanNodes = hCreateWLANNodes (nodeConfig trafficConfig,“MACScheduler”schedulerAlgorithm,…“MACFrameAbstraction”,真的,…“PHYAbstractionType”,“TGax评价方法附录1”);
模拟
初始化可视化参数和模拟WLAN的场景中使用hWLANStatsLogger
和hWirelessNetworkSimulator
辅助函数,分别。
visualizationInfo =结构;visualizationInfo。节点= wlanNodes; statsLogger = hWLANStatsLogger(visualizationInfo);如果showLiveStateTransitionPlot hPlotStateTransition (visualizationInfo);结束
初始化无线网络模拟器。
networkSimulator = hWirelessNetworkSimulator (wlanNodes);
安排一个事件刷新状态转换可视化。当你从MATLAB®命令提示符运行示例,这个事件暂停执行刷新可视化后每5毫秒。
scheduleEvent (networkSimulator @()暂停(0.001),[],0 5);
调度事件的更多信息,输入这个命令在MATLAB®命令提示符。
帮助hWirelessNetworkSimulator.scheduleEvent
运行指定的所有节点的网络仿真时间和可视化节点的状态转换时期。
运行(networkSimulator simulationTime);
结果
在每个节点,仿真了这些网络统计数据。
MAC吞吐量
认为国家的时间,空闲状态,发送数据的状态
发射机和接收机统计数据的应用,MAC层和物理层
MAT-file检索统计和拯救他们。
统计= getStatistics (statsLogger displayStatistics);
统计数据表乐队5和通道数量36
statisticsTable =157×5表美联社STA1 STA2 STA3 STA4 __________ _____ _____ _____ _____频率5.18 5.18 5.18 5.18 5.18 ActiveOperationInFreq 1 1 1 1 1 AppTxAC_BE 50004 0 0 0 0 AppTxAC_BK 0 0 0 0 0 AppTxAC_VI 0 0 0 0 0 0 0 0 0 0 AppTxBytes AppTxAC_VO 5.0004 e + 06 0 0 380 760 579 170 0 0 0 AppRxAC_BE AppRxAC_BK 0 0 0 0 0 AppRxAC_VI 0 0 0 0 0 AppRxAC_VO 0 0 0 0 0 AppRxBytes 0 38000 76000 57900 17000 AppTxOverflow 47257 0 0 0 0 AppAvgPacketLatency 0 0 43595 27472 28663 42062 43595 27472 28663 42062 AppAvgPacketLatencyAC_BE AppAvgPacketLatencyAC_BK 0 0 0 0 0⋮
保存(“statistics.mat”,“统计数据”);
您可以访问所有的数据从这个表使用statistics.mat
文件。更多关于每个节点的数据捕获的信息,明白了统计在WLAN系统级模拟。
情节的吞吐量、丢包率和平均在每个节点数据包延迟。这个图显示Mbps的吞吐量和丢包率,成功的比例数据传输到数据传输,在美联社和斯塔斯。情节在STA也显示了平均数据包延迟。平均数据包延迟代表平均延时,STA带来接受美联社的DL交通。
hPlotNetworkStats(统计,wlanNodes);
在仿真结束时,删除mlWLANSystemSimulation
文件夹的路径。
rmpath (genpath (fullfile (pwd,“mlWLANSystemSimulation”)));
清理持久变量中使用函数。
清晰的hPlotStateTransition;
OFDM和OFDMA的吞吐量比较
生成吞吐量结果OFDM和OFDMA传输场景。
AP最多140斯塔斯在OFDMA配置。配置这个场景中,设置
DLOFDMAFrameSequence
参数为1。AP最多140斯塔斯在OFDMA配置。配置这个场景中,设置
DLOFDMAFrameSequence
参数2。AP为最多140斯塔斯OFDM配置。配置这个场景中,设置
TxFormat
美联社节点的节点参数“HE_SU”和MaxDLStations
为1。
在这些模拟PHYAbstractionType
设置为“TGax仿真场景MAC校准
配置节点”,美联社与此表中所示的值。
情节吞吐量结果的函数的数量DL OFDM斯塔斯(他苏)
他和OFDMA(μ)
配置。在每个模拟运行、检索每个节点的吞吐量值statistics.mat
文件。计算总吞吐量通过聚合这些吞吐量值。
情节的吞吐量结果OFDM和OFDMA配置。
plotThroughput;
上面的图显示,802.11 ax OFDM和OFDMA的吞吐量比较两个DL帧交换序列。获得的吞吐量和OFDMA两帧交换序列使用OFDM大于获得的吞吐量。增加DL斯塔斯的数量没有对OFDM吞吐量的影响。用一个OFDMA DL序列获得的吞吐量DLOFDMAFrameSequence
设置为1
高于序列DLOFDMAFrameSequence
设置为2
由于增加了对传输的开销MU-BAR作为一个单独的框架。
这个例子使您能够模型DL OFDMA通信在多节点IEEE 802.11 ax网络。应用程序配置使您能够配置多个应用程序不同的目的地斯塔斯。示例使用循环调度策略选择斯塔斯下传播。俄文是固定的分配对于一个给定的用户数量和带宽。仿真结果证实,吞吐量在美联社OFDMA是高于使用OFDM获得的吞吐量。
本地函数
函数plotThroughput图;%的DL斯塔斯numStations = [1 2 6 8 9 15 20 25 30 40 50 60 74 100 140);%吞吐量结果OFDMA配置(Mbps)节点参数,DLOFDMAFrameSequence设置为1。throughputOFDMASeq1 = [23.3623 36.5026 47.0532 60.1624 69.2308 115.3846 150.6410 188.3013 221.1538 288.4615 360.3099 423.0769 498.0769 509.1404 - 509.9359);%吞吐量结果OFDMA配置(Mbps)节点参数,DLOFDMAFrameSequence设置为2。throughputOFDMASeq2 = [20.4911 32.0026 43.2692 57.6081 63.3739 105.7692 137.7295 168.2692 197.1154 250.0000 304.4872 346.1538 403.2051 414.4166 - 414.5658);%吞吐量结果OFDM配置(Mbps)。throughputOFDM = [33.76 33.76 33.76 33.76 33.76 33.76 33.76 33.76 33.76 33.76 33.76 33.76 33.76 33.76 - 33.76);%的情节从OFDM仿真获得的吞吐量情节(numStations throughputOFDM,“o”);%保留OFDM吞吐量的阴谋持有在;%的情节从OFDMA模拟1序列获得的吞吐量情节(numStations throughputOFDMASeq1,“- x”);%保留OFDM吞吐量的阴谋持有在;%的情节从OFDMA模拟2序列获得的吞吐量情节(numStations throughputOFDMASeq2,”——+ ');网格在;包含(“DL站的数量”);ylabel (吞吐量(Mbps)的);传奇({“OFDM”,“OFDMA”+换行符+“DL-PPDU TRS控制”,“OFDMA”+换行符+“DL-PPDU MU-BAR触发”},“位置”,“northeastoutside”);标题(“下行吞吐量美联社”);结束
引用
-2021年[1]IEEE Std 802.11 ax™。“第六修正案:增强高效WLAN。”Draft Standard for Information technology - Telecommunications and information exchange between systems Local and metropolitan area networks - Specific requirements -Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications.
[2]IEEE Std 802.11 -2020。“无线局域网介质访问控制(MAC)和物理层(体育)规范。”IEEE Standard for Information technology-Telecommunications and information exchange between systems, Local and metropolitan area networks-Specific requirements.