51学通信技术论坛

 找回密码
 立即注册
搜索
查看: 7436|回复: 6
打印 上一主题 下一主题

RADIUS协议基本概念及带有RADIUS过程的PDP激活流程 [复制链接]

Rank: 9Rank: 9

懒

跳转到指定楼层
楼主
发表于 2012-2-27 19:50:24 |只看该作者 |倒序浏览
一键分享 一键分享
本帖最后由 爱卫生 于 2012-2-27 19:55 编辑

AAA鉴权和计费(动态分配地址是在鉴权过程中进行)功能是基于RADIUS协议的,该协议属于应用层协议,底层的协议栈采用UDP和 IP。RADIUS协议规定了GGSN与AAA服务器之间如何传递用户信息和计费信息。

RADIUS(Remote Authentication Dial in User Service),远端认证拨号用户服务协议最初用于管理使用Modem的大量分散用户安全地连接至公司网络以及进行相应的鉴权。现在已发展成为一个多功能的协议,负责认证与系统的远程连接,提供对网络资源使用的授权和计费。

它是一个分布式客户端/服务器系统,可以防止未授权的用户访问网络。GGSN/NAS上运行的AAA程序对用户来讲为服务器端,对RADIUS服务器来说是作为客户端。

下面介绍涉及的一些基本概念。

PAP:Password Authentication Protocol,PAP验证为两次握手验证,用户以明文的形式把用户名和密码传递给GGSN,GGSN把用户名和加密过的密码放到验证请求包的相应属性中传递给RADIUS服务器。RADIUS服务器根据本地用户数据库检查用户名和密码是否正确,作出响应,根据响应结果决定是否允许用户访问网络。

CHAP:Challenge Handshake Authentication Protocol,CHAP验证为三次握手验证,当用户请求访问网络时,GGSN产生一个16字节的随机码给用户,同时还有一个ID号,即GGSN的hostname,用户端得到这个包后使用自己独有的设备或软件(MD5算法)对传来的随机码和ID进行加密,生成一个response传给GGSN。GGSN把传回来的CHAP ID和Response分别作为用户名和密码,并把原来的16字节随机码传给RADIUS服务器。RADIUS服务器根据用户名在服务器端查找数据库,得到和用户端进行加密所用的一样的密钥,对传来的原16字节的随机码进行加密,将其结果与传来的Password作计较,如果相同表明鉴权通过,如果不相同表明鉴权失败。

PPP:Point to Point Protocol,点对点协议,一种二层的链路协议,在其上可以进行二层链路协商(LCP)及三层网络协商(IPCP),并可以进行验证(PAP/CHAP )通过此协议,PC可以通过Modem和普通电话线建立到互联网的一个TCP/IP连接。PPP会话主要分为三个阶段:

LCP(Link Control Protocol)阶段:在MS和GGSN之间进行LCP协商,协商内容包括验证方式和MTU等,LCP协商的目的是建立链路;

鉴权阶段:此阶段可以通过命令配置,如果配置鉴权,需要对MS进行PAP或CHAP身份验证;如果验证失败,就进入LCP Terminate阶段,拆除链路;如果验证通过,就进入Network协商阶段(NCP);

NCP(Network Control Protocol)阶段:协商网络层协议,进行MS地址的分配。只有相应的网络层协议协商成功后,该网络层协议才可通过这条链路发送报文。

PPP终结:PPP用户在进行分组数据业务的时候,GGSN解GTP封装后获得原始PPP报文,剥离PPP封装获得原始IP报文(即PPP报文终结域GGSN),然后通过与企业网之间建立的三层VPN隧道(GRE 隧道、IPSec隧道)或者普通路由,将IP报文转发到企业网或者Internet。

PPP续传:PPP用户在进行分组数据业务的时候,GGSN解GTP封装后获得原始PPP报文,然后通过与企业网之间建立的二层L2TP隧道,将PPP报文转发至企业网。

------------------------------------------------------

具体来讲,一个带有RADIUS鉴权、地址分配和计费的流程描述如下:


    1 IP用户访问外部ISP或Intranet网络业务,发起激活请求,请求建立PDP上下文,携带APN,QoS,PCO等信息。

2 为防止非法用户的接入,ISP/Intranet需要鉴权用户信息,同时给用户分配私有地址。这里有两种方案:

- Option1:采用RADIUS服务器进行鉴权和分配地址。

- Option2:采用RADIUS服务器进行鉴权+DHCP远端分配地址。

这里选取Option1进行描述,GGSN向RADIUS鉴权服务器发起Access-Request消息,请求对用户身份鉴权(采用PAP或CHAP验证),并请求地址分配。鉴权流程只在用户发起第一次上下文建立请求时需要,以后的二次上下文建立或者更新上下文就不需要鉴权了。

3 RADIUS鉴权服务器返回应答Access-Accept,表示鉴权通过并下发分配地址。

4 通过鉴权后,GGSN向RADIUS计费服务器发起Accounting-Request (START)计费请求,开始对用户进行计费。

5 GGSN在发出Accounting-Request (START)后回激活应答消息给SGSN,SGSN响应用户的激活请求。在这里可以通过命令radius acctctrl配置APN属性,限制用户直到收到Accounting Response (START)后,才可以给SGSN回创建PDP上下文响应;如果等待响应超时,根据response-timeout参数控制是否去活上下文。

6 RADIUS计费服务器给GGSN回Accounting Response (START)消息。在这里可以灵活配置APN属性,限制用户直到收到Accounting Response (START)后才可以转发数据,也可以允许用户在收到Accounting Response (START)之前就可以转发数据;如果RADIUS拒绝了GGSN的计费开始请求消息,则GGSN随时可以去活PDP上下文。

7 用户开始转发数据,包括上下行方向。

8 计费过程中,用户PDP上下文的更新或者时间和流量达到设定阈值后,均可以触发计费更新请求消息。GGSN向RADIUS计费服务器上报更新参数。

9 RADIUS计费服务器回应答Accounting Response (Interim-Update)。

10 一段时间后,用户终止业务访问,发起去活请求,SGSN请求GGSN删除PDP上下文,释放承载资源。

11 GGSN向RADIUS计费服务器发起计费停止请求Accounting-Request (STOP),并上报所消耗的时间和流量。

12 RADIUS计费服务器给GGSN回响应Accounting-Response (STOP)。

13 无论GGSN是否收到Accounting-Response (STOP)消息,此时均回SGSN去活响应,去活上下文,释放网络资源。

www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

Rank: 8

义 超级之星 勤 论坛核心会员

沙发
发表于 2012-9-24 23:30:23 |只看该作者
挺详细和清楚的~

爱总能找到一张相应的流程图附上么?那样理解起来会更好些
谢谢

使用道具 举报

Rank: 3Rank: 3Rank: 3

板凳
发表于 2012-12-17 10:54:14 |只看该作者
再温习过。

使用道具 举报

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

地板
发表于 2014-2-9 17:50:59 |只看该作者
学习了。。。。谢谢

使用道具 举报

Rank: 1

5#
发表于 2014-2-25 14:43:07 |只看该作者
“CHAP:Challenge Handshake Authentication Protocol,CHAP验证为三次握手验证,当用户请求访问网络时,GGSN产生一个16字节的随机码给用户,同时还有一个ID号,即GGSN的hostname,用户端得到这个包后使用自己独有的设备或软件(MD5算法)对传来的随机码和ID进行加密,生成一个response传给GGSN。“
这个过程体现在哪些信令上?通常看到的流程好像没有这部分,谢谢爱总

使用道具 举报

Rank: 9Rank: 9

懒

6#
发表于 2014-2-25 21:15:37 |只看该作者
runhook 发表于 2014-2-25 14:43
“CHAP:Challenge Handshake Authentication Protocol,CHAP验证为三次握手验证,当用户请求访问网络时,G ...

AAA的鉴权消息就是access request/response消息。
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 2Rank: 2

7#
发表于 2014-8-6 09:03:00 |只看该作者
我已深深爱上这个地方了,在成为专家之前坚决不撤退!

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

站长邮箱|Archiver|51学通信 ( 粤ICP备11025688 )

GMT+8, 2024-4-27 17:44 , Processed in 0.024587 second(s), 12 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部