一种在智能网中进行许可管理的系统和方法

文档序号:7597409阅读:196来源:国知局
专利名称:一种在智能网中进行许可管理的系统和方法
技术领域
本发明涉及电信智能网的许可控制技术,尤其涉及一种在智能网中进行许可管理的系统和方法。
背景技术
目前在电信智能网中,电信产品提供商在开发电信产品的同时,为了维护该产品利益,需要针对通讯系统的能力或资源进行许可(License)设置。所述通讯系统的能力一般指通讯系统的功能或容量;所述通讯系统的资源包括很多种,比如语音、用户、卡号或是电话号码等等。所述的许可为电信产品提供商与电信运营商对所销售/购买的电信产品的使用范围、功能、期限等进行授权/被授权后,达成的一种合约。通过许可,电信运营商可以获得电信产品提供商所承诺的相应授权服务。例如电信提供商为电信运营商提供一种200电话卡业务,但对该业务的电话卡注册数量进行许可限制,例如只许可运营商最多注册100000张卡,如果超过该许可限制,则停止该业务;每注册一张卡,则使用的许可数量值加一,每注销一张卡,则使用的许可数量值减一。所述的许可管理为在电信产品中增加包括许可参数的许可信息,并在电信业务的运营过程中根据许可信息对具体的业务进程单元进行许可管理,从而控制电信产品的使用范围、功能、期限等。
参见图1,当前在智能网中进行许可管理的方法为将许可信息存储在系统的硬盘存储器中,并在每个业务进程单元中分别设置一许可管理单元。所述许可信息包括业务进程类型和该业务进程对应的许可参数,每个许可参数有两个取值,一个为上限值,另一个为当前已经使用的值,且该当前使用值随该业务进程的执行状况动态更新变化。当某个业务进程单元收到来自用户端的操作请求时,判断该操作请求是否为受许可限制的操作请求,如果是,则由该业务进程单元中的许可管理单元根据操作请求的类型判断对许可的需求,并执行相应的操作如果需要申请许可,例如申请新200电话卡的操作,则该业务进程单元的许可管理单元从硬盘存储器中查询相应的许可参数,根据许可参数的取值对该操作进行许可管理如果许可参数的取值没有达到上限,且上限值与当前使用值的差大于所申请的许可数,则继续执行该操作,并将当前许可使用值减去所申请的许可数;如果达到上限,则放弃该操作;如果需要释放许可,例如注销200电话卡的操作,则更新硬盘存储器中相应的许可参数,使许可参数的当前许可使用值增加所释放的许可数。
但是,智能网系统是一个多模块多进程系统,业务进程单元数量多,而现有的方法在每一个业务进程单元中都加入一许可管理单元,增加了每个业务进程单元的处理负担,使业务进程单元的处理效率低下,进而降低了整个智能网系统的处理性能。另外,随着智能网业务数量和种类的不断增加,每增加一项业务,就要相应增加一套许可管理单元,因此会造成电信产品成本的增加,且造成其可扩展性差。此外,对于一个应用服务利用多个业务进程单元处理事务的情况,由于该应用服务的许可参数由多个业务进程单元共享,但各个业务进程单元却分别进行许可管理,因此缺乏统一地调度,效率低下。现有技术还缺乏安全机制,一旦许可参数被非法或恶意篡改,则将给电信提供商或运营商带来巨大的经济损失。

发明内容
有鉴于此,本发明的主要目的是提供一种在智能网中进行许可管理的系统,以减轻智能网中各业务进程单元的负担,提高整个智能网系统的处理性能。
本发明的另一目的是提供一种在智能网中进行许可管理的方法,以提高智能网中各业务进程单元的处理效率和整个智能网系统的处理性能。
为了实现上述目的,本发明的技术方案具体是这样实现的
一种智能网许可管理系统,该系统包括用于存储许可信息的硬盘存储器,还包括至少一个业务进程单元,用于接收客户终端的操作请求,对于受许可限制的操作向公共许可管理模块发送许可操作请求;根据公共许可管理模块返回的许可操作响应对受许可限制的操作进行处理;公共许可管理模块,用于接收各个业务进程单元发送的许可操作请求,根据对硬盘存储器中许可信息的访问结果对许可操作进行处理,并向业务进程单元返回包括处理结果的许可操作响应。
作为本发明所述系统的一个优选方案,所述许可信息包括预先设定的固定许可信息,以及根据许可操作请求而动态更新的使用许可信息,其中,固定许可信息存储在硬盘存储器中,使用许可信息同时存储在硬盘存储器和公共许可管理模块中。
所述公共许可管理模块包括内存,用于存储使用许可信息;主控单元,用于接收各个业务进程单元发送的许可操作请求,访问内存和硬盘存储器中的使用许可信息,以及硬盘存储器中的固定许可信息,并根据访问结果对许可操作进行处理,向业务进程单元返回包括处理结果的许可操作响应。
所述公共许可管理模块进一步包括后台管理单元,用于接收用户输入的指令,对硬盘存储器中的固定许可信息或使用许可信息进行加载、查询、修改或卸载操作。
一种如上所述的智能网许可管理系统进行许可管理的方法,该方法包括A、业务进程单元收到受许可限制的操作请求后,根据该操作请求的许可需求向公共许可管理模块发送申请许可请求或释放许可请求;B、公共许可管理模块判断收到的许可请求类别,如果是申请许可请求,则执行步骤C;如果是释放许可请求,则执行步骤E;
C、公共许可管理模块查询所存储的许可信息,根据查询结果判断能否给予所申请的许可,如果能,则向业务进程单元返回申请许可成功的响应,并更新许可信息,然后执行步骤D;否则,向业务进程单元返回申请许可失败的响应;然后执行步骤D;D、业务进程单元判断公共许可管理模块返回的响应类型,如果是申请许可成功的响应,则继续执行当前操作;如果是申请许可失败的响应,放弃执行当前操作,结束流程;E、公共许可管理模块接受该请求中所释放的许可,更新所存储的许可信息,结束流程。
作为本发明所述方法的一种优选方案,所述步骤D中,业务进程单元收到申请许可成功的响应并继续执行当前操作时,进一步包括如果当前操作失败,则业务进程单元对该操作进行回滚,并向公共许可管理模块发送释放许可请求。
作为本发明所述方法的又一种优选方案,所述步骤E中,进一步包括公共许可管理模块根据更新所许可信息成功与否,向业务进程单元发送释放许可成功或失败的响应;如果业务进程单元收到释放许可成功的响应,则结束所述许可管理流程;如果业务进程单元收到释放许可失败的响应,放弃该释放许可操作,或者重新向公共许可管理模块发送释放许可请求,如果重复发送预定次数的释放许可请求后,还未收到释放许可成功的响应,则结束所述许可管理流程。
作为本发明所述方法的再一种优选方案,所述许可信息分为预先设定的固定许可信息,以及根据申请许可或释放许可而动态更新的使用许可信息。
所述步骤C中,查询许可信息,并根据查询结果判断能否给予所申请许可的具体过程为在固定许可信息中查询所申请许可的上限值,在使用许可信息中查询所申请许可的当前使用值,如果该上限值与当前使用值的差大于所申请的许可个数,则能给予所申请的许可,否则,不能给予所申请的许可。
所述固定许可信息存储在硬盘存储器中,所述使用许可信息同时存储在硬盘存储器和公共许可管理模块的内存中,当系统或公共许可管理模块重新启动而清空公共许可管理模块中的内存后,由公共许可管理模块将保存在硬盘存储器上的使用许可信息读取到其内存中。
所述固定许可信息存储在硬盘存储器中,所述使用许可信息同时存储在硬盘存储器和公共许可管理模块的内存中,当系统或公共许可管理模块重新启动而清空公共许可管理模块中的内存后,由业务进程单元读取硬盘存储器中的使用许可信息,并将读取到的使用许可信息上报给公共许可管理模块,公共许可管理模块再将使用许可信息存放在其内存中。
所述许可信息中包括用于区别不同业务进程的许可信息主键以及对应不同操作的许可参数,在所述业务进程向公共许可管理模块发送的申请许可请求或释放许可请求中包括与该业务进程对应的许可信息主键和当前操作所对应的许可参数。
所述许可信息中进一步包括校验和,且在所述步骤C中,当查询许可信息之前,或当更新许可信息之前,首先验证许可信息的校验和,如果验证成功,再查询许可信息和或更新许可信息,否则,放弃当前操作;在步骤E中,当更新许可信息之前,首先验证许可信息的校验和,如果验证成功,再更新许可信息,否则,放弃当前操作。
所述校验和的生成方法为以一个固定的字符串加上所述许可参数而构成一个输入字符串,采用信息摘要MD5算法计算出校验和;所述验证许可信息校验和的方法为利用上述校验和生成方法重新生成校验和,与许可信息中原有校验和进行比较,判断是否相同,如果相同,则验证成功,否则,验证失败。
所述的申请许可请求或释放许可请求采用人机语言MML命令进行发送。
由于本发明所述的许可管理系统和许可管理方法将每个业务进程单元中的许可管理模块提取出来,设置一个公共许可管理模块,利用该公共许可管理模块对业务进程进行许可管理,从而减小了各个业务进程单元的负担,提高业务进程单元的处理效率,进一步提高整个智能网系统的性能,改善系统的服务质量,降低成本。并且,由于对不同业务进程单元的许可进行集中管理,所以对于一个应用服务利用多个业务进程单元处理事务的情况,可以进行统一地调度,提高工作效率,由于每个业务进程单元中不需加入许可管理单元,因此易于维护,且易于扩展新业务。另外,本发明在许可信息中加入用于安全校验的信息,并在对许可信息进行操作时校验许可信息的安全状态,如果许可信息被非法或恶意篡改,则自动放弃许可操作,从而避免由于许可信息被非法篡改给电信提供商或运营商造成的经济损失。最后,由于本发明将当前使用的许可信息值存放在内存中,因此可提高对许可信息的访问速度,进一步提高系统工作效率。


图1为现有技术在智能网中进行许可管理的系统结构示意图;图2A为本发明在智能网中进行许可管理的系统结构示意图;图2B为本发明所述公共许可管理模块的结构示意图;图3为本发明第一实施例所述申请许可的流程图;图4为本发明第一实施例所述释放许可的流程图;图5为本发明第二实施例所述申请许可的流程图;图6为本发明第二实施例所述释放许可的流程图;图7为本发明所述第二实施例的上报机制流程图;图8A为本发明所述第二实施例在SMP中,如果公共许可管理模块先于业务进程单元启动时,触发上报机制的流程图;图8B为本发明所述第二实施例在SMP中,如果业务进程单元先于公共许可管理模块启动时,触发上报机制的流程图;图9为本发明所述公共许可管理模块的后台管理单元对许可信息进行管理的流程图。
具体实施例方式
下面结合附图和具体实施例进一步说明本发明的实施方法。
本发明的核心思想为将现有技术中每个业务进程单元中的许可管理模块提取出来,设置一个公共许可管理模块,业务进程单元如有许可需求,可通过发请求给公共许可管理模块,由该公共许可管理模块完成业务进程单元需要的许可操作。
参见图2A,基于上述核心思想,本发明所述的智能网许可管理系统包括至少一个业务进程单元、公共许可管理模块、硬盘存储器所述业务进程单元用于处理具体电信业务的相关操作,包括许可限制操作和非许可限制操作,如果是许可限制操作,则向公共许可管理模块发送许可操作请求,并接收公共许可管理模块返回的许可操作响应,根据响应的处理结果对该许可限制操作进程处理;所述的公共许可管理模块与各个业务进程单元和硬盘存储器相连,参见图2B,该公共许可管理模块进一步包括内存、主控单元和后台管理单元。内存用于临时存放许可信息;主控单元用于接收业务进程单元发送的许可操作请求,根据对硬盘存储器中许可信息的访问结果对许可操作进行处理,并向业务进程单元返回包括处理结果的响应;后台管理单元,用于接收输入的编辑指令,并对硬盘存储器或内存中的许可信息进行编辑,例如可对许可信息进行加载、查询、修改或卸载等操作。
所述的硬盘存储器用于存储许可信息,该许可信息包括固定许可信息和使用许可信息,其中固定许可信息由电信产品提供商设置并提供,在业务操作执行的过程中相对固定,电信运营商不能擅自修改,只能由电信产品提供商通过公共许可管理模块的后台管理操作进行更改。存储在硬盘存储器中;使用许可信息为业务操作当前所使用了的许可,同时存储在硬盘存储器和公共许可管理模块的内存中,可根据业务进程使用许可的情况动态更改使用许可信息。
由于本发明采用公共的许可管理模块对各个业务进程单元的许可进行管理,因此相对于现有技术,本发明在许可信息中主要增加了业务主键以及校验和,业务主键用于标明许可信息所对应的不同业务进程单元,校验和用干保证许可信息的安全。所述许可信息可以采用数据库表的形式存储,或者采用文件的形式存储。
下面以数据库表为例对固定许可信息和使用许可信息进行说明。表1为固定许可信息表,该表显示了所存储的固定许可信息的主要内容,如表1所示

表1表1中,固定许可信息表的主键为由LicenseType、LicenseSerial、CopyType和PlatformID组成的联合主键,每个业务进程单元的许可信息通过该主键来区别。所述LicenseType取值为平台(Platform)许可、在业务管理点(SMP,Service Management Point)上运行的服务(Service)业务许可或在业务控制点(SCP,Service Control Point)上运行的业务许可,具体取值在许可生成时由许可管理台的操作员选择。所述LicenseSerial用于标识特定的业务进程单元,其格式为IN_XXX_YYY,其中XXX为业务进程单元的名称,YYY为该业务进程单元的编号。所述CopyType项是许可信息的较小类别,当LicenseType是Platform时,CopyType分为SMP、业务控制单元(SCU,Service Control Unit)和业务数据单元(SDU,Service Data Unit),当LicenseType是Service时,CopyType是业务的种类,由每种业务的业务键来表示,当LicenseType是CAPS时,CopyType为1;CopyType项的具体取值是在许可生成时由许可管理台的操作员选择。
表1中列出了10个许可参数,但是具体数目需根据具体业务进程单元的需要决定,而且所述的参数个数为许可信息所对应的业务进程单元实际需要的参数个数。许可参数1至许可参数10分别标识一种许可参数的取值,其取值为对应操作的上限数值,例如,申请或注销一个200电话卡的操作对应许可参数一,该许可参数的取值为申请的最高数量限制。业务进程单元中具体的操作分别对应一个或者多个许可参数,所述各个许可参数以明文形式保存。同时,为了防止许可参数被手工篡改,针对每一组许可参数,还增加了一个许可键(LicenseKey)作为校验和,获得License Key的方法很多,例如以一个固定的字符串加上所有许可参数构成一个输入字符串,然后采用公知的信息摘要(MD5)算法计算出License Key。本发明通过校验License Key来检查许可参数是否被非法篡改过,如果篡改过则该组许可信息无效。校验License Key的方法为采用上述MD5算法获得一个实际的License Key值,与表中记录的原License Key值进行比较,判断是否相同,如果相同则校验成功,说明许可参数没有被篡改,否则,校验失败,说明许可参数被篡改。
表1中的许可状态用于标识许可参数是否处于安全状态,如果通过LicenseKey的校验,则该许可状态为正常状态,如果没有通过License Key的校验,则该许可状态为非正常状态。
以下表2为所述固定许可信息表的具体例子。参见表2,可以更为清楚地理解上述对固定许可信息表的描述。

表2本发明还在系统的硬盘存储器,以及公共许可管理模块内存中分别设置使用许可信息表,该使用许可信息表也包括主键、许可参数以及校验和;但是与固定许可信息表不同的是使用许可信息表中许可参数的取值可以更改。使用许可信息表的内容结构如表3所示


表3表3中Srvname、LicenseType、CopyType和PlatformID组成了使用许可信息表的主键。
表3中各个许可参数的取值是业务进程单元当前所使用的许可个数,且该许可参数的取值根据该业务进程单元的许可使用情况动态更新。当公共许可管理模块第一次启动注册时,则初始化硬盘存储器和内存中的使用许可信息表,将表中的许可参数值初始化为0。在执行许可操作的过程中,公共许可管理模块每执行一次许可操作,都要更新该表2中对应的许可参数。例如,如果该业务的某个操作申请了一个许可,则对应的许可参数加一,表示该操作已经用去了一个许可;如果某个操作释放了一个许可,则对应的许可参数减一,表示系统接受该操作释放了一个许可。如果某许可参数的取值达到上限,则不再允许执行其对应的申请许可操作。
表3中的校验和(Checksum)用于校验当前许可值是否有效,从而检验该表中的许可参数值是否被非法篡改过。此处生成校验和Checksum的方法与上述表1中生成License Key的方法相同。
以下表4为所述使用许可信息表的具体例子。参见表4,可以更为清楚地理解上述对使用许可信息表的描述。


表4下面是本发明所述许可管理方法的第一实施例,主要包括当业务进程单元收到来自客户端的操作请求后,首先判断该操作是否受许可的限制,如果该操作不受许可的限制,则按照操作请求进行处理;否则,继续判断操作需要申请许可还是释放许可对于需要申请许可的操作请求,例如注册200电话卡的操作,则执行申请许可流程;对于需要释放许可的操作请求,例如注销200电话卡的操作,则执行释放许可流程。
参见图3,所述的申请许可流程包括以下步骤步骤31、业务进程单元向公共许可管理模块发送申请许可请求,该申请许可请求中包括许可信息的主键和该操作对应的许可参数,许可参数的取值为当前操作所需要的许可个数。
本发明中业务进程单元与公共许可管理模块之间的操作命令,如请求和响应,都采用人机语言(MML)命令的形式进行发送。
本发明中,有些操作可以对应一个许可参数,例如注册一张普通200卡的操作,该操作对应的许可参数只是200卡的许可数量;但也有些操作可对应多个许可参数,例如注册一张带有绑定功能、且可以设置亲情号码功能的200卡,则该操作对应的许可参数为200卡的许可数量、本卡可设置的绑定主叫号码的数量以及可以设置亲情号码数量。
步骤32、公共许可管理模块访问硬盘存储器中的固定许可信息表,根据申请许可请求中的许可信息主键查找固定许可信息表中对应的许可信息,校验License Key,检验成功则读取所述许可信息中与当前操作对应的许可参数,得到对应许可参数的上限值,执行步骤33;否则,向业务进程单元返回错误响应,业务进程单元放弃当前操作,结束流程。
步骤33、公共许可管理模块读取硬盘存储器中的使用许可信息表,根据所述申请许可请求中的主键查找对应的许可信息,利用MD5算法校验Checksum,检验成功则读取内存使用许可信息表中与当前主键和操作对应的许可参数,得到对应许可的当前使用数值,执行步骤34;否则,向业务进程单元返回申请许可失败响应,执行步骤38。
步骤34~步骤37、公共许可管理模块比较步骤33得到的当前使用数值和步骤32得到的上限值,如果上限值大于当前使用数值,并且上限值与当前使用数值的差大于申请许可请求中许可参数值,则向业务进程单元返回申请成功的响应,更新硬盘存储器和内存中使用许可信息表对应的许可参数值,即将对应的许可参数值加上当前操作所申请的许可数目,用MD5算法更新Checksum;否则,该操作申请许可失败,向业务进程单元返回申请失败的响应。
步骤38、业务进程单元根据公共许可管理模块的响应执行相应操作如果收到申请许可成功的响应,则执行步骤39;如果收到申请许可失败的响应,则业务进程单元放弃所请求的操作,结束流程。
步骤39、业务进程单元按照请求的操作进行处理,如果该操作处理成功,则结束本流程;如果业务进程单元对请求的操作处理失败,则对该操作进行回滚,以释放该操作所占用的资源,并执行释放许可流程。
参见图4,所述的释放许可流程包括以下步骤步骤41、业务进程单元向公共许可管理模块发送释放许可请求,该释放许可请求中包括许可信息的主键和所述操作对应的许可参数。
如果该释放许可流程为步骤38所述由于操作处理失败而触发,则释放许可请求中的许可参数的个数和取值与步骤31中的许可参数个数和取值相同,许可参数的取值表示所要释放的许可数目。
如果该释放许可流程由需要释放许可的操作触发,则释放许可请求中的许可参数的个数与取值由该操作决定。
步骤42~步骤44、公共许可管理模块根据释放许可请求中的许可信息主键查找到硬盘存储器中使用许可信息表对应的许可信息,用MD5算法验证许可信息中的Checksum是否有改动,如果有改动则放弃操作,结束流程;如果没有改动则同时更新硬盘存储器和内存的使用许可信息表中与当前操作对应的许可参数,即将对应的许可参数值减去释放许可请求中所释放的许可数目;并用MD5算法更新Checksum。如果更新成功,则向业务进程单元返回释放许可成功的响应;否则,向业务进程单元返回释放许可失败的响应。
例如,假设释放许可请求中许可参数1的取值为2,则将使用许可信息表中许可参数1的取值修改为原值减去2得到的差值。
步骤45、如果业务进程单元收到释放许可成功的响应,则结束本流程;否则,放弃该释放许可操作,或者返回步骤41,重新发送释放许可请求,如果重复发送预定次数的释放许可请求后,还没有更新成功,则放弃该释放许可操作,结束本流程。
如上所述,公共许可管理模块在收到申请许可请求或释放许可请求时都要根据内存中使用许可信息表的记录进行处理,通过这种直接访问内存的方式可以加快处理速度,提高系统工作效率。当系统或公共许可管理模块重新启动后,公共许可管理模块将保存在硬盘存储器上的使用许可信息表的信息读取到内存的使用许可信息表中。并且,如果使用许可信息表中的记录被篡改,则公共许可管理模块可根据Checksum校验出来,从而保证许可信息的安全性。
在上述第一实施例中,使用许可信息同时存放在许可管理模块的硬盘存储器和内存中,由公共许可管理模块对硬盘存储器和内存中的使用许可信息进行维护,即修改其中的许可参数值。
下面是本发明所述许可管理方法的第二实施例,包括
在硬盘存储器中为每个业务进程单元分别设置一个使用许可信息表,由各个业务进程单元对硬盘存储器中与该业务进程单元对应的使用许可信息表进行维护,而公共许可管理模块负责对内存中的使用许可信息进行维护。本第二实施例还可将业务进程单元对应的使用许可信息表存储在各个业务进程单元的硬盘存储器中,而固定许可信息存储在系统的硬盘存储器中。本第二实施例中,当业务进程单元收到来自客户端的操作请求后,首先判断该操作是否受许可的限制,如果该操作不受许可的限制,则按照请求的操作进行处理;否则,继续判断操作需要申请许可还是释放许可对于需要申请许可的操作请求,例如注册200电话卡的操作,则执行申请许可流程;对于需要释放许可的操作请求,例如注销200电话卡的操作,则执行释放许可流程。
参见图5,本第二实施例的申请许可流程与上述第一实施例的申请许可流程基本相同,只是在步骤37中,当公共许可管理模块向业务进程单元返回申请成功的响应后,由业务进程单元更新硬盘存储器中使用许可信息表中对应的许可参数值;参见图6,本第二实施例的释放许可流程与上述第一实施例的释放许可流程基本相同,只是在步骤42中,由业务进程单元校验并更新硬盘存储器中对应的使用许可信息表。
本第二实施例中,由各个业务进程单元对与该业务进程单元对应的使用许可信息表进行维护,而公共许可管理模块负责对内存中的使用许可信息进行维护。采用这种维护方式可减少公共许可管理模块的存储负担,但当系统或公共许可管理模块重新启动后,需要通过上报机制刷新内存中的使用许可信息,如图7所示,上报流程包括步骤71、每个业务进程单元扫描读取硬盘存储器中与自身对应的使用许可信息表;
步骤72、各个业务进程单元将扫描到的许可信息上报给公共许可管理模块;步骤73、公共许可管理模块将上报的许可信息存放在自身内存的使用许可信息表中。
触发所述上报机制的时机会由于业务进程单元和公共许可管理模块的启动顺序不同而不同。下面以SMP为例说明上报机制的触发时机。在SMP中,如果系统重新启动,配置管理中心会首先启动,公共许可管理模块和各个业务进程单元在启动后都要到配置管理中心进行注册。
参见图8A,如果公共许可管理模块比业务进程单元先启动,则包括步骤8A1、公共许可管理模块先启动并在配置管理中心注册;步骤8A2、业务进程单元启动并在配置管理中心注册后,扫描到配置管理中心中关于公共许可管理模块的注册信息,判定公共许可管理模块已经启动;步骤8A3、业务进程单元向公共许可管理模块上报许可使用信息。
参见图8B,如果业务进程单元比公共许可管理模块先启动,则包括步骤8B1、业务进程单元先启动并在配置管理中心注册;步骤8B2、公共许可管理模块启动并注册;步骤8B3、配置管理中心向业务进程单元发送上报通知;步骤8B4、业务进程单元收到通知后主动向公共许可管理模块上报许可使用信息。
在所述的硬盘存储器中包括硬盘存储器模块,该硬盘存储器模块一般是数据库系统,比如Informix、Sybase、ORACLE等数据库系统。固定许可信息和使用许可信息都存储在该硬盘存储器模块中。
另外,本发明在公共许可管理模块中还包括许可信息的后台管理单元,该后台管理单元可以根据用户编辑指令对硬盘存储器模块中存储的许可信息进行编辑,例如执行加载、卸载、修改和查询等编辑操作。参见图9当首次使用某项带有许可限制的业务之前,需要通过后台管理单元向硬盘存储器模块的固定许可信息表和使用许可信息表中加载该业务相对应的初始化许可信息。硬盘存储器模块返回加载成功或失败的响应。
当用户需要查询某项业务的许可信息时,可通过后台管理单元查询硬盘存储器模块中的许可信息;例如,可以查询许可参数的总数,已使用的许可数量或可使用的许可数量。硬盘存储器模块返回查询成功或失败的响应。
当用户需要增加业务种类或是增加某项业务的许可数量,以扩大业务的规模时,可通过后台管理单元修改硬盘存储器模块中的许可信息。硬盘存储器模块返回修改成功或失败的响应。
当取消某种业务或是全部业务时,可以通过后台管理单元卸载硬盘存储器模块中相应业务进程单元的许可信息。硬盘存储器模块返回卸载成功或失败的响应。
后台管理单元实现对硬盘存储器模块中许可信息进行加载、卸载、修改和查询等操作的技术手段根据许可信息的存储形式的不同而稍有区别,对于以数据库形式存储的许可信息,可通过数据库中加载、卸载、修改和查询等操作实现。对于以文件形式存储的许可信息,可通过对该文件的修改操作来实现上述的操作需求。鉴于具体操作技术为本领域的公知技术,此处不再叙述。
另外,由于考虑到许可信息的正确性和安全性,在执行每一个对许可信息的管理操作前,再增加一个通用的鉴权流程,只有通过鉴权的用户才可以对许可信息进行管理操作。在加载或修改许可信息时,需要对许可信息进行字段加密操作,例如对于许可信息中的LicenseSerial,可先通过加密算法生成,再加载到硬盘存储器中。
所述后台管理单元的操作只有在业务进程单元空闲时才可以进行,否则会造成包含许可操作的业务进程操作失败。
以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
权利要求
1.一种智能网许可管理系统,该系统包括用于存储许可信息的硬盘存储器,其特征在于,该系统还包括至少一个业务进程单元,用于接收客户终端的操作请求,对于受许可限制的操作向公共许可管理模块发送许可操作请求;根据公共许可管理模块返回的许可操作响应对受许可限制的操作进行处理;公共许可管理模块,用于接收各个业务进程单元发送的许可操作请求,根据对硬盘存储器中许可信息的访问结果对许可操作进行处理,并向业务进程单元返回包括处理结果的许可操作响应。
2.如权利要求1所述的系统,其特征在于,所述许可信息包括预先设定的固定许可信息,以及根据许可操作请求而动态更新的使用许可信息,其中,固定许可信息存储在硬盘存储器中,使用许可信息同时存储在硬盘存储器和公共许可管理模块中。
3.如权利要求2所述的系统,其特征在于,所述公共许可管理模块包括内存,用于存储使用许可信息;主控单元,用于接收各个业务进程单元发送的许可操作请求,访问内存和硬盘存储器中的使用许可信息,以及硬盘存储器中的固定许可信息,并根据访问结果对许可操作进行处理,向业务进程单元返回包括处理结果的许可操作响应。
4.如权利要求3所述的系统,其特征在于,所述公共许可管理模块进一步包括后台管理单元,用于接收用户输入的指令,对硬盘存储器中的固定许可信息或使用许可信息进行加载、查询、修改或卸载操作。
5.一种如权利要求1所述的智能网许可管理系统进行许可管理的方法,其特征在于,该方法包括A、业务进程单元收到受许可限制的操作请求后,根据该操作请求的许可需求向公共许可管理模块发送申请许可请求或释放许可请求;B、公共许可管理模块判断收到的许可请求类别,如果是申请许可请求,则执行步骤C;如果是释放许可请求,则执行步骤E;C、公共许可管理模块查询所存储的许可信息,根据查询结果判断能否给予所申请的许可,如果能,则向业务进程单元返回申请许可成功的响应,并更新许可信息,然后执行步骤D;否则,向业务进程单元返回申请许可失败的响应;然后执行步骤D;D、业务进程单元判断公共许可管理模块返回的响应类型,如果是申请许可成功的响应,则继续执行当前操作;如果是申请许可失败的响应,放弃执行当前操作,结束流程;E、公共许可管理模块接受该请求中所释放的许可,更新所存储的许可信息,结束流程。
6.如权利要求5所述的方法,其特征在于,所述步骤D中,业务进程单元收到申请许可成功的响应并继续执行当前操作时,进一步包括如果当前操作失败,则业务进程单元对该操作进行回滚,并向公共许可管理模块发送释放许可请求。
7.如权利要求5所述的方法,其特征在于,所述步骤E中,进一步包括公共许可管理模块根据更新所许可信息成功与否,向业务进程单元发送释放许可成功或失败的响应;如果业务进程单元收到释放许可成功的响应,则结束所述许可管理流程;如果业务进程单元收到释放许可失败的响应,放弃该释放许可操作,或者重新向公共许可管理模块发送释放许可请求,如果重复发送预定次数的释放许可请求后,还未收到释放许可成功的响应,则结束所述许可管理流程。
8.如权利要求5所述的方法,其特征在于,所述许可信息分为预先设定的固定许可信息,以及根据申请许可或释放许可而动态更新的使用许可信息。
9.如权利要求8所述的方法,其特征在于,所述步骤C中,查询许可信息,并根据查询结果判断能否给予所申请许可的具体过程为在固定许可信息中查询所申请许可的上限值,在使用许可信息中查询所申请许可的当前使用值,如果该上限值与当前使用值的差大于所申请的许可个数,则能给予所申请的许可,否则,不能给予所申请的许可。
10.如权利要求8所述的方法,其特征在于,所述固定许可信息存储在硬盘存储器中,所述使用许可信息同时存储在硬盘存储器和公共许可管理模块的内存中,当系统或公共许可管理模块重新启动而清空公共许可管理模块中的内存后,由公共许可管理模块将保存在硬盘存储器上的使用许可信息读取到其内存中。
11.如权利要求8所述的方法,其特征在于,所述固定许可信息存储在硬盘存储器中,所述使用许可信息同时存储在硬盘存储器和公共许可管理模块的内存中,当系统或公共许可管理模块重新启动而清空公共许可管理模块中的内存后,由业务进程单元读取硬盘存储器中的使用许可信息,并将读取到的使用许可信息上报给公共许可管理模块,公共许可管理模块再将使用许可信息存放在其内存中。
12.如权利要求5所述的方法,其特征在于,所述许可信息中包括用于区别不同业务进程的许可信息主键以及对应不同操作的许可参数,在所述业务进程向公共许可管理模块发送的申请许可请求或释放许可请求中包括与该业务进程对应的许可信息主键和当前操作所对应的许可参数。
13.如权利要求5或12所述的方法,其特征在于,所述许可信息中进一步包括校验和,且在所述步骤C中,当查询许可信息之前,或当更新许可信息之前,首先验证许可信息的校验和,如果验证成功,再查询许可信息和或更新许可信息,否则,放弃当前操作;在步骤E中,当更新许可信息之前,首先验证许可信息的校验和,如果验证成功,再更新许可信息,否则,放弃当前操作。
14.如权利要求13所述的方法,其特征在于,所述校验和的生成方法为以一个固定的字符串加上所述许可参数而构成一个输入字符串,采用信息摘要MD5算法计算出校验和;所述验证许可信息校验和的方法为利用上述校验和生成方法重新生成校验和,与许可信息中原有校验和进行比较,判断是否相同,如果相同,则验证成功,否则,验证失败。
15.如权利要求5、6或12所述的方法,其特征在于,所述的申请许可请求或释放许可请求采用人机语言MML命令进行发送。
全文摘要
本发明公开了一种智能网许可管理系统,该系统包括用于存储许可信息的硬盘存储器,至少一个业务进程单元,用于根据操作请求的许可需求向公共许可管理模块发送许可操作请求;还包括公共许可管理模块,用于完成业务进程单元所请求的许可操作。本发明还公开了一种许可管理方法,包括业务进程单元根据操作请求的许可需求向公共许可管理模块发送许可操作请求;公共许可管理模块完成业务进程单元所请求的许可操作;业务进程单元根据公共许可管理模块的响应进行操作。利用本发明所述的系统和方法可减轻智能网中各业务进程单元的负担,提高业务进程单元的工作效率和整个智能网系统的处理性能。
文档编号H04L9/32GK1750477SQ20041007801
公开日2006年3月22日 申请日期2004年9月16日 优先权日2004年9月16日
发明者王斌 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1