主要内容

802.11多节点网络建模与PHY和MAC

这个例子展示了如何建模含多个WLAN节点之间的通信媒介访问控制层(MAC)层和物理层使用SimEvents®, Stateflow®,和WLAN工具箱™。这个示例模型802.11五WLAN节点组成的网络。分布式协调功能(DCF)的MAC被建模为离散事件图,而体育使用MATLAB建模的离散事件系统。派生的仿真结果包括一个运行时的情节显示信道争用,所花费的时间为每个节点传输和接收。表示每个节点的情节等指标数量的传播,收到,丢弃的数据包PHY和MAC层也会显示。

背景

IEEE 802.11®™是一组为WLAN实现MAC层和物理层规范。一个典型的WLAN网络将有多个设备(节点)共享同一信道资源。每个节点可以有不同类型的应用程序从其他节点发送或接收数据包。随着节点共享信道,传输可能碰撞或相互干扰。

WLAN网络建模与多个节点通常涉及建模MAC层,体育,共享通信信道、数据流量模式,和干扰。这个例子展示了如何建模一个多节点802.11 WLAN网络PHY和MAC使用离散事件模拟。

802.11多节点网络模型

这个例子WLAN网络模型和五个节点。与避碰这些节点实现载波监听多路访问(CSMA / CA)与物理载波监听和虚拟载波监听。物理传感载体使用clear channel评估(CCA)机制来确定介质传输之前很忙。然而,虚拟载波感知使用RTS / CTS握手防止隐藏节点问题。

模型的示例输出各种统计数据,如传播的数量,收到,和丢弃的数据包PHY和MAC层,和情节,帮助分析/评估节点级和网络级性能。

建模包括:

  • 多个节点,每个节点包含一个应用程序中,MAC层,和体育。

  • 数据包传输通道,这是跨多个节点共享。

  • 共享通道,与这些模拟通道障碍期权:pathloss、范围传播损耗和多路径衰落(使用瑞利信道模型)。

  • 一个节点位置分配程序,用于配置网络中节点的位置。

在这个例子中,节点1、2和3是活跃的参与者的沟通,而节点4和5通道被动地接收数据包。

节点

每个节点与网络堆栈被建模为一个子系统,包括应用程序、MAC层和物理。

  • 应用程序层使用SimEvents生成包实体发电机(SimEvents)块。

  • MAC的DCF建模为离散事件图表。

  • 体育是使用SimEvents离散事件系统建模。

  • 共享信道建模在每个节点在接收路径。

应用程序层

应用程序层实现产生和接收应用程序流量。它分为两个子块:

  • AppTrafficGenerator—使用SimEvents实体发电机(SimEvents)生成数据块包与数据包大小配置,inter-packet间隔,和目的地节点。这些数据包被传递到MAC层。

  • AppTrafficReceiver—使用SimEvents实体终结者(SimEvents)阻止接收数据包的MAC层。

MAC层

MAC层实现了DCF算法(10.3节规定的1]。传输一个数据包之前,MAC层感官共享通道来确定状态的通道。如果信道空闲时,数据包传输启动。如果信道忙,数据包传输延迟。排队等待传输的数据包。

在模型中,MAC层有两个组件:队列管理和竞争算法。

队列管理

从应用程序层接收数据包排队,直到可用的频道。数据包传输通道一旦可用的列中移除。队列的大小是可配置的。默认队列大小是10。

争用算法

争用算法实现MAC层是DCF(第10.3节规定的功能1]。它被实现为一个有限状态机,这六个不同的国家:

  • 空闲:不活跃的操作

  • 认为:认为通道

  • 处方:接收和处理框架

  • WaitForRx:等待响应框架

  • SendingData:传输一帧

  • 型:延缓传输错误恢复

州一级处理在MAC层

  • 最初在MAC层闲置状态。从应用程序层接收数据包,MAC层移动到认为状态。

  • 认为状态,如果通道感觉到DCF国米帧的闲置一段时间(dif)空间紧随其后的是一个随机的退下,MAC层移SendingData状态。

  • SendingData状态,传输帧,MAC层移动到WaitForRx状态。

  • WaitForRxMAC层状态,等待一段时间的ACK / CTS超时。收到一个响应帧,MAC发起下一帧传输。如果响应帧超时时间内没有收到,重新发送帧。

  • 收到一个clear channel评估(CCA)从PHY层忙,MAC层移处方状态。帧的接收和处理处方状态。如果收到一个错误帧处方等待状态,MAC层扩展国际框架空间(型)的时间型双状态。如果框架是用于其他节点,网络分配向量更新(NAV)和传输延迟直到NAV变成零。如果该节点框架旨在响应帧发送。

MAC等参数RTS门限,重试限制和数据率为每个节点是可配置的。

体育和通道

传输链:

MAC层发起传输通过发送一个传输开始包含Tx矢量信息的请求。开始接收请求,PhyTx80211aDES块配置体育传播参数与给定的Tx向量,并将传输发送确认到MAC层开始。PHY参数配置non-HT格式配置类型的对象wlanNonHTConfig。开始接收确认,MAC层帧发送给PhyTx80211aDES块。

PhyTx80211aDES块生成的波形MAC帧使用wlanWaveformGenerator函数。还尺度波形与配置的Tx获得的样本。生成的波形是通过共享的传播渠道。

您可以配置的面具性质发射功率(dBm)和Tx获得PhyTx80211aDES块(dB)。

通道障碍建模:

通道障碍由空间路径损耗模型和瑞利多径衰落被添加到PHY波形传播。你可以选择启用或禁用这些损伤模型。除了损伤模型、信号接收范围也可以通过一个可选的范围是有限的传播损耗模型。模型的这些损失,发送方和接收方通道模型必须包含两个位置随着传播信号强度。每个接收节点中的信道建模,通过波形PhyRx80211aDES块。

接收器链:

PhyRx80211aDES块接收到波形时,尺度配置Rx的波形。然后PhyRx80211aDES块热噪声和干扰适用于接收到的波形。这是通过计算预期的信号interference-plus-noise比(SINR)的序言,头和有效载荷。计算SINR添加到头部,头,接收的波形和有效载荷为加性高斯白噪声(AWGN)。PhyRx80211aDES块然后比较波形功率与能量检测(ED)阈值。如果波形功率大于ED阈值,PHY发送MAC层和CCA繁忙的指示开始解码的波形。否则,PHY考虑波形如干扰噪声,并将其添加到即将到来的波形持续时间的电流波形。如果发现一个错误在解码,PHY停止进一步处理的波形并发送一个错误指示MAC层。如果序言和标题是成功解码,PhyRx80211aDES块发送指示到MAC层开始。如果负载也是成功解码,载荷传递给MAC层和一个成功的迹象。

Rx增益(dB)和噪声图(dB)可以配置为PhyRx80211aDES块。

节点位置分配程序

节点位置分配器用于分配初始位置的节点。它支持金宝app线性和列表的位置分配策略。

线性位置分配策略——节点均匀直线的地方,在一个二维网格。

列表的位置分配策略——分配节点的位置从一个列表中(((x1, y1 z1) (x2 y2 z2)……[xn yn锌]],(yk xk, zk) k节点的位置对所有k (1、2、…,n)。

仿真结果

该模型生成的模拟:

  1. 一个运行时的情节描述信道争用,所花费的时间为每个节点传输和接收。

  2. 情节描述指标等每个节点的传播,收到,丢弃的数据包PHY和MAC层。

  3. 一个垫子文件statistics.mat在每一层为每个节点获得的详细统计数据。

进一步的探索

  1. 增加网络中节点的数量通过复制现有的节点或创建一个自定义节点使用图书馆。

  2. 不同应用程序参数:数据包大小和包时间间隔。

  3. 改变MAC参数:RTS门限,Tx队列大小、数据速率和重试限制。

  4. 改变PHY参数:PHY Tx增益,PHY Rx增益,和Rx噪声图。

  5. 不同信道建模参数。

  6. 改变节点位置使用节点位置分配器。

  7. 通过改变不同的参数比较吞吐量。

  8. 使观众序列和看到节点和内部组件之间交换的消息的节点。

这个例子展示了一个802.11多节点网络,向您展示如何建模使用离散事件模拟多个WLAN节点之间的通信。贴现在MAC建模为离散事件表,而体育使用MATLAB离散事件系统建模的块。运行时可视化显示显示时间花在渠道竞争,每个节点传输,接收帮助你研究和分析DCF的功能。每个节点的网络通信性能的基础上,分析了情节展示等node-related指标数量的传输,接收和丢弃的数据包PHY和MAC层。

限制

  1. MAC层重发是基于一个共同的重试计数而不是短重试计数(SRC)和长指定重试计数(领头10.3.4.4节(1]。

  2. 不交换管理框架。

  3. MAC层在每个节点维护一个序列号计数器帧传输,而不是为每个目的地的计数器。

  4. 在MAC层数据速率适应还没有实现。

  5. MAC服务数据单元(MSDU)碎片还没有实现。

  6. 的干扰被建模为一个AWGN SINR源自数据包和热噪声干扰的信号强度。建模的干扰也可以通过结合的智商样品干扰信号。

附录

本例使用这些助手:

  1. dcfApplyFading.m:应用瑞利衰落对波形的影响。

  2. dcfAssignNodeIDs.m:分配节点id。

  3. dcfDisplayStats.m:显示统计数据。

  4. dcfGetNodeInfo.m:执行获取或设置操作给定节点的MAC地址。

  5. dcfGetNodeNamesList.m:在模型中节点的列表。

  6. dcfGenerateMACFrame.m:生成MAC帧。

  7. dcfPlotQueueLengths.m:在仿真绘制队列长度。

  8. dcfPlotStats.m:情节仿真时间线上统计。

  9. dcfStats.m:枚举显示模型数据。

  10. dcfUpdateStats.m:对于给定的节点更新统计数据。

  11. PhyPrimitives.m:枚举PHY和MAC层之间的迹象

  12. PhyRx80211aDES.m:模型PHY操作相关的数据包接收。

  13. PhyTx80211aDES.m:包传输模型PHY操作相关。

引用

  1. IEEE Std 802.11™- 2016 IEEE标准信息技术——之间的通信和信息交换系统-本地和市区网络特定需求-第11部分:无线局域网介质访问控制(MAC)层和物理层规范

相关的话题