802.11 ax住宅场景的多节点系统级仿真
这个例子展示了如何建模性能的IEEE 802.11®ax™(1网络在住宅的情况下利用WLAN工具箱™和通信工具箱™无线网络仿真库。
使用这个示例中,您可以:
模拟一个住宅场景通过配置网络和信道参数。
模拟一个多节点WLAN系统和捕获网络相关统计数据。
模拟网络抽象和模型之间的转换的媒介访问控制层(MAC)和物理(体育)。
仿真结果表明性能指标如吞吐量、延迟和丢包。
此外,您可以使用该示例脚本导出WLAN MAC帧PCAP或PCAPNG文件。有关更多信息,请参见进一步的探索。
住宅的场景
这个示例演示了一个系统级的仿真评估802.11 ax网络的性能在一个住宅的场景。住宅建筑的场景由三层。这些都是住宅的特征的场景:
层之间的间距是3米。
每层楼共有四个房间,每个房间的尺寸是10-by-10-by-3米。
每个房间都有一个接入点(AP)和两个电台(斯塔斯)随机放置x- - -y位置的高度1.5米从地板上。
每个AP传输数据相关的斯塔斯在一个房间里。
仿真场景中指定一个路径损耗模型基于节点之间的距离,和墙壁和地板的数量遍历的WLAN的信号。这个图显示了这个示例中的住宅场景模拟。
确认符合IEEE 802.11标准(2),在本例的特性与Box-3验证和box 5场景中指定TGax评价方法(3]。TGax模拟场景的网络吞吐量计算(4)根据发表的校准结果进行验证TGax任务组。
检查支持包安装万博1manbetx
检查通信工具箱™安装无线网络仿真库支持包。万博1manbetx如果支持包没有万博1manbetx安装,MATLAB®返回一个错误的链接下载并安装包的支持。
wirelessnetwork万博1manbetxSupportPackageCheck
配置参数
仿真参数
设置随机数生成器的种子1
。随机数生成的种子值控制模式。生成的随机数种子值影响几个过程模拟,包括补偿计数器选择在MAC层和预测在PHY层数据包接收成功。改善你的仿真结果的准确性仿真运行后,你可以改变的种子值,再次运行仿真,在多个模拟和平均结果。
rng (1,“combRecursive”)
指定仿真时间以秒为单位。想象生活状态转换图的所有节点,设置showLiveStateTransitionPlot
变量来真正的
。
simulationTime =0.12;showLiveStateTransitionPlot =真正的;
这个示例使用MAC层和物理层的抽象模型层的所有节点默认(APs和斯塔斯)。使用完整的MAC层模型,设置MACFrameAbstraction
变量来假
。同样,使用完整的PHY层模型,设置PHYAbstractionMethod
变量来没有一个
。关于MAC层和物理层的更多信息,请参阅开始使用MATLAB的WLAN系统级仿真的例子。
MACFrameAbstraction =真正的;PHYAbstractionMethod =“tgax-evaluation-methodology”;
住宅场景参数
的ScenarioParameters
结构定义的大小和布局住宅使用这些参数。
BuildingLayout
——指定数量的房间沿着建筑物的宽度和高度。RoomSize
——指定每个房间的大小米。NumRxPerRoom
——指定每个房间的站数。
示例假定每个房间包含一个传输美联社和两个接收斯塔斯。
ScenarioParameters =结构;ScenarioParameters。BuildingLayout= [2 2 3]; ScenarioParameters.RoomSize = [10 10 3]; ScenarioParameters.NumRxPerRoom = 2;
配置WLAN的场景
初始化模拟器通过使用无线网络wirelessNetworkSimulator
对象。
networkSimulator = wirelessNetworkSimulator.init;
节点
这个示例创建了一个住宅36节点组成的场景。节点1节点12 APs,节点13节点36斯塔斯。的hGetIDsAndPositions
辅助函数返回节点id和随机位置对美联社和斯塔斯在每个房间。函数返回一个数组,nodeid
,每一行存储id的AP及其相关斯塔斯在一个房间里。的同位语
和staPositions
输出包含x- - - - - -,y,分别和z-Cartesian坐标的APs和斯塔斯。单位是米。
[nodeid,同位语,staPositions] = hGetIDsAndPositions (ScenarioParameters);
的wlanDeviceConfig
对象允许您设置的配置参数APs和斯塔斯。创建两个wlanDeviceConfig
对象初始化配置参数APs和斯塔斯。指定操作模式、调制和编码方案,传动功率(dBm) APs和斯塔斯。
accessPointCfg = = wlanDeviceConfig(模式“美联社”MCS = 2, TransmitPower = 15);% AP设备配置stationCfg = = wlanDeviceConfig(模式“STA”MCS = 2, TransmitPower = 15);% STA设备配置
创建两个数组wlanNode
对象,美联社对应节点和STA节点,通过指定的位置
属性是同位语
和staPosition
,分别。每个数组包含的对象的数量等于指定的位置对应的值。指定的名字
,DeviceConfig
,PHYAbstractionMethod
,MACFrameAbstraction
的属性wlanNode
对象。
accesspoint = wlanNode(位置=并列,…Name =“美联社”+(1:尺寸(同位语,1)),…DeviceConfig = accessPointCfg,…PHYAbstractionMethod = PHYAbstractionMethod,…MACFrameAbstraction = MACFrameAbstraction);= staPositions站= wlanNode(位置,…Name =“STA”+(1:尺寸(staPositions, 1)),…DeviceConfig = stationCfg,…PHYAbstractionMethod = PHYAbstractionMethod,…MACFrameAbstraction = MACFrameAbstraction);
创建一个WLAN网络组成的APs和斯塔斯。
节点= (accesspoint站);
确保所有的节点都配置正确,使用hCheckWLANNodesConfiguration
helper函数。
hCheckWLANNodesConfiguration(节点)
协会和应用程序流量
把斯塔斯在每个房间对应的美联社通过使用associateStations
对象的函数wlanNode
对象。与连续应用程序配置APs流量相关斯塔斯使用FullBufferTraffic
论点。
numAPs = prod (ScenarioParameters.BuildingLayout);%每个房间一个美联社为apID = 1: numAPs associateStations(节点(apID),[节点(nodeid (apID, 2:结束))),FullBufferTraffic =“DL”);结束
创建网络
创建网站从发射机和接收机节点配置使用hCreateSitesFromNodes
helper函数。创建从住宅建筑几何场景参数使用hTGaxResidentialTriangulation
helper对象。可视化居住建筑以及发射机和接收机网站使用hVisualizeScenario
helper函数。
[txSites, rxSites] = hCreateSitesFromNodes(节点);triangulationObj = hTGaxResidentialTriangulation (ScenarioParameters);hVisualizeScenario (triangulationObj txSites rxSites,同位语)
无线信道
下面的例子使用了TGax住宅传播模型来确定节点之间的路径损耗。路径损耗是一个函数的墙壁,地板,节点之间的距离。通过创建一个路径损耗模型hTGaxResidentialPathLoss
helper函数。通过使用获得路径损失函数处理hCreatePathlossTable
helper函数。
propModel = hTGaxResidentialPathLoss(三角= triangulationObj ShadowSigma = 0, FacesPerWall = 1);[~,pathLossFcn] = hCreatePathlossTable (txSites、rxSites propModel);
通道对象添加到无线网络模拟器,创建一个hSLSTGaxMultiFrequencySystemChannel
辅助对象通过使用路径损失函数处理。住宅路径损耗模型添加到网络模拟器使用addChannelModel
对象的函数wirelessNetworkSimulator
对象。
频道= hSLSTGaxMultiFrequencySystemChannel(节点,PathLossModel =“自定义”PathLossModelFcn = pathLossFcn);addChannelModel (networkSimulator channel.ChannelFcn)
模拟
将节点添加到无线网络模拟器。
addnode (networkSimulator节点)
查看状态转换和性能指标图,创建一个hSimulationPlotViewer
helper对象。默认情况下,这个helper对象显示了所有节点的情节中配置模拟。可视化的状态转换和性能指标具体节点,指定相应的节点对象作为第二个参数辅助对象。
viewerObj = hSimulationPlotViewer (showLiveStateTransitionPlot节点);
运行网络模拟为指定的模拟时间。运行时可视化显示了由美联社和STA在空闲的时间,争用,传输和接收状态。
运行(networkSimulator simulationTime);
结果
检索应用程序,MAC层和物理层数据在每个节点使用统计数据
对象的函数wlanNode
对象。
统计=统计数据(节点);
阴谋利用每个节点的性能plotNetworkStats
的函数hSimulationPlotViewer
对象。你可以想象这些模拟图。
吞吐量(Mbps)在每个发射机(美联社)。
丢包率(数据传输失败总比数据传输)在每个传感器(APs)。
平均数据包延迟发生在每一个接收器(STA)。平均数据包延迟显示了每个STA的平均延时所接受美联社的下行流量。
plotNetworkStats (viewerObj simulationTime)
进一步的探索
出口无线局域网MAC帧PCAP或PCAPNG文件
您可以捕获数据包在STA和AP节点使用hExportWLANPackets
helper对象。指定的节点对象要捕获数据包。在多个节点捕获数据包,指定相应的节点对象作为一个数组。你可以在美联社导出数据包捕获和STA节点PCAP或PCAPNG文件。关于捕获数据包的更多信息,和出口PCAP或PCAPNG捕获数据包文件,看到了开始使用MATLAB的WLAN系统级仿真的例子。
附录
本例使用这些助手:
hGetIDsAndPositions
——返回节点id和APs和斯塔斯的随机位置hCheckWLANNodesConfiguration
——检查节点参数是否正确配置hCreateSitesFromNodes
——返回发射机和接收机的网站hTGaxResidentialTriangulation
——创建住宅场景几何hCreatePathlossTable
——返回路径损失函数处理在住宅的场景hVisualizeScenario
——显示居住建筑以及发射器和接收器hTGaxIndoorLinkInfo
——返回的地板,墙壁,和点之间的距离为一个链接hExportWLANPackets
——获取MAC帧并将它们写入到PCAP或PCAPNG文件hTGaxResidentialPathLoss
——配置和创建一个住宅路径损耗模型hSLSTGaxMultiFrequencySystemChannel
——返回一个对象并设置系统信道的路径损耗模型hSLSTGaxAbstractSystemChannel
——返回一个通道对象的抽象PHY层hSLSTGaxSystemChannel
——返回一个通道对象完整的PHY层hSLSTGaxSystemChannelBase
通道对象,返回基地hSimulationPlotViewer
——画出状态转换和性能指标数据
引用
电气和电子工程师学会(IEEE)。IEEE标准信息技术——之间的通信和信息交换系统本地和市区网络——特定需求第11部分:无线局域网介质访问控制(MAC)和物理层(体育)规范修正案1:高效WLAN的增强。IEEE 802.11 ax - 2021。IEEE 2021年5月19日。https://doi.org/10.1109/IEEESTD.2021.9442429。
电气和电子工程师学会(IEEE)。IEEE标准信息技术——之间的通信和信息交换系统本地和市区网络——特定需求第11部分:无线局域网介质访问控制(MAC)和物理层规范(体育)。IEEE 802.11 -2020。IEEE, 2021年2月26日。https://doi.org/10.1109/IEEESTD.2021.9363693。
电气和电子工程师学会(IEEE)。11 ax评价方法。IEEE 802.11 14/0571r12。IEEE, 2016年1月。
电气和电子工程师学会(IEEE)。TGax模拟场景。IEEE 802.11 14/0980r16。IEEE 2015。