802.11 MAC和应用吞吐量测量

此示例示出了如何测量MAC和应用层的吞吐量在使用SimEvents®,Stateflow®,和WLAN工具箱™多节点的802.11a / N / AC /斧网络。在这个例子中提出的系统级模型包括的功能,例如在应用层配置流量的优先级,能够生成并非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],以提高在WLAN网络的吞吐量和可靠性。吞吐量是在一段时间传送的数据量。介质访问控制(MAC)层的吞吐量是指由MAC层在一段时间成功传输的数据量。MAC协议数据单元(MPDU)是传输在MAC层中的单元。在802.11n标准,MPDU汇聚引入以增加吞吐量。当MPDU聚合被支撑,MAC层聚合多个MPDU为聚万博1manbetx集的MPDU(A-MPDU)以用于传输。这降低了信道争用的开销用于发射多个帧,导致增强的吞吐量。在802.11ac中[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节点的组件

一个WLAN节点的部件示出在该图中。该信息被通过按下箭头按钮用于上述图中的每个节点检索。

应用,EDCA MAC和PHY块的增强

这个例子是增强了多节点的802.11a网络建模与PHY和MAC(WLAN工具箱)的例子。参见以下示例文档页面有关在WLAN节点中的每个层的更多信息。应用,EDCA MAC并且在该示例中使用的PHY块具有这些改进过多节点的802.11a网络建模与PHY和MAC(WLAN工具箱)。

应用:

应用层具有如该图所示,以产生具有不同的优先级的数据的能力。这些优先级使用配置访问类别属性在WLAN节点内的应用流量发​​生器块的掩模参数。

EDCA MAC:

在此示例中使用EDCA MAC块具有这些改进过的MAC块中使用多节点的802.11a网络建模与PHY和MAC(WLAN工具箱)例如

  • 生成和解码MAC高效率单用户的帧(HE-SU),高效率扩展范围单用户(HE-EXT-SU),甚高吞吐量(VHT),高通量混合格式(HT-MF)和非HT格式。这些格式使用所配置的PHY的Tx格式在WLAN节点内的MAC EDCA块的掩模参数属性在该图中,如图所示。

  • 聚合的MPDU以形成A-MPDU。这可以通过设置被配置PHY的Tx格式到一个HT-MFVHTHE-SU, 要么HE-EXT-SU。的情况下HT-MFMPDU汇聚属性也必须为A-MPDU一代启用。

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

  • 启用/禁用确认。这可以使用被配置ACK策略属性。

  • 保持较短的帧分开的重试限制(小于阈值RTS以下)和更长的帧(大于或等于RTS阈值)。这些限制可以用被配置最大短重试次数马克斯长重试属性。

  • 使用多输入多输出(MIMO)能力的数据发送多个流。您可以使用配置此功能发送链路数属性。此属性仅适用时的值PHY的Tx格式属性设置为VHTHE-SU, 要么HE-EXT-SU。该MIMO功能还可以用于H T通过格式MCS属性。值[0,7]的范围内,[8,15],[16,23]和[24,31]对应于一个,两个,三个和四个分别的数据流。

  • 根据通过所述信道条件适应的数据速率速率自适应算法属性。这仅适用时的值PHY的Tx格式属性设置为非HT。您可以选择自动速率回退(ARF)歌手算法。为了保持整个模拟恒定的数据速率,固定利率选项。

PHY:

非HT,HT-MF,VHT,HE-SU的能力,以产生和解码波形和HE-EXT-SU格式

吞吐量测量

吞吐量与应用有关,MAC及PHY层中的不同的配置参数而变化。配置中的任何变化可以增加或减小的吞吐量。你可以改变这些参数的组合测量和分析吞吐量。

  • MCS:PHY数据传输速率

  • PHY的Tx格式:PHY传输格式

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

  • 最大A-MPDU子帧:在A-MPDU子帧的最大数量

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

除了上面的参数,还可以改变节点位置,TX&的Rx增益,信道损耗,网络中的节点的数量,MAC竞争参数,发射链和速率自适应算法的数目来分析MAC吞吐量。这例如通过在变化的分组大小表明了MAC吞吐量的测量和分析应用流量发​​生器块。

应用数据包大小

可以通过直接正比于该应用程序包的大小。在分组的更多数量的更小的分组大小的结果被发送。在MAC层,存在的争用为每个传输包的开销。这是因为MAC层可确保信道空闲的时间特定的量(参见第10.3.2.3 [1])发送的任何分组之前。因此,作为数据包的大小减小,从而导致较低的吞吐量争用开销增加。

型号配置

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

  1. 打开模型WLANMACThroughputMeasurementModel.slx

  2. 去一个节点子系统内,点击向下箭头左节点的底部

  3. 在应用程序的开放覆盖参数,请双击应用流量发​​生器

  4. 要启用应用程序,设置应用程式状态为“开”

  5. 配置的值数据包大小

运行仿真并观察吞吐量。所述TGax校准结果用于测试-1A [4]示于下面:

以上情节的WLAN工具箱校准结果进行比较反对上市的其他公司公布的结果[4]。蓝的着色曲线表示WLAN工具箱的结果,而灰色着色曲线代表其他公司的结果。

仿真结果

该模型的模拟产生:

  1. 示出的时间的运行时间可视化的信道争用,发送用,接收用了为每个节点

  2. 一个可选的运行时的可视化(在模拟期间)表示MAC发送队列排队等待所选节点的帧的数量。

  3. 示出每个节点的度量,例如发送,接收号码条形图,并在PHY和MAC层丢弃的数据包

  4. 垫子文件statistics.mat在每个层的每个节点获得的详细统计

该图显示相对于仿真时间MAC状态转换。

也可以观察使用上述可视化的“观察MAC队列长度”按钮MAC层的发送缓冲器的实时状态。

此图显示了在模拟结束的网络统计信息。

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

该TGax工作组[4]发布应用程序吞吐量结果不同的情况。可以吞吐量的吞吐量'在“statisticsTable”列中的网络中的存储在“statistics.mat”的每个节点的观察(上面MAC层)的3层。为MAC模拟器TGax校准方案公布吞吐量与逻辑链路控制(LLC)层开销中的用户数据报协议(UDP)应用程序的结果。

为了计算应用程序的吞吐量从仿真结果使用下面的代码:

%负载statistics.mat(模拟输出)文件simulationResults =负载('统计''statisticsTable');%统计统计= simulationResults.statisticsTable;%成功传送MAC层网络中的字节totalMACTxBytes =总和(stats.MACTxBytes);%UDP&LLC开销(字节)udpOverhead = 36;llcOverhead = 8;%UDP&LLC开销(字节)在网络中udpAndLLCOverhead =总和(stats.MACTxSuccess)*(udpOverhead + llcOverhead);%成功发送的应用的字节totalAppTxBytes = totalMACTxBytes  -  udpAndLLCOverhead;%的时间在该最后的传输在网络中完成(微秒)simulationTime = MAX(stats.MACRecentFrameStatusTimestamp);%应用程序吞吐量(Mbps)的applicationThroughput =(totalAppTxBytes * 8)/ simulationTime;DISP([“应用程序吞吐量=”num2str(applicationThroughput)'Mbps的']);
应用程序吞吐量= 4.7276 Mbps的

吞吐量不同TGax校准方案的应用被针对不同的MAC服务数据单元(MSDU)绘制为尺寸30秒的模拟时间如下所示:

再探

配置选项

您可以更改这些配置参数,以进一步探讨这个例子:

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

  • MAC层:RTS阈值,Tx队列大小,数据速率,短重试限度,长重试限度,发送帧格式,MPDU聚合,ACK策略,发射链的数目和速率自适应算法

  • PHY:PHY Tx增益,PHY接收增益,和Rx噪声系数

  • 信道建模:瑞利衰落,自由空间路径损耗,范围传播损耗和数据包接收范围

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

  • 每个节点的状态可以在运行时通过在展示台块可用的配置进行可视化

  • 默认情况下,PHY发射机和接收机模块在运行解释执行模式。对于较长的模拟时间,配置所有块代码生成模式更好的性能。

相关的例子

请参阅这些例子作进一步的探索:

  • 为了模拟服务的MAC质量(QoS)在802.11 / N / AC /斧网络业务调度,请参考802.11 MAC QoS流量调度(WLAN工具箱)的例子。

此示例,可以创建并使用Simulink模型用于MAC层和应用层的吞吐量分析配置多节点802.11网络。万博1manbetx在此模型中,MAC吞吐量通过模拟得到的结果被用来计算所述应用层的吞吐量。该模型使用TGax评价方法中指定的框3的场景(测试1A,1B,和2A)验证[3]以确认它与IEEE 802.11 [符合1]。这个例子中的结论是,所计算的应用层的吞吐量是最小和最大的范围内可以通过已公开的校准结果指定[4]。

附录

辅助功能和用于本实施例的对象是:

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

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

  3. edcaPlotQueueLengths.m:在模拟绘制MAC队列长度。

  4. edcaPlotStats.m:相对于仿真时间剧情MAC状态转换。

  5. edcaStats.m:创建模拟统计枚举。

  6. edcaUpdateStats.m:模拟的更新的统计数据。

  7. helperAggregateMPDUs.m:生成的A-MPDU,通过创建并附加包含的MSDU中的MSDULIST的MPDU。

  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:合并20MHz的HE-SIG-B的子信道。

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

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

  18. roundRobinScheduler.m:创建一个循环调度对象。

  19. calculateSubframesCount.m:要聚合子归来数量。

  20. interpretHESIGABitsFailCheck.m:解释与异常检查HE-SIG-A位。

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

  22. rateAdaptationARF.m:创建自动回退率(ARF)算法的对象。

  23. rateAdaptationMinstrelNonHT.m:创建一个弹琴的算法对象。

参考

  1. IEEE标准802.11™。“无线LAN媒体访问控制(MAC)和物理层(PHY)规范”。IEEE标准为信息技术,电信和系统之间的信息交换,本地和城域网特定要求。

  2. IEEE P802.11ax™/ D4.1。“修订6:增强实现高效率WLAN ..”草案标准为信息技术 - 电信和系统局域网和城域网网络之间的信息交换 - 特定要求 - 第11:无线LAN介质访问控制(MAC)和物理层(PHY)规格。

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

  4. 男爵,斯特凡,Nezou,帕特里斯,Guignard,罗曼,威格和帕斯卡。“MAC校准结果”。呈现在IEEE P802.11 - 任务组AX,2015年9月。