一种无线接入点的负载均衡方法

文档序号:7561463阅读:199来源:国知局
专利名称:一种无线接入点的负载均衡方法
技术领域
本发明涉及一种网络负载均衡方法,尤其是一种应用于无线网络的接入点的负载均衡方法。
背景技术
互联网的快速增长使得网络服务器面对的访问者数量快速增加。尤其是各个网络的核心部分,其数据流量和计算强度之大,使得单一设备根本无法承担。而如何在完成同样功能的多个网络设备之间实现合理的业务量分配,不至于出现一台设备过忙、而别的设备却未充分发挥处理能力的情况,就成了一个非常现实的问题,负载均衡机制也因此应运而生。
对一个网络的负载均衡应用,可以从网络的不同层次入手,具体情况要看对网络瓶颈所在之处的具体分析。目前实现负载均衡主要有以下方法一是基于特定服务器软件的负载均衡,二是基于域名服务器的负载均衡,三是利用反向代理实现负载均衡,四是基于网络地址转换的负载均衡。
随着无线技术的快速发展,无线客户终端数量快速增加,无线接入的关键设备AP(Access Point无线接入点)的负担也加重,单一设备无法承担,因此,实现多台AP之间均衡负载,是一个非常重要的问题。
目前在一些无线AP上,也采用了负载均衡来减轻单个AP上的负载,基本实现的框架如图1所示,负载均衡的整个方案是有线网络来实现的,通过后台的专用服务器来将负载平均分配给各个AP。这种针对无线网络AP的负载均衡实现模式,由于需要专用服务器,所以成本比较高;AP与服务器之间必须通过有线网络连接,不适用于单纯的无线网络;并且开发成本高,容错性差,服务器一旦出现问题,则整个负载均衡功能崩溃。

发明内容
本发明所要解决的技术问题在于提供一种无线接入点的负载均衡方法,每个AP都存储其它参与负载均衡的AP的状态信息,可以根据当前网络的负载分配情况决定是否允许新客户接入,使负载按当前接入的客户数或流量被均衡分配到各个AP上。
本发明所述的方法,包括如下步骤步骤一、在每个参与负载均衡AP上启动负载均衡应用服务;步骤二、每个AP依次向其他参与负载均衡发送查询请求;接收到查询请求的AP对查询请求做出响应,向发送查询请求的AP发送自身的信息;发送查询请求的AP根据返回信息更新自身均衡信息库;步骤三、每个AP根据自身更新后的均衡信息库,利用均衡算法决定当前是否允许客户接入;步骤四、AP如果收到结束命令,则退出负载均衡;否则,间隔一段时间后,重新执行步骤二。
本发明通过AP之间的相互通信,使每个AP都存储其它参与负载均衡的AP的状态信息,每个AP可以根据当前网络的负载分配情况决定是否允许新客户接入,客户端根据AP的指示自动与负载较少的AP建立连接,保证无线通信系统中,新的无线客户端自动接入到负载较少的AP上,实现了无线接入点的负载均衡,并且不需后台服务器,减少了负载均衡的成本;分布式的方式也提高了负载均衡的容错能力。


图1是现有技术中的负载均衡的硬件平台;图2是本发明各个模块之间的关系的示意图;
图3是本发明方法的流程图。
具体实施例方式
下面根据附图和实施例对本发明的技术方案做详细说明在无线网络中,每个AP都独立的接入网络,都有自己的IP地址。为了降低成本,本发明方法中并没有专门的服务器,而采用了分布式的实现负载均衡方法,每个加入均衡的AP都独立运行相同的后台负载均衡应用服务。
负载均衡应用服务,如图2所示,包括客户端口处理模块、服务端口处理模块、SNMP通信模块和无线网络驱动的通信模块;所有的模块都对负载均衡信息库进行操作。
客户端口处理模块,向其它AP发送查询指令得到其它AP的当前信息,更新负载均衡信息库;服务器端处理模块,分析和处理来自其它AP的查询请求,从负载均衡信息库获得自己的信息反馈给请求方;SNMP(Simple Network Management Protocol,简单网络管理协议)通信模块,实现负载均衡相关配置数据的存取和初始化;无线网络驱动的通信模块,根据负载均衡结果,实现与无线网络驱动的通信,包括设置允许新客户接入标志位,和得到当前的接入用户数和流量。
本发明所述的方法,包括如下步骤步骤一、在每个参与负载均衡AP上启动负载均衡应用服务;步骤二、每个AP依次向其他参与负载均衡发送查询请求;接收到查询请求的AP对查询请求做出响应,向发送查询请求的AP发送自身的信息;发送查询请求的AP根据返回信息更新自身均衡信息库;步骤三、每个AP根据自身更新后的均衡信息库,利用均衡算法决定当前是否允许客户接入;步骤四、AP如果收到结束命令,则退出负载均衡;否则,间隔一段时间后,重新执行步骤二。
无线客户根据无线网络802.11协议,每次通过一个信道进行AP查询,发送连接请求,如果对应的AP不存在或不允许客户接入,客户会自动查询另一个信道,向另一个AP发送连接请求,自动查找可以接纳的AP,因此,本发明的负载均衡方法通过高负载AP对新客户拒绝,低负载AP对新客户接纳就实现了AP接入点的负载均衡,不需要后台服务器,使成本大为降低;并且每个AP都是独立进行负载均衡的计算,不会因为一台AP出现问题而影响到整个体系。
本发明的步骤一,每个AP启动负载均衡应用服务,包括如下过程每个AP根据自身的配置文件,获得运行负载均衡应用服务所需的信息,开始负载均衡应用服务。
运行负载均衡应用服务所需的信息包括负载均衡的类型,负载均衡算法的阈值和参与负载均衡的AP的IP列表。负载均衡的类型包括按流量和按用户数;负载均衡算法的阈值根据负载均衡的类型和自身的负载均衡算法的不同而有所不同,与AP自身的处理能力和所服务的可能用户数也有关,由网络管理员根据实际情况确定。比如,对办公室的小范围无线局域网,可以选择用户数类型和基于阈值的加权平均算法,并且阈值取10。
AP通过保存在AP中的配置文件获得这些参数。管理员可以利用AP内建的网页服务器的WEB配置界面启动和结束AP负载均衡应用服务,也可以通过WEB配置界面输入参数,通过负载均衡应用服务SNMP模块,更新配置文件中对应的参数。
本发明的步骤二,具体包括如下步骤所述的步骤二中,AP发送查询请求,根据其他AP的返回信息更新自身的均衡信息库,具体包括如下步骤步骤20、每个AP开始轮寻自身均衡信息库中参与负载均衡的IP列表;步骤21、判断是否到达表尾,如果已经到达表尾,结束步骤二;否则执行下一步;步骤22、选定下一个AP,向选定的AP发送查询请求;步骤23、对选定的AP返回的查询请求响应结果进行分析;步骤24、更新均衡信息库中保存的信息,执行步骤21;启动负载均衡应用服务以后,首先要获得进行负载均衡计算所需的每个参与负载均衡的AP的信息,所以要通过客户端口处理模块从第一个AP开始轮寻参与负载均衡的IP列表。
在以上的步骤22之后和步骤23之前,还包括如下过程判断等待选定的AP的响应的时间是否超过预先设定的时间,如果超过预先设定的时间,则将此AP排除均衡范围,不参与均衡计算,执行步骤24更新均衡信息库,将此AP设定为不活跃;否则,执行步骤23。
增加是否超时的判断是因为IP列表中的AP可能没有处于工作状态,或没有启动负载均衡应用服务,或工作繁忙,无法对接入的客户进行处理,所以为了提高效率,设定超时时间将这种情况下的AP,排除均衡范围。一般情况下,超时时间设定为2秒。
负载均衡应用服务由服务器端处理模块对接收到的其他AP的请求做出响应,根据算法的要求从自身的均衡信息库中获得均衡信息,如均衡类型、自身的用户数和流量数据,以及自身对新客户是允许还是拒绝的状态信息,将这些信息以及自身设定的网络信息,如IP和SSID(Service SetIdentifier,网络名),返回给发送请求的AP,具体为如下步骤步骤26、AP接收到查询请求后,从自身的均衡信息库获得自身当前的均衡数据;步骤27、将自身当前的均衡数据组装成请求响应数据;步骤28、发送请求响应数据给发出查询请求的AP。
发出查询请求的AP得到其他AP返回的信息后,要对返回的信息进行分析,因为只有在相同的网络中,相同的均衡类型下进行负载均衡才有意义,这是负载计算的前提。所述的对返回的信息进行分析,具体包括如下步骤步骤230、判断选定的AP的SSID与自身是否相同,如果相同,执行下一步;否则将此AP排除均衡范围,不参与均衡计算,执行步骤24更新均衡信息库,将此AP设定为不活跃;步骤231、判断选定的AP的均衡类型与自身是否相同,如果相同,执行下一步;否则将此AP排除均衡范围,不参与均衡计算,执行步骤24更新均衡信息库,将此AP设定为不活跃;在均衡信息库中,包含参与均衡的AP的IP列表,以及每个AP当前的用户数和流量,信号强度以及容许状态等均衡信息,AP每得到另一个AP返回的响应信息,就更新均衡信息库对应该AP的信息,并且每隔一定时间,就轮寻均衡信息库中的IP列表中的所有AP,将均衡信息库中所有的AP的信息更新一次,获得活动AP列表及活动AP的均衡信息,以保证信息的实时性,负载均衡应用服务根据均衡信息库中的信息进行负载均衡计算。
本发明所述的步骤三,进一步包括如下步骤步骤30、利用均衡算法,计算出允许新用户接入的负载临界值;如果当前负载小于或等于负载临界值,允许新用户接入;如果当前负载大于负载临界值,则不允许新用户接入;或利用均衡算法,直接决定是否允许新用户接入;步骤31、将步骤30的信息递给无线网络的驱动层,按步骤31的允许或不允许结果设定允许新客户接入的标志。
在无线网络的驱动层,每发送一个包,都检查允许新客户接入标志,如果允许新客户接入标志不为真,即不允许新客户接入,则检查帧的类型,如果该帧为连接请求响应帧,则将此帧的状态位置为17,即Associationdenied because AP is unable to handle additional associated stations,通知客户“正在试图建立连接的AP连接的客户已满,不能接收请求”。客户转向别的AP建立连接请求,以此实现了负载均衡。
AP判断自身是否允许新的用户接入的均衡算法有两种,一种是利用均衡算法,计算出允许新用户接入的负载临界值;如果当前负载小于或等于负载临界值,允许新用户接入;如果当前负载大于负载临界值,则不允许新用户接入;另一种为均衡算法直接给出接入或拒绝的条件。
如上所述的负载均衡算法中,计算负载临界值可以用多种方法,最简单的为基于阈值的加权平均算法,按如下公式计算t=1n×Σi=1nti+s]]>式中t表示负载临界值,t1、t2、......、tn分别表示所有活跃AP的当前用户数或最近平均流量,n为所有活跃AP数,s为管理员设定的用户数或流量阈值;或按如下公式计算t=1n×Σi=1nti×(1+w)]]>式中t表示负载临界值,t1、t2、......、tn分别表示所有活跃AP的当前用户数或最近平均流量,n为所有活跃AP数,w为管理员设定的用户数或流量超过平均用户数或流量百分比阈值。
以上的算法虽然简单有效,但是在极其特殊的情况下,比如某个用户正好处于无线网络边缘,只能与有限的几个AP通信,如果这些AP都拒绝此用户,则用户在长时间内都无法接入网络,因此,可以采用如下的算法对基于阈值的加权平均算法进行改进,直接给出允许和拒绝接入的条件。
当收到其它AP的查询请求时,除发送用户数外,还发送最近一个查询周期内当前AP的拒绝记录,每条记录包括用户ID(通常为MAC地址)、信号强度、请求接入的时间等信息。
AP决定是否允许新用户接入的步骤如下步骤300、用基于阈值的加权平均算法计算负载临界值,如果当前负载小于或等于负载临界值,则接收新用户的接入请求,结束步骤30;如果当前负载大于负载临界值,执行下一步;步骤301、判断请求连接的新用户在特定的时间段内是否被当前AP拒绝过,若是,则拒绝该新用户的接入,结束步骤30;步骤302、查询该用户在特定的时间段内被其它AP拒绝的记录,从中找出信号强度最高的记录,设其信号强度为x,假设该用户与当前AP的连接信号强度为y,则当y/x<z时,拒绝该新用户的接入;否则接收该新用户,其中z是一个固定的阈值,取值范围在0.5-1之间。
以上方法中的特定时间段可以为客户查询的一个周期,即客户查询了所有的信道一次为一个周期,也可以说是向所有的AP发送一次连接请求为一个周期。由于信号强度反映了通信质量,为了避免了某些处于网络边缘的用户在长时间内无法接入网络,所以当判断用户已经查询所有的AP失败,就对用户的信号强度进行判断,如果用户与本AP连接的信号强度最强或接近最强(根据阈值决定),就接纳该用户。
本发明如上所述的步骤31的具体过程为负载均衡应用与无线网络驱动是通过IOCTL(INPUT/OUTPUT CONTRAL)的形式进行通信的。负载均衡应用将最终的结果,即是否允许新客户接入标志为以IO请求的形式发送给无线网络驱动层,在无线网络驱动层设置允许新用户接入的标志。
本发明所涉及的AP的负载均衡功能应用所有信息,包括参与均衡的AP的IP地址、阈值、均衡模式等,可以通过AP内建的网页服务器的WEB管理页面进行配置,通过负载均衡应用服务SNMP模块,更新配置文件中对应的参数。
通过以上的描述,可以看出本发明的无线接入点的负载均衡方法,每一个无线接入点都可以看作均衡器的一部分,所有参与均衡的AP构成了一个大的均衡器。每个AP都有自己的IP地址,既是均衡服务器又是均衡客户端,作为服务器不断接收和响应其它AP的信息查询,作为客户端不断的向其它AP发送查询信息指令,使参与均衡AP的IP列表能动态的刷新。
最后所应说明的是以上实施例仅用以说明而非限制本发明的技术方案,尽管参照上述实施例对本发明进行了详细说明,本领域的普通技术人员应当理解依然可以对本发明进行修改或者等同替换,而不脱离本发明的精神和范围的任何修改或局部替换,其均应涵盖在本发明的权利要求范围当中。
权利要求
1.一种无线接入点的负载均衡方法,其特征在于包括如下步骤步骤一、在每个参与负载均衡AP上启动负载均衡应用服务;步骤二、每个AP依次向其他参与负载均衡的AP发送查询请求,同时,对收到的查询请求做出响应,将自身的信息返回给发出查询请求的AP,每个AP根据其他AP的返回信息更新自身均衡信息库;步骤三、每个AP根据自身更新后的均衡信息库,利用均衡算法决定当前是否允许客户接入;步骤四、AP如果收到结束命令,则退出负载均衡;否则,间隔一段时间后,重新执行步骤二。
2.根据权利要求1所述的无线接入点的负载均衡方法,其特征在于所述的步骤一中,每个AP启动负载均衡应用服务,具体包括如下过程每个AP根据自身的配置文件,获得运行负载均衡应用服务所需的信息,开始负载均衡应用服务。
3.根据权利要求1所述的无线接入点的负载均衡方法,其特征在于所述的步骤二中,AP发送查询请求,根据其他AP的返回信息更新自身的均衡信息库,具体包括如下步骤步骤20、每个AP开始轮寻自身均衡信息库中参与负载均衡的IP列表;步骤21、判断是否到达表尾,如果已经到达表尾,结束步骤二;否则执行下一步;步骤22、选定下一个AP,向选定的AP发送查询请求;步骤23、对选定的AP返回的查询请求响应结果进行分析;步骤24、更新均衡信息库中保存的信息,执行步骤21;
4.根据权利要求1所述的无线接入点的负载均衡方法,其特征在于所述的步骤二中,AP对收到的查询请求做出响应,将自身的信息返回给发出查询请求的AP,具体包括如下步骤步骤26、AP接收到查询请求后,从自身的均衡信息库获得自身当前的均衡数据;步骤27、将自身当前的均衡数据组装成请求响应数据;步骤28、发送请求响应数据给发出查询请求的AP。
5.根据权利要求3所述的无线接入点的负载均衡方法,其特征在于所述的步骤22之后和步骤23之前,还包括如下过程判断等待选定的AP的响应的时间是否超时,如果超时,将此AP排除均衡范围,不参与均衡计算,执行步骤25;否则,执行步骤23。
6.根据权利要求3所述的无线接入点的负载均衡方法,其特征在于所述的步骤23,进一步包括如下步骤步骤230、判断选定的AP的SSID与自身是否相同,如果相同,执行下一步;否则将此AP排除均衡范围,不参与均衡计算,执行步骤25;步骤231、判断选定的AP的均衡类型与自身是否相同,如果相同,执行下一步;否则将此AP排除均衡范围,不参与均衡计算,执行步骤25;
7.根据权利要求1所述的无线接入点的负载均衡方法,其特征在于所述的步骤三,包括如下步骤步骤30、利用均衡算法,计算出允许新用户接入的负载临界值;如果当前负载小于或等于负载临界值,允许新用户接入;如果当前负载大于负载临界值,则不允许新用户接入;或利用均衡算法,直接决定是否允许新用户接入;步骤31、将步骤30的信息递给无线网络的驱动层,按步骤30的允许或不允许结果设定允许新客户接入的标志。
8.根据权利要求7所述的无线接入点的负载均衡方法,其特征在于所述的步骤30中,计算负载均衡的负载临界值采用基于阈值的加权平均算法,按如下公式计算t=1n×Σi=1nt1+s]]>式中t表示负载临界值,t1、t2、……、tn分别表示所有活跃AP的当前用户数或最近平均流量,n为所有活跃AP数,s为管理员设定的用户数或流量阈值;或按如下公式计算t=1n×Σi=1nt1×(1+w)]]>式中t表示负载临界值,t1、t2、……、tn分别表示所有活跃AP的当前用户数或最近平均流量,n为所有活跃AP数,w为管理员设定的用户数或流量超过平均用户数或流量百分比阈值。
9.根据权利要求7所述的无线接入点的负载均衡方法,其特征在于所述的步骤30,具体包括如下步骤步骤300、用基于阈值的加权平均算法计算负载临界值,如果当前负载小于或等于负载临界值,则接收新用户的接入请求,结束步骤30;如果当前负载大于负载临界值,执行下一步;步骤301、判断请求连接的新用户在特定的时间段内是否被当前AP拒绝过,若是,则拒绝该新用户的接入,结束步骤30;步骤302、查询该用户在特定的时间段内被其它AP拒绝的记录,从中找出信号强度最高的记录,设其信号强度为x,假设该用户与当前AP的连接信号强度为y,则当y/x<z时,拒绝该新用户的接入;否则接收该新用户,其中z是一个固定的阈值,取值范围在0.5-1之间。
10.根据权利要求1所述的无线接入点的负载均衡方法,其特征在于还包括如下步骤通过AP内建的网页服务器的WEB管理页面输入包括涉及参与均衡的AP的IP地址、阈值、均衡模式的负载均衡功能应用所有信息,并应用这些信息更新配置文件,重新执行步骤一。
全文摘要
本发明公开了一种无线接入点的负载均衡方法,包括如下步骤在每个参与负载均衡AP上启动负载均衡应用服务;每个AP依次向其他AP发送查询请求,根据其他AP的返回信息更新自身的均衡信息库;每个AP根据自身更新后的均衡信息库,利用均衡算法决定当前是否允许客户接入;AP如果收到结束命令,则退出负载均衡;否则,间隔一段时间后,重新开始更新自身均衡信息库,执行以后步骤。本发明通过AP之间的相互通信,每个AP可以根据当前网络的负载分配情况决定是否允许新客户接入,保证无线通信系统中,新的无线客户端自动接入到负载较少的AP上,实现了无线接入点的负载均衡,并且不需后台服务器,减少了负载均衡的成本;分布式的方式也提高了负载均衡的容错能力。
文档编号H04L12/24GK1601979SQ03134660
公开日2005年3月30日 申请日期2003年9月24日 优先权日2003年9月24日
发明者程琳香, 宋建平, 刘伟伟, 郭大伟 申请人:联想(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1