主要内容

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.]提高WLAN网络的吞吐量和可靠性。吞吐量是一段时间内传输的数据量。媒体访问控制(MAC)层吞吐量是指MAC层在一段时间内成功传输的数据量。MAC协议数据单元(MPDU)是MAC层的传输单元。在802.11n中,引入了MPDU聚合以提高吞吐量。当支持MPDU聚合时,MAC层将多个MPDU聚合为一个聚合MPDU(A-MPDU)进行传输。这减少了传输多个帧时的信道争用开销,从而提高了吞吐量。在802.11ac中[万博1manbetx1.]和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块增强

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

应用程序:

应用层能够生成具有不同优先级的数据,如图所示。这些优先级使用访问类别属性中的“应用流量产生器”块掩码参数。

EDCA麦克:

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

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

  • 聚合mpdu,形成A-MPDU。这可以通过设置进行配置PHY TX格式之一HT-MF,VHT,何文洙. 万一HT-MF,MPDU聚合还必须为A-MPDU生成启用属性。

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

  • 启用/禁用确认。可以使用ACK政策财产。

  • 保持较短帧(小于RTS阈值)和更长帧(大于或等于RTS阈值)的单独重试限制。可以使用这些限制使用马克斯短重试麦克斯长重试属性。

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

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

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

体育:

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

吞吐量测量

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

  • MCS.: PHY数据率

  • PHY TX格式:物理层传输格式

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

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

  • 最大Tx队列大小: MAC传输队列大小

除了以上参数,您还可以通过改变节点位置、Tx和Rx增益、信道损失、网络中的节点数量、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. 一个垫子文件统计资料在每个节点的每一层获得详细的统计信息

这个图显示了MAC状态转换与仿真时间。

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

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

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

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

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

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

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

进一步的探索

配置选项

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

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

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

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

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

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

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

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

相关实例

请参考这些示例以进一步了解:

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

附录

本例中使用的辅助函数和对象包括:

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

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

  3. edcaPlotQueueLengths.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. edcaApplyFading.m:对波形应用瑞利衰落效果。

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

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

  14. Hesigbcommonfielddecode.m.:解码HE-SIG-B共域。

  15. Hesigbmerges子通道:合并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部分:无线LAN介质访问控制(MAC)和物理层(PHY)规范。

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

  4. 男爵,斯蒂芬,内祖,帕特里斯,吉格纳德,罗曼,维格,帕斯卡。“MAC校准结果”,在IEEE P802.11任务组AX上的演示,2015年9月。

相关的话题