CN103974220B - 策略生成装置及其工作方法、策略生成系统及其工作方法 - Google Patents
策略生成装置及其工作方法、策略生成系统及其工作方法 Download PDFInfo
- Publication number
- CN103974220B CN103974220B CN201310029846.3A CN201310029846A CN103974220B CN 103974220 B CN103974220 B CN 103974220B CN 201310029846 A CN201310029846 A CN 201310029846A CN 103974220 B CN103974220 B CN 103974220B
- Authority
- CN
- China
- Prior art keywords
- policy
- information
- strategy
- conditional expression
- language
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种策略生成装置及其工作方法、策略生成系统及其工作方法。其中策略生成装置包括:获取模块、策略筛选模块、第一存储模块、条件表达式处理模块和第二存储模块;获取模块用于获取用户策略信息,用户策略信息包括:策略内容和第一语言格式的条件表达式;条件表达式处理模块用于将所述第一语言格式的条件表达式转换成第二语言格式的条件表达式;第一存储模块用于存储所述第二语言格式的条件表达式;第二存储模块用于存储所述用户策略信息中的策略内容;所述策略筛选模块用于根据所述第二语言格式的条件表达式和所诉策略内容筛选出需要发送的策略内容,该装置能够灵活配置,实时生效及简单快速生成策略内容。
Description
技术领域
本发明涉及电信技术领域,尤其涉及一种策略生成装置及其工作方法、策略生成系统及其工作方法。
背景技术
全球互联网正在由PC-Internet向Mobile-internet转变,手机及移动终端在某种意义上已经主导着互联网的发展。移动互联网的发展带来相关产业10000亿美元收益的同时也给电信产业带来深刻影响。面临如此巨大的机遇,移动运营商正在寻求一种新的盈利和服务模式,智能管道是其中的重要组成部分。
智能管道是指对网络资源实现差异的调度和动态精确配置,具有对用户业务及流量分层管理和控制能力,实现用户可识别、业务可区分、流量可优化、网络可管理、计费可灵活等差异化的服务功能。SPCF(Service Policy Control Function)系统是智能管道中的极其重要的一个子系统,用于实现增值业务策略生成与下发。在SPCF系统中,策略的条件表达式的配置方式直接影响着SPCF系统的易用性,而策略的下发与生效方法直接影响着SPCF系统的响应的实时性与效率。
目前的相关策略系统中策略条件表达式的实现方法,主要有两种。方法一是使用自然的普通描述语言实现条件表达式,分别使用lex与yacc作为词法分析器和语义解析器,把条件表达式内容编译成机器码,然后当策略请求到来时,根据策略请求信息,通过调用BPF过滤器来计算条件表达式的值,并根据计算结果返回相关策略内容。这种方法的优点是条件表达式书写简单,对配置人员不需太多技术要求。缺点是只支持精确匹配,不能支持模糊匹配和部分匹配,不能支持条件表达式动态生效。方法二,使用的python语言实现条件表达式。该方法能支持条件表达式实时动态生效,但是需要条件表达式配置人员精通python语法,这直接提高了对局方维护人员的能力水平要求,同时也间接提高了局方的维护成本。
发明内容
本发明要解决的主要技术问题是,提供一种策略生成装置及其工作方法、策略生成系统及其工作方法能够灵活配置,实时生效及简单快速生成策略内容。
为解决上述技术问题,本发明提供一种策略生成装置,包括:获取模块、策略筛选模块、第一存储模块、条件表达式处理模块和第二存储模块;
所述获取模块用于获取用户策略信息,所述用户策略信息包括:策略内容和第一语言格式的条件表达式;
所述条件表达式处理模块用于将所述第一语言格式的条件表达式转换成第二语言格式的条件表达式;
所述第一存储模块用于存储所述第二语言格式的条件表达式;
所述第二存储模块用于存储所述用户策略信息中的策略内容;
所述策略筛选模块用于根据所述第二语言格式的条件表达式和所述策略内容筛选出需要发送的策略内容。
进一步地,所述第一语言为普通自然描述语言,所述第二语言为支持实时动态生效的语言。
进一步地,所述策略筛选模块用于接收第一用户策略请求信息,根据所述第一用户策略请求信息在所述第二存储模块中查找是否存在对应的策略内容,若存在,则通过计算所述第一存储模块中对应的第二语言格式的表达式值从所述第二存储模块中筛选出需要发送的策略内容,若不存在,则生成第二用户策略请求信息。
进一步地,所述装置还包括:第一加载模块;所述第一存储模块包括第一主存储模块和第一备存储模块;
所述第一加载模块用于将第二语言格式的条件表达式加载至所述第一备存储模块,加载完成后对调第一主存储模块和第一备存储模块;
所述策略筛选模块用于通过计算所述第一主存储模块中对应的第二语言格式的表达式值从所述第二存储模块中筛选出返回的策略内容。
进一步地,所述装置还包括:第二加载模块;所述第二存储模块包括:第二主存储模块和第二备存储模块;
所述第二加载模块用于将所述用户策略信息中的策略内容加载到所述第二备存储模块,加载完成后对调第二主存储模块与第二备存储模块;
所述策略筛选模块用于根据所述第一用户策略请求信息在所述第二主存储模块中查找是否存在对应的策略内容,若存在,则通过计算所述第一主存储模块中对应的第二语言格式的表达式值从所述第二主存储模块中筛选出返回的策略内容。
同样为了解决上述的技术问题,本发明还提供了一种策略生成系统,包括:策略信息维护界面和上述的策略生成装置;
所述策略信息维护界面用于配置用户策略信息,所述用户策略信息至少包括:策略对应的条件表达式和策略内容,所述条件表达式为第一语言格式的条件表达式;
所述策略生成装置用于获取配置的用户策略信息。
进一步地,所述系统还包括:策略信息数据库和策略信息获取装置;所述策略信息数据库用于存储所述策略信息维护界面配置的用户策略信息;所述策略信息获取装置用于接收所述策略生成装置发送的第二用户策略请求信息,并根据所述第二用户策略请求信息在所述策略信息数据库中查询对应的用户策略信息,并返回给所述策略生成装置。
进一步地,所述系统还包括:策略信息数据库、策略信息获取装置和策略信息代理装置;所述策略信息数据库用于存储所述策略信息维护界面配置的用户策略信息;所述策略信息代理装置用于根据所述策略生成装置发送的第二用户策略请求信息查询本地保存的策略信息,如查询到对应的用户策略信息,则直接将该用户策略信息返回给所述策略生成装置,若查询不到对应的用户策略信息,则向所述策略信息获取模块发送策略请求信息;所述策略信息获取装置用于根据接收到的策略请求信息在所述策略信息数据库中查询对应的用户策略信息,并通过所述策略信息代理装置返回给所述策略生成装置;所述策略信息代理装置还用于保存所述策略获取装置返回的用户策略信息。
进一步地,所述策略信息维护界面还用于当重新配置用户策略信息时,主动通知所述策略信息获取装置获取重新配置的用户策略信息;所述策略信息获取装置还用于成功获取重新配置的用户策略信息后,主动将该用户策略信息通过所述策略信息代理装置发送给所述策略生成装置。
同样为了解决上述的技术问题,本发明还提供了一种策略生成装置的工作方法,包括以下步骤:
获取用户策略信息,所述用户策略信息包括:策略内容和第一语言格式的条件表达式;
将所述第一语言格式的条件表达式转换成第二语言格式的条件表达式;
根据所述第二语言格式的条件表达式和所诉策略内容筛选出需要发送的策略内容。
进一步地,所述根据所述第二语言格式的条件表达式和所诉策略内容筛选出需要发送的策略内容包括:
接收第一用户策略请求信息;
根据所述第一用户策略请求信息查找是否存在对应的策略内容,若存在,则通过计算对应的第二语言格式的表达式值筛选出需要发送的策略内容,若不存在,则生成第二用户策略请求信息。
进一步地,所述工作方法还包括:
将第二语言格式的条件表达式加载至第一备存储模块,加载完成后对调第一主存储模块和第一备存储模块;
所述计算对应的第二语言格式的表达式值筛选出需要发送的策略内容包括:
计算所述第一主存储模块中对应的第二语言格式的表达式值筛选出需要发送的策略内容。
进一步地,所述工作方法还包括:
将所述用户策略信息中的策略内容加载到所述第二备存储模块,加载完成后对调第二主存储模块与第二备存储模块;
所述根据所述第一用户策略请求信息查找是否存在对应的策略内容,若存在,则通过计算对应的第二语言格式的表达式值筛选出需要发送的策略内容包括:
根据所述第一用户策略请求信息在所述第二主存储模块中查找是否存在对应的策略内容,若存在,则通过计算所述第一主存储模块中对应的第二语言格式的表达式值筛选出需要发送的策略内容。
同样了为了解决上述的技术问题,本发明还提供了一种策略生成系统的工作方法,包括:
配置用户策略信息,所述用户策略信息至少包括:策略对应的条件表达式和策略内容,所述条件表达式为第一语言格式的条件表达式;
获取配置的用户策略信息,将所述第一语言格式的条件表达式转换成第二语言格式的条件表达式;
根据所述策略内容和第二语言格式的条件表达式得到需要发送的策略内容。
本发明的有益效果是:
本发明提供了提供一种策略生成装置及其工作方法、策略生成系统及其工作方法能够灵活配置,实时生效及简单快速生成策略内容。其中策略生成装置包括:获取模块、策略筛选模块、第一存储模块、条件表达式处理模块和第二存储模块;所述获取模块用于获取用户策略信息,所述用户策略信息包括:策略内容和第一语言格式的条件表达式;所述条件表达式处理模块用于将所述第一语言格式的条件表达式转换成第二语言格式的条件表达式;所述第一存储模块用于存储所述第二语言格式的条件表达式;所述第二存储模块用于存储所述用户策略信息中的策略内容;所述策略筛选模块用于根据所述第二语言格式的条件表达式和所诉策略内容筛选出需要发送的策略内容;该装置中的条件表达式处理模块可以将第一语言格式的条件表达式转换为第二语言格式的条件表达式;如在将普通描写语言形式的表达式转换为python语言的条件表达式,利用python的可嵌入和支持多线程以及实时加载的特点,进而实现条件表达式的动态、实时加载与生效,由于使用普通的自然描述语言书写条件表达式,可以使得条件表达式通俗易懂,便于维护人员修改和阅读;该装置能够简单、灵活配置实时生效及快速生成策略内容。
附图说明
图1为本发明实施例一策略生成装置的第一种结构示意图;
图2为本发明实施例一策略生成装置的第二种结构示意图;
图3为本发明实施例一策略生成装置的第三种结构示意图;
图4为本发明实施例二策略生成装置的结构示意图;
图5为本发明实施例三策略生成系统的第一种结构示意图;
图6为本发明实施例三策略生成系统的第二种结构示意图;
图7为本发明实施例三策略生成系统的第三种结构示意图;
图8为本发明实施例四策略生成装置的工作方法的流程图;
图9为本发明实施例五策略生成系统的工作方法的流程图;
图10为本发明实施例五中智能管道的构架的结构示意图;
图11为本发明实施例五中策略生成系统的结构示意图;
图12为本发明实施五中策略生成系统生成策略的方法流程图。
具体实施方式
下面通过具体实施方式结合附图对本发明作进一步详细说明。
实施例一:
如图1所示,本实施例的策略生成装置包括:获取模块、策略筛选模块、第一存储模块、条件表达式处理模块和第二存储模块;
所述获取模块用于获取用户策略信息,所述用户策略信息包括:策略内容和第一语言格式的条件表达式;
所述条件表达式处理模块用于将所述第一语言格式的条件表达式转换成第二语言格式的条件表达式;
所述第一存储模块用于存储所述第二语言格式的条件表达式;
所述第二存储模块用于存储所述用户策略信息中的策略内容;
所述策略筛选模块用于根据所述第二语言格式的条件表达式和所述策略内容筛选出需要发送的策略内容。
本实施例中第一语言格式的条件表达式是指用通俗易懂的普通描述语言编写的条件表达式;第二语言格式的条件表达式是指具有支持实时动态生效特点的语言编写的条件表达式;通俗易懂的语言可以为C语言等。
本实施例策略生成装置中的条件表达处理模块能够将第一语言格式的表达式转换成第二语言格式的条件表达式,充分利用第二语言的特点实现条件表达式的动态、实时加载与生效。例如:当生成装置中获取模块获取到用户策略信息后,用户策略信息包括:策略内容和采用普通易懂的自然描述语言书写条件表达式,本实施例的条件表达处理模块可以利用lex与yacc把用户策略信息中的条件表达式翻译成python条件表达式作为词法分析器与语义解析器将普通自然描述语言形式的表达式转换为python语言的条件表达式;然后策略筛选模块根据python语言的条件表达式和策略内容筛选出需要发送的策略内容。由于python的可嵌入和支持多线程以及实时加载的特点,所以在策略筛选过程中使用的python语言的条件表达式可以实现条件表达式的动态、实时加载与生效。同时本实施例策略生成装置可以获取简单普通语言描述的条件表达式,提高了生成装置的兼容性,降低对工作人员专业水平的要求,使用普通描述语言就能快速实时地生成策略内容。
本实施例中筛选模块筛选出需要发送的策略内容的过程包括:
策略筛选模块接收第一用户策略请求信息,根据所述第一用户策略请求信息在所述第二存储模块中查找是否存在对应的策略内容,若存在,则通过计算所述第一存储模块中对应的第二语言格式的表达式值从所述第二存储模块中筛选出需要发送的策略内容,若不存在,则生成第二用户策略请求信息。
如在SPCF系统中策略生成装置中的策略筛选模块可以根据策略内容递交模块提供的用户策略请求信息中的用户信息,遍历策略内容内存中该用户的相关信息,若存在,则执行python内存中对应的python脚本,确定需要把哪些策略内容返回给策略内容递交模块;若不存在,则根据请求消息中携带的用户属性向策略信息代理模块请求该用户相关策略。
如图2所示,本实施例的策略生成装置还包括;第一加载模块;所述第一存储模块包括第一主存储模块和第一备存储模块;
所述第一加载模块用于将第二语言格式的条件表达式加载至所述第一备存储模块,加载完成后对调第一主存储模块和第一备存储模块;
所述策略筛选模块用于通过计算所述第一主存储模块中对应的第二语言格式的表达式值从所述第二存储模块中筛选出返回的策略内容。
通过上述设置使得每次加载新的策略信息时,把新转换的第二语言格式的条件表达式存储在第一备存储模块中,等加载完成再实现第一主备存储模块对调,保证了对了策略请求响应的连续性、及时性和准确。
同理如图3所示,本实施例的策略生成装置还包括:第二加载模块;所述第二存储模块包括:第二主存储模块和第二备存储模块;
所述第二加载模块用于将所述用户策略信息中的策略内容加载到所述第二备存储模块,加载完成后对调第二主存储模块与第二备存储模块;
所述策略筛选模块用于根据所述第一用户策略请求信息在所述第二主存储模块中查找是否存在对应的策略内容,若存在,则通过计算所述第一主存储模块中对应的第二语言格式的表达式值从所述第二主存储模块中筛选出返回的策略内容。
通过上述设备使得每次加载新的策略内容时,把新的策略内容存储到第二存储模块中,等加载完成后再实现第二备存储模块对调,保证了对了策略请求响应的连续性、及时性和准确。
本实施例的策略生成模块能够将普通的自然描述语言形式的条件表达式转换成采用具有可嵌入和支持多线程以及实时加载特点的语言描述的条件表达式,实现对策略请求进行准确而快速的响应;
和由于普通易懂的自然描述语言只支持精确匹配,不能支持模糊匹配和部分匹配,也不能支持条件表达式动态生效;实现条件表达式的动态、实时加载与生效。
实施例二:
本实施例以在SPCF网络中将普通描述语言的条件表达式转换为python语言表示的条件表达式为例来说明本发明的策略生成装置的具体结构。
如图4所示,本实施例的策略生成装置包括:条件表达式预处理模块、Python脚本加载模块、Python主备内存、策略内容加载模块、策略内容主备内存和策略筛选模块;
条件表达式预处理模块,分别使用lex与yacc作为词法分析器与语义解析器,把策略维护界面配置的简易的策略条件表达式内容翻译成python语言表示的条件表达式;
Python脚本加载模块,通过调用python API把预处理后的python条件表达式加载到Python备内存中,加载完成后实现Python主备内存倒换;
Python主备内存,设于内存中,用于存储python条件表达式信息;
策略内容加载模块,把策略代理模块递交的用户策略内容,以用户号码为主键保存到内存中,分为主备内存库。每次策略内容筛选模块筛选策略时使用主内存,每次策略内容加载模块加载策略时使用备内存,且在加载成功后主备倒换;
策略内容内存,用于存储加载到内存中的策略内容信息,分为主备内存库。每次策略内容筛选模块筛选策略时使用主内存,每次策略内容加载模块加载策略时使用备内存,且在加载成功后主备倒换;
策略筛选模块,根据策略内容递交模块提供的用户信息,遍历策略内容内存中该用户的相关信息,执行python主内存中对应的python脚本,确定需要把哪些策略内容返回给策略内容递交模块。
本实施例中的策略生成装置使用lex与yacc把普通自然描述语言形式的条件表达式转换成python语言的条件表达式,可以充分利用python的可嵌入和支持多线程以及实时加载的特点,进而实现条件表达式的动态、实时加载与生效。由于使用普通的自然描述语言书写条件表达式,可以使得条件表达式通俗易懂,便于维护人员修改和阅读。
本实施例的策略生成装置使用主备python条件表达式内存库以及用户策略内容内存库,使得每次加载新的策略信息时,把新到来的策略信息加载到相应备库中,等加载完毕再实现主备内存库倒换,这样就保证了对SPEF策略请求响应的连续性、及时性和准确性。
实施例三:
如图5所示,本实施例提供了一种策略生成系统,包括:策略信息维护界面和如实施例一所述的策略生成装置;
所述策略信息维护界面用于配置用户策略信息,所述用户策略信息至少包括:策略对应的条件表达式和策略内容,所述条件表达式为第一语言格式的条件表达式;
所述策略生成装置用于获取配置的用户策略信息。
本实施例的策略信息维护界面可以使用简易的第一语言来书写条件表达式,可以使得条件表达式通俗易懂,便于维护人员修改和阅读。
如图6所示,本实施例的策略生成系统还包括:策略信息数据库和策略信息获取装置;所述策略信息数据库用于存储所述策略信息维护界面配置的用户策略信息;所述策略信息获取装置用于接收所述策略生成装置发送的第二用户策略请求信息,并根据所述第二用户策略请求信息在所述策略信息数据库中查询对应的用户策略信息,并返回给所述策略生成装置。
图6中策略生成装置接收第一用户策略请求信息时先查询策略信息内存库中是否存在该用户相关策略,若存在,则通过计算策略条件表达式值来筛选策略内容,并把筛选结果返回给策略内容递交模块。若不存在,则根据消息中携带的用户属性生成第二用户策略请求信息;策略信息获取装置用据所述第二用户策略请求信息在所述策略信息数据库中查询对应的用户策略信息,并返回给所述策略生成装置;策略生成装置将返回的用户策略信息中的第一语言格式的条件表达式转换成第二语言格式的条件表达式,将用户策略信息中的策略内容存入内存;然后根据第二语言格式的条件表达式和策略内容筛选出需要生成的策略内容。
本实施例的策略生成系统还可以有另一中结构,如图7所示,本实施例的策略生成系统还包括:策略信息数据库、策略信息获取装置和策略信息代理装置;所述策略信息数据库用于存储所述策略信息维护界面配置的用户策略信息;所述策略信息代理装置用于根据所述策略生成装置发送的第二用户策略请求信息查询本地保存的策略信息,如查询到对应的用户策略信息,则直接将该用户策略信息返回给所述策略生成装置,若查询不到对应的用户策略信息,则向所述策略信息获取模块发送策略请求信息;所述策略信息获取装置用于根据接收到的策略请求信息在所述策略信息数据库中查询对应的用户策略信息,并通过所述策略信息代理装置返回给所述策略生成装置;所述策略信息代理装置还用于保存所述策略获取装置返回的用户策略信息。
下面详细说明在SFCF网络中利用如图7所示的策略生成系统生成策略内容的过程:
在策略信息维护界面配置用户相关策略信息,该相关策略信息包括策略对应的条件表达式、策略内容,策略的优先级以及对应的用户信息等,所述条件表达式为一般性普通语言描述;
策略生成装置收到的策略请求消息时,首先查询策略信息内存库中是否存在该用户相关策略,若存在,则通过计算策略条件表达式值来筛选策略内容,并返回筛选结果;若不存在,则根据消息中携带的用户属性向策略信息代理模块请求该用户相关策略;
策略信息代理装置收到策略生成装置的用户策略信息请求时,首先查询本地用户策略存储区是否存在该用户相关策略,若存在,直接把用户策略信息返回给策略生成装置。若找不存在,则根据消息中携带的用户属性向策略信息获取装置请求该用户策略信息;
策略信息获取装置收到策略信息代理模块的用户策略信息请求时,向策略信息数据库检索该用户的策略信息,并把检索到的用户策略信息返回给策略代理模块;
当策略代理模块收到策略获取模块的用户策略信息响应时,把用户策略信息保存到本地存储区并把用户策略信息返回给策略生成装置;
当策略生成装置收到策略信息代理装置的用户策略信息时,首先,利用lex与yacc把用户策略信息中的条件表达式翻译成python条件表达式,然后把python条件表达式加载到python备用内存中。其次,把用户策略信息中的策略内容加载到策略内容备用内存中。然后,待上面两种库都加载成功后,分别实现两种库的主备倒换。最后,通过计算python条件表达式值对策略内容进行筛选,并返回筛选结果。
本实施例的策略生成系统中所述策略信息维护界面还用于当重新配置用户策略信息时,主动通知所述策略信息获取装置获取重新配置的用户策略信息;所述策略信息获取装置还用于成功获取重新配置的用户策略信息后,主动将该用户策略信息通过所述策略信息代理装置发送给所述策略生成装置。即在用户的策略信息有变更时,通过策略配置界面重新配置用户相关策略信息,然后通知策略获取装置重新获取策略内容,获取成功后主动发给策略信息代理装置,策略信息代理装置再接着主动发给策略内容生成装置,策略内容生成模块收到新策略后,将其策略条件表达式以及策略内容分别加载到各自备份内存库中。
使用本实施例的策略生成系统可以在SPCF等网络设备处,对来至SPEF的策略请求进行准确而快速的响应;由于使用普通的自然描述语言书写条件表达式,可以使得条件表达式通俗易懂,便于维护人员修改和阅读;又由于使用lex与yacc把普通自然描述语言形式的条件表达式转换成python语言的条件表达式,可以充分利用python的可嵌入和支持多线程以及实时加载的特点,进而实现条件表达式的动态、实时加载与生效。在策略内容生成装置与策略信息获取装置加入一个策略信息代理装置,减少了策略获取装置与策略信息数据库的交互次数,减少了策略生成装置生成策略的时间,进而缩短了SPCF系统对SPEF系统策略请求的响应时间。
实施四:
如图8所述,本实施例提供了一种策略生成装置的工作方法,包括:
步骤101:获取用户策略信息,所述用户策略信息包括:策略内容和第一语言格式的条件表达式;
步骤102:将所述第一语言格式的条件表达式转换成第二语言格式的条件表达式;
步骤103:根据所述第二语言格式的条件表达式和所诉策略内容筛选出需要发送的策略内容。
上述步骤103中根据所述第二语言格式的条件表达式和所诉策略内容筛选出需要发送的策略内容包括:
接收第一用户策略请求信息;
根据所述第一用户策略请求信息查找是否存在对应的策略内容,若存在,则通过计算对应的第二语言格式的表达式值筛选出需要发送的策略内容,若不存在,则生成第二用户策略请求信息。
本是实施例策略生成装置的工作方法,还包括:
将第二语言格式的条件表达式加载至第一备存储模块,加载完成后对调第一主存储模块和第一备存储模块;
所述计算对应的第二语言格式的表达式值筛选出需要发送的策略内容包括:
计算所述第一主存储模块中对应的第二语言格式的表达式值筛选出需要发送的策略内容。
本是实施例策略生成装置的工作方法,还包括:
将所述用户策略信息中的策略内容加载到所述第二备存储模块,加载完成后对调第二主存储模块与第二备存储模块;
所述根据所述第一用户策略请求信息查找是否存在对应的策略内容,若存在,则通过计算对应的第二语言格式的表达式值筛选出需要发送的策略内容包括:
根据所述第一用户策略请求信息在所述第二主存储模块中查找是否存在对应的策略内容,若存在,则通过计算所述第一主存储模块中对应的第二语言格式的表达式值筛选出需要发送的策略内容。
实施例五:
如图9所示,本实施例提供了一种策略生成系统的工作方法包括:
步骤201:配置用户策略信息,所述用户策略信息至少包括:策略对应的条件表达式和策略内容,所述条件表达式为第一语言格式的条件表达式;
步骤202:获取配置的用户策略信息,将所述第一语言格式的条件表达式转换成第二语言格式的条件表达式;
步骤203:根据所述策略内容和第二语言格式的条件表达式得到需要发送的策略内容。
下面以在SPCF网络中生成策略内容为例来说明本实施例的策略生成系统的工作方法;
如图10所示,为本实施例智能管道架构的结构图,包括:
VAC(Value-added service Authentication Center,增值业务鉴权中心)向SPCF下发用户订购信息等。
SPCF(Service Policy Control Function,业务策略控制系统)接受SPEF的策略请求并把得到的策略信息返回给SPEF。
SPEF(Service Policy Enforcement Function,业务策略执行平台)向SPCF请求策略,并执行从SPCF得到的策略。
GGSN(Gateway GPRS Support Node,网关GPRS支持节点)主要是起网关作用。
Internet,因特网服务,为SPEF提供因特网服务。
AE,内容植入等,为SPEF提供内容植入等功能。
如图11所示,本实施例中SPCF策略生成系统包括:
策略信息维护界面,用于配置策略的条件表达式信息,策略对应的用户信息,策略的内容信息等。
策略信息数据库,用于保存策略信息维护界面配置的策略信息。并对策略获取模块的策略信息检索做出反应。
策略信息获取装置,接受来至策略信息代理装置的策略请求,向策略信息数据库获取策略信息并返回给策略代理模块。
策略信息代理装置,接受来至策略生成装置的策略请求,然后查询本地保存策略信息,如果查询到策略信息,则直接返回给策略生成装置,如果查询不到则先向策略信息获取装置请求策略信息,得到信息后把信息返回给策略生成装置并保存到本地策略存储区。
策略生成装置,接受来至策略内容递交模块的策略请求消息,并根据本地保存的用户策略信息以及用户策略条件表达式信息,生成用户策略内容,并发送给策略内容递交模块。
策略内容递交装置,接收来至SPEF的策略请求消息并转发给策略生成模块,接收来至策略生成模块的策略内容,并发送给SPEF。
如图12所示,是本发明策略生成系统生成策略的方法流程图。具体包括以下步骤:
步骤S001:加载python环境到内存中。如有需要,把多线程环境也一起加载。
步骤S002:策略请求到达。
步骤S003:查找策略,如果找到用户策略执行步骤S008,否则,执行步骤S004。
步骤S004:向策略信息代理装置请求用户策略信息。
步骤S005:对策略信息代理装置返回的策略信息中的条件表达式进行预处理,转换成python条件表达式。
步骤S006:把python条件表达式加载到内存中。
步骤S007:把策略信息代理装置返回的策略信息中的策略内容加载到内存中。
步骤S008:根据用户相关的python条件表达式的计算结果对用户策略内容进行筛选,如果筛选成功,则执行步骤S009,否则,执行步骤S010。
步骤S009:根据策略内容筛选结果组装要返回的策略内容,如果组装成功,则执行步骤S011,否则执行步骤S010。
步骤S010:向请求者返回处理失败响应。
步骤S011:把得到策略内容返回给策略请求者。
使用本发明策略生成系统的工作方法可以在SPCF等网络设备处,对来至SPEF的策略请求进行准确而快速的响应。
由于使用普通的自然描述语言书写条件表达式,可以使得条件表达式通俗易懂,便于维护人员修改和阅读。
又由于使用lex与yacc把普通自然描述语言形式的条件表达式转换成python语言的条件表达式,可以充分利用python的可嵌入和支持多线程以及实时加载的特点,进而实现条件表达式的动态、实时加载与生效。
另外,由于使用主备python条件表达式内存库以及用户策略内容内存库,使得每次加载新的策略信息时,把新到来的策略信息加载到相应备库中,等加载完毕再实现主备内存库倒换,这样就保证了对SPEF策略请求响应的连续性、及时性和准确性。
最后,由于在策略内容生成模块与策略信息获取模块加入一个策略信息代理模块,减少了策略获取模块与策略信息数据库的交互次数,减少了策略生成模块生成策略的时间,进而缩短了SPCF系统对SPEF系统策略请求的响应时间。
以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (13)
1.一种策略生成装置,其特征在于,包括:获取模块、策略筛选模块、第一存储模块、条件表达式处理模块和第二存储模块;
所述获取模块用于获取用户策略信息,所述用户策略信息包括:策略内容和第一语言格式的条件表达式;
所述条件表达式处理模块用于将所述第一语言格式的条件表达式转换成第二语言格式的条件表达式;
所述第一存储模块用于存储所述第二语言格式的条件表达式;
所述第二存储模块用于存储所述用户策略信息中的策略内容;
所述策略筛选模块用于根据所述第二语言格式的条件表达式和所述策略内容筛选出需要发送的策略内容;
所述第一语言为普通自然描述语言,所述第二语言为支持实时动态生效的语言。
2.如权利要求1所述的策略生成装置,其特征在于,所述策略筛选模块用于接收第一用户策略请求信息,根据所述第一用户策略请求信息在所述第二存储模块中查找是否存在对应的策略内容,若存在,则通过计算所述第一存储模块中对应的第二语言格式的表达式值从所述第二存储模块中筛选出需要发送的策略内容,若不存在,则生成第二用户策略请求信息。
3.如权利要求2所述的策略生成装置,其特征在于,还包括:第一加载模块;所述第一存储模块包括第一主存储模块和第一备存储模块;
所述第一加载模块用于将第二语言格式的条件表达式加载至所述第一备存储模块,加载完成后对调第一主存储模块和第一备存储模块;
所述策略筛选模块用于通过计算所述第一主存储模块中对应的第二语言格式的表达式值从所述第二存储模块中筛选出返回的策略内容。
4.如权利要求3所述的策略生成装置,其特征在于,还包括:第二加载模块;所述第二存储模块包括:第二主存储模块和第二备存储模块;
所述第二加载模块用于将所述用户策略信息中的策略内容加载到所述第二备存储模块,加载完成后对调第二主存储模块与第二备存储模块;
所述策略筛选模块用于根据所述第一用户策略请求信息在所述第二主存储模块中查找是否存在对应的策略内容,若存在,则通过计算所述第一主存储模块中对应的第二语言格式的表达式值从所述第二主存储模块中筛选出返回的策略内容。
5.一种策略生成系统,其特征在于,包括:策略信息维护界面和如权利要求1-4任一项所述的策略生成装置;
所述策略信息维护界面用于配置用户策略信息,所述用户策略信息至少包括:策略对应的条件表达式和策略内容,所述条件表达式为第一语言格式的条件表达式;
所述策略生成装置用于获取配置的用户策略信息。
6.如权利要求5所述的策略生成系统,其特征在于,还包括:策略信息数据库和策略信息获取装置;所述策略信息数据库用于存储所述策略信息维护界面配置的用户策略信息;所述策略信息获取装置用于接收所述策略生成装置发送的第二用户策略请求信息,并根据所述第二用户策略请求信息在所述策略信息数据库中查询对应的用户策略信息,并返回给所述策略生成装置。
7.如权利要求5所述的策略生成系统,其特征在于,还包括:策略信息数据库、策略信息获取装置和策略信息代理装置;所述策略信息数据库用于存储所述策略信息维护界面配置的用户策略信息;所述策略信息代理装置用于根据所述策略生成装置发送的第二用户策略请求信息查询本地保存的策略信息,如查询到对应的用户策略信息,则直接将该用户策略信息返回给所述策略生成装置,若查询不到对应的用户策略信息,则向所述策略信息获取模块发送策略请求信息;所述策略信息获取装置用于根据接收到的策略请求信息在所述策略信息数据库中查询对应的用户策略信息,并通过所述策略信息代理装置返回给所述策略生成装置;所述策略信息代理装置还用于保存所述策略获取装置返回的用户策略信息。
8.如权利要求7所述的策略生成系统,其特征在于,所述策略信息维护界面还用于当重新配置用户策略信息时,主动通知所述策略信息获取装置获取重新配置的用户策略信息;所述策略信息获取装置还用于成功获取重新配置的用户策略信息后,主动将该用户策略信息通过所述策略信息代理装置发送给所述策略生成装置。
9.一种策略生成装置的工作方法,其特征在于,包括以下步骤:
获取用户策略信息,所述用户策略信息包括:策略内容和第一语言格式的条件表达式;
将所述第一语言格式的条件表达式转换成第二语言格式的条件表达式;
根据所述第二语言格式的条件表达式和所诉策略内容筛选出需要发送的策略内容;
所述第一语言为普通自然描述语言,所述第二语言为支持实时动态生效的语言。
10.如权利要求9所述的策略生成装置的工作方法,其特征在于,所述根据所述第二语言格式的条件表达式和所诉策略内容筛选出需要发送的策略内容包括:
接收第一用户策略请求信息;
根据所述第一用户策略请求信息查找是否存在对应的策略内容,若存在,则通过计算对应的第二语言格式的表达式值筛选出需要发送的策略内容,若不存在,则生成第二用户策略请求信息。
11.如权利要求10所述的策略生成装置的工作方法,其特征在于,还包括:
将第二语言格式的条件表达式加载至第一备存储模块,加载完成后对调第一主存储模块和第一备存储模块;
所述计算对应的第二语言格式的表达式值筛选出需要发送的策略内容包括:
计算所述第一主存储模块中对应的第二语言格式的表达式值筛选出需要发送的策略内容。
12.如权利要求11所述的策略生成装置的工作方法,其特征在于,还包括:
将所述用户策略信息中的策略内容加载到第二备存储模块,加载完成后对调第二主存储模块与第二备存储模块;
所述根据所述第一用户策略请求信息查找是否存在对应的策略内容,若存在,则通过计算对应的第二语言格式的表达式值筛选出需要发送的策略内容包括:
根据所述第一用户策略请求信息在所述第二主存储模块中查找是否存在对应的策略内容,若存在,则通过计算所述第一主存储模块中对应的第二语言格式的表达式值筛选出需要发送的策略内容。
13.一种策略生成系统的工作方法,其特征在于,包括以下步骤:
配置用户策略信息,所述用户策略信息至少包括:策略对应的条件表达式和策略内容,所述条件表达式为第一语言格式的条件表达式;
获取配置的用户策略信息,将所述第一语言格式的条件表达式转换成第二语言格式的条件表达式;
根据所述策略内容和第二语言格式的条件表达式得到需要发送的策略内容;
所述第一语言为普通自然描述语言,所述第二语言为支持实时动态生效的语言。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310029846.3A CN103974220B (zh) | 2013-01-25 | 2013-01-25 | 策略生成装置及其工作方法、策略生成系统及其工作方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310029846.3A CN103974220B (zh) | 2013-01-25 | 2013-01-25 | 策略生成装置及其工作方法、策略生成系统及其工作方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103974220A CN103974220A (zh) | 2014-08-06 |
CN103974220B true CN103974220B (zh) | 2018-02-09 |
Family
ID=51243165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310029846.3A Expired - Fee Related CN103974220B (zh) | 2013-01-25 | 2013-01-25 | 策略生成装置及其工作方法、策略生成系统及其工作方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103974220B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111813324B (zh) * | 2019-04-11 | 2024-03-12 | 北京鲸鲨软件科技有限公司 | 一种存储方法及其装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001195405A (ja) * | 1999-12-16 | 2001-07-19 | Xerox Corp | パックした表現の効率的な書き換えのためのコンピュータ実行方法及びコンピュータシステム |
CN1829160A (zh) * | 2005-03-01 | 2006-09-06 | 联想(北京)有限公司 | 一种混合策略加载系统及实现策略管理的方法 |
CN101000615A (zh) * | 2006-12-31 | 2007-07-18 | 华为技术有限公司 | 一种基于数据库的业务处理方法及装置 |
CN101957978A (zh) * | 2009-07-17 | 2011-01-26 | 北大方正集团有限公司 | 一种计费系统 |
-
2013
- 2013-01-25 CN CN201310029846.3A patent/CN103974220B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001195405A (ja) * | 1999-12-16 | 2001-07-19 | Xerox Corp | パックした表現の効率的な書き換えのためのコンピュータ実行方法及びコンピュータシステム |
CN1829160A (zh) * | 2005-03-01 | 2006-09-06 | 联想(北京)有限公司 | 一种混合策略加载系统及实现策略管理的方法 |
CN101000615A (zh) * | 2006-12-31 | 2007-07-18 | 华为技术有限公司 | 一种基于数据库的业务处理方法及装置 |
CN101957978A (zh) * | 2009-07-17 | 2011-01-26 | 北大方正集团有限公司 | 一种计费系统 |
Non-Patent Citations (1)
Title |
---|
移动数据增值业务新架构——SPCF&SPEF技术方案研究;范荣辉; 朱旭明; 赵以爽;《邮电设计技术》;20120820;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN103974220A (zh) | 2014-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107767265A (zh) | 一种数据共享方法及服务器 | |
CN105074702B (zh) | 提供单租户和多租户环境的数据库系统 | |
CN105338026B (zh) | 数据资源的获取方法、装置和系统 | |
CN110321413A (zh) | 会话框架 | |
US8356274B2 (en) | System and methods to create a multi-tenancy software as a service application | |
CN110290189A (zh) | 一种容器集群管理方法、装置及系统 | |
CN108510389A (zh) | 基于区块链的智能合约调用方法、设备及可读存储介质 | |
CN109995713A (zh) | 一种微服务框架中的服务处理方法及相关设备 | |
CN107222645B (zh) | 一种工作流接入的实现方法和系统 | |
CN106649630A (zh) | 数据查询方法及装置 | |
CN108616578A (zh) | 跨区块链平台的业务处理方法、设备及计算机可读存储介质 | |
CN108683818A (zh) | 呼叫中心分配坐席的方法、系统、设备及存储介质 | |
US20050228855A1 (en) | Acquisition system for distributed computing resources | |
CN107864193A (zh) | 业务处理方法、装置、系统及服务设备 | |
CN106780027A (zh) | 一种数据处理系统和方法 | |
CN106462471A (zh) | 将私有计算资源机会性地连接到外部服务 | |
CN103647886A (zh) | 异构聚合通信网中用于简档管理和接入控制的方法和系统 | |
CN105306472B (zh) | 座席匹配装置及方法 | |
WO2014099906A1 (en) | Exchange of server status and client information through headers for request management and load balancing | |
CN109783227A (zh) | 任务分配方法、装置、系统及计算机可读存储介质 | |
CN109194495A (zh) | 服务器、报文处理方法和计算机可读存储介质 | |
US20190318412A1 (en) | Methods and machine-learning systems that provide a personalized concierge service | |
CN108494582A (zh) | 一种低耦合自动化运维系统及方法 | |
CN108762949A (zh) | 集中调度方法、系统、计算机设备和存储介质 | |
CN109582452A (zh) | 一种容器调度方法、调度装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180209 Termination date: 20190125 |