一种实现实时话务统计的方法

文档序号:7614858阅读:190来源:国知局
专利名称:一种实现实时话务统计的方法
技术领域
本发明涉及交换机中话务统计的技术,具体涉及一种实现实时话务统计的方法。
背景技术
现有交换机一般均提供话务统计的功能。话务统计能提供给运营商关于交换局的呼叫状况、呼叫服务质量及网路质量等方面的信息,方便运营商对交换局及其周围网络进行维护工作,并为运营商的设计规划和经营管理提供参考数据。随着交换技术的发展,交换机容量的扩大,电信用户对话务统计功能的要求越来越全面、性能要求也越来越高。
如图1所示,是现有的一种话务统计的示意图,其是采用话务统计服务器单独实现话务的事后统计功能。交换机业务处理模块(SM)在呼叫结束时通过交换机前管理模块(FAM)将呼叫信息发送给话务统计服务器,话务统计服务器对这些信息进行分类、统计、存储,最后形成话务统计报告输出给用户,其中交换机前管理模块是交换机的高速、海量、二级外存储器。
但是这种技术存在的缺点在于由于话务统计服务器需要根据交换机业务处理模块发送的信息进行统计,而能从业务处理模块发送到话务统计服务器的信息毕竟有限,这就会导致话务统计功能不全面。
业务处理模块必须将每一个呼叫的信息都发送给话务统计服务器,话务统计服务器也需要将所有信息都保存到其存储器(如硬盘)里。当话务量高的时候,对业务处理模块和话务统计服务器的性能都将是一种考验,这就降低了系统的可靠性。
业务处理模块将在每一个呼叫结束的时候将呼叫信息发送到话务统计服务器,这就导致话务统计服务器统计到的信息存在有一定的延迟,统计的实时性必然受到影响。
另外,这种方式增加了运营商的运行、维护成本。运营商必须额外维护外置服务器的软硬件系统。
如图2所示,是现有的另一种话务统计的示意图。其采用业务处理模块进行事后统计的,统计功能在各个业务处理模块实现。业务处理模块在呼叫结束时对呼叫进行统计,在每个统计周期结束时,将统计结果通过交换机前管理模块(FAM)发送到交换机后管理模块(BAM)中。该交换机后管理模块同样是交换机的高速、海量、二级外存储设备,其可保存统计结果,将该统计结果进行综合,并形成报告输出给用户。
但是这种技术与前面提到的技术都是采用事后分析的方法,其同样存在有统计功能不全面,实时性不高的问题。另外,由于统计功能在各个业务处理模块实现,为了防止话务统计功能对整个系统性能造成大的影响,交换机能同时支持的统计任务数也就不够多了。

发明内容
本发明所要解决的技术问题在于,提供一种实现实时话务统计的方法,其可提高话务统计的准确性和实时性。
为了解决上述技术问题,本发明采用的技术方案在于提供一种实现实时话务统计的方法,包括(a)在每个业务处理模块中设置共享内存作为计数器区,该共享内存中的每固定字节设为一个计数器;(b)业务处理模块利用计数器采集话务数据并获得话务统计结果。
其中,在步骤(a)之后进一步包括设定统计任务、统计周期、统计对象。
其中,在步骤(b)之后进一步包括业务处理模块将该话务统计结果通过交换机前管理模块或话务服务器传送给交换机后管理模块。
其中,步骤(b)中进一步包括在事后进行统计分析来获得话务统计结果的步骤。
其中,步骤(b)进一步包括对事件类本体进行统计的步骤(b1)设置一个计数器;(b2)随事件的发生对该事件的计数器进行累加;(b3)业务处理模块在统计周期的起始和结束时分别访问该计数器,并计算其差值。
其中,步骤(b)进一步包括对话务量类本体进行统计的步骤(b4)设置占用线数计数器n及话务量辅助计数器U,所述占用线数计数器n表示在当前时刻处于占用的线路数ni,在每条线的占用开始时,对占用线数计数器加1,结束时对占用线数计数器减1;所述话务量辅助计数器U用于记录ni的累加值,其是通过下述公式获得Uj=Σi=1jni]]>其中,U表示扫描线数在时间上的累计值;i表示第i个采样点的时刻;j表示第j个采样点的时刻;ni表示第i个采样点的时刻被统计对象组中处于使用状态的对象个数;(b5)设置一采样次数计数器,用于记录从系统启动开始到某时刻的采样次数的总数;(b6)业务处理模块在统计周期的起始和结束时分别扫描话务量辅助计数器和采样次数计数器,并用下述公式计算统计周期T内的话务量话务量=(统计周期内末时刻的话务量辅助量-统计周期起始时刻的话务量辅助量)/统计周期内的采样次数。
其中,在步骤(b)中进一步包括为测量单元中对象的实体只有一个的设置固定计数器。
其中,对于测量单元中对象的实体有多个,且对一个业务处理模块来说,该实体数目只与对象的配置数目的最大元组有关的,设置半固定计数器,在该半固定计数器并对枚举值按照对象序号扩展,生成索引值。
其中,对于测量单元中对象的实体有多个,并且对一个业务处理模块来说,该实体数目非常多,动态分配计数器系统初始化后,为所有对象设置一个公用的计数器区,该公用计数器区大小固定,当交换机后管理模块设置了统计任务,给相应的统计对象分配一套计数器使用;当任务完成并被删除时,该计数器被释放。
本发明的有益效果在于本发明采用预埋计数器的方法进行话务统计,仅是在各个程序点对计数器进行累加或累减的操作。在统计周期结束时,再取计数器值形成统计报告输出到交换机后管理模块。这样就可以提高话务统计的效率,也增加了同时统计的任务数目,并增强了话务统计功能的全面性。
使用预埋计数器的方法进行话务统计,程序每走到一个统计点,相应的计数器就会进行计数,这样就提高了话务统计的实时性及准确性。


图1是现有的一种话务统计模型的示意图;图2是现有的另一种话务统计模型的示意图;图3是本发明中对话务统计的主流程图;图4是本发明中对事件类本体进行统计的示意图;图5是本发明中对话务量类本体进行统计的示意图。
具体实施例方式
首先对本发明中所涉及的一些技术术语说明如下交换机泛指具有交换功能的通信设备,比如固定网交换机、无线交换机、软交换设备、业务控制点(Service Control Point,SCP)等。
话务统计又称话务测量,业务量测量,负荷测量,业务量统计。它在交换局及其周围电话网络上进行测量,提供可据此进行电话网络的量度、规划设计、运行和管理的数据。
本体表示某种测量必须为它收集数据的那种量(例如话务量、呼叫次数、平均占用时长等)。
对象指被测量的各种物理或逻辑的实体及其组合(例如,户线群、中继电路群、公共控制部件、辅助部件、目的地等)。
测量单元一类具体的测量,回答这个测量可以测量什么,对什么进行测量,怎样测量的问题。
话务量设备处理话务的时长占总时长的百分比,无量纲量,单位为爱尔兰(Erl),分占用话务量、通话话务量等。
事件交换机或周围的网路中发生的,由用户或硬件或软件产生的,有明确物理或逻辑含义的一个硬件或软件动作,称为一个事件。事件发生的次数是话务统计的一个重要统计内容,可以根据这些事件次数值描述交换机及周围网路的运行的情况。
请参照图3所示,是本发明的主流程图,主要包括在每个业务处理模块中预埋至少一个计数器;设定统计任务、统计周期、统计对象;业务处理模块利用计数器采集话务数据并获得话务统计结果;业务处理模块将该话务统计结果通过交换机前管理模块传送给交换机后管理模块。其中,所述预埋计数器的方法,具体来说是在每个业务处理模块中都设有一块全局性的共享内存作为计数器区,内存中的每4个字节充当一个计数器。业务处理模块的应用程序采用约定的方式,对计数器区中的某个计数器进行累加(++)或累减(--)操作,以达到统计的目的。预埋计数器方法的实现主要涉及两个方面,其一是使用计数器对各类本体的统计方法,在本发明中,对于每类本体(如事件类、话务量类及时长类本体等),其具体的处理方法有些差别,其二是如何管理这些计数器。
下面对本发明中涉及到的各类本体的统计方法进行说明图4示出了本发明中对事件类本体进行统计的示意图。计数器结构最擅长的是进行累加。因此对于“试呼次数”、“占用次数”、“xxx次数”等本体,只需在相应的软件流程点上简单地在代表这些本体的计数器上++即可。事件的计数器随事件的发生而累加,SM在统计周期T的起始和结束时分别访问该计数器,差值即为这个统计周期内的发生的事件数。值得注意的是,采用这种“计数器累加,作差取统计结果”的方法,一个计数器可以为各种不同统计周期的统计任务服务。
图5示出了本发明中对话务量类本体进行统计的示意图。
对于话务量类的本体,如“占用话务量”,不仅与占用次数有关,而且与每一次占用的时长有关。因此,话务量采用间接扫描的方法。
原理如下在统计周期T内,划分为M个采样点,采样间隔时间Tp,则T=M×Tp。在每个采样点上,扫描对象中的个体线路(例如中继群中的中继电路),得到不同时刻占用的线数n1......nm。n为该统计对象内的总线数。如果采样间隔Tp足够小,则该周期内的话务量可以近似用下式表示USAGE=Σi=1MniM.]]>其中USAGE表示话务量(即话务强度);M表示统计周期内的采样次数;i表示第i个采样点的时刻;ni表示第i个采样点的时刻被统计对象组中处于使用状态的对象个数。
显然,为获得ni的值,每一个采样间隔Tp都扫描N条线的状态会消耗很多运算量。为此,用一个“占用线数计数器”表示在当前时刻处于占用的线路数ni,在每条线的占用开始时,由应用模块对“占用线数计数器”加1,结束时对“占用线数计数器”减1。这样,无需扫描每条线路,“占用线数计数器”就始终记录当前采样时刻统计对象中正在占用的线路数目。
采用一个计数器U(称为话务量辅助计数器),来记录ni的累加值Uj=Σi=1jni]]>其中U表示扫描线数在时间上的累计值;M表示统计周期内的采样次数;i表示第i个采样点的时刻;j表示第j个采样点的时刻;ni表示第i个采样点的时刻被统计对象组中处于使用状态的对象个数。
采用另一个计数器S记录从系统启动开始到某时刻的采样次数的总数,称为采样次数计数器。因此,统计周期T内的话务量是USAGE=(Uj2-Uj1)/M其中USAGE表示话务量(即话务强度);j2表示统计周期内末时刻(以采样序数为单位)的话务量辅助量;j1表示统计周期起始时刻(以采样序数为单位)话务量辅助量;M表示统计周期内的采样次数,即Sj2-Sj1。
与事件计数器类似,话务量辅助计数器和采样次数计数器随时间的推移而累加,SM在统计周期的起始和结束时分别扫描话务量辅助计数器和采样次数计数器,二者的差值之商即为该周期的话务量。
综上,为统计一个话务量,需要动用3个计数器占用线数计数器n、话务量辅助计数器U、采样次数计数器S。其中U是n随时间的累加值,S是随时间推移的采样次数的流水值。某一段时间内话务量的值由下式给出USAGE=(Uj2-Uj1)/(Sj2-Sj1)由于话务统计的统计任务通常是以预定的周期出统计结果的,也就是说,对某一个特定的统计任务,M(即Sj2-Sj1)是一个固定的量。因此,为简化设计,只动用2个计数器占用线数计数器n、话务量辅助计数器U,这样话务量的计算公式为USAGE=(Uj2-Uj1)/M(其中M是根具统计任务设定的统计周期得到的常量)。
而对于时长类本体,在统计的本体中,时长信息有平均占用时长、拥塞时长等。以平均占用时长为例,在一般情况下,平均占用时长=(占用总时长/占用次数),单位是采样间隔Tp(秒),如果要换算成以秒或分表示的时长,需要采用以下公式平均占用时长=(占用话务量辅助量/占用次数)*TP(秒)由于需统计的对象的数量巨大,对每一个交换机中的对象的每一个统计项目都静态分配一个计数器是不现实的。因此,需要设计不同类型的计数器以满足各类统计的要求。
测量单元中对象的实体只有一个。例如对全局发话话务的测量,对象为“所有用户线”。只需要一套计数器统计这一个对象的本体,这类计数器我们称之为固定计数器。固定计数器在系统初始化时就已经分配,其数目不随着SM的配置情况而发生变化。固定计数器可以用数组描述unsigned long main_counter[MAX_FIX_COUNTER_NUM];应用程序可以使用固定类计数器对应本体的枚举值作为计数器数组的下标,进行计数器及刷新操作。
测量单元中对象的实体有多个,但对一个SM来说,该实体数目只与对象的配置数目的最大元组有关,例如对中继群的统计。这类计数器我们称之为半固定计数器。半固定计数器也可以用数组描述
unsigned long main_counter[MAX_HFIX_COUNTER_NUM];与固定计数器不同,采用半固定计数器的测量单元的对象个数不为一。采用本体的枚举值直接作为索引的方法就不可取了,需要对枚举值按照对象序号“扩展”,从而生成索引值,计数器的索引采用以下的形式index=length*n+(entity-entity_begin)其中length是某个测量单元的本体的数量;entity_begin是某个测量单元的本体的起始枚举值,即MS_H_XXX_XXXX_ENTITY_BEGIN+1;entity是某个测量单元的统一编号的本体;n是某个测量单元的对象的序号,如局向3,则n=3。
测量单元中对象的实体有多个,并且对一个SM来说,该实体数目非常多(例如对用户线的统计,一个模块中允许配的用户线数是6688)。如果采用静态分配这些计数器,计数器所消耗的存储器数目将会是系统不能忍受的。因此需要动态的分配计数器。
动态分配的计数器的含义即系统初始化后,每个测量单元对象并不对应一组计数器,但有一个公用的计数器区给所有的这些对象公用,这个公用计数器区的大小是固定的。只有当BAM设置了统计任务,才给相应的统计对象分配一套计数器使用。当任务完成并被删除时,这套计数器才被释放。
在本发明的其他实施例中,也可以同时使用预埋计数器和事后分析的方法,对全局类及对象数目比较少的测量单元可以采用预埋计数器的方法进行统计,而对某个具体的对象进行统计的测量单元(例如统计某个用户的呼叫情况)采用事后分析的方法进行统计。这样可以兼顾两种方法的优点,使得话务统计功能能达到全面和高效的统一。
在本发明中,使用预埋计数器的方法进行话务统计,仅是在各个程序点对计数器进行++及--的操作。在统计周期结束时,再取计数器值形成统计报告输出到BAM。这样就可以提高话务统计的效率,也增加了同时统计的任务数目,并增强了话务统计功能的全面性。
另外,使用预埋计数器的方法进行话务统计,程序每走到一个统计点,相应的计数器就会进行计数,这样就提高了话务统计的实时性及准确性。
权利要求
1.一种实现实时话务统计的方法,其特征在于,包括(a)在每个业务处理模块中设置共享内存作为计数器区,该共享内存中的每固定字节设为一个计数器;(b)业务处理模块利用计数器采集话务数据并获得话务统计结果。
2.根据权利要求1所述的实现实时话务统计的方法,其特征在于,在步骤(a)之后包括设定统计任务、统计周期、统计对象。
3.根据权利要求1所述的实现实时话务统计的方法,其特征在于,在步骤(b)之后进一步包括业务处理模块将该话务统计结果通过交换机前管理模块或话务服务器传送给交换机后管理模块。
4.根据权利要求1所述的实现实时话务统计的方法,其特征在于,所述步骤(b)中进一步包括在事后进行统计分析来获得话务统计结果的步骤。
5.根据权利要求1至4任一项所述的实现实时话务统计的方法,其特征在于,步骤(b)进一步包括对事件类本体进行统计的步骤(b1)设置一个计数器;(b2)随事件的发生对该事件的计数器进行累加;(b3)业务处理模块在统计周期的起始和结束时分别访问该计数器,并计算其差值。
6.根据权利要求1至4任一项所述的实现实时话务统计的方法,其特征在于,步骤(b)进一步包括对话务量类本体进行统计的步骤(b4)设置占用线数计数器n及话务量辅助计数器U,所述占用线数计数器n表示在当前时刻处于占用的线路数ni,在每条线的占用开始时,对占用线数计数器加1,结束时对占用线数计数器减1;所述话务量辅助计数器U用于记录ni的累加值,其是通过下述公式获得Uj=Σi=1jni]]>其中,U表示扫描线数在时间上的累计值;i表示第i个采样点的时刻;j表示第j个采样点的时刻;ni表示第i个采样点的时刻被统计对象组中处于使用状态的对象个数;(b5)设置一采样次数计数器,用于记录从系统启动开始到某时刻的采样次数的总数;(b6)业务处理模块在统计周期的起始和结束时分别扫描话务量辅助计数器和采样次数计数器,并用下述公式计算统计周期T内的话务量话务量=(统计周期内末时刻的话务量辅助量-统计周期起始时刻的话务量辅助量)/统计周期内的采样次数。
7.根据权利要求1至4任一项所述的实现实时话务统计的方法,其特征在于,在步骤(b)中进一步包括为测量单元中对象的实体只有一个的设置固定计数器。
8.根据权利要求1至4任一项所述的实现实时话务统计的方法,其特征在于,对于测量单元中对象的实体有多个,且对一个业务处理模块来说,该实体数目只与对象的配置数目的最大元组有关的,设置半固定计数器,在该半固定计数器并对枚举值按照对象序号扩展,生成索引值。
9.根据权利要求1至4任一项所述的实现实时话务统计的方法,其特征在于,对于测量单元中对象的实体有多个,并且对一个业务处理模块来说,该实体数目非常多,动态分配计数器系统初始化后,为所有对象设置一个公用的计数器区,该公用计数器区大小固定,当交换机后管理模块设置了统计任务,给相应的统计对象分配一套计数器使用;当任务完成并被删除时,该计数器被释放。
全文摘要
一种实现实时话务统计的方法,其包括在每个业务处理模块中预埋计数器;业务处理模块利用计数器采集话务数据并获得话务统计结果;业务处理模块将该话务统计结果通过交换机前管理模块传送给交换机后管理模块。本发明采用预埋计数器的方法进行话务统计,仅是在各个程序点对计数器进行累加或累减的操作。在统计周期结束时,再取计数器值形成统计报告输出到交换机后管理模块。可以提高话务统计的效率、增加同时统计的任务数目,并增强话务统计功能的全面性。另外,还可提高话务统计的实时性及准确性。
文档编号H04M3/36GK1889602SQ20051003678
公开日2007年1月3日 申请日期2005年8月19日 优先权日2005年8月19日
发明者颜叶, 袁小海, 应建 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1