移动通信系统的负荷控制方法
技术领域
本发明涉及移动通信领域,更具体地说,涉及一种对移动通信系统中的BSC(基站控制器)的负荷状况进行控制的方法。
背景技术
在GSM(全球移动通信系统)中,一个BSC下接多个BTS(基站收发信台),每个BTS可为多个用户手机提供服务。当有大量用户请求服务、下属各BTS的话务量都比较高时,BSC的总话务量就可能超过其最大处理能力,如果不对话务的负荷量进行控制,BSC就会因处理能力不足导致服务质量下降,严重时甚至可能造成系统瘫痪。
这种系统的负荷控制一般由三部分组成:
(1)由负荷检测装置(如果采用软件方式来实现,则是负荷检测进程,以下类似)负责检测负荷状况,检查负荷状况是否超过阈值:
(2)由级别确定装置根据当前的负荷状况确定控制级别、范围和程度;
(3)由控制执行装置根据级别确定装置的结果执行相应的控制。
GSM规范推荐了一种负荷控制方法,该方法通过控制系统消息中的接入控制类别(Access Control Class)参数来实现的。在GSM系统中,每个用户都属于一个接入控制类别,其中0~9级为普通用户,11~15为特殊用户。这里的类别本身没有高低之分,对于普通用户,其类别均匀分布在0~9级上。
如图1,当负荷检测装置发现负荷状况超过门限时,就发送消息给级别确定装置;级别确定装置根据负荷状况确定控制级别,确定禁止哪些级别的手机禁止接入,然后通过系统广播消息禁止这些级别的用户接入;这些用户的手机内的控制执行装置就会禁止手机发起服务请求。例如当确定控制级别为2,并禁止接入控制类别为3、4的手机接入时,接入控制类别为3或4的手机将无法发起服务请求。
这样,系统通过减少用户的接入达到降低负荷状况的目的。采用这种方式可以比较精确的控制用户接入数量,但这种方式要求在一个地区的用户必须基本均匀分布在0~9级上,否则达不到效果。实践中,某些地区的用户往往集中在有限的几个级别上,如果仍然采用这种方法,就会出现负荷大幅度摆动的情况。
发明内容
本发明提供一种移动通信系统的负荷控制方法,以解决现有技术中要求在一个地区的用户必须基本均匀分布在0~9级上,否则会出现负荷大幅度摆动的问题,以实现更合理的负荷控制。
本发明解决其技术问题所采用的技术方案是:一种移动通信系统的负荷控制方法,其中按以下步骤对BSC的负荷进行控制:(1)检测所述BSC的负荷状况;(2)所述BSC根据其当前负荷状况确定需要采取的控制级别,并发送相应的控制消息;(3)根据所述控制消息执行相应的负荷控制,
其特征在于,在所述第(2)步中,将所述控制消息发送到BTS;在所述第(3)步中,所述BTS根据所述控制消息,只处理当前控制级别下被允许的那些服务类型,忽略当前控制级别下被禁止的那些服务类型,从而按服务类型进行负荷控制。
在本发明所述方法的第(1)步中,按预定周期检测所述BSC的负荷状况;当检测结果超过预定的负荷阈值时,发出负荷过载消息。具体的检测方法可以通过检测所述BSC的主处理器的使用率来判断其负荷状况;当检测到主处理器的使用率超过预定的使用率阈值时,发出负荷过载消息。
在本发明所述方法的第(2)步中,以下两种情况可能触发所述BSC发送控制消息:(a)收到负荷过载消息;(b)在第二预定时间内未收到负荷过载消息。
其中,在所述第(a)种情况时,首先判断是否为第一次收到负荷过载消息,如果是则将控制级别升高为当前负荷状况所确定的控制级别,并发送相应的控制消息;如果不是第一次收到负荷过载消息,则再判断距上一次收到负荷过载消息的时间是否超过第一预定时间,如果超过则再判断按当前负荷状况所确定的控制级别是否高于当前的控制级别,如果是则将控制级别升高为当前负荷状况所确定的控制级别,并发送相应的控制消息;如果距上一次收到负荷过载消息的时间未超过第二预定时间、或者所确定的控制级别不高于当前的控制级别,则不作处理。
在所述第(b)种情况时,首先判断当前控制级别是否为最低控制级别,如果是则发送结束负荷控制消息,结束负荷控制;如果当前控制级别不是最低控制级别,则将控制级别降低一级,并发送相应的控制消息。
与现有技术相比,本发明中由BTS来完成控制执行动,而不是由手机来完成;并且根据不同的控制级别,分别禁止或允许某一类型的服务,与手机本身的接入控制类别无关(0~9),即使某一个地区的用户集中分布在有限的几个接入控制类别无关(例如3~6)上,也不会出现负荷大幅度摆动的问题,从而可实现更合理的负荷控制。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是GSM规范中推荐的一种负荷控制方法的原理图;
图2是本发明中实现负荷控制的原理图;
图3是本发明中对基站控制器的负荷状况进行检测的流程图;
图4是本发明中基站控制器根据其当前负荷状况确定需要采取的控制级别,并发送相应的控制消息的流程图。
具体实施方式
在GSM系统中,手机需要求系统提供服务时,将会发送一条信道请求消息。该消息由8比特组成,其中有3~5个比特用于表示手机申请信道的原因,也就是请求服务的类型,包括位置更新、紧急呼叫、主叫、被叫、呼叫重建等等;其余比特为随机数,有关此消息的详细说明见表1。
表1信道请求消息内容及其含义
手机信道请求消息 |
对应的申请信道的原因 |
101xxxxx |
紧急呼叫 |
110xxxxx |
呼叫重建;要求使用全速率业务信道,或者当系统支持半速率,使用半速率业务信道 |
011010xx |
呼叫重建;当系统支持半速率,使用半速率业务信道 |
011011xx |
呼叫重建;当系统支持半速率,则使用2条半速率业务信道 |
100xxxxx0010xxxx0011xxxx0001xxxx |
寻呼响应(被叫) |
111xxxxx |
需要全速率业务信道的起呼(主叫),或者,当系统不支持半速率,则是需要独立专用信道以完成短消息、关机、附加业务等 |
0100xxxx |
当系统支持半速率,申请半速率业务信道,申请业务的手机支持双速率并且它申请 |
|
的是语音主叫 |
0101xxxx |
当系统支持半速率,申请半速率业务信道,申请业务的手机支持双速率并且它申请的是数据主叫 |
000xxxxx |
位置更新,当系统不支持半速率 |
0000xxxx |
位置更新,当系统支持半速率 |
0001xxxx |
当系统支持半速率,则是需要独立专用信道以完成短消息、关机、附加业务等 |
011110xx01111x0x01111xx0 |
一步分组接入,申请单时隙上行传输,需要一条分组数据信道 |
01110xxx |
单块分组接入,或者是申请一个分组数据信道的单块以完成二步分组接入或其它无线信令目的 |
01100xxx |
保留给将来使用 |
01111111 |
保留给将来使用 |
如图2所示,本发明的基本思路是将控制执行装置由手机移到BTS,通过限制手机的不同类型的服务请求实现对负荷的控制,以克服负荷控制效果受手机影响的问题。下面将介绍本发明的具体实现步骤:
一、检测基站控制器的负荷状况
其流程图如图3所示,由负荷检测装置检测负荷状况,判断基站控制器是否负荷过载。其中,由一个负荷检测定时器进行计时,当定时器超时后,对基站控制器的负荷状况进行检测,同时重设负荷检测定时器,使定时器重新开始计时,从而可实现周期性检测;当检测结果大于预定阈值时,由负荷检测装置向级别确定装置发送负荷过载消息,通报当前负荷情况。
二、根据负荷状况确定控制级别并发送相应的控制消息
其流程如图4所示,由级别确定装置根据负荷状况情况确定负荷控制的级别,本步骤有以下内容:
1、触发原因,如图4中的步骤(1)、(2)、(3)所示,级别确定装置通过预定的事件来触发其运行,它只接受两种事件,其一是收到负荷检测装置发来的负荷过载消息,其二是用于计算多长时间内未收到负荷过载消息的定时器T2超时。
2、首次收到负荷过载消息的处理,如图4中的步骤(4)、(5)、(6)、(7)所示,如果级别确定装置是首次收到负荷过载消息(这里首次是指系统当前未进行负荷控制,可能是基站控制器初次运行、或者是上次负荷控制已结束),将根据当前负荷状况确定控制级别,然后发送相应的控制消息,将控制级别升高为当前负荷状况所确定的控制级别。同时启动用于计算两次收到负荷过载消息之间的时间间隔的定时器T1,并启动定时器T2,然后回到步骤(1)。其中的T1和T2是两个保护定时器,T1的计时周期小于T2。
3、在定时器T1的计时超过第一预定时间之前收到负荷过载消息的处理,如图4中的步骤(8)所示,此时级别确定装置将忽略该消息,不进行任何处理,回到步骤(1)。因为负荷控制需要一段时间才能看到效果,所以采用这种方式来防止在短时间内收到多个负荷过载消息而导致的过度控制问题。
4、在定时器T1超时之后收到负荷过载消息的处理,如图4中的步骤(9)、(10)、(11)、(12)所示,此时级别确定装置将根据当前的负荷状况重新确定新的负荷控制级别,如果新的控制级别高于当前控制级别,则发送相应的控制消息,将控制级别升高为新的控制级别,同时,重设定时器T1和定时器T2,然后回到步骤(1);如果新的控制级别等于或低于当前控制级别,则控制当前级别维持不变,直接回到步骤(1)。
5、定时器T2的计时超过第二预定时间后的处理过程,如图4中的步骤(13)、(14)、(15)、(16)、(17)所示,其中定时器T2超时说明在整个第二预定时间内,负荷状况没有增长,负荷控制有效果,可以降低负荷状况控制级别;如果此时负荷控制级别已处于最低级别,那么就向控制执行装置发送结束负荷控制消息,通知控制执行装置结束负荷状况控制,然后回到步骤(1);否则将控制级别降低一级,并发送相应的控制消息。同时,再次重设定时器T1和定时器T2,然后回到步骤(1)。
三、控制执行
基站收发信台中的控制执行装置根据其收到的控制消息变更其控制级别,当收到由手机为请求服务而发来的信道请求消息后,根据当前的控制级别,只处理当前控制级别下允许的那些服务类型,忽略当前控制级别下禁止的那些服务类型,从而按服务类型进行负荷控制。
在控制执行装置中有一控制位图,该位图用于表示当前负荷控制级别下应该过滤哪些服务请求,该位图有256位,恰好对应手机信道请求消息的所有情况。
手机在每次请求服务时,首先发送信道请求消息,其中包含了请求服务的类型,控制执行装置收到信道请求消息后,查询控制位图,如果对应的控制位是允许,就将该信道请求消息发送到BSC,如果是禁止,就忽略该消息,这样,BSC收到的信道请求消息就减少了,需要处理的话务量也就减少了,BSC的负荷也就可以控制在正常范围之内。
具体实施时,本方法主要是通过软件实现,在BSC的主处理器中有一个负荷检测进程来完成负荷检测功能,另有一个级别确定进程来完成级别确定功能,在BTS的帧单元控制器中有一个控制执行进程完成控制执行功能。
负荷状况的瓶颈主要体现在BSC主处理器的处理能力上,因此负荷检测进程对主处理器的使用情况进行期性检测,一般认为主处理器使用率超过65%(该阈值可通过后台修改),系统就需要启动负荷控制流程。在每次检查发现主处理器使用率超过65%时,负荷检测进程都将发送负荷过载消息通知级别确定进程。
级别确定进程维护两张数据对应表,一张是主处理器使用率和控制级别对应表,见表2,级别确定进程根据当前主处理器的使用率查询该表,从而确定控制级别,可见,本发明的控制级别与现有技术中的手机接入控制类别是两种不同的定义方式;另一张是控制级别和禁止手机接入类型的对应表,见表3,级别确定进程根据当前控制级别,查询当前控制级别下需要禁止手机的哪些类型的服务请求,并将该信息发送给控制执行进程,由控制执行进程进行过滤。这两张数据表也是可以通过后台进行修改,实现不同的控制方式,表2、表3是其中的一个例子(系统不支持半速率业务信道)。
表2主处理器使用率和控制级别对应表
主处理器使用率 |
65% |
70% |
75% |
80% |
85% |
90% |
控制级别 |
3 |
5 |
7 |
8 |
9 |
10 |
表3控制级别与禁止接入类型对应表
控制级别 |
禁止接入类型(每一比特对应一种信道请求,为1表示禁止。最低位比特对应00,最高位对应FF) |
1 |
00000000FFFF FFFF 0000000000000000FFFF FFFF 000000000000000000000000 |
2 |
00000000FFFF FFFF FFFF FFFF 00000000FFFF FFFF FFFF FFFF 0000000000000000 |
3 |
01010101FFFF FFFF FFFF FFFF 00000000FFFF FFFF FFFF FFFF 0000000000000000 |
4 |
55555555FFFF FFFF FFFF FFFF 00000000FFFF FFFF FFFF FFFF 0000000000000000 |
5 |
7F777F77FFFF FFFF FFFF FFFF 00000000FFFF FFFF FFFF FFFF 0101010100000000 |
6 |
7F777F77FFFF FFFF FFFF FFFF 01010101 |
|
FFFF FFFF FFFF FFFF 1111111100000000 |
7 |
FFFF FFFF FFFF FFFF FFFF FFFF 55555555FFFF FFFF FFFF FFFF 5555555500000000 |
8 |
FFFF FFFF FFFF FFFF FFFF FFFF 7F7F 7F7FFFFF FFFF FFFF FFFF 7F7F 7F7F 11110000 |
9 |
FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFFFFFF FFFF FFFF FFFF FFFF FFFF 55555555 |
10 |
FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFFFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF |
当级别确定进程首次收到负荷检测进程发来的负荷过载消息后,就启动级别流程,其过程已在前面描述。
控制执行进程位于BTS的帧单元控制器中。BSC与手机所有交互消息都要经过帧单元控制器处理,控制执行进程是对帧单元控制器收到的手机的信道请求消息进行过滤,限制部分信道请求消息到BSC。当控制执行进程收到级别确定进程的控制消息,它将检查帧单元控制器收到的每一个信道请求消息是否为表3中禁止的类型,如果禁止,就不发送到BSC;如果允许才发送到BSC。当控制执行进程收到新的控制消息,新的控制级别与禁止接入类型对应表将替代原来的表3。
当BSC的主处理器使用率下降到阈值以下,负荷检测进程将不再向级别确定进程发送负荷过载消息,级别确定进程将逐步下调控制级别,通知控制执行进程调整禁止接入类型位图。当控制级别为1,定时器T2再次超时时,此时级别确定进程将向控制执行进程发送结束负荷控制消息,控制执行进程在收到该消息后,将不再检查帧单元控制器收到的手机信道请求消息,全部转发给BSC。至此,一次完整的负荷控制结束。