具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
在介绍本发明提供的发送报文的方法之前,首先对本发明的基础知识进行简要的介绍:
1、速率自适应技术是针对时变空变的信道状况自适应的调节MCS(Modulation and Coding Scheme,调制编码方案),以得到较高吞吐量的技术。作为改善WLAN性能的机制,速率自适应广泛应用于无线网络中。
2、ACK(ACKnowledge Character,确认字符)报文为TCP数据包首部中的确认标志,用于对已接收到的TCP报文进行确认。在TCP/IP协议中,如果接收端成功的接收到数据,会回复一个ACK报文。通常ACK报文有自己固定的格式、长度大小,由接收端回复给发送端,其格式取决于采取的网络协议。当发送端接收到ACK信号时,就可以发送下一个数据。如果发送端没有收到报文,那么发送端可能会重发当前的数据包,也可能停止传送数据,具体情况取决于所采用的网络协议。ACK信号通常是一个ASCII字符,不同的协议中ACK信号都不一样。
3、波瓣宽度是指天线的辐射图中低于峰值3dB处所成夹角的宽度,天线的辐射图是度量天线各个方向收发信号能力的一个指标,通常以图形方式表示为功率强度与夹角的关系,其中,参见图1,如图所示两条3dB的功率衰减线之间的夹角即为波束宽度。对于波束宽度小于47度的天线,当用户沿着波束主瓣轴线方向(如图1中的x轴反向)移动时RSSI的降低小于用户沿着偏离波束的方向(如图1中的y轴方向)的RSSI降低。
实施例1
为了提高WLAN网络的性能,本发明实施例提供了一种发送报文的方法,参见图2,该方法包括:
101:获取用于描述通信状态的信息;
102:分析该用于描述通信状态的信息,得到当前的通信性能,并判断该通信性能是否满足预设标准;
103:当该通信性能不满足预设标准时,根据该用于描述通信状态的信息对通信配置中的天线阵列或数据发送速率进行调整;
104:根据调整后的通信配置发送报文。
本发明在WLAN网络中,根据通信状态的具体情况联合考虑速率与天线阵列自适应,不仅提升了WLAN网络的吞吐量,且使得WLAN网络可以根据当前通信状态动态的调整通信配置以便提高通信效率。
实施例2
为了提高WLAN网络的性能,本发明实施例提供了一种发送报文的方法,参见图3,该方法包括:
201:当接收到ACK报文时,获取该ACK报文中的PER(Packet Error Ratio,数据包错误率)和RSSI(Receive Signal Strength Index,接收端信号强度指数);
202:获取发包信息中的发送数据速率和波束方向信息;
需要说明的是,步骤201和步骤202是获取用于描述通信状态的信息的过程,该两个步骤没有必然的先后顺序,即步骤202也可在步骤201前进行,且该两个步骤可以同时进行,本发明实施例仅以先接收ACK报文为例进行说明。
进一步地,在获取到RSSI和PER后,保存保存获取的RSSI和PER。
203:根据获取的数据包错误率、和发送数据速率计算当前的吞吐量;
具体的,该当前的吞吐量的计算方法包括:当前发送数据速率×(1-数据包错误率)。
在本发明实施例中,数据包错误率、接收端信号强度指数、发送数据速率和波束方向信息等均为用于描述通信状态的信息,通过对这些信息进行分析,可获知当前的通信性能。
204:判断当前吞吐量是否大于或等于预设阈值,
如果是,则当前的通信性能满足预设标准,结束;
如果否,则当前的通信性能不满足预设标准,执行步骤205;
其中,吞吐量可以用来衡量当前的通信性能是否达到预设标准,如果吞吐量小于预设阈值,则说明通信性能未达到预设标准,该接收端可能受到了干扰。该预设阈值为接收端根据自身性能设定,可以根据接收端的不同而变化。
需要说明的是,当前的通信性能满足预设标准时,没有必要对当前的通信配置进行调整,可以结束调整的流程,而当继续接收ACK报文后,再进行通信性能的判断。
该步骤204为分析该用于描述通信状态的信息,得到当前的通信性能,并判断该通信性能是否满足预设标准的过程,在该过程中,通信性能的预设标准为根据系统要求设置的,而吞吐量的预设阈值,也是根据该系统要求设置的,本发明实施例对此不做具体限定。
205:判断本次统计的RSSI是否小于上一次统计的RSSI;
如果是,则执行步骤208;
如果否,则执行步骤206;
在本发明实施例中,进行比较所用的RSSI可以为本次报文的RSSI和上一次报文的RSSI,也可以是一段时间内的统计值,即保存每次从ACK报文中读取的RSSI,每隔预设时间对该段时间内的RSSI值进行统计,该统计可以为求和,也可以为取该段时间内RSSI的平均值,还可以某种算法之后得到的一个统计RSSI值,本发明实施例对此不做具体限定。
206:判断报文重传次数是否小于第一预设阈值,如果是,执行步骤209,如果否,执行步骤207;
207:判断当前的数据包错误率是否小于第二预设阈值,如果是,则执行步骤209,如果否,执行步骤210;
208:判断本次统计的RSSI与上一次统计的RSSI之间的差值是否小于第三预设阈值,如果是,执行步骤209,如果否,执行步骤210;
需要说明的是,在上述步骤208的判断过程中,此时本次统计的RSSI相对于上一次统计的RSSI下降,但是变化的值小于第三预设阈值,优选地,该第三预设阈值为1,通过调整速率来进行微调;反之,如果RSSI变化量超过第三预设阈值,则需要通过调整波束方向来跟踪用户。
需要说明的是,当步骤205判断出本次统计的RSSI相对于上一次统计的RSSI增加时,可能发生的情况是用户确实收到了更好的信号或者是用户在该波束方向上有了强干扰,则需要利用步骤206进一步判断RSSI增加的原因,如果是用户收到的信号确实增强了,那么用户此时应该不会重传,即重传次数小于第一预设阈值,优选的,重传次数为0,此时,应该调整该用户在该波束上的速率,以期得到更好的通信效率;反之,如果信号RSSI增强,但是报文重传次数超过第一预设阈值,优选地,该第一预设阈值为3,那么用户应该是收到了其他的干扰,进一步通过步骤207的判断来根据当前的数据包错误率来决策需要调整波束,还是需要降低速率来适应这种信道环境的变化,当数据包错误率低于第二预设阈值,优选地,该第二预设阈值为4,通过降低速率来适应信道变化,当数据包错误率高于第二预设阈值,则此时的信道状态已经很差,需要调整当前通信的波束方向,寻找更好的通信配置。
209:根据保存的RSSI和PER确定速率调整的位置,并根据速率激活频率随机选取满足吞吐量需要的发送数据速率,执行步骤211;
在本发明实施例中,速率的搜索方向是指根据需要改变速率时的速率改变走向,如需要提高速率,则该搜索方向为向上搜索,如需要降低速率,则该搜索方向为向下搜索。
本领域技术人员可以获知,MIMO系统中数据包错误率和发送数据速率之间为非单调性关系,所以在搜索的时候基于动态滑动窗口机制对最佳速率进行搜索,即逐步的缩小最佳速率的搜索范围,选择最优的速率。其详细的步骤如下:
209a:根据保存的RSSI和PER中当前速率对应的RSSI或PER,确定速率的搜索方向;
在本发明实施例中,从保存的RSSI和PER中获取当前速率对应的RSSI或PER后,根据当前速率上的RSSI和PER确定速率的搜索方向包括:当在该速率上的RSSI增加或超过某预设阈值、PER降低或低于某预设阈值时,速率的搜索方向为向上搜索;当在该速率上的RSSI降低或低于某预设阈值或PER增加或超过某预设阈值时,速率的搜索方向为向下搜索;
209b:确定速率搜索窗口的宽度;
需要说明的是,速率搜索窗口的宽度随着搜索时间的增长而减小。具体地,速率搜索窗口是一个随时间而减小的函数,其在初始时可以根据经验设置一个预设值,该减函数设计使得随着用户在该波束上停留时间(time)的增加,速率搜索窗口的宽度越来越小,从而最后稳定在某一个速率上。
在本发明实施例中,将速率搜索窗口设置为随时间减小的减函数,不仅符合数据包错误率和发送数据速率之间的非单调性关系,而且可以在搜索中逐渐缩小搜索的范围,最终找到合适的速率。
例如:设置速率搜索窗口函数为下式:
SearchWindow=Wmin+(Wmax-Wmin)×exp(-alpha×Time);
其中,SearchWindow为速率搜索窗口,Wmax为速率搜索窗口的初始值,Wmin为速率搜索窗口的最小值,alpha为调整收敛的速率的参数,Time为搜索时间,即随着Time的增加,速率搜索窗口SearchWindow由初始值为Wmax逼近于最小值为Wmin。
209c:根据当前速率、速率的搜索方向和速率搜索窗口的宽度确定速率调整的位置;
在本发明实施例中,当速率搜索方向为向上搜索时,搜索当前速率上方的速率搜索窗口中的符合预设标准的所有速率;当速率搜索方向为向下搜索时,搜索当前速率下方的速率搜索窗口中的符合预设标准的所有速率。符合预设标准的速率可以为该速率所对应RSSI和PER为预设阈值或该速率所对应的RSSI和PER大于或等于预设阈值。
例如,当速率搜索方向参数search_dir的输入为up时,搜索所有索引在[CUR_MCS_INDEX-W/4,CUR_MCS_INDEX+3W/4]范围内的速率的Goodput;当速率搜索方向参数search_dir的输入为down时,搜索所有索引在[CUR_MCS_INDEX-3W/4,CUR_MCS_INDEX+W/4]范围内的速率的Goodput。其中,该Goodput即是符合预设标准的所有速率。
209d:根据每个速率上能够获得的吞吐量和该速率在预设时间内的速率激活频率选择出满足吞吐量需要的发送数据速率。
进一步地,为速率搜索窗口内的每个速率维护一个速率激活频率参数,按照速率激活频率的大小随机选择一个满足吞吐量需要的发送数据速率;
在本发明实施例中,当确定速率调整的位置后,对选定的位置上的每个速率进行吞吐量的计算,在满足吞吐量的速率中选择预设时间内激活频率较低的速率,将该速率作为发送数据速率。其中,速率激活频率如果很高,则说明该速率在预设时间内长时间处于工作状态,而当前的通信性能不满足预设标准,所以该频率的使用并无法达到预期,则尽量避免选择这类频率。
210:根据保存的RSSI和PER,将根据预设标准评价出的性能最好的波束方向作为当前的波束方向,执行步骤211;
其中,RSSI和PER信息为用于描述通信状态的信息,当接收到ACK报文时,从ACK报文中获取RSSI和PER,并将该RSSI和PER与当前的通信配置对应的保存起来,即可以根据当前的通信配置中的波束组合或速率等查询到对应的RSSI和PER,随着通信的进行,不断的将新的数据维护起来,以便对通信状态及其对应的配置进行查询。
当用户信道质量变化不是很大的情况下,即RSSI增加,并且不是干扰引起的,没有引发速率和波束的任何调整,那么用户当前的信道条件可以认为是相对稳定的状态,为了保证用户能够有更好的通信波束,此时用户需要通过天线探测单元进行更优波束的探测。
具体地,该调整波束的方法包括:
210a:根据记录中各个单波束的RSSI和PER确定预设数目个信号强度符合第一预设标准的单波束;
在本发明实施例中,为每个接收端维护一个可用的单波束列表,列表中维护每个单波束上的连续丢包个数,PER等信息。下表1所示为某个接收端对应的单波束列表信息,其中,在查询该表时可以以用户的MAC地址作为索引。需要说明的是,记录中的各个单波束的信息是由发送端从预先建立关联的接收端中得到的。
表1
具体地,根据各个单波束的连续丢包或PER或重传等信息,选择关闭或重新使能接收端的波束列表中的某个单波束。从当前的单波束中选择出预设个数个信号强度符合第一预设标准的单波束的单波束,优选地,信号强度可以根据综合指标(连续丢包或PER或重传等信息)评价,使之处于使能状态,需要说明的是,初始状态所有单波束都是使能状态,在不断的通信过程中,单波束的工作状态可能改变。
当选择好预设个数个单波束后,需对由选择出的单波束组成的波束组合进行进一步的调整,以便使得波束组合的接收信号强度最大。
其中,第一预设标准可以为RSSI最强,也可以是RSSI的统计平均值最大,也可以是RSSI的方差最小等等标准,本发明实施例对此不做具体限定。
210b:根据保存的RSSI和PER,从该预设数目个信号强度符合所述第一预设标准的单波束中选择第二预设数目个单波束组成波束组合,并根据第二预设标准评价出的性能最好的波束方向,将该性能最好的波束方向作为当前的波束方向。
其中,第二预设标准可以为RSSI最强,也可以是RSSI的统计平均值最大,也可以是RSSI的方差最小等等标准,本发明实施例对此不做具体限定。
在本发明实施例中,该步骤具体包括:根据从预先建立关联的接收端得到的各个波束组合的RSSI和PER,从该预设数目个信号最强的单波束中选择的第二预设数目个单波束组成RSSI高于第四预设阈值、PER低于第五预设阈值的波束组合,将该波束组合的方向确定为性能最好的波束方向,将该性能最好的波束方向作为当前的波束方向。
在本发明实施例中,为每个接收端维护一张该发送端的每个可用天线组合上各种链路速率对应的发送统计信息表,例如PER,RSSI等(如下表2所示)。发送端在发送报文时,根据统计信息选择吞吐量最大的有效速率Effective_rate的一组<Beam,Rate>组合发送此报文。其中,Effective_rate=Rate×(1-PER)。
本领域技术人员可以获知,在发送端和接收端建立关联之后,会在发送端本地保存该接收端对应的信息,一个发送端可以关联多个接收端,也就会在发送端有多个接收端的信息,该信息包括多个接收端所维护的发送统计信息表。某个接收端对应的TOP N的波束组合列表信息(可以以用户的MAC地址作为索引):
表2
进一步地,发送端发送完毕一个数据包后,根据发送的成功失败结果(通过收取ACK的信息获取)更新对应(Beam,Rate)上的统计信息PER,RSSI。根据维护的该波束组合可用列表,可以实时的根据当前的通信状态选择下一个天线探测时用的波束组合。
在步骤210中,上述对波束的调整和对波束组合的调整都是通过开关阵列控制天线的开与关,形成所需要的波束组合与对应的接收端通信。
211:当对通信配置的调整执行完后,按照调整之后的通信配置发送报文。
本发明实施例提供的方法只需在网络侧设备部署,无需与用户终端的无线设备交互,可以直接应用于现有的WLAN系统中,或者在现有的WLAN系统直接通过软件固件升级的方式实现在现有802.11芯片中,实现简单,成本低。
综上所述,当需要调整天线阵列时,根据保存的RSSI和PER,将根据预设标准评价出的性能最好的波束方向作为所述天线阵列的波束方向;
当需要调整发送数据速率时,根据当前速率上的RSSI和PER确定速率调整的位置,并根据速率激活频率随机选取满足吞吐量需要的发送数据速率。
本发明实施例提供的方法,在WLAN网络中,根据通信状态的具体情况联合考虑速率与天线阵列自适应,不仅提升了WLAN网络的吞吐量,且使得WLAN网络可以根据当前通信状态动态的调整通信配置以便提高通信效率。
实施例3
为了提高WLAN网络的性能,本发明实施例提供了一种发送报文的装置,参见图4,该装置包括:
获取模块401,用于获取用于描述通信状态的信息;
通信性能分析模块402,用于分析该用于描述通信状态的信息,得到当前的通信性能,并判断该通信性能是否满足预设标准;
参见图5,该获取模块401包括:
第一获取单元401a,用于从发包信息中获取通信的发送速率和波束方向信息;
第二获取单元401b,用于当接收到确认ACK报文时,从该ACK报文中获取数据包错误率PER。
该通信性能分析模块402包括:
吞吐量计算单元402a,用于根据该用于描述通信状态的信息中的PER和该通信的发送速率进行计算,得到当前的吞吐量,该吞吐量用于衡量当前的通信性能;
通信性能判断单元402b,用于判断该吞吐量是否大于预设阈值,如果是,则该通信性能满足预设标准;如果否,则该通信性能不满足该预设标准。
通信配置调整模块403,用于当该通信性能不满足预设标准时,根据该用于描述通信状态的信息对通信配置中的天线阵列或数据发送速率进行调整;
报文发送模块404,用于根据调整后的通信配置发送报文。
该获取模块401还包括:
第三获取单元402c,用于从该ACK报文中获取接收端信号强度指数RSSI,并保存获取的RSSI和PER。;
相应地,参见图6,该通信配置调整模块403包括:
第一判断单元403a,用于判断本次统计的RSSI是否小于上一次统计的RSSI,如果是,则触发第四判断单元,如果否,则触发第二判断单元,
该第二判断单元403b,用于判断报文重传次数是否小于第一预设阈值,如果是,则对通信配置中的发送数据速率进行调整,如果否,触发第三判断单元;
该第三判断单元403c,用于判断当前的数据包错误率是否小于第二预设阈值,如果是,则对通信配置中的发送数据速率进行调整,如果否,则对该通信配置中的天线阵列进行调整;
该第四判断单元403d,用于判断本次统计的RSSI与上一次统计的RSSI之间的差值是否小于第三预设阈值,如果是,则对通信配置中的发送数据速率进行调整,如果否,则对该通信配置中的天线阵列进行调整。
参见图7,该通信配置调整模块403具体包括:
发送数据速率调整单元403e,用于当需要调整天线阵列时,根据保存的RSSI和PER,将根据预设标准评价出的性能最好的波束方向作为该天线阵列的波束方向;
波束方向调整单元403f,用于当需要调整发送数据速率时,根据所述保存的RSSI和PER确定速率调整的位置,并根据速率激活频率随机选取满足吞吐量需要的发送数据速率。
该发送数据速率调整单元403e包括:
搜索方向子单元403e1,用于根据所述保存的RSSI和PER中当前速率对应的RSSI或PER,确定速率的搜索方向;
窗口宽度子单元403e2,用于确定速率搜索窗口的宽度;
速率调整位置子单元403e3,用于根据当前速率、速率的搜索方向和速率搜索窗口的宽度确定速率调整的位置;
速率选取子单元403e4,用于根据每个速率上能够获得的吞吐量和该速率在预设时间内的激活频率选择出本次发送所用的发送数据速率。
该搜索方向子单元403e1具体用于根据所述保存的RSSI和PER中当前速率对应的RSSI或PER对该当前速率的通信状态进行判断,如果当前速率上的通信状态较好,该速率搜索方向为向上搜索;如果该当前速率上的通信状态较差,该速率搜索方向为向下搜索。
该速率调整位置子单元403e3具体用于当速率搜索方向为向上搜索时,搜索当前速率上方的速率搜索窗口中的符合预设标准的所有速率;当速率搜索方向为向下搜索时,搜索当前速率下方的速率搜索窗口中的符合预设标准的所有速率。
需要说明的是,该速率搜索窗口的宽度随着搜索时间的增长而减小。
该波束方向调整单元403f包括:
单波束选择子单元403f1,用于根据保存的各个单波束的RSSI和PER确定预设个数个信号强度符合第一预设标准的单波束;
波束组合选择子单元403f2,用于根据保存的各个波束组合的RSSI和PER,从该预设数目个信号强度符合该第一预设标准的单波束中选择第二预设数目个单波束组成波束组合,根据第二预设标准评价出的性能最好的波束方向,将该性能最好的波束方向作为当前的波束方向。
波束组合选择子单元403f2具体用于根据从预先建立关联的接收端得到的各个波束组合的RSSI和PER,从该预设数目个信号最强的单波束中选择的第二预设数目个单波束组成RSSI高于第四预设阈值、PER低于第五预设阈值的波束组合,将该波束组合的方向确定为性能最好的波束方向,将该性能最好的波束方向作为当前的波束方向。
本实施例提供的装置,具体可以为通信系统中的接收端,与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本发明实施例提供的装置,在WLAN网络中,根据通信状态的具体情况联合考虑速率与天线阵列自适应,不仅提升了WLAN网络的吞吐量,且使得WLAN网络可以根据当前通信状态动态的调整通信配置以便提高通信效率。
本发明实施例提供的上述技术方案的全部或部分可以通过程序指令相关的硬件来完成,所述程序可以存储在可读取的存储介质中,该存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。