主要内容

开始使用MATLAB的WLAN系统级仿真

这个例子展示了如何建模WLAN网络组成的IEEE 802.11®ax™(1接入点(AP)和车站(STA)通过WLAN工具箱™和通信工具箱™无线网络仿真库。

使用这个示例中,您可以:

  • 模拟一个多节点WLAN系统通过配置应用程序层(应用程序),介质访问控制(MAC)和物理层参数在每个节点(体育)。

  • 模型上行和下行AP和STA之间的沟通。

  • 开关之间的抽象和MAC层和物理层的完整模型层。

  • 想象每个节点所花费的时间的空闲,争用,传输和接收状态。

  • 捕获应用程序,MAC层和物理层数据为每个节点。

仿真结果表明性能指标如吞吐量、延迟和丢包。

此外,您可以使用该示例脚本生成,配置和添加等外部应用程序流量模式开关,视频,声音,和FTP的WLAN节点。有关更多信息,请参见进一步的探索

WLAN系统级仿真

这个例子向您展示了如何建模一个WLAN网络上行和下行AP和STA之间的沟通。这个数字说明了网络的示例。

AP和STA之间的沟通

这个图显示了示例工作流。

确认符合IEEE 802.11标准(2),在本例的特性与Box-3验证和box 5场景中指定TGax评价方法(3]。TGax模拟场景的网络吞吐量计算(4)根据发表的校准结果进行验证TGax任务组。

检查支持包安装金宝app

检查通信工具箱™安装无线网络仿真库支持包。金宝app如果支持包没有金宝app安装,MATLAB®返回一个错误的链接下载并安装包的支持。

wirelessnetwork金宝appSupportPackageCheck

配置仿真参数

设置随机数生成器的种子1。随机数生成的种子值控制模式。生成的随机数种子值影响几个过程模拟,包括补偿计数器选择在MAC层和物理层预测数据包接收成功。改善你的仿真结果的准确性仿真运行后,你可以改变的种子值,再次运行仿真,在多个模拟和平均结果。

rng (1,“combRecursive”)

指定仿真时间以秒为单位。想象生活状态转换图的所有节点,设置showLiveStateTransitionPlot变量来真正的

simulationTime =1;showLiveStateTransitionPlot =真正的;

在发射机和接收机、建模完整MAC处理涉及在MAC层完成MAC帧生成。同样,建模完整PHY处理涉及到完成业务相关波形通过衰落信道传输和接收。当模拟大型网络,MAC层和物理层处理需要大量的计算。

在抽象的MAC,节点不生成或任何在MAC层帧解码。同样,在抽象的体育,节点不产生或解码PHY任何波形。MAC层和物理层的抽象使您能够最小化的复杂性和运行时系统级模拟。有关体育的抽象的更多信息,请参见系统级仿真的物理抽象层的例子。

这个表展示如何抽象和完整的MAC或PHY之间切换配置的值MACFrameAbstractionPHYAbstractionMethod的属性wlanNode对象。

如果你设置PHYAbstractionMethodtgax-evaluation-methodology,PHY估计的性能与TGax通道模型通过使用一个有效的signal-to-interference-plus-noise比(SINR)映射。另外,如果你设置PHYAbstractionMethodtgax-mac-calibrationPHY假设包失败干扰不计算性能的联系。使用完整的体育,设置的值PHYAbstractionMethod没有一个

MACFrameAbstraction =;PHYAbstractionMethod =“tgax-evaluation-methodology”;

配置WLAN的场景

初始化模拟器通过使用无线网络wirelessNetworkSimulator对象。

networkSimulator = wirelessNetworkSimulator.init;

节点

wlanDeviceConfig对象允许您设置美联社和STA的配置参数。创建两个WLAN设备配置对象,一个用于STA的美联社和其他。指定操作模式、调制和编码方案,传动功率为美联社和STA (dBm)。

accessPointCfg = = wlanDeviceConfig(模式“美联社”MCS = 2, TransmitPower = 15);% AP设备配置stationCfg = = wlanDeviceConfig(模式“STA”MCS = 2, TransmitPower = 15);% STA设备配置

创建一个美联社节点和STA节点从指定的WLAN设备配置,使用wlanNode对象。指定的名称和位置美联社和STA。指定PHY用于美联社和STA抽象方法。配置MACFrameAbstraction财产的wlanNode对象来表示如果MAC帧是抽象的节点。

accessPoint = wlanNode (Name =“美联社”,位置= (10 0 0),DeviceConfig = accessPointCfg,PHYAbstractionMethod = PHYAbstractionMethod,MACFrameAbstraction = MACFrameAbstraction);站= wlanNode (Name =“STA”,位置= (20 0 0),DeviceConfig = stationCfg,PHYAbstractionMethod = PHYAbstractionMethod,MACFrameAbstraction = MACFrameAbstraction);

创建一个由美联社和STA WLAN网络。

节点= (accessPoint站);

确保所有的节点都配置正确,使用hCheckWLANNodesConfigurationhelper函数。

hCheckWLANNodesConfiguration(节点)

协会和应用程序流量

副STA美联社通过使用associateStations对象wlanNode的函数对象。上行和下行配置应用程序流量美联社和STA之间使用FullBufferTraffic论点的associateStations对象的功能。

associateStations (accessPoint、车站、FullBufferTraffic =“上”);

无线信道

每个节点之间随机TGax衰落信道模型,下面的例子使用了hSLSTGaxMultiFrequencySystemChannelhelper对象。通道模型添加到无线网络模拟器使用addChannelModel对象的函数wirelessNetworkSimulator对象。

频道= hSLSTGaxMultiFrequencySystemChannel(节点);addChannelModel (networkSimulator channel.ChannelFcn)

出口无线局域网MAC帧PCAP或PCAPNG文件

STA和AP的例子演示了数据包捕获节点。设置capturePacketsFlag旗帜真正的在仿真捕获数据包交换。数据包捕获(PCAP)或数据包捕获下一代(PCAPNG)文件(。pcap or .pcapng, respectively) is a widely used packet capture file format to perform packet analysis. The packets are captured into a PCAP file in this example.

capturePacketsFlag =真正的;

创建一个hExportWLANPacketshelper对象生成PCAP文件。指定的节点对象要捕获数据包。helper对象捕捉数据包发送和接收的每一个节点,并为每个节点生成一个PCAP文件。如果你想捕获数据包PCAPNG文件中,指定字符串“PCAPNG”对象函数调用的第二个参数。注意,可能只有当捕获数据包MACFrameAbstraction标志被设置为

如果capturePacketsFlag清晰capturePacketsObj;%清楚现有的辅助对象capturePacketsObj = hExportWLANPackets(节点);结束

你可以想象和分析PCAP或PCAPNG文件通过使用第三方包分析器Wireshark等工具。

模拟

将节点添加到无线网络模拟器。

addnode (networkSimulator节点)

查看状态转换和性能指标图,创建一个hSimulationPlotViewerhelper对象。仿真显示了所有节点的情节中配置模拟。可视化的状态转换和性能指标一个特定的节点,指定相应的节点对象作为第二个参数辅助对象。

viewerObj = hSimulationPlotViewer (showLiveStateTransitionPlot节点);

运行网络模拟为指定的模拟时间。运行时可视化显示了由美联社和STA在空闲的时间,争用,传输和接收状态。

运行(networkSimulator simulationTime);

随着时间的推移MAC状态转换图包含一个坐标轴对象和另一个类型的对象uicontrol。坐标轴对象包含节点时间(微秒),ylabel节点名称包含2843个对象类型的酒吧,长方形。这些对象代表论点,传播,接待,接待(注定节点),其他(型/ sif /空闲/忙碌)。

结果

检索应用程序,MAC层和物理层数据在每个节点使用统计数据对象的函数wlanNode对象。

统计=统计数据(节点);

阴谋利用每个节点的性能plotNetworkStats对象的函数hSimulationPlotViewer对象。你可以想象这些模拟图。

  • 吞吐量(Mbps)在每个发射机(美联社和STA)。

  • 丢包率(数据传输失败总比数据传输)在每个发射机(美联社和STA)。

  • 平均数据包延迟发生在每一个接收器(美联社和STA)。平均数据包延迟显示了STA的平均延时所接收下行流量来自美联社和美联社带来的平均延时收到STA上行流量。

plotNetworkStats (viewerObj simulationTime)

图包含3轴对象。坐标轴对象1标题吞吐量在每个发射机,包含节点名称,ylabel吞吐量(Mbps)包含一个对象类型的酒吧。坐标轴对象与标题2包丢失在每个发射机,包含节点名称,ylabel丢包率包含一个对象类型的酒吧。坐标轴对象3标题平均数据包延迟在每个接收器,包含节点名称,ylabel平均数据包延迟(s)包含一个对象类型的酒吧。

因为hExportWLANPacketshelper对象不会覆盖现有PCAP或PCAPNG文件,删除PCAP这个模拟实验中所使用的对象。

如果capturePacketsFlag删除(capturePacketsObj.PCAPObjList);结束

进一步的探索

配置外部应用程序流量

生成并添加外部应用程序流量模式(开关、视频、声音和FTP) WLAN节点,修改交通配置在这个例子。生成一个开关应用程序流量,创建两个networkTrafficOnOff对象为下行和上行流量,分别。配置这些对象通过指定应用程序数据率和数据包的大小。

% trafficSourceDL = networkTrafficOnOff (DataRate = 100000, PacketSize = 1500);% trafficSourceUL = networkTrafficOnOff (DataRate = 100000, PacketSize = 1500);

从美联社节点附加下行应用程序流量采用STA节点addTrafficSource对象的函数wlanNode对象。同样,把从STA节点上行应用程序流量美联社节点。

% addTrafficSource (accessPoint trafficSourceDL DestinationNode =站,AccessCategory = 0);% addTrafficSource(站、trafficSourceUL DestinationNode = accessPoint AccessCategory = 0);

生成的视频,声音,和FTP应用程序流量,使用networkTrafficVideoConference,networkTrafficVoIP,networkTrafficFTP对象,分别

附录

这个示例使用这些助手:

引用

  1. 电气和电子工程师学会(IEEE)。IEEE标准信息技术——之间的通信和信息交换系统本地和市区网络——特定需求第11部分:无线局域网介质访问控制(MAC)和物理层(体育)规范修正案1:高效WLAN的增强。IEEE 802.11 ax - 2021。IEEE 2021年5月19日。https://doi.org/10.1109/IEEESTD.2021.9442429

  2. 电气和电子工程师学会(IEEE)。IEEE标准信息技术——之间的通信和信息交换系统本地和市区网络——特定需求第11部分:无线局域网介质访问控制(MAC)和物理层规范(体育)。IEEE 802.11 -2020。IEEE, 2021年2月26日。https://doi.org/10.1109/IEEESTD.2021.9363693

  3. 电气和电子工程师学会(IEEE)。11 ax评价方法。IEEE 802.11 14/0571r12。IEEE, 2016年1月。

  4. 电气和电子工程师学会(IEEE)。TGax模拟场景。IEEE 802.11 14/0980r16。IEEE 2015。

另请参阅

功能

对象

相关的话题