针对基站系统操作任务的流控方法及系统的制作方法

文档序号:7973010
专利名称:针对基站系统操作任务的流控方法及系统的制作方法
技术领域
本发明涉及无线通信系统的流控方法,尤其是一种针对基站系统操作任务的流控技术。
背景技术
在无线通信系统中,经常出现拥塞现象,拥塞现象主要体现在处理器负荷过载,系统退出服务或发生主备倒换;信令链路负荷过高,导致消息大量丢失或链路意外中断;通信消息队列拥塞,消息超时变为无效消息或消息大量丢失。拥塞的频繁出现会使系统服务能力大幅下降甚至可能停止服务,且长时间无法自愈,给运营商带来巨大经济损失,为了缓解系统拥塞,必须对系统进行流控,以保证重要的消息不被丢失,系统能正常运转。
基站系统操作(OM)任务有许多类型,如消息跟踪任务、文件操作任务,周期性调测任务等,其中消息跟踪任务是基站的日常维护和调试过程中较为常见,但消息跟踪任务并非必须进行的OM任务,它会产生大量消息,从而可能造成系统CPU负荷过载、IPC(进程间通信)链路负荷过载及IPoA(ATM上承载IP)链路负荷过载等不良后果,引发系统拥塞。然而目前针对消息跟踪还没有非常完善的流控策略,仅仅在系统繁忙程度达到无法再处理任何新的命令时,启动跟踪命令才会执行失败,被动停止。在启动阶段缺乏主动预处理,依据系统各种资源的占用情况来决定是否允许启动跟踪功能,也缺乏在跟踪过程中进行主动终止的机制,导致系统资源紧张,无法满足基本业务需要。

发明内容
有鉴于此,本发明的目的之一在于提供一种针对基站系统操作任务的流控方法。
为达到上述目的,本发明的一个实施例提供的流控方法包括以下步骤在启动系统操作任务之前,根据当前系统资源情况确定是否允许系统操作任务和/或在执行系统操作任务过程中,周期检测系统资源的负荷情况,如果出现过载,则主动限制系统操作任务;本发明的另一个目的在于提供一种针对基站系统操作任务的流控的系统。
为达到上述目的,本发明的一个实施例提供的流控系统包括资源检测模块,用于对执行单板上的系统资源进行检测;任务控制模块,用于根据系统资源情况对系统操作任务进行控制;所述资源检测模块在启动系统操作任务和/或系统操作任务执行时,对所述系统资源进行检测,如果出现过载,则所述任务控制模块主动限制系统操作任务。
通过和现有技术对比可以看出,本发明主要针对基站的消息跟踪任务,分别在任务启动阶段和任务执行阶段根据系统资源的负荷情况对于消息跟踪任务进行预处理和主动限制,本发明提供的实施例可以有效控制消息跟踪本身对基站系统所带来的系统拥塞,减少对正常业务功能的负面影响,提高了系统的可靠性和可用性。


图1为本发明一实施例中跟踪启动阶段的流程图;图2为本发明一实施例中跟踪执行阶段的流程图。
具体实施例方式
本发明的核心思想是,根据系统资源的负荷情况,从系统操作任务的启动阶段和/或执行阶段入手,针对基站的系统操作任务进行流控。
基站系统操作任务的种类有许多,如周期性调测任务、文件操作任务、消息跟踪任务等,流控过程都可以利用本发明提供的技术方案来实现,为使本发明的目的、技术方案及优点更加清楚明白,下面以消息跟踪任务为例,参照附图对本发明作进一步详细说明。
在针对消息跟踪任务流控过程中,主要影响到的系统资源包括CPU资源、IPC(进程间通信)链路及IPoA(ATM上的IP承载)链路。
下面对消息跟踪启动阶段进行分析参见图1,启动阶段流控方法具体包括为了提高流控方法的执行效率,针对单板的CPU资源可以按照从主控单板到目标单板的顺序采取流控措施,即首先执行步骤111检测主控单板的CPU负荷是否过载;如果过载则执行步骤112直接禁止启动任何跟踪任务;如果主控单板的CPU负荷没有过载,则执行步骤113检测执行跟踪任务的目标单板的CPU负荷情况;若执行跟踪任务的某块目标单板CPU负荷过载,则执行步骤114不允许在该目标单板上启动消息跟踪任务;但不影响在主控单板以及其他目标单板上启动消息跟踪任务;步骤121在消息跟踪之前对消息类型进行过滤并检测主控单板到目标单板之间的IPC链路负荷以及执行跟踪任务的单板之间的IPC链路负荷情况;其中,为减少IPC链路上的负荷,在消息跟踪前要对进行消息过滤,允许用户在启动跟踪时将一些不需要特别关心的消息(如RTWP上报,FP帧等)过滤掉,同时还要检测主控单板到目标单板之间的IPC链路负荷以及执行跟踪的单板之间的IPC链路负荷情况,若任何一条IPC链路过载则执行步骤122禁止启动跟踪任务;由于直接检测IPoA链路上的流量存在一些困难,可以考虑检测消息分发模块的上行队列拥塞程度来间接反应IPoA链路状况,步骤131对检测消息分发模块的上行队列缓存的消息数目进行检测;如果消息队列中缓存的消息数目达到系统流控级别,则执行步骤132拒绝启动消息跟踪任务;其中系统的流控级别的确定可以先通过接口设置消息队列的最大数目,消息队列中缓存的消息数目超过消息队列能容纳的最大数目的30%是流控的第一级,60%是第二级,90%是第三级,到底在哪个级别进行流控系统可以自己决定,如果没有达到系统流控级别,则可以启动新的消息跟踪任务。
需要指出的是,上述三种资源中任意一种资源的过载均有可能对消息跟踪操作任务产生影响,因此在启动消息跟踪操作任务时,任意一种资源出现过载,则不允许启动相应的消息跟踪任务。
本发明除了可以在消息跟踪任务启动阶段进行流控以外,对于已经启动的消息跟踪任务,也提供了执行阶段相应的流控策略,在实际进行流控时,既可以针对不同情况分别对任务启动阶段和任务执行阶段进行流控,也可以将这两个阶段的流控策略结合起来对系统操作任务的整个流程进行流控。
下面对消息跟踪任务执行阶段的流控方法进行分析参见图2,流控步骤具体包括步骤211检测所有单板的CPU的负荷情况;与消息跟踪任务启动阶段的检测不同的是,由于已经进入任务执行阶段,系统各单板上都可能存在着正在执行的消息跟踪任务,所以有必要对系统中包括主控单板和普通单板在内的所有单板CPU的负荷情况进行检测;步骤212,判断是主控单板CPU负荷过载还是普通单板CPU负荷过载;若主控单板CPU负荷过载,则执行步骤213主动停止系统中所有已经启动的跟踪任务;若普通单板CPU负荷过载,则执行步骤214停止该普通单板上所有已经启动的跟踪任务,并拒绝任何新的消息跟踪启动请求;但不影响在主控单板以及其他目标单板上执行消息跟踪任务,若所有单板CPU负荷均未过载,则对已经启动的消息跟踪任务不作限制;步骤221检测主控单板到任何一块跟踪执行单板之间的IPC链路以及两块普通执行单板之间的IPC链路,因为消息跟踪可能是跟踪两块普通的单板,但所有跟踪消息都需要通过主控单板上报给用户,因此必须检测主控单板到任何一块跟踪执行单板之间的IPC链路以及两块普通执行单板之间的IPC链路,系统一旦检测到任意一条IPC链路上出现过载,都要执行步骤222主动停止该执行单板上所有已经启动的跟踪任务,并拒绝任何新的消息跟踪启动请求,例如,某块单板上有跟踪任务T存在,且该单板到主控单板之间的IPC链路过载,则停止该单板上所有的跟踪任务,并拒绝任何新的消息跟踪启动请求;如果该单板到主控单板之间的IPC链路未过载,但是到另一块与跟踪任务T相关的普通单板之间的IPC过载了,则停止该单板上与另一普通单板相关的所有跟踪任务(当这两块板之间启了多个跟踪任务时),并拒绝任何新的消息跟踪启动请求;如果IPC链路上没有出现过载,则对已经启动的消息跟踪任务不作限制;与跟踪启动阶段的检测过程类似,检测IPoA链路负荷时,由于直接检测IPoA链路上的流量存在一些困难,可以考虑根据消息分发模块的上行队列拥塞程度来间接反应IPoA链路状况;步骤231检测消息分发模块的上行队列缓存的消息数目,如果消息队列中缓存的消息数目达到系统流控级别,则执行步骤232停止系统所有已经启动的跟踪任务,并拒绝任何新的消息跟踪启动请求;其中系统的流控级别的确定可以先通过接口设置消息队列的最大数目,如果消息队列中缓存的消息数目超过消息队列能容纳的最大数目的30%是流控的第一级,60%是第二级,90%是第三级,到底在哪个级别进行流控系统可以自己决定,如果缓存的消息数目没有达到系统流控级别,则允许执行消息跟踪任务;同样,上述三种资源中任意一种资源的过载均有可能对消息跟踪操作任务产生影响,因此在执行消息跟踪任务时,任意一种资源出现过载,则不允许执行相应的消息跟踪任务。
值得注意的是,上述各个步骤中针对各种系统资源的检测过程在整个消息跟踪任务执行阶段可以实时进行检测,但考虑到系统的实际负载以及检测的实际情况,也可以进行周期性检测,检测的周期可以通过接口进行动态设置,也可以固定为5秒。
在上述各检测步骤中,负载检测的方法可以采用滑窗法或临界阻尼法进行,负载检测的结果可以是开关型的(过载或不过载),过载门限可以根据实际需要,通过多组实验数据来分析得到一个相对合理的阀值。
下面对于周期性调测任务以及文件操作任务的流控过程进行简单描述。
对于周期性调测等任务来说,所涉及的资源包括CPU资源、IPC链路、IPoA链路、消息队列等,在任务启动阶段单个任务对系统资源的消耗都比较有限,但多了就有影响,所以启动时检测如果该任务涉及的资源任何一个出现过载时都不允许启动;在任务执行阶段对非周期执行或报告的只要启动了就不做限制;对周期执行或报告的,停止当次执行或报告,具体的流控过程可以参照消息跟踪任务,在此不再赘述。
对于文件操作任务来说,所涉及的资源包括CPU、IPC链路等,在任务启动阶段需要根据CPU及IPC链路负荷情况进行限制,具体过程与消息跟踪任务类似;任务执行阶段除远端进行基站软件下载外,其他文件操作花的时间都应该是比较小的,该时间业务流量不会有大的变化,而远端软件下载操作一般是不会轻易操作的,同时远端下载对系统负荷的影响也比较有限,所以一旦允许启动了就不做自动终止,近端下载软件对CPU负荷影响较大,但由于时间比较短,可以认为这段时间内业务流量变化不大,允许启动后就不做进一步限制了,具体过程可以参照消息跟踪任务流程,在此不再重述。
下面对本发明提供的系统进行描述本发明提供的系统主要包括系统资源检测模块,该模块用来对各种系统资源进行检测。
不同的系统操作任务可能涉及到不同的系统资源,如消息跟踪任务涉及到CPU资源、IPoA链路资源、IPC链路资源;对于周期性调测等任务来说,所涉及的资源包括CPU、IPC链路、IPoA链路、消息队列等;系统资源检测模块根据不同系统操作任务对不同的系统资源进行检测。在检测时,可以采用周期检测的方式,检测的周期可以通过接口进行动态设置或固定为5秒。
任务控制模块,用于根据系统资源情况对系统操作任务进行控制。
任务控制模块的控制既可以是禁止启动或执行系统操作任务,也可以是允许启动或执行系统操作任务,具体来说,当系统资源检测出现过载时,任务控制模块需要对涉及到出现所述过载资源的系统操作任务进行限制和禁止,根据过载出现的不同阶段,在任务启动阶段检测到资源出现过载,则禁止启动相应的系统操作任务,在任务执行阶段检测到资源出现过载,则禁止执行相应的系统操作任务;当系统资源检测没有出现过载时,任务控制模块允许启动或执行相应的系统操作任务,根据不同的阶段,在任务启动阶段,则允许启动相应的系统操作任务,在任务执行阶段,则允许执行相应的系统操作任务。
以上所述对本发明的目的、技术方案和有益效果进行了进一步的详细说明,所应理解的是,以上所述并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种针对基站系统操作任务的流控方法,其特征在于,在启动系统操作任务时,根据当前系统资源情况确定是否允许启动系统操作任务和/或在执行系统操作任务时,检测系统资源的负荷情况,如果出现过载,则主动限制系统操作任务。
2,如权利要求1所述的方法,其特征在于,所述系统操作任务为消息跟踪任务。
3.如权利要求2所述的方法,其特征在于,所述确定是否允许启动消息跟踪任务具体包括检测系统资源的负荷情况,如果过载,则不允许启动消息跟踪任务;
4.如权利要求3所述的方法,其特征在于,所述系统资源具体包括CPU资源、IPC链路资源、IPoA链路资源。
5.如权利要求4所述的方法,其特征在于,所述检测CPU资源具体包括检测主控单板的CPU负荷是否过载,如果过载则禁止启动任何跟踪任务;如果主控单板的CPU负荷没有过载,再检测执行跟踪任务的目标单板的CPU负荷情况,若过载则不允许在该目标单板上启动消息跟踪任务。
6.如权利要求4所述的方法,其特征在于,所述检测IPC链路资源具体包括在消息跟踪之前对消息类型进行过滤,并检测主控单板到目标单板之间的IPC链路负荷以及执行跟踪任务的单板之间的IPC链路负荷情况,若任何一条IPC链路过载则禁止启动跟踪任务。
7.如权利要求4所述的方法,其特征在于,所述检测IPoA链路资源具体包括检测消息分发模块的上行队列缓存的消息数目,如果消息队列中缓存的消息数目达到系统流控级别,则拒绝启动任何消息跟踪任务。
8.如权利要求2所述的方法,其特征在于,所述则主动限制消息跟踪任务具体包括检测系统资源的负荷情况,如果出现过载,则停止已经启动的跟踪任务。
9.如权利要求8所述的方法,其特征在于,所述系统资源包括CPU资源、IPC链路资源、IPoA链路资源。
10.如权利要求9所述的方法,其特征在于,所述检测CPU资源情况具体包括检测系统中所有单板,并判断是主控单板CPU负荷过载还是普通单板CPU负荷过载,若主控单板CPU负荷过载,则主动停止系统中所有已经启动的跟踪任务;若普通单板CPU负荷过载,则停止该单板上所有已经启动的跟踪任务,并拒绝任何新的消息跟踪启动请求;
11.如权利要求9所述的方法,其特征在于,所述检测IPC链路资源情况具体包括检测主控单板到任何一块跟踪执行单板之间的IPC链路以及执行单板之间的IPC链路,若出现过载则主动停止该执行单板上所有已经启动的跟踪任务,并拒绝任何新的消息跟踪启动请求;
12.如权利要求9所述的方法,其特征在于,所述IPoA链路资源情况具体包括检测消息分发模块的上行队列缓存的消息数目,如果消息队列中缓存的消息数目达到系统流控级别,则停止系统所有已经启动的跟踪任务,并拒绝任何新的消息跟踪启动请求。
13.如权利要求7或12所述的方法,其特征在于,所述系统流控级别具体为通过接口设置消息队列的最大数目,根据消息队列中缓存的消息数目与消息队列的最大数目的比例确定系统流控级别。
14.如权利要求3或8所述的方法,其特征在于,所述的检测为周期性检测,检测周期通过接口进行动态设置或固定为5秒。
15.如权利要求3或8所述的方法,其特征在于,所述的检测具体为通过滑窗法或临界阻尼法进行检测。
16.一种针对基站系统操作任务的流控的系统,其特征在于,包括资源检测模块,用于对系统资源进行检测;任务控制模块,用于根据系统资源情况对系统操作任务进行控制;所述资源检测模块在启动系统操作任务和/或系统操作任务执行时,对所述系统资源进行检测,如果出现过载,则所述任务控制模块主动限制系统操作任务。
17,如权利要求16所述的系统,其特征在于,所述系统操作任务为消息跟踪任务。
18.如权利要求17所述的系统,其特征在于,所述系统资源具体包括CPU资源、IPC链路资源和IPoA链路资源。
19.如权利要求16、17、18任意一项所述的系统,其特征在于,所述资源检测模块采用周期检测的方式对系统资源进行检测,所述检测周期通过接口进行动态设置或固定为5秒。
全文摘要
本发明公开了一种基站系统操作任务的流控方法及系统。本发明提供了一种基站系统操作任务的流控方法,其核心思想是,针对各种系统资源,从两个方面入手,一方面是在系统操作任务启动时根据系统资源进行限制,另一方面是在系统操作任务执行过程中根据系统资源的负荷情况主动进行限制,同时也可以把两者结合起来进行流控。本发明还提供了一种基站系统操作任务的流控系统,其中通过资源检测模块、任务控制模块实现根据系统资源的负荷情况调控系统操作任务。通过本发明的技术方案,可以有效控制消息跟踪任务所引起的系统拥塞,减少对正常业务功能的负面影响,提高了系统的可靠性和可用性。
文档编号H04W28/10GK1976505SQ200610157239
公开日2007年6月6日 申请日期2006年12月2日 优先权日2006年12月2日
发明者袁才国, 朱卫东 申请人:华为技术有限公司
再多了解一些
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1