802.11ax系统级模拟与物理层抽象
此示例演示如何建模多节点IEEE®802.11ax™[1]网络与抽象物理层(PHY)使用SimEvents®,Stateflow®和WLAN工具箱™。PHY抽象模型通过取代实际的物理层计算,大大降低了系统级模拟的复杂性和持续时间。这使得评估由大量节点组成的系统成为可能,从而提高了可伸缩性。抽象PHY对每个包建模信号功率、增益、延迟、损耗和干扰,而不生成物理层包,如TGax评估方法所规定的[3.]。
物理层的抽象
这个例子展示了如何用抽象的PHY来建模一个802.11ax网络。该示例展示了示例中使用的系统模型的变体802.11 MAC和应用程序吞吐量的测量.在802.11 MAC和应用程序吞吐量的测量例如,完整的PHY处理建模,其中波形在物理层生成和解码。然而,这个例子建模了一个抽象的PHY,其中没有波形被生成或解码。抽象物理层以牺牲保真度为代价减少了模拟所需的时间。保真度指的是PHY在仿真中建模的精确程度。在物理层容忍低保真度的仿真可以使用抽象的PHY模型。
抽象PHY操作预先计算的包错误率(PER)表和方程。这些表和方程用来估计损坏的包,没有任何实际调制或解调的包,导致低保真模型。参考的例子用于系统级模拟的物理层抽象有关PHY抽象的更多细节。
抽象的物理层块
本节解释用于建模抽象PHY的块,以及它如何适应802.11 [2网络模型。全PHY建模涉及到通过衰落信道的波形传输和接收相关操作。抽象PHY模型的信号功率,增益,延迟,损失和干扰在每个包不产生物理层包。此示例提供了一个PHY发射机
,一个统计渠道
和一个PHY接收机
为抽象的PHY建模。这些模块可以在库中找到wlanAbstractedPHYLib.
抽象PHY发射机:
的抽象PHY发射机
Block对物理层的传输链进行建模。该块消耗来自MAC层的帧和相应的传输参数。诸如发射功率、前导持续时间、报头持续时间和有效载荷持续时间等参数在块中计算。此信息随MAC帧作为元数据一起传递,以模拟波形的传输。
接口抽象PHY发射机
块:
MACToPHYReq: MAC层传输开始/结束请求的触发器
FrameToPHY:要传输的MAC帧
phytxconfirmation:确认触发到MAC层,指示MAC层请求的完成
波形:传输到信道的抽象波形(MAC帧和元数据)
统计渠道:
的统计渠道
块模拟数据包的路径丢失、传播延迟和接收范围。若要在每个接收器上估算损失、延迟和范围,则统计渠道
模块必须在每个节点内部建模抽象PHY接收机
.传播延迟应用于每个收到的包,每个包的信号强度降低与可选的路径损耗。如果接收节点在此范围内,则将报文转发到抽象PHY接收机
具有有效信号强度。如果接收节点不在发送端范围内,则丢弃该报文。
接口统计渠道
是:
WaveformIn:从PHY发射机接收的输入包
WaveformOut:应用信道损耗后,用于PHY接收器的输出包
抽象PHY接收机:
的抽象PHY接收机
块对物理层的接收链进行建模。该块根据接收到的元数据接收和处理数据包。的抽象PHY接收机
Block根据重叠时间线上接收的数据包对干扰进行建模。接收到的数据包只在这些检查点处被处理:(a)序文持续时间的结束(b)聚合帧的有效负载中每个子帧持续时间的结束(或)非聚合帧的有效负载持续时间的结束。
方法配置抽象级别的选项PHY抽象
面具参数。您可以将其配置为“TGax评估方法附录1”
[3.]使用有效的SINR映射,使用TGax通道模型预测链路的性能。该过程的详细信息可以在示例中找到用于系统级模拟的物理层抽象.或者,您也可以将其配置为“TGax模拟场景MAC校准”
[4假定数据包因干扰而失败,而不实际计算链路性能。注意,选项“TGax评估方法附录1”
仅适用于MCS值范围[0-9],如TGax评估方法[3.仅为这些值定义。
接口抽象PHY接收机
块:
PHYMode:在传输过程中关闭接收功能的触发器
波形:从通道接收到的抽象波形(MAC帧和元数据)
rxsigns:用于指示通道状态转移(繁忙/空闲)事件或接收(开始/结束)事件的MAC触发器
FrameToMAC:接收到的MAC帧
系统级仿真
这个例子模拟了一个模型中有10个节点的网络,WLANMultiNodeAbstractedPHYModel,如图所示。这些节点实现了具有物理载波感知和虚拟载波感知的防碰撞载波感知多路访问(CSMA/CA)。物理载波传感采用CCA (clear channel assessment)机制,在传输前判断介质是否繁忙。虚拟载波感知采用RTS/CTS握手的方式来解决隐藏节点问题。
网络中所有节点的位置都通过节点位置分配器(NPA
)块。控件中的可用配置可以在运行时可视化每个节点的状态视觉型的人
块。的信道矩阵
块是一个数据存储内存。初始化时,在网络中的每对节点之间生成一个TGax信道实现,每个子载波的结果信道矩阵存储在块中。在仿真过程中,每个接收节点访问存储器以获得其与发射节点之间的信道矩阵,以确定链路质量。在这个模型中,节点1、2、3、6、7和8同时充当发射器和接收器,而节点4、5、9和10只是被动接收器。
节点子系统
上面模型中的每个节点都是表示WLAN设备的子系统。每个节点包含应用层、MAC层和物理层。物理层使用上一节中描述的抽象PHY块建模。您可以通过更改指定的通道(频率)来配置节点接收和发送报文多播标记
参数的实体多播
和多播接收队列
块。默认情况下,所有节点都在同一通道上运行。方法还可以为特定节点配置接收范围数据包接收范围
参数的统计渠道
块。
中可用的抽象PHY块之间可以轻松切换wlanAbstractedPHYLib和完整的PHY处理块可用wlanFullPHYLib.slx
示例的库802.11 MAC和应用程序吞吐量的测量.到发射机、接收机和信道块的接口保持不变。默认情况下,抽象PHY块运行在解释执行
模式。为了更长的模拟时间,配置所有块为代码生成
模式,以获得更好的性能。
仿真结果
运行该模型将在指定的模拟时间内模拟WLAN网络。仿真结束时生成具有网络级统计信息(对应MAC层)的图。详细的节点级统计信息(对应于应用程序、MAC和物理层)在模拟过程中被收集,并保存到基本工作区文件中statistics.mat
.控件的掩码配置,还可以启用可选的实时可视化,以便在运行时查看每个节点的状态视觉型的人
块。
可伸缩性
上面的模型显示了一个有10个节点的网络。方法可以创建具有大量节点的网络hCreateWLANNetworkModel函数。这个助手函数使用这个示例中的节点子系统,并创建一个由彼此线性相距10米的WLAN节点组成的网络。您可以创建不同的模拟场景,并在节点数量不同的情况下分析节点级或网络级统计信息。例如,下面的图显示了随着网络中节点数量的增加,相对于总传输的重传和成功传输。用于收集结果的配置参数为:
格式:HE-SU
调制编码方案(MCS)索引:0
A-MPDU的子帧数:1
节点间距离:10米
路径丢失:未应用
PHY抽象类型:“TGax评估方法附录1”
范围传播:所有节点都在彼此的范围内
工作频率:所有节点工作频率一致
下图显示,与完整的PHY处理相比,抽象PHY处理的模拟运行得更快,从而使其更具可扩展性。采集性能结果的配置参数如下:
格式:HE-SU
调制编码方案(MCS)索引:0
A-MPDU的子帧数:2
节点间距离:1米
路径丢失:未应用
PHY抽象类型:“TGax评估方法附录1”
范围传播:所有节点都在彼此的范围内
工作频率:所有节点工作频率一致
模拟模式:
代码生成
所有块的模式模拟时间:5秒
报文产生间隔:0.001秒
该示例解释了物理层抽象,并演示了一个具有抽象PHY的10节点WLAN网络。这个例子表明,与使用完整的PHY处理相比,使用抽象PHY的网络模拟速度更快,扩展性更强。
进一步的探索
在本例中,节点之间交换的A-MPDUs被分解为接收节点的MPDUs。这些MPDUs被导出到数据包捕获(PCAP)和数据包捕获下一代(PCAPNG)格式文件使用pcapDump
DES块。使用pcapDump
DES块,去wlanSystemLevelComponentsLib
导出到PCAP/PCAPNG格式文件
PCAP/PCAPNG格式文件包含网络的报文数据。这些文件主要与Wireshark等网络分析程序有关[5,一个用于可视化和分析PCAP/PCAPNG文件的第三方工具。在系统级模拟中使用PCAP/PCAPNG文件的主要优点是:
监视网络流量。
可视化和分析数据的网络特征。
为了复制MAC层输入实体(接收到的A-MPDUs),FrameToMAC
,PhyRxIndicator
矢量)和输出实体(传输的A-MPDUs,FrameToPHY
,MACReqToPHY
向量),使用实体复制因子
块。MAC层提供了RxFrameToPCAP
,PhyIndToPCAP
,TxFrameToPCAP
,MACReqToPCAP
作为输入pcapDump
DES块。
的pcapDump
DES块包含两个输入端口,一个用于Tx/Rx A-MPDUs,另一个用于Tx/Rx信息。
选择捕获格式为pcap或pcapng。当模拟开始时,节点之间交换的包被记录到所选的捕获格式文件中。
要捕获包,请双击pcapDump
DES块,并选择参数Capture为Enable。
为每个节点创建一个新的捕获文件(PCAP/PCAPNG格式)。文件名与节点名称对应。若节点名称为“Node1”,则捕获文件名为“Node1”。pcap或Node1.pcapng。
附录
这个例子使用了这些帮助器:
edcaFrameFormats.m:为PHY帧格式创建一个枚举。
edcaNodeInfo.m:节点返回的MAC地址。
edcaPlotQueueLengths.m:绘制模拟中的MAC队列长度。
edcaPlotStats.m:绘制MAC状态相对于模拟时间的转换。
edcaStats.m:为仿真统计信息创建枚举。
edcaUpdateStats.m:更新仿真统计信息。
helperSubframeBoundaries.m:返回A-MPDU的子帧边界。
phyTxAbstracted:模拟与报文传输相关的PHY操作
phyRxAbstracted:模拟与报文接收相关的PHY操作
channelBlock:对节点的通道进行建模
addMUPadding.m:增加或删除HE-SU和HE-MU PSDU的填充差值
macQueueManagement.m:创建WLAN MAC队列管理对象
roundRobinScheduler.m:创建循环调度对象
calculateSubframesCount.m:计算形成MU-PSDU所需的子帧数
hCreateWLANNetworkModel:创建指定节点数的WLAN网络
hDisplayNetworkStats:显示网络级别统计信息
hSetupAbstractChannel: TGax通道设置
createRadiotapHeader:创建radiotap头文件
rateAdaptationARF.m:创建ARF (auto rate fallback)算法对象。
rateAdaptationMinstrelNonHT.m:创建吟诗人算法对象。
参考文献
IEEE Std 802.11 ax™-2021。IEEE信息技术标准。系统间的电信和信息交换。局域网和城域网。特殊要求。第11部分:无线局域网介质访问控制(MAC)和物理层(PHY)规范。修改件1:高效WLAN增强。
-2020年IEEE Std 802.11™。IEEE信息技术标准。系统间的电信和信息交换。局域网和城域网。特殊要求。第11部分:无线局域网介质访问控制(MAC)和物理层(PHY)规范
IEEE 802.11-14/0571r12 - 11ax评估方法。
IEEE 802.11-14/0980r16 - TGax仿真场景。
Wireshark -深入。https://www.wireshark.org/.已于2019年12月9日访问。