802.11 MAC QoS交通调度
这个例子展示了如何模拟介质访问控制(MAC)的服务质量(QoS) 802.11交通调度/ n / ac / ax网络使用SimEvents®, Stateflow®,和WLAN工具箱™。使用QoS, MAC层重视应用程序数据和分配更多的资源优先交通相比,低优先级的流量。在本例中使用的MAC层实现了增强分布式信道访问(EDCA)算法得到传播的渠道。这个示例模型802.11网络五个节点可以同时配置了四种类型的应用程序流量即:最优,背景,视频和声音。的类型和优先级应用程序流量识别的类别在MAC层(AC)的访问。推导结果表明,最高优先级语音流量带来最低的延迟,而最低优先级最高背景交通导致延迟。
在802.11网络QoS调度
IEEE 802.11无线局域网(1]标准支持低速率应用程金宝app序和在MAC层提供最优服务。实时多媒体内容的广泛使用和部署时间敏感关键应用程序创建了一个需要提供QoS支持在802.11网络。金宝app为了达到这个目标,IEEE 802.11 TGe介绍了QoS的IEEE 802.11 e修改IEEE 802.11规范。通过提供QoS支持,IEEE 80金宝app2.11 MAC层重视应用程序数据和分配更多的资源优先交通相比低优先级流量。
模拟网络QoS
这个例子与五个节点模型WLAN网络如这个图所示。与避碰这些节点实现载波监听多路访问(CSMA / CA)与物理载波监听和虚拟载波监听。物理传感载体使用clear channel评估(CCA)机制来确定介质传输之前很忙。然而,虚拟载波感知使用RTS / CTS握手防止隐藏节点问题。
每个节点可以同时配置了这四种类型的应用程序流量:
最优(AC0)
背景(AC1)
视频(AC2)
声音(AC3)
交流在MAC层标识应用程序的类型和优先级流量。
MAC层实现了EDCA算法访问渠道传播。EDCA争用的参数设计,优先级高的流量比低优先级的流量得到更多的传播机会。默认配置的应用程序流量分配优先级顺序:背景、感伤、视频和声音。然而,即使在使用这些争用参数,有可能不止一个AC获得传播机会同时导致内部碰撞。如果一个内部碰撞发生:
高优先级的交流得到了传播的机会
低优先级的交流被认为是一个传输失败和调用一个传输过程
这个例子的不同802.11 MAC和测量应用程序吞吐量例子为多个应用程序在应用程序层生成不同类型的交通。
模型配置
您可以配置应用程序使用这些步骤:数据包大小
开放模式
WLANMACQosSchedulingModel.slx
要进入一个节点子系统,单击向下箭头底部的节点
打开面具应用程序的参数,双击
尽最大努力申请
启用应用程序设置
应用程序状态
“上”配置的值
数据包大小
,包的时间间隔
,目的地名称
和访问类
使用步骤3、4和5配置其他应用程序
更多的配置选项,请参考802.11 MAC和测量应用程序吞吐量。添加额外的节点网络,网络中复制和粘贴任何现有的节点。
仿真结果
这个例子中产生类似的结果中获得的802.11 MAC和测量应用程序吞吐量。这些结果包括:
运行时可视化显示信道争用,所花费的时间传输,为每个节点接收。这个图展示了MAC状态转换对仿真时间。
在仿真期间,一个可选的运行时可视化图显示的帧数所选节点的MAC传输队列中排队。你可以观察的运行时状态MAC层传输缓冲区使用“观察MAC队列长度”按钮在上面的可视化。
条形图显示等指标为每个节点传输,接收,丢弃的数据包在PHY和MAC层。这图显示了网络数据的模拟。
垫文件的统计数据。垫的商店每一层的详细统计数据和节点在网络中。从这个例子中有多个应用程序,从不同的ACs MAC层传输数据包。你可以观察到的数量从每个交流‘MACAC0DataTx’,‘MACAC1DataTx’,‘MACAC2DataTx’和‘MACAC3DataTx列statisticsTable存储在“statistics.mat”。在一个给定的模拟中,传输/ AC的数量成正比的优先级AC。
除了上述的结果,这个例子展示了MAC所选节点的延迟的ACs的阴谋也创建一个垫子文件“macLatenciesLog.mat”。这个文件包含每个MAC帧的信息如:
加入时间戳:应用程序包的时间到达了MAC层
发射机的节点ID:节点ID
AC:访问数据包的类别
明确的时间戳:时间从MAC包了。从MAC包清除成功接收后的确认或完成后重新传输的最大数量的尝试。
这些信息是用来计算每个包的MAC延迟。MAC延迟是数据包之间的时间延迟到达的MAC应用程序层,从MAC,它被清除。从MAC包清除这些场景:
成功的传播:接收器发送一个确认后发送方接收数据包传送给它。如果接收到发送方的承认,它被认为是一个成功的传播。
包丢弃:如果发送方没有收到的承认,它重新传输数据包,直到达到传输限制。如果确认没有收到完成的最大值,即使在MAC层数据包被丢弃。
语音流量具有最高优先级,因此会导致最低的延迟。然而,背景交通导致最高优先级最低的延迟。
进一步的探索
配置选项:
在这个模型中,您可以配置每个AC MAC争用参数。每个交流的争用参数存储在“macConfiguration。垫的结构包含三个字段即aifsn, cwMin cwMax。你可以改变交流的优先级(最优/背景/视频/语音)通过改变这些争用参数。你可以观察这个通过允许多个应用程序在一个节点和交通的争用参数变化。改变竞争参数,使用这段代码:
变化百分比的争用参数背景流量backgroundContentionParams。cwMin = 15;% CW最低backgroundContentionParams。cwMax = 1023;% CW最大backgroundContentionParams。aifsn = 7;% AIFSN槽变化百分比的争用参数的最优交通bestEffortContentionParams。cwMin = 15;% CW最低bestEffortContentionParams。cwMax = 1023;% CW最大bestEffortContentionParams。aifsn = 3;% AIFSN槽视频流量的变化百分比争用参数videoContentionParams。cwMin = 7;% CW最低videoContentionParams。cwMax = 15;% CW最大videoContentionParams。aifsn = 2;% AIFSN槽%的争用参数语音流量变化voiceContentionParams。cwMin = 3;% CW最低voiceContentionParams。cwMax = 7;% CW最大voiceContentionParams。aifsn = 2;% AIFSN槽%更新争用参数保存到“macConfiguration.mat”保存(“macConfiguration.mat”,“backgroundContentionParams”,“bestEffortContentionParams”,“videoContentionParams”,“voiceContentionParams”);
相关的例子
为进一步探索参考这些示例:
测量802.11 MAC和应用程序层吞吐量在多节点使用SimEvents / n / ac / ax网络,参考802.11 MAC和测量应用程序吞吐量的例子。
与抽象模型多节点IEEE 802.11 ax网络使用SimEvents PHY,参考802.11 ax系统级仿真与物理层抽象的例子。
开始使用MATLAB建模一个多节点IEEE 802.11网络,参考开始使用MATLAB的WLAN系统级仿真
模型一个多节点IEEE 802.11 ax住宅场景中使用MATLAB,参考802.11使用MATLAB ax住宅场景的多节点系统级仿真
这个示例允许您配置和模拟802.11 MAC QoS交通调度网络使用仿真软件模型分析每个AC MAC延迟。在这个模型中,MAC争用参数为每个交流可以配置改变应用程序流量优先级在MAC层。金宝app这个例子中得出结论:语音流量最高优先级,带来最低的延迟。然而,背景流量最高最低优先级导致的延迟。
附录
在这个例子中使用的辅助函数和对象是:
edcaFrameFormats.m:创建一个枚举PHY帧格式。
edcaNodeInfo.m:返回一个节点的MAC地址。
edcaPlotQueueLengths.m:情节MAC队列长度的模拟。
edcaPlotStats.m:情节MAC状态转换对仿真时间。
edcaStats.m:创建一个枚举仿真统计。
edcaUpdateStats.m:Update statistics的模拟。
edcaLogLatencies.m:给定的日志信息的帧交换网络。
edcaPlotLatencies.m:情节MAC帧延迟在所有类别的访问。
helperAggregateMPDUs.m:MPDUs聚集,形成一个A-MPDU。
helperSubframeBoundaries.m:返回A-MPDU的子帧边界。
phyRx.m:模型PHY操作相关的数据包接收。
phyTx.m:包传输模型PHY操作相关。
edcaApplyFading.m:应用瑞利衰落对波形的影响。
heSIGBUserFieldDecode.m:解码HE-SIG-B用户字段。
heSIGBCommonFieldDecode.m:解码HE-SIG-B共同领域。
heSIGBMergeSubchannels.m:合并20 mhz HE-SIG-B子信道。
addMUPadding.m:添加或删除HE-SU和填充区别HE-MU PSDU。
macQueueManagement.m:创建一个无线局域网MAC队列管理对象。
roundRobinScheduler.m:创建循环调度程序对象。
calculateSubframesCount.m:计算出所需要的子帧数MU-PSDU形式。
interpretVHTSIGABitsFailCheck.m:解释VHT-SIG-A领域
rateAdaptationARF.m:创建一个自动回退(ARF)算法对象。
rateAdaptationMinstrelNonHT.m:创建一个吟游诗人算法对象。
引用
-2020年IEEE Std 802.11™。IEEE标准信息技术——之间的通信和信息交换系统-本地和市区网络特定需求-第11部分:无线局域网介质访问控制(MAC)和物理层规范(体育)。