计算机系统应用  2020, Vol. 29 Issue (4): 202-208   PDF    
基于802.11ac网络的混合速率自适应算法
蔡丽萍1, 姜忠泰2, 黄庭培1, 李大伟1     
1. 中国石油大学(华东) 计算机科学与技术学院, 青岛 266580;
2. 中国石油大学(华东) 海洋与空间信息学院, 青岛 266580
摘要:IEEE 802.11ac技术已经成为下一代局域网的主要技术, 其通过扩增多输入多输出技术、信道宽度、编码与调制策略的种类, 使得传输速率获得了巨大的提升. 然而种类的扩增也导致了速率选择时搜索空间过大, 搜索时间过长, 算法计算复杂度高等方面的问题, 而已有的针对IEEE802.11a/b/g/n的速率自适应算法无法解决该问题. 为了解决该问题, 提出了一种在高速无线局域网模式下混合速率自适应算法VhRa. 该算法利用MIMO模式、信道宽度的最佳设置与RSSI之间的单调关系来进行特征提取, 在MCS (编码与调制策略)选择上通过利用二分法基于zigzag探测的模式进行选择, 从而缩小算法搜索的空间, 提高搜索效率, 进一步提升传输吞吐量. 结果表明, VhRa的搜索效率与RRAA、Minstrel-HT相比分别提高了42%、20%, 同时在不同场景下对VhRa进行吞吐量分析, 移动环境下VhRa相对比RRAA、Minstrel-HT、Samplelite吞吐量分别提升90%、10%、34%.
关键词: IEEE 802.11ac    速率选择算法    搜索效率    吞吐量    信号接收强度    
Hybrid Rate Adaptation Algorithm Based on 802.11ac Network
CAI Li-Ping1, JIANG Zhong-Tai2, HUANG Ting-Pei1, LI Da-Wei1     
1. College of Computer Science and Technology, China University of Petroleum, Qingdao 266580, China;
2. College of Oceanography and Space Informatics, China University of Petroleum, Qingdao 266580, China
Foundation item: General Program of National Natural Science Foundation of China (61872385); Young Scientists Fund of National Natural Science Foundation of China (61402433)
Abstract: IEEE 802.11ac technology has become the main technology of the next generation LAN, which has greatly improved the transmission rate by increasing the types of multiple input and multiple output technologies, channel width, coding and modulation strategies. However, the increased types also lead to many problems such as excessive search space when the rate is selected, long search time, and high computational complexity. And the existing rate adaptive algorithm for IEEE802.11a/b/g/n cannot solve this problem. To settle this problem, we propose a hybrid rate adaptive algorithm called VhRa in high-speed wireless LAN mode. The algorithm utilizes the MIMO mode, the optimal setting of the channel width and the monotonic relationship between the RSSI to perform feature extraction, and selects the mode based on the zigzag detection by using the dichotomy in the MCS selection, thereby reducing the space for algorithm search and improving the search efficiency. Thus, the algorithm further increases the transmission throughput. The experiment results show that VhRa offers search efficiency up to 42% over RRAA, up to 20% over Minstrel-HT. At the same time, the throughput analysis of the algorithm is carried out in different scenarios. Compared with RRAA, Minstrel-HT, and Samplelite in mobile environment, VhRa offers throughput gain up to 90% over RRAA, up to 10% over Minstrel-HT, and up to 34% over Samplelite.
Key words: IEEE 802.11ac     rate adaptation algorithm     search efficiency     throughput     Received Signal Strength Indicator (RSSI)    

1 引言

IEEE802.11 ac是2012年2月颁布的新无线WLAN标准, 该标准对媒体访问控制层中的物理层和媒体访问控制层进行了一系列扩展和改进, 在物理层, 引入了多输入多输出和信道绑定等技术, 大大提高了物理层传输速率; 同时还通过在媒体访问控制层增加了帧聚合和块确认等机制, 有效地提高了传输效率[1]; 理论上, 802.11ac能够为多站无线WLAN通信提供至少1 Gbps的带宽, 或者为单个有线传输提供至少为500 Mbps的带宽[2].

802.11ac环境中的速率自适应是通过响应于变化的信道和干扰条件来调整各种MAC和PHY特征, 因此链路自适应对802.11ac WLAN中的应用性能的影响比传统的802.11a/b/g/n WLAN更大. 但是, 如文献[3]所提到的, 802.11a/b/g速率自适应方案在应用于802.11ac时效果不佳, 因为后者打破了传统方案的一些假设, 在IEEE 802.11a/b/g无线网络中, 编码与调制策略(MCS)决定了物理层发送速率, 而在IEEE 802.11ac网络中则是由多输入多输出模式、信道宽度、编码与调制方式等多种因素来决定物理层的发送速率. 无线网络的速率自适应问题也从最初的一维空间的最佳MCS 搜索问题扩展成由MIMO模式, 信道宽度, MCS组合优化的三维空间问题. 同时相对于802.11n协议, IEEE 802.11ac提供的速率种类更多, 空间内速率搜索所造成的开销问题则更为突出. 因此, 解决802.11ac协议下速率搜索空间问题具有较强的现实意义.

速率自适应算法的目标是为无线数据传输找到最优的物理层发送速率, 也就是在发送速率和丢包率之间找到一个最佳的平衡, 从而使得传输吞吐量最大化.

近几年, 针对IEEE 802.11ac协议设计一种合适的速率自适应算法[4-12](Rate Adaptive algorithm, RA)成为研究的焦点. 文献[4]针对高速无线局域网的特征提出一种多天线系统的速率选择算法(RAMAS), RAMAS将不同类型的调制方式划分为一个调制组, 然后将空间多路复用、传输多样性、保护间隔类型和通道宽度划分为一个增强组. 然后RAMAS同时适应这两组, 调制组和增强组的组合被映射回MCS, 该算法是通过统计数据帧来反馈当前信道的状况. 文献[5]提出的Minstrel-HT算法是Atheros无线网卡在802.11n标准中默认的速率选择方案, 是Minstrel算法在HT模式(802.11n)下的升级版, 同时也适用于802.11ac. Minstrel-HT适应MCS, 信道宽度, 数据流个数, 基于探测信息来进行动态学习以期获得最大吞吐量. 但是该算法在高速动态变化的环境下存在滞后性, 无法实时根据信道情况进行调整. 上述两种算法都具有实时性不强的缺点[6].

与上述研究的不同, 本文首次对速率搜索空间进行考虑, 提出一种在802.11ac高速无线局域网络下混合速率自适应算法VhRa, 该算法利用MIMO模式, 信道宽度的最佳设置与RSSI之间的单调关系来进行特征选择, 在MCS选择上通过利用二分法基于Zigzag探测的模式进行选择, 从而缩小算法搜索的空间, 提高搜索效率, 进一步提升传输吞吐量.

2 问题描述

传统的速率自适应算法在IEEE 802.11a/b/g标准能够有效工作的一个重要原因是给定无线信道状态, 吞吐量在所有速率点上存在最优物理层发送速率[7]. 但是在IEEE 802.11ac标准中, 由于引入多输入多输出模式和信道绑定等技术, 吞吐量在速率点上的最大值不是唯一解, 如图1所示, 对于不同的模式或者不同信道宽度, 其最大值点也是不同的[3]. 因此这就意味着每次信道变化都需要对速率进行重新选择.

图 1 MIMO模式对MCS选择的影响

IEEE 802.11ac标准在物理层上支的速率种类高达600多种, 而IEEE 802.11n 支持256种速率, IEEE 802.11a/g标准物理层的速率种类只有8种[8], IEEE 802.11b标准更少, 仅支持4种速率, 速率种类如表1所示. 若按照传统顺序递减或递增的方式选择IEEE 802.11ac标准下的速率, 需要很长时间才能收敛到最优的速率, 同时大的搜索空间会导致大的收敛延时与开销[9], 从而影响无线链路的传输性能. 另外, 若对802.11ac物理层的每一种速率进行离线训练, 需要对每种编码调制方案下的无线信道的通信特性进行测量分析, 建立链路质量和信道通信特征之间的映射关系, 从而会带来大的控制开销, 且准确性低[10].

表 1 不同协议标准速率种类

针对上述的两个问题, 本文设计一种在802.11ac高速无线局域网络下混合速率自适应算法VhRa. 该算法利用MIMO模式, 信道宽度的最佳设置与RSSI之间的单调关系来进行特征选择, 利用二分法基于Zigzag探测的模式对MCS进行选择; 该算法既解决了传统算法的收敛延时与开销问题, 同时也提高了速率选择的准确性.

3 算法设计

在传统的802.11a/b/g中, PHY层的速率是由调制与编码策略(MCS)来唯一确定的, 每种MCS对应唯一的比特速率. 但802.11ac在PHY层引入了两种技术(多输入多输出技术, 信道绑定技术), 使得传输速率提升至6 Gbps, 因此, 802.11ac中的速率是由MIMO数据流、信道带宽以及MCS三者来共同确定.

本文提出的VhRa算法是通过RSSI阈值来确定MIMO模式和信道宽度; 并且利用二分法基于Zigzag探测的模式来选择MCS模式.

3.1 基于RSSI阈值的MIMO模式和信道宽度的选择

受文献[8]中Samplelite阈值思想的启发, 通过控制实验变量, 在ns-3仿真平台[11]上进行IEEE802.11ac数据的获取并进行了数据分析, 为了更加接近实际无线信道, 试验中添加隐藏节点干扰, 引入大尺度衰落因素并在移动场景下测得该数据; 首先在ns-3仿真平台下使用固定速率(ConstantRate)对数据包进行发送, 并且设置多个测试点, 每个测试点距离相差1 m(移动步速1 m/s), 在每个测试点用Wireshark工具进行抓包分析得到其在该点的RSSI, 之后将RSSI与MIMO和信道宽度关系映射到一个二维空间. 如图2所示, 随着距离的越来越远, 不同信道宽度对吞吐量的影响, 已有文献证明RSSI的变化与距离是成正比关系[12]的, 距离越远, RSSI的值越大. 通过对转折点的分析, 并且进行多次实验, 获得了不同模式下RSSI的阈值. MIMO模式的阈值选择如图3所示.

图 2 不同信道状态下吞吐量变化图

图 3 不同MIMO模式下下吞吐量变化图

表2所示, 当平均RSSI大于特定阈值 (–49 dBm)时, 采样应关注于设置为4个空间流的MIMO模式, 对于不同的RSSI阈值, MIMO模式有不同的选择. 实现过程中没有考虑帧聚合功能, 因为文献[13]指出像Minstrel HT 这样的现有方案已经有了一种有效的方法来适应在ath9k驱动程序中实现的这个功能. 表3则反应出RSSI与信道宽度的映射关系, 不同的RSSI阈值, 对应着不同的信道宽度.

表 2 RSSI与MIMO模式映射关系

表 3 RSSI与信道宽度映射关系

VhRa算法通过发送端接收到的Block ACK帧来统计发送端RSSI, 比较统计的RSSI值继而选择出相对应的信道带宽和数据流数, 缩小比特速率选择的搜索空间. RSSI本身是一个波动性非常大的参数, 受外界环境以及设备本身硬件的因素影响比较大[14], 因此在数据测量的过程中采用高斯滤波的方式来减少RSSI波动的影响, 对同一个节点接收到的多个RSSI值中, 通过高斯模型[15]选取高概率发生区的RSSI值作为有效值, 再求其几何平均值, 这种方法能够有效地减少小概率、大干扰对整体测量数据的影响. 具体公式如下:

RSSI服从 $\left( {0,\delta } \right)$ 的高斯分布, 其概率密度为:

$ {F_{({{RSSI}})}} = \frac{1}{{\sigma \sqrt {2\pi } }} \cdot \exp \left( {\frac{{{{\left( {{{RSSI}} - \mu } \right)}^2}}}{{2{\sigma ^2}}}} \right) $

其中,

$ \begin{array}{l} \mu =\frac{1}{{{n}}} \cdot \displaystyle\sum\limits_{{{k }} =1}^{{n}} {RSS{I_{({{k}})}}} \\ \sigma =\sqrt {\frac{1}{{{{n}} - 1}} \cdot \displaystyle\sum\limits_{{{k }} =1}^{{n}} {{{\left( {RSS{I_{{k}}} - \mu } \right)}^2}} } \end{array}$

则区间 $\left( {\mu - \sigma \le {{RSSI}}{_{{k}}} \le \mu + \sigma } \right)$ 的概率为:

$ \begin{array}{l} {{P}}\left( {\left( {\mu - \sigma \le {{RSSI}}{_{{k}}} \le \mu + \sigma } \right)} \right) = {{F}}\left( {\mu + \sigma } \right) - {{F}}(\left( {\mu - \sigma } \right)\\ = \phi (1) - \phi ( - 1) = 0.6826\\ RSS{I_{ag}} = \dfrac{1}{N} \cdot \displaystyle\sum\limits_{k = 1}^N {RSS{I_{({{k}})}},} RSS{I_{({{k}})}} \in (\mu - \sigma ,\mu + \sigma ) \end{array} $

伪代码如算法1.

算法1. RSSI Algorithm

输入:RSSIag, RSSI阈值

输出: Streams, Width

1. 数据流判断

2. 输入当前获取的RSSIag, 并将其与数据流阈值进行判断

3. 根据阈值输出当前数据流数

4. 信道宽度判断

5. 输入当前获取的RSSIag, 并将其与信道宽度阈值进行判断

6. 根据阈值输出当前信道宽度

7. 根据获得数据流数与信道宽度进行速率的定位

3.2 基于Zigzag探测的MCS模式选择

MIMO模式和信道宽度均可以映射为一个大小为4的集合, 搜索空间相对MCS较小, 因此, 本文首先对MIMO模式和信道宽度进行选择. 受默认网卡驱动算法Minstrel-HT的启发, 在MCS的选择上引入支持向量机分类的思想, MCS=0~9可以划分为高速率区域和低速率区域, 高速率区域则为(MCS=6, 7, 8, 9), 低速率区域(MCS=1, 2, 3, 4).

首先探测MCS=4, 5, 6三个状态下吞吐量的情况(即既包括了高速率区域的值又包括低速率区域的值), 选择吞吐量较高的MCS值作为下一次发送的值. 与通过2.1算法确定的MIMO模式, 信道宽度则可以精确选择当前的速率. 下一次探测将以上一次使用的速率MCSi为探测中心, 继续探测MCSi–1, MCSi, MCSi+1的吞吐量, 更新吞吐量最好的速率. 如图4所示.

图 4 基于Zigzag探测模式的MCS选择

伪代码实现如算法2.

算法2. RSSI Algorithm

输入: MSCi, Streams, Width

输出: throughout, rate

1. 默认将MCS赋值为4, 5, 6

2. 与算法1相结合, 通过(MCS, Streams, Width)来确定当前发送速率

3. 计算当前速率下的信道吞吐量

4. 比较当前信道吞吐量, 并返回吞吐量最大MCS, Stream, Width

5. 下一次以吞吐量最佳效果发送

6. 开启计数, 在信道变差下, 循环上一次速率选择

4 算法性能分析

采用NS-3网络协议仿真软件搭建基于IEEE 802.11ac的网络仿真环境, 并在此平台上对VhRa算法进行性能仿真验证. 为了验证VhRa的性能, 本文分别在静止状态和移动状态以及有无干扰情况[16]下进行实验, 并选择RRAA、Minstrel-HT和SampleLite三种速率自适应算法作为参考, 对比分析各算法的吞吐量性能差异.

4.1 仿真平台的搭建

为了验证不同速率自适应算法在IEEE 802.11ac标准下的性能, 必须要建立一个基于NS-3工具的802.11ac协议仿真, 环境如图5所示, 采用最基本的网络拓扑立一个简单的基础型网络[17], 该网络包括AP和6个STA节点.

图 5 网络拓扑结构

真实无线网络设备的模拟可以通过基于NS-3的802.11协议模型来进行, 该模型层次化架构清晰, 模块化设计良好, 适合对速率自适应算法的进行仿真验证, 且能够达到与实际环境相同的效果, 其中, TCP/IP协议栈标准的数据包交互是通过网络设备接口. 802.11协议层包含对AP或STA的管理, 并实现协议操作, 例如扫描和关联, 中间层包括基本的DCF竞争访问机制、队列调度算法和速率适配等模块, 其中速率适配模块则需要进行修改的部分, 速率自适应算法需要依次进行建模并集成于现有的仿真平台中. 同时, 速率自适应模块需要连续统计数据帧的发送与接收情况, 最终将速率信息反馈给MAC Low层[18].

每个节点均需要对模型进行构建, 模型包括物理层、应用层、TCP/IP协议栈、WiFi网络设备和无线信道等各个层次, 各层次模型参数配置如表4所示. 为了更好地分析在不同传输协议下各种速率自适应算法的性能, 仿真系统采用UDP单向传输协议, 并且设置恒定速率数据流(ConstantRate)为网络性能测试提供饱和、稳定的上层激励. 另外, 为了模拟由不同节点间距以及不同移动环境所引起的差异化, 用LogDistancePropagationLossModel[15]模型来仿真无线信道的大尺度衰落, 叠加上JakesPropagationLossModel模型的瑞利分布特性来仿真无线信道的小尺度衰落, 使用RandomWalk2dMobilityModel模型的来模拟不同的移动状态[19].

表 4 仿真实验参数配置

4.2 实验结果分析 4.2.1 算法运行时间比较

由本文第2章节的分析可知, 在802.11ac协议下, 速率选择的搜索空间对系统的吞吐量会产生影响. 因此本节测试了算法的运行时间, 通过算法的运行时间反映各算法速率选择的搜索空间度上的差别.

图6给出了STA在不同运动状态下VhRa、SampleLite、RRAA[20]和Minstrel-HT三种速率自适应算法的算法运行时间. 从图中可以明显看出, 在同种运动状态下, RRAA的运行时间最长, VhRa与SampleLite在运行时间上相差不大, 但是需要注意Samplelite是Kriara等人在802.11n协议根据探测得出的阈值, 虽然算法运行时间较短, 但是对于802.11ac协议并不适用, 而VhRa是根据802.11ac协议进行设计的, 在减少了算法运行时间的同时, 也提升了吞吐量.

图 6 不同运动状态下算法运行时间

4.2.2 UDP吞吐量比较

为了保证实验结果的准确性, 仿真实验共进行了6次, 将6个STA的吞吐量取平均值, 得到如图7所示的UDP吞吐量. 由图7(a)(b)(c)可以明显看出, 当STA处于静止或移动速度较慢时, 此时STA处的信道状态比较稳定. 在AP与STA间距离为5米、15米和25米的情况下, 算法的UDP吞吐量明显高于SampleLite、MinstrelHT和RRAA[17]三种算法, 这是由于VhRa算法先采用基于发送端RSSI的方法选择合适的数据流、信道带宽, 然后再采用Zigzag探测的方式选择MCS模式, 继而定位更准确的比特速率, 同时也减少了由于搜索空间过大造成的开销和损耗. 图7(e)(f)表示的是在不同衰落状态下UDP吞吐量情况, VhRa在大尺度衰落和小尺度衰落情况下都高于传统的速率选择算法SampleLite、MinstrelHT和RRAA.

图 7 不同状态下UDP吞吐量比较

5 结论与展望

在综合分析IEEE 802.11ac协议的新增特征之后, 提出了一种高效的速率自适应算法VhRa. 该算法通过对当前信道状况实时准确地估计, 通过阈值来确定MIMO模式、信道宽度, 避免了搜索空间的选择过大, 减少了开销, 同时, 基于Zigzag探测的选择MCS值保证了算法实现的性能准确性.仿真验证表明, 在不同运动场景和有无衰落情况下该算法的UDP吞吐率性能和算法运行时间均优于RRAA、SampleLite以及Minstrel-HT等速率自适应算法. 但受限于仿真工具, 缺乏对更高信道带宽和MIMO技术的精确模拟, 后续工作将把VhRa算法集成到实际的802.11 ac硬件系统平台上.

参考文献
[1]
Zeng YZ, Pathak PH, Mohapatra P. Throughput, energy efficiency and interference characterisation of 802.11ac. Transactions on Emerging Telecommunications Technologies, 2017, 28(2): e2946. DOI:10.1002/ett.2946
[2]
Lee D, Seok Y, Noh Y, et al. Link adaptation for multi-user transmission in 802.11 systems: US, 10257324. 2019-04-09.
[3]
陈剑, 李贺武, 张晓岩, 等. IEEE 802.11n中速率、模式及信道的联合自适应算法. 软件学报, 2015, 26(1): 98-108. DOI:10.13328/j.cnki.jos.004583
[4]
Li CY, Peng CY, Lu SW, et al. Latency-aware rate adaptation in 802.11n home networks. Proceedings of 2015 IEEE Conference on Computer Communications (INFOCOM). Hong Kong, China. 2015. 1293–1301.
[5]
Arif TY, Munadi R, Fardian. Evaluation of the minstrel-HT rate adaptation algorithm in IEEE 802.11n WLANs. International Journal of Simulation: Systems, Science & Technology, 2017, 18(1): 11.1-11.7.
[6]
Nguyen D, Garcia-Luna-Aceves JJ. A practical approach to rate adaptation for multi-antenna systems. Proceedings of the 19th IEEE International Conference on Network Protocols. Vancouver, BC, Canada. 2011. 331–340.
[7]
Kriara L, Marina MK. SampleLite: A hybrid approach to 802.11n link adaptation. ACM SIGCOMM Computer Communication Review, 2015, 45(2): 4-13. DOI:10.1145/2766330.2766332
[8]
Huang TP, Li SB, Gao SS. RaCA: A joint rate and channel adaptation scheme for dense 802.11n networks. Procedia Computer Science, 2017, 111: 183-189. DOI:10.1016/j.procs.2017.06.026
[9]
Khan MO, Dave V, Chen YC, et al. Model-driven energy-aware rate adaptation. Proceedings of the 14th ACM International Symposium on Mobile ad Hoc Networking and Computing. Bangalore, India. 2013. 217–226.
[10]
Elhabian SY, El-Sayed KM, Ahmed SH. Moving object detection in spatial domain using background removal techniques-state-of-art. Recent Patents on Computer Science, 2008, 1: 32-54. DOI:10.2174/2213275910801010032
[11]
Deek L, Garcia-Villegas E, Belding E, et al. Intelligent channel bonding in 802.11n WLANs. IEEE Transactions on Mobile Computing, 2014, 13(6): 1242-1255. DOI:10.1109/TMC.2013.73
[12]
Karmakar R, Chattopadhyay S, Chakraborty S. Dynamic link adaptation in IEEE 802.11ac: A distributed learning based approach. Proceedings of the IEEE 41st Conference on Local Computer Networks (LCN). Dubai, United Arab Emirates. 2016. 87–94.
[13]
Pefkianakis I, Hu Y, Wong SHY, et al. MIMO rate adaptation in 802.11n wireless networks. Proceedings of the 16th Annual International Conference on Mobile Computing and Networking. Chicago, IL, USA. 2010. 257–268.
[14]
Riley GF, Henderson TR. The ns-3 network simulator. Wehrle K, Güneş M, Gross J. Modeling and Tools for Network Simulation. Berlin, Heidelberg: Springer, 2010: 15–34.
[15]
何莹. 基于IEEE802.11的无线Ad Hoc网络的接入性能研究及算法改进. 计算机系统应用, 2016, 25(11): 237-242. DOI:10.15888/j.cnki.csa.005612
[16]
Combes R, Proutiere A, Yun DY, et al. Optimal rate sampling in 802.11 systems. Proceedings of IEEE INFOCOM 2014-IEEE Conference on Computer Communications. Toronto, ON, Canada. 2014. 2760–2767.
[17]
Wong SHY, Yang H, Lu SW, et al. Robust rate adaptation for 802.11 wireless networks. Proceedings of the 12th Annual International Conference on Mobile Computing and Networking. Los Angeles, CA, USA. 2006. 146–157.
[18]
Purandare RG, Kshirsagar SP, Koli SM. Loss differentiated channel aware rate adaptation for IEEE 802.11n wireless links. Wireless Personal Communications, 2019, 107(4): 2211-2230. DOI:10.1007/s11277-019-06379-x
[19]
Karmakar R, Chattopadhyay S, Chakraborty S. IEEE 802.11ac Link Adaptation Under Mobility. Proceedings of the 42nd IEEE Conference on Local Computer Networks. Singapore. 2017. 392–400.
[20]
Wang GH, Zhang SF, Wu KS, et al. TiM: Fine-grained rate adaptation in WLANs. IEEE Transactions on Mobile Computing, 2016, 15(3): 748-761. DOI:10.1109/TMC.2015.2421938