首页 / 专利库 / 专利权 / 费用的减少 / 利用RADIUS协议对用户可用资源进行限制的方法

利用RADIUS协议对用户可用资源进行限制的方法

阅读:904发布:2020-05-14

专利汇可以提供利用RADIUS协议对用户可用资源进行限制的方法专利检索,专利查询,专利分析的服务。并且本 发明 涉及通信领域,公开了一种利用RADIUS协议对用户可用资源进行限制的方法,包括以下步骤:A:RADIUS 服务器 接收到用户账户的上线 请求 ;B:设置RADIUS服务器从 数据库 查询该账户的账户余额为Cbalance;C:设置初始最大通话时长Tinit,计算此时 费用 C=f(Tinit);D:账户余额Cbalance大于或等于费用C时则返回最大时长Tinit;否则继续;E:设置临时变量T,Tmax=Tinit,Tmin=0;F:设置T=(Tmax+ Tmin)/2,获取此时费用C=f(T);H:比较费用C与账户余额Cbalance,相等时则RADIUS服务器返回时长T,此时流程结束;本发明降低了设备的处理复杂度,也减少了网络间报文的交互次数,提高了处理效率。,下面是利用RADIUS协议对用户可用资源进行限制的方法专利的具体信息内容。

1.一种利用RADIUS协议对用户可用资源进行限制的方法,其特征在于,包括以下步骤:
A:RADIUS服务器接收到用户账户的上线请求
B:设置RADIUS服务器从数据库查询该账户的账户余额为Cbalance;
C:设置初始最大通话时长Tinit,计算此时费用C=f(Tinit);
D:账户余额Cbalance大于或等于费用C时则返回最大时长Tinit;否则继续;
E:设置临时变量T,Tmax=Tinit,Tmin=0;
F:设置T=(Tmax+ Tmin)/2,获取此时费用C=f(T);
H:比较费用C与账户余额Cbalance,相等时则RADIUS服务器返回时长T,此时流程结束;当费用C小于账户余额Cbalance时,取Tmin=T+1,Tmax不变;当费用C大于账户余额Cbalance时,去Tmax=T-1,Tmin不变;
I:重复步骤6)和7),直至费用C与账户余额Cbalance相等。

说明书全文

利用RADIUS协议对用户可用资源进行限制的方法

[0001]

技术领域

[0002] 本发明涉及通信领域,尤其涉及了一种利用RADIUS协议对用户可用资源进行限制的方法。
[0003]

背景技术

[0004] 目前,在一些需要对用户可用资源进行限制的应用中,例如非包月类型用户的上网、语音通话等,需要在用户开始使用该业务时,就能够分配用户所能使用的资源数。对于一些简单的没有任何优惠的业务,计算相对简单,用用户的账户余额除以单位资源的费用,即可得到用户的可使用资源数。但是,对于稍微复杂一些的应用,这种方法是无法准确获得可用资源数的,例如某些特殊时间段的优惠,达到一定使用总量后获得的优惠等。目前常用的解决方法是:控制用户上线的设备每次从radius服务器获取到的可用资源段是仅是到本时间段(或总量优惠段)结束的资源,等用完之前需要设备再次去获取下一时间段(或总量优惠段)的可用资源。这种处理方式在同一次使用中,设备需要和radius服务器进行多次报文交互,且在下一个时间段结束之前就要做一些处理:例如启动定时器来触发下一次请求等。导致控制流程变得复杂,而且影响了处理效率。
[0005]

发明内容

[0006] 本发明针对现有技术中传统网络设备向RADIUS服务器获取可用资源数时存在处理流程复杂、报文交互次数多的缺点,提供了一种利用RADIUS协议对用户可用资源进行限制的方法。
[0007] 为了解决上述技术问题,本发明通过下述技术方案得以解决:一种利用RADIUS协议对用户可用资源进行限制的方法,包括以下步骤:
A:RADIUS服务器接收到用户账户的上线请求;
B:设置RADIUS服务器从数据库查询该账户的账户余额为Cbalance;
C:设置初始最大通话时长Tinit,计算此时费用C=f(Tinit);
D:账户余额Cbalance大于或等于费用C时则返回最大时长Tinit;否则继续;
E:设置临时变量T,Tmax=Tinit,Tmin=0;
F:设置T=(Tmax+ Tmin)/2,获取此时费用C=f(T);
H:比较费用C与账户余额Cbalance,相等时则RADIUS服务器返回时长T,此时流程结束;当费用C小于账户余额Cbalance时,取Tmin=T+1,Tmax不变;当费用C大于账户余额Cbalance时,去Tmax=T-1,Tmin不变;
I:重复步骤6)和7),直至费用C与账户余额Cbalance相等。
[0008] 当RADIUS服务器收到某个用户账户的上线请求时,从数据库获取该账户的余额Cbalance,在设置初始最大通话时长Tinit,最大返回时长Tmax=Tinit,计算此时费用C=f(Tmax)(注:f(X)为计算费用的函数),当费用C大于或等于账户的余额Cbalance时,直接返回通话时长为Tmax。否则设置最小时长Tmin=0,设定通话时长T=(Tmax+Tmin)/2,计算费用C=f(T),当C大于账户余额Cbalance时,设定通话时长T=(Tmax+T+1)/2,计算费用C=f(T);当C小于账户余额Cbalance时,设定通话时长T=(Tmin+T-1)/2,计算费用C=f(T)。重复该过程,直至费用C等于账户余额Cbalance,则返回此时时长T。
[0009] 本发明由于采用了以上技术方案,具有显著的技术效果:本发明设定一个radius服务器返回的初始通话时长Tinit(该时长单位即计费最小单位),最大返回时长Tmax=Tinit,最小返回时长Tmin=0,当账户余额Cbalance大于该最大时长的费用Cmax时,直接返回该最大时长Tmax,否则计算从当前时间开始通话时长T=(Tmax+Tmin)/2,计算该时长的费用C,当费用C大于账户余额Cbalance时,通话时长T=(Tmax+T+1)/2;当费用C小于账户余额Cbalance时,通话时长T=(Tmin+T-1)/2。重复该过程,直至费用C等于账户余额Cbalance时,radius服务器返回当前通话时长T。这样,降低了设备的处理复杂度,也减少了网络间报文的交互次数,提高了处理效率。
[0010]附图说明
[0011] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0012] 图1是本发明的网络示意图;图2是本发明的控制可用资源数方法的流程图
[0013]

具体实施方式

[0014] 下面结合实施例对本发明做进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。
[0015] 实施例1:如图1所示,将设备和RADIUS服务器运行在IP网络中,与RADIUS服务器进行配合工作。
[0016] 一种利用RADIUS协议对用户可用资源进行限制的方法,如图2所示,包括以下流程:A:RADIUS服务器接收到用户账户的上线请求;
B:设置RADIUS服务器从数据库查询该账户的账户余额为Cbalance;
C:设置初始最大通话时长Tinit,计算此时费用C=f(Tinit);
D:账户余额Cbalance大于或等于费用C时则返回最大时长Tinit;否则继续;
E:设置临时变量T,Tmax=Tinit,Tmin=0;
F:设置T=(Tmax+ Tmin)/2,获取此时费用C=f(T);
H:比较费用C与账户余额Cbalance,相等时则RADIUS服务器返回时长T,此时流程结束;当费用C小于账户余额Cbalance时,取Tmin=T+1,Tmax不变;当费用C大于账户余额Cbalance时,去Tmax=T-1,Tmin不变;
I:重复步骤6)和7),直至费用C与账户余额Cbalance相等。
[0017] 根据实施例1做以下示例:(1)设一个应用系统正常通话费用是每分钟1元钱,每晚9点到次日9点半价,通话时长的最小单位为分钟,计费的最小单位为1分钱,设定的初始通话最大时长为24小时;
(2)radius服务器收到设备发来的某用户的上线请求;
(3)查询该用户的账户余额Cbalance为9.5元钱,当前时间为晚上8点57分;
(4)24小时的费用C=60*12*1+60*12*0.5=1080元,大于9.5元;
(5)设置临时变量T,Tmax=24*60=1440,Tmin=0;
(6)设置T=(1440+ 0)/2=720,获取此时费用C=3*1+(720-3)*0.5=361.5元,大于
9.5元;
(7)设置临时变量T,Tmax=T-1=719,Tmin=0;
(8)设置T=(719+ 0)/2=359,获取此时费用C=3*1+(359-3)*0.5=181元,大于9.5元;
(9)设置临时变量T,Tmax=359-1=358,Tmin=0;
(10)设置T=(359+ 0)/2=179,获取此时费用C=3*1+(179-3)*0.5=91元,大于9.5元;
(11)设置临时变量T,Tmax=179-1=178,Tmin=0;
(12)设置T=(178+ 0)/2=89,获取此时费用C=3*1+(86-3)*0.5=44.5元,大于9.5元;
(13)设置临时变量T,Tmax=89-1=88,Tmin=0;
(14)设置T=(88+ 0)/2=44,获取此时费用C=3*1+(44-3)*0.5=23.5元,大于9.5元;
(15)设置临时变量T,Tmax=44-1=43,Tmin=0;
(16)设置T=(43+ 0)/2=21,获取此时费用C=3*1+(21-3)*0.5=12元,大于9.5元;
(17)设置临时变量T,Tmax=21-1=20,Tmin=0;
(18)设置T=(20+ 0)/2=10,获取此时费用C=3*1+(10-3)*0.5=6.5元,小于9.5元;
(19)设置临时变量T,Tmax=20,Tmin=10+1=11;
(20)设置T=(20+ 11)/2=15,获取此时费用C=3*1+(15-3)*0.5=9元,小于9.5元;
(21)设置临时变量T,Tmax=20,Tmin=15+1=16;
(22)设置T=(20+ 16)/2=18,获取此时费用C=3*1+(18-3)*0.5=10.5元,大于9.5元;
(22)设置临时变量T,Tmax=18-1=17,Tmin=16;
(23)设置T=(17+ 16)/2=16,获取此时费用C=3*1+(16-3)*0.5=9.5元,等于9.5元;
(24)radius服务器返回当前可用时长为16分钟。
[0018] 此外,需要说明的是,本说明书中所描述的具体实施例,其零、部件的形状、所取名称等可以不同。凡依本发明专利构思所述的构造、特征及原理所做的等效或简单变化,均包括于本发明专利的保护范围内。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离本发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈