IEEE 802.11协议利用RTS/CTS帧交换来设置设备的网络分配矢量(NAV)。现有NAV方案未考虑密集部署场景,可能存在误清除的情况。提出一种简便可行的可计数NAV(C-NAV)设置方案,通过统计NAV设置信息的个数并进行实时更新以防止误清除,从而更有效地利用传输机会。对所提C-NAV方案进行了理论分析和仿真验证,证明在密集部署无线WiFi场景中,该方案能有效避免现有设置方案NAV时长浪费和错误清除等问题,提升网络的整体吞吐量。 网络分配矢量;密集部署场景;传输机会;重叠的基础服务集 中图分类号:TN925.93 文献标识码:A DOI:10.16157/j.issn.0258-7998.170232 中文引用格式:何明泰,李可,刘恒. 密集无线WiFi网络环境网络分配矢量优化与性能分析[J].电子技术使用,2017,43(9):106-110. 英文引用格式:He Mingtai,Li Ke,Liu Heng. Optimized network allocation vector setting and performance analysis in dense 无线WiFi networks[J].Application of Electronic Technique,2017,43(9):106-110. 引言 随着无线网络技术的快速发展,移动终端和智能设备的数量迅猛增长,使无线网络环境变得越来越拥挤。尤其在无线WiFi网络热点处,已经出现了诸如容易掉线、网速差等现象,严重影响用户体验。 同时,人们对无线网络性能的要求却越来越高。为了满足用户需要,在下一代无线网络中,接入点(Access Point,AP)将会部署得越来越密集,最终形成一种新的网络形式——密集型无线WiFi网络。密集型无线WiFi网络是指场景中任意一个基础服务集(Basic Service Set,BSS)都有3个以上的重叠的基础服务集(Overlapping BSS,OBSS),即AP所拥有的邻居AP数远多于3个的无线网络[1]。 在无线WiFi网络中,为避免因距离远而不能感知正在通信的终端的存在,802.11协议提出了虚拟载波侦听机制,利用请求发送帧和清除发送帧(Request To Send/Clear To Send,RTS/CTS)交换来设置终端的网络分配矢量(Network Allocation Vector,NAV)。即在开始发送数据前,先发送RTS和CTS帧,这两个帧都含有NAV设置的信息,所有接收到这两个帧的终端根据协议判断是否需要设置NAV。 传统的NAV设置方案大多以传输机会(Transmission Opportunity,TXOP)来设置,设置的时间一般较长,这意味着会浪费较多的信道利用机会。而现有改进的NAV设置方案虽然能够克服时长浪费的问题,但在密集型无线WiFi网络环境下依旧存在误清除的情况。误清除可能会造成终端过早接入信道,与正在通信的终端发生碰撞,从而影响网络整体吞吐量。因此,提出一个适用于密集型无线WiFi网络场景的NAV方案就成了搞定碰撞和时长浪费问题的关键。 近年来,已有一些文献[2-9]提出了改进的NAV设置方案以提升系统性能。主要包括以下几个方面的内容: (1)基于传统的NAV设置方案进行改进以搞定时长浪费的问题。例如文献[2]中提出的两层网络分配矢量方案(Two Level NAV,TLNAV)。该方案是通过用块确认帧/块确认请求帧(Block Acknowledge/Block Acknowledge Request,BA/BAR)中的保留字段携带最后一帧信息来清除冗余的NAV设置,以搞定因多用户MIMO(Multiple Users Multiple Input Multiple Output,MU-MIMO)给系统带来的TXOP时长浪费问题。 此方案没有考虑密集场景的情况,仍有可能无法避免干扰,甚至造成干扰加剧。文献[3]中通过两级载波侦听机制OBNAV(Overlapping BSS NAV)和SBNAV(Self BSS NAV)来搞定OBSS的干扰问题,但保持多个NAV的方式需要传输更多的帧[4],会增加额外的通信开销。 (2)根据STA传输的业务类型[5]和数据包[7]不一样、或运用的协议类型[6]不一样来设置不一样的NAV。文献[5]根据终端传送的是数据还是语音信息来设置对应的NAV值。语音信息则设置较短的NAV值,而数据信息则多加一个优先接入时长作为其NAV值。文献[6]通过对运用802.11g的高速STA设置较短的NAV值,保证高速STA的吞吐量不低于运用802.11b的低速STA的吞吐量,确保系统整体吞吐量不受相同的NAV设置策略的影响,搞定了不一样协议类型的STA的共存问题。文献[7]通过仿真比较了传输每一个数据包独立设置NAV和传输多个数据包一次设置NAV的吞吐量不一样,并证明在没有NAV清除机制的情况下,传输每一个包独立设置NAV的吞吐量优于多个包一次设置NAV。但分类设置要求AP对其关联的每一个STA都进行分类管理,增加了系统管理的复杂度。 (3)通过改进RTS/CTS发送机制来减少无用的NAV设置。文献[8]采用一种替代RTS/CTS的机制——带冲突避免的媒质接入(Media Access with Collision Avoidance,MACA)机制。该机制实质上是缩短了NAV的时长,减少了时长浪费,但是该方案需改变现有的RTS/CTS机制。文献[9]提出一种由发送端主动发送 “取消”帧来清除无用的NAV设置的方案,以减少不合理的NAV设置带来的时长浪费问题。由于每个“取消”帧仅对一个STA的NAV进行清除,当存在多用户时,特别是在MU-MIMO场景下依旧存在时长浪费的现象。 综上所述,现有NAV设置方案并不适用于密集无线WiFi网络场景,现在针对密集无线WiFi场景的NAV设置方案的研究还存在不够。因此本文提出了一种可计数的网络分配矢量(Countable-NAV,C-NAV)方案,以搞定密集无线WiFi网络场景带来的时长浪费和误清除问题。通过理论分析和仿真结果证明:该方案能有效避免传统NAV设置带来的时长浪费和已有改进设置方案可能带来的NAV错误清除,从而提升了网络的整体吞吐量。 1 NAV设置的问题和C-NAV方案规划 在密集场景下,一个终端(AP或STA)在一段时间内会接收到多个NAV设置信息,当终端上电后接收到第一个NAV信息,自然将其作为NAV值设置。在收到第二个NAV信息时,终端将新的NAV值与其剩余NAV时长比较,若新NAV值长于终端的剩余NAV时长,则更新其NAV值为新的NAV时长。当AP与STA之间完成数据传输,按照传统的NAV设置方式AP会广播CF-End(Contention Free-End)帧来清除剩余时长,但是此方式可能造成TXOP时长浪费的问题。 如图1所示,4个AP的覆盖范围相互都有重叠。现以STA4为例做进一步说明,当AP1、AP2、AP3分别向STA1、STA2、STA3发送数据包,STA4会分别收到来自STA1、STA2、STA3的NAV设置信息。假设STA4最先收到STA1的NAV设置信息,则STA4以STA1的NAV设置信息中的时长值作为其NAV值。当接收到STA2和STA3的NAV设置信息后,STA4会将其与当前的NAV剩余时长比较,判断是否需要更新其NAV值。一旦AP1与STA1,或AP2与STA2,或AP3与STA3完成数据发送,各AP广播CF-End帧,接收到CF-End帧的STA就会清除剩余TXOP时长。然而STA4不在AP1、AP2和AP3的覆盖范围内,会因收不到CF-End帧而不能清除TXOP剩余时长,从而造成STA4传输机会的浪费。 下面用图2来详细说明C-NAV方案: (1)STA4收到第一个NAV设置信息(来自STA1),设置其NAV值,且计数器加1。 (2)当收到一个新的NAV设置信息时(来自STA2)计数器加1。并比较剩余NAV与新NAV的时长,若新NAV大于剩余NAV时长,则更新NAV值为新的NAV值,否则不更新。 (3)收到第3个NAV设置信息时,同步骤(2)的操作,STA4的计数器加1,计数器的值为3。 (4)当AP1与STA1之间结束传输,AP1与STA1分别发送携带最后一帧信息的BAR和BA。STA4检测到STA1发送的携带最后一帧信息的BA,其计数器减1。 (5)当STA4检测到STA3发送的携带最后一帧信息的BA时,计数器再减1。 (6)STA4收到STA2发送过来的携带最后一帧信息的BA, 计数器减1。此时计数器值为0了,则清除TXOP剩余时长。 2 性能分析 假设RTS、CTS、BAR、BA 4种帧在发送过程中都能成功发送并被周围的STA成功接收。设传输时延为δ,则在一个TXOP时长内这4种帧发送的总时长是固定的,将这个总时长记为T1。则: 其中,G表示AP一次同时通信的STA个数,tSIFS表示一个SIFS间隔的时间(SIFS是RTS与CTS及BAR与BA之间响应的时间间隔)。 假设第i帧发送完成的时间(即单帧服务时间)yi服从参数为λ的指数分布(其均值为1/λ),那么在一个TXOP时长内发送完成n帧的时间Yn=y1+y2+…+yn服从参数为(n,λ)的Erlang分布[10]。则TXOP内n个帧的平均帧发送时长为n/λ。 冗余时间应该是NAV设置的时长减去发送固定帧的总时长(式(1))和发送数据包的时间,所以冗余时间Tr为: 仿真场景设置:在一个热点区域内布有4个AP,位置坐标分别为(40 m,40 m)、(-40 m,40 m)、(40 m,-40 m)、(-40 m,-40 m)。每个AP的覆盖半径RAP=60 m。一个AP关联20个STA,每个STA的传输半径为40 m,这20个STA的位置可以在所关联的AP覆盖范围内服从均匀分布。 基本的仿真参数设置由表1给出。图3分别给出了在发送数据帧n和每帧发送完成时间均值不一样情况下产生的冗余时间概率密度分布,同时给出理论结果。从图3可以看出:(1)仿真计算的冗余时间概率密度分布曲线与理论计算曲线吻合,说明了仿真过程的正确性;(2)冗余时间随TXOP时长内发送的数据帧数n增加而减小,冗余时间小的概率就越大。这是因为TXOP时长是一段固定的时间,在这段时间内用于发送的数据帧的时间越多,冗余时间就越少,与实际情况相符合。 本文针对下一代密集无线WiFi网络场景提出了一种可计数的网络分配矢量方案C-NAV,通过统计NAV设置信息的个数与收到的携带最后一帧信息的BA/BAR的个数并进行实时更新以防止误清除,搞定了密集无线WiFi网络场景带来的时长浪费和误清除问题。本文对C-NAV方案进行了理论分析和仿真验证,证明了方案的正确性,并能有效避免传统NAV设置带来的时长浪费和已有改进设置方案可能带来的NAV错误清除,从而提升了网络的整体吞吐量。 |