主要内容

802.11 MAC和应用程序吞吐量测量

这个例子展示了如何使用SimEvents®,statflow®和WLAN Toolbox™测量多节点802.11a/n/ac/ax网络的MAC和应用层吞吐量。本例中提供的系统级模型包括如下功能:配置应用层流量的优先级、生成和解码Non-HT、HT-MF、VHT、HE-SU和HE-EXT-SU格式波形的能力、MPDU聚合和启用MPDU块确认。使用该模型计算的应用层吞吐量根据TGax任务组公布的校准结果进行了验证[4]对于TGax评估方法中规定的框3场景(测试1a、1b和2a)[3.].所获得的应用层吞吐量在发布校准结果中规定的最小和最大吞吐量范围内[4].

802.11网络的吞吐量

IEEE®802.11™工作组不断向802.11规范添加功能[1],以提高无线局域网的吞吐量和可靠性。吞吐量是指在一段时间内传输的数据量。MAC层吞吐量是指MAC层在一段时间内成功传输的数据量。MAC协议数据单元MPDU (MAC protocol data unit)是MAC层的传输单元。在802.11n中,为了提高吞吐量,引入了MPDU聚合。当支持MPDU聚合时,MAC层将多个MPDU聚合成金宝app一个聚合的MPDU (A-MPDU)进行传输。这减少了传输多帧时信道争用的开销,从而提高了吞吐量。在802.11 ac (1]及802.11ax [2, A-MPDU长度的最大限制被增加,从而在WLAN网络中获得更好的吞吐量。

802.11网络模型

此示例使用五个节点模拟一个WLAN网络,如图所示。这些节点利用具有物理载波侦听和虚拟载波侦听的碰撞避免(CSMA / CA)的载波感性多次访问。物理载波感测使用清晰的通道评估(CCA)机制来确定介质是否在发送之前忙。虽然,虚拟载波传感器使用RTS / CTS握手来防止隐藏节点问题。

示例中的模型显示了各种统计信息,如PHY和MAC层的发送、接收和丢弃数据包的数量。此外,该模型中还显示了有助于分析/估计节点级和网络级性能的运行时数据。根据发布的校准结果验证了该模型来自TGax任务组[4]对于TGax评估方法中规定的框3场景(测试1a、1b和2a)[3.].

无线局域网

WLAN节点的组件

WLAN节点的组成如图所示。通过为上图中的每个节点按箭头按钮检索信息。

应用程序、EDCA MAC和PHY块增强

这个例子是一个增强基于PHY和MAC的多节点802.11a网络建模示例。有关WLAN节点中每一层的更多信息,请参阅示例文档页。本示例中使用的应用程序、EDCA MAC和PHY块都有这些增强功能基于PHY和MAC的多节点802.11a网络建模

应用程序:

应用层能够生成具有不同优先级的数据,如图所示。这些优先级使用访问类WLAN节点内应用程序流量生成器块的掩码参数中的属性。

EDCA麦克:

在此示例中使用的EDCA MAC块在使用的MAC块上具有这些增强功能基于PHY和MAC的多节点802.11a网络建模例子

  • 生成和解码高效单用户(HE-SU)、高效扩展范围单用户(HE-EXT-SU)、高吞吐量(VHT)、高吞吐量混合格式(HT-MF)和非ht格式的MAC帧。这些格式使用PHY TX格式属性的掩码参数,如图所示。

  • 聚合MPDU以形成A-MPDU。可通过设置PHY TX格式之一HT-MF甚高频,或HE-EXT-SU.在的情况下HT-MFMPDU聚合属性也必须为A-MPDU生成启用。

  • 在具有单个块确认(BA)帧的A-MPDU中确认多个MPDU。MAC假设发送器和A-MPDU的接收器之间的预先配置的BA会话。

  • 启用/禁用致谢。可以使用ACK政策财产。

  • 保持较短帧(小于RTS阈值)和更长帧(大于或等于RTS阈值)的单独重试限制。可以使用这些限制使用最大短重试次数最大长重试次数财产。

  • 使用多输入多输出(MIMO)能力传输多个数据流。您可以使用此功能配置此功能传输链数量财产。此属性仅适用于值PHY TX格式属性设置为甚高频,或HE-EXT-SU.MIMO能力也可用于HT格式的MCS.财产。值[0,7],[8,15],[16,23]和[24,31]的范围分别对应于一个,两个,三个和四个数据流。

  • 根据信道条件调整数据速率速率自适应算法属性。仅当PHY TX格式属性设置为非HT..你可以选择自动率回退(ARF)吟游诗人算法。为了在整个模拟过程中保持恒定的数据速率,固定利率选项是可用的。

  • 通过允许基本服务集(BSS)之间的并行传输使用BSS颜色启用空间重用财产。此属性仅适用于时PHY TX格式属性设置为HE-EXT-SU,或HE-MU-OFDMA.该模型不支持空间重用(SR)功能。金宝app为了研究带BSS着色的SR对网络吞吐量的影响,参考802.11AX住宅场景中的BSS着色的空间重用例子。

体育:

能够生成和解码非ht, HT-MF, VHT, HE-SU和HE-EXT-SU格式的波形

吞吐量测量

吞吐量因应用程序,MAC和PHY层而异。配置中的任何更改都可以增加或减少吞吐量。您可以改变这些参数的组合来测量和分析吞吐量。

  • MCS.:物理层数据速率

  • PHY TX格式: PHY传输格式

  • 数据包大小:应用程序数据包大小

  • MAX A-MPDU子帧: A-MPDU最大子帧数

  • 最大发送队列大小: MAC传输队列大小

除上述参数外,您还可以改变节点位置、收发增益、信道损耗、网络中的节点数、MAC争用参数、传输链数和速率自适应算法来分析MAC吞吐量。此示例演示了通过改变网络中的数据包大小来测量和分析MAC吞吐量应用程序流量生成器块。

应用程序包大小

吞吐量与应用程序包大小成正比。较小的数据包大小会导致要传输更多数据包。在MAC层,每个发送的分组都有一个争用时间的开销。这是因为MAC层确保通道是空闲的特定时间(参见[1),然后再传送任何数据包。因此,随着数据包大小的减小,争用开销会增加,从而导致吞吐量降低。

模型配置

您可以使用以下步骤配置应用程序数据包大小:

  1. 开放模型WLANMACThroughputMeasurementModel.slx

  2. 要进入节点子系统,请单击节点左下角的向下箭头

  3. 要打开应用程序的掩码参数,请双击应用程序流量生成器

  4. 要启用应用程序,请设置应用国“上”

  5. 配置的值数据包大小

运行模拟并观察吞吐量。TGax在[4]如下所示:

上面的绘图比较了WLAN工具箱的校准结果,针对[中列出的其他公司的已发布结果4].蓝色曲线表示WLAN工具箱的结果,而灰色曲线则代表其他公司的结果。

仿真结果

模型的模拟生成:

  1. 运行时可视化显示每个节点在通道争用、传输和接收上花费的时间

  2. 一个可选的运行时可视化(在模拟过程中),显示为选定节点在MAC传输队列中排队的帧数。

  3. 一种条形图,显示每个节点的指标,如PHY和MAC层上传输、接收和丢弃的数据包数量

  4. 一个垫子文件statistics.mat每一层每个节点的详细统计信息

此图显示了MAC状态相对于模拟时间的转换。

您还可以使用上述可视化中的“观察MAC队列长度”按钮观察MAC层传输缓冲区的实时状态。

此图显示了仿真结束时的网络统计信息。

用TGax校准结果验证应用层吞吐量

TGax专责小组[4发布了不同场景的应用程序吞吐量结果。你可以在“statistics.mat”中存储的“statisticsTable”中的“throughput”列中观察到网络中每个节点的第三层(MAC层以上)吞吐量。MAC模拟器的TGax校准场景发布了具有逻辑链路控制(LLC)层开销的用户数据报协议(UDP)的应用吞吐量结果。

使用下面的代码从模拟结果计算应用程序吞吐量:

%的负载数据。mat(模拟的输出)文件模拟结果=负载('统计数据'“统计表”);%的统计数据统计= simulationResults.statisticsTable;%网络中成功传输MAC层字节数TotalMactxBytes = Sum(stats.mactxbytes);% UDP & LLC开销(字节)udpOverhead = 36;llcOverhead = 8;% UDP & LLC开销(字节)在网络udpAndLLCOverhead = sum(stats.MACTxSuccess)*(udpOverhead + llcOverhead);%成功传输应用程序字节数totnolapptxbytes = totalmactxbytes  -  udpandllcoverhead;%上次传输在网络中完成的时间(微秒)仿真时间= max(stats.macrecentframestatusimestamp);%应用程序吞吐量(Mbps)applicationThroughput = (totalAppTxBytes * 8) / simulationTime;disp (['应用程序吞吐量='num2str (applicationThroughput)'Mbps']);
应用程序吞吐量= 4.7276 Mbps

在30秒的模拟时间内,不同TGax校准场景的应用程序吞吐量根据不同的MAC业务数据单元(MSDU)大小绘制如下:

进一步探索

配置选项

你可以修改这些配置参数来进一步研究这个例子:

  • 应用层:访问类别和数据包间隔

  • MAC层:RTS阈值、Tx队列大小、数据速率、短重试限制、长重试限制、传输帧格式、MPDU聚合、ack策略、传输链数量和速率自适应算法

  • phy:phy tx增益,phy rx增益和rx噪声形象

  • 信道建模:瑞利衰落、自由空间路径损耗、距离传播损耗和包接收距离

  • 节点位置使用节点位置分配器

  • 在运行时,可以通过可视化程序块中的配置可视化每个节点的状态

  • 默认情况下,PHY发送器和接收器块在解释执行模式。对于更长的仿真时间,将所有块配置为代码生成更好的性能模式。

相关的例子

请参考以下例子进行进一步的探索:

这个示例允许您使用Simulink模型创建和配置多节点802.11网络,以分析MAC和应用层吞吐量。金宝app在该模型中,利用仿真结果得到的MAC吞吐量来计算应用层吞吐量。该模型使用TGax评估方法中指定的Box 3场景(测试1a、1b和2a)进行验证[3.]以确认它符合IEEE 802.11 [1].本例得出计算的应用层吞吐量在已公布的校准结果中规定的最小和最大吞吐量范围内[4].

附录

本例中使用的helper函数和对象是:

  1. edcaFrameFormats.m:为PHY帧格式创建枚举。

  2. edcanodeinfo.m.:返回节点的MAC地址。

  3. edcaplotqueuelength.m:绘制模拟中的MAC队列长度。

  4. edcaPlotStats.m:根据模拟时间绘制MAC状态转换。

  5. edcastats.m.:创建模拟统计信息的枚举。

  6. edcaUpdateStats.m:更新模拟的统计信息。

  7. helperAggregateMPDUs.m:通过在MSDulist中创建和附加包含MSDU的MPDU来生成A-MPDU。

  8. helperSubframeBoundaries.m:返回A-MPDU的子帧信息。

  9. phyRx.m:模型与数据包接收相关的PHY操作。

  10. phytx.m.:与包传输相关的PHY型号操作。

  11. edcaapplyfacing.m:对波形应用瑞利衰落效应。

  12. heSIGBUserFieldDecode.m:解码HE-SIG-B用户域。

  13. Hepecorrection.m:估计和纠正常见相位误差。

  14. Hesigbcommonfielddecode.m.:解码HE-SIG-B公共字段。

  15. heSIGBMergeSubchannels.m:合并20MHz HE-SIG-B子信道。

  16. addMUPadding.m:添加多用户PSDU填充。

  17. macQueueManagement.m:创建WLAN MAC队列管理对象。

  18. 圆形林氏金属师:创建一个循环调度程序对象。

  19. calculateSubframesCount.m:返回要汇总的子帧的数量。

  20. interpretVHTSIGABitsFailCheck.m:解释VHT-SIG-A字段中的位

  21. rateAdaptationARF.m:创建一个自动速率回退(ARF)算法对象。

  22. rateAdaptationMinstrelNonHT.m:创建一个吟游诗人算法对象。

工具书类

  1. IEEE Std 802.11™。无线局域网介质访问控制(MAC)和物理层(PHY)规范。信息技术-电信和系统间信息交换,局域网和城域网-特殊要求。

  2. IEEE P802.11ax™/ D4.1。“修正案6:增强高效WLAN..”局域网和城域网。特殊要求。第11部分:无线局域网介质访问控制(MAC)和物理层(PHY)规范

  3. IEEE 802.11 14/0571r12。“11 ax评价方法。”IEEE P802.11P:无线局域网。

  4. 男爵,史蒂芬。,Nezou, Patrice., Guignard, Romain., and Viger, Pascal. "MAC Calibration Results." Presentation at the IEEE P802.11 - Task Group AX, September 2015.

相关话题