远程用户拨号认证服务协议数据包的重发与放弃方法

文档序号:7592550阅读:433来源:国知局
专利名称:远程用户拨号认证服务协议数据包的重发与放弃方法
技术领域
本发明属于计算机网络应用技术领域,特别涉及AAA协议及协议数据传输方法。
背景技术
网络技术的发展使因特网的广泛应用成为可能,同时因特网的开放特性使其应用需求日益增加。但是网络运营商建设网络的目的是赢利,不可能超越赢利能力无限的扩展带宽,也不可能对用户提供无偿服务。因此,在进行网络建设的时候必须考虑网络资源(包括带宽、IP地址、内容服务、应用服务等)的合理利用和对用户的有效管理。
认证、授权和计费(Authentication,Authorization,Accounting,AAA)就是应商业化网络需求而生的管理手段,分别对商业用户进行鉴别身份、分配权限给合法用户、记录各种网络中的运行信息并计算费用。
目前较为成熟且应用最为广泛的AAA协议是远程用户拨号认证服务协议(RemoteAuthentication Dial In User Service简称RADIUS)。RADIUS协议的目的是为了提供网络访问服务器(NAS)和PPP电话拨入服务器相关的验证、授权与计费问题。RADIUS以Client/Server模式工作,定义了在网络接入服务器(Network Access Server,简称NAS)和集中存放认证信息的RADIUS服务器之间传输认证、授权和配置信息的协议,具有安全性好,扩展灵活,易于管理,记账功能强等特点。
在为用户提供服务过程中,NAS将需要针对此用户的信息进行认证计费,其步骤为1.首先NAS端向认证服务器发送RADIUS认证数据包,将用户信息提交到RADIUS服务器进行认证;2.对通过认证的用户开始计费,向认证服务器发RADIUS计费开始数据包,向RADIUS服务器提交计费开始请求;3.在向用户提供服务的同时,向RADIUS服务器发RADIUS计费更新数据包,将状态信息的变化作为计费更新发送到RADIUS服务器;4.对用户提供服务结束,向RADIUS服务器发送计费结束数据包。
从上述步骤中可以看出RADIUS协议数据包有多种不同的类型,不同类型的包NAS没有收到答复引起的后果也不尽相同,表1中详细分析了不同RADIUS包出现“NAS未收到答复”错误时可能引起的后果。
表1RADIUS数据包描述及分析


表中第一列为四种常用的RADIUS协议数据包类型,第二列说明了四种类型在实际应用中的不同重要程度;第三列表明在正常状况下RADIUS服务器对这四种类型数据报的处理;最后一列则指出如果NAS端未收到返回结果可能造成的后果。
RADIUS是一种基于用户数据包协议(User Datagram Protocol,UDP)的上层协议,他本身没有对传输协议数据做具体规定,而是使用UDP的传输机制尽最大努力交付。同时,如果RADIUS协议收到不能辨识的数据包,就简单丢弃。由于UDP协议没有规定重传机制,这就降低了该协议本身在应用中的可靠性。
对此,RADIUS协议中提出了简单的关于重发、放弃的建议。即发送端不断发送数据包直至收到应答信息为止;重试一定次数后放弃发送。而认证计费系统本身要求较高的准确性和安全性,这种方法对于复杂性较高的RADIUS协议数据包来说不能满足需要。比如,RADIUS协议计费开始包的一次发送相当于一次计费的开始,对这个包的重发很有可能造成重复计费而使用户遭受损失,而上述方法并不能针对这种情况做出处理。

发明内容
本发明的目的是为了克服目前广泛采用的RADIUS协议的固有缺陷传输数据的不可靠性导致的错误计费。提出一种改进的Radius协议数据包的重发和放弃方法,根据不同的数据包类型,采取不同的重发、放弃策略,可以极大地增强认证计费的稳定性、准确性和完整性。
本发明提出的远程用户拨号认证服务协议数据包的重发与放弃方法,包括以下步骤首先NAS端向认证服务器发送认证数据包,等待认证通过;向认证服务器发送计费开始包,等待应答;对用户提供流媒体服务,并且在服务状态(码率,节目等)发生变化时向RADIUS服务器发送计费更新包;服务结束发送计费结束包;上述步骤中RADIUS服务器对RADIUS数据包的处理完全按照RADIUS协议规定进行;对非期待的数据包和计费不成功的数据包简单丢弃;其特征在于,设定RADIUS的认证数据包、计费开始数据包、计费更新数据包及计费结束数据包各自的应答时间阀值T,以及重发次数N;当应答时间大于T,NAS端则放弃等待本次发送数据包的应答,并进行重发,当重发超过N次则放弃本次数据包;对于所述认证数据包和计费结束数据包,放弃本次数据包则停止或拒绝提供服务;对于所述计费开始数据包,放弃本次数据包后仍需发送计费结束数据包;对于所述计费更新数据包,放弃本次数据包不影响继续服务。
本发明对计费开始包,设定N计费开始包=1。这是考虑时序问题,若遭遇恶意攻击,多次计费开始包可能意味着多次计费开始,造成用户损失。其它数据包N值的选择,可根据具体应用情况设置,一般可选取N计费结束包≥N认证包≥N计费更新包≥N计费开始包。
对T的选择应该考虑具体服务灵活设置,同时尽量不影响正常RADIUS包流量,一般取值范围可为Tnormal<T≤2Tmax,Tnormal为具体服务的正常应答时间,Tmax为具体服务的最大应答时间。为了不过分增加网络负载取值范围可为Tmax<T≤2Tmax;另外,在网络负载过重的情况下还可适当增加T,减小N。
发明原理RADIUS协议基于UDP协议,这使得RADIUS协议有着不可避免的致命伤不可靠。为了弥补这个缺陷,必须在应用层上来采取一定措施去完善认证计费系统。通过分析不同RADIUS数据包的紧急程度和处理特点,来确定对不同数据包的重发和放弃方法,使得计费过程尽可能正常,用户开始计费后保证计费过程正确,不会对用户和服务提供商双方造成不必要的损失,更好地提供服务。
本发明优点1.在不对协议做出修改的前提下,更好地完成应用;2.可以根据网络状况,灵活机动地配置重发次数和间隔,减少对网络的额外负荷。
3.不拘泥于一种服务提供,适用于所有基于RADIUS协议的AAA系统。


图1为本发明NAS端对RADIUS数据包的处理方法实施例流程框图。
具体实施例方式
本发明提出的一种RADIUS协议数据包的重发与放弃方法结合实施例及附图详细说明如下本实施案例运行在流媒体服务系统上,具体配置如下NAS服务器配置CPUIntel PIII 1GHz内存128M操作系统RedHat 8.0 Linux Server流媒体服务器LSMP Streaming Server认证服务器配置CPUIntel PIII 966MHz内存256M操作系统RedHat 8.0 Linux Server计费服务器配置CPUIntel PIII 966MHz内存256M操作系统RedHat 8.0 Linux Server本实施例中,各个数据包的正常应答时间Tnormal≈50毫秒,最大应答时间Tmax≈50秒。设定RADIUS的认证数据包、计费开始数据包、计费更新数据包及计费结束数据包各自的应答时间阀值为T认证包为60秒、T计费开始包为100秒、T计费更新包为60秒、T计费结束包为60秒,以及重发次数N认证包为5次、N计费开始包为1次、N计费更新包为3次、N计费结束包为6次;本实施例RADIUS服务器对RADIUS数据包的处理完全按照RADIUS协议规定进行;对非期待的数据包和计费不成功的数据包简单丢弃;具体过程如图1所示,包括以下步骤1.从NAS端向RADIUS服务器发送认证数据包,等待应答包;a)如果在60秒内收到认证成功包继续;若是认证拒绝包则本次服务提供失败;b)超过60秒未收到应答包,则重新发送认证数据包;c)重复上述b)过程5次;d)超过5次则拒绝用户接入,提供服务失败;2.如果认证通过,从NAS端向RADIUS服务器发送计费开始包,等待应答包;a)如果在100秒内收到应答包继续服务;b)在超过100秒未收到应答包,拒绝用户接入;c)发送计费结束包;d)本次服务提供失败,拒绝用户接入;3.在服务状态发生变化时从NAS端向RADIUS服务器发送计费更新包,等待应答包;a)如果在60秒内收到应答包继续服务;b)超过60秒未收到应答包,则重新发送计费更新包;c)重复上述b)过程3次;d)超过3次继续服务;4.需要停止服务时从NAS端RADIUS服务器发送计费结束包,等待应答包;a)如果在60秒内收到应答包继续服务;b)超过60秒未收到应答包,则重新发送计费更新包;c)重复上述b)过程6次;d)停止本次服务。
本发明方法与对不采用重发放弃方法进行压力测试,结果如下1.NAS无时间间隔发送1000个服务请求,向RADIUS服务器发送认证计费数据包没有使用重发放弃认证计费成功且正确890个;认证计费不正确丢弃13个;计费失败97;使用重发放弃后认证计费成功且正确989个;认证计费不正确丢弃11个;计费失败0;2.NAS以平均每秒300个数据包的速度发送认证计费数据包,累计400,000个服务请求没有使用重发放弃认证计费成功且正确210601个;使用重发放弃后认证计费成功且正确399967个。
权利要求
1.一种远程用户拨号认证服务协议数据包的重发与放弃方法,包括以下步骤首先网络访问服务器NAS端向认证服务器发送认证数据包,等待认证通过;向认证服务器发送计费开始包,等待应答;对用户提供流媒体服务,并且在服务状态发生变化时向远程用户拨号认证服务协议RADIUS服务器发送计费更新包;服务结束发送计费结束包;上述步骤中RADIUS服务器对RADIUS数据包的处理完全按照RADIUS协议规定进行;对非期待的数据包和计费不成功的数据包简单丢弃;其特征在于,设定RADIUS的认证数据包、计费开始数据包、计费更新数据包及计费结束数据包各自的应答时间阀值T,以及重发次数N;当应答时间大于T,NAS端则放弃等待本次发送数据包的应答,并进行重发,当重发超过N次则放弃本次数据包;对于所述认证数据包和计费结束数据包,放弃本次数据包则停止或拒绝提供服务;对于所述计费开始数据包,放弃本次数据包后仍需发送计费结束数据包;对于所述计费更新数据包,放弃本次数据包不影响继续服务。
2.如权利要求1所述的远程用户拨号认证服务协议数据包的重发与放弃方法,其特征在于,设定N计费开始包=1,其它数据包的N值为N计费结束包≥N认证包≥N计费更新包≥N计费开始包。
3.如权利要求1所述的远程用户拨号认证服务协议数据包的重发与放弃方法,其特征在于,所述T取值范围为Tnormal<T≤2Tmax,Tnormal为具体服务的正常应答时间,Tmax为具体服务的最大应答时间。
全文摘要
本发明属于计算机网络应用技术领域,涉及远程用户拨号认证服务协议数据包的重发与放弃方法。其特征在于,设定RADIUS的认证数据包、计费开始数据包、计费更新数据包及计费结束数据包各自的应答时间阀值T,以及重发次数N;当应答时间大于T,NAS端则放弃等待本次发送数据包的应答,并进行重发,当重发超过N次则放弃本次数据包;对于认证数据包和计费结束数据包,放弃本次数据包则停止或拒绝提供服务;对于计费开始数据包,放弃本次数据包后仍需发送计费结束数据包;对于计费更新数据包,放弃本次数据包不影响继续服务。本发明可根据不同的数据包类型,采取不同的重发、放弃策略,可以极大地增强认证计费的稳定性、准确性和完整性。
文档编号H04L29/02GK1463123SQ0313754
公开日2003年12月24日 申请日期2003年6月18日 优先权日2003年6月18日
发明者戴琼海, 张峰, 丁嵘, 尹亚光 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1