基于多客户端多任务的实时数据观察方法

文档序号:7599432阅读:146来源:国知局
专利名称:基于多客户端多任务的实时数据观察方法
技术领域
本发明属于一种电信网管系统中实时数据观察方法,尤其是属于一种电信网管系统中多客户端多任务情况下的实时数据观察方法。
背景技术
在电信网管系统中,需要对网元数据进行实时观察,从而了解网元数据的当前运行情况。以CDMA2000系统为例,这些数据包括有位于BTS(基站收发信机)的反向链路数据,扇区速率数据,信道单元占用数据等;位于BSC(基站控制器)的全局接通率数据,小区接通率数据,微码实时数据等;位于MSC(移动交换中心)的数据区占用,话务指标,通讯状况等;位于HLR(归属位置登记器)的鉴权成功率,登记成功率等;以及同时位于基站侧和交换侧各单板处理器的CPU利用率和内存占用数据。要将网元数据实时地提供给用户观察,需要网管后台先将观察任务发送到驻留在网元各单板上的网管前台代理程序,然后在网管前台代理程序收集到实时数据之后,再返回给网管后台供用户观察。通常情况下,这些观察任务在网管后台的服务器进行管理。
在目前的网管系统中,采用的任务管理方法按照支持的客户端数目和任务数目可以分为单客户端单任务,单客户端多任务,多客户端多任务三种。单客户端的方式下,只能在一个客户端进行实时数据观察。这种方式,一方面不利于及时、全面的了解基站信息,另一方面,同时频繁的启停任务、前后台交互操作也加重了系统处理、通讯的负担,加之实时观察数据的种类较多,网管系统前后台之间的消息量较大,很容易引起网络拥塞,这不仅会影响网元数据的实时观察,而且可能会影响网管系统其它模块的正常运行。
多客户端多任务的方式可以支持多个客户端同时进行实时数据观察,能够避免所述单客户端方式带来的弊端。为了支持多客户端多任务方式,必须要求服务器在开启和停止观察任务时,对各个客户端的任务进行融合,在数据上报时将数据向各个客户端进行分发,任务融合和数据分发的方式多种多样,从而产生了各种各样的任务管理方法,其效率将直接影响网管系统的效率、稳定性和可靠性。现有的任务管理方法是,开始观察时,在服务器任务池中,每个客户端的任务都新建一个任务实例;数据上报时,需要遍历任务池中的任务,将数据分发到各个客户端;停止观察时,又需要遍历任务池中的任务,删除该任务。这种任务管理的机制存在两个问题,一是每个客户端都创建一个任务实例,导致服务器程序的内存开销很大;二是数据上报和任务停止时,都需要对整个任务池进行遍历,而任务池中的任务非常多,造成遍历的效率很低。

发明内容
本发明所要解决的技术问题是提供一种基于多客户端多任务的实时数据观察方法,该方法能大大提高服务器任务融合及数据分发的效率,减少服务器程序内存占用,从而达到提高网管系统的效率、稳定性和可靠性。
为了解决上述技术问题,本发明提供一种基于多客户端多任务的实时数据观察方法,包括如下步骤(a)服务器接收客户端开始观察请求后,判断任务池中是否存在所请求的网元任务实例,若存在,则在相应网元任务实例的客户端链表中加入该客户端的编号,否则在任务池中新建一个网元任务实例,并在新建的相应网元任务实例的客户端链表中加入客户端的编号,然后将任务池中的各网元任务实例发送至网管前台代理;(b)服务器接收实时上报数据后,在任务池中找到与所述上报数据相对应的网元任务实例,再根据该网元任务实例的客户端编号链表中的客户端编号,将所述上报数据分别发送到各个相应的客户端;(c)服务器接收客户端停止观察请求后,在任务池中删除所请求的网元任务实例的客户端链表中该客户端的编号,如果删除后该客户端链表为空,则删除该网元任务实例。
进一步地,上述方法可具有以下特点,所述步骤(a)可进一步分为如下步骤(a1)若干客户端发送对若干网元的实时数据的开始观察请求至服务器;(a2)服务器接收各客户端的开始观察请求后,按照客户端编号依次对请求观察的各客户端判断任务池中是否存在各自所请求的网元任务实例,若存在,则在相应网元任务实例的客户端链表中加入所述请求观察的客户端的编号,否则在任务池中新建一个网元任务实例,并在新建的相应网元任务实例的客户端链表中加入所述请求观察的客户端的编号;(a3)服务器将任务池中的各网元任务实例发送至网管前台代理。
进一步地,上述方法可具有以下特点,所述步骤(b)可进一步分为如下步骤(b1)网管前台代理将所需要观察的各网元任务实例的上报数据到网管后台服务器;(b2)服务器接收各实时上报数据后,在任务池中找到与各自上报数据相对应的网元任务实例,再根据该网元任务实例的客户端编号链表中的客户端编号,将所述上报数据分别发送到各个相应的客户端;(b3)各客户端接收到各自请求观察的上报数据后,显示给用户观察。
进一步地,上述方法可具有以下特点,所述步骤(c)可进一步分为如下步骤(c1)若干客户端发送对若干网元的实时数据的停止观察请求至服务器;(c2)服务器接收各客户端的停止观察请求后,按照客户端编号在任务池中依次删除在各自所请求停止观察的网元任务实例的客户端链表中所述请求停止观察的客户端的编号,若删除后网元任务实例的客户端链表为空,则删除该网元任务实例;(c3)服务器将任务池中的各网元任务实例发送至网管前台代理。
进一步地,上述方法可具有以下特点所述客户端发送的开始观察请求的内容包括有客户端编号、开始观察的任务实例以及请求观察的网元定位信息。
进一步地,上述方法可具有以下特点所述客户端发送的停止观察请求的内容包括有客户端编号、停止观察的任务实例以及停止观察的网元定位信息。
进一步地,上述方法可具有以下特点所述的任务实例可为CPU利用率、反向链路数据、扇区速率数据、信道单元占用数据、全局接通率数据、小区接通率数据和微码实时数据。
与现有技术相比,本发明基于多客户端多任务的实时数据观察方法具有以下优点由于采用了在网元任务实例中保持客户端编号链表的方式,不仅有效地减少了服务器程序的内存开销,而且提高了服务器程序运行的效率,从而提高了网管系统的效率、可靠性和稳定性。
图6给出了对两种方法在服务器内存占用方面的比较,其中方法A为现有的任务管理处理机制,方法B为本发明采用的任务管理处理机制。在这里,我们选择CPU利用率观察的任务为例,每个网元的任务实例长度为24字节,每个客户端编号长度为1字节。
计算公式方法A(任务实例长度+客户端编号长度)×客户端数量;方法B任务实例长度+客户端编号长度×客户端数量。
从图6中可以看到,采用本发明的任务管理机制后,服务器程序的内存占用大大减少,在2个客户端的情况下,内存占用减少近50%,随着客户端的增加,内存占用减少的比例也将增加,在20个客户端的情况下,内存占用减少90%,有效地达到了通过降低服务器内存占用来提高系统可靠性和稳定性的目的。
图7给出了对两种方法在数据分发和停止任务效率方面的比较,其中方法A为现有的任务管理处理机制,方法B为本发明采用的任务管理处理机制。我们分别就观察网元数目为5和10的情况下进行比较。
计算公式方法A查找次数=方法A任务实例数量;
方法B查找次数=方法B任务实例数量+客户端数量。
从图7中可以看到,采用本发明的任务管理机制后,数据上报或停止任务时,查找的次数降低了30%~80%,有效地达到了通过减少查找次数来提高系统效率的目的。


图1是本发明基于多客户端多任务的实时数据观察方法所涉及的网管系统图;图2是本发明基于多客户端多任务的实时数据观察方法所涉及的CDMA2000的基站的系统图;图3是本发明基于多客户端多任务的实时数据观察方法中开始观察流程图;图4是本发明基于多客户端多任务的实时数据观察方法中数据上报流程图;图5是本发明基于多客户端多任务的实时数据观察方法中停止观察流程图;图6是本发明与现有技术在服务器内存占用方面的比较示意图;图7是本发明与现有技术在数据分发和停止任务效率方面的比较示意图。
具体实施例方式
为深入了解本发明基于多客户端多任务的实时数据观察方法,下面结合附图及具体实施例对本发明进行详细说明。
图1中所述网管系统包括网元100和网管前台101,网元110和网管前台111,网元120和网管前台121,网元130和网管前台131,网管后台服务器140和任务池141,网管后台客户端150,网管后台客户端160,网管后台客户端170,网管后台客户端180,网管后台客户端190。
图2中所述CDMA2000基站系统包括一个基站收发信机200,一个基站控制器210,一个网管后台服务器220和若干网管后台客户端230,240,250,260,270,280。基站收发信机包括通信控制模块201,信道处理模块202和其他单板203,各个单板上驻有网管前台代理。基站控制器包括选择分发单元211,主处理模块212和其他单板213,各个单板上驻留有网管前台代理。网管前台和网管后台之间,网管后台服务器和网管后台客户端之间可以进行消息传递。
本发明基于多客户端多任务的实时数据观察方法一般分为三个阶段,第一阶段是开始观察,如图3所示;第二阶段是数据上报,如图4所示;第三阶段是停止观察,如图5所示。
在开始观察阶段,包括如下步骤步骤301,客户端发送对某些网元的实时数据的开始观察请求消息至服务器,该开始观察请求的内容包括有客户端编号、开始观察的任务实例以及请求观察的网元定位信息,所述的任务实例可为CPU利用率、反向链路数据、扇区速率数据、信道单元占用数据、全局接通率数据、小区接通率数据和微码实时数据,所述网元定位信息一般用于指向某个机架、某个机框的某个单板或某个小区的某个载频等等;步骤302,服务器按照客户端的开始观察请求判断任务池中是否存在其所请求的网元任务实例,若存在,执行步骤304,否则执行步骤303;步骤303,服务器在任务池中新建一个客户端所请求的网元任务实例;步骤304,服务器在所述网元任务实例的客户端链表中加入该客户端的编号;步骤305,服务器按照客户端的开始观察请求判断是否还有其它的网元需要观察,若有,则返回步骤302,否则执行步骤306;步骤306,服务器将任务池中的各网元任务实例发送至网管前台代理。
在数据上报阶段,包括如下步骤步骤401,网管前台代理将所需要观察的各网元任务实例的上报数据到网管后台服务器;步骤402,服务器接收各实时上报数据后,在任务池中找到与各自上报数据相对应的网元任务实例,再根据该网元任务实例的客户端编号链表中的客户端编号,将所述上报数据分别发送到各个相应的客户端;
步骤403,各客户端接收到各自请求观察的上报数据后,显示给用户观察。
在停止观察阶段,包括如下步骤步骤501,客户端发送对某些网元的实时数据的停止观察请求消息至服务器,该开始观察请求的内容包括有客户端编号、停止观察的任务实例以及停止观察的网元定位信息;步骤502,服务器按照客户端的停止观察请求,在任务池所请求网元任务实例的客户端链表中删除该客户端的编号;步骤503,服务器判断删除后所述网元任务实例的客户端链表是否为空,若为空,执行步骤504,否则执行步骤505;步骤504,服务器删除在任务池中的该网元任务实例;步骤505,服务器按照客户端的停止观察请求判断是否还有其它的网元需要停止观察,若有,则返回步骤502,否则执行步骤506;步骤506,服务器将任务池中的各网元任务实例发送至网管前台代理。
下面结合CPU利用率观察来详细说明本发明方法在CDMA2000基站系统的一个实施例。
这里以两个客户端观察两个网元的CPU利用率来说明本发明,观察实施的具体步骤是步骤11,客户端1发送开始观察网元1和网元2的CPU利用率请求消息到服务器。
步骤12,服务器根据收到的客户端1开始观察请求判断任务池中是否存在网元1的任务实例,此时不存在,则在任务池新建一个任务实例1,并在任务实例1的客户端链表中加入客户端1的编号。
步骤13,服务器根据收到的客户端1开始观察请求判断任务池中是否存在网元2的任务实例,此时不存在,则在任务池新建一个任务实例2,并在任务实例2的客户端链表中加入客户端1的编号。
步骤14,客户端2发送开始观察网元1和网元2的CPU利用率请求消息到服务器。
步骤15,服务器根据收到的客户端2开始观察请求判断任务池中是否存在网元1的任务实例,此时任务实例已存在,在任务实例1的客户端链表中加入客户端2的编号。
步骤16,服务器根据收到的客户端2开始观察请求判断任务池中是否存在网元2的任务实例,此时任务实例已存在,在任务实例2的客户端链表中加入客户端2的编号。
步骤17,服务器将网元1和网元2的观察任务发送到网管前台代理。
步骤21,网管前台代理将网元1的CPU利用率数据上报到网管后台服务器。
步骤22,服务器收到上报数据后,在任务池中分别找到网元1的任务实例1,根据客户端编号链表中的客户端编号,分别发送到客户端1和客户端2。
步骤23,客户端1和客户端2收到网元1的CPU利用率数据,显示给用户观察。
步骤24,网管前台代理将网元2的CPU利用率数据上报到网管后台服务器。
步骤25,服务器收到上报数据后,在任务池中分别找到网元2的任务实例2,根据客户端编号链表中的客户端编号,分别发送到客户端1和客户端2。
步骤26,客户端1和客户端2收到网元2的CPU利用率数据,显示给用户观察。
步骤31,客户端1发送对网元1和网元2的CPU利用率的停止观察请求消息到服务器。
步骤32,服务器根据客户端1的停止观察消息在任务池的任务实例1的客户端链表中删除客户端1的编号。
步骤33,服务器根据客户端1的停止观察消息在任务池的任务实例2的客户端链表中删除客户端1的编号。
步骤34,客户端2发送对网元1和网元2的CPU利用率的停止观察请求消息到服务器。
步骤35,服务器根据客户端2的停止观察消息在任务池的任务实例1的客户端链表中删除客户端2的编号。判断此时客户端链表为空,故删除任务实例1。
步骤36,服务器根据客户端2的停止观察消息在任务池的任务实例2的客户端链表中删除客户端2的编号。判断此时客户端链表为空,故删除任务实例2。
步骤37,服务器融合数据结束后,将任务池中的任务发送到网管前台代理,此时已无任务,故前台代理停止上报CPU利用率数据。
权利要求
1.一种基于多客户端多任务的实时数据观察方法,其特征在于,该方法包括如下步骤(a)服务器接收客户端开始观察请求后,判断任务池中是否存在所请求的网元任务实例,若存在,则在相应网元任务实例的客户端链表中加入该客户端的编号,否则在任务池中新建一个网元任务实例,并在新建的相应网元任务实例的客户端链表中加入客户端的编号,然后将任务池中的各网元任务实例发送至网管前台代理;(b)服务器接收实时上报数据后,在任务池中找到与所述上报数据相对应的网元任务实例,再根据该网元任务实例的客户端编号链表中的客户端编号,将所述上报数据分别发送到各个相应的客户端;(c)服务器接收客户端停止观察请求后,在任务池中删除所请求的网元任务实例的客户端链表中该客户端的编号,如果删除后该客户端链表为空,则删除该网元任务实例。
2.根据权利要求1所述的基于多客户端多任务的实时数据观察方法,其特征在于,所述步骤(a)可进一步分为如下步骤(a1)若干客户端发送对若干网元的实时数据的开始观察请求至服务器;(a2)服务器接收各客户端的开始观察请求后,按照客户端编号依次对请求观察的各客户端判断任务池中是否存在各自所请求的网元任务实例,若存在,则在相应网元任务实例的客户端链表中加入所述请求观察的客户端的编号,否则在任务池中新建一个网元任务实例,并在新建的相应网元任务实例的客户端链表中加入所述请求观察的客户端的编号;(a3)服务器将任务池中的各网元任务实例发送至网管前台代理。
3.根据权利要求2所述的基于多客户端多任务的实时数据观察方法,其特征在于,所述步骤(b)可进一步分为如下步骤(b1)网管前台代理将所需要观察的各网元任务实例的上报数据到网管后台服务器;(b2)服务器接收各实时上报数据后,在任务池中找到与各自上报数据相对应的网元任务实例,再根据该网元任务实例的客户端编号链表中的客户端编号,将所述上报数据分别发送到各个相应的客户端;(b3)各客户端接收到各自请求观察的上报数据后,显示给用户观察。
4.根据权利要求3所述的基于多客户端多任务的实时数据观察方法,其特征在于,所述步骤(c)可进一步分为如下步骤(c1)若干客户端发送对若干网元的实时数据的停止观察请求至服务器;(c2)服务器接收各客户端的停止观察请求后,按照客户端编号在任务池中依次删除在各自所请求停止观察的网元任务实例的客户端链表中所述请求停止观察的客户端的编号,若删除后网元任务实例的客户端链表为空,则删除该网元任务实例;(c3)服务器将任务池中的各网元任务实例发送至网管前台代理。
5.根据权利要求4所述的基于多客户端多任务的实时数据观察方法,其特征在于所述客户端发送的开始观察请求的内容包括有客户端编号、开始观察的任务实例以及请求观察的网元定位信息。
6.根据权利要求5所述的基于多客户端多任务的实时数据观察方法,其特征在于所述客户端发送的停止观察请求的内容包括有客户端编号、停止观察的任务实例以及停止观察的网元定位信息。
7.根据权利要求6所述的基于多客户端多任务的实时数据观察方法,其特征在于所述的任务实例为CPU利用率。
8.根据权利要求6所述的基于多客户端多任务的实时数据观察方法,其特征在于所述的任务实例为反向链路数据或扇区速率数据。
9.根据权利要求6所述的基于多客户端多任务的实时数据观察方法,其特征在于所述的任务实例为小区接通率数据或全局接通率数据。
10.根据权利要求6所述的基于多客户端多任务的实时数据观察方法,其特征在于所述的任务实例为信道单元占用数据或微码实时数据。
全文摘要
本发明公开了一种基于多客户端多任务的实时数据观察方法,该方法包括如下步骤服务器接收客户端开始观察请求后,判断任务池中是否存在所请求的任务实例,若存在,则在任务实例客户端链表中加入客户端编号,否则在任务池中新建任务实例,并在任务实例客户端链表中加入客户端编号;服务器接收实时上报数据,在任务池中找到相应任务实例,再根据该任务实例客户端编号链表中客户端编号,分别发送上报数据到各个客户端;服务器接收客户端停止观察消息,在任务池中删除相应任务实例客户端链表中客户端编号,如果删除后客户端链表为空,则删除该任务实例。本方法能提高服务器任务融合及数据分发的效率,减少服务器程序内存占用。
文档编号H04L12/24GK1773933SQ20041009079
公开日2006年5月17日 申请日期2004年11月11日 优先权日2004年11月11日
发明者张益 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1