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提高无线局域网的吞吐量和可靠性。吞吐量是在一段时间内传输的数据量。媒体访问控制(MAC)层吞吐量是指MAC层在一段时间内成功传输的数据量。MAC协议数据单元(MPDU)是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节点的组件

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

应用,EDCA MAC和PHY块的增强

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

应用:

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

EDCA MAC:

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

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

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

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

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

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

  • 使用多输入多输出(MIMO)能力的数据发送多个流。您可以使用配置此功能发送链路数财产。此属性仅适用时的值PHY的Tx格式属性设置为VHT,HE-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’中的‘吞吐量’列中观察到网络中各节点的第3层(MAC层以上)吞吐量,该列存储在‘statistics.mat’中。针对MAC模拟器的TGax校准场景发布了用户数据报协议(UDP)的应用程序吞吐量结果,其中包含逻辑链路控制(LLC)层开销。

要从模拟结果中计算应用程序吞吐量,请使用以下代码:

%的负载数据。mat(模拟输出)文件simulationResults =负载('统计','statisticsTable');%的统计数据统计= simulationResults.statisticsTable;%在网络中成功传输MAC层字节totalMACTxBytes =总和(stats.MACTxBytes);% UDP & LLC开销(字节)udpOverhead = 36;llcOverhead = 8;%UDP&LLC开销(字节)在网络中udpAndLLCOverhead = sum(stats.MACTxSuccess)*(udhead + 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发射机和接收机模块在运行解释执行模式。对于较长的模拟时间,配置所有块代码生成模式以获得更好的性能。

相关的例子

参考这些例子来进一步探索:

  • 要模拟802.11a/n/ac/ax网络中的服务质量(QoS)流量调度,请参考802.11 MAC QoS流量调度(WLAN工具箱)的例子。

此示例,可以创建并使用Simulink模型用于MAC层和应用层的吞吐量分析配置多节点802.11网络。金宝app在此模型中,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:提高无线局域网的效率…"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.

  3. IEEE 802.11-14 / 0571r12。“11AX评估方法。”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.