Radius协议相关知识专题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Radius协议相关知识专题
Radius协议相关知识专题
华为技术有限公司
版权所有侵权必究
华为机密,未经许可不得扩散第1页, 共11页
修订记录
华为机密,未经许可不得扩散第2页, 共11页
1.1 RADIUS概述
RADIUS是ME60和RADIUS服务器之间的应⽤层通信协议,规定了ME60与RADIUS 服务器之间传递⽤户信息和计费信息的过程和报⽂格式。
通过RADIUS协议与RADIUS服务器进⾏交互,完成⽤户的RADIUS认证、授权和计费过程。
RADIUS协议基于C/S架构,其中ME60属于客户端,⽽RADIUS服务器则属于服务器端。
RADIUS协议使⽤UDP报⽂承载,并通过报⽂重传机制和备⽤服务器机制保证可靠性。
RADIUS协议使⽤的认证和计费端⼝⼀般为1645/1646或1812/1813。
⽀持以下三种RADIUS协议类型:
标准RADIUS:通⽤RADIUS协议。
RADIUS+1.0:IP Hotel型服务器⽀持RADIUS+1.0协议。
RADIUS+1.1:Portal型服务器⽀持RADIUS+1.1协议。
具体配置必须和RADIUS服务器保持⼀致。
1.2 RADIUS报⽂格式
RADIUS报⽂格式如下所⽰。
图1 RADIUS报⽂格式
2013-5-2
各字段含义:
Code字段:Code字段长度为1个字节,⽤于表⽰RADIUS报⽂类型,常见的Code值和含义如下所⽰。
说明:
计费请求报⽂包括以下三种报⽂,由报⽂中携带的40号属性区分。
开始计费报⽂(40号属性的值为1)。
实时计费报⽂(40号属性的值为2)。
停⽌计费报⽂(40号属性的值为3)。
Identifier字段:Identifier字段长度为1字节,其内容⽤于匹配请求报⽂和响应报⽂。
Length字段:Length字段长度为2字节,表⽰报⽂中所有域的长度。
2013-5-2
Authenticator字段:Authenticator字段长度为16 字节,⽤于验证RADIUS服务器响应的请求以及密码隐藏算法。
分Request Authenticator 和Response Authenticator两种。
Attribute字段:Attribute字段长度不定,可包含多个属性,每个属性的格式如下所⽰。
图2 RADIUS属性格式
Type字段:Type字段表⽰属性类型,常见的属性所对应的类型如下所⽰。
2013-5-2
2013-5-2
2013-5-2
Length字段:Length字段长度为1字节,表⽰每个属性字段的长度。
Value字段:Value字段长度不定,表⽰属性的值。
1.3 RADIUS报⽂交互流程
RADIUS报⽂交互流程如下所⽰。
2013-5-2
图3 RADIUS报⽂交互流程
1.4 服务器状态控制策略
Radius服务器的状态在系统中有两种状态标记:UP和DOWN。
初始时所有的Radius服务器的状态都是UP的。
DOWN状态的含义是:BAS系统向某个Radius服务器连续发送N个报⽂,在超时间隔内均收不到该Radius服务器的回应,则BAS系统认为该Radius服务器已经DOWN掉,相应的会将其状态置为DOWN标记。
N可以通过命令radius-server dead-count countvalue配置,默认为10次。
服务器状态变为DOWN以后,过⼀定的时间后BAS系统会把该服务重新设为UP状态,该时间间隔的值可以通过命令radius-server dead-time time-value设置,time-value值的单位为分钟。
默认为3分钟。
服务器状态变为DOWN以后,如果已有⽤户选择使⽤该服务器发送报⽂,发送超时但是还没有达到设定的重传次数,则会继续使⽤该服务器发送报⽂。
超时时间(报⽂
2013-5-2
再次发送的重传时间间隔)和重传次数可以在Radius服务器视图下通过命令radius-server time-out value(value的单位为秒)和radius-server retransmit times来设置。
radius group下配置的超时时间和重传次数,对组下的每个服务器⽣效,⼀个服务器发送次数超过重传次数将继续选择下⼀个服务器。
这样如果服务器组下设置的重传次数为N,服务器个数为3,则某个⽤户的报⽂的重传次数为3×N。
1.5 主备⽅式服务器选择策略
第⼀次发送报⽂时的选择策略:如果主服务器是UP的就选择主服务器(在Radius Group视图下第⼀个配置的服务器),否则选择最近⼀次收到报⽂的那个服务器,如果没有这样的服务器则选择第⼀个配置的服务器。
超时重传的选择:如果该报⽂的发送次数没有达到设定的重传次数,则继续使⽤原服务器发送报⽂;如果已经达到重传次数且是主服务器时,则选择最近⼀次收到报⽂的那个备服务器,如果没有这样的服务器则选择第⼀个配置的备服务器(从第⼀个备服务器开始查找);如果是备服务器发送超时且已超过重传次数,则会搜寻⼀遍所有配置的备服务器,查找⼀个没有使⽤过的且状态为UP的备服务器发送,如果没有状态为UP的,则选择⼀个这样的状态为DOWN的备服务器发送;如果所有的服务器都已经发送过则释放报⽂ID,返回发送失败。
1.6 负载均衡说明
如果Radius服务器组配置成负载均衡(loading-share)的模式,则BAS系统在发送报⽂时将按照配置RADIUS认证服务器或计费服务器时的权重weight参数来选择向那个服务器发送。
我司BAS系统实现的负载均衡是基于⽤户的报⽂负载均衡,⽤户上线时根据配置的Radius服务器的权重,选择⼀台服务器作为以后⼀系列策略下发的服务器。
2013-5-2
1.7 负载均衡⽅式服务器选择策略
负载均衡⽅式下对服务器的选择,在⽤户第⼀次发送报⽂以及报⽂重传时的选择策略是⼀样的。
2013-5-2。